mirror of
https://github.com/directus/directus.git
synced 2026-01-15 06:08:11 -05:00
v11.10.0
82 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
5fc2a8c0ff |
Add Prometheus support (#24233)
* initial metrics implementation * secure endpoint * move metric generation to cron * update directus env var list * remove additional space in output * prefer histogram over gauge * add defaults * add tests * metric generation should be done on a per instance basis * add docs * simplify docs * add changeset * add proper capitalization * do not attempt to access redis cache if redis is not available * Update api/src/schedules/metrics.test.ts Co-authored-by: ian <licitdev@gmail.com> * metric lock should not be synchronized * utilize prometheus client * update typing * check db metrics enabled before observe * refactor get/track metric calls * add cluster support * add pm2 aggregation support * rework pm2 aggregation * Update api/src/schedules/metrics.ts Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> * ensure errors are caught * add metrics bearer type to be inline with auth spec * utilize early returns in access check * at sensible default histogram bucket timeframe * Update docs/self-hosted/config-options.md Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> * Update docs/reference/system/metrics.md Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> * do not initialize metrics when it isnt enabled Co-Authored-By: Pascal Jufer <5363448+paescuj@users.noreply.github.com> * fix api build * return null for disabled metrics to be inline with other services * prefere single service metric list env Co-Authored-By: Pascal Jufer <5363448+paescuj@users.noreply.github.com> * Update api/src/metrics/lib/create-metrics.test.ts Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> * update METRIC_TOKENS description * update create metrics test wording * reorg metric types * Update create-metrics.ts * Enable all metrics services by default * Add full metrics output example * Move enabled check to useMetrics & save results * Adjust types in changeset * metrics is REST API only * update default cron to every minute * update documented metric default schedule * update metric schedule desc to be inline with default * clarify metrics are returned from generated values and not at runtime * add aggregation within pm2 context warning * fix spellcheck * Small grammar fixes for metrics aggregation notice * Add `directus` minor bump Co-authored-by: ian <licitdev@gmail.com> --------- Co-authored-by: ian <licitdev@gmail.com> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> Co-authored-by: Pascal Jufer <5363448+paescuj@users.noreply.github.com> |
||
|
|
54b9be28cb | Add required to fields meta docs (#24574) | ||
|
|
fb3b26d886 | Remove invalid operation trigger API from SDK and docs (#24461) | ||
|
|
e1425e61ca | Removed broken link to access (#24158) | ||
|
|
ce4bfe074a |
Add support for activity/revisions/logs retention (#24058)
* Add retention support for `directus_activity` and `directus_revisions` (#23410) * add retention support * add changeset * add docs * rework imports * skip processing for no records * improve retention tests * improve tests * add error handling * remove redundant while condition in retention * improve error message * increase retention to 90 days * add lock * Use the action constant * Skip the full table count * Add false to disable in docs * Reduce batch to 500 for db compat * Add timeout to lock * skip revisions if activities is more frequent * Update docs/self-hosted/config-options.md Co-authored-by: Kevin Lewis <kvn@lws.io> * Update docs/self-hosted/config-options.md Co-authored-by: Kevin Lewis <kvn@lws.io> * RETENTION_TASKS are no longer constant * fix formatting for retentions enabled config option * reword RETENTION_SCHEDULE config option * add explicit return types and update to async for consistency * fix schedules tests to be async * update jsdoc to correctly indicate schedule job * add correct default value for retention schedules --------- Co-authored-by: ian <licitdev@gmail.com> Co-authored-by: Kevin Lewis <kvn@lws.io> * Removed outdated logic for versioning (#23749) * Extract comments to a separate table (#22295) * Add directus_comments migration * Add comments controller and service * Remove from activity * Update system-data and types * Refactor app with new endpoints * Expose service * Update app minimal permissions * Add collection translation * Define relations * Allow comment creation only if there's item read access * Patch for MSSQL double constraints issue * Fix users service test * Add sdk support * Update specs * Fix formatting * Fix specs error * Patch whoopsie * Remove obsolete GraphQL mutations * Update required fields * Remove unused vars * Allow edit and delete of legacy activity comments * Remove legacy comments from SDK * Add changeset * Batch upwards migration * Update SDK to use keysOrQuery Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> * Update implementation for keysOrQuery * Remove singleton check * Update SDK to use keysOrQuery 2 Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> * Update keysOrQuery typedoc * Fix import * Update migration timestamp * fixed import * Update api/src/utils/get-service.ts * utilize chunk processing in migration * formatting * only services extended from itemservice should be added * remove redundant checks from comment header * update comment service to v11 permission format * specify missing required fields * Mock comments in users test * Simplify migration and update date * WIP legacy access * Optimise imports * WIP app cleanup * Update loadUserPreviews typing Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com> * Read legacy comments * Parse using comments service * Perform migration directly * Fix legacy app sort query which uses id * Migrate legacy comments in mutations * Reduce api semver * Update app recommended permissions * Recommend updating of comment only * replace hardcoded type with existing one * Allow users to update or delete their own comments Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com> * Skip further access validation for non-existent collections * Check if collection exists before the admin check Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com> * Fix incorrect legacy check Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com> * Fix merging of count when db returns count as string type * Remove unused import --------- Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> Co-authored-by: Brainslug <tim@brainslug.nl> Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com> Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com> * Consolidate content versioning (#22413) * Add migration * Use the new delta field * Add cast-json flag * Fix typing * Fetch existing deltas if version created during migration * Add changeset * Add version delta field into sdk schema * Update migration timestamp * Update versions.save() to return finalVersionDelta Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> * Sort on DB level * Update migration date * Disallow passing delta via create/update * Update docs & specs * Fix save response * Remove unnecessary access check Already checked by the subsequent itemsService.readOne call * Update changeset * Don't require update perms on versions for save * Optimize validateCreateData * update to new validateAccess * Update docs/reference/system/versions.md * Remove migration of delta * Rename to legacy * Add missed changes for Remove migration of delta in |
||
|
|
f25e61d6a4 |
Added missing fields for directus_fields to GraphQL schema and SDK (#23905)
Co-authored-by: ian <licitdev@gmail.com> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
75080fa20b |
Fix SDK relation type (#23877)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
189fcb24f7 |
Reduce dependencies on activity and revisions tables (#23612)
* Extract comments to a separate table (#22295)
* Add directus_comments migration
* Add comments controller and service
* Remove from activity
* Update system-data and types
* Refactor app with new endpoints
* Expose service
* Update app minimal permissions
* Add collection translation
* Define relations
* Allow comment creation only if there's item read access
* Patch for MSSQL double constraints issue
* Fix users service test
* Add sdk support
* Update specs
* Fix formatting
* Fix specs error
* Patch whoopsie
* Remove obsolete GraphQL mutations
* Update required fields
* Remove unused vars
* Allow edit and delete of legacy activity comments
* Remove legacy comments from SDK
* Add changeset
* Batch upwards migration
* Update SDK to use keysOrQuery
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
* Update implementation for keysOrQuery
* Remove singleton check
* Update SDK to use keysOrQuery 2
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
* Update keysOrQuery typedoc
* Fix import
* Update migration timestamp
* fixed import
* Update api/src/utils/get-service.ts
* utilize chunk processing in migration
* formatting
* only services extended from itemservice should be added
* remove redundant checks from comment header
* update comment service to v11 permission format
* specify missing required fields
* Mock comments in users test
* Simplify migration and update date
* WIP legacy access
* Optimise imports
* WIP app cleanup
* Update loadUserPreviews typing
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* Read legacy comments
* Parse using comments service
* Perform migration directly
* Fix legacy app sort query which uses id
* Migrate legacy comments in mutations
* Reduce api semver
* Update app recommended permissions
* Recommend updating of comment only
* replace hardcoded type with existing one
* Allow users to update or delete their own comments
Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com>
* Skip further access validation for non-existent collections
* Check if collection exists before the admin check
Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com>
* Fix incorrect legacy check
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* Fix merging of count when db returns count as string type
* Remove unused import
---------
Co-authored-by: Brainslug <br41nslug@users.noreply.github.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Brainslug <tim@brainslug.nl>
Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com>
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* Consolidate content versioning (#22413)
* Add migration
* Use the new delta field
* Add cast-json flag
* Fix typing
* Fetch existing deltas if version created during migration
* Add changeset
* Add version delta field into sdk schema
* Update migration timestamp
* Update versions.save() to return finalVersionDelta
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Sort on DB level
* Update migration date
* Disallow passing delta via create/update
* Update docs & specs
* Fix save response
* Remove unnecessary access check
Already checked by the subsequent itemsService.readOne call
* Update changeset
* Don't require update perms on versions for save
* Optimize validateCreateData
* update to new validateAccess
* Update docs/reference/system/versions.md
* Remove migration of delta
* Rename to legacy
* Add missed changes for Remove migration of delta in
|
||
|
|
9c4e7af4da |
Doc tweak for policy objects users and roles properties (#23624)
* small doc tweak for `policy` object * add mention of `directus_access` data for `users` and `roles` in `policy` object |
||
|
|
22328f5638 |
Fix incorrect users and roles types for policy object (#23621)
* fix user and role types in policy object * fix permissions link in policy object * fix wording for policies property in users object |
||
|
|
b6f0c2c761 |
Fix typo in docs (#23585)
* Fix docs typo * Add changeset |
||
|
|
39f9515088 |
Add index support (#23149)
* feat(api): add index support
Co-Authored-By: Mahendra Kumar <22556323+mahendraHegde@users.noreply.github.com>
* fix(primary key): do not all mutating unique or index
* feat(app): add index selection
* refactor `dopIndex` to use array entry
* add docs
* add changeset
* add missing properties from field object spec
* simplify index checks
* formatting
* fix mssql index query
* fix additional fields being returned in schema
* fix oracle indexing
* only set nullable/not nullable if specifically requested
* Update app/src/lang/translations/en-US.yaml
Co-authored-by: Hannes Küttner <kuettner.hannes@gmail.com>
* Revert "only set nullable/not nullable if specifically requested"
This reverts commit
|
||
|
|
13e47efe80 |
Removed RC mentions in docs (#23271)
* Removed RC remtions * Format policies --------- Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com> |
||
|
|
1ca6ad0d02 | Merge branch 'main' into chore-v11-merge-main | ||
|
|
4bb39ee6d8 |
Update users.md to add verification_url to Register User request body (#22913)
* Update users.md to add verification_url to Register User request body * Update contributors.yml |
||
|
|
2273480c6d |
Implement the new permissions policy (#22773)
* WIP start on migrations
* Add migration
* Don't insert if there's no rows
* Use service to read/write permissions
* Use payload service rather than itemsservice
* Start on downgrade command
* Update system data structure
* Update migrations to keep structure flat
* Remove icon from policies
* Drop policies table on downgrade
* Rearchitect migrations to structure v3
* Add down migration
* Update system fields
* Add policy to fields import
* Fix public role attachment
* Update packages/system-data/src/fields/index.ts
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* Update packages/system-data/src/fields/policies.yaml
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* Add nested roles
* Remove unused step
* Use two o2ms instead of m2a for attachments
* Update system data
* Implement permission policies in the API (#22384)
* Update system data structure
* Update migrations to keep structure flat
* Remove icon from policies
* Drop policies table on downgrade
* Rearchitect migrations to structure v3
* Add down migration
* Update system fields
* Add policy to fields import
* Fix public role attachment
* Update packages/system-data/src/fields/index.ts
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* Update packages/system-data/src/fields/policies.yaml
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* Add nested roles
* Remove unused step
* Use two o2ms instead of m2a for attachments
* Update system data
* [WIP] Start reorging permissions handling
* Setup field extraction
* Remove watch from vitest
* Finish fieldMap creation logic
* Add tests for utils
* Improve tests
* Improve coverage
* Split test and test:watch
* Continue on this fun
* [WIP] Setup processing
* Sort roles
* Restructure to util files for org
* Add missing util tests
* More tests
* Add cases/whencase to ast
* Start on injection logic
* Add tests for inject cases
* Add tests for process
* Add todo
* Organize run-ast
* Add clear method to kv
* Remove reliance on acc.perm
* Restructure permissions setup
* Drop perm from acc, add roles/policies
* Remove get-permissions in middleware
* Remove/comment use of acc.perm
* Add default roles/permissions
* Use knex
So we don't have to initialize the schema before we want to use the accountability system
* Use new fetching logic in get accountability
* Add new fetch global access utils
* Gotta redo based on new setup
* Replaced with new util
* Remove dropping of perm in acc
It's no longer there by default, so no need to remove here
* Temporarily comment out the enforce tfa check
* Update usage of fetch tree to use knex
* Don't store policies on accountability
* Feed in roles thru acc
* Bit of whitespace
* Rename role->policy
* Wreck some more stuff
Jk, this is splitting up the large get-ast-from-query function into smaller individual functions to make it easier to update the wildcard conversion to use permissions
* Add ability to lookup all allowed fields in col+ac
* Add note so I don't forget stuff which i will
* Handle null acc
* Introduce parseAst to itemsservice
* That cleans things up
* Replace checkAccess with validateAccess
* Remove checkaccess from service
* cleanup imports
* Whoops one more
* Leave crumbs for next time
* Implement most of the fn
* Fix various tests
* Start on test for fetch roles tree
* Add tests for fetch roles tree
* Fix process tests
* All. of. the. tests.
* Update uses of validateAccess
* Fix name in runAst
* Fix use of accountability in gql sub
* Deprecate authorization service
* Remove getPermissions use
* Drop old getpermissions
* Pass services
* Replace admin/app uses with fetch global
* Update fetch user count to pull from policies
* Remove broken admin existence checks
* Update min accountability
* Remove unused import
* Drop permissions override from controller
* Refactor reliance on acc.perm
* Replace usage of permissions in fields
* Replace usage of permissions in import/export
* Drop permissions use from relations
* Drop no longer used method
* Remove unused import
* fix type usage of pk in validate
* Fix default acc in user
* Replace use of permissions in utils
* Update reduceSchema in specs/gql
* Remove old share merging
* Remove empty file
* Remove outdated comment
* Use ctx objects for large param fns
* Add with-cache memoize util
* Add cache to fetchpermissions
* Update caching use in fetchRolesTree
* Add caching to fetchAllowedFieldMap
* Add more cache
* Refactor call signatures
* Move call signature updates
* Handle presets
* Update process call sig
* Prevent infinite recursion in roles tree lookup
* Use create util for acc
* Remove old checkIp
* Fix where equality operator
* Break EVERYTHING!
Jk just cleaning up the structure some more, and removing the dep injection in favor of mocking
* Fix build
* Add missing module tests
* Don't crash on missing parent
* Fix role lookup
* add missing type annotation
* use logical-OR assignment and avoid a memory allocation
* Attach admin policy in default admin creation
* Fix admin check
* Add todo for later
* rm code duplication
* fix test
it was missing the new `roles`
* add types and fix type error
policies dont [yet] have an icon
* move spread order to avoid potential future mishaps
new default keys would override the manually set keys, potentially leading to unintended behavior
* reduce allocations, add escape hatch to loop and type db-row
* Implement case/when
* Clean up comments
* Optimize perm fetching in allowed f
* Move apply case when to util fn
* Optimize fetch-allowed-fields
* Add fetch inconsistent util
* Allow nulls
* Remove obsolete getCacheKey
* Remove unused import
* Update getAccountabilityForRole test
* Update fetchGlobalAccess test with one more test case + fix other test case
* Type cleanup
* Fix "admin access means automatic app access" in fetchGlobalAccessForQuery
* Clean up and expand fetch-inconsistent-field-map.test.ts
* Test uncached functions
* Test uncached
* Remove cases usage in parse-current-level
* Only consider non-null rules in inject cases
* Fix parseCurrentLevel call
* Move service imports into functions to avoid circular imports
* Ensure that we test that an error is thrown in processAst test
* Add failing test case for flattenFilter
* Ensure uniqueness in extractPathsFromQuery
* Early exit in validatePath
* Add additional test case for process payload test
* Update validateCollectionAccess test
* Clean up validate-item-access.test.ts
* Remove redundant initializer
* Use createDefaultAccountability
* Fix fetch-user-count.test.ts
* Cleanup unused default initializer
* Add empty cases to subfilter in _relationCount
* Drop AccessService and PermissionsService usage from services
* Found some more PermissionsServices
* Fix a few more tests
* Add nested role relation
* Fix query invocation in aggregate and group queries
* Fix role property name in auth/refresh
* Add some missing relations for permissions, access and roles
* Add m2o relation from permissions to policy
* Add m2o relation access to role, user, policy
* Allow fetchPermissions to fetch all permissions and not just those limited by an action
* Add parent to Role type
* Make sure that admin users see all fields
* Add access and policies controller, add util methods to policies and access service
* Change name and description of public policy, update description of admin policy and add on delete trigger.
* Make sure access row uuids are auto generated
* optimize kvredis clear function and add a unit test
to be fair: unit test is also testing implementation details but thats a problem there in general and for future us
* Add minimal app permission and dynamic variable injection to the permission fetching
* Fix m2o collection name in extractFieldsFromChildren
* Make sure to clone permission before injecting dynamic variables
* Actually do the cloning in with withAppMinimalPermissions since people might missbehave with the permissions obtained from PermissionsService.readByQuery so it better to go the source of the problem
* Use knex transaction in createOne -> processPayload - otherwise deadlock
* Make sure to respect '*' field in allowed fields
* Fix extractFieldsFromChildren for o2m as well - classic
* Fix allowed field check in `FieldsService.readAll` to account for multiple permissions for collection+action
* Skip case/when if `allowedFields` includes '*'
* Restructure the way the current users permissions are returned
* add ability to clear all keys from memory cache
* add test for clear method
* add await to clear function
* Clear permissions caches on changes to policy attachments (directus_access) and policy updates (directus_policies) and permissions updates (directus_permissions)
* Make the public role a real role rather than a virtual one
* Inject the public role, we're it previously was `null`
* Revert adding a fix public role
* remove unused variable
* Ensure that a user without a role can still use the /me util endpoints
* Make sure that the /me endpoints always return minimal information, similar to /users/me
* Some fixes after merging main
* Update api/src/permissions/utils/with-cache.ts
Co-authored-by: Hannes Küttner <4376726+hanneskuettner@users.noreply.github.com>
* Avoid broken role query for now
* Skip related collection `parseFields` if user has no permissions
* Ensure same call order as in `convertWildcards`
* Create default admin policy and connect it in cli init command
* Remove obsolete middleware mock in app.test.ts
* Add validation against non-existent fields and collections to `validatePath`
* Split up permission and path existence validation and validate path existence for admin users as well
* Make applySearch not async
* Fix relation extraction and permissions for `$FOLLOW` fields
* Fix case when for related collections and query wrapping
* Rework user integrity checks for Auditus (#22737)
* Changes to user counting and integrity checks
* Ensure that user validation happens in both create one and create many
* Rename `checkType` to `flags`
* Update api/src/permissions/modules/validate-remaining-admin/validate-remaining-admin-count.ts
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* Update to enum usage
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
* A few more changes to enum instead of number
* One more enum type update
* Make sure to correctly override the callback when combining options
* Clean up option type
* Update api/src/services/users.ts
Co-authored-by: ian <licitdev@gmail.com>
* Only take validation shortcut for users
We can only be sure that the deletion of users does not increase any other access types count, so in all other cases we need to verify that for example the App or API users have not increased over the limit
* Make both app and admin users count against app access limit
* Update api/src/permissions/modules/validate-remaining-admin/validate-remaining-admin-count.ts
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* One post-merge fix, two small fixes
* Simplify flag updating and callback calling
* Changing app access in a policy only requires user limit checking, not full check
* Only the status of a created user should matter to determine if a check is neccessary
* Add count alias to count query
---------
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Add roles and permissions to the app (#22654)
* Initial app changes
* Fix getRelationsForField
* Add changeset
* Remove app-permissions from role settings
* Make sure access row uuids are auto generated
* Move a few things around, set up policies m2m properly
* Show roles as tree in sidebar
Change avatar field query for user
* Show user and role count in policy table
* Default to not adding app access for a policy, makes composability less annoying
* Correctly fall back to 0 for counts
* Change the structure of current user permissions
* Start bringing back the public role
* Make the public role a real role rather than a virtual one
* Revert public role changes
* Extend list-m2m to allow for very custom junction matching and a primary key of `null`
* Remove unused
* Fix public role policy update payload
* Fix app access for users without role (which is a thing now apparently)
* Make sure that the /me endpoints always return minimal information, similar to /users/me
* Tweak nav icons
* Pull policy id from constants
* Update permissions interface design to match
New design language in figma
* Some minor adjustments
- Make chip hover border more consistent
- Add "Remove" button to remove a full row of permissions, as in the UI mockup
- Fix table layout
* Clean up a few more things
* Fix `setFullAccess`
* Align collection view icons with navigation
* Don't query 'admin_access' for role
* Fix relation extraction and permissions for `$FOLLOW` fields
* Don't show `0 Items` for child rows, but `--` instead
* Make policy detail work in nested policy creating use case
* Remove unused v-icon override
* Move system collections to separate visual table
* Navigate before refresh
Prevents a flash of the previous value to be visible in the table
* Move composable to separate file
---------
Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Optimize types
* Clone query deep
* Optimize type order
* Throw error on invalid role id
* Rename run.js -> run-ast.js
* Re-add filesizes to telemetry report collection that got lost in the merge
* Make `systemCollections` reactive
* Use one column per action to avoid unwanted shifting if some actions are not allowed at all
* Render system and custom together
* Add divider between regular and system permissions if both have elements
* Add AccessService and PoliciesService to `getService`
* Move policy global flags fetching to util
* Move collection access fetching into util
* Remove permissions for `directus_access`, `directus_permissions` and `directus_policies` from schema permissions
* use formatted-value display for name & description in roles & policies
* Rename `process.ts` to `process-ast.ts`
* Fix process-ast import after renaming
* Perform user integrity check on item deletion
* Fix first admin creation on bootstrap
* Revert "Fix first admin creation on bootstrap"
This reverts commit
|
||
|
|
c401a4ea99 |
Implemented random string command in the SDK (#22604)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
c893b9fa65 |
Add public registration (#22125)
* WIP: add new register dummy-route * fix notice on register route * WIP register form * WIP: registering ui and controller for testing * fix lint ordering problem * wip: users service * add migration, initial style for fields in settings * redo how emails will be filtered * WIP add filter in the register handler * conditionally render register link depending on settings * WIP: add email validation * wip add email sending * make clicking the email link work * rm console log * update controller * dont send emails for existing emails * add translation * only show register link when unauthenticated * add different redirects * only allow selecting non-admin roles * redirect to users page * update translation * move logic from controller to usersservice * rm remnant of logic from controller * add stall time to registration * update translation * rm comments * rm unused var * add changeset * update translation for success * remove sso related stuff from registration * also allow setting first and last name * update error check * add @directus/errors to app * replace error strings with enum * rename to public_registration * rename to public_registration_verify_email * add notes to fields * add types package to changeset * dont stall if no work is being done * allow null-role and resending of reg. email * add public registration env vars, rm RATE_LIMITER_GLOBAL_STORE RATE_LIMITER_GLOBAL_STORE wasnt being used. Lets just stick to RATE_LIMITER_STORE for all rate limiters. TODO: also remove from docs! * use ratelimiter for registration, use stall time env var * add registration limiter docs, rm global store variable from docs * update changeset * add ignore-notice Co-authored-by: Hannes Küttner <4376726+hanneskuettner@users.noreply.github.com> * use and document new `EMAIL_VERIFICATION_TOKEN_TTL`, also doc `REGISTER_STALL_TIME` * change variable name Co-authored-by: ian <licitdev@gmail.com> * apply variable rename to usage * change backticks to single quote Co-authored-by: ian <licitdev@gmail.com> * inline variables * add fields to server info, update types - The other ratelimiters also expose points and duration, done - Add `public_registration_verify_email` so that we can render different success messages * tiny wording tweak of registration mail * add new user status 'unverified' and check for it * add unverified status translation * decouple email verification and validation * enable register rate limiter by default and up its config * add autocomplete=new-password on the registration form * added sdk functions * add gql query for new fields * added register api reference * updated verify sdk function name * added reference block for email verify endpoint * updated reference examples * WIP: add gql resolvers * add ratelimiter to mutation * remove ratelimiter registration point+duration info * rm points and duration from gql * Update docs/reference/system/users.md Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> --------- Co-authored-by: Hannes Küttner <4376726+hanneskuettner@users.noreply.github.com> Co-authored-by: ian <licitdev@gmail.com> Co-authored-by: Brainslug <tim@brainslug.nl> Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
ec2604f913 |
Don't require KEY or SECRET to be set on startup (#22320)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
5398180c03 | add warning in webhooks docs page (#22242) | ||
|
|
476a2482ad |
Api: Clear system cache only if specified on /utils/cache/clear (#22234)
* Clear system cache only if specified * Add changeset --------- Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com> |
||
|
|
80187aef13 |
Fix wrong trigger type hook to correct event in flows.md (#22141)
|
||
|
|
988bc8762e |
[App] Migrate authentication and refreshing to the SDK (#21938)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
7bea23b7f5 |
Add the ability to configure the error, bug and feature URLs (#21174)
* add report url fields * update field template to be agnostic * add changeset * various fixes * rename handler to load path level * add translations * updated docs * fix tests * add placeholder support for system-display-template * refactor project to report and move to their own settings section * example urls should be more concrete Co-Authored-By: Pascal Jufer <5363448+paescuj@users.noreply.github.com> * move hardcoded default report urls to constants Co-Authored-By: Pascal Jufer <5363448+paescuj@users.noreply.github.com> * Make nav reactive, so URL changes are immediate * change order of report urls * change icon to feedback * move composable to top level * remove ref, use from prop * Update .changeset/tender-timers-develop.md Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> * rm select_a_collection_or_tree_fields translation key --------- Co-authored-by: Pascal Jufer <5363448+paescuj@users.noreply.github.com> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> Co-authored-by: Daniel Biegler <DanielBiegler@users.noreply.github.com> |
||
|
|
1c0d786e2c | Fix endpoint typo in Content Versions docs (#21672) | ||
|
|
77d73398f1 |
Session Based Authentication (#21239)
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com> Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
2494b5c2d0 | Fix typo on extensions doc (#21571) | ||
|
|
2fb5bef2e4 |
Update collections.md
Fixes #21490 |
||
|
|
56b809abe4 |
Fix item permissions check (#21152)
* Introduce permissions API endpoint to fix item permissions check * Add changeset * Revision - Wrap API response in 'data' prop - Split-up usePermissions composables & add tests - Rework all permission checks * Remove obsolete test * Revision 2 - Singleton support - Bug fixes - Use permission composables wherever applicable - Complete tests * Update mock path in archive test * Move remaining checks to usePermissions composables * Update docs * Lint & spelling fix * Add SDK method * Require authentication for getItemPermissions service * Add blackbox tests * Use multi-line if Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com> * Format JSON code blocks * Use correct type for computed values Co-authored-by: Brainslug <tim@brainslug.nl> * More explicit check & add comments --------- Co-authored-by: daedalus <44623501+ComfortablyCoding@users.noreply.github.com> Co-authored-by: Brainslug <tim@brainslug.nl> |
||
|
|
2f8cdfe6b5 |
add meta object to createCollection SDK example. (#21353)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
1edd23853d | endpoint for updating an operation is /operations not /operation (#21357) | ||
|
|
f1e6301d4b | Added missing link in config, typo fix in flows reference (#21131) | ||
|
|
b189fd4594 |
Add enable/disable support for bundle type extensions (#20940)
* Add enable/disable support for bundle type extensions * added changeset * Update app/src/modules/settings/routes/extensions/components/extension-item.vue Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> * add docs * bundle with app extensions should display reload on prod * use early returns for toggle logic Co-Authored-By: Brainslug <br41nslug@users.noreply.github.com> * add enable/disable all for partially enabled * refresh message should work for enable and disable all * Clearer tooltip for app extensions in dev --------- Co-authored-by: Brainslug <br41nslug@users.noreply.github.com> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
dd3de6bda6 |
Categorize the directus_extensions endpoint as a system collection in the sdk (#20793)
Co-authored-by: Brainslug <tim@brainslug.nl> |
||
|
|
4396ee5166 |
Add theme-selector (#20413)
* Enable theme fields * Start adding more default themes * WIP add theme selector interface * Restructure, add rules-to-vars util * Render used vars in local overrides * Use local theme vars in theme preview * Render theme option full-width * Add more test colors * Only override used variables * Fix rendering bugs in preview * Remove test theme * Add small border to preview * Add organic theme * Add changeset * Don't crash color interface on complex input bg * Use themable color for disabled input * Use nav-sidebar theme in v-drawer * Use border width from the theme in panels * Use theme border width for panel borders * Use page background for panel edit buttons * Fix Active state forselected panel * Don't use primary for logout hover state * Fix background color of item duplication fields * Use form border/background in v-list block * Use theme border width in hardcoded 2px sections * fix chip padding * Rename background-page to background, rename background to background-normal * Fix search input styling * Tweak search input themability * update icons * Add border on sidebar section content * Add color match, start on minimal * Organize import * Adjust spacing * Ignore stylesheet files * Ignore svg as well --------- Co-authored-by: Ben Haynes <ben@rngr.org> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
2d3da357db |
Fix SnippetToggler group definitions (#20388)
* Fix SnippetToggler group definitions * Ignore md files for linting |
||
|
|
bbefc62ef4 | Updated all docs examples from "@directus/sdk/rest" to "@directus/sdk" (#20321) | ||
|
|
78f25b66a2 |
Update docs for Theming (#20154)
* update docs for theming * tweak sidebar ordering based on Data Studio * fix formatting for theming.md * Add favicon to dict --------- Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com> |
||
|
|
42d4f2d56a |
Merge next into main (#20107)
* Content Versioning (#19463)
Co-authored-by: Azri Kahar <42867097+azrikahar@users.noreply.github.com>
* Update clean-berries-do.md
* Prerelease mode
* v10.7.0-beta.0
* Ignore format of auto-generated pre.json file
* Update naming conventions for Content Versioning (#19678)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Content versioning tweaks (#19700)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Add additional system fields to Content Versioning & include preview in promote drawer (#19752)
* Use key instead of name for Content Versioning (#19813)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Reorder component tags
* Prompt user to keep or delete the version before promoting (#19829)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Fix multiple constraints to users system table from versions system table for MSSQL (#19912)
* fix multiple constraints from versions to users
* fix users unit test
* Add Sorting by Aggregated Queries (#19568)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
Co-authored-by: ian <licitdev@gmail.com>
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Update API References for Content Versioning (#19911)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Add version argument in GraphQL (#19910)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
* Merge branch 'main' into next (#19974)
* Show installed extensions in settings pane (#19964)
* Setup boilerplate for extensions page
* Allow reading all extensions from the root endpoint
* Add basic sidebar info detail
* Render list of extensions
* Move extensions manager to folder
* Move stuff related to extensions to @directus/extensions
* Import extensions utils/types/etc from ext. package
* Resolve last imports
* Add no-extensions warning
* Start on extensions grouped
* Remove string type
* Improve naming conventions
* Couple more optimizations
* Add more structure
* Add comments
we finally understand how this works! hehe
* Remove constructor in favor of static set
* Add more comments
* Don't filter in get-extensions
TBD if this will break things horrendously
* Sprinkle on better names / comments
* Render by section, nested bundled extensions
* Fix typo
* Live-saving tip from the formatter
* Don't know where this came frmo
* Add a changeset
* 📈 Insights QoL Part 1 (#19467)
* Start adding Create Default Modal
* Add Metric List
* Number Formatter Utility
* Start on Label Formatting Options and Resizing
* Update Metric List to use New Number Formatter
* fix auto fit and styling
* fix typings for number formatter and error catching
* add conditional formatting to metric list
* Add Number Formatting to Metrics and Size Formats
* Add Option to Hide Percentage and Fix Sizing of Meter
* Add manual sizing for labels
* Add translation strings
* Add comments to insights
* Fix color errors and add icon
* update translations
* Refine Linechart
* Revert "Start adding Create Default Modal"
This reverts commit
|
||
|
|
161d7518c1 | Docs: Snippet Toggler Improvements (#20077) | ||
|
|
a3787aaced |
SDK Update Collection Type (#19881)
* Updated SDK collection type and docs * fixed sort meta type on collections * Create big-peas-jump.md |
||
|
|
2eedd6b63f |
Add note on schema requirement
Fixes #19501 |
||
|
|
60df20d780 |
Simplified generic examples and consolidated imports for sdk examples in docs. (#19370)
* Simplified generics and imports for items page snippets * Simplified generics and imports for files page snippets * Fixing simplified generic snippets in items page * Simplified generics and imports for activity page snippets * Simplified generics and imports for collections page snippets * Simplified generics and imports for dashboards page snippets * Simplified generics and imports for extensions page snippets * Simplified generics and imports for fields page snippets * Simplified generics and imports for flows page snippets * Simplified generics and imports for folders page snippets * Simplified generics and imports for notifications page snippets * Simplified generics and imports for operations page snippets * Simplified generics and imports for panels page snippets * Simplified generics and imports for permissions page snippets * Simplified generics and imports for presets page snippets * Simplified generics and imports for relations page snippets * Simplified generics and imports for relations page snippets * Simplified generics and imports for revisions page snippets * Simplified generics and imports for roles page snippets * Consolidated imports for schema page snippets * Simplified generics and imports for server page snippets * Simplified generics and imports for settings page snippets * Fixed mixed up snippets and simplified generics and imports for shares page snippets * Simplified generics and imports for translation page snippets * Fixed mixed up snippets and simplified generics and imports for user page snippets * Simplified generics and imports fo uutilitie pages snippets * Simplified generics and imports for webhook pages snippets * Simplified generics and imports for authentication pages snippets * Consolidated imports for query pages sdk snippets * Format files * Update lockfile * Fix spelling * Format snippets * Aling `result` const * Small clean-ups - Align `SEARCH` snippets, move "Learn more..." next to other hint - ids -> IDs - Other alignments --------- Co-authored-by: Bevis Halsey-Perry <hi@be7.is> Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
683502c771 | Fix "Invite user" SDK example in docs (#19277) | ||
|
|
0c54f5a9ef |
Introduce SnippetToggler and New SDK Reference (#19110)
* items semi complete
* updated items page to use snippet toggler and migrated endpoint docs to use it
* updated files page to use snippet toggler and migrated REST and GraphQL endpoint docs to it
* updated activity page to use snippet toggler and migrated REST and GraphQL endpoint doc to it
* updated collections page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* updated dashboards page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated extensions page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated fields page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated flows page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated folders page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated notifications page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated operations page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated panels page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated permissions page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated presets page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated relations page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated revisions page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated roles page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Made headlines consistant with the rest of the doc pages
* Updated server page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated settings page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated shares page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated translations page to use snippet togglers and migrated REST endpoint docs to them
* Updated users page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated utilities page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated webhooks page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated authentication page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* Updated Global Parameters page to use snippet togglers where there are adjacent REST and GraphQL Examples
* Added SDK code snippets to items page and made generic variables consistant
* Added SDK code snippets to files page and made generic variables consistant
* Few lang changes for files page
* Added SDK code snippets to activity page and made generic variables consistant
* Added SDK code snippets to collections page and made generic variables consistant
* Added SDK code snippets to dashboards page and made generic variables consistant
* removed query word from query parameter objects
* Added SDK code snippets to fields page and made generic variables consistant
* SnippetToggler border
* Used dynamic border color for snippettoggler heading
* Spacing top and bottom of snippet toggler in docs
* Removed extra HRs
* Remove manual TOC in query reference
* Small code styling change in items page
* Updated users page to use snippet togglers and migrated REST and GraphQL endpoint docs to them
* dashboards fixed up property names
* Small copy update on extensions page
* Updated keys in delete mult notifications REST
* Updated keys in operations
* Update keys in panel delete many
* Update keys in permissions
* Added quotes around generic example ID strings
* Added code formatting to final example in share public info
* Format files
* Refined sidebar
* Insert newline before ending template tags
* Fixed extra closing tags, causing an error, un users ref
* Text Formatting Users
* Put GQL related notes inside toggler
* Added SDK code snippets to flows page and made generic variables consistant
* Added SDK code snippets to folder page and made generic variables consistant
* fixing whitepsace for flows and folders page
* Consistent newlines in SnippetToggler usages
* Run prettier
* Fix 'alwaysDark' definition
* Home page snippet toggler style fixes
* Fix snippet toggler lang hover color in light mode
* Introduce different code theme for light mode
* Added SDK code snippets to notifications page and made generic variables consistant
* Switch to 'material-theme-lighter'
* Format file
* Fix tip
* Fix tip in sdk ref
* Consistent spacing for custom containers
* Added SDK code snippets to operations page and made generic variables consistant
* Lint & format code blocks
* Lint & format operations
* Added SDK code snippets to panels page and made generic variables consistant
* Added SDK code snippets to permissions page and made generic variables consistant
* Added SDK code snippets to presets page and made generic variables consistant
* Added SDK code snippets to relations page and made generic variables consistant
* Added SDK code snippets to revisions page and made generic variables consistant
* Added SDK code snippets to roles page and made generic variables consistant
* Added SDK code snippets to server page and made generic variables consistant
* Added SDK code snippets to settings page and made generic variables consistant
* app_url -> directus_project_url
* Omitted auth details in delete multiple files
* Added quotes to values in roles
* Upload a file snippets
* Pluralization for upload/import files
* More files functions typos
* Added SDK code snippets to shares page (still missing createShare(s) as endpoint not functioning currently) and made generic variables consistant
* Added SDK code snippets to translations page (missing delete endponts because not working) and made generic variables consistant
* Added SDK code snippets to users page and made generic variables consistant
* Added SDK code snippets to webhooks page and made generic variables consistant
* Added SDK code snippets to utilites page (except cleaning cache, will be tested and added in later commit) and made generic variables consistant
* Added SDK code snippets to auth page (not login, refresh, and logout though due to errors)
* Added SDK code snippets for utilsExport and clearCache
* added github username be7DOTis to contributors
* Omit auth commands in updateComment
* utilsImport
* rename app_url generic value
* changed instances of updated*operation* to update*Operation*
* missed some 'updated' changse
* Added SDK Snippets to Query Parameters page
* Add section on file security
* added create(s)Shares SDK snippet to shares page
* added console.log to create snippets
* Added delete(s)Webhook SDK snippet to webhooks page
* Added SDK snippets to extensions page
* Added create/updateSingleton section to items page
* Links in files security
* Added SDK Snippets to Schema page
* Added GQL Generic examples to snippet togglers and removed snippet toggler from Login Using SSO Providers
* Added create(s)Presets SDK Snippets to presets page
* replaced fields query in generics snippets for a more generic
* replaced fields query in generics snippets for a more generic
* Use storage value only if valid choice
* Sync snippet togglers across page
* Update docs/reference/system/activity.md
* Update docs/reference/system/activity.md
* Update docs/reference/system/extensions.md
* Update docs/reference/system/revisions.md
* Update docs/reference/system/settings.md
* Update docs/reference/system/revisions.md
* Update docs/reference/system/settings.md
* Update docs/reference/system/activity.md
* Update docs/reference/system/roles.md
* Update docs/reference/system/roles.md
* Update docs/reference/system/roles.md
* Update docs/reference/system/roles.md
* Update docs/reference/system/schema.md
* Update docs/reference/system/server.md
* Update docs/reference/system/shares.md
* Replace all directus_project_url placeholders
* Revert "Sync snippet togglers across page"
This reverts commit
|
||
|
|
c2c04734f0 |
docs: Fix typo in permissions attribute list (#19204)
* Fix typo in attribute list (#19196) * Sign contributor license agreement |
||
|
|
7ebd79acb1 |
doc: fix GraphQL examples (#19193)
* doc: fix GraphQL examples Adding an extra note to show that when adding a user with graphql Roles are treated as an upsert. * Update contributors.yml * doc: format with Prettier * doc: fix typo * doc: fix format * Run formatter --------- Co-authored-by: rijkvanzanten <rijkvanzanten@me.com> |
||
|
|
67c008df37 |
Fixes the many broken docs redirects (#19026)
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch> |
||
|
|
92621429ee |
Linting and Formatting Upgrade (#18892)
* add docs to eslint
* update prettier ignore
* fix vitepress linting
* eslint ignore fixes
* prettier run
* update prettier ignore
* fix formatting
* enable linting of markdown files
* revert format command change
* fix irregular whitespace
* update dictionary
* (Changelog) Create four-boxes-shake.md
* Rework ESLint / Prettier setup
- Disable js/ts/vue files for Prettier to ensure linting/formatting is
only happening via ESLint
- Rework formatting of code blocks in md files
- Disable formatting of code blocks in md files under '/docs' by Prettier
- Instead use "eslint-plugin-markdown" to format & __lint__ js*/ts*/vue such code blocks
- Replace unmaintained "eslint-plugin-md" plugin by official "eslint-plugin-markdown" plugin
- I'll check whether we can use this to format other code blocks
(json, html, ...) as well
- Restructure, clean-up and apply some fixes to the ESLint config
(Note: Not ready for flat config yet since not supported by
vscode-eslint)
- Enable cache for ESLint / Prettier in scripts
- Clean-up ignore file
- Explicit folder declaration (.../)
- Don't ignore all 'extensions' folders in ESLint (only
'/api/extensions/')
- Enable formatting in '/.github' folder
* Fix all formatting issues with Prettier
* Update md files under /docs/.typedocs
* Fix lint issues in vue/js files
* ESLint / Prettier config revision v2
Enable Prettier for md code blocks, but only as warnings since it can
get into the way with Vitepress md extensions like '[!code ...]'
comments
* Remove prettier-ignore comments
* Make spellchecker happy
* Remove changeset
* Revert lint setup for code blocks
There are many cases in the docs where linting / formatting of code
blocks doesn't make
sense:
- Code block is only an excerpt - linter fails
- Code block contains special comments (e.g. markdown extensions) which
needs to remain at the same place - formatting would break it
- ...
* Apply lint issues / formatting from temp lint setup
* Run formatter
* Fix merge failure
* Simplify & modernize ESLint / Prettier setup
No longer run Prettier via ESLint. Nowadays, this is the recommended
setup. There's no real need to run it this way, it's just an additional
layer.
Add VS Code settings to make the work with the new setup easier.
* Remove unused eslint disable directives
* Make editorconfig more useful
* Fix formatting issues reported by editorconfig
* Format files with Prettier
* Enable formatting of source translations file
* Format source translations file
* Remove unnecessary console error
* Remove unnecessary line
* Only ignore md files under .changeset
* Add CI reporter for Prettier
* Fail job on wrongly formatted files
* Fix format
* Test Prettier action on changed/added file
* Use simple CI format check for now & no cache
* Revert "Test Prettier action on changed/added file"
This reverts commit
|
||
|
|
f96dcc361f |
Translation string performance (#18097)
* 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> |