* chore(ui): add sidebar related components
* chore(shui): add sidebar core
* enhance(ui): WIP polish left sidebar
* enhance(ui): polish opacity value
* enhance(ui): remove unnecessary css
* enhance(ui): simplify the left sidebar related css
* enhance(ui): polish left sidebar navigations
* enhance(ui): polish navigations items
* enhance(ui): polish graphs picker from the left sidebar
* enhance(ui): polish graphs selector
* enhance(ui): graphs dropdown content
* enhance(ux): create new page for the graphs selector section
* enhance(ui): remote icon for the graphs selector
* enhance(ui): polish sidebar navigations filter
* fix(ui): background color for the left sidebar
* enhance(ui): refactor names related with the left sidebar
* enhance(ux): WIP configurable navigations from the left sidebar
* enhance(ux): configurable navigations popup
* enhance(ux): persist user navigations from the left sidebar
* fix(ui): bad graph selector type icon
* fix: lint
* fix: lint
* enhance(ui): polish details for the left sidebar
* chore: remove shadcn sidebar component
* chore: remove shadcn sidebar related component
* fix(ui): text overflow for the page name item
The move from :block/type to :block/tags allows for a couple
types of bugs that weren't possible before. Add validations
to ensure built-in entities aren't being accidentally modified
by the UI and that :logseq.class/Page remains simple and a useful
tag for features later. The Page validation is turned off until an
importer bug is fixed
:block/alias and :block/tags are validated as properties and thus no
longer need attribute definitions. This should've been updated with attribute properties refactor.
:block/namespace has not been in db graphs for awhile
an existing tag or property. This made sense when pages were split by
type but it doesn't make sense now that a Tag or Property can be a Page.
The 'New page' that showed up was also buggy as it didn't actually
create a new page. Also fixed page-exists? doing a case sensitive check
when a Page and Tag were in the same tags
Caused some buggy page creation. While [?b :block/tags ?db-ident] for an
individual db-ident, it doesn't work when db-ident is a destructure :in
arg. For that case only integers worked
buggy exceptions for :logseq.class/Tag anywhere :block/tags queries
:logseq.class/Tag is used e.g. validation, page existence and querying.
Perhaps before 89cdf5f9f6940dba48cacd82056ad62253ce46c7, this wasn't
possible because of the way the graph was initialized. Also removed
one parent assertion for previous fix since we didn't need both
assertions to prevent a regression
This wouldn't allow tasks with the same name or even any two blocks have
the same content. See ddabf90263 for the
original fix for more. Also fixed lint and tweaked test
They weren't visible on their Root Page but bigger bug is that their
:logseq.property/parent wasn't storing or querying correctly.
Also changed their parent to Root as they aren't dependent on Page
and no need to make bootstrapping more complex