@directus/extensions-sdk 10.3.3 → 11.0.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.
@@ -1,4 +1,4 @@
1
- import { EXTENSION_LANGUAGES, EXTENSION_NAME_REGEX, EXTENSION_PKG_KEY, EXTENSION_TYPES, ExtensionManifest, HYBRID_EXTENSION_TYPES, } from '@directus/extensions';
1
+ import { EXTENSION_LANGUAGES, EXTENSION_PKG_KEY, EXTENSION_TYPES, ExtensionManifest, HYBRID_EXTENSION_TYPES, } from '@directus/extensions';
2
2
  import { isIn, isTypeIn } from '@directus/utils';
3
3
  import { pathToRelativeUrl } from '@directus/utils/node';
4
4
  import chalk from 'chalk';
@@ -129,7 +129,6 @@ export default async function add(options) {
129
129
  log(`Extension has not been modified.`, 'info');
130
130
  process.exit(1);
131
131
  }
132
- const oldName = extensionManifest.name.match(EXTENSION_NAME_REGEX)?.[1] ?? extensionManifest.name;
133
132
  const { type, name, language, convertName, extensionName, alternativeSource } = await inquirer.prompt([
134
133
  {
135
134
  type: 'list',
@@ -153,14 +152,14 @@ export default async function add(options) {
153
152
  type: 'input',
154
153
  name: 'convertName',
155
154
  message: 'Choose a name for the extension that is converted to an entry',
156
- default: oldName,
155
+ default: extensionManifest.name,
157
156
  validate: (name) => (name.length === 0 ? 'Entry name can not be empty.' : true),
158
157
  },
159
158
  {
160
159
  type: 'input',
161
160
  name: 'extensionName',
162
161
  message: 'Choose a name for the extension',
163
- default: ({ convertName }) => (convertName !== oldName ? oldName : null),
162
+ default: ({ convertName }) => convertName !== extensionManifest.name ? extensionManifest.name : null,
164
163
  validate: (name) => (name.length === 0 ? 'Extension name can not be empty.' : true),
165
164
  },
166
165
  {
@@ -218,8 +217,8 @@ export default async function add(options) {
218
217
  };
219
218
  const newExtensionManifest = {
220
219
  ...extensionManifest,
221
- name: EXTENSION_NAME_REGEX.test(extensionName) ? extensionName : `directus-extension-${extensionName}`,
222
- keywords: ['directus', 'directus-extension', `directus-custom-bundle`],
220
+ name: extensionName,
221
+ keywords: ['directus', 'directus-extension', 'directus-extension-bundle'],
223
222
  [EXTENSION_PKG_KEY]: newExtensionOptions,
224
223
  devDependencies: {
225
224
  ...extensionManifest.devDependencies,
@@ -1,4 +1,4 @@
1
- import { BUNDLE_EXTENSION_TYPES, EXTENSION_LANGUAGES, EXTENSION_NAME_REGEX, EXTENSION_PKG_KEY, EXTENSION_TYPES, HYBRID_EXTENSION_TYPES, } from '@directus/extensions';
1
+ import { BUNDLE_EXTENSION_TYPES, EXTENSION_LANGUAGES, EXTENSION_PKG_KEY, EXTENSION_TYPES, HYBRID_EXTENSION_TYPES, } from '@directus/extensions';
2
2
  import { isIn } from '@directus/utils';
3
3
  import chalk from 'chalk';
4
4
  import { execa } from 'execa';
@@ -36,14 +36,14 @@ export default async function create(type, name, options) {
36
36
  }
37
37
  }
38
38
  if (isIn(type, BUNDLE_EXTENSION_TYPES)) {
39
- await createPackageExtension({ type, name, targetDir, targetPath, install });
39
+ await createBundleExtension({ type, name, targetDir, targetPath, install });
40
40
  }
41
41
  else {
42
42
  const language = options.language ?? 'javascript';
43
- await createLocalExtension({ type, name, targetDir, targetPath, language, install });
43
+ await createExtension({ type, name, targetDir, targetPath, language, install });
44
44
  }
45
45
  }
46
- async function createPackageExtension({ type, name, targetDir, targetPath, install, }) {
46
+ async function createBundleExtension({ type, name, targetDir, targetPath, install, }) {
47
47
  const spinner = ora(chalk.bold('Scaffolding Directus extension...')).start();
48
48
  await fse.ensureDir(targetPath);
49
49
  await copyTemplate(type, targetPath);
@@ -58,7 +58,7 @@ async function createPackageExtension({ type, name, targetDir, targetPath, insta
58
58
  spinner.succeed(chalk.bold('Done'));
59
59
  log(getDoneMessage(type, targetDir, targetPath, packageManager, install));
60
60
  }
61
- async function createLocalExtension({ type, name, targetDir, targetPath, language, install, }) {
61
+ async function createExtension({ type, name, targetDir, targetPath, language, install, }) {
62
62
  if (!isLanguage(language)) {
63
63
  log(`Language ${chalk.bold(language)} is not supported. Available languages: ${EXTENSION_LANGUAGES.map((t) => chalk.bold.magenta(t)).join(', ')}.`, 'error');
64
64
  process.exit(1);
@@ -91,12 +91,13 @@ async function createLocalExtension({ type, name, targetDir, targetPath, languag
91
91
  }
92
92
  function getPackageManifest(name, options, deps) {
93
93
  const packageManifest = {
94
- name: EXTENSION_NAME_REGEX.test(name) ? name : `directus-extension-${name}`,
94
+ name: name,
95
95
  description: 'Please enter a description for your extension',
96
96
  icon: 'extension',
97
97
  version: '1.0.0',
98
- keywords: ['directus', 'directus-extension', `directus-custom-${options.type}`],
98
+ keywords: ['directus', 'directus-extension', `directus-extension-${options.type}`],
99
99
  type: 'module',
100
+ files: ['dist'],
100
101
  [EXTENSION_PKG_KEY]: options,
101
102
  scripts: {
102
103
  build: 'directus-extension build',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@directus/extensions-sdk",
3
- "version": "10.3.3",
3
+ "version": "11.0.0",
4
4
  "description": "A toolkit to develop extensions to extend Directus",
5
5
  "homepage": "https://directus.io",
6
6
  "repository": {
@@ -38,26 +38,26 @@
38
38
  "esbuild": "0.17.19",
39
39
  "execa": "7.2.0",
40
40
  "fs-extra": "11.2.0",
41
- "inquirer": "9.2.14",
41
+ "inquirer": "9.2.15",
42
42
  "ora": "6.3.1",
43
43
  "rollup": "3.29.4",
44
44
  "rollup-plugin-esbuild": "5.0.0",
45
45
  "rollup-plugin-styles": "4.0.0",
46
46
  "vite": "4.5.2",
47
- "vue": "3.4.19",
48
- "@directus/composables": "10.1.9",
47
+ "vue": "3.4.21",
48
+ "@directus/composables": "10.1.11",
49
49
  "@directus/constants": "11.0.3",
50
- "@directus/themes": "0.3.4",
51
- "@directus/types": "11.0.6",
52
- "@directus/extensions": "0.3.2",
53
- "@directus/utils": "11.0.5"
50
+ "@directus/extensions": "1.0.0",
51
+ "@directus/themes": "0.3.5",
52
+ "@directus/types": "11.0.7",
53
+ "@directus/utils": "11.0.6"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/fs-extra": "11.0.4",
57
57
  "@types/inquirer": "9.0.7",
58
- "@vitest/coverage-v8": "1.2.2",
58
+ "@vitest/coverage-v8": "1.3.1",
59
59
  "typescript": "5.3.3",
60
- "vitest": "1.2.2",
60
+ "vitest": "1.3.1",
61
61
  "@directus/tsconfig": "1.0.1"
62
62
  },
63
63
  "engines": {