* feat: initial base structure
* feat: utils for constructing and flattening collection tree
* feat: basic demo to display tree-like structure with virtualization
* feat: make it searchable
* feat: row component
* fix: handle row selection
* fix: scroll jitter
* fix: popover max-height to eliminate extra scroll
* fix: position scrollbar correctly
* fix: do not sort to maintain correct tree-like view
* feat: footer
* fix: scroll to selected item
* fix: deselect item
* fix: display selected location in footer
* fix: deselect item if any upon search trigger
* fix: create draft without collection
* fix: pass down collectionId to all the nodes
* feat: publish document under selected location
* fix: move the doc post publish in case it is supposed to be a nested doc
* fix: wrap text for selected location
* fix: footer background in dark mode and unused css
* fix: popover height in small devices
* fix: no need to spread
* refactor: remove outline
* refactor: border-radius is common
* refactor: remove active and focus
* fix: do not shrink spacer
* fix: scroll list padding with correctly adjusted scrolling
* refactor: use constants
* fix: use padding in favor of spacer
* refactor: border attrs not needed
* refactor: control title padding and icon size centrally
* fix: rename param
* fix: import path
* fix: refactor styles, avoid magic numbers
* fix: type err
* feat: make rows collapsible
* fix: fully expanded without disclosure upon search
* fix: use modal in place of popover
* fix: collapse descendants
* fix: rename PublishPopover to PublishModal
* fix: adjust collapse icon as part of tree view
* fix: enable keyboard navigation
* not sure why collapse and expand shortcuts are not working
* fix: row expansion and search box focus and blur
* fix: remove css hover, handle it via active prop
* fix: discard tree like view for search results
* fix: minor tweaks
* refactor: no need to pass onPublish
* refactor: remove unnecessary attrs from search component
* fix: publish button text
* fix: reset intial scroll offset to 0 on search
* fix: remove search highlights
* fix: clean up search component
* refactor: search and row collapse
* refactor: PublishLocation
* fix: show emoji or star icon if present
* fix: shift focus only from top item
* fix: leading emoji
* fix: baseline text
* fix: make path tertiary
* fix: do not show path for collections
* fix: path text color upon selection
* fix: deleted collection case
* fix: no results found
* fix: space around slash
* Refinement, some small refactors
* fix: Publish shortcut, use Button action
* Allow new document creation from command menu without active collection
* fix: duplicate
* fix: Unneccessary truncation
* fix: Scroll on expand/collapse
Remove wraparound
* fix: tsc
* fix: Horizontal overflow on PublishLocation
Remove pointless moveTo method
* fix: Missing translation
* Remove method indirection
Show expanded collection icon in tree when expanded
* Shrink font size a point
* Remove feature flag
* fix: Path color contrast in light mode
Remove unused expanded/show attributes
* shrink -> collapse, fix expanded disclosure without items after searching
* Mobile styles
* fix: scroll just into view
Co-authored-by: Tom Moor <tom.moor@gmail.com>
* chore(server): use zod for validations
* fix(server): use ctx.input for documents.list
* fix(server): schema for documents.archived
* fix(server): documents.deleted, documents.viewed & documents.drafts
* fix(server): documents.info
* fix(server): documents.export & documents.restore
* fix(server): documents.search_titles & documents.search
* fix(server): documents.templatize
* fix(server): replace nullish() with optional()
* fix(server): documents.update
* fix(server): documents.move
* fix(server): remaining
* fix(server): add validation for snippet min and max words
* fix(server): fix update types
* fix(server): remove DocumentSchema
* fix(server): collate duplicate schemas
* fix: typos
* fix: reviews
* chore: Fixed case of Metrics import
* fix: restructure /api
* fix: loosen validation for id as it can be a slug too
* Add test for query by slug
Simplify import
Co-authored-by: Tom Moor <tom.moor@gmail.com>
* feat(server): allow document to be created without collectionId
* fix(server): policies for a draft doc without collection
* fix(app): hide share button for drafts
* feat(server): permissions around publishing a draft
* fix(server): return drafts without collection
* fix(server): handle draft deletion
* fix(server): show drafts in deleted docs
* fix(server): allow drafts without collection to be restored
* feat(server): return drafts in search results
* fix: use buildDraftDocument for drafts
* fix: remove isDraftWithoutCollection
* fix: do not return drafts for team
* fix: put invariants
* fix: query clause
* fix: check only for undefined
* fix: restore includeDrafts clause as it was before
* tidy
* Add title to HTML export
* fix: Add compatability for documents without collab state
* Add HTML download option to UI
* docs
* fix nodes that required document to render
* Refactor to allow for styling of HTML export
* div>article for easier programatic content extraction
* Refactor worker, all emails on task system
* fix
* lint
* fix: Remove a bunch of expect-error comments in related tests
* refactor: Move work from utils.gc into tasks
* test
* Add tracing to tasks and processors
fix: DebounceProcessor triggering on all events
Event.add -> Event.schedule
This PR moves the entire project to Typescript. Due to the ~1000 ignores this will lead to a messy codebase for a while, but the churn is worth it – all of those ignore comments are places that were never type-safe previously.
closes#1282