Gabriel Horner
b5a8f96426
fix: publishing hl-type-area for db graphs
2024-05-02 16:15:06 -04:00
Gabriel Horner
5130ced982
fix: public queries for publishing
2024-05-02 15:53:48 -04:00
Gabriel Horner
24c48e7a87
fix: multiple fixes related to lookup-by-name
...
- only use it for user properties
- don't use create ident fn to lookup names
- fixed get-area-block-asset-url which didn't work for db graphs without
the frontend
2024-05-02 15:16:03 -04:00
Tienson Qin
457a74343f
refactor: no need to create parent && hidden page for :default value
2024-05-03 00:02:55 +08:00
Gabriel Horner
88e38b16f4
fix: more lints including removing dead code
2024-05-02 10:35:44 -04:00
Gabriel Horner
602b236a4c
fix: graph-parser lint
2024-05-02 10:23:20 -04:00
Gabriel Horner
1dbdb16765
fix: whiteboard shapes being invalid
2024-05-02 10:01:08 -04:00
Tienson Qin
89edb3af9a
fix: can't remove Many values
2024-05-02 18:03:17 +08:00
Tienson Qin
d907eb7654
fix: wrong digs for fractional index
2024-05-02 14:34:38 +08:00
charlie
a417c43029
Merge branch 'master' into feat/db
2024-05-02 11:29:08 +08:00
Gabriel Horner
d4ecc393f0
fix: schema with :block/order changes
2024-05-01 16:47:25 -04:00
Tienson Qin
1ec4796eff
refactor: replace :block/left with :block/order
...
Finally no need to worry about parent-left conflicts and broken chain.
With :block/order, we only need to re-compute new orders for siblings
with same order (it can happens if there're bugs in our code, or
updates from rtc), but it doesn't break UI.
Another huge potential benefit after discussing with Zhiyuan is:
Ee might be able to simplify both RTC and undo/redo, currently, we
need to handle each new op for both of them, with recently
refactorings like properties being db attributes, :block/order
is a string instead of a ref, we can handle most property value
conflicts using last-write-wins, and others (e.g. :block/parent,
property with :default type) specifically.
I haven't fixed the issues of using :block/left in RTC and undo/redo,
because we might change both soon.
2024-05-02 01:12:22 +08:00
Gabriel Horner
27ed8c7f29
enhance: allow user classes to have db idents
...
This allows imported and eventually user classes to have db idents.
Updated schema example graph which now imports classes as
:schema.class/X. Also fix schema properties which were removed from
the debug file and remove unused property uuids
2024-05-01 12:20:26 -04:00
Gabriel Horner
5c81b61774
fix: file graphs can't load b/c db specific attribute fetched
2024-05-01 09:07:23 -04:00
Gabriel Horner
2540bb3014
fix: type validations
...
:default doesn't have closed and tweak validation error messages
2024-04-30 14:14:25 -04:00
Gabriel Horner
77914fbcdf
fix: db tests and lint
2024-04-30 12:31:12 -04:00
Gabriel Horner
670b46f221
fix: validate property values again
...
caused by property pair revert 5d4ae66d86
2024-04-30 12:25:12 -04:00
Gabriel Horner
efcffd6e19
fix: rules and most db tests
...
caused by property pair revert 5d4ae66d86
2024-04-30 10:33:33 -04:00
Gabriel Horner
a35bc9b0d6
Bump nbb-logseq version for datascript and ordered-map changes
2024-04-30 10:10:11 -04:00
rcmerci
75f69ffb48
refactor(rtc): split core by adding ns remote, client, exception
...
and re-impl using missionary
2024-04-30 02:08:00 +08:00
charlie
e40e39c3aa
enhance(ux): better highlights page name for the search result items
2024-04-29 15:56:11 +08:00
Tienson Qin
95eb0e7f4a
Merge branch 'feat/db' into refactor/db-properties-schema
2024-04-29 15:55:23 +08:00
Tienson Qin
cdf546dce7
convert fractional-index js to cljs
2024-04-29 15:30:35 +08:00
Tienson Qin
723f0a5bab
fix: class ordered properties
2024-04-29 12:27:18 +08:00
Tienson Qin
8275449b3c
feat: drag && drop block properties
2024-04-29 11:35:11 +08:00
rcmerci
39228f4409
feat(rtc): add timeout(10s) for creating ws-connection
2024-04-29 01:43:01 +08:00
Tienson Qin
dda5f2200e
wip: add global :block/order for properties
2024-04-29 00:27:41 +08:00
Tienson Qin
6a976ca0e2
Deprecate more db attributes for db graphs
2024-04-28 22:29:47 +08:00
rcmerci
e9f5137a86
refactor(rtc): add frontend.worker.rtc.ws2
...
- backoff reconnect websocket
- auto reconnect closed websocket when sending data
- support timeout when receiving data from websocket
- support cancel
2024-04-28 20:02:00 +08:00
Tienson Qin
5d4ae66d86
revert: remove :block/properties
2024-04-28 19:44:53 +08:00
Tienson Qin
d0e2a0991b
fix: :string could be entity for closed values
2024-04-28 18:06:50 +08:00
Tienson Qin
c4e0bda579
fix: add :string to user faced and disable :default for closed value
2024-04-28 17:48:33 +08:00
Tienson Qin
6272dd112a
fix: use :string instead of :default type for built-in property
2024-04-28 17:06:26 +08:00
Tienson Qin
5a8065db88
fix: template not working for file graphs
2024-04-28 15:18:45 +08:00
Tienson Qin
b90eb36e83
perf: load datoms instead of pull data when app loads
2024-04-28 09:23:13 +08:00
Gabriel Horner
1b3b3afd32
fix: invalid placeholder for :date and :page
2024-04-26 09:22:46 -04:00
charlie
82a1a18762
refactor(ui): simplify the old shui codes and remove support for the table.v2
2024-04-26 16:47:53 +08:00
Gabriel Horner
edca3049c0
chore: remove unused fn
2024-04-25 11:24:08 -04:00
Gabriel Horner
3681ac354b
fix: move db-pipeline and datascript-report back to outliner dep
...
graph-parser is primarily a file graph dep that is maintained separately
from db graphs. We want to move as many namespaces out of it as
possible. Also moved differing count assertions to
their respective tests
2024-04-25 11:22:14 -04:00
Gabriel Horner
cb22dca5e0
fix: db tests
2024-04-25 09:39:02 -04:00
Tienson Qin
b84ea96160
fix: handle more non-consecutive cases
2024-04-25 20:39:15 +08:00
Tienson Qin
331aa50379
fix: delete blocks might be consecutive but reversed
2024-04-25 20:28:06 +08:00
Tienson Qin
d82c7fa2f5
fix: tests
2024-04-25 17:33:37 +08:00
Tienson Qin
b55c064305
fix: move :block/path-res calculation to dep graph-parser
2024-04-25 16:50:04 +08:00
Tienson Qin
bcd04dba05
fix: file graph issues
2024-04-25 15:57:14 +08:00
Tienson Qin
349542b7b9
fix: add journal to all pages filter
2024-04-25 14:59:14 +08:00
Gabriel Horner
878d69f342
fix: graph parser tests
...
extract and dependent namespaces require a db now and :block/path-refs
is no longer being handled in this dep
2024-04-24 16:55:24 -04:00
Gabriel Horner
c87c077d29
enhance: new classes can be case sensitive
2024-04-24 15:18:20 -04:00
Gabriel Horner
297e408f6f
fix: db graphs can use case sensitive properties
2024-04-24 14:25:29 -04:00
Tienson Qin
d416687b7b
fix: :block/original-name shouldn't be unique
...
There're at least two use cases for same page original names:
1. multiple clients can create pages with the same title
2. multiple tagged blocks can have the same :block/original-name
2024-04-24 22:49:57 +08:00
Tienson Qin
706f3c76c2
fix: lazy load class and properties
2024-04-24 22:37:10 +08:00
Tienson Qin
e01a771d52
fix: add journal type to malli schema
2024-04-24 20:16:23 +08:00
Tienson Qin
96bdda45fb
fix: disable :block/type filter for now
2024-04-24 20:14:55 +08:00
Tienson Qin
8d9e6da41e
refactor: use :block/type for journal pages instead of :block/journal?
...
breaking change:
removes :block/journal attribute
2024-04-24 20:12:15 +08:00
Tienson Qin
558606e18d
fix: property test
2024-04-24 19:38:51 +08:00
Tienson Qin
fef4e896e1
fix: use existing property pair if exists
2024-04-24 19:13:48 +08:00
Tienson Qin
6d7d4497ff
fix: loading whiteboard
2024-04-24 18:19:12 +08:00
Tienson Qin
13edd74c2c
fix: can't save whiteboard updates
2024-04-24 17:59:01 +08:00
Tienson Qin
0a13e436be
fix: loading block property values
2024-04-24 16:53:08 +08:00
Tienson Qin
4cb2ac6a46
fix: load all classes when app starts
2024-04-24 13:37:34 +08:00
Gabriel Horner
2f0fc3c18c
fix: large graph creation having blank and incorrect block counts
...
large graph chunking assumed a certain tx order which isn't guaranteed.
There are also some edge cases where blocks could get separated from
each other which are now fixed. Also fixed a bug with validating user
properties and made small enhancement for query script
2024-04-23 09:25:07 -04:00
Gabriel Horner
2fad540d01
chore: cleanup setting :many property values
...
and validating them. Setting :many property values was spread
across fns, hard to understand and needlessly validating differently.
Removed type inferring for :many as it's not possible to do this from
the UI
2024-04-22 16:30:53 -04:00
Gabriel Horner
71f01b1115
fix: load user defined closed values
...
they aren't lazy loaded by the UI
2024-04-22 14:16:04 -04:00
Tienson Qin
912ddd6ca2
Merge branch 'feat/db' into refactor/db-properties-schema
2024-04-22 23:57:57 +08:00
Tienson Qin
a15066c862
perf: db reload
...
Load as less pages && closed values as we can to avoid loading too
much data.
We already know that transacting db attributes is slow, going to
investigate it later.
2024-04-22 23:48:40 +08:00
Gabriel Horner
543677ef32
fix: outliner lint
2024-04-22 11:14:14 -04:00
Gabriel Horner
0bee9b12c0
fix: frontend lints and remove dead code
2024-04-22 11:10:16 -04:00
Gabriel Horner
1b66755876
fix: outliner lint
2024-04-22 10:50:37 -04:00
Gabriel Horner
b09031579e
fix: remove outdated code which was causing circular deps in db dep
2024-04-22 10:41:00 -04:00
Tienson Qin
4a0736f62b
fix: property unit tests
2024-04-22 08:50:51 +08:00
Tienson Qin
5a595b1626
fix: property tests
2024-04-21 15:19:38 +08:00
Tienson Qin
44af2213ce
Merge branch 'feat/db' into refactor/db-properties-schema
2024-04-21 13:22:37 +08:00
Gabriel Horner
8f411fad42
enhance: allow user properties with other namespaces
...
to allow for imported properties to have a different namespace than the
one the editor generates. Update schema example graph which now imports
properties as :schema.property/X
2024-04-19 16:54:06 -04:00
Gabriel Horner
311cd13e1f
enhance: closed value membership validated everywhere
...
Frontend and lower-level validation now validate the same.
Also simplified metadata injection
2024-04-19 14:10:16 -04:00
Gabriel Horner
449d4d3600
fix: generate schema graph with new properties
...
Also remove unused bindings and basic validation to graph creation
2024-04-19 10:45:30 -04:00
Tienson Qin
b1bc1ca88a
chore: remove debug
2024-04-19 20:17:53 +08:00
Tienson Qin
20006eafa8
fix: update :block/page when moving between pages
2024-04-19 20:16:39 +08:00
Tienson Qin
113ff4e669
fix: can't move blocks to empty page
2024-04-19 19:54:11 +08:00
rcmerci
bffd1b5c8e
refactor: batch-tx
2024-04-19 17:48:48 +08:00
Tienson Qin
e7e5994e70
fix: batch tx counter name
2024-04-19 16:15:17 +08:00
Tienson Qin
0085accf70
refactor: batch tx
...
outliner-tx/transact! now operates outliner op one by one instead of
batching processing, the benefit is that we can safely rely on the ops
order, it simplifies code a lot too.
2024-04-19 16:11:42 +08:00
Tienson Qin
08c5cc18d0
refactor: simplify outliner move blocks
...
The new implementation doesn't rely on insert-blocks, instead, it
will move the blocks one by one, but using batch tx.
2024-04-19 16:11:42 +08:00
Gabriel Horner
0372cb6e62
fix: typing marker creates tasks e.g. DOING
2024-04-18 14:13:58 -04:00
Gabriel Horner
3f566b36de
fix: basic editing of background-image property
...
and other future :string properties
2024-04-18 10:48:26 -04:00
Gabriel Horner
9bab096def
fix: built-in string properties with internal :string type
...
Also fix a bug that caused numbered list to fail after first item
2024-04-18 09:06:10 -04:00
Tienson Qin
f0920ac89b
fix: another case of non-consecutive blocks move
2024-04-18 20:42:26 +08:00
Tienson Qin
40775e1f80
fix: move a child block to its parent's right sibling
2024-04-18 19:04:44 +08:00
Tienson Qin
2296eca383
chore: don't run fix non-consecutive when it's not needed
2024-04-18 18:43:16 +08:00
Tienson Qin
24e1aab914
fix: skip computing :block/left for non-consecutive blocks
2024-04-18 15:24:47 +08:00
Tienson Qin
ca197c439a
prn db transit if left/parent point to self detected
2024-04-18 14:24:53 +08:00
Tienson Qin
76248b4664
Add trace for debugging
2024-04-18 13:56:33 +08:00
Tienson Qin
9418607c50
Ensure :block/left and :block/parent not point to self
2024-04-18 13:52:05 +08:00
Gabriel Horner
390892e524
fix: build all closed value property types correctly
...
Fixes building of :url and :number closed value properties which
affected properties graph and would effect future built-in properties.
Also simplify translation of property values by keeping it only
in create-graph namespaces
2024-04-17 15:52:55 -04:00
charlie
df046850cc
enhance(shui): fix custom dropdown trigger content for the :as-child option
2024-04-17 23:28:02 +08:00
Gabriel Horner
71aa3fed7b
fix and enhanced validation of property values
...
Fixed close value validation of url and number.
Enhanced :default, :page and :date types with stricter checks.
Closed values are now validated at the malli-schema level
2024-04-17 11:12:27 -04:00
Tienson Qin
d4b2958af7
fix: add new closed value to :default type property
2024-04-17 21:18:00 +08:00
Tienson Qin
2a7e6accb0
refactor: force outliner.tree/-del to delete all children
...
Except the children have been moved.
2024-04-17 17:48:59 +08:00
rcmerci
ffb4bd5a8f
chore: update comment
2024-04-17 17:36:00 +08:00
rcmerci
6bce34524a
fix: check dep-cycle in sort-coll-by-dependency
2024-04-17 17:31:54 +08:00
charlie
dff255fd42
enhance(ux): WIP refactor the editor command modals with the shui components
2024-04-17 16:03:09 +08:00
Tienson Qin
1240052117
fix: undo redo
...
outliner.core/delete-blocks will filter top-level blocks first to
avoid deleting parent first and then children.
2024-04-17 14:54:31 +08:00
Gabriel Horner
37974a8e80
fix: built-in? not working
...
Also fix :entity type incorrectly allowing things to be edited as
:default when it's an internal property type. No longer need this as
:default can be used for closed :entity values
2024-04-16 14:57:43 -04:00
Gabriel Horner
0aa4bda66c
fix: inlined db-based-graph? calls in db-property
...
Addressed fixmes for db-based-graph fns that were inlined to prevent
circular dependencies b/n db-property and sqlite-util. Moved multi
graph fns to db-property-util and existing db-property-util to
db-property-build to address this
2024-04-16 14:43:28 -04:00
Tienson Qin
bacba9db6e
fix: delete property pair entities when deleting a property page
2024-04-17 01:56:34 +08:00
Gabriel Horner
6f5b744189
fix: use user-property type :default for public built-in properties
...
Fixes a property configuration issues since configuration works with
user-property types. Also remove :entity from UI as it is an internal
property type and we can now use :default type
2024-04-16 12:29:24 -04:00
Gabriel Horner
0853940a34
fix: closed :default values validate correctly
...
and values can be selected from UI. Also tweak query to expand
properties if available
2024-04-16 11:59:04 -04:00
Tienson Qin
2195c4b63a
fix: convert to ref type when updating a property to closed values
2024-04-16 23:24:53 +08:00
Tienson Qin
8554e15be7
fix: closed values for default type
2024-04-16 21:04:19 +08:00
rcmerci
842efe5958
test(undo): add random outliner-ops testcase
2024-04-16 18:58:40 +08:00
rcmerci
cf4e43e126
fix: remove wrong cond when delete-blocks
2024-04-16 18:58:40 +08:00
Tienson Qin
202576a862
fix: load property pairs for structured blocks
2024-04-16 16:30:03 +08:00
Tienson Qin
daafe5f4e0
fix: default type values
2024-04-16 15:56:43 +08:00
Gabriel Horner
1e1a17aaf4
fix: validation of single value for a :many property
...
Single value of a :many property wasn't being rolled up as a set,
in CLI or in app validation
2024-04-15 17:17:24 -04:00
Tienson Qin
09f65cf842
fix: lazy load properoty value blocks
2024-04-16 00:49:29 +08:00
Gabriel Horner
236a28764b
fix: new property values invalid because of placeholder
...
Also use cardinality in validation instead of previous hacky value-based
detection. Also disable closed-values generation so new graphs can
temporarily be valid
2024-04-15 12:22:21 -04:00
Gabriel Horner
8ec360759a
enhance(dev): humanize option for validation script
...
also fix nil entity query results
2024-04-15 09:36:09 -04:00
Tienson Qin
4828cfa17d
fix: handle situations when block values have been retracted
2024-04-15 21:05:11 +08:00
Tienson Qin
fb93a35fbc
fix: store text values as entities
2024-04-15 20:39:36 +08:00
Tienson Qin
e19879a12a
fix: cleanup property related data
2024-04-15 17:00:46 +08:00
Tienson Qin
3e0849cb16
fix: set more properties as hidden properties
2024-04-15 13:01:46 +08:00
Tienson Qin
81da3a9960
enhance: move tags and icon to properties area too
2024-04-15 12:52:53 +08:00
Tienson Qin
dd0de0b45f
fix: closed value icon
2024-04-15 12:11:45 +08:00
Tienson Qin
356f45b8e5
Merge branch 'feat/db' into refactor/db-properties-schema
2024-04-15 11:38:34 +08:00
charlie
1e6a7f9010
fix(ui): close all for the shui popups
2024-04-14 11:18:11 +08:00
Tienson Qin
ebe67390fa
perf: no need to get all the property pairs when asking for only one
2024-04-14 08:33:53 +08:00
Tienson Qin
e03b5a2322
fix: property pairs lazy load
2024-04-14 08:19:59 +08:00
Tienson Qin
47abd92155
fix: load property pairs too when lazy load a block
2024-04-14 08:13:10 +08:00
Tienson Qin
16a39c8e7b
fix: tags not displayed for blocks
2024-04-14 07:56:56 +08:00
rcmerci
836cedfd7f
fix(undo): sort&merge undo-ops
...
because maybe some ops depend-on others, e.g. insert parent first then
its children.
2024-04-13 19:53:38 +08:00
Gabriel Horner
8ac39b3cbb
fix: adding new properties for some property actions
...
Also removed duplicate helper fn
2024-04-12 21:53:04 -04:00
Gabriel Horner
b99af712b2
fix: validating user :many properties
...
User properties with :many cardinality were overriding each other
instead of aggregating
2024-04-12 17:33:56 -04:00
Gabriel Horner
8cbc0ac32a
fix: validate property values
2024-04-12 15:27:26 -04:00
Gabriel Horner
7003903edd
fix: new graph creates hidden pages all with same name '$$$'
2024-04-12 12:50:09 -04:00
Gabriel Horner
4771a97d09
fix: page-property rules to use latest schema
2024-04-12 12:29:47 -04:00
Gabriel Horner
4f3b7e7687
fix: ref checks in schema
...
attribute in the wrong schema and db graph only vars had file graph
keys. Also temp fix to avoid crashing ui with props
2024-04-12 12:15:59 -04:00
Gabriel Horner
b2a22498ea
fix: closed validation with new properties
...
Also fix group error reporting incorrectly and improve it by adding
:db/id
2024-04-12 11:32:03 -04:00
Gabriel Horner
354c0c1e42
fix: built-in? helper and most deps tests
...
Also fix validate script's count
2024-04-12 10:04:43 -04:00
Gabriel Horner
97367c3d4f
fix: add timestamps to built-in property pair
...
Also cleanup build-initial-properties and remove unused ns
2024-04-11 18:23:52 -04:00
Gabriel Horner
cbcff4bae8
fix: schema graph creation for previous properties schema
...
Also add db/id to query script and fix outdated case insensitive
constraint on property db idents
2024-04-11 17:46:49 -04:00
Gabriel Horner
e07fd51c83
fix: new db graph creates properties correctly
...
Also fix basic validation
2024-04-11 17:42:51 -04:00
Tienson Qin
1a9608bda1
fix: property handler with the new properties pair storage
2024-04-12 01:17:37 +08:00
Tienson Qin
89b40b4ad8
Extends entity for new :block/properties and direct property access
2024-04-12 00:05:20 +08:00
Tienson Qin
81e5d5f68f
fix: remove frontend.config usage from graph parser dep
2024-04-11 23:02:50 +08:00
Tienson Qin
00967481ad
Merge branch 'refactor/db-properties-schema' into refactor/db-remove-block-name-unique
2024-04-11 20:32:12 +08:00
Tienson Qin
419eac1b16
Merge branch 'feat/db' into refactor/db-properties-schema
2024-04-11 19:56:34 +08:00
Tienson Qin
da96052908
fix: safe check db before get-pid
2024-04-11 17:18:25 +08:00
Tienson Qin
e979e8158c
fix: add db schema for :editor/tx-batch-mode?
2024-04-11 16:45:20 +08:00
Gabriel Horner
527dae34dc
fix: class properties schema
2024-04-10 14:03:39 -04:00
Tienson Qin
7007fa7d41
fix: status and priority should be :entity type
2024-04-10 21:07:20 +08:00
Tienson Qin
8d128f420c
Merge branch 'refactor/db-properties-schema' into refactor/db-remove-block-name-unique
2024-04-10 16:14:47 +08:00