Tienson Qin
fec74edc0c
Revert "fix: don't set :logseq.property/built-in? for properties"
...
This reverts commit e5bb634a08
.
2024-06-27 16:27:41 +08:00
Tienson Qin
073427d898
enhance: add backlinks and type to all pages
2024-06-27 16:27:15 +08:00
Tienson Qin
324a6f91ca
Merge branch 'experiment/tanstack-table' into feat/db
2024-06-27 15:49:24 +08:00
Tienson Qin
d8c94b7a2f
Revert "feat(shui): add shui table & expose tanStackReact APIs"
...
This reverts commit e2b6623ef5
.
2024-06-27 15:48:45 +08:00
Tienson Qin
e5bb634a08
fix: don't set :logseq.property/built-in? for properties
...
We still keep :logseq.property/built-in? for built-in classes, pages
and closed values.
Reasons why this change:
1. built-in? value is a entity (which type is `checkbox` and value is
`true`), this breaks the rule that db attributes shouldn't reference
non-db-attribute blocks, it also forces us to load the built-in? value
entity first when loading the db.
2. we already have a built-in properties map, we can use it to check
whether a property is built-in.
2024-06-27 15:10:33 +08:00
Gabriel Horner
b70ba087b3
fix: new graph-parser test passes with clj runner
...
part of LOG-3092
2024-06-26 16:14:50 -04:00
Gabriel Horner
e619874dc4
enhance: add acceptance test for file to db graph import
...
Part of LOG-3092
2024-06-26 15:59:09 -04:00
Gabriel Horner
51a2c1425f
fix: db import for very basic file
...
Basic file couldn't import because :block/name is no longer unique for
db graphs. Part of LOG-3176
2024-06-26 15:59:09 -04:00
Gabriel Horner
5520bc1d33
fix: import single file from CLI didn't print error
...
Also improved CLI error reporting so sci stack is readable and
not filled with stack fn docstrings
2024-06-26 15:59:09 -04:00
Tienson Qin
b6bdc4b1d5
chore: update datascript version
2024-06-27 00:35:37 +08:00
Tienson Qin
039804d87a
chore: bump upstream datascript
2024-06-27 00:26:31 +08:00
Tienson Qin
a21a61fde6
fix: sorting
2024-06-26 22:26:20 +08:00
Gabriel Horner
5e5a8ee1df
fix: display property names not idents for query
...
table and settings
2024-06-26 09:34:33 -04:00
Tienson Qin
cc56ba1227
add delete support for all pages
2024-06-26 20:27:33 +08:00
Tienson Qin
5c965e5235
fix: load all pages initially
...
There're still some issues when loading partial pages initially,
let's improve the performance during the test.
2024-06-26 17:46:52 +08:00
charlie
119b519e2a
Merge branch 'feat/db' into experiment/tanstack-table
2024-06-26 11:33:18 +08:00
charlie
d278067f8c
enhance(ui): support hide close button option for the shui dialog
2024-06-26 10:01:54 +08:00
Gabriel Horner
c772b0cdd1
fix: migrate built-in? property to use :checkbox
...
Can now delete temporary :boolean type
2024-06-25 15:02:25 -04:00
Tienson Qin
2cdfaa7fdf
Remove debug
2024-06-25 22:42:53 +08:00
Tienson Qin
9b259a8291
fix: shui table demo
2024-06-25 22:42:23 +08:00
Tienson Qin
da602e7490
wip: shui table
2024-06-25 19:10:58 +08:00
charlie
946499ad56
enhance(ui): support auto width for the shui dialog content
2024-06-25 18:06:13 +08:00
charlie
e2ff6e1990
enhance(ui): refactor classic modals with the shui dialog
2024-06-25 15:37:11 +08:00
Tienson Qin
da4f9b5498
chore: remove :block/collapsed-properties
2024-06-25 10:57:44 +08:00
Gabriel Horner
3c838bc243
fix: disallow changing property cardinality from :many to :one
...
for existing data as it leads to invalid data. Fixes LOG-3164
2024-06-24 14:10:23 -04:00
Gabriel Horner
4fce0cb5d5
fix: sqlite.build journals should use new journal uuid format
2024-06-24 13:40:15 -04:00
Gabriel Horner
67d546850c
fix: recent bugs with create-user-class-ident-from-name
...
This fn keeps api's assumptions and bugs with property idents only in the api ns and
prevents them from affecting all other namespaces creating properties /cc @xyhp915. Users
should not be choosing the property namespace. Doing so allows users to
overwrite logseq's built in ones which can break basic features. It also
allows users to specify a non-property namespace, which means the
property would not work in the app
2024-06-24 11:56:50 -04:00
charlie
305b7ff570
fix(api): ignore qulified keyword when create user property name
2024-06-24 18:25:26 +08:00
charlie
e2b6623ef5
feat(shui): add shui table & expose tanStackReact APIs
2024-06-24 16:59:58 +08:00
charlie
edd8746b5e
enhance(ui): refactor the classic modal with the shui dialog & enhancements for ux
2024-06-24 16:05:41 +08:00
Tienson Qin
f17289c34a
fix: prefer chosen UUID value than page name
...
The reason is that multiple pages can share the same name
2024-06-24 12:11:15 +08:00
Gabriel Horner
0ea8a414f2
chore: move and rewrite outliner.property tests
...
Moved tests to be next to implementation. Rewrote some tests
so that they matched common usage of fns and rewrote some tests
so that each fn is tested independently
2024-06-23 23:47:08 -04:00
Tienson Qin
1c22c78c94
chore: remove buggy and rough template
...
Also, :object kinda works like template, and we also plan to
support templates on Classes.
2024-06-23 22:22:33 +08:00
Tienson Qin
eb245e5a76
fix: lint
2024-06-23 17:58:15 +08:00
Tienson Qin
caf1af1911
enhance: bring back inline tags support
2024-06-23 17:50:51 +08:00
Tienson Qin
797b13ac78
fix: lint and test
2024-06-21 18:09:20 +08:00
charlie
1a9ad96ad9
chore(ui): update shui demo
2024-06-21 16:22:25 +08:00
Tienson Qin
30230b38ca
fix: test
2024-06-21 14:04:42 +08:00
charlie
37cff08d4a
fix(ui): incorrect behavior for the shui tooltip within popups trigger
2024-06-21 14:02:25 +08:00
Tienson Qin
b0c03b0003
fix: tests
2024-06-21 12:50:29 +08:00
Tienson Qin
0b38900d70
fix: blocks->vec-tree
2024-06-21 11:31:52 +08:00
Gabriel Horner
d4a323805d
fix: deps lints
2024-06-20 09:14:59 -04:00
Tienson Qin
74a077668c
fix: add missing malli schema for :file/size
2024-06-20 20:55:57 +08:00
Tienson Qin
dec56b31f0
chore: remove unused :file/handle
2024-06-20 20:53:15 +08:00
rcmerci
be41c8bae7
chore: add some comments
2024-06-20 17:01:58 +08:00
rcmerci
dc785a92a7
refactor: make journal-day page's uuid like this
...
00000001-2024-0620-0000-000000000000
2024-06-20 17:01:58 +08:00
Tienson Qin
62a2564f4d
fix: add missing file/created-at attribute for db graphs
2024-06-20 16:57:38 +08:00
Tienson Qin
519f3cab3f
fix: don't focus for :many property
2024-06-20 16:45:21 +08:00
Gabriel Horner
eae2156f6c
chore: move and add create-property-text-block tests
2024-06-19 23:01:44 -04:00
Gabriel Horner
c23513eaa8
fix: non :default property reuses existing entities
...
Also add tests for this and a common set-block-property case
2024-06-19 22:17:03 -04:00
Tienson Qin
626e0b67e8
fix: store latest file stat
...
Fixes LOG-3143
2024-06-20 09:22:35 +08:00
Tienson Qin
adae8ef5eb
fix: get-block-and-children returns sorted blocks
...
Fix unit tests
2024-06-20 07:56:30 +08:00
Gabriel Horner
b35f30e203
fix: circular dependency between outliner and frontend
...
by moving batch-tx into outliner dep. Outliner dep is
now fully independent and we are able to write unit tests
for all outliner namespaces unlike before
2024-06-19 17:21:22 -04:00
Gabriel Horner
7b787a8fb2
fix: db lint
2024-06-19 14:39:39 -04:00
Tienson Qin
71dc122a75
fix: copy block properties doesn't work
...
Fixes LOG-3160
2024-06-20 00:39:08 +08:00
Gabriel Horner
16248f0bd2
fix: unable to build :default property for sqlite.build
...
Also add tests for different built-in cases and addressed
related TODO
2024-06-18 16:29:01 -04:00
Gabriel Horner
de730e236a
fix: outliner lint
2024-06-18 11:03:55 -04:00
Gabriel Horner
ee77145caf
fix: :checkbox property not working in simple queries and rules
...
Also fix booleans not rendering in query table
2024-06-18 10:38:09 -04:00
Tienson Qin
c3f30a9dc9
fix: lint
2024-06-18 21:37:12 +08:00
Tienson Qin
0bd6c05e69
refactor: add page outliner ops
...
The rule is to avoid calling worker modules from UI, all db
transactions should go through apply-outliner-ops.
2024-06-18 05:21:00 +08:00
charlie
5b0ed592f0
fix(ux): sometimes the block children can't be collapsed
2024-06-17 17:54:19 +08:00
charlie
5e8e3edc5d
enhance(ui): refactor the classic modals with the shui dialog
2024-06-17 13:27:20 +08:00
Tienson Qin
96be194de5
Refactor: use last modified time to decide if file has been changed
...
Previously, we're using file content.
Fixes LOG-3161
2024-06-16 11:00:40 +08:00
Tienson Qin
54e54ebd63
fix: get-pid not works for non-built-in properties in file graphs
2024-06-15 23:20:13 +08:00
Tienson Qin
b294896f8a
fix: reuse page uuids when parsing files
...
This commit also removes `with-id?` because it's too confusing.
Fixes LOG-3143
2024-06-15 22:52:30 +08:00
Tienson Qin
4281274512
fix: graph parser tests
2024-06-15 21:08:25 +08:00
Gabriel Horner
244a86557f
chore: rename :property/value to :property.value/content
...
property-value is widely being used to refer to the entity or value
associated with a property entity. Naming the content of a
property-entity :property/value is confusing. property-value content is
a unique name and consistent with :block/content. Also rename related
fns which had similarly confusing names
2024-06-14 18:11:20 -04:00
Gabriel Horner
04a6aa141e
fix: remove unused dep from db
2024-06-14 16:56:27 -04:00
Gabriel Horner
9a8c91c0cc
chore: mv logseq.db.sqlite.db into sqlite.cli
...
for more explicit name and purpose. Also updated outdated db readme
and removed unused fns in logseq.db.sqlite.db
2024-06-14 16:53:19 -04:00
Gabriel Horner
8ba5c15f93
fix: remove cli namespace dependency from electron namespaces
...
Added a :discouraged-namespace linter check for future times.
Had to add clj-kondo configs for db and outliner since they
were incorrectly inheriting the frontend config, specifically
the :discouraged-namespace linter. Also removed a 'm/=>' in outliner dep
b/c it would've created a complex clj-kondo setup for malli that
would need to be updated for both top-level clj-kondo and deps/outliner
2024-06-14 15:50:05 -04:00
Gabriel Horner
95db811f55
fix: frontend tests shouldn't depend on sqlite3
...
frontend.test.helper was accidentally coupled to sqlite3 via
logseq.outliner.db-pipeline. Split out sqlite3 dependent fns to
logseq.outliner.cli so it's clear this shouldn't be coupled to frontend
2024-06-14 14:41:24 -04:00
Gabriel Horner
0f122e9a7e
fix: schema graph generation
...
Regressed with property value change. Also updated debug file and
fixed a missing built-in property ns which caused an invalid debug file
2024-06-14 11:38:14 -04:00
Tienson Qin
d588df622e
fix: :block/uuid not created for property value pages
...
Related to LOG-3124
2024-06-14 22:15:56 +08:00
Tienson Qin
c7827ee268
fix: can't create alias property for file based graph
2024-06-14 21:00:32 +08:00
Tienson Qin
1858180476
fix: don't create bi-directional alias
...
related to LOG-3124
2024-06-14 20:00:37 +08:00
Gabriel Horner
5f2371486e
fix: simple query for :number properties
...
also fixes deps db tests
2024-06-13 23:16:17 -04:00
Gabriel Horner
137f388edd
enhance: property ref values can store their
...
original value optionally with :property/value.
Currently applies to :url and :number and not :default
as :default is meant to be a block and thus highly coupled
to :block/content. By introducing this, functionality that relies
on original property values automatically work e.g.
sorting by :number property for query results just works
2024-06-13 23:03:18 -04:00
Gabriel Horner
57241d0644
Revert "fix: :block/content should be string including :number properties"
...
This reverts commit 8a6b44bb31
.
2024-06-13 21:25:21 -04:00
charlie
6c7c282a03
fix(pdf): insert keyword property value for the file based graphs
2024-06-13 17:25:05 +08:00
Tienson Qin
4d684a5ec9
fix: throw exception if calling db property fns for file graphs
2024-06-13 14:50:20 +08:00
Tienson Qin
0ce2ee42db
Revert "refactor: use files instead of sqlite for electron db storage"
...
This reverts commit c2c5ab80aa
.
2024-06-13 13:04:00 +08:00
Tienson Qin
ec25550455
Revert "chore: remove unused fn"
...
This reverts commit 1ec30bbf1a
.
2024-06-13 13:04:00 +08:00
Tienson Qin
596089f161
Revert "fix: add missing fs-extra package"
...
This reverts commit 032cad0318
.
2024-06-13 13:04:00 +08:00
Tienson Qin
6d4f3425cd
Revert "fix: nbb compatibility for mv to file db for electron"
...
This reverts commit 4403b5e52a
.
2024-06-13 13:04:00 +08:00
Gabriel Horner
03f797fde3
fix: outliner lint and doc formatting
2024-06-12 15:24:04 -04:00
Tienson Qin
1dc72d79f2
fix: separate page/create impl for db and file graphs
...
Also, move rtc page create impl to its own fn.
2024-06-12 06:39:06 +08:00
Gabriel Horner
1b51d28682
fix: outliner lint
2024-06-11 16:49:14 -04:00
Gabriel Horner
4403b5e52a
fix: nbb compatibility for mv to file db for electron
...
Followup to c2c5ab80aa
2024-06-11 16:44:19 -04:00
Gabriel Horner
0e1ada2ef6
enhance: bb task for creating graphs from EDN file
...
Converted inferred graph to an EDN file now that this task exists. Also
merge last of tasks.create-graph to relevant ns so that external users
can also create such tasks
2024-06-11 10:09:37 -04:00
Tienson Qin
2d3f152454
fix: simplify page delete and fix rtc issues
2024-06-11 20:23:57 +08:00
Tienson Qin
032cad0318
fix: add missing fs-extra package
2024-06-11 20:00:32 +08:00
Tienson Qin
1ec30bbf1a
chore: remove unused fn
2024-06-11 19:58:54 +08:00
Tienson Qin
c2c5ab80aa
refactor: use files instead of sqlite for electron db storage
2024-06-11 08:30:49 +08:00
Gabriel Horner
dbf263ed7c
fix: unbound vars caught by lint
...
also updated property type for previous commit
2024-06-10 17:12:03 -04:00
Gabriel Horner
0ce4e1b65e
fix: query table not displaying user property columns
...
Also fixed rendering property values for all property types
2024-06-10 16:05:33 -04:00
Gabriel Horner
2d1073fa5b
fix: remove outdated clauses for property values
...
This became outedated with to property values as refs
2024-06-10 13:26:21 -04:00
Gabriel Horner
16cfb76c9b
fix: update :query/result-transforms to work with db graphs
...
since they are the future. Leave example disabled by default as it's
not important to have :sort-by-priority enabled by default and working
for both file and db graphs
2024-06-10 12:38:40 -04:00
Gabriel Horner
04b25a9240
chore: add basic tests for sqlite.build
...
and added a couple db-graph specific for query-dsl. Also
moved fns in pu that should be in db-pu
2024-06-10 11:52:39 -04:00
Tienson Qin
03a0e99b65
enhance: add block-order malli schema
2024-06-09 11:39:00 +08:00
Tienson Qin
0a77ba077f
fix: reuse :block/order if exists when inserting blocks from remote
2024-06-09 11:02:26 +08:00
Gabriel Horner
9636fbe7ab
fix: remaining query dsl tests for db graphs
...
Re-enable CI step for testing query-dsl and db graphs
2024-06-07 18:02:32 -04:00
Gabriel Horner
7f3e22c8eb
fix: priority filters for db graphs
2024-06-07 17:58:49 -04:00
Tienson Qin
214eefbf67
enhance: drop -page for filter properties
2024-06-08 05:33:41 +08:00
Tienson Qin
b2e113d8eb
refactor: db based filters
...
Uses properties :logseq.property.linked-references/included-pages
and :logseq.property.linked-references/excluded-pages to store filters
instead of a map.
Fixes LOG-3074
2024-06-08 05:28:55 +08:00
Gabriel Horner
039da828ac
enhance: infer property schema and add new-pages from properties
...
for sqlite-build graphs. Also fixed numbered page query not working for
db graphs and related tests
2024-06-07 12:10:15 -04:00
Gabriel Horner
516192fa92
fix: db lint
2024-06-06 17:22:02 -04:00
Gabriel Horner
938dd04811
enhance: add :build/tags and :auto-create-ontology?
...
for tested+generated graphs. :build/tags allows easy generation of
objects as seen in fixed up inferred graph
2024-06-06 17:05:13 -04:00
Tienson Qin
9b1da32028
fix: simplify deleting refed blocks
...
The new implementation will replace refs of the current deleting block
with the nearby block (if exists).
2024-06-06 19:36:40 +08:00
Tienson Qin
9e5a002cf8
enhance: avoid replacing page refs if there's no special chars
2024-06-06 15:15:01 +08:00
Tienson Qin
8a6b44bb31
fix: :block/content should be string including :number properties
2024-06-06 14:53:26 +08:00
Tienson Qin
fb01f99a4d
fix: outliner tests
2024-06-06 07:11:09 +08:00
Gabriel Horner
62701e1b6e
fix: tests with outdated datom counts
...
I think caused by recent macros parsing or whiteboard changes
2024-06-05 17:06:16 -04:00
Gabriel Horner
8f6f52d630
fix: sort-by filter for db graphs
...
Also fixed a dsl-query sorting bug where nil property values where
incorrectly being treated as greater than non-nil values. Also
fixed a bug where blocks with an explicit :block/created-at weren't
being set for sqlite-build
2024-06-05 16:57:51 -04:00
Gabriel Horner
29faedc4d0
fix: db graph tests with children, created-at properties
...
and journal pages
2024-06-05 14:47:38 -04:00
Gabriel Horner
916fef8336
enhance: generate any outline structure with :build/children
...
Already useful for testing and will be for more interesting generation
cases
2024-06-05 12:15:12 -04:00
Tienson Qin
592e2a9b26
fix: add tags when not exists
2024-06-05 22:39:55 +08:00
Tienson Qin
44366dced0
fix: removing a heading's hashtags doesn't delete
...
fixes LOG-3138
2024-06-05 20:01:46 +08:00
Tienson Qin
a314e3469a
fix: page can alias itself and then fail to load
...
fixes LOG-3136
2024-06-05 17:18:32 +08:00
Tienson Qin
7beebedbd2
fix: embed block macro is buggy
...
fixes LOG-3145
2024-06-05 14:27:13 +08:00
Tienson Qin
ed97102b38
fix: can't move block up with a :default property
...
fixes LOG-3140
2024-06-05 14:08:57 +08:00
Gabriel Horner
e7f795103d
fix: simple task queries and start fixing db dsl-query tests
...
Tests caught that task query wasn't working. Also disabled
namaspace test and rule for db graphs since they aren't supported
there
2024-06-04 15:53:36 -04:00
Gabriel Horner
05227f475b
chore: mv more tests to appropriate dep enabled by :build/journal
2024-06-04 12:02:25 -04:00
Gabriel Horner
14222a546f
enhance: make journals easier to generate with :build/journal
...
Use it in tests that more appropriately belong in db dep.
Also did minor cleanup around page prep for page-uuids
2024-06-04 12:02:25 -04:00
Gabriel Horner
13066001cd
fix: storing and querying of :number property values
2024-06-03 17:41:32 -04:00
Gabriel Horner
5ecb3fe3d4
fix: lints
2024-06-03 14:13:55 -04:00
Gabriel Horner
df10beb325
enhance: add schema and validation to sqlite.build
...
Also renamed block-level keys that are specific to the ns to have
a :build namespace. A lot easier to read, maintain and extend later.
Also cleaned up page naming to consistently require :block/original-name
2024-06-03 12:46:53 -04:00
Gabriel Horner
a67e2c8c23
chore: use easier way to build db graph test data
...
in rules tests
2024-06-03 12:46:53 -04:00
Gabriel Horner
2456deb097
enhance: create sqlite.build ns as a better
...
load-test-files helper for db graphs and deps.
Most of this ns is split off from create-graph.
Migrated pipeline-test to correct outliner dep and
moved previous pipeline-test to correct db dep
2024-06-03 12:46:53 -04:00
Tienson Qin
721a9e14ad
fix: arrow color
2024-06-03 19:20:50 +08:00
Tienson Qin
e7de721dde
fix: broken block ref after deleting source blocks
2024-06-03 15:33:49 +08:00
Tienson Qin
bce5a308bb
perf: skip db storage when batch applying outliner ops
2024-06-03 14:53:06 +08:00
rcmerci
8a94b856bd
enhance(rtc): add debug prn when failed to transact
2024-06-02 21:19:59 +08:00
Gabriel Horner
03167ae19c
enhance: extract block content refs for generated graphs
...
Also update content with ids and create pages as needed
2024-05-31 17:19:25 -04:00
Gabriel Horner
ec7839fcce
fix: simple queries in db graphs for most property types
...
Also fix parse-query was being called in multiple places
without a correct default value for :db-graph? option
2024-05-30 15:54:20 -04:00
Gabriel Horner
790d0460a1
fix: remove + disable :block/macros for db graphs
...
part of LOG-3137
2024-05-30 11:01:37 -04:00
Tienson Qin
da3929376a
fix: don't extract macros from block content for db graphs
2024-05-30 21:32:45 +08:00
Tienson Qin
9ce7f5d709
fix: eager loading nested blocks for short pages
2024-05-30 20:01:31 +08:00
Tienson Qin
13b19a1b9c
perf: render less blocks and improve app start time
...
1. load only 1 journal when app starts
2. fix can't load more journals
3. pretend all the unloaded pages as long pages to avoid more
rendering
4. don't send <get-block queries if there're already requests
2024-05-30 18:31:19 +08:00
Gabriel Horner
1dd9823fdf
fix: remove alias ref to avoid recursive display bug
...
A page with aliases resulted in linked references recursively showing the
current page
2024-05-29 13:25:32 -04:00
Gabriel Horner
a4d8e05e2f
fix: esc saves a tag class with a :db/ident
...
Also refactor to update class tests to use correct helper
2024-05-29 11:09:09 -04:00
Gabriel Horner
cc92702a98
chore: remove unused fn when setting prop values
2024-05-29 11:09:09 -04:00
Tienson Qin
f4dd06f959
enhance: display tags the same way as other properties
2024-05-29 15:37:23 +08:00
Gabriel Horner
effde81161
enhance: all user classes have :db/ident
...
This is important as a user's ontology (properties + classes) is now describable
with unique identifiers. This will allow for easy sharing and
importing of ontologies between users.
Also <create-class! now exists to create classes consistently. Will
be helpful when we want to provide some validation for classes
2024-05-28 16:52:12 -04:00
charlie
0dead80fe1
enhance(ui): support more props for the shui dialog config
2024-05-28 17:03:45 +08:00
Tienson Qin
02fcc69928
CSS tweaks
2024-05-28 03:02:22 +08:00
Tienson Qin
8de8377d4b
fix: disable shortcut property when property dialog is opened
2024-05-27 23:03:24 +08:00
Tienson Qin
21e480ec3e
fix: can't delete :checkbox property
2024-05-27 22:56:49 +08:00
Tienson Qin
d432bb1f71
enhance: back to edit mode after setting a property
...
Except if the editing property is :default type
2024-05-27 21:10:00 +08:00
Tienson Qin
6ced3bff8f
enhance: property editing support shortcut
2024-05-27 20:08:43 +08:00
Tienson Qin
c326730ce5
fix: retract icon property when settign a closed value's icon to nil
2024-05-27 12:30:45 +08:00