directus-template-cli 0.6.0-beta.2 → 0.7.0-beta.10

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 (114) hide show
  1. package/README.md +0 -14
  2. package/bin/dev.js +6 -0
  3. package/bin/run.js +5 -0
  4. package/dist/commands/apply.d.ts +17 -17
  5. package/dist/commands/apply.js +166 -174
  6. package/dist/commands/base.d.ts +15 -0
  7. package/dist/commands/base.js +45 -0
  8. package/dist/commands/extract.d.ts +16 -9
  9. package/dist/commands/extract.js +81 -100
  10. package/dist/commands/init.d.ts +42 -0
  11. package/dist/commands/init.js +241 -0
  12. package/dist/flags/common.d.ts +8 -7
  13. package/dist/flags/common.js +13 -11
  14. package/dist/index.js +1 -5
  15. package/dist/lib/constants.d.ts +18 -0
  16. package/dist/lib/constants.js +25 -6
  17. package/dist/lib/extract/extract-access.js +11 -15
  18. package/dist/lib/extract/extract-assets.js +20 -25
  19. package/dist/lib/extract/extract-collections.js +12 -16
  20. package/dist/lib/extract/extract-content.d.ts +1 -1
  21. package/dist/lib/extract/extract-content.js +17 -26
  22. package/dist/lib/extract/extract-dashboards.js +22 -28
  23. package/dist/lib/extract/extract-extensions.js +12 -16
  24. package/dist/lib/extract/extract-fields.js +12 -16
  25. package/dist/lib/extract/extract-files.js +15 -19
  26. package/dist/lib/extract/extract-flows.js +22 -28
  27. package/dist/lib/extract/extract-folders.js +15 -19
  28. package/dist/lib/extract/extract-permissions.js +12 -16
  29. package/dist/lib/extract/extract-policies.js +12 -16
  30. package/dist/lib/extract/extract-presets.js +12 -16
  31. package/dist/lib/extract/extract-relations.js +14 -18
  32. package/dist/lib/extract/extract-roles.js +15 -19
  33. package/dist/lib/extract/extract-schema.js +17 -21
  34. package/dist/lib/extract/extract-settings.js +12 -16
  35. package/dist/lib/extract/extract-translations.js +12 -16
  36. package/dist/lib/extract/extract-users.js +15 -19
  37. package/dist/lib/extract/index.d.ts +1 -6
  38. package/dist/lib/extract/index.js +47 -58
  39. package/dist/lib/init/config.d.ts +3 -0
  40. package/dist/lib/init/config.js +12 -0
  41. package/dist/lib/init/index.d.ts +10 -0
  42. package/dist/lib/init/index.js +192 -0
  43. package/dist/lib/init/types.d.ts +30 -0
  44. package/dist/lib/init/types.js +1 -0
  45. package/dist/lib/load/apply-flags.js +17 -23
  46. package/dist/lib/load/index.d.ts +1 -12
  47. package/dist/lib/load/index.js +40 -44
  48. package/dist/lib/load/load-access.js +15 -20
  49. package/dist/lib/load/load-collections.d.ts +2 -0
  50. package/dist/lib/load/load-collections.js +29 -32
  51. package/dist/lib/load/load-dashboards.js +19 -25
  52. package/dist/lib/load/load-data.js +43 -49
  53. package/dist/lib/load/load-extensions.js +30 -38
  54. package/dist/lib/load/load-files.js +20 -24
  55. package/dist/lib/load/load-flows.js +23 -29
  56. package/dist/lib/load/load-folders.js +16 -20
  57. package/dist/lib/load/load-permissions.js +13 -17
  58. package/dist/lib/load/load-policies.js +14 -18
  59. package/dist/lib/load/load-presets.js +14 -18
  60. package/dist/lib/load/load-relations.d.ts +2 -0
  61. package/dist/lib/load/load-relations.js +16 -18
  62. package/dist/lib/load/load-roles.js +19 -23
  63. package/dist/lib/load/load-settings.js +18 -21
  64. package/dist/lib/load/load-translations.js +14 -18
  65. package/dist/lib/load/load-users.js +21 -25
  66. package/dist/lib/load/update-required-fields.js +13 -17
  67. package/dist/lib/sdk.d.ts +1 -2
  68. package/dist/lib/sdk.js +27 -27
  69. package/dist/lib/types/extension.js +1 -2
  70. package/dist/lib/types.d.ts +18 -0
  71. package/dist/lib/types.js +1 -0
  72. package/dist/lib/utils/animated-bunny.d.ts +2 -0
  73. package/dist/lib/utils/animated-bunny.js +62 -0
  74. package/dist/lib/utils/auth.d.ts +8 -6
  75. package/dist/lib/utils/auth.js +48 -39
  76. package/dist/lib/utils/catch-error.js +8 -11
  77. package/dist/lib/utils/check-template.js +4 -8
  78. package/dist/lib/utils/chunk-array.js +1 -5
  79. package/dist/lib/utils/ensure-dir.d.ts +2 -0
  80. package/dist/lib/utils/ensure-dir.js +11 -0
  81. package/dist/lib/utils/filter-fields.js +1 -4
  82. package/dist/lib/utils/get-role-ids.d.ts +1 -1
  83. package/dist/lib/utils/get-role-ids.js +7 -12
  84. package/dist/lib/utils/get-template.js +33 -36
  85. package/dist/lib/utils/logger.js +11 -13
  86. package/dist/lib/utils/open-url.js +5 -8
  87. package/dist/lib/utils/parse-github-url.d.ts +19 -0
  88. package/dist/lib/utils/parse-github-url.js +89 -0
  89. package/dist/lib/utils/path.js +6 -10
  90. package/dist/lib/utils/protected-domains.js +1 -4
  91. package/dist/lib/utils/read-file.js +8 -12
  92. package/dist/lib/utils/read-templates.js +9 -15
  93. package/dist/lib/utils/sanitize-flags.d.ts +3 -0
  94. package/dist/lib/utils/sanitize-flags.js +4 -0
  95. package/dist/lib/utils/system-fields.js +19 -22
  96. package/dist/lib/utils/template-config.d.ts +16 -0
  97. package/dist/lib/utils/template-config.js +34 -0
  98. package/dist/lib/utils/template-defaults.d.ts +1 -1
  99. package/dist/lib/utils/template-defaults.js +5 -14
  100. package/dist/lib/utils/transform-github-url.js +1 -5
  101. package/dist/lib/utils/validate-url.js +3 -6
  102. package/dist/lib/utils/wait.d.ts +7 -0
  103. package/dist/lib/utils/wait.js +9 -0
  104. package/dist/lib/utils/write-to-file.js +8 -11
  105. package/dist/services/docker.d.ts +23 -0
  106. package/dist/services/docker.js +187 -0
  107. package/dist/services/github.d.ts +18 -0
  108. package/dist/services/github.js +88 -0
  109. package/dist/services/posthog.d.ts +37 -0
  110. package/dist/services/posthog.js +104 -0
  111. package/oclif.manifest.json +102 -23
  112. package/package.json +46 -29
  113. package/bin/dev +0 -17
  114. package/bin/run +0 -5
@@ -1,15 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const core_1 = require("@oclif/core");
5
- const constants_1 = require("../constants");
6
- const sdk_1 = require("../sdk");
7
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
8
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
9
- async function extractAccess(dir) {
10
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting access'));
1
+ import { ux } from '@oclif/core';
2
+ import { DIRECTUS_PINK } from '../constants.js';
3
+ import { api } from '../sdk.js';
4
+ import catchError from '../utils/catch-error.js';
5
+ import writeToFile from '../utils/write-to-file.js';
6
+ export default async function extractAccess(dir) {
7
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting access'));
11
8
  try {
12
- const response = await sdk_1.api.client.request(() => ({
9
+ const response = await api.client.request(() => ({
13
10
  method: 'GET',
14
11
  path: '/access?limit=-1',
15
12
  }));
@@ -17,11 +14,10 @@ async function extractAccess(dir) {
17
14
  // for (const access of response) {
18
15
  // delete access.id
19
16
  // }
20
- await (0, write_to_file_1.default)('access', response, dir);
17
+ await writeToFile('access', response, dir);
21
18
  }
22
19
  catch (error) {
23
- (0, catch_error_1.default)(error);
20
+ catchError(error);
24
21
  }
25
- core_1.ux.action.stop();
22
+ ux.action.stop();
26
23
  }
27
- exports.default = extractAccess;
@@ -1,46 +1,41 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.downloadAllFiles = void 0;
4
- const tslib_1 = require("tslib");
5
- const sdk_1 = require("@directus/sdk");
6
- const core_1 = require("@oclif/core");
7
- const node_fs_1 = tslib_1.__importDefault(require("node:fs"));
8
- const node_path_1 = tslib_1.__importDefault(require("node:path"));
9
- const constants_1 = require("../constants");
10
- const sdk_2 = require("../sdk");
11
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
1
+ import { readFiles } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import fs from 'node:fs';
4
+ import path from 'pathe';
5
+ import { DIRECTUS_PINK } from '../constants.js';
6
+ import { api } from '../sdk.js';
7
+ import catchError from '../utils/catch-error.js';
12
8
  async function getAssetList() {
13
- return sdk_2.api.client.request((0, sdk_1.readFiles)({ limit: -1 }));
9
+ return api.client.request(readFiles({ limit: -1 }));
14
10
  }
15
11
  async function downloadFile(file, dir) {
16
- const response = await sdk_2.api.client.request(() => ({
12
+ const response = await api.client.request(() => ({
17
13
  method: 'GET',
18
14
  path: `/assets/${file.id}`,
19
15
  }));
20
- const fullPath = node_path_1.default.join(dir, 'assets', file.filename_disk);
16
+ const fullPath = path.join(dir, 'assets', file.filename_disk);
21
17
  if (typeof response === 'string') {
22
- node_fs_1.default.writeFileSync(fullPath, response);
18
+ fs.writeFileSync(fullPath, response);
23
19
  }
24
20
  else {
25
21
  const data = await response.arrayBuffer();
26
- node_fs_1.default.writeFileSync(fullPath, Buffer.from(data));
22
+ fs.writeFileSync(fullPath, Buffer.from(data));
27
23
  }
28
24
  }
29
- async function downloadAllFiles(dir) {
30
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Downloading assets'));
25
+ export async function downloadAllFiles(dir) {
26
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Downloading assets'));
31
27
  try {
32
- const fullPath = node_path_1.default.join(dir, 'assets');
33
- if (node_path_1.default && !node_fs_1.default.existsSync(fullPath)) {
34
- node_fs_1.default.mkdirSync(fullPath, { recursive: true });
28
+ const fullPath = path.join(dir, 'assets');
29
+ if (path && !fs.existsSync(fullPath)) {
30
+ fs.mkdirSync(fullPath, { recursive: true });
35
31
  }
36
32
  const fileList = await getAssetList();
37
33
  await Promise.all(fileList.map(file => downloadFile(file, dir).catch(error => {
38
- (0, catch_error_1.default)(`Error downloading ${file.filename_disk}: ${error.message}`);
34
+ catchError(`Error downloading ${file.filename_disk}: ${error.message}`);
39
35
  })));
40
36
  }
41
37
  catch (error) {
42
- (0, catch_error_1.default)(error);
38
+ catchError(error);
43
39
  }
44
- core_1.ux.action.stop();
40
+ ux.action.stop();
45
41
  }
46
- exports.downloadAllFiles = downloadAllFiles;
@@ -1,25 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const sdk_1 = require("@directus/sdk");
5
- const core_1 = require("@oclif/core");
6
- const constants_1 = require("../constants");
7
- const sdk_2 = require("../sdk");
8
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
9
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readCollections } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import writeToFile from '../utils/write-to-file.js';
10
7
  /**
11
8
  * Extract collections from the Directus instance
12
9
  */
13
- async function extractCollections(dir) {
14
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting collections'));
10
+ export default async function extractCollections(dir) {
11
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting collections'));
15
12
  try {
16
- const response = await sdk_2.api.client.request((0, sdk_1.readCollections)());
13
+ const response = await api.client.request(readCollections());
17
14
  const collections = response.filter(collection => !collection.collection.startsWith('directus_'));
18
- await (0, write_to_file_1.default)('collections', collections, dir);
15
+ await writeToFile('collections', collections, dir);
19
16
  }
20
17
  catch (error) {
21
- (0, catch_error_1.default)(error);
18
+ catchError(error);
22
19
  }
23
- core_1.ux.action.stop();
20
+ ux.action.stop();
24
21
  }
25
- exports.default = extractCollections;
@@ -1 +1 @@
1
- export declare function extractContent(dir: string, excludeCollections?: string[]): Promise<void>;
1
+ export declare function extractContent(dir: string): Promise<void>;
@@ -1,42 +1,33 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractContent = void 0;
4
- const tslib_1 = require("tslib");
5
- const sdk_1 = require("@directus/sdk");
6
- const core_1 = require("@oclif/core");
7
- const constants_1 = require("../constants");
8
- const sdk_2 = require("../sdk");
9
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
10
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
11
- async function getCollections(excludeCollections) {
12
- const response = await sdk_2.api.client.request((0, sdk_1.readCollections)());
1
+ import { readCollections, readItems } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import writeToFile from '../utils/write-to-file.js';
7
+ async function getCollections() {
8
+ const response = await api.client.request(readCollections());
13
9
  return response
14
10
  .filter(item => !item.collection.startsWith('directus_', 0))
15
- .filter(item => item.schema !== null)
16
- .filter(item => !(excludeCollections === null || excludeCollections === void 0 ? void 0 : excludeCollections.includes(item.collection)))
11
+ .filter(item => item.schema != null)
17
12
  .map(i => i.collection);
18
13
  }
19
14
  async function getDataFromCollection(collection, dir) {
20
15
  try {
21
- const response = await sdk_2.api.client.request((0, sdk_1.readItems)(collection, { limit: -1 }));
22
- await (0, write_to_file_1.default)(`${collection}`, response, `${dir}/content/`);
16
+ const response = await api.client.request(readItems(collection, { limit: -1 }));
17
+ await writeToFile(`${collection}`, response, `${dir}/content/`);
23
18
  }
24
19
  catch (error) {
25
- (0, catch_error_1.default)(error);
20
+ catchError(error);
26
21
  }
27
22
  }
28
- async function extractContent(dir, excludeCollections) {
29
- const exclusionMessage = (excludeCollections === null || excludeCollections === void 0 ? void 0 : excludeCollections.length)
30
- ? ` (excluding ${excludeCollections.join(', ')})`
31
- : '';
32
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, `Extracting content${exclusionMessage}`));
23
+ export async function extractContent(dir) {
24
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting content'));
33
25
  try {
34
- const collections = await getCollections(excludeCollections);
26
+ const collections = await getCollections();
35
27
  await Promise.all(collections.map(collection => getDataFromCollection(collection, dir)));
36
28
  }
37
29
  catch (error) {
38
- (0, catch_error_1.default)(error);
30
+ catchError(error);
39
31
  }
40
- core_1.ux.action.stop();
32
+ ux.action.stop();
41
33
  }
42
- exports.extractContent = extractContent;
@@ -1,44 +1,38 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractPanels = exports.extractDashboards = void 0;
4
- const tslib_1 = require("tslib");
5
- const sdk_1 = require("@directus/sdk");
6
- const core_1 = require("@oclif/core");
7
- const constants_1 = require("../constants");
8
- const sdk_2 = require("../sdk");
9
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
10
- const filter_fields_1 = tslib_1.__importDefault(require("../utils/filter-fields"));
11
- const system_fields_1 = require("../utils/system-fields");
12
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readDashboards, readPanels } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import filterFields from '../utils/filter-fields.js';
7
+ import { directusDashboardFields, directusPanelFields } from '../utils/system-fields.js';
8
+ import writeToFile from '../utils/write-to-file.js';
13
9
  /**
14
10
  * Extract dashboards from the Directus instance
15
11
  */
16
- async function extractDashboards(dir) {
17
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting dashboards'));
12
+ export async function extractDashboards(dir) {
13
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting dashboards'));
18
14
  try {
19
- const response = await sdk_2.api.client.request((0, sdk_1.readDashboards)({ limit: -1 }));
20
- const dashboards = (0, filter_fields_1.default)(response, system_fields_1.directusDashboardFields);
21
- await (0, write_to_file_1.default)('dashboards', dashboards, dir);
15
+ const response = await api.client.request(readDashboards({ limit: -1 }));
16
+ const dashboards = filterFields(response, directusDashboardFields);
17
+ await writeToFile('dashboards', dashboards, dir);
22
18
  }
23
19
  catch (error) {
24
- (0, catch_error_1.default)(error);
20
+ catchError(error);
25
21
  }
26
- core_1.ux.action.stop();
22
+ ux.action.stop();
27
23
  }
28
- exports.extractDashboards = extractDashboards;
29
24
  /**
30
25
  * Extract panels from the Directus instance
31
26
  */
32
- async function extractPanels(dir) {
33
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting panels'));
27
+ export async function extractPanels(dir) {
28
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting panels'));
34
29
  try {
35
- const response = await sdk_2.api.client.request((0, sdk_1.readPanels)({ limit: -1 }));
36
- const panels = (0, filter_fields_1.default)(response, system_fields_1.directusPanelFields);
37
- await (0, write_to_file_1.default)('panels', panels, dir);
30
+ const response = await api.client.request(readPanels({ limit: -1 }));
31
+ const panels = filterFields(response, directusPanelFields);
32
+ await writeToFile('panels', panels, dir);
38
33
  }
39
34
  catch (error) {
40
- (0, catch_error_1.default)(error);
35
+ catchError(error);
41
36
  }
42
- core_1.ux.action.stop();
37
+ ux.action.stop();
43
38
  }
44
- exports.extractPanels = extractPanels;
@@ -1,24 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const sdk_1 = require("@directus/sdk");
5
- const core_1 = require("@oclif/core");
6
- const constants_1 = require("../constants");
7
- const sdk_2 = require("../sdk");
8
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
9
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readExtensions } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import writeToFile from '../utils/write-to-file.js';
10
7
  /**
11
8
  * Extract extensions from the API
12
9
  */
13
- async function extractExtensions(dir) {
14
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting extensions'));
10
+ export default async function extractExtensions(dir) {
11
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting extensions'));
15
12
  try {
16
- const response = await sdk_2.api.client.request((0, sdk_1.readExtensions)());
17
- await (0, write_to_file_1.default)('extensions', response, dir);
13
+ const response = await api.client.request(readExtensions());
14
+ await writeToFile('extensions', response, dir);
18
15
  }
19
16
  catch (error) {
20
- (0, catch_error_1.default)(error);
17
+ catchError(error);
21
18
  }
22
- core_1.ux.action.stop();
19
+ ux.action.stop();
23
20
  }
24
- exports.default = extractExtensions;
@@ -1,19 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const sdk_1 = require("@directus/sdk");
5
- const core_1 = require("@oclif/core");
6
- const constants_1 = require("../constants");
7
- const sdk_2 = require("../sdk");
8
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
9
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readFields } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import writeToFile from '../utils/write-to-file.js';
10
7
  /**
11
8
  * Extract fields from the Directus instance
12
9
  */
13
- async function extractFields(dir) {
14
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting fields'));
10
+ export default async function extractFields(dir) {
11
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting fields'));
15
12
  try {
16
- const response = await sdk_2.api.client.request((0, sdk_1.readFields)());
13
+ const response = await api.client.request(readFields());
17
14
  if (!Array.isArray(response)) {
18
15
  throw new TypeError('Unexpected response format');
19
16
  }
@@ -27,11 +24,10 @@ async function extractFields(dir) {
27
24
  }
28
25
  return i;
29
26
  });
30
- await (0, write_to_file_1.default)('fields', fields, dir);
27
+ await writeToFile('fields', fields, dir);
31
28
  }
32
29
  catch (error) {
33
- (0, catch_error_1.default)(error);
30
+ catchError(error);
34
31
  }
35
- core_1.ux.action.stop();
32
+ ux.action.stop();
36
33
  }
37
- exports.default = extractFields;
@@ -1,27 +1,23 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const sdk_1 = require("@directus/sdk");
5
- const core_1 = require("@oclif/core");
6
- const constants_1 = require("../constants");
7
- const sdk_2 = require("../sdk");
8
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
9
- const filter_fields_1 = tslib_1.__importDefault(require("../utils/filter-fields"));
10
- const system_fields_1 = require("../utils/system-fields");
11
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readFiles } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import filterFields from '../utils/filter-fields.js';
7
+ import { directusFileFields } from '../utils/system-fields.js';
8
+ import writeToFile from '../utils/write-to-file.js';
12
9
  /**
13
10
  * Extract files from the API
14
11
  */
15
- async function extractFiles(dir) {
16
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting files'));
12
+ export default async function extractFiles(dir) {
13
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting files'));
17
14
  try {
18
- const response = await sdk_2.api.client.request((0, sdk_1.readFiles)({ limit: -1 }));
19
- const files = (0, filter_fields_1.default)(response, system_fields_1.directusFileFields);
20
- await (0, write_to_file_1.default)('files', files, dir);
15
+ const response = await api.client.request(readFiles({ limit: -1 }));
16
+ const files = filterFields(response, directusFileFields);
17
+ await writeToFile('files', files, dir);
21
18
  }
22
19
  catch (error) {
23
- (0, catch_error_1.default)(error);
20
+ catchError(error);
24
21
  }
25
- core_1.ux.action.stop();
22
+ ux.action.stop();
26
23
  }
27
- exports.default = extractFiles;
@@ -1,44 +1,38 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractOperations = exports.extractFlows = void 0;
4
- const tslib_1 = require("tslib");
5
- const sdk_1 = require("@directus/sdk");
6
- const core_1 = require("@oclif/core");
7
- const constants_1 = require("../constants");
8
- const sdk_2 = require("../sdk");
9
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
10
- const filter_fields_1 = tslib_1.__importDefault(require("../utils/filter-fields"));
11
- const system_fields_1 = require("../utils/system-fields");
12
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readFlows, readOperations } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import filterFields from '../utils/filter-fields.js';
7
+ import { directusFlowFields, directusOperationFields } from '../utils/system-fields.js';
8
+ import writeToFile from '../utils/write-to-file.js';
13
9
  /**
14
10
  * Extract flows from the Directus instance
15
11
  */
16
- async function extractFlows(dir) {
17
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting flows'));
12
+ export async function extractFlows(dir) {
13
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting flows'));
18
14
  try {
19
- const response = await sdk_2.api.client.request((0, sdk_1.readFlows)({ limit: -1 }));
20
- const flows = (0, filter_fields_1.default)(response, system_fields_1.directusFlowFields);
21
- await (0, write_to_file_1.default)('flows', flows, dir);
15
+ const response = await api.client.request(readFlows({ limit: -1 }));
16
+ const flows = filterFields(response, directusFlowFields);
17
+ await writeToFile('flows', flows, dir);
22
18
  }
23
19
  catch (error) {
24
- (0, catch_error_1.default)(error);
20
+ catchError(error);
25
21
  }
26
- core_1.ux.action.stop();
22
+ ux.action.stop();
27
23
  }
28
- exports.extractFlows = extractFlows;
29
24
  /**
30
25
  * Extract operations from the Directus instance
31
26
  */
32
- async function extractOperations(dir) {
33
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting operations'));
27
+ export async function extractOperations(dir) {
28
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting operations'));
34
29
  try {
35
- const response = await sdk_2.api.client.request((0, sdk_1.readOperations)({ limit: -1 }));
36
- const operations = (0, filter_fields_1.default)(response, system_fields_1.directusOperationFields);
37
- await (0, write_to_file_1.default)('operations', operations, dir);
30
+ const response = await api.client.request(readOperations({ limit: -1 }));
31
+ const operations = filterFields(response, directusOperationFields);
32
+ await writeToFile('operations', operations, dir);
38
33
  }
39
34
  catch (error) {
40
- (0, catch_error_1.default)(error);
35
+ catchError(error);
41
36
  }
42
- core_1.ux.action.stop();
37
+ ux.action.stop();
43
38
  }
44
- exports.extractOperations = extractOperations;
@@ -1,27 +1,23 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const sdk_1 = require("@directus/sdk");
5
- const core_1 = require("@oclif/core");
6
- const constants_1 = require("../constants");
7
- const sdk_2 = require("../sdk");
8
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
9
- const filter_fields_1 = tslib_1.__importDefault(require("../utils/filter-fields"));
10
- const system_fields_1 = require("../utils/system-fields");
11
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readFolders } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import filterFields from '../utils/filter-fields.js';
7
+ import { directusFolderFields } from '../utils/system-fields.js';
8
+ import writeToFile from '../utils/write-to-file.js';
12
9
  /**
13
10
  * Extract folders from the Directus instance
14
11
  */
15
- async function extractFolders(dir) {
16
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting folders'));
12
+ export default async function extractFolders(dir) {
13
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting folders'));
17
14
  try {
18
- const response = await sdk_2.api.client.request((0, sdk_1.readFolders)({ limit: -1 }));
19
- const folders = (0, filter_fields_1.default)(response, system_fields_1.directusFolderFields);
20
- await (0, write_to_file_1.default)('folders', folders, dir);
15
+ const response = await api.client.request(readFolders({ limit: -1 }));
16
+ const folders = filterFields(response, directusFolderFields);
17
+ await writeToFile('folders', folders, dir);
21
18
  }
22
19
  catch (error) {
23
- (0, catch_error_1.default)(error);
20
+ catchError(error);
24
21
  }
25
- core_1.ux.action.stop();
22
+ ux.action.stop();
26
23
  }
27
- exports.default = extractFolders;
@@ -1,19 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const sdk_1 = require("@directus/sdk");
5
- const core_1 = require("@oclif/core");
6
- const constants_1 = require("../constants");
7
- const sdk_2 = require("../sdk");
8
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
9
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readPermissions } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import writeToFile from '../utils/write-to-file.js';
10
7
  /**
11
8
  * Extract Permissions from the API
12
9
  */
13
- async function extractPermissions(dir) {
14
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting permissions'));
10
+ export default async function extractPermissions(dir) {
11
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting permissions'));
15
12
  try {
16
- let response = await sdk_2.api.client.request((0, sdk_1.readPermissions)({
13
+ let response = await api.client.request(readPermissions({
17
14
  limit: -1,
18
15
  }));
19
16
  // Delete the id field from the permissions so we don't have to reset the autoincrement on the db
@@ -24,11 +21,10 @@ async function extractPermissions(dir) {
24
21
  delete i.id;
25
22
  return i;
26
23
  });
27
- await (0, write_to_file_1.default)('permissions', response, dir);
24
+ await writeToFile('permissions', response, dir);
28
25
  }
29
26
  catch (error) {
30
- (0, catch_error_1.default)(error);
27
+ catchError(error);
31
28
  }
32
- core_1.ux.action.stop();
29
+ ux.action.stop();
33
30
  }
34
- exports.default = extractPermissions;
@@ -1,30 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const sdk_1 = require("@directus/sdk");
5
- const core_1 = require("@oclif/core");
6
- const constants_1 = require("../constants");
7
- const sdk_2 = require("../sdk");
8
- const catch_error_1 = tslib_1.__importDefault(require("../utils/catch-error"));
9
- const write_to_file_1 = tslib_1.__importDefault(require("../utils/write-to-file"));
1
+ import { readPolicies } from '@directus/sdk';
2
+ import { ux } from '@oclif/core';
3
+ import { DIRECTUS_PINK } from '../constants.js';
4
+ import { api } from '../sdk.js';
5
+ import catchError from '../utils/catch-error.js';
6
+ import writeToFile from '../utils/write-to-file.js';
10
7
  /**
11
8
  * Extract policies from the API
12
9
  */
13
- async function extractPolicies(dir) {
14
- core_1.ux.action.start(core_1.ux.colorize(constants_1.DIRECTUS_PINK, 'Extracting policies'));
10
+ export default async function extractPolicies(dir) {
11
+ ux.action.start(ux.colorize(DIRECTUS_PINK, 'Extracting policies'));
15
12
  try {
16
- const response = await sdk_2.api.client.request((0, sdk_1.readPolicies)({ limit: -1 }));
13
+ const response = await api.client.request(readPolicies({ limit: -1 }));
17
14
  // Delete the id field from the permissions so we don't have to reset the autoincrement on the db
18
15
  for (const policies of response) {
19
16
  delete policies.users; // Alias Field
20
17
  delete policies.roles; // Alias Field
21
18
  delete policies.permissions; // Alias Field
22
19
  }
23
- await (0, write_to_file_1.default)('policies', response, dir);
20
+ await writeToFile('policies', response, dir);
24
21
  }
25
22
  catch (error) {
26
- (0, catch_error_1.default)(error);
23
+ catchError(error);
27
24
  }
28
- core_1.ux.action.stop();
25
+ ux.action.stop();
29
26
  }
30
- exports.default = extractPolicies;