* broken migration
* fixed migration
* created new endpoints for translation strings
* updated to use core endpoint
* bad attempts at making the endpoints sensible
* merge changes
* implemented translation strings service
* re-integrating app logic part 1
* re-integrating app logic part 2
* fixed bad lodash import
* re-integrating app logic part 3
* removed obsolete tests
* make the linter happy
* Create tender-trees-buy.md
* added option to search-input
* implementing search
* fixed resizing and sidebar
* Fix linting
* Remove unused translations update into project settings
* Fix missing translations
* Require read permissions for app access
* Fetch translation strings only when authenticated
* Fix project default language not used when user has default language
* Remove commented line
* Rename variable as content has been changed
* Make the current user check more specific
* Remove translation_string from Settings type
* Remove settings reference in docs
* Update changeset
* Rename migration file to ensure date order
* Rename collection, route, service, controller
* Rename migration
* Adjust collection in settings route
* Fix translations service
* Use new `shouldClearCache` util
* Drop translation_strings column in migration
Co-authored-by: ian <licitdev@gmail.com>
* Added basic api docs
* updated dictionary
* updated dictionary
* Update app/src/interfaces/_system/system-input-translated-string/input-translated-string.vue
Co-authored-by: Nicola Krumschmidt <nicola.krumschmidt@freenet.de>
* Update app/src/modules/settings/routes/translation-strings/collection.vue
Co-authored-by: Nicola Krumschmidt <nicola.krumschmidt@freenet.de>
* extracted getCurrentLanguage utility
* Use regular collections/items
* Use regular controller
* Fix item view
* Set correct system field config for translations
* Tweaks
* Use UUID
* Finish placeholders
* Use drawer-item
* Add create to the store
* Remove composables
* Add new placeholder
* Fix saving behavior
* Remove previous take
* Rename migration after merge of live preview
* Generate uuid when migrating
* Remove unused showFilter
* Fix linting
* Fix type warnings
* Not needed as settings no longer contain translation_strings
* Remove leftover blank line
* Update getCurrentLanguage with server default and use in hydrate
* Shift getCurrentLanguage to lang folder to be alongside setLanguage
* add elipsis to placeholder
* Remove slug from key, so you can use dots etc in the key
* updated translation value to be type text again
* Rehydrate fields for updated translation values
* Add tooltip
* updated documentation
* enforce key/language uniqueness in the TranslationService
* updated error message
* updated docs menu item to "custom translations"
* Dynamically fetch translation keys for input-translated-string interface
* use get current language in refresh
* Update docs/reference/system/translations.md
* Update docs/reference/system/translations.md
* Update .changeset/tender-trees-buy.md
* Fetch translation keys when new key is created
* Update api/src/services/translations.ts
* Remove translation_strings remnant
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* mark key, language and value as required
* correctly mark fields as required
* Catch duplicate key error when creating from input
* Translate translations :-)
* Update tender-trees-buy.md
---------
Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Nicola Krumschmidt <nicola.krumschmidt@freenet.de>
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Add split view to the private view
* add more functionality to split view
* change text
* add simple size settings
* finish basic live preview feature
* add reload functionality
* update pnpm-lock
* update to newer design
* remove console.log
* Fix height of main content
* update design
* finishing fixes
* run linter
* finishing cleanup
* rebuild lock file
* lint fix
* hide preview for collections without preview urls
* fix refresh and eslint error
* use v-text-overflow for preview url
* use bottom placement for consistency
because other buttons such as Open in New Window and Refresh shows their tooltip at the bottom.
* tiny code tweak with early return
* remove fun parts and change divider color
* fix preview for singletons
* slightly improve the refresh button feedback
* hide zoom in fullscreen/desktop view
it is disabled in fullcreen, but some users may think they can click it, so I've opted to hide it instead. Especially since switching from mobile to desktop mode always resets it to 100%.
* tiny early return tweak
* opt to fix v-select disabled state cursor
* reverse zoom scaling order
* prevent preview going out of bounds when zoomed
* fix dragging when pointer enters iframe
* reinstate previous code tweak
* regenerate lock file
* use lockfile from main
* Dear linter...
* chore: add live preview to sidebar
* docs: add frontmatter
* docs: add intro
* docs: before you start
* docs: live preview in directus
* docs: draft mode in nextjs
* docs: fetch with draft mode
* docs: preview content in directus
* docs: next steps
* docs: update
* docs: updates
* docs: add live preview to collections
* docs: add live preview to item
* docs: updates
* docs: update
* chore: updates to the nextjs guide
* chore: updates to collections
* chore: updates to items
* Nuxt 3 guide
* Small Next guide fixes
* Added tips
* Spellcheck fixes
* Rework resizement
* Move debounce to private-view
* Update Nuxt 3 guides - styling and sentence clarity.
* add refreshLivePreview custom property to window
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
* remove remaining "window as any" typecasts
* Show 'grab-bar' only if wrapper is in viewport
* toggle preview instead of split in mobile view
* tweak to unwrap nested IF conditions
* do not change preview button icon when enabled
* hide grab-bar in mobile
* check main content width instead of window width
* Fix save-and-stay not updating preview url
* Update refresh button function call
* Add frame loader to prevent flashing
* Prevent scrollbar flashing when toggling splitview
* lift specific logic from v-resizable to private-view
This piece of logic was meant only for the content area and shouldn't affect every v-resizable usages
* use v-show instead of v-if to hide main content
v-resizable has an internalWidth that should not be reset when user resize the left navigation bar, as well as the form shouldn't be re-rendered
* check target to hide the grab-bar in toggle mode
as we're only hiding the target rather than disabling the wrapper, we had to check whether the target is visible as well to determine whether to show the grab-bar
* Fix zoom behaviour & remove leftovers
* remove wrapperIsVisible check
in favor of only relying on targetIsVisible check
* Revert "Add frame loader to prevent flashing"
This reverts commit e4c2d3d4bd.
* Final tweaks
- Enhance frame zoom
- Min width for frame
- Hide main content based on overall size
(ensure it works for all browser sizes)
- Various enhancements & fixes
* Update migration date
* Create rare-bananas-melt.md
* Better naming for remaining width var
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
---------
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Esther Agbaje <folasadeagbaje@gmail.com>
Co-authored-by: Kevin Lewis <kvn@lws.io>
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
Co-authored-by: ian <licitdev@gmail.com>
* Step 1
* Step 2
* False sense of confidence
* Couple more before dinner
* Update schema package
* Update format-title
* Upgrade specs file
* Close
* Replace ts-node-dev with tsx, and various others
* Replace lodash with lodash-es
* Add lodash-es types
* Update knex import
* More fun is had
* FSE
* Consolidate repos
* Various tweaks and fixes
* Fix specs
* Remove dependency on knex-schema-inspector
* Fix wrong imports of inspector
* Move shared exceptions to new package
* Move constants to separate module
* Move types to new types package
* Use directus/types
* I believe this is no longer needed
* [WIP] Start moving utils to esm
* ESMify Shared
* Move shared utils to @directus/utils
* Use @directus/utils instead of @directus/shared/utils
* It runs!
* Use correct schemaoverview type
* Fix imports
* Fix the thing
* Start on new update-checker lib
* Use new update-check package
* Swap out directus/shared in app
* Pushing through the last bits now
* Dangerously make extensions SDK ESM
* Use @directus/types in tests
* Copy util function to test
* Fix linter config
* Add missing import
* Hot takes
* Fix build
* Curse these default exports
* No tests in constants
* Add tests
* Remove tests from types
* Add tests for exceptions
* Fix test
* Fix app tests
* Fix import in test
* Fix various tests
* Fix specs export
* Some more tests
* Remove broken integration tests
These were broken beyond repair.. They were also written before we really knew what we we're doing with tests, so I think it's better to say goodbye and start over with these
* Regenerate lockfile
* Fix imports from merge
* I create my own problems
* Make sharp play nice
* Add vitest config
* Install missing blackbox dep
* Consts shouldn't be in types
tsk tsk tsk tsk
* Fix type/const usage in extensions-sdk
* cursed.default
* Reduce circular deps
* Fix circular dep in items service
* vvv
* Trigger testing for all vendors
* Add workaround for rollup
* Prepend the file protocol for the ESM loader to be compatible with Windows
"WARN: Only URLs with a scheme in: file and data are supported by the default ESM loader. On Windows, absolute paths must be valid file:// URLs. Received protocol 'c:'"
* Fix postgres
* Schema package updates
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
* Resolve cjs/mjs extensions
* Clean-up eslint config
* fixed extension concatination
* using string interpolation for consistency
* Revert MySQL optimisation
* Revert testing for all vendors
* Replace tsx with esbuild-kit/esm-loader
Is a bit faster and we can rely on the built-in `watch` and `inspect`
functionalities of Node.js
Note: The possibility to watch other files (.env in our case) might be
added in the future, see https://github.com/nodejs/node/issues/45467
* Use exact version for esbuild-kit/esm-loader
* Fix import
---------
Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Brainslug <tim@brainslug.nl>
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Use node16 module-resolution
* Lets not mess with apply-query rn
* I love CJS. Death to CJS.
* Use CJS require in hook import
* Fix type export in schema
* Clean up defaults usage
* Use require instead of import for migrations
* Use a vitest compatible dynamic import
* Uno mas
* Cleanup type export
* build: ➕ add vitest and update test scripts
* build: 🔧 add vitest config
* build: ✅ Migrate tests to vitest
Remove jest references from test api test files and replace with vitest equivalents.
Tests: 13 tests are failing.
* build: 🚚 move vite.config.ts to api/src folder
* build: 🔥 remove unused vitest.config from api root
* build: ✅ import vitest modules for tests
* build: ✅ add type conversion for actual object
* Finish switch from Jest to Vitest in API
* Replace some leftovers
* Load "sharp" before tests
* Try with cjs
* Temporary enable verbose reporter
* Try with globalSetup
* Fix path to globalSetup
* Provide default export in globalSetup
* Final clean-up
* Remove @vitest/ui & update vitest to 0.25.0
* Add vitest c8 coverage dependency
* Update vitest to v0.25.1
* Replace unnecessary Vitest workaround
* Rework new tests
* Resolve build errors
Co-authored-by: Dorian C Brown <brown.3794@gmail.com>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Change notifications timestamp to nullable
* check special flags that generate data
* create and use new updateType helper
* update migration identifier
* use changeToType() where applicable
* fix method name used in new migration
* bump identifier again
* Remove changeToString
* update migrations
* add conditional text/string type for compatibility
* bump migration identifier
* bump
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: ian <licitdev@gmail.com>
* Use pnpm instead of npm
* Setup workspace
* Replace scripts / lerna root stuff
* Add todo file
* Update lock, start updating packages
* Update todo
* [WIP] Keep going on module resolution in pnpm
* Fix final missing deps/types for complete build
* [WIP] Replace npm commands with pnpm alternatives
* Update jest config for v28
* Fix missing package under schema
* Update workflow
* Run CI on fork
* Use local reference
* Remove version from local workflow
* Add build to prepare
* Add Node's max old space size flag to linter
* Idemdito for codeql
* Hyphens? Underscores?
* Bang
* Only build one thing at a time
* Underscores after all?
* Match 7gb of GH
* Set env on prepare
* Jest is driving me nuts
* Downgrade jest
* Add root jest
* We'll get there, eventually.
* 🥳
* Het houdt niet op, niet vanzelf
* attempt to fix e2e
* fix unit test & shared import
* add `debug: true` to CodeQL action
* Fix dev call in shared
* Add missing cross-env
* Add missing geo-json dependency for app
* add flag to prepare action to skip build
* remove debug flag from codeql action
* fix invalid env syntax
* add tslib to app dependencies for tests
* another attempt
* Added missing rimraf dependency for the api prebuild/cleanup scripts
* Added missing ts-node dependency for the api cli script
* update E2E tests readme to use pnpm
* Undo move of extensions sdk
* Fixes nested groups in accordions not rendering fields (#14369)
* initial fix for nested groups in accordions
* removed debug code
* Fix strict relative dates showing "incorrect" (#14390)
* Set rounding method of relative formatted date to floor when strict option is selected
* Add round fn as an option
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Don't use locales in generated camelCased values from env (#14401)
Ref https://github.com/directus/directus/discussions/14122
* Fix list panel descending sort (#14396)
* fix list panel descending sort
* Handle missing or explicit desc value
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Fix query primary field for system tables (#14402)
* New Crowdin updates (#14403)
* Update source file en-US.yaml
* New translations en-US.yaml (Spanish, Chile)
* New translations en-US.yaml (Spanish, Latin America)
* New translations en-US.yaml (Greek)
* New translations en-US.yaml (Italian)
* New translations en-US.yaml (French, Canada)
* Fix/wysiwyg context menu (#14404)
* New translations en-US.yaml (Polish) (#14407)
* Encoded the url using encodeURIComponent, so that the url gets sanitzed and so, we did not get 404 error. (#14418)
* Encoded the url using encodeURIComponent, so that the url gets sanitized and we did not get 404 error.
* Added required changes as stated by the reviewer
* Used encodeURI instead of encodeURIComponent to encode the params only
* Solved linting error
* Solved linting errors
* checked with npm run lint, no linting errors found
* fix generateJoi error due to empty permissions when creating new role (#14416)
* fix empty permissions when creating new role
* basic test
* move logic up
* additional test
* Update api/tests/utils/filter-items.test.ts
Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: ian <licitdev@gmail.com>
* Recreate lockfile
* Fix build of extensions-sdk
* Add missing dependency
* Add some more missing deps
* Update blackbox to use pnpm
* Update workflow to use main
* Update pack to work with pnpm
* Simplify commands
* Remove todo file (completed)
* ADd missing types dep
* Use local test version
* Remove version from local reference
* Call super with context
* Add missing dep
* Simplify workflows
Ref https://github.com/directus/organization/issues/135
* Simplify some more
* Linter is on root
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
Co-authored-by: brainslug <tim@brainslug.nl>
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
Co-authored-by: Gerard Lamusse <gerardlamo@gmail.com>
Co-authored-by: José Varela <joselcvarela@gmail.com>
Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Zeel Pathak <60271095+zeel-pathak@users.noreply.github.com>
* query function added to list
* dashboard reading query, adding to object
* typecasting of filter vals needed still
* numbers accepting strings too
* json-to-graphql-query => devD
* fixed unneeded return in list index.ts
* stitching and calling but not actually calling
* calls on panel change
* query object += new panel before dashboard save
* uuid generated in app not api
* fixed panel ids in query
* fixed the tests I just wrote
* passing the query data down!
* list showing data
* objDiff test moved to test
* metric bug fixes + data
* dashboard logic
* time series conversion started
* timeseries GQL query almost there
* query querying
* chart loading
* aggregate handling improved
* error handling for aggregate+filter errors
* removed query on empty queryObj
* maybe more error handling
* more error handling working
* improvements to erorr handling
* stitchGQL() error return type corrected
* added string fields to COUNT
* pushing up but needs work
* not an endless recursion
* its not pretty but it works.
* throws an error
* system collections supported
* refactor to solve some errors
* loading correct
* metric function fixed
* data loading but not blocking rendering
* removed redundant code.
* relational fields
* deep nesting relations
* options.precision has a default
* relational fields fix. (thanks azri)
* the limit
* limit and time series
* range has a default
* datat to workspace
* v-if
* panels loading
* workspaces dont get data anymore
* package.json
* requested changes
* loading
* get groups util
* timeseries => script setup
* list => script setup
* metric => script setup
* label => script setup
* declare optional props
* loadingPanels: only loading spinner on loading panels
* remove unneeded parseDate!!
* applyDataToPanels tests
* -.only
* remove unneeded steps
* processQuery tests
* tests
* removed unused var
* jest.config and some queryCaller tests
* one more test
* query tests
* typo
* clean up
* fix some but not all bugs
* bugs from merge fixed
* Start cleaning up 🧹
* Refactor custom input type
* Small tweaks in list index
* Cleanup imports
* Require Query object to be returned from query prop
* Tweak return statement
* Fix imports
* Cleanup metric watch effect
* Tweaks tweaks tweaks
* Don't rely on options, simplify fetch logic
* Add paths to validation errors
* [WIP] Start handling things in the store
* Rework query fetching logic into store
* Clean up data passing
* Use composition setup for insights store
* Remove outdated
* Fix missing return
* Allow batch updating in REST API
Allows sending an array of partial items to the endpoints, updating all to their own values
* Add batch update to graphql
* Start integrating edits
* Readd clear
* Add deletion
* Add duplication
* Finish create flow
* Resolve cache refresh on panel config
* Prevent warnings about component name
* Improve loading state
* Finalize dashboard overhaul
* Add auto-refresh sidebar detail
* Add efficient panel reloading
* Set/remove errors on succeeded requests
* Move options rendering to shared
* Fix wrong imports, render options in app
* Selectively reload panels with changed variables
* Ensure newly added panels don't lose data
* Only refresh panel if data query changed
* Never use empty filter object in metric query
* Add default value support to variable panel
* Centralize no-data state
* Only reload data on var change when query is altered
* Fix build
* Fix time series order
* Remove unused utils
* Remove no-longer-used logic
* Mark batch update result as non-nullable in GraphQL schema
* Interim flows fix
* Skip parsing undefined keys
* Refresh insights dashboard when discarding changes
* Don't submit primary key when updating batch
* Handle null prop field better
* Tweak panel padding
Co-authored-by: jaycammarano <jay.cammarano@gmail.com>
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
Co-authored-by: ian <licitdev@gmail.com>
* Replace attachment with correct icon
* Use standardized options formatting
* Improve preview styling, fix names
* Format IDs of DB read operation as csv
* Remove flow active state from header
* Don't return null for unknown flows
* Fix webhook trigger not showing id
* Fix alignment of attachment
* Make heading secondary if it's the reject handler
* Use flow name in subtitle of operation drawer
* Rename "Create new Operation" -> "Create Operation"
* Make name/key required
* Give name autofocus
* Add "uncaught exception" log message
* Various improvements on operations
* default status to "active"
* Add status dropdown at the bottom of trigger
* put status dot to the right of flow name header
* add toggle status option in context menu
* fix trigger options staging
* fix flow deletion
* show configured operation key on name hover
* prevent block pushing status toggle down
* ensure key is unique between operations in a flow
* allow add new panel when previous one is deleted
* fix staged panels temporarily disappear
The deletion of newTree.id causes it to "disconnect" when saving, thus causing it seemingly disappear. Using a cloneDeep prevents it from mutating the current stagedPanels
* hide key input when in query mode
* add write operation
* undo previous route props change
* include staged panel keys in key validation
* fix key validation logic
* add color to flow & insights
* ensure trigger does not have reject button
* prevent operation key error showing up when saving
* change context menu to Delete Operation
* fix add operation when removed operation is staged
* Hide ID in read preview when in query mode
* fix reject button showing without edit mode
* fix status toggle in flow overview
* simplify request operation methods & allow other
* fix preview function type
* simplify slot syntax
* add manual trigger
* simplify manual trigger handler
* prevent drawer closing on esc
* allow filter config without selecting collection
* improve affordance of add operation button
* fix loner reject button color
* Added emitEvents option to write operation (#13121)
* added emitEvent option toggle to write operation
* Re-gen package-lock
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Clean up active/inactive toggle
* Align arrow to grid
* Visually align border radius of glow
* Tweak padding of footer in panels
* Remove init event
* Combine event triggers into single "Hook" trigger
* Fix mail operation
* Cleanup imports, return undefined for webhook executino flows
* Add border to panel footer
* Upgrade preview of hook trigger
* Don't warn on uncaught flow executions
* Clean up types
* Fix typing of reload
* Default to correct icon
* Add migrations to remove webhooks table
* Remove webhooks
* Update icons for triggers
* Reorganize triggers
* Merge flows and webhooks migrations
* Add permissions option to database read operatoin
* Add permissions configuration to database write
* Remove flow logs in favor of using directus_activity
* Upgrade webhook configuration, fix create operatoin
* Rename validation->condition
* Subdue everything when inactive
* Tweak tests
* Fix the test for real
* Remove circular FK trigger, please MSSQL
* Make things worse to please MSFT
* Add input
* Drop input scope from condition operation
* naming and description changes
* Default flow overview icon color to primary
* add danger styling to delete flow button
* fix hint buttons subdued style
* Hide trigger unlinked resolve btn when not editing
Don't show "check mark icon" or "operation arrow" on empty trigger when NOT in edit mode
* show email "to" value as CSV
* remove unused webhook.preview translation
* Default sort order of overview table to `name`
* Track activity / revisions in flows
* Extract w/ the intent to reuse revisions fetching
* Move Action type to shared to facilitate app use
* [WIP] Start rendering logs drawer from sidebar
* Fix type error (sorry Eron)
* add update operation
* add delete operation
* use parseJSON util in operations
* Add missing fields to flows system data
* Await promise in sleep operation
* fix e2e test missing flows & operations tables
* Add fallback title to flow logs drawer
* Add default value to flow prop for flow-dialog
* Hydrate flows store before moving to details page when creating flow
* Rename CRUD operations to item-*
* Change trigger options subtitle to Trigger Options
* Remove trigger name option
* Fix typescript complaining
* Remove two lines
* Fix notification operation
* Log error when executing a schedule flow
* Fix schedule flow activity tracking
* Fix notification operation when there is no user
* Make permissions for notifications configurable
* Do not drop non null constraint from column that is nullable
* Remove invalid option from activity seed
* Show resolve/reject dot when operation has successor
* Improve flow arrow placement
* Prevent arrow color from flickering
* Fix arrow being stuck when hovered while saving
* Fix arrows not being subdued on lone leaf operations
* Add tooltips to operation handles
* Remove option to trigger flow on init
* Move operation handle tooltip to icon
* Disconnect duplicated operation
* Fix deleting connected operations
* Make delete action name generic in v-workspace-panel
* Use flow-specific wording in flow edit tooltip
* Simplify hint handle check
* Fix deleting first operation
* Use useEditsGuard composable in flow component
* Add asynchronous option to webhook trigger
* Add option to make preview elements copyable
* Add hover transition to panels
* Register operation preview components as operation-preview-*
* Remove selectability of panel header and operation body
* Add return option to filter and operation triggers
* Add missing key
* Remove unnecessary ampersand from URLs in filter tests (#13523)
* Remove unused prop
* New translations en-US.yaml (Polish) (#13524)
* My favorite
* v9.11.1
* v9.11.1
* New translations en-US.yaml (Polish) (#13528)
* New translations en-US.yaml (Czech) (#13541)
* New translations en-US.yaml (Czech) (#13545)
* fix metadata for directus_folders (#13527)
* add `meta` to list responses for OAS (#13531)
* remove existing pasting check on slug values (#13532)
* Add copy button to user id on user info page (#13540)
* New translations en-US.yaml (Czech) (#13547)
* New translations en-US.yaml (Czech) (#13548)
* Added missing "DB_SSL_*_FILE" to the "_FILE" allow list. (#13539)
* Remove workaround in release flow (#13455)
This forces the release workflow to use `node@16.15` which includes `npm@8.5`.
* Remove npmrc files which prevent lockfile creation in workspaces (#13444)
* Remove npmrc files which prevent lockfile creation in workspaces
Since `v8.5.0` npm will detect that it is running inside a workspace and issue commands at the root package.
* Require a minimum npm version of 8.5.0
* Package-lock 🖤
* Don't consider SIGN_OUT an SSO error (#13389)
* Don't consider SIGN_OUT an SSO error
* Add SESSION_EXPIRED as valid reason
* Improve translation for require_value_to_be_set (#13363)
English + Dutch
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Fix field conditions optionDefaults computed property (#13563)
* fix: remove .value from options
* additional ref fix & type/null errors
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
* `last_page` type was `date` instead of `str` (#13577)
* `last_page` type was `date` instead of `str`
* Update docs/reference/system/users.md
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* New Crowdin updates (#13557)
* New translations en-US.yaml (Romanian)
* New translations en-US.yaml (Indonesian)
* New translations en-US.yaml (Spanish, Chile)
* New translations en-US.yaml (Thai)
* New translations en-US.yaml (Spanish, Latin America)
* New translations en-US.yaml (Russian)
* New translations en-US.yaml (Polish)
* New translations en-US.yaml (Swedish)
* New translations en-US.yaml (Turkish)
* New translations en-US.yaml (Portuguese, Brazilian)
* New translations en-US.yaml (French)
* New translations en-US.yaml (Spanish)
* New translations en-US.yaml (Bulgarian)
* New translations en-US.yaml (Catalan)
* New translations en-US.yaml (Danish)
* New translations en-US.yaml (German)
* New translations en-US.yaml (Finnish)
* New translations en-US.yaml (Hungarian)
* New translations en-US.yaml (Chinese Simplified)
* New translations en-US.yaml (Italian)
* New translations en-US.yaml (Slovenian)
* New translations en-US.yaml (Ukrainian)
* New translations en-US.yaml (English, United Kingdom)
* New translations en-US.yaml (English, Canada)
* New translations en-US.yaml (French, Canada)
* New translations en-US.yaml (Croatian)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Czech)
* Fix validate query number comparison
Ref https://github.com/directus/directus/pull/13492#issuecomment-1138770254
* New translations en-US.yaml (Polish) (#13580)
* add to project (#13581)
* Allow authentication using MSSQL azure-active-directory-service-principal-secret (#11141)
* Extract ignored settings requires by azure authentication
* Change the way to extract initial database settings
* Fix invalid names after extracting from env util
* Replace missing var after solving conflicts
* Add default value to poolconfig
* This should unbreak it
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Create pull_request_template.md
* Update pull_request_template.md
* Add System token interface (#13549)
* Add system token interface
* use system token interface in users token field
* Update placeholder
* move notice below input
* fix clear value interaction
* update placeholder and notice text
* remove unused translation key
* rename class to match current naming
* fix bugs in disabled state and it's UX
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: jaycammarano <jay.cammarano@gmail.com>
* New Crowdin updates (#13586)
* New translations en-US.yaml (Romanian)
* New translations en-US.yaml (Indonesian)
* New translations en-US.yaml (Spanish, Chile)
* New translations en-US.yaml (Thai)
* New translations en-US.yaml (Serbian (Latin))
* New translations en-US.yaml (Spanish, Latin America)
* New translations en-US.yaml (Russian)
* New translations en-US.yaml (Polish)
* New translations en-US.yaml (Portuguese)
* New translations en-US.yaml (Swedish)
* New translations en-US.yaml (Turkish)
* New translations en-US.yaml (Estonian)
* New translations en-US.yaml (Portuguese, Brazilian)
* New translations en-US.yaml (French)
* New translations en-US.yaml (Spanish)
* New translations en-US.yaml (Bulgarian)
* New translations en-US.yaml (Catalan)
* New translations en-US.yaml (Czech)
* New translations en-US.yaml (Danish)
* New translations en-US.yaml (German)
* New translations en-US.yaml (Finnish)
* New translations en-US.yaml (Hungarian)
* New translations en-US.yaml (Chinese Simplified)
* New translations en-US.yaml (Italian)
* New translations en-US.yaml (Japanese)
* New translations en-US.yaml (Dutch)
* New translations en-US.yaml (Slovenian)
* New translations en-US.yaml (Ukrainian)
* New translations en-US.yaml (English, United Kingdom)
* New translations en-US.yaml (English, Canada)
* New translations en-US.yaml (French, Canada)
* New translations en-US.yaml (Croatian)
* Add project_url to defaultTemplateData (#12033)
Might be useful in template footers.
* Update items.md
* Rename panel to tile
* Rename preview->overview
* Style flow log detail
* Log all parsed options
* Show used options in revision
* Finish log detail drawer
* new create flow flow
* fix firstOpen for new create flow flow
* update field layout for create flow form
* Fix TS typing
* Fix missing import
* Append random hash to key when duplicating operations
* Revert "Remove webhooks"
This reverts commit 044d3d8b66.
* Don't delete webhooks
* Make option preview selectable
* Prevent invalid linking when duplicating operations after creating operations
* Prevent sending of malformed query filter when deleting flow
* implement new manual trigger
* simplify payload for manual trigger
* use buttons instead of dropdown + run button
* add async option & loading state
* add collection check to manual trigger
* emit refresh after running flow in sidebar
* Add cross-instance messenger for reloading
* Use flow drawer for both create and edit
* Add manual trigger flow permissions to app recommended
Ensures that non-admin users can actually see the flows sidebar detail
* Add basic logs redaction
* Remove endpoint to trigger an operation
* Allow configuring location for manual trigger
* Rename "hook" trigger to "event"
* Tweak icon size
* Fix create flow button in info notice
* Make activity tracking full width
* Tweak descriptions
* Too long for comfort
* Remove mode option from item-* operations
* fix manual trigger empty collections option
* Add no-logs-yet message in sidebar detail
* Reset trigger options on change of trigger
* Rename `data`->`payload`
* Remove mode from preview of item-* operations
* Return operation options with "{{key}}" as raw value
* Show flow name in delete confirmation
* Add default generated name/key to new operations
* shorten arrows WIP
still needs icons moved
* rename note to description
* fix hint button icons
* update event hook type labels
* Animate resolve/reject arrow hints
* reorder event types
* Use x+4 instead of x+6 for new operation panels
* compress options to fit 6 lines in operation
* update hook labels
* animate trigger box shadow
sorry, rijk!
* update (global) disabled button color 1 shade
* Format times nicer
* Add placeholder for query
* add a note
* Fix formatting for curly brackets in translations
* Add item Create/update payload placeholder
* Add placeholder to user uuid
* Accept either null or undefined for nullable operation options
* Allow any string as request body
* Add more placeholders
* Consolidate filterScope and actionScope, filterCollections and actionCollections
* Rename flow note to description in types
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
Co-authored-by: Ben Haynes <ben@rngr.org>
Co-authored-by: Nicola Krumschmidt <nicola.krumschmidt@freenet.de>
Co-authored-by: Aiden Foxx <aiden.foxx.mail@gmail.com>
Co-authored-by: Jan-Willem <jan-willem@qdentity.nl>
Co-authored-by: Yasser Lahbibi <yasser.lahbibi@apenhet.com>
Co-authored-by: Louis <32719150+louisgavalda@users.noreply.github.com>
Co-authored-by: Jay Cammarano <67079013+jaycammarano@users.noreply.github.com>
Co-authored-by: Erick Torres <ericktorresh@gmail.com>
Co-authored-by: jaycammarano <jay.cammarano@gmail.com>
Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
Co-authored-by: ian <licitdev@gmail.com>
* Added default locale before login
* Use project_language as default language for new users
* Revert "Use project_language as default language for new users"
* Allow user's language field to be nullable; Use project_language whenever language is unset;
* Apply suggestions from code review
Co-authored-by: Nicola Krumschmidt <nicola.krumschmidt@freenet.de>
* Make "Project Default" option in system-language interface configurable
* Set language only if user language is not null
* Introduced translation for project_language field; Use translation in system-language interface
* Set app language only from app.vue;
Included watcher to restore project_language if user's language is (re)set to null
* Removed .alter() in knex migration since it's not needed for changing default and breaks checks
* Reverted previous change in migration; .alter() is needed for changing column defaults
* Reverted migration to use .defaultTo(null) to set default value
* Update position of project language field in settings
* Fix cockroachdb test error in knex migration
* Fix cockroachdb test error in knex migration
* Apply migration fix also on oracle databases
* Apply changes from code review
* Rename migration to fix migration key error
* Move setLanguage calls to server.ts and hydrate.ts
Co-authored-by: Nicola Krumschmidt <nicola.krumschmidt@freenet.de>
Co-authored-by: jaycammarano <jay.cammarano@gmail.com>
Co-authored-by: Christian Rendl <cr@mutor.at>
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* add icon & color to bookmarks
* update current bookmark title on edit
* clean up edit bookmark dialog on cancel
* remove unused bookmark-edit component
* interaction improvements
* sort based on scope and alphabetically
* prevent hover when locked & use tooltip
* Reduce size of right hand icon in bookmark
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Add field validation column
* Add frontend config for validation
* Make it work
* Add regex to filter configuration
* Fix const/let
* Add custom validation message support
* Add custom validation message tooltip inline
* Fix custom names in validation errors up top
* Fix type error
* Nog eentje om het af te leren
* resolve unused import warnings
* Fix incorrect saving of field special in migration
* Add hotfix
* Run typecasting again just in case...
* Rename migration
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* add migration for translation strings
* add to navigation
* WIP
* fix dialog overflow
* update translation keys
* Update logic
* add placeholder to system-language
* fix translation
* remove unused import
* reset dialog on create new
* ensure search input is visible when searching
* merge translation strings on set language
* merge translation strings on update
* hydrate
* make sure null translation do not get merged
* change dialog to drawer
* update placeholder text
* fix form value
* revert dialog style change
* rename drawer component
* Force safe key name
* Move interface to system interfaces
The saved values are Directus app proprietary, so to prevent confusion in what it's supposed to do, we'll move it to system.
* Move composable to root composables
* Use new languages input in interface/display options
* hide translation strings field in project settings
* set system true to system-input-translated-string
* use this in field detail notes
* use in list options
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Prefix typecasting field flags
* Fix payload test
* Update flags for system tables and for field creation in app
* Revert cast-hash and cast-uuid
* Rename migrations file to current date
* Add migration to remove default value from project_color
* Upgrade the default theme
* Do a pass over the header buttons
* Do another pass over --warning uses
* Little things
* Tweak smoke
* Use updated map
* Use dark system elements in dark mode
* Remove outdated files, update toasts
* Use correct delete button style for role
* Use primary for created point
* Tweak spacing in revisions section
* Use primary for sidebar sections
* Various color tweaks and changes
* Update base color palette
* Update "css reset" code
* Remove splashscreens, add default favicon
* Add primary highlight to datamodel page
* dark mode color update
* fix sign out hover color
* Does this help?!
* This fixes some loading issues
Fixes https://github.com/directus/directus/issues/10707
* Calculate default pretty background?
* Fix public view with logo
* Fix responsiveness of login page
* adjust notification group width to be equal
* Do an absolute pointless task that doesn't do anything
It was suggested that it could fix the stylelint error in tests, but alas
* Remove stylelint
Doesn't seem to play nice with script setup and other changes
Co-authored-by: Ben Haynes <ben@rngr.org>
* base changes for cockroachdb
* allow creating of tables
* allow deleting of fields
* allow deleting of tables
* rebase
* fix migrations
* bump knex-schema-inspector to 1.7.0
* Update package-lock
* Add cockroach to debugging docker-compose file
* Remove unused import
* Tweak name in example.env
* Force nullable primary keys in cockroach
* Tweak shares migration to run on cockroach
* Rename var for clarification
* suggestion for migration helper
* change to schema and update remaining migrations
* Remove custom cockroach schema in favor of sharing with pg
* Fix migrations for CockroachDB
* Hopefully fix Oracle migrations 🤞🏻
* Make ~~aiden~~ oracle happy
* Resolve branching paths in migrations
* Enable tests for cockroach
* Fix test config
* One more config change for good measure
* Adjust test to match cockroach's bigint auto-int structure
* Increase request timeout for mssql
* Update api/src/database/helpers/schema/types.ts
Co-authored-by: Aiden Foxx <aiden.foxx.mail@gmail.com>
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
Co-authored-by: Oreille <33065839+Oreilles@users.noreply.github.com>
Co-authored-by: Aiden Foxx <aiden.foxx.mail@gmail.com>
* Fix date resolution in share info endpoint
* Add note on leaving fields blank
* Tweak example to use proper db client
* Treat mysql 0000-00-00 00:00:00 as null
* Fix migration for mysql 5
* Add missing defaults to system fields
* Update geometric types and patch new field flow.
* Add migration
* Fixed migrations
* Also fixed migrations
* Update migration ID
* Cleanup type selector a bit
* Add missing fallback interface/display for new types
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>