* Add getPresetForCollection method
* Add savePreset action
* Add useSync composition
* Sync collection presets with store / api
* Clean up browse flow
* Cleanup tabular code
* Move portal target to browse page
* Save column widths to view options
* Add must-sort prop to v-table
* Add saving flow for viewQuery / viewOptions
* Optimize saving flow
* Provide main element to sub components
* Add per page option
* Add field setup drawer detail
* Add logout route
* Don't render spinner on top of content
* Use logout route instead of onBeforeEnterLogout handler
* Remove onBeforeLogoutRouteEnter test
* Fix warnings in tests
* Render add new link, only render delete on isnew is false
* Add header actions buttons based on state
* Add header buttons and breadcrumbs
* Style tweaks
* Add navigation guard for single collections
* Add delete button logic
* Add ability to delete items on browse
* Add select mode to tabular layout
* Add saving / deleting logic to detail view
* remove tests (temporarily)
* Remove empty tests temporarily
* Add pagination to tabular layout if collection is large
* Add server sort
* wip table tweaks
* show shadow only on scroll, fix padding on top of private view.
* Update table
* fix header hiding the scrollbar
* Fix rAF leak
* Make pagination sticky
* fix double scroll bug
* add selfScroll prop to private view
* Last try
* Lower the default limit
* Fix tests for table / private / public view
* finish header
* remove unnessesary code
* Fix debug overflow + icon alignment
* Fix breadcrumbs
* Fix item fetching
* browse view now collapses on scroll
* Add drawer-button component
* Fix styling of drawer-button drawer-detail
* Revert "browse view now collapses on scroll"
This reverts commit a8534484d496deef01e399574126f7ba877e098c.
* Final commit for the night
* Add scroll solution for header overflow
* Render table header over shadow
* Add useScrollDistance compositoin
* Add readme for scroll distance
* Restructure header bar using sticky + margin / add shadow
* Tweak box shadow to not show up at top on scroll up
* Fix tests
Co-authored-by: Nitwel <nitwel@arcor.de>
* Add interface registration logic
* Register interfaces in main
* Add basic text input example
* Add storybook knob for placeholder
* Add test for text-input
* Fix tests
* Add fields store
* Add test coverage for fields store
* Remove hydration tests
It doesn't do anything itself, but just calls init / reset methods of stores
* Rename store methods to hydrate / dehydrate
* DRY that sucker
* Move hydration logic into a store
* Fix tests for new store
* Rename hydrate store to app store, fix tests in auth
* Fix tests of router
* Fix tests in module-bar-logo
* bunch of things
* Fix tests in hydrate
* Fix router tests
* Clean up auth tests
* Update tests for collections / fields stores
* Use stores instead of mocks in tests
* Add test for store getter in collections
* Restructure extensions and registration
* Add registration function for layouts
* Combine extension registrations
* Prefer separate folders over single
* Don't register extensions / views in storybook
* Fix failing tests
* Move modules types into extensions file
* Rename modules store to extensions store
* Start on registering tabular
* Add register component util
* Register layouts
* Build bundle for modern browsers
Snuck this commit into the wrong branch, just because I can
* Add tests for layout registration + add dummy tabular
* Implement router dynamic route replacement logic
Vue router has pretty bad dynamic route registration handlers, meaning we have to hack around replacing the full routes array in order to achieve properly matched routes
* Add test coverage for replacerouter function
* Replace anonymous event handlers with named HoCs for better test coverage
* Add tests for module registration
* Get test coverage to 100%
* Create auth helpers file, check auth on failed requests, change beforeRoute handler
* Uninstall debug
* Navigate to / on no public projects
* Get router test coverage to 100%
* Fix auth tests
* Add tests for new projects store action
* Register views globally
* Use global private view in debug route
* Register login route
* Add barebones login form
* Add auth check on routing
* Add tests and extract checkAuth function
* Fix tests of router
* Move stores into subfolders
* Register modules from modules store
* Register name / icon in modules store
* Update module configs
* Render v-button in module sidebar
* Render correct paths in module sidebar
* Add activated style to button
* Use correct color for button in module bar
* Use correct icons for system modules
* Add tests for modules store
* Remove readme in favor of inline comments
* Add file structure
* Add basics of private view
* Add composition api in every test
* Install nanoid
* Add request queue
* Register all global components
* Make bunny run on api queue
* Use private route for debug now
* Move request queue to store
* Remove unused sleep function in hover test
* Use new request queue in private view
* Remove jest pre-test config
* Finish logo + tests
* Add tests for private view
* Fix unhandled promise in api test