from original *property rules by giving simple queries
their own rules. This allows simple queries to grow in functionality
and complexity without affecting other features. Also fixed
private-property rule wasn't working because deps weren't configured
Throwing errors on unsupported filters for these makes it seem like we
support it when we don't. Better to be explicit. Also tweak
related tests so that file graph filters only run for file graphs
Maintains backwards compatibility for property filter queries
which fixes imported and handwritten property queries. Extended
sqlite.build and test-helper capabilities in order to test this.
Fixes LOG-3231
In #11508 db graphs moved to a new table which improved but
changed how sort worked for queries. Better to deprecate
the text sort-by filter than to have a buggy and inconsistent sort
for queries
Turn on kondo :shadowed-var lint and fix failures. If this lint had
been turned on, it would have caught logseq/db-test#38 and saved us time
from debugging which random component was accidentally shadowed by a var
and failing with 'Objects are not valid as a React child'. Also fixed a
few outside components but stopped b/c there are too many to do right
now
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.
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
closed value names for page/date closed values - one in
query builder property value dropdown and the other in show block data command.
Also cleaned up query-dsl which shouldn't be making db graph queries
on file graphs
This ns is more appropriate in db and was only in graph-parser because
the date-time-util lib wasn't accessible to db until #10933 landed.
graph-parser dep is specific to file graphs and as much as possible
anything unrelated to this should not be in this dep