directus 9.4.1 → 9.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/README.md +1 -1
  2. package/dist/app.js +20 -1
  3. package/dist/auth/auth.d.ts +2 -1
  4. package/dist/auth/drivers/ldap.js +2 -1
  5. package/dist/auth/drivers/local.js +2 -1
  6. package/dist/auth/drivers/oauth2.js +12 -21
  7. package/dist/auth/drivers/openid.js +14 -3
  8. package/dist/cache.js +1 -3
  9. package/dist/cli/commands/init/questions.d.ts +3 -0
  10. package/dist/cli/commands/init/questions.js +2 -0
  11. package/dist/cli/index.js +1 -1
  12. package/dist/cli/utils/create-db-connection.d.ts +1 -1
  13. package/dist/cli/utils/create-db-connection.js +11 -1
  14. package/dist/cli/utils/drivers.d.ts +1 -0
  15. package/dist/cli/utils/drivers.js +2 -1
  16. package/dist/controllers/activity.js +2 -1
  17. package/dist/controllers/auth.js +5 -4
  18. package/dist/controllers/extensions.js +1 -1
  19. package/dist/controllers/files.js +3 -0
  20. package/dist/controllers/utils.js +2 -0
  21. package/dist/database/helpers/date/index.d.ts +1 -0
  22. package/dist/database/helpers/date/index.js +3 -1
  23. package/dist/database/helpers/geometry/index.d.ts +1 -0
  24. package/dist/database/helpers/geometry/index.js +3 -1
  25. package/dist/database/helpers/index.d.ts +2 -0
  26. package/dist/database/helpers/index.js +2 -0
  27. package/dist/database/helpers/schema/dialects/cockroachdb.d.ts +16 -0
  28. package/dist/database/helpers/schema/dialects/cockroachdb.js +16 -0
  29. package/dist/database/helpers/schema/dialects/default.d.ts +3 -0
  30. package/dist/database/helpers/schema/dialects/default.js +7 -0
  31. package/dist/database/helpers/schema/dialects/oracle.d.ts +12 -0
  32. package/dist/database/helpers/schema/dialects/oracle.js +13 -0
  33. package/dist/database/helpers/schema/index.d.ts +7 -0
  34. package/dist/database/helpers/schema/index.js +17 -0
  35. package/dist/database/helpers/schema/types.d.ts +25 -0
  36. package/dist/database/helpers/schema/types.js +89 -0
  37. package/dist/database/index.d.ts +1 -1
  38. package/dist/database/index.js +66 -17
  39. package/dist/database/migrations/20201105B-change-webhook-url-type.js +6 -25
  40. package/dist/database/migrations/20210312A-webhooks-collections-text.js +6 -25
  41. package/dist/database/migrations/20210415A-make-filesize-nullable.js +9 -4
  42. package/dist/database/migrations/20210506A-rename-interfaces.js +1 -1
  43. package/dist/database/migrations/20210510A-restructure-relations.js +12 -4
  44. package/dist/database/migrations/20210525A-add-insights.js +2 -2
  45. package/dist/database/migrations/20210626A-change-filesize-bigint.js +5 -7
  46. package/dist/database/migrations/20210903A-add-auth-provider.js +11 -2
  47. package/dist/database/migrations/20210907A-webhooks-collections-not-null.js +6 -20
  48. package/dist/database/migrations/20210920A-webhooks-url-not-null.js +10 -14
  49. package/dist/database/migrations/20211211A-add-shares.js +2 -2
  50. package/dist/database/migrations/20211230A-add-project-descriptor.d.ts +3 -0
  51. package/dist/database/migrations/20211230A-add-project-descriptor.js +15 -0
  52. package/dist/database/migrations/run.js +1 -1
  53. package/dist/database/run-ast.d.ts +1 -1
  54. package/dist/database/seeds/01-collections.yaml +1 -0
  55. package/dist/database/seeds/02-roles.yaml +1 -0
  56. package/dist/database/seeds/03-users.yaml +1 -0
  57. package/dist/database/system-data/fields/settings.yaml +11 -1
  58. package/dist/database/system-data/relations/index.d.ts +1 -1
  59. package/dist/emitter.d.ts +3 -4
  60. package/dist/emitter.js +2 -8
  61. package/dist/env.js +3 -0
  62. package/dist/exceptions/database/translate.js +1 -0
  63. package/dist/exceptions/index.d.ts +1 -0
  64. package/dist/exceptions/index.js +1 -0
  65. package/dist/exceptions/unsupported-media-type.d.ts +4 -0
  66. package/dist/exceptions/unsupported-media-type.js +10 -0
  67. package/dist/extensions.d.ts +14 -8
  68. package/dist/extensions.js +136 -69
  69. package/dist/logger.js +22 -1
  70. package/dist/middleware/authenticate.js +2 -1
  71. package/dist/middleware/extract-token.js +1 -1
  72. package/dist/middleware/rate-limiter.js +2 -1
  73. package/dist/services/assets.js +3 -3
  74. package/dist/services/authentication.d.ts +2 -2
  75. package/dist/services/authentication.js +7 -2
  76. package/dist/services/authorization.d.ts +2 -3
  77. package/dist/services/collections.d.ts +2 -2
  78. package/dist/services/collections.js +18 -18
  79. package/dist/services/fields.d.ts +2 -3
  80. package/dist/services/fields.js +19 -15
  81. package/dist/services/graphql.d.ts +3 -2
  82. package/dist/services/graphql.js +31 -5
  83. package/dist/services/import.d.ts +2 -2
  84. package/dist/services/import.js +2 -1
  85. package/dist/services/items.d.ts +2 -2
  86. package/dist/services/items.js +22 -18
  87. package/dist/services/mail/index.d.ts +2 -2
  88. package/dist/services/meta.d.ts +2 -2
  89. package/dist/services/payload.d.ts +2 -2
  90. package/dist/services/payload.js +7 -3
  91. package/dist/services/relations.d.ts +2 -2
  92. package/dist/services/server.d.ts +2 -2
  93. package/dist/services/server.js +1 -0
  94. package/dist/services/specifications.d.ts +2 -2
  95. package/dist/services/users.d.ts +2 -3
  96. package/dist/services/utils.d.ts +2 -2
  97. package/dist/types/ast.d.ts +1 -2
  98. package/dist/types/auth.d.ts +1 -3
  99. package/dist/types/index.d.ts +0 -3
  100. package/dist/types/index.js +0 -3
  101. package/dist/types/services.d.ts +1 -3
  102. package/dist/types/snapshot.d.ts +1 -2
  103. package/dist/utils/apply-query.d.ts +1 -2
  104. package/dist/utils/apply-query.js +1 -1
  105. package/dist/utils/apply-snapshot.d.ts +2 -1
  106. package/dist/utils/get-ast-from-query.d.ts +2 -3
  107. package/dist/utils/get-ip-from-req.d.ts +2 -0
  108. package/dist/utils/get-ip-from-req.js +24 -0
  109. package/dist/utils/get-local-type.js +1 -1
  110. package/dist/utils/get-permissions.d.ts +1 -2
  111. package/dist/utils/get-permissions.js +1 -1
  112. package/dist/utils/get-relation-type.d.ts +1 -1
  113. package/dist/utils/get-schema.d.ts +1 -2
  114. package/dist/utils/get-snapshot.d.ts +2 -1
  115. package/dist/utils/md.js +1 -1
  116. package/dist/utils/merge-permissions-for-share.d.ts +1 -2
  117. package/dist/utils/reduce-schema.d.ts +1 -2
  118. package/example.env +8 -0
  119. package/package.json +22 -15
  120. package/dist/cli/index.test.d.ts +0 -1
  121. package/dist/cli/index.test.js +0 -58
  122. package/dist/middleware/cache.test.d.ts +0 -1
  123. package/dist/middleware/cache.test.js +0 -62
  124. package/dist/tests/database/migrations/run.test.d.ts +0 -1
  125. package/dist/tests/database/migrations/run.test.js +0 -29
  126. package/dist/types/extensions.d.ts +0 -43
  127. package/dist/types/extensions.js +0 -2
  128. package/dist/types/relation.d.ts +0 -21
  129. package/dist/types/relation.js +0 -2
  130. package/dist/types/schema.d.ts +0 -32
  131. package/dist/types/schema.js +0 -2
  132. package/dist/utils/get-cache-key.test.d.ts +0 -1
  133. package/dist/utils/get-cache-key.test.js +0 -53
@@ -1,53 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const get_cache_key_1 = require("./get-cache-key");
4
- const restUrl = 'http://localhost/items/example';
5
- const graphQlUrl = 'http://localhost/graphql';
6
- const accountability = { user: '00000000-0000-0000-0000-000000000000' };
7
- const requests = [
8
- {
9
- name: 'as unauthenticated request',
10
- params: { originalUrl: restUrl },
11
- key: '17da8272c9a0ec6eea38a37d6d78bddeb7c79045',
12
- },
13
- {
14
- name: 'as authenticated request',
15
- params: { originalUrl: restUrl, accountability },
16
- key: '99a6394222a3d7d149ac1662fc2fff506932db58',
17
- },
18
- {
19
- name: 'a request with a fields query',
20
- params: { originalUrl: restUrl, sanitizedQuery: { fields: ['id', 'name'] } },
21
- key: 'aa6e2d8a78de4dfb4af6eaa230d1cd9b7d31ed19',
22
- },
23
- {
24
- name: 'a request with a filter query',
25
- params: { originalUrl: restUrl, sanitizedQuery: { filter: { name: { _eq: 'test' } } } },
26
- key: 'd7eb8970f0429e1cf85e12eb5bb8669f618b09d3',
27
- },
28
- {
29
- name: 'a GraphQL query request',
30
- params: { originalUrl: graphQlUrl, query: { query: 'query { test { id } }' } },
31
- key: '201731b75c627c60554512d819b6935b54c73814',
32
- },
33
- ];
34
- const cases = requests.map(({ name, params, key }) => [name, params, key]);
35
- describe('get cache key', () => {
36
- test.each(cases)('should create a cache key for %s', (_, params, key) => {
37
- expect((0, get_cache_key_1.getCacheKey)(params)).toEqual(key);
38
- });
39
- test('should create a unique key for each request', () => {
40
- const keys = requests.map((r) => r.key);
41
- const hasDuplicate = keys.some((key) => keys.indexOf(key) !== keys.lastIndexOf(key));
42
- expect(hasDuplicate).toBeFalsy();
43
- });
44
- test('should create a unique key for GraphQL requests with different variables', () => {
45
- const query = 'query Test ($name: String) { test (filter: { name: { _eq: $name } }) { id } }';
46
- const operationName = 'test';
47
- const variables1 = JSON.stringify({ name: 'test 1' });
48
- const variables2 = JSON.stringify({ name: 'test 2' });
49
- const req1 = { originalUrl: graphQlUrl, query: { query, operationName, variables: variables1 } };
50
- const req2 = { originalUrl: graphQlUrl, query: { query, operationName, variables: variables2 } };
51
- expect((0, get_cache_key_1.getCacheKey)(req1)).not.toEqual((0, get_cache_key_1.getCacheKey)(req2));
52
- });
53
- });