diff --git a/api/package.json b/api/package.json index ff9587934a..1d28e0ae3e 100644 --- a/api/package.json +++ b/api/package.json @@ -1,6 +1,6 @@ { "name": "directus", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "GPL-3.0-only", "homepage": "https://github.com/directus/directus#readme", "description": "Directus is a real-time API and App dashboard for managing SQL database content.", @@ -60,7 +60,7 @@ "prepublishOnly": "npm run build" }, "engines": { - "node": ">=12.0.0" + "node": ">=12.20.0" }, "files": [ "dist", @@ -69,15 +69,15 @@ "example.env" ], "dependencies": { - "@directus/app": "9.0.0-rc.81", - "@directus/drive": "9.0.0-rc.81", - "@directus/drive-azure": "9.0.0-rc.81", - "@directus/drive-gcs": "9.0.0-rc.81", - "@directus/drive-s3": "9.0.0-rc.81", - "@directus/format-title": "9.0.0-rc.81", - "@directus/schema": "9.0.0-rc.81", - "@directus/shared": "9.0.0-rc.81", - "@directus/specs": "9.0.0-rc.81", + "@directus/app": "9.0.0-rc.83", + "@directus/drive": "9.0.0-rc.83", + "@directus/drive-azure": "9.0.0-rc.83", + "@directus/drive-gcs": "9.0.0-rc.83", + "@directus/drive-s3": "9.0.0-rc.83", + "@directus/format-title": "9.0.0-rc.83", + "@directus/schema": "9.0.0-rc.83", + "@directus/shared": "9.0.0-rc.83", + "@directus/specs": "9.0.0-rc.83", "@godaddy/terminus": "^4.9.0", "@rollup/plugin-alias": "^3.1.2", "@rollup/plugin-virtual": "^2.0.3", @@ -187,7 +187,7 @@ "@types/uuid-validate": "0.0.1", "copyfiles": "2.4.1", "cross-env": "7.0.3", - "ts-node-dev": "1.1.6", + "ts-node-dev": "1.1.7", "typescript": "4.3.4" } } diff --git a/api/src/cli/commands/bootstrap/index.ts b/api/src/cli/commands/bootstrap/index.ts index ae9d415030..af305fcc6b 100644 --- a/api/src/cli/commands/bootstrap/index.ts +++ b/api/src/cli/commands/bootstrap/index.ts @@ -6,8 +6,9 @@ import logger from '../../../logger'; import { getSchema } from '../../../utils/get-schema'; import { RolesService, UsersService, SettingsService } from '../../../services'; import getDatabase, { isInstalled, hasDatabaseConnection } from '../../../database'; +import { SchemaOverview } from '../../../types'; -export default async function bootstrap(): Promise { +export default async function bootstrap({ skipAdminInit }: { skipAdminInit?: boolean }): Promise { logger.info('Initializing bootstrap...'); if ((await isDatabaseAvailable()) === false) { @@ -27,29 +28,12 @@ export default async function bootstrap(): Promise { const schema = await getSchema(); - logger.info('Setting up first admin role...'); - const rolesService = new RolesService({ schema }); - const role = await rolesService.createOne({ name: 'Admin', admin_access: true }); - - logger.info('Adding first admin user...'); - const usersService = new UsersService({ schema }); - - let adminEmail = env.ADMIN_EMAIL; - - if (!adminEmail) { - logger.info('No admin email provided. Defaulting to "admin@example.com"'); - adminEmail = 'admin@example.com'; + if (skipAdminInit == null) { + await createDefaultAdmin(schema); + } else { + logger.info('Skipping creation of default Admin user and role...'); } - let adminPassword = env.ADMIN_PASSWORD; - - if (!adminPassword) { - adminPassword = nanoid(12); - logger.info(`No admin password provided. Defaulting to "${adminPassword}"`); - } - - await usersService.createOne({ email: adminEmail, password: adminPassword, role }); - if (env.PROJECT_NAME && typeof env.PROJECT_NAME === 'string' && env.PROJECT_NAME.length > 0) { const settingsService = new SettingsService({ schema }); await settingsService.upsertSingleton({ project_name: env.PROJECT_NAME }); @@ -78,3 +62,28 @@ async function isDatabaseAvailable() { return false; } + +async function createDefaultAdmin(schema: SchemaOverview) { + logger.info('Setting up first admin role...'); + const rolesService = new RolesService({ schema }); + const role = await rolesService.createOne({ name: 'Admin', admin_access: true }); + + logger.info('Adding first admin user...'); + const usersService = new UsersService({ schema }); + + let adminEmail = env.ADMIN_EMAIL; + + if (!adminEmail) { + logger.info('No admin email provided. Defaulting to "admin@example.com"'); + adminEmail = 'admin@example.com'; + } + + let adminPassword = env.ADMIN_PASSWORD; + + if (!adminPassword) { + adminPassword = nanoid(12); + logger.info(`No admin password provided. Defaulting to "${adminPassword}"`); + } + + await usersService.createOne({ email: adminEmail, password: adminPassword, role }); +} diff --git a/api/src/cli/index.ts b/api/src/cli/index.ts index c2d6177d25..6e657020ef 100644 --- a/api/src/cli/index.ts +++ b/api/src/cli/index.ts @@ -63,7 +63,11 @@ rolesCommand program.command('count ').description('Count the amount of items in a given collection').action(count); -program.command('bootstrap').description('Initialize or update the database').action(bootstrap); +program + .command('bootstrap') + .description('Initialize or update the database') + .option('--skipAdminInit', 'Skips the creation of the default Admin Role and User') + .action(bootstrap); program.parseAsync(process.argv).catch((err) => { console.error(err); diff --git a/api/src/services/files.ts b/api/src/services/files.ts index 25f7664389..9b9bdc6780 100644 --- a/api/src/services/files.ts +++ b/api/src/services/files.ts @@ -190,7 +190,7 @@ export class FilesService extends ItemsService { * Delete multiple files */ async deleteMany(keys: PrimaryKey[], opts?: MutationOptions): Promise { - const files = await super.readMany(keys, { fields: ['id', 'storage'] }); + const files = await super.readMany(keys, { fields: ['id', 'storage'], limit: -1 }); if (!files) { throw new ForbiddenException(); diff --git a/app/package.json b/app/package.json index 3a68e8298d..9067dd14e8 100644 --- a/app/package.json +++ b/app/package.json @@ -1,6 +1,6 @@ { "name": "@directus/app", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "private": false, "description": "Directus is an Open-Source Headless CMS & API for Managing Custom Databases", "author": "Rijk van Zanten ", @@ -28,10 +28,10 @@ }, "gitHead": "24621f3934dc77eb23441331040ed13c676ceffd", "devDependencies": { - "@directus/docs": "9.0.0-rc.81", - "@directus/extension-sdk": "9.0.0-rc.81", - "@directus/format-title": "9.0.0-rc.81", - "@directus/shared": "9.0.0-rc.81", + "@directus/docs": "9.0.0-rc.83", + "@directus/extension-sdk": "9.0.0-rc.83", + "@directus/format-title": "9.0.0-rc.83", + "@directus/shared": "9.0.0-rc.83", "@fullcalendar/core": "5.8.0", "@fullcalendar/daygrid": "5.8.0", "@fullcalendar/interaction": "5.8.0", diff --git a/app/src/components/v-form/v-form.vue b/app/src/components/v-form/v-form.vue index 0b97f248ba..2e45e19f4d 100644 --- a/app/src/components/v-form/v-form.vue +++ b/app/src/components/v-form/v-form.vue @@ -204,7 +204,13 @@ export default defineComponent({ throw new Error('[v-form]: You need to pass either the collection or fields prop.'); }); - const { formFields } = useFormFields(fields); + const fieldsInGroup = computed(() => + fields.value.filter( + (field) => field.meta?.group === props.group || (props.group === null && isNil(field.meta?.group)) + ) + ); + + const { formFields } = useFormFields(fieldsInGroup); const formFieldsParsed = computed(() => { const blockPrimaryKey = (field: Field) => { @@ -224,13 +230,7 @@ export default defineComponent({ return formFields.value.map((field) => blockPrimaryKey(field)); }); - const formFieldsInGroup = computed(() => - formFieldsParsed.value.filter( - (field) => field.meta?.group === props.group || (props.group === null && isNil(field.meta?.group)) - ) - ); - - return { formFields: formFieldsInGroup, isDisabled, getFieldsForGroup }; + return { formFields: formFieldsParsed, isDisabled, getFieldsForGroup }; function isDisabled(field: Field) { return ( @@ -242,7 +242,7 @@ export default defineComponent({ } function getFieldsForGroup(group: null | number): Field[] { - const fieldsInGroup: Field[] = formFieldsParsed.value.filter( + const fieldsInGroup: Field[] = fields.value.filter( (field) => field.meta?.group === group || (group === null && isNil(field.meta)) ); diff --git a/app/src/lang/translations/bg-BG.yaml b/app/src/lang/translations/bg-BG.yaml index eccd8fe234..7ab3a2ed81 100644 --- a/app/src/lang/translations/bg-BG.yaml +++ b/app/src/lang/translations/bg-BG.yaml @@ -865,7 +865,6 @@ template: Шаблон translation: Превод value: Стойност view_project: Преглед на проект -weeks: { } report_error: Докладване на грешка interfaces: presentation-links: diff --git a/app/src/lang/translations/he-IL.yaml b/app/src/lang/translations/he-IL.yaml index 7bd736482b..420c2735aa 100644 --- a/app/src/lang/translations/he-IL.yaml +++ b/app/src/lang/translations/he-IL.yaml @@ -1,8 +1,27 @@ --- edit_field: ערוך שדה +half_width: חצי עמוד full_width: רוחב מלא +fill_width: עמוד מלא add_field: הוסף שדה +role_name: שם תפקיד +branch: ענף +exclusive: בלעדי +children: ילדים +edited: ערך נערך +required: שדה חובה +create_preset: יצירת הגדרה מראש +create_role: צור תפקיד +create_user: צור משתמש +create_webhook: צור Webhook +invite_users: הזמן משתמשים +invite: הזמן +public: פומבי +not_allowed: לא מורשה directus_version: גרסת דירקטוס +node_version: Node Version +node_uptime: Node Uptime +os_type: OS Type title: כותרת checksum: מחרוזת בדיקה users: משתמשים @@ -49,6 +68,7 @@ fields: status: סטטוס role: תפקיד directus_roles: + name: שם תפקיד description: תיאור comment: הערה description: תיאור @@ -64,8 +84,19 @@ interfaces: displays: collection: collection: מאגר + mime-type: + mime-type: MIME Type + rating: + rating: דירוג + simple: פשוט user: avatar: צלמית + both: שניהם layouts: cards: title: כותרת + subtitle: כותרת משנית + tabular: + fields: שדות + calendar: + calendar: לוח שנה diff --git a/app/src/modules/settings/routes/data-model/field-detail/store.ts b/app/src/modules/settings/routes/data-model/field-detail/store.ts index 5dba1b26b3..1e67803d54 100644 --- a/app/src/modules/settings/routes/data-model/field-detail/store.ts +++ b/app/src/modules/settings/routes/data-model/field-detail/store.ts @@ -700,7 +700,7 @@ function initLocalStore(collection: string, field: string, type: typeof localTyp if (type === 'files') { nextTick(() => { - state.relations[1].related_collection = state.relations[1].related_collection ?? 'directus_files'; + state.relations[1].related_collection = state.relations[1].related_collection || 'directus_files'; }); } diff --git a/changelog.md b/changelog.md index 6bf8571076..61127d464f 100644 --- a/changelog.md +++ b/changelog.md @@ -2,6 +2,44 @@ _Changes marked with a :warning: contain potential breaking changes depending on your use of the package._ +## v9.0.0-rc.82 (June 28, 2021) + +### :sparkles: New Features + +- **App** + - [#6553](https://github.com/directus/directus/pull/6553) Add support for field grouping ([@rijkvanzanten](https://github.com/rijkvanzanten)) +- **Extensions** + - [#6548](https://github.com/directus/directus/pull/6548) Add directus-extension CLI to extension-sdk ([@nickrum](https://github.com/nickrum)) +- **sdk** + - [#6538](https://github.com/directus/directus/pull/6538) Adds request and response interceptors on Axios transport ([@WoLfulus](https://github.com/WoLfulus)) + +### :rocket: Improvements + +- **API** + - [#6541](https://github.com/directus/directus/pull/6541) Pass on errors thrown in MailService ([@luanmm](https://github.com/luanmm)) +- **App** + - [#6215](https://github.com/directus/directus/pull/6215) Added escaping on file paths including "\u" ([@skizer](https://github.com/skizer)) + +### :bug: Bug Fixes + +- **App** + - [#6555](https://github.com/directus/directus/pull/6555) Fix auto-fill of directus_files in relational setup ([@rijkvanzanten](https://github.com/rijkvanzanten)) + - [#6530](https://github.com/directus/directus/pull/6530) Fix translations interface options crashing the App ([@nickrum](https://github.com/nickrum)) +- **API** + - [#6534](https://github.com/directus/directus/pull/6534) Fix extension loading when PUBLIC_URL is absolute without origin ([@nickrum](https://github.com/nickrum)) + - [#6516](https://github.com/directus/directus/pull/6516) Changed filesize to bigint for large files ([@Enhed](https://github.com/Enhed)) +- **Extensions** + - [#6534](https://github.com/directus/directus/pull/6534) Fix extension loading when PUBLIC_URL is absolute without origin ([@nickrum](https://github.com/nickrum)) + +### :package: Dependency Updates + +- [#6547](https://github.com/directus/directus/pull/6547) update typescript-eslint monorepo to v4.28.1 ([@renovate[bot]](https://github.com/apps/renovate)) +- [#6546](https://github.com/directus/directus/pull/6546) update dependency jest to v27.0.6 ([@renovate[bot]](https://github.com/apps/renovate)) +- [#6520](https://github.com/directus/directus/pull/6520) update dependency @vitejs/plugin-vue to v1.2.4 ([@renovate[bot]](https://github.com/apps/renovate)) +- [#6518](https://github.com/directus/directus/pull/6518) update dependency simple-git-hooks to v2.5.1 ([@renovate[bot]](https://github.com/apps/renovate)) +- [#6498](https://github.com/directus/directus/pull/6498) update dependency commander to v8 ([@renovate[bot]](https://github.com/apps/renovate)) + + ## v9.0.0-rc.81 (June 26, 2021) ### :rocket: Improvements diff --git a/docs/guides/installation/cli.md b/docs/guides/installation/cli.md index f9dc9708b5..ba08ca95d4 100644 --- a/docs/guides/installation/cli.md +++ b/docs/guides/installation/cli.md @@ -5,7 +5,7 @@ Directus requires two things to run: [Node.js](https://nodejs.dev) and a Database. For both these system requirements, we aim to support the current LTS release (and newer). -To run Directus, you currently need Node 12.12 or newer, and one of the following databases: +To run Directus, you currently need Node 12.20 or newer, and one of the following databases: | Database | Version | | ------------- | ------- | diff --git a/docs/package.json b/docs/package.json index 9dc1753887..9116dde907 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,7 +1,7 @@ { "name": "@directus/docs", "private": false, - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "", "main": "dist/index.js", "scripts": { diff --git a/docs/reference/command-line-interface.md b/docs/reference/command-line-interface.md index fbbca43d32..6f09ce078f 100644 --- a/docs/reference/command-line-interface.md +++ b/docs/reference/command-line-interface.md @@ -40,6 +40,13 @@ information. ::: +::: tip Skip Admin User/Role + +You can pass the `--skipAdminInit` option to `bootstrap`, if you're creating your Admin role/user in another way (with a +custom migration or an external service, for example). + +::: + ### Install the Database ``` diff --git a/lerna.json b/lerna.json index 1ea25918c0..23fe47ce94 100644 --- a/lerna.json +++ b/lerna.json @@ -5,7 +5,7 @@ "docs", "api" ], - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "command": { "bootstrap": { "npmClientArgs": [ diff --git a/package-lock.json b/package-lock.json index c80269082c..09fc41da96 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58,18 +58,18 @@ }, "api": { "name": "directus", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "GPL-3.0-only", "dependencies": { - "@directus/app": "9.0.0-rc.81", - "@directus/drive": "9.0.0-rc.81", - "@directus/drive-azure": "9.0.0-rc.81", - "@directus/drive-gcs": "9.0.0-rc.81", - "@directus/drive-s3": "9.0.0-rc.81", - "@directus/format-title": "9.0.0-rc.81", - "@directus/schema": "9.0.0-rc.81", - "@directus/shared": "9.0.0-rc.81", - "@directus/specs": "9.0.0-rc.81", + "@directus/app": "9.0.0-rc.83", + "@directus/drive": "9.0.0-rc.83", + "@directus/drive-azure": "9.0.0-rc.83", + "@directus/drive-gcs": "9.0.0-rc.83", + "@directus/drive-s3": "9.0.0-rc.83", + "@directus/format-title": "9.0.0-rc.83", + "@directus/schema": "9.0.0-rc.83", + "@directus/shared": "9.0.0-rc.83", + "@directus/specs": "9.0.0-rc.83", "@godaddy/terminus": "^4.9.0", "@rollup/plugin-alias": "^3.1.2", "@rollup/plugin-virtual": "^2.0.3", @@ -166,11 +166,11 @@ "@types/uuid-validate": "0.0.1", "copyfiles": "2.4.1", "cross-env": "7.0.3", - "ts-node-dev": "1.1.6", + "ts-node-dev": "1.1.7", "typescript": "4.3.4" }, "engines": { - "node": ">=12.0.0" + "node": ">=12.20.0" }, "optionalDependencies": { "@keyv/redis": "^2.1.2", @@ -292,12 +292,12 @@ }, "app": { "name": "@directus/app", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "devDependencies": { - "@directus/docs": "9.0.0-rc.81", - "@directus/extension-sdk": "9.0.0-rc.81", - "@directus/format-title": "9.0.0-rc.81", - "@directus/shared": "9.0.0-rc.81", + "@directus/docs": "9.0.0-rc.83", + "@directus/extension-sdk": "9.0.0-rc.83", + "@directus/format-title": "9.0.0-rc.83", + "@directus/shared": "9.0.0-rc.83", "@fullcalendar/core": "5.8.0", "@fullcalendar/daygrid": "5.8.0", "@fullcalendar/interaction": "5.8.0", @@ -383,7 +383,7 @@ }, "docs": { "name": "@directus/docs", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "ISC", "devDependencies": { "directory-tree": "2.2.9", @@ -43085,9 +43085,9 @@ } }, "node_modules/rollup": { - "version": "2.52.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.52.3.tgz", - "integrity": "sha512-QF3Sju8Kl2z0osI4unyOLyUudyhOMK6G0AeqJWgfiyigqLAlnNrfBcDWDx+f1cqn+JU2iIYVkDrgQ6/KtwEfrg==", + "version": "2.52.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.52.4.tgz", + "integrity": "sha512-AXgUxxWXyGfsj8GKleR1k8KsG8G+7ZZDRU9RZb9PnLGSyTqI/1qf/+QSp1hRaR40j4yfBCKXs5khtGKiFwihfg==", "bin": { "rollup": "dist/bin/rollup" }, @@ -48604,13 +48604,12 @@ } }, "node_modules/ts-node-dev": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/ts-node-dev/-/ts-node-dev-1.1.6.tgz", - "integrity": "sha512-RTUi7mHMNQospArGz07KiraQcdgUVNXKsgO2HAi7FoiyPMdTDqdniB6K1dqyaIxT7c9v/VpSbfBZPS6uVpaFLQ==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/ts-node-dev/-/ts-node-dev-1.1.7.tgz", + "integrity": "sha512-/YvByJdIw/p88RXmaRB3Kkk+PiUP7g/EAbBvQjDIG+kkm0CMvhdHSB21yEiws22Uls4uFAfCiuEZM4929yjWjg==", "dev": true, "dependencies": { "chokidar": "^3.5.1", - "dateformat": "~1.0.4-1.2.3", "dynamic-dedupe": "^0.3.0", "minimist": "^1.2.5", "mkdirp": "^1.0.4", @@ -48638,223 +48637,6 @@ } } }, - "node_modules/ts-node-dev/node_modules/camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "dependencies": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/dateformat": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", - "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", - "dev": true, - "dependencies": { - "get-stdin": "^4.0.1", - "meow": "^3.3.0" - }, - "bin": { - "dateformat": "bin/cli.js" - }, - "engines": { - "node": "*" - } - }, - "node_modules/ts-node-dev/node_modules/find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "dependencies": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "dependencies": { - "repeating": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "dependencies": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/ts-node-dev/node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "dependencies": { - "error-ex": "^1.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "dependencies": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "dependencies": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "dependencies": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/ts-node-dev/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -48867,51 +48649,6 @@ "rimraf": "bin.js" } }, - "node_modules/ts-node-dev/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/ts-node-dev/node_modules/strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "dependencies": { - "is-utf8": "^0.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "dependencies": { - "get-stdin": "^4.0.1" - }, - "bin": { - "strip-indent": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ts-node-dev/node_modules/trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/ts-node-dev/node_modules/ts-node": { "version": "9.1.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", @@ -53594,11 +53331,11 @@ }, "packages/cli": { "name": "@directus/cli", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "MIT", "dependencies": { - "@directus/format-title": "9.0.0-rc.81", - "@directus/sdk": "9.0.0-rc.81", + "@directus/format-title": "9.0.0-rc.83", + "@directus/sdk": "9.0.0-rc.83", "@types/yargs": "^17.0.0", "app-module-path": "^2.2.0", "chalk": "^4.1.0", @@ -53780,7 +53517,7 @@ } }, "packages/create-directus-project": { - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "GPL-3.0-only", "dependencies": { "chalk": "^4.1.1", @@ -53816,7 +53553,7 @@ }, "packages/drive": { "name": "@directus/drive", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "MIT", "dependencies": { "fs-extra": "^10.0.0", @@ -53835,11 +53572,11 @@ }, "packages/drive-azure": { "name": "@directus/drive-azure", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "MIT", "dependencies": { "@azure/storage-blob": "^12.6.0", - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "normalize-path": "^3.0.0" }, "devDependencies": { @@ -53871,10 +53608,10 @@ }, "packages/drive-gcs": { "name": "@directus/drive-gcs", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "MIT", "dependencies": { - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "@google-cloud/storage": "^5.8.5", "normalize-path": "^3.0.0" }, @@ -53893,10 +53630,10 @@ }, "packages/drive-s3": { "name": "@directus/drive-s3", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "MIT", "dependencies": { - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "aws-sdk": "^2.928.0", "normalize-path": "^3.0.0" }, @@ -53943,9 +53680,9 @@ }, "packages/extension-sdk": { "name": "@directus/extension-sdk", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "dependencies": { - "@directus/shared": "9.0.0-rc.81", + "@directus/shared": "9.0.0-rc.83", "@rollup/plugin-commonjs": "^19.0.0", "@rollup/plugin-node-resolve": "^13.0.0", "@vue/compiler-sfc": "^3.1.1", @@ -53962,6 +53699,9 @@ "npm-run-all": "4.1.5", "rimraf": "3.0.2", "typescript": "4.3.4" + }, + "engines": { + "node": ">=12.20.0" } }, "packages/extension-sdk/node_modules/commander": { @@ -53974,14 +53714,14 @@ }, "packages/format-title": { "name": "@directus/format-title", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "MIT", "devDependencies": { "@rollup/plugin-commonjs": "19.0.0", "@rollup/plugin-json": "4.1.0", "@rollup/plugin-node-resolve": "13.0.0", "rimraf": "3.0.2", - "rollup": "2.52.3", + "rollup": "2.52.4", "rollup-plugin-sourcemaps": "0.6.3", "rollup-plugin-terser": "7.0.2", "rollup-plugin-typescript2": "0.30.0", @@ -53993,7 +53733,7 @@ }, "packages/gatsby-source-directus": { "name": "@directus/gatsby-source-directus", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "MIT", "dependencies": { "@directus/sdk-js": "9.0.0-rc.53", @@ -57715,7 +57455,7 @@ }, "packages/schema": { "name": "@directus/schema", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "GPL-3.0", "dependencies": { "knex-schema-inspector": "^1.3.0", @@ -57728,7 +57468,7 @@ }, "packages/sdk": { "name": "@directus/sdk", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "MIT", "dependencies": { "axios": "^0.21.1" @@ -57746,7 +57486,7 @@ "nock": "13.1.0", "npm-run-all": "4.1.5", "rimraf": "3.0.2", - "rollup": "2.52.3", + "rollup": "2.52.4", "rollup-plugin-copy": "3.4.0", "rollup-plugin-sourcemaps": "0.6.3", "rollup-plugin-terser": "7.0.2", @@ -57930,7 +57670,7 @@ }, "packages/shared": { "name": "@directus/shared", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "dependencies": { "fs-extra": "10.0.0", "vue": "3.1.2" @@ -57956,7 +57696,7 @@ }, "packages/specs": { "name": "@directus/specs", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "license": "GPL-3.0", "dependencies": { "openapi3-ts": "^2.0.1" @@ -59720,10 +59460,10 @@ "@directus/app": { "version": "file:app", "requires": { - "@directus/docs": "9.0.0-rc.81", - "@directus/extension-sdk": "9.0.0-rc.81", - "@directus/format-title": "9.0.0-rc.81", - "@directus/shared": "9.0.0-rc.81", + "@directus/docs": "9.0.0-rc.83", + "@directus/extension-sdk": "9.0.0-rc.83", + "@directus/format-title": "9.0.0-rc.83", + "@directus/shared": "9.0.0-rc.83", "@fullcalendar/core": "5.8.0", "@fullcalendar/daygrid": "5.8.0", "@fullcalendar/interaction": "5.8.0", @@ -59800,8 +59540,8 @@ "@directus/cli": { "version": "file:packages/cli", "requires": { - "@directus/format-title": "9.0.0-rc.81", - "@directus/sdk": "9.0.0-rc.81", + "@directus/format-title": "9.0.0-rc.83", + "@directus/sdk": "9.0.0-rc.83", "@types/figlet": "1.5.1", "@types/fs-extra": "9.0.11", "@types/jest": "26.0.23", @@ -60077,7 +59817,7 @@ "version": "file:packages/drive-azure", "requires": { "@azure/storage-blob": "^12.6.0", - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "@types/fs-extra": "9.0.11", "@types/jest": "26.0.23", "@types/node": "15.12.2", @@ -60107,7 +59847,7 @@ "@directus/drive-gcs": { "version": "file:packages/drive-gcs", "requires": { - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "@google-cloud/storage": "^5.8.5", "@lukeed/uuid": "2.0.0", "@types/fs-extra": "9.0.11", @@ -60125,7 +59865,7 @@ "@directus/drive-s3": { "version": "file:packages/drive-s3", "requires": { - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "@lukeed/uuid": "2.0.0", "@types/fs-extra": "9.0.11", "@types/jest": "26.0.23", @@ -60157,7 +59897,7 @@ "@directus/extension-sdk": { "version": "file:packages/extension-sdk", "requires": { - "@directus/shared": "9.0.0-rc.81", + "@directus/shared": "9.0.0-rc.83", "@rollup/plugin-commonjs": "^19.0.0", "@rollup/plugin-node-resolve": "^13.0.0", "@vue/compiler-sfc": "^3.1.1", @@ -60185,7 +59925,7 @@ "@rollup/plugin-json": "4.1.0", "@rollup/plugin-node-resolve": "13.0.0", "rimraf": "3.0.2", - "rollup": "2.52.3", + "rollup": "2.52.4", "rollup-plugin-sourcemaps": "0.6.3", "rollup-plugin-terser": "7.0.2", "rollup-plugin-typescript2": "0.30.0", @@ -62984,7 +62724,7 @@ "nock": "13.1.0", "npm-run-all": "4.1.5", "rimraf": "3.0.2", - "rollup": "2.52.3", + "rollup": "2.52.4", "rollup-plugin-copy": "3.4.0", "rollup-plugin-sourcemaps": "0.6.3", "rollup-plugin-terser": "7.0.2", @@ -75381,15 +75121,15 @@ "directus": { "version": "file:api", "requires": { - "@directus/app": "9.0.0-rc.81", - "@directus/drive": "9.0.0-rc.81", - "@directus/drive-azure": "9.0.0-rc.81", - "@directus/drive-gcs": "9.0.0-rc.81", - "@directus/drive-s3": "9.0.0-rc.81", - "@directus/format-title": "9.0.0-rc.81", - "@directus/schema": "9.0.0-rc.81", - "@directus/shared": "9.0.0-rc.81", - "@directus/specs": "9.0.0-rc.81", + "@directus/app": "9.0.0-rc.83", + "@directus/drive": "9.0.0-rc.83", + "@directus/drive-azure": "9.0.0-rc.83", + "@directus/drive-gcs": "9.0.0-rc.83", + "@directus/drive-s3": "9.0.0-rc.83", + "@directus/format-title": "9.0.0-rc.83", + "@directus/schema": "9.0.0-rc.83", + "@directus/shared": "9.0.0-rc.83", + "@directus/specs": "9.0.0-rc.83", "@godaddy/terminus": "^4.9.0", "@keyv/redis": "^2.1.2", "@rollup/plugin-alias": "^3.1.2", @@ -75492,7 +75232,7 @@ "sqlite3": "^5.0.2", "stream-json": "^1.7.1", "tedious": "^11.0.8", - "ts-node-dev": "1.1.6", + "ts-node-dev": "1.1.7", "typescript": "4.3.4", "uuid": "^8.3.2", "uuid-validate": "0.0.3" @@ -95332,9 +95072,9 @@ } }, "rollup": { - "version": "2.52.3", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.52.3.tgz", - "integrity": "sha512-QF3Sju8Kl2z0osI4unyOLyUudyhOMK6G0AeqJWgfiyigqLAlnNrfBcDWDx+f1cqn+JU2iIYVkDrgQ6/KtwEfrg==", + "version": "2.52.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.52.4.tgz", + "integrity": "sha512-AXgUxxWXyGfsj8GKleR1k8KsG8G+7ZZDRU9RZb9PnLGSyTqI/1qf/+QSp1hRaR40j4yfBCKXs5khtGKiFwihfg==", "requires": { "fsevents": "~2.3.2" } @@ -99743,13 +99483,12 @@ } }, "ts-node-dev": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/ts-node-dev/-/ts-node-dev-1.1.6.tgz", - "integrity": "sha512-RTUi7mHMNQospArGz07KiraQcdgUVNXKsgO2HAi7FoiyPMdTDqdniB6K1dqyaIxT7c9v/VpSbfBZPS6uVpaFLQ==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/ts-node-dev/-/ts-node-dev-1.1.7.tgz", + "integrity": "sha512-/YvByJdIw/p88RXmaRB3Kkk+PiUP7g/EAbBvQjDIG+kkm0CMvhdHSB21yEiws22Uls4uFAfCiuEZM4929yjWjg==", "dev": true, "requires": { "chokidar": "^3.5.1", - "dateformat": "~1.0.4-1.2.3", "dynamic-dedupe": "^0.3.0", "minimist": "^1.2.5", "mkdirp": "^1.0.4", @@ -99761,172 +99500,6 @@ "tsconfig": "^7.0.0" }, "dependencies": { - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "dateformat": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", - "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1", - "meow": "^3.3.0" - } - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -99936,36 +99509,6 @@ "glob": "^7.1.3" } }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, "ts-node": { "version": "9.1.1", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", diff --git a/packages/cli/package.json b/packages/cli/package.json index c5b0b78651..65298e9aa1 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@directus/cli", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "The official Directus CLI", "repository": { "type": "git", @@ -41,8 +41,8 @@ "author": "João Biondo ", "license": "MIT", "dependencies": { - "@directus/format-title": "9.0.0-rc.81", - "@directus/sdk": "9.0.0-rc.81", + "@directus/format-title": "9.0.0-rc.83", + "@directus/sdk": "9.0.0-rc.83", "@types/yargs": "^17.0.0", "app-module-path": "^2.2.0", "chalk": "^4.1.0", diff --git a/packages/create-directus-project/package.json b/packages/create-directus-project/package.json index f1ef132cfe..f52a78df7b 100644 --- a/packages/create-directus-project/package.json +++ b/packages/create-directus-project/package.json @@ -1,6 +1,6 @@ { "name": "create-directus-project", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "A small installer util that will create a directory, add boilerplate folders, and install Directus through npm.", "main": "lib/index.js", "bin": "./lib/index.js", diff --git a/packages/drive-azure/package.json b/packages/drive-azure/package.json index 52d5481ccb..1dbdd4c807 100644 --- a/packages/drive-azure/package.json +++ b/packages/drive-azure/package.json @@ -1,6 +1,6 @@ { "name": "@directus/drive-azure", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "Azure Blob driver for @directus/drive", "license": "MIT", "main": "dist/index.js", @@ -35,7 +35,7 @@ ], "dependencies": { "@azure/storage-blob": "^12.6.0", - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "normalize-path": "^3.0.0" }, "devDependencies": { diff --git a/packages/drive-gcs/package.json b/packages/drive-gcs/package.json index 0cdc7cf6cb..a365b5b03c 100644 --- a/packages/drive-gcs/package.json +++ b/packages/drive-gcs/package.json @@ -1,6 +1,6 @@ { "name": "@directus/drive-gcs", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "Google Cloud Storage driver for @directus/drive", "license": "MIT", "main": "dist/index.js", @@ -33,7 +33,7 @@ "dev": "npm run build -- -w --preserveWatchOutput --incremental" }, "dependencies": { - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "@google-cloud/storage": "^5.8.5", "normalize-path": "^3.0.0" }, diff --git a/packages/drive-s3/package.json b/packages/drive-s3/package.json index bf5a695f9f..bf2b4cd2ec 100644 --- a/packages/drive-s3/package.json +++ b/packages/drive-s3/package.json @@ -1,6 +1,6 @@ { "name": "@directus/drive-s3", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "AWS S3 driver for @directus/drive", "license": "MIT", "main": "dist/index.js", @@ -34,7 +34,7 @@ "dev": "npm run build -- -w --preserveWatchOutput --incremental" }, "dependencies": { - "@directus/drive": "9.0.0-rc.81", + "@directus/drive": "9.0.0-rc.83", "aws-sdk": "^2.928.0", "normalize-path": "^3.0.0" }, diff --git a/packages/drive/package.json b/packages/drive/package.json index 1ad851706d..e02deb8376 100644 --- a/packages/drive/package.json +++ b/packages/drive/package.json @@ -1,6 +1,6 @@ { "name": "@directus/drive", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "Flexible and Fluent way to manage storage in Node.js.", "license": "MIT", "main": "dist/index.js", diff --git a/packages/extension-sdk/package.json b/packages/extension-sdk/package.json index 461cf0f401..d2858dab1a 100644 --- a/packages/extension-sdk/package.json +++ b/packages/extension-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@directus/extension-sdk", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "A toolkit to develop extensions to extend Directus.", "main": "dist/cjs/index.js", "exports": { @@ -11,17 +11,20 @@ "directus-extension": "cli.js" }, "scripts": { - "build": "npm run cleanup && run-p build:*", + "build": "run-p build:*", "build:esm": "tsc --project ./tsconfig.json --module ES2015 --outDir ./dist/esm", "build:cjs": "tsc --project ./tsconfig.json --module CommonJS --outDir ./dist/cjs", "cleanup": "rimraf ./dist", "dev": "npm run build -- -- -w --preserveWatchOutput --incremental", - "prepublishOnly": "npm run build" + "prepublishOnly": "npm run cleanup && npm run build" + }, + "engines": { + "node": ">=12.20.0" }, "author": "Nicola Krumschmidt", "gitHead": "24621f3934dc77eb23441331040ed13c676ceffd", "dependencies": { - "@directus/shared": "9.0.0-rc.81", + "@directus/shared": "9.0.0-rc.83", "@rollup/plugin-commonjs": "^19.0.0", "@rollup/plugin-node-resolve": "^13.0.0", "@vue/compiler-sfc": "^3.1.1", diff --git a/packages/format-title/package.json b/packages/format-title/package.json index edae5afa67..32e9e4702c 100644 --- a/packages/format-title/package.json +++ b/packages/format-title/package.json @@ -1,6 +1,6 @@ { "name": "@directus/format-title", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "Custom string formatter that converts any string into [Title Case](http://www.grammar-monster.com/lessons/capital_letters_title_case.htm)", "keywords": [ "title-case", @@ -37,7 +37,7 @@ "@rollup/plugin-json": "4.1.0", "@rollup/plugin-node-resolve": "13.0.0", "rimraf": "3.0.2", - "rollup": "2.52.3", + "rollup": "2.52.4", "rollup-plugin-sourcemaps": "0.6.3", "rollup-plugin-terser": "7.0.2", "rollup-plugin-typescript2": "0.30.0", diff --git a/packages/gatsby-source-directus/package.json b/packages/gatsby-source-directus/package.json index 55a580f512..2b6d07084c 100644 --- a/packages/gatsby-source-directus/package.json +++ b/packages/gatsby-source-directus/package.json @@ -1,6 +1,6 @@ { "name": "@directus/gatsby-source-directus", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "Source plugin for pulling data into Gatsby from a Directus API.", "author": "João Biondo ", "license": "MIT", diff --git a/packages/schema/package.json b/packages/schema/package.json index 5837a59793..aa5cedb3c7 100644 --- a/packages/schema/package.json +++ b/packages/schema/package.json @@ -1,6 +1,6 @@ { "name": "@directus/schema", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "Utility for extracting information about existing DB schema", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 44ce6391ac..874e2096f8 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@directus/sdk", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "The official Directus SDK for use in JavaScript!", "repository": { "type": "git", @@ -59,7 +59,7 @@ "nock": "13.1.0", "npm-run-all": "4.1.5", "rimraf": "3.0.2", - "rollup": "2.52.3", + "rollup": "2.52.4", "rollup-plugin-copy": "3.4.0", "rollup-plugin-sourcemaps": "0.6.3", "rollup-plugin-terser": "7.0.2", diff --git a/packages/shared/package.json b/packages/shared/package.json index 5353876eb2..d7a07c8a6d 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -1,6 +1,6 @@ { "name": "@directus/shared", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "Code shared between all directus packages.", "exports": { "./composables": { @@ -21,12 +21,12 @@ } }, "scripts": { - "build": "npm run cleanup && run-p build:*", + "build": "run-p build:*", "build:esm": "tsc --project ./tsconfig.json --module ES2015 --outDir ./dist/esm", "build:cjs": "tsc --project ./tsconfig.json --module CommonJS --outDir ./dist/cjs", "cleanup": "rimraf ./dist", "dev": "npm run build -- -- -w --preserveWatchOutput --incremental", - "prepublishOnly": "npm run build" + "prepublishOnly": "npm run cleanup && npm run build" }, "author": "Nicola Krumschmidt", "gitHead": "24621f3934dc77eb23441331040ed13c676ceffd", diff --git a/packages/shared/src/utils/generate-extensions-entry.ts b/packages/shared/src/utils/generate-extensions-entry.ts index daa5b0a975..adc479dffc 100644 --- a/packages/shared/src/utils/generate-extensions-entry.ts +++ b/packages/shared/src/utils/generate-extensions-entry.ts @@ -1,10 +1,13 @@ -import path from 'path'; +import path from 'path/posix'; import { AppExtensionType, Extension } from '../types'; export function generateExtensionsEntry(type: AppExtensionType, extensions: Extension[]): string { const filteredExtensions = extensions.filter((extension) => extension.type === type); return `${filteredExtensions - .map((extension, i) => `import e${i} from '${path.resolve(extension.path, extension.entrypoint || '')}';\n`) + .map( + (extension, i) => + `import e${i} from './${path.relative('.', path.resolve(extension.path, extension.entrypoint || ''))}';\n` + ) .join('')}export default [${filteredExtensions.map((_, i) => `e${i}`).join(',')}];`; } diff --git a/packages/specs/package.json b/packages/specs/package.json index 89c91cb435..ad1fbc7aad 100644 --- a/packages/specs/package.json +++ b/packages/specs/package.json @@ -1,6 +1,6 @@ { "name": "@directus/specs", - "version": "9.0.0-rc.81", + "version": "9.0.0-rc.83", "description": "OpenAPI Specification of the Directus API", "main": "index.js", "scripts": {