* Fix field configuration view not updating when navigating between different fields in New Field drawer
* Used Vue toRef instead of computed as per the feedback
* Make type reactive too
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Fix paths of imports
* Process not-found.vue as ts
To prevent the following error from 'vue-tsc':
error TS6504: File '/Users/pascal/Development/directus/app/src/modules/insights/routes/not-found.vue.js' is a JavaScript file. Did you mean to enable the 'allowJs' option?
Note: We could also enable 'allowJS' but since this is the only js file
this seems to be a more fitting fix
* Drop hljs language definition for GraphQL (now in core)
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* applied the same role fix too users invite
* added same fix when saving permissions
* Prevent loading users unecessarily on the permission page
* Added proper `deep` query typing
* fixed typing for tests
* apply similar fix for navigation folder
* translate fields during hydration
* patch untranslated raw values on field edit
* simplify/remove existing translate usages
* minor codestyle
* translate field note and validation_message
* stub api call in fleld-detail store test
* skip fields translation before user locale sets in
* optimize hydration calls
* use translateLiteral for note & validation_message
* cherry pick field meta properties to patch
* reduce setLanguage calls & settings requests
* settings store test & type update
* tweak variable casing
* test server store & fix existing type/ref issues
* update fields store test for skipTranslation
* fix render-display merge
* await field update before opening drawer
* fetch meta at the end to load relationships first
* add loading state to prevent editing some fields
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
* Add bundle type to constants and types
* Add support for API bundle extensions
* Rename generateExtensionsEntry to generateExtensionsEntrypoint
* Add support for App bundle extensions
* Refactor App extension registration
* Replace extensions inject with useExtensions()
* Replace getInterfaces() with useExtensions()
* Replace getDisplays() with useExtensions()
* Replace getLayouts() with useExtensions()
* Replace getModules() with useExtensions()
* Replace getPanels() with useExtensions()
* Replace getOperations() with useExtensions()
* Add useExtension() composable
* Replace useExtensions() with useExtension() where applicable
* Remove interface getters
* Remove display getters
* Remove layout getters
* Remove module getter
* Remove panel getters
* Remove operation getters
* Rename extension register.ts files to index.ts
* Perform module pre register check in parallel
* Remove Refs from AppExtensionConfigs type
* Remove old extension shims
* Ensure registration of modules is awaited when hydrating
* Add support for scaffolding package extensions
* Add support for building bundle extensions
* Add JsonValue type
* Use json for complex command line flags
* Load internal extensions if custom ones are not available
* Fix extension manifest validation for pack extensions
* Fix tests in shared
* Add SplitEntrypoint type
* Move command specific utils to helpers
* Add SDK version getter
* Move extension dev deps generation to helpers
* Move template path to getter util
* Move template copying to a helper
* Only rename copied template files
* Add directus-extension add command
* Convert provided extension source path to url
* Replace deprecated import.meta.globEager
* Mock URL.createObjectURL to make App unit tests pass
* Update rollup-plugin-typescript2
* indentation
* sort vite glob imported modules
* fix unintentional wrong commit
* Simplify app extension import logic
* reinstall @rollup/plugin-virtual
* add test for getInterfaces() expected sort order
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
* allow admin to update `provider` & `external_id`
* remove unused external_id field
* test for provider and external_identifier
* remove unused test code
* Prevent changing to or from alias type
* Prevent infinite delete loop
* Display error when saving
* More validation for M2M and M2A
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
* Add collections batch update endpoint
* Use collections batch update when sorting in data model
* Add autoPurgeSystemCache option
* Change type to false for consistency
* Refactor to InvalidPayloadException
* Add collection batch update test
* Bump default max payload size to 1mb
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* use `localType` to disable related collection in m2m
this is because `localType` dictates the relationship type (eg. m2m, files), but `type` was only field type (eg. alias, string)
* reset files junction when re-enabling auto fill
* prevent m2m clearing related collection
When re-enabled auto-fill, the updates only contain the autofill, not the m2o related collection value, so it was unintentionally resetting the value even when we are only toggling autofill
* fix autofill for translations
* fix m2a junction autofill toggles
* use getCurrent instead of state
* basic test for fieldDetailStore
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* treat empty array as null on relational field
* Run prettier
* add unit test
* Fix linter warnings
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* move components without dependencies to packages
* make every components use vue script setup
* move components and utils from shared to @directus/components
* fix imports
* move over some more components
* get rid of unnecessary isEmpty and notEmpty
* move pagination
* fix missing !
* move groupable components
* move text-overflow and useElementSize
* fix icons not being shown
* add first unit tests
* remove capitalizeFirst
* simple cleanup
* add css-var unit test
* move over most other components
* make every component use script setup
* add some more unit tests
* add more tests and burn v-switch to the ground. 🔥
* add checkbox tests
* start with next test
* add storybook
* add more pages to storybook
* add final stories
* fix stories actions
* improve action fix
* cleaning props and adding tests
* unit tests -.-
* add some documentation to components
* Add docs to each prop
* clean storybook paths
* add more unit tests
* apply v-select fix
* update lock file
* small tweaks
* move back to shared
* fix imports
* fix imports
* cleaning
* stories to typescript
* Fix version number
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Prevent duplicate rootPath for image in file-preview
* Add rootPath to file and file-image for downloading
* Revert change to v-image
* Patch rootPaths accordingly
* Fix missing file name on download