Commit Graph

249 Commits

Author SHA1 Message Date
rijkvanzanten
c4e1e40279 Fix @directus/schema not reading Oracle overview correctly
Fixes #4735
2021-04-09 19:28:00 -04:00
Nitwel
44091e6f41 Add option to auto refresh collections (#4777)
* add auto refresh

* add refresh_interval to DB

* remove refresh_interval template

* set refresh interval default to null

* Fix typo in filename

* Rename sidebar-auto-refresh to refresh-sidebar-detail

* Rename import

* Add badge on active refresh, change options

* Fix refresh not working on refresh

Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2021-04-09 17:24:40 -04:00
Rijk van Zanten
dd551f3571 Add non-items system Resolvers (#4863)
* Add auth resolvers

* Add password request/reset

* Add up until file import

* Make revisions read only

* Add server resolvers

* Add utils

* Add schema resolvers for schema manipulation
2021-04-06 18:04:35 -04:00
rijkvanzanten
9859212253 Fix o2m fields missing by default 2021-04-05 16:39:30 -04:00
Rijk van Zanten
f90c31b798 GraphQL 2.0 (#4625)
* Start on GraphQL "2.0", add methodnotallowed exceptoin

* Fix relative file pointer in peer dep

* [WIP] Add pre-filtered schema to SchemaOverview

* Use root schema as is, add reduce-schema util

* Use reduceSchema in the wild

* Base schema on local reduced schema

* Remove todo

* Use graphql-compose to build out schema

* Start restructuring resolvers

* Add create mutation

* Return boolean true for empty create mutation selections

* Add update mutation

* Add delete mutation

* Add system/items scoping

* Fix merge conflicts for real now

* Use system services, rename ids->keys

* Start on docs on mutations

* Updates to match main

* Add fetch-by-id

* Add one/many resolvers for mutations

* Check system collection rows for singleton

* Fix resolver extraction for single read

* Share delete return type

* Add comments

* Use collection root name for readable type

* Add specs endpoint for GraphQL SDL

* Update docs

* Add note on SDL spec

* Fix delete single example

* Remove package-lock

* Fix collection read scoping in non-read
2021-03-30 17:06:35 -04:00
Rijk van Zanten
b562ceeb0c Add Tree-View Interface (#4602)
* Fix local type extraction

* Render basic tree in tree-view

* Render drawer-item in tree-view-group

* Retrieve nested draggable changes

* Default sort query to configured sortField

* Store nested group / sort to API

* Allow updating item values

* Figure out a dropzone approach on preview

* Finish editable tree view

* Set sort value based on sort field in relation

* Add create-new / add-existing

* Respect previously made nested edits

* Add description in setup

* Fix fetching level of o2m sort field

* Remove min height on empty root

* Remove unused types

* Add notice for invalid relationship type

* Allow recursive o2m in setup

* Styling tweak

* Revert changes in v-list

* Revert changes in groupable
2021-03-26 17:12:55 -04:00
Rijk van Zanten
c310afa846 Rely on npm Workspaces for module resolving (#4656)
* Move devDeps to API

* Move app to npm workspaces

* Tweaks / add lockfiles

* Add locks, fix devdeps across packages

* Move eslint config rootlevel

* Use eslint fix for vue files instead of vue-cli-service

* Add global prettier format option

* Create lockfiles for all packages

* Replace husky with simple-git-hooks
2021-03-24 16:01:49 -04:00
rijkvanzanten
eb941046a0 Use TEXT for webhooks collections CSV
Fixes #4506
2021-03-12 17:42:04 -05:00
rijkvanzanten
8f048a8c32 Remove unnecessary migration
Got confused by Knex no longer executing dropForeign on SQLite :C

Fixes #4470
2021-03-11 07:37:43 -05:00
Rijk van Zanten
971a18c219 Database Error Abstraction (#4465)
* Start on database-error abstraction layer

* Add SQLite error abstraction

* Enable SQLite foreign key support

* Cleanup sqlite dialect slightly

Does it matter? Not really!

* Add MySQL error abstraction

* WIP Almost done with MSSQL

* Add correct error handling for MS SQL

* Fix mysql errors by not relying on value order

* Don't rely on sql in postgres exception translation

* Fix sqlite error parsing

* Remove foreign key constraint from activity to collections

A collection can be DB-only, but we still want to track activity for non-meta collections

* Translate error on update as well
2021-03-10 17:16:15 -05:00
Rijk van Zanten
97dcdad847 OracleDB baby steps (#4464)
* Allow external connections in oracle debug

* Fix oracle overview query

* Use correct alive check for oracle

* Remove unused import

* Validate correct env vars for oracle
2021-03-10 16:58:49 -05:00
Rijk van Zanten
291643e0b4 Fix installing on MS SQL (#4455)
Fixes #3158, fixes #3608
2021-03-09 18:43:03 -05:00
Ben Haynes
a769711772 default color 2021-03-08 15:12:58 -05:00
rijkvanzanten
fa7daa1f86 Revert seeds change 2021-03-05 10:32:56 -05:00
Ben Haynes
ccf885f950 dynamic colors for system activity displays 2021-03-04 20:13:47 -05:00
Ben Haynes
275b9521f2 webhooks dynamic seed colors 2021-03-04 19:46:56 -05:00
Ben Haynes
7599e0a7aa primary color and various design updates 2021-03-04 18:50:47 -05:00
rijkvanzanten
1e89c25872 Remove "locked" field from directus_fields
Closes #3925
2021-03-04 18:41:59 -05:00
Martijn Boland
bed7890a6b Filter O2M collections with a subquery instead of joins to prevent cartesian products (#4278)
* Cherry-picked fix for 4078 from mssql-to-success branch

* Only use o2m joins in subqueries

* Allow more array nesting in query params

* Clarify naming

* Return empty nested o2m sets as array

Co-authored-by: Martijn Boland <martijn@taiga.nl>
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2021-03-04 16:58:13 -05:00
rijkvanzanten
31b5dbfe66 Fix validation error on preset creation with app access
Fixes #4369
2021-03-03 19:57:04 -05:00
Nicola Krumschmidt
08293b8570 Update Knex to version 0.95.0 (#4374)
* Update Knex to version 0.95.0

* Fix formatting in schema dialects

* Fix Knex imports

* Update package-lock

Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
2021-03-03 19:37:44 -05:00
reolat
24548680d5 Create allow list for custom migration file extensions (#4358) 2021-03-03 12:24:04 -05:00
Ben Haynes
83b1aa53c2 desaturate all system dividers 2021-02-26 11:32:52 -05:00
Rijk van Zanten
db30acbb8a Move sortField to relationship setup (#4304)
* Add migration

* Add sort field to relation types

* Remove sortfield options in favor of relationship

* Add sort field configuration to relational setup

* Save m2a sortfield on the correct row

* Add default sort field to system data
2021-02-25 19:13:36 -05:00
rijkvanzanten
142b250c8d Use pino error instead of fatal
Fatal throws flushing error when using 'pretty' log style
2021-02-23 11:29:37 -05:00
rijkvanzanten
435d6ec84a Validate DB_CLIENT env var before creating DB connection
Fixes #3556
2021-02-23 11:28:56 -05:00
rijkvanzanten
81bb7cfa53 Allow configuring the connection pool size
Closes #3165
2021-02-22 20:19:08 -05:00
rijkvanzanten
315456916a Fix default limit for nested o2m sets
Ref #3743
2021-02-19 10:52:24 -05:00
Martijn Boland
d95ab172bd Prevent duplicates in select list. Fix taken from PR 3498 and fixes #2930 (#4140)
Co-authored-by: Martijn Boland <martijn@taiga.nl>
2021-02-17 18:59:43 -05:00
rijkvanzanten
3615612da0 Apply search to filter_count
Fixes #4121
2021-02-17 10:47:57 -05:00
Adrian Dimitrov
335c3eab57 Update system fields default displays (#4089) 2021-02-16 13:44:26 -05:00
YannickMol
3bbf7f0d8b Add default displays to directus_users (#4069)
Fixes #3971
2021-02-15 16:27:03 -05:00
Nitwel
a589b9553c Make fields of files either readonly or hide them (#4053)
* make fields of file readonly to hinder confusion

* hide upload fields because duplication of information
2021-02-15 10:10:25 -05:00
Rijk van Zanten
b7d87e581a System permissions for app access (#4004)
* Pass relations through schema, instead of individual reads

* Fetch field transforms upfront

* Fix length check

* List if user has app access or not in accountability

* Load permissions up front, merge app access minimal permissions

* Show app access required permissions in permissions overview

* Show system minimal permissions in permissions detail

* Fix app access check in authenticate for jwt use

* Fix minimal permissions for presets

* Remove /permissions/me in favor of root use w/ permissions

* Fix logical nested OR in an AND

* Use root permissions endpoint with filter instead of /me

* Allow filter query on /permissions

* Add system minimal app access permissions into result of /permissions

* Remove stray console log

* Remove stray console.dir

* Set current role as role for minimal permissions

* Fix no-permissions state for user detail

* Add filter items function that allows altering existing result set
2021-02-11 12:50:56 -05:00
Rijk van Zanten
693e770ca3 Make filename disk readonly (#3883)
Fixes #3863
2021-02-01 10:24:27 -05:00
Rijk van Zanten
5a019b4284 Implemented Union Types in GraphQL (#3852)
* Fetch correct amount of data

* Allow system required data to be returned in items service

* Fetch non-requested required data, find type through context

Fixes #3718
2021-01-29 16:23:33 -05:00
rijkvanzanten
f1bd175e16 Remove limit temp for all nested collections 2021-01-27 17:30:16 -05:00
rijkvanzanten
040af268d7 De-dupe parent records when filtering on joins
Fixes #3798
2021-01-27 10:42:44 -05:00
Ben Haynes
9a9d0d9789 fix settings field defaults 2021-01-25 19:33:56 -05:00
rijkvanzanten
8af48c16e4 Fix m2o limit, fix wildcard permission check
Fixes #3791
2021-01-25 17:04:13 -05:00
Ben Haynes
36d5fafbf7 add default system divider color 2021-01-13 17:57:22 -05:00
rijkvanzanten
05f0bc967e Turn hash into type
Fixes #3542
2021-01-12 17:08:19 -05:00
rijkvanzanten
ea1853acfb Alias joins to prevent naming conflicts in nested queries
Fixes #3294
2020-12-08 17:55:40 -05:00
rijkvanzanten
996e9f34ac Fix lang import, use system-languages interface on users 2020-12-08 13:39:50 -05:00
Igor Savin
7cddb458cb Run prettier across app and api 2020-12-08 02:22:00 +02:00
rijkvanzanten
5bedda945c Warn, don't error, on missing PKs in schema
Fixes #3251
2020-12-07 18:24:33 -05:00
rijkvanzanten
d352609a50 Add support for custom migrations extension 2020-12-02 15:51:58 -05:00
rijkvanzanten
e3d289b7a4 Add CLI bootstrap command 2020-12-02 15:27:54 -05:00
Nicola Krumschmidt
7a36dd3d0a Remove unused required properties 2020-12-01 18:51:27 +01:00
rijkvanzanten
0dbaefcb4c Add default nested limit 2020-11-27 19:16:44 -05:00