Commit Graph

61 Commits

Author SHA1 Message Date
Rijk van Zanten
085f6dc581 Module collections override (#614)
* Fix errors in repeater

* Use custom module listing in sidebar

* Refresh user store on role update

* Add custom module info to type

* Add collections interface

* Add collections interface translations

* Add collections listing types

* Use custom collections listing in collections module nav

* Remove outdated nav test
2020-05-22 17:04:20 -04:00
Rijk van Zanten
0347426e12 Interface single file (#605)
* Start on file interface

* Add preview icon

* Add readable mimetypes to extension

* Add file interface strings

* Fix type errors

* Add file select / deselect

* Add new file upload support

* Add import from url

* Fix loading state of url import

* Add filename in download attribute

* Replace option names with replace when file exists

* Remove / fix outdated tests
2020-05-21 16:47:01 -04:00
Rijk van Zanten
7b2cb9d329 Fix project logo, use unbranded spinner (#602)
* Use asset URL in logo / public pages

* Use correct project logo in module bar

* Use unbranded loader state
2020-05-21 11:00:22 -04:00
Rijk van Zanten
3f9d5d7d96 Add SSO flow (#595)
* Store / parse sso providers in project info

* Render sso provider links on login form

* Provide path to api on sso

* Finish SSO

* Fix user detail route

* Accept string error codes

* Rename color->type, fix old v-notices

* Add adding user string

* Fix reading order in v-menu
2020-05-19 18:02:04 -04:00
Rijk van Zanten
feaafe6440 109 tiny tweaks (#574)
* no cursor when disabled

* consistent disabled styling

* divider icon alignment

* don’t show last item’s border

* notifications spacing

* status placeholder

* default status icon placeholder

* fix textarea focus style

* tags styling

* proper tags padding when empty

* proper input number step hovers

* show background color

* Fix data-model collections overview name class

* Don't use display template for batch mode

* Fix headline being hidden

* Use formatted name fo bookmarks breadcrumb

* Move drawer open to app store

* Fix tests

* slider value style

* Add comments to users/files

* Make comments selectable

* Move window width drawer state to app parent

* Fix private user condition

* Allow relationships to system collections

* Refresh revisions drawer detail on save and stay

* Add disabled support to m2o / user

* Center v-infos

* Hide default drag image

* Ellipsis all the things

* Use icon interface for fallback icon

* Render icons grid based on available space

* Fix ellipsis on cardsl

* fix batch edit checkbox styling

* Let render template ellipsis its raw values

* Fix render template

* Default cropping to current aspect ratio

* missing translation

* secondary button style

so sorry, rijk… it’s the only one (promise)

* Add image dimensions, add drag mode

* track the apology

* no elipses on titles

* Add cancel crop button

* Only show new dimensions on crop

* Inform file preview if it's in modal

* preview styling

* Install pretty-bytes

* Show file info in drawer sidebar

* Use outline icons in drawer sidebar

* don’t confuse null with subdued text value

* edge-case justification

* Show character count remaining

* Fix storybook + typing error

* Add length constraints to color

* Watch value prop

* Fix tags

* Open icon on icon click

* Fix overflow of title

* Show batch editing x items

* Fix edits emptying input on cancel

* Don't count locked filters in no results message

* simple batch edit title

* Fix headline being invisible

* Add no-options notice to interfaces/displays

* Use existing collection preset in browse modal

* Don't emit null on invalid hex

* Use correct titles in modal-detail

* style char remaining

* file info sidebar styling

* Another attempt at trying to make render template behave in any contetx

* Show remaining char count on focus only

* Remove fade, prevent jumping

* Render skeleton loader in correct height

* Fix o2m not fetching items

* Pass collection/field to render display in o2m

* Add no-items message in table

* Add default state to v-table

* Allow ISO8601 in datetime interface

* Title format selected icon name

* avoid blinking bg on load

* align characters remaining

* Default to tabular in browse modal

* Add disabled string

* Add center + make gray default notice

* Add disabled-no-value state

* Export getItems

* Expose refresh method on layouts

* Fix (batch) deletion from browse)

* Fix interface disabled on batch

* Add interface not found notice

* Add default label (active) for toggle interface

* Use options / prop default for toggle

* Support ISO 8601 in datetime display

* Render edit form in form width

* Fix deselecting newly selected item

* Undo all selection when closing browse modal

* Fix deselecting newly selected item

* wider divider

* update webhooks table

* Fix checkbox label disappearing

* Fix tests.. by removing them

Co-authored-by: Ben Haynes <ben@rngr.org>
2020-05-15 18:44:21 -04:00
Rijk van Zanten
5c00ddddb1 Display template display template display (#551)
* Add util to find related collection

* Allow display.fields to be function

* Return fixed relation for user types

* Pass type / collection / field to displays

* Add template display

* Finish display template display template display
2020-05-11 17:05:11 -04:00
Rijk van Zanten
e3120afc7d Fix cp duplication and default values (#542)
* Fix cp duplication and default values

* Fix tests
2020-05-08 17:43:46 -04:00
Rijk van Zanten
828d81e044 Collection presets (#538)
* Fix table select all

* Fix defaulting + staging changes on new preset

* Navigate to bookmark after creation

* Support exact prop on v-list

* Use exact links in browse

* Show bookmark title when on bookmark

* Force layout refresh on navigation change

* Allow numbers in v-badge

* Add edit bookmark string

* Rename add-bookmark to bookmark-add

* Add bookmark-edit

* Save name changes to bookmark
2020-05-08 15:33:54 -04:00
Rijk van Zanten
0c17735e0e Interface one to many (#533)
* Extract edit modal to standalone component

* Fix creating new item from m2o edit modal

* Rename item-modal to modal-detail

* Extract selection modal in standalone component

* Add required primary-key prop to v-form

* Add inline prop to table

* Fetch items in o2m

* Accept numbers for primary key in v-form

* Use correct collection in render template in m2o

* Render modal detail

* Fix edit existing

* Add add-new

* Do things

* Finish o2m
2020-05-07 10:53:51 -04:00
Rijk van Zanten
70c3f05050 Interface many to one (#524)
* Start on m2o

* Render preview in m2o

* Add icons

* Style inline icons

* Add editing modal

* Disable any linter

* Add add-new button

* Pass existing selection on to layout

* Update v-table to allow for keys-only-selection

* Fix batch on tabular
2020-05-05 14:22:01 -04:00
Rijk van Zanten
622570cc45 Add presets settings (#517)
* Add shared component creation modal

* Add bookmark strings

* Expose save-as-bookmark method

* Fix typing of filter

* Add save bookmark button

* Add presets browse page

* Add select / delete functionality

* Render null value in layout as value-null

* Start on presets detail view

* Render presets detail view

* Save view options correctly

* Add readonly mode to cards layout

* Add layout drawer to presets detail

* Add delete on detail

* Add empty state

* Fix linter warnings
2020-05-04 12:31:11 -04:00
Rijk van Zanten
e8206b06a2 Rename compositions to composables (#508)
* Rename compositions to composables

* Rename test helper, replace some other occurances

* Log error to console
2020-04-30 10:15:32 -04:00
Rijk van Zanten
6ed64a9667 Bookmarks (#494)
* Add support for bookmarks in collection preset composition

* Add strings for bookmark 404

* Use bookmarks prop in collections browse

* Use exact for active link in navs

* Show bookmarks in navigation

* Make bookmark optional in collection preset
2020-04-27 18:59:59 -04:00
Rijk van Zanten
eb129ec750 File preview (#490)
* Don't show filters that are locked

* Change status badge size

* Fix letter spacing

* Optically align title

* Add file-preview at top of files page

* Add missing alt attr
2020-04-27 15:06:19 -04:00
Rijk van Zanten
9e28932a42 Collection display template (#487)
* Add translation strings for adding/editing item

* Add display_template to collection type

* Dont use functional for skeleton loader

* Make title optional and add title slot

* Make title prop optional in private view

* Render -- for null values in render template

* Render display template in header bar

* Render null values in template as subdued --

* Render status dot aligned in the middle

* Fetch latest collections on settings save
2020-04-27 10:50:38 -04:00
Rijk van Zanten
0b05613a55 Add dropdown interface (#461)
* Add show-deselect option to v-select

* Add parse-choices util

* Add dropdown interface

* Add allow-other prop to v-select (single only)

* Check for custom state correctly

* Treat empty custom value as null

* Set full-width to true by default for inputs / selects

* Add allow-other support to multiple dropdown

* Upgrade display value to show item count

* Fix custom deletion

* Fix tests

* Pass allow other on in dropdown interface
2020-04-23 18:16:17 -04:00
Rijk van Zanten
571412ff2c Add wysiwyg interface (#460)
* Install tinymce

* Add wysiwyg interface

* Mock window.matchMedia

* Fix wysiwyg not reading data on value change

* Render skeleton loader on top of wysiwyg

* Add hideLoader support to interfaces

* Sneak this little bugfix in unnoticed

It's now passing on the interface / options to the display rendering in render-template
2020-04-23 14:01:27 -04:00
Rijk van Zanten
3a89dc41f9 Add the cards layout (#430)
* Fix reactivity of currentLayout in drawer detail

* Start on cards layout

* Use dense list items in v-select

* Add cards + size option

* Render cards + files based on options

* Allow modules to set view defaults

* Start on render-template component

* Add get fields from template util

* Use render template component in cards layout

* Render as small icon

* Accept options in display handler function

* Fix type warnings in format title display

* Remove empty styling in render template component

* Account for null values in render template

* Add loading state to cards layout

* Remove type validation in skeleton loader

* Only fetch rendered fields

* Fix resolving of default values for cards module

* Add selection state to cards

* Add selection state to cards

* Make render template reactive

* Implement setup options

* Add disabled support to v-select

* Add fallback icon option + disable fit input when no source

* Add sort header to cards layout

* Remove console log

* Add selection state to cards header

* Fix z-indexing of header menu

* Add pagination to cards layout

* Fix types in field

* Fix type checks in field-setup

* Add role presentation to img

* Remove code smell

* Handle file library gracefully

* Add native lazy loading to images in cards layout

* Render SVGs inline in card
2020-04-18 16:20:00 -04:00
Rijk van Zanten
adc3461de5 Global file upload (#422)
* Add hover style for file drop in private view

* Add uploadFile / uploadFiles utils

* Show drag notification on file dragover

* Finish global file uploads

* Fix warning in drawer detail test

* Use correct terminology

* Ignore drop for non file drops
2020-04-16 15:58:00 -04:00
Rijk van Zanten
e3985ad09b Filter (#420)
* Add filter operators

* Render drawer detail hr full width

* Start on filter component

* Add getRelationsForCollection method

* Add all filter logic (no sorting yet)

* Use correct border color for divider by default

* Tweak operator translations

* Add getField action to fields store

* Fetch fieldsinfo in relations get for files

* Use scoped operators, start on type based input

* Add disabled option to v-badge

* Globally register v-badge component

* Add between filter support

* Hide alias fields

* Work debouncing magic

* Add margin beneath filter blocks

* Fix fetching filter count in use-items comp

* Add relational field lookup

and show tooltip with field name in filter section

* Use filters on users / files

* Allow double level filter
2020-04-15 21:15:44 -04:00
Rijk van Zanten
7e2866373d Stores (#417)
* Fix store identifier

* Add relations store

* Remove rolesStore in favor of composition for user nav

* Fix tests
2020-04-14 17:33:26 -04:00
Rijk van Zanten
97c8f763ab Finish settings > datamodel > collections (#414)
* Add missing slot to readme

* Show and order all collections

* Render correct icon for each collection type

* Add ctx menu on collections overview

* Use subdued colors in icons by default

* Add delete collection flow

* Add delete flow

* Move options to separate component

* Add manage / unmanage toggles

* Add collections filter

* Make non-nav list item icons subdued

* Tweak where loader shows up when managing

* Pass item key to v-table
2020-04-14 13:28:39 -04:00
Rijk van Zanten
7cba8a8de1 Users nav (#400)
* Add filters-to-query util

* Add all users string

* Suppot filters in tabular layout

* Sync filters with collection presets

* Support filters in use-items composition

* Render users nav + use skeleton loader

* Add list-item-icon type to skeleton loader

* Fix missing loader indicator on table

* Cleanup has click check

* Dont route based on id

* Fix loading state in table

* Revert "Dont route based on id"

This reverts commit 6de7cbe1b801d5e5e267f09a6e77dc73dcc60a37.

* Fix table loading state

* Fix routing for users module

* Force role field to be fetched

* Add roles store

* Dont render avatar until user is known

* Speed up hydration absurd much

* Rely on roles store to prevent nav from loading

* Fix tests
2020-04-13 15:18:54 -04:00
Rijk van Zanten
b3b4417b26 Add permissions store (#393)
* Fetch role nested in user store

* Use nested role in presets

* Add permissions store

* Fix tests
2020-04-13 11:08:21 -04:00
Rijk van Zanten
33062b9dd9 Add latency store / indicator (#392)
* Add latency store and track latency based on user tracking

* Add latency store to dehydration logic

* Add signal icons

* Add latency-indicator component

* Set correct size of latency spinner
2020-04-13 10:08:27 -04:00
Rijk van Zanten
7485a97a3b Public (#373)
* Add note to public page

* Add project chooser on public view

* Optimize loading order

So much nicer to use now

Closes #298

* Fix the private project switcher too

* Add transition to public view

* Prevent project switching if youre already on that project

* [WIP] Add reset password form

* Add request password reset page

* Add jwt-payload util

* Install base-64

* Fix test typing

* Add new errors to translations

* Finish reset password flow

* Fix foreground color on v-notice

* Fix tests

* Allow code in translateError + render project error translated on login

* Remove wrong reference to error component

* Render project key if name is unknown

* Fix date-fns version

* Fix tests
2020-04-09 19:06:15 -04:00
Rijk van Zanten
bba4dae46d Activity sidebar (#327)
* Show activity sidebar in detail page

* Add localized format distance util

* Update use-time-from-now composition to use localized dates

* Install marked

* Add activity delta strings

* Show all activity records in sidebar

* Add correct permutations of users

* Make avatar rounded square

* Finish posting comments

* Remove empty test file

* Fix tests
2020-04-06 15:25:58 -04:00
Rijk van Zanten
670103a523 Add global settings form (#303)
* Add settings store

* Use brand variable in app.vue

* wip

* Add global settings form, refactor project error type

* Fix codesmell
2020-04-03 16:13:40 -04:00
Rijk van Zanten
9f79f744f3 Add notifications inline drawer (#292)
* Render missed notifications inline in drawer

* Fix tests
2020-04-02 15:35:46 -04:00
Rijk van Zanten
24ba6c0752 [Settings] Add field setup flow (#279)
* Start on field setup modal

* Add field-setup first pane

* Add interface options support

* Use updated button to add field

* Add interface and display selection and options

* Add advanced options form

* Use field name in settings

* Hide titles when editing existing field

* Add disabled handler for next / previous

* ...

* Show error on failed saves

* Rename name to field

* Fix arrow inline styles

* Fix show-arrow

* Rework tab logic to use named tabs (makes dynamic relationship tab work)

* Make it pass tests
2020-04-01 19:06:24 -04:00
Rijk van Zanten
9ef0255746 Update v-form to accept fields prop (#275) 2020-03-31 14:49:54 -04:00
dependabot-preview[bot]
f6c05367a5 Bump nanoid from 2.1.11 to 3.0.2 (#256)
* Bump nanoid from 2.1.11 to 3.0.2

Bumps [nanoid](https://github.com/ai/nanoid) from 2.1.11 to 3.0.2.
- [Release notes](https://github.com/ai/nanoid/releases)
- [Changelog](https://github.com/ai/nanoid/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ai/nanoid/compare/2.1.11...3.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Migrate to nanoid 3

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2020-03-30 17:01:00 -04:00
Rijk van Zanten
790e7b2eb7 [Settings] Add duplicate field option (#263)
* Add duplicate field option

* Add missing prop to readme of v-select

* Re-enable preventOverflow
2020-03-30 16:47:56 -04:00
Rijk van Zanten
6486dd810e Start on data model settings (#258)
* Use menu for project switcher

* Setup base structure for settings module

* Setup routes for settings

* Tweak v-menu styling

* Rough in collection overview in settings

* Save field info based on sort

* Add accidentally renamed global route

* Add move-in-arrow util

* Add update methods for fields

* Add field sorting logic

* Handle sorting between groups

* Add support for label on the v-divider component

* Register missing components

* Allow multiple dialogs at once

* Progress in settings

* Fix full-width option of input

* Update missing translations

* Improve menu performance

* Add field sizing

* Add disabled state to list item

* Add visibility toggle

* Undo changes on API errors

* Add test for usecollectoins

* Add notifications to field updates

* Fix linter warning

* Remove useCollection directive

* Fix linter warnings
2020-03-30 13:39:45 -04:00
Rijk van Zanten
7bcfcb9b5b Save layout options query (#246)
* 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
2020-03-25 09:49:29 -04:00
dependabot-preview[bot]
26960961e8 Bump prettier from 1.19.1 to 2.0.2 (#239)
* Bump prettier from 1.19.1 to 2.0.2

Bumps [prettier](https://github.com/prettier/prettier) from 1.19.1 to 2.0.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/1.19.1...2.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Add dangling comma's

* Update eslint config to match prettier default

* Make eslint match prettier for real this time

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2020-03-24 10:51:30 -04:00
Rijk van Zanten
de26915d6b Page tracking (#242)
* Add trackPage action to userStore

* Track page in after each for router
2020-03-23 20:53:16 -04:00
Rijk van Zanten
fca6bd34ab Notifications (#240)
* Add notification item

* Add notifications group component

* Add notifications store

* Tweak notification item component

* Tweak styling of notifications / add dense mode

* Fix codestyle problem

* Update storybook

* Add notifications group to private view

* Add tests for notifications store

* Add notify util

* Fix import style

* Tweak positioning of notifications group

* Update readmes
2020-03-23 18:51:31 -04:00
Rijk van Zanten
847c7a5554 Logout route (#238)
* 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
2020-03-23 14:37:31 -04:00
Rijk van Zanten
7d1df455fd User sign out (#234)
* Add fullName getter to user store

* Add user sign out link

* Add tests for module bar avatar
2020-03-23 14:06:30 -04:00
Rijk van Zanten
6e6ba35ce9 Add collection presets store (#226)
* Rename ids of stores to match var names

* Add collection presets store

* Add collection-presets-store
2020-03-20 22:00:39 -04:00
Rijk van Zanten
3ab97ca2b2 Collections module additions (#201)
* 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>
2020-03-20 17:05:55 -04:00
Rijk van Zanten
346e6f95ce Project switching (#206)
* Register notice component globally

* Render button as flex in full width

* Add buttons to / route

* Rename block->full-width

* Add hyrate overlay / project chooser placeholder

* Make routes named

* Dehydrate / hydrate when switching projects

* Add choose project buttons to / route

* Add main app component and hydration loader effect

* Improve routing flow

* Remove unused import statement

* Fix test
2020-03-17 16:25:43 -04:00
Rijk van Zanten
b26b91f785 Add userStore, continue-as notification, bit of styling (#203)
* Add userStore, continue-as notification, bit of styling

* Name routes, remove wrong comment

* Add test for user store

* Fix tests for router
2020-03-16 18:28:35 -04:00
Rijk van Zanten
68fe8099c1 v-form (#170)
* Add v-form with grid

* Sort the fields

* Add auto dense mode to header

* Tweak auto dense threshold

* Add readme / story / test placeholder
2020-03-12 16:22:08 -04:00
Rijk van Zanten
68c625ec79 Document and structure utils / compositions (#168)
* Document and structure utils / compositions

* Fix tests

* Ignore tests in sonar cloud?

* Please sonar don't use my test files
2020-03-12 12:31:36 -04:00
Rijk van Zanten
971876d018 Interfaces registration (#155)
* 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
2020-03-11 11:25:33 -04:00
Rijk van Zanten
a2ba2c8783 Add fields store (#144)
* 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
2020-03-11 10:36:39 -04:00
dependabot-preview[bot]
dba5329d31 Bump @vue/eslint-config-typescript from 4.0.0 to 5.0.2 (#141)
* Bump @vue/eslint-config-typescript from 4.0.0 to 5.0.2

Bumps [@vue/eslint-config-typescript](https://github.com/vuejs/eslint-config-typescript) from 4.0.0 to 5.0.2.
- [Release notes](https://github.com/vuejs/eslint-config-typescript/releases)
- [Commits](https://github.com/vuejs/eslint-config-typescript/commits/v5.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Update eslintrc to match major upgrade of typescript-eslint

* Fix linter warnings and tests

* Fix tests for real this time

Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
2020-03-03 16:06:46 -05:00
Rijk van Zanten
28531b531b Add hydration, collection store, collections module navigation (#125)
* Add hydration functions and logout route

* Add tests for hydration

* Add collections nav

* Structure collections module, add overview route

* Fix failing tests

* Add test for use-navigation

* Add tests for collections-navigation

* Add tests for collections-overview

* Fix export for use-navigation composition

* Update tests
2020-02-28 16:21:51 -05:00