* Add migrations, start on service
* Dont track TODO files
* Update collection types, add collection type
* Allow drag and drop sorting of collections
* Add tooltip
* Add grouping + collapsed state
* Fix nested closed state
* Tweak active drag styling
* Remove collapsed state
* Add folder creation/editing
* Render collections as nested tree in nav
* Fix open active state
* Add dense when collection count > 5
* Add visible toggle
* Add show-hidden toggle
* Fix css specificity
* Add support for query in v-list-group
* Add missing cascade
* Remove collapsed state
* Finish three-way toggle
* Add custom lock icon
* Fix icon size in non-dense
* Redirect to first & open tree on load
* Dont make prop required
* Fix search
* Only apply archive filter when enabled in settings
* Add archive view
* Add translations
* Hide organization fields
* Show system collections
* Implement translation for activity items
Fixes#8415
Also fixes issue with "Open item" link for system collection
* Fix 'Create New' btn translation in list interface
Fixes#8427
Default values needs to return a function to be dynamic
Same for "Empty item" translation
Also use field.name instead of field.field value for field title
* Fix translation of default values in boolean & dropdown interfaces
* Translate note field of system collections in edit mode
* Translate remaining "hard-coded" values
* Add dedicated translation for open folder
* Update app/src/interfaces/list/list.vue
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Use translate-object-values and check if collection starts with
'directus_'
* Use already existing translation keys for activity items
As discussed
* Translate whole data object if system collection
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* add translations display
* add progress and lang preview
* format changes
* remove unused
* remove unused
* fix errors and clean up style
* make lang title bold
* Fix imports
* 🧹 Little cleanup
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Remove advanced filter sidebar detail
So long, and thanks for all the fish.
* Remove filter conversion logic
* Start replacing/removing old skool filters
* Add inline mode for usages in search bar
* Make filter work in header bar
* Emit empty string as null in filter
* Move shared filter types to shared
* Upgrade use-items
* Fix manual sort on tabular
* Cleanup styling in search bar usage
* Tweak styling
* Fix filtering issues
* Update cards
* Remove activeFilterCount from tabular
* Update maps to work with new filters
* Update calendar to new filter/sort structure
* Fix activity module nav/search
* Fix no-results message
* Update file library filtering
* Finalize user search
* Allow filtering in drawer-collection
* Handle cancelled responses semi-gracefully
* Add loading start state timeout
* Replace sort type in api
* Last commit before redoing a bunch
* Finish new visual style
* Remove unused rounded prop from v-menu
* Tweak sizing
* Enough size tweaking for now
* Count all filter operators instead of top
* Fix archive casting
* Fix api build
* Add merge filters util
* Split filter in user vs system
* Fix export sidebar detail
* Show field label on permissions configuration
* Add migration for filter/sort
* Use filters in insights
* initial tests and preparation for filter interface
* get basic structure down
* improve visuals and interaction
* stop modifying props 🙃
* update logic blocks style
* clean up filter interface
* lint css
* support m2a and simplify visited relations
* allow for recursive loading of fields
* use filter interface on conditions
* Use dynamic useFilterTree instead of old one (#7569)
* use advanced field tree on field template
* update to advanced field tree
* remove old useFieldTree
* update to new design
* add border on nested nodes
* tweak styling
* Fix linter warnings
* Fix field-setup
* clean up interface
* clean up interface
* clean up and rename files
* clean up code
* use default filter structure
* fix changing fields
* Add monospace style option to tooltips
* Various small stylistic tweaks
* Add menu placement
* Cleanup "big interface" usage
* Remove seamless
* Add dropdown on add filter
* Cleanup import/export, add v-select-placeholder-co
* Fix staging issue
* Allow overriding preview slow, fix padding
* Show field path inline
* Cleanup empty state
* Use new filter-interface in permissions setup
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* move composables, types and utils to shared
* move composables, utils and types to shared
* expose utils and composables in extensionsSDK
* fix missing dependencies
* Sort index.ts exports
* Do the thing
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Rework layout extension component management
* Move cards layout to new system
* Move calendar layout to new system
* Move map layout to new system
* Use new useLayout everywhere
* Remove useLayoutState composable
This fixes not being able to build the repo due to type issues
introduced by the Typescript 4.4 option "useUnknownInCatchVariables",
which is enabled by default in strict mode.
* Add conditions field to directus_fields
* Add conditions configuration
* Apply conditional overrides
* Handle conditions in nested groups
* Fix reverse mutating conditions
* Start on filter setup interface
* Move field types/constants to shared
* [WIP] Updated client side filter validation
* Support logical operators in client validation step
* Use new validation util in conditions check
* Add nesting in filter seutp
* Add filter rule setup configurator
* Fixes that should've been done in the merge
* Strip out filter-settings interface
TBD in a new PR
* Move browser to index
* Move defineInterface to shared
* Split up utils into node and browser utils
* Move defineDisplay to shared
* Move defineLayout to shared
* Move defineModule to shared
* Add defineEndpoint and defineHook to define-extensions
* Expose define extension functions through extension-sdk
* Make route type of defineEndpoint more specific
* Simplify define extension functions
* Deduplicate types and local types definition
* Do not allow functional components in display handler
* Make interface options nullable
* Deduplicate extension types definition
* Fix utils/node exports
* Allow set folder for imported files
* Allow passing folder in file/files component; Allow pick folder for file/files/image interfaces.
* Added folder system component for picking folders; Move folder picker the field from data to interface (file, files, image).
* Add custom folder interface; use props for interfaces file/files/image in upload component
* Allow set folder for imported files
* Allow passing folder in file/files component; Allow pick folder for file/files/image interfaces.
* Added folder system component for picking folders; Move folder picker the field from data to interface (file, files, image).
* Add custom folder interface; use props for interfaces file/files/image in upload component
* Update after rebase
* Add storage_default_folder setting, use folder when deploy file
* Fix files options; Add default label option for folder interface.
* Fix set folder for file
* UX
* Add migration for column, undo seed change
* Update nomanclature
* Make sure file library always submits folder, cleanup setting retrieval
* Use indexName on down migrate
* Fix import default folder, rename customPresets->folderPreset
* Rename interface import
* Use undefined as default folder
* Remove deprecated lang file
* Fix display of folder interface, treat null as value
* Move shared composable
* Remove unused ref
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Update icon font, add group type to field setup
* Add group type, start on group-raw interface
* Add style for group
* Finish nested groups
* Finish field group setup
* Add type check
* Work on group raw group
* Various
* Fix support for nested groups
* Add group-divider interface
* Remove unused file
* Fix linter warning
* Start on tree-select component
* Stop propagation on label click as well
* Setup temp debug route
* Add value-combining=all
* Add branch mode
* Add leaf mode
* Add indeterminate state
* Add search
* Keep group state alive during search
* Fetch existing item based on clone fields data
* Add interface for setup
* Tweak field structure of m2a items
* Use collection name in checkbox
* Remove temp test
* Fix v-table interalItems type
* Fix useGroupable return type
* Fix useCollection return type
* Fix useCustomSelection return type
* Fix useElementSize return type
* Fix useFormFields return type
* Fix useItem return type
* Fix useItems return type
* Prepend composable return type name with "Usable"
* Fix usePreset return type
* Fix useScrollDistance return type
* Fix useTitle return type
* Fix useWindowSize return type
* Fix usePermissions return type
* Fix useTemplateData return type
* Fix a few type issues in field store
* Fix extension getter return types
* Fix hydrate store type issue and double-hydrating users store
* Fix code interface type issue
* Fix m2m composables return types
* Fix html editor composables return types
* Fix collections module composables return types
* Fix files module composable return type
* Fix settings module composable return type
* Fix settings module roles composables return types
* Fix settings module users composable return type
* Fix return type issues in utils and a nasty parameter overwrite
* Fix modelValue casing in template
* Bump knex-schema-inspector
* Fix cli role name attr
* Update relation type
* Restructure relations
* Restructure relations table
* Update api type for relation record
* Fetch relations in new structure
* Update schema-inspector
* Use new relations schema structure in api
* Update relations GETters
* Add default value to one deselect
* Add create relationship on existing field
* Add updating existing relationship
* Add delete relations
* Add relations query resolver
* Add graphql mutations for relations
* Fix reading from wrong name
* Fix wrong method name
* No idea why this flip flops every install
* Update relation type
* Accept null in use-collection composable
* Use new relations structure in translations
* Use new relations structure in new-collection
* Start updating field detail store
* Renames for new relations structure
* Silently ignore passed collection/field in relation update
* Fix setting pk field in m2o relational setup
* Small tweaks in o2m setup
* Fix m2m setup
* Tweak m2o setup
* Fix m2a setup
* Allow null for related collection (m2a)
* Fix languages code name
* Fix migration default value
* Fix relational cleanup in collections/fields
* Fix transaction problem in field delete
* Fix inserting relational o2m items
* Don't execute updateByQuery on empty item set
Fixes#5710, fixes#5070
* Show referential action input on m2o
* Finish language for m2o
* Show triggers config on o2m
* Delete items on one_deselect_item delete
* Fix naming, show relational trigger config on m2m
* Tweak language, add setup to m2a
* Fix linter warnings
* Add trigger setup for translations
* fix Edit non-schema relationship issue
* Sync existing on_delete triggers in o2m setup
* Add migration to setup foreign key constraints
* Update illegal FK values before setting constraint
* Fix MySQL unsigned vs not-unsigned in FK creation
* Use pretty names for labels in relational triggers
* Prefix auto-junction when system table
Fixes#5493
* Add system foreign key triggers
Fixes#5749
* Update docs
* Declare return types on functions
And a very few other type related minor fixes
* Minor syntax fixes
* Remove unnecessary escape chars in regexes
* Remove unnecessary awaits
* Replace deprecated req.connection with req.socket
* Replace deprecated upload with uploadOne
* Remove unnecessary eslint-disable-next-line comments
* Comment empty functions / catch or finally clauses
* Fix irregular whitespaces
* Add missing returns (null)
* Remove unreachable code
* A few logical fixes
* Remove / Handle non-null assertions which are certainly unnecessary (e.g. in
tests)
* Check auth password policy on user modifications
* Show validation errors in drawer-batch
* Allow custom password policy, add placeholder
* Add UserSuspended exception
* Add user suspended error translation
* Move rate limiter creation into root helper
* Add login attempts support to authentication service
* Don't authenticate into settings service when checking password policy
* app: encode primary key
Since primary keys could be manually entered strings,
we should encode those in order to prevent accessing
inexistent routes.
E.g.
Document with primary key: 'clients/John Doe'
* fixup! app: encode primary key Since primary keys could be manually entered strings, we should encode those in order to prevent accessing inexistent routes. E.g. Document with primary key: 'clients/John Doe'
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>