directus 9.21.0 → 9.22.0

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 (117) hide show
  1. package/dist/app.js +9 -5
  2. package/dist/app.test.d.ts +1 -0
  3. package/dist/auth/drivers/openid.js +3 -1
  4. package/dist/cli/commands/bootstrap/index.js +2 -2
  5. package/dist/cli/commands/schema/apply.js +0 -2
  6. package/dist/cli/commands/schema/snapshot.js +0 -2
  7. package/dist/cli/commands/security/secret.js +2 -2
  8. package/dist/cli/utils/create-env/env-stub.liquid +3 -3
  9. package/dist/cli/utils/create-env/index.js +5 -8
  10. package/dist/constants.d.ts +1 -0
  11. package/dist/constants.js +2 -1
  12. package/dist/controllers/assets.js +9 -7
  13. package/dist/controllers/files.js +2 -1
  14. package/dist/controllers/utils.js +2 -2
  15. package/dist/database/helpers/fn/dialects/mssql.js +2 -1
  16. package/dist/database/helpers/fn/dialects/mysql.js +3 -2
  17. package/dist/database/helpers/fn/dialects/oracle.js +2 -1
  18. package/dist/database/helpers/fn/dialects/postgres.js +2 -1
  19. package/dist/database/helpers/fn/dialects/sqlite.js +2 -1
  20. package/dist/database/helpers/fn/types.d.ts +1 -0
  21. package/dist/database/helpers/fn/types.js +5 -4
  22. package/dist/database/helpers/index.d.ts +1 -1
  23. package/dist/database/helpers/schema/dialects/mssql.d.ts +6 -0
  24. package/dist/database/helpers/schema/dialects/mssql.js +14 -0
  25. package/dist/database/helpers/schema/dialects/mysql.d.ts +5 -0
  26. package/dist/database/helpers/schema/dialects/mysql.js +19 -0
  27. package/dist/database/helpers/schema/dialects/oracle.d.ts +1 -0
  28. package/dist/database/helpers/schema/dialects/oracle.js +3 -0
  29. package/dist/database/helpers/schema/index.d.ts +2 -2
  30. package/dist/database/helpers/schema/index.js +4 -4
  31. package/dist/database/helpers/schema/types.d.ts +5 -0
  32. package/dist/database/helpers/schema/types.js +13 -0
  33. package/dist/database/index.d.ts +6 -0
  34. package/dist/database/index.js +20 -1
  35. package/dist/database/migrations/20211007A-update-presets.js +2 -2
  36. package/dist/database/migrations/run.js +7 -31
  37. package/dist/database/run-ast.js +132 -6
  38. package/dist/database/system-data/fields/index.js +2 -1
  39. package/dist/env.js +3 -2
  40. package/dist/exceptions/range-not-satisfiable.d.ts +1 -1
  41. package/dist/extensions.d.ts +7 -1
  42. package/dist/extensions.js +41 -15
  43. package/dist/logger.js +27 -1
  44. package/dist/middleware/schema.js +1 -1
  45. package/dist/operations/request/index.d.ts +1 -2
  46. package/dist/operations/request/index.js +2 -2
  47. package/dist/services/assets.d.ts +4 -3
  48. package/dist/services/assets.js +13 -11
  49. package/dist/services/authentication.js +4 -3
  50. package/dist/services/authorization.js +1 -1
  51. package/dist/services/collections.js +7 -7
  52. package/dist/services/fields.d.ts +3 -2
  53. package/dist/services/fields.js +40 -20
  54. package/dist/services/files.d.ts +4 -3
  55. package/dist/services/files.js +92 -68
  56. package/dist/services/flows.d.ts +0 -2
  57. package/dist/services/flows.js +0 -14
  58. package/dist/services/flows.test.d.ts +1 -0
  59. package/dist/services/graphql/index.d.ts +5 -1
  60. package/dist/services/graphql/index.js +29 -31
  61. package/dist/services/import-export.d.ts +4 -3
  62. package/dist/services/items.js +7 -1
  63. package/dist/services/meta.js +2 -2
  64. package/dist/services/operations.d.ts +0 -2
  65. package/dist/services/operations.js +0 -12
  66. package/dist/services/operations.test.d.ts +1 -0
  67. package/dist/services/permissions.d.ts +0 -5
  68. package/dist/services/permissions.js +0 -25
  69. package/dist/services/permissions.test.d.ts +1 -0
  70. package/dist/services/relations.d.ts +2 -2
  71. package/dist/services/relations.js +24 -16
  72. package/dist/services/roles.js +0 -3
  73. package/dist/services/roles.test.d.ts +1 -0
  74. package/dist/services/server.js +8 -6
  75. package/dist/services/shares.js +2 -2
  76. package/dist/services/specifications.js +12 -1
  77. package/dist/services/users.js +10 -4
  78. package/dist/services/webhooks.d.ts +0 -2
  79. package/dist/services/webhooks.js +0 -10
  80. package/dist/services/webhooks.test.d.ts +1 -0
  81. package/dist/storage/get-storage-driver.d.ts +3 -0
  82. package/dist/storage/get-storage-driver.js +20 -0
  83. package/dist/storage/get-storage-driver.test.d.ts +1 -0
  84. package/dist/storage/index.d.ts +5 -0
  85. package/dist/storage/index.js +20 -0
  86. package/dist/storage/index.test.d.ts +1 -0
  87. package/dist/storage/register-drivers.d.ts +2 -0
  88. package/dist/storage/register-drivers.js +22 -0
  89. package/dist/storage/register-drivers.test.d.ts +1 -0
  90. package/dist/storage/register-locations.d.ts +2 -0
  91. package/dist/storage/register-locations.js +17 -0
  92. package/dist/storage/register-locations.test.d.ts +1 -0
  93. package/dist/utils/apply-query.d.ts +27 -3
  94. package/dist/utils/apply-query.js +180 -127
  95. package/dist/utils/apply-snapshot.js +32 -13
  96. package/dist/utils/dynamic-import.d.ts +1 -0
  97. package/dist/utils/dynamic-import.js +7 -0
  98. package/dist/utils/get-collection-from-alias.d.ts +6 -0
  99. package/dist/utils/get-collection-from-alias.js +15 -0
  100. package/dist/utils/get-collection-from-alias.test.d.ts +1 -0
  101. package/dist/utils/get-column-path.d.ts +14 -8
  102. package/dist/utils/get-column-path.js +24 -7
  103. package/dist/utils/get-column.d.ts +8 -1
  104. package/dist/utils/get-column.js +10 -3
  105. package/dist/utils/get-config-from-env.js +3 -2
  106. package/dist/utils/get-default-value.d.ts +1 -1
  107. package/dist/utils/get-schema.d.ts +6 -2
  108. package/dist/utils/get-schema.js +1 -1
  109. package/dist/utils/get-snapshot.js +1 -1
  110. package/dist/utils/parse-image-metadata.d.ts +3 -0
  111. package/dist/utils/parse-image-metadata.js +73 -0
  112. package/dist/utils/track.js +2 -2
  113. package/dist/utils/validate-env.js +3 -2
  114. package/dist/webhooks.js +2 -2
  115. package/package.json +18 -22
  116. package/dist/storage.d.ts +0 -3
  117. package/dist/storage.js +0 -61
package/dist/storage.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import { StorageManager } from '@directus/drive';
2
- declare const storage: StorageManager;
3
- export default storage;
package/dist/storage.js DELETED
@@ -1,61 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const drive_1 = require("@directus/drive");
7
- const drive_azure_1 = require("@directus/drive-azure");
8
- const drive_gcs_1 = require("@directus/drive-gcs");
9
- const drive_s3_1 = require("@directus/drive-s3");
10
- const env_1 = __importDefault(require("./env"));
11
- const get_config_from_env_1 = require("./utils/get-config-from-env");
12
- const utils_1 = require("@directus/shared/utils");
13
- const validate_env_1 = require("./utils/validate-env");
14
- (0, validate_env_1.validateEnv)(['STORAGE_LOCATIONS']);
15
- const storage = new drive_1.StorageManager(getStorageConfig());
16
- registerDrivers(storage);
17
- exports.default = storage;
18
- function getStorageConfig() {
19
- const config = {
20
- disks: {},
21
- };
22
- const locations = (0, utils_1.toArray)(env_1.default.STORAGE_LOCATIONS);
23
- locations.forEach((location) => {
24
- location = location.trim();
25
- const diskConfig = {
26
- driver: env_1.default[`STORAGE_${location.toUpperCase()}_DRIVER`],
27
- config: (0, get_config_from_env_1.getConfigFromEnv)(`STORAGE_${location.toUpperCase()}_`),
28
- };
29
- delete diskConfig.config.publicUrl;
30
- delete diskConfig.config.driver;
31
- config.disks[location] = diskConfig;
32
- });
33
- return config;
34
- }
35
- function registerDrivers(storage) {
36
- const usedDrivers = [];
37
- for (const [key, value] of Object.entries(env_1.default)) {
38
- if ((key.startsWith('STORAGE') && key.endsWith('DRIVER')) === false)
39
- continue;
40
- if (value && usedDrivers.includes(value) === false)
41
- usedDrivers.push(value);
42
- }
43
- usedDrivers.forEach((driver) => {
44
- const storageDriver = getStorageDriver(driver);
45
- if (storageDriver) {
46
- storage.registerDriver(driver, storageDriver);
47
- }
48
- });
49
- }
50
- function getStorageDriver(driver) {
51
- switch (driver) {
52
- case 'local':
53
- return drive_1.LocalFileSystemStorage;
54
- case 's3':
55
- return drive_s3_1.AmazonWebServicesS3Storage;
56
- case 'gcs':
57
- return drive_gcs_1.GoogleCloudStorage;
58
- case 'azure':
59
- return drive_azure_1.AzureBlobWebServicesStorage;
60
- }
61
- }