diff --git a/playground/src/api/home/content-types/home/schema.json b/playground/src/api/home/content-types/home/schema.json new file mode 100644 index 0000000..1946402 --- /dev/null +++ b/playground/src/api/home/content-types/home/schema.json @@ -0,0 +1,23 @@ +{ + "kind": "singleType", + "collectionName": "homes", + "info": { + "singularName": "home", + "pluralName": "homes", + "displayName": "Home", + "description": "" + }, + "options": { + "draftAndPublish": false + }, + "pluginOptions": {}, + "attributes": { + "title": { + "type": "string" + }, + "slug": { + "type": "uid", + "targetField": "title" + } + } +} diff --git a/playground/src/api/home/controllers/home.js b/playground/src/api/home/controllers/home.js new file mode 100644 index 0000000..b4dc6c0 --- /dev/null +++ b/playground/src/api/home/controllers/home.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * home controller + */ + +const { createCoreController } = require('@strapi/strapi').factories; + +module.exports = createCoreController('api::home.home'); diff --git a/playground/src/api/home/routes/home.js b/playground/src/api/home/routes/home.js new file mode 100644 index 0000000..63ca7fd --- /dev/null +++ b/playground/src/api/home/routes/home.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * home router + */ + +const { createCoreRouter } = require('@strapi/strapi').factories; + +module.exports = createCoreRouter('api::home.home'); diff --git a/playground/src/api/home/services/home.js b/playground/src/api/home/services/home.js new file mode 100644 index 0000000..64e6d32 --- /dev/null +++ b/playground/src/api/home/services/home.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * home service + */ + +const { createCoreService } = require('@strapi/strapi').factories; + +module.exports = createCoreService('api::home.home'); diff --git a/playground/src/api/page/content-types/page/schema.json b/playground/src/api/page/content-types/page/schema.json new file mode 100644 index 0000000..f5c7e93 --- /dev/null +++ b/playground/src/api/page/content-types/page/schema.json @@ -0,0 +1,19 @@ +{ + "kind": "collectionType", + "collectionName": "pages", + "info": { + "singularName": "page", + "pluralName": "pages", + "displayName": "Page" + }, + "options": { + "draftAndPublish": false + }, + "pluginOptions": {}, + "attributes": { + "title": { + "type": "string", + "required": true + } + } +} diff --git a/playground/src/api/page/controllers/page.js b/playground/src/api/page/controllers/page.js new file mode 100644 index 0000000..61fe8a7 --- /dev/null +++ b/playground/src/api/page/controllers/page.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * page controller + */ + +const { createCoreController } = require('@strapi/strapi').factories; + +module.exports = createCoreController('api::page.page'); diff --git a/playground/src/api/page/routes/page.js b/playground/src/api/page/routes/page.js new file mode 100644 index 0000000..258307a --- /dev/null +++ b/playground/src/api/page/routes/page.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * page router + */ + +const { createCoreRouter } = require('@strapi/strapi').factories; + +module.exports = createCoreRouter('api::page.page'); diff --git a/playground/src/api/page/services/page.js b/playground/src/api/page/services/page.js new file mode 100644 index 0000000..d5abde4 --- /dev/null +++ b/playground/src/api/page/services/page.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * page service + */ + +const { createCoreService } = require('@strapi/strapi').factories; + +module.exports = createCoreService('api::page.page'); diff --git a/playground/types/generated/contentTypes.d.ts b/playground/types/generated/contentTypes.d.ts index 8c88413..8dde1e7 100644 --- a/playground/types/generated/contentTypes.d.ts +++ b/playground/types/generated/contentTypes.d.ts @@ -1,5 +1,498 @@ import type { Struct, Schema } from '@strapi/strapi'; +export interface ApiHomeHome extends Struct.SingleTypeSchema { + collectionName: 'homes'; + info: { + singularName: 'home'; + pluralName: 'homes'; + displayName: 'Home'; + description: ''; + }; + options: { + draftAndPublish: false; + }; + attributes: { + title: Schema.Attribute.String; + slug: Schema.Attribute.UID<'title'>; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface ApiPagePage extends Struct.CollectionTypeSchema { + collectionName: 'pages'; + info: { + singularName: 'page'; + pluralName: 'pages'; + displayName: 'Page'; + }; + options: { + draftAndPublish: false; + }; + attributes: { + title: Schema.Attribute.String & Schema.Attribute.Required; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginUploadFile extends Struct.CollectionTypeSchema { + collectionName: 'files'; + info: { + singularName: 'file'; + pluralName: 'files'; + displayName: 'File'; + description: ''; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + name: Schema.Attribute.String & Schema.Attribute.Required; + alternativeText: Schema.Attribute.String; + caption: Schema.Attribute.String; + width: Schema.Attribute.Integer; + height: Schema.Attribute.Integer; + formats: Schema.Attribute.JSON; + hash: Schema.Attribute.String & Schema.Attribute.Required; + ext: Schema.Attribute.String; + mime: Schema.Attribute.String & Schema.Attribute.Required; + size: Schema.Attribute.Decimal & Schema.Attribute.Required; + url: Schema.Attribute.String & Schema.Attribute.Required; + previewUrl: Schema.Attribute.String; + provider: Schema.Attribute.String & Schema.Attribute.Required; + provider_metadata: Schema.Attribute.JSON; + related: Schema.Attribute.Relation<'morphToMany'>; + folder: Schema.Attribute.Relation<'manyToOne', 'plugin::upload.folder'> & + Schema.Attribute.Private; + folderPath: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.Private & + Schema.Attribute.SetMinMaxLength<{ + minLength: 1; + }>; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginUploadFolder extends Struct.CollectionTypeSchema { + collectionName: 'upload_folders'; + info: { + singularName: 'folder'; + pluralName: 'folders'; + displayName: 'Folder'; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + name: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.SetMinMaxLength<{ + minLength: 1; + }>; + pathId: Schema.Attribute.Integer & + Schema.Attribute.Required & + Schema.Attribute.Unique; + parent: Schema.Attribute.Relation<'manyToOne', 'plugin::upload.folder'>; + children: Schema.Attribute.Relation<'oneToMany', 'plugin::upload.folder'>; + files: Schema.Attribute.Relation<'oneToMany', 'plugin::upload.file'>; + path: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.SetMinMaxLength<{ + minLength: 1; + }>; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginI18NLocale extends Struct.CollectionTypeSchema { + collectionName: 'i18n_locale'; + info: { + singularName: 'locale'; + pluralName: 'locales'; + collectionName: 'locales'; + displayName: 'Locale'; + description: ''; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + name: Schema.Attribute.String & + Schema.Attribute.SetMinMax< + { + min: 1; + max: 50; + }, + number + >; + code: Schema.Attribute.String & Schema.Attribute.Unique; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginContentReleasesRelease + extends Struct.CollectionTypeSchema { + collectionName: 'strapi_releases'; + info: { + singularName: 'release'; + pluralName: 'releases'; + displayName: 'Release'; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + name: Schema.Attribute.String & Schema.Attribute.Required; + releasedAt: Schema.Attribute.DateTime; + scheduledAt: Schema.Attribute.DateTime; + timezone: Schema.Attribute.String; + status: Schema.Attribute.Enumeration< + ['ready', 'blocked', 'failed', 'done', 'empty'] + > & + Schema.Attribute.Required; + actions: Schema.Attribute.Relation< + 'oneToMany', + 'plugin::content-releases.release-action' + >; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginContentReleasesReleaseAction + extends Struct.CollectionTypeSchema { + collectionName: 'strapi_release_actions'; + info: { + singularName: 'release-action'; + pluralName: 'release-actions'; + displayName: 'Release Action'; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + type: Schema.Attribute.Enumeration<['publish', 'unpublish']> & + Schema.Attribute.Required; + contentType: Schema.Attribute.String & Schema.Attribute.Required; + entryDocumentId: Schema.Attribute.String; + locale: Schema.Attribute.String; + release: Schema.Attribute.Relation< + 'manyToOne', + 'plugin::content-releases.release' + >; + isEntryValid: Schema.Attribute.Boolean; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + }; +} + +export interface PluginReviewWorkflowsWorkflow + extends Struct.CollectionTypeSchema { + collectionName: 'strapi_workflows'; + info: { + name: 'Workflow'; + description: ''; + singularName: 'workflow'; + pluralName: 'workflows'; + displayName: 'Workflow'; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + name: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.Unique; + stages: Schema.Attribute.Relation< + 'oneToMany', + 'plugin::review-workflows.workflow-stage' + >; + contentTypes: Schema.Attribute.JSON & + Schema.Attribute.Required & + Schema.Attribute.DefaultTo<'[]'>; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginReviewWorkflowsWorkflowStage + extends Struct.CollectionTypeSchema { + collectionName: 'strapi_workflows_stages'; + info: { + name: 'Workflow Stage'; + description: ''; + singularName: 'workflow-stage'; + pluralName: 'workflow-stages'; + displayName: 'Stages'; + }; + options: { + version: '1.1.0'; + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + name: Schema.Attribute.String; + color: Schema.Attribute.String & Schema.Attribute.DefaultTo<'#4945FF'>; + workflow: Schema.Attribute.Relation< + 'manyToOne', + 'plugin::review-workflows.workflow' + >; + permissions: Schema.Attribute.Relation<'manyToMany', 'admin::permission'>; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginUsersPermissionsPermission + extends Struct.CollectionTypeSchema { + collectionName: 'up_permissions'; + info: { + name: 'permission'; + description: ''; + singularName: 'permission'; + pluralName: 'permissions'; + displayName: 'Permission'; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + action: Schema.Attribute.String & Schema.Attribute.Required; + role: Schema.Attribute.Relation< + 'manyToOne', + 'plugin::users-permissions.role' + >; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginUsersPermissionsRole + extends Struct.CollectionTypeSchema { + collectionName: 'up_roles'; + info: { + name: 'role'; + description: ''; + singularName: 'role'; + pluralName: 'roles'; + displayName: 'Role'; + }; + options: { + draftAndPublish: false; + }; + pluginOptions: { + 'content-manager': { + visible: false; + }; + 'content-type-builder': { + visible: false; + }; + }; + attributes: { + name: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.SetMinMaxLength<{ + minLength: 3; + }>; + description: Schema.Attribute.String; + type: Schema.Attribute.String & Schema.Attribute.Unique; + permissions: Schema.Attribute.Relation< + 'oneToMany', + 'plugin::users-permissions.permission' + >; + users: Schema.Attribute.Relation< + 'oneToMany', + 'plugin::users-permissions.user' + >; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + +export interface PluginUsersPermissionsUser + extends Struct.CollectionTypeSchema { + collectionName: 'up_users'; + info: { + name: 'user'; + description: ''; + singularName: 'user'; + pluralName: 'users'; + displayName: 'User'; + }; + options: { + timestamps: true; + draftAndPublish: false; + }; + attributes: { + username: Schema.Attribute.String & + Schema.Attribute.Required & + Schema.Attribute.Unique & + Schema.Attribute.SetMinMaxLength<{ + minLength: 3; + }>; + email: Schema.Attribute.Email & + Schema.Attribute.Required & + Schema.Attribute.SetMinMaxLength<{ + minLength: 6; + }>; + provider: Schema.Attribute.String; + password: Schema.Attribute.Password & + Schema.Attribute.Private & + Schema.Attribute.SetMinMaxLength<{ + minLength: 6; + }>; + resetPasswordToken: Schema.Attribute.String & Schema.Attribute.Private; + confirmationToken: Schema.Attribute.String & Schema.Attribute.Private; + confirmed: Schema.Attribute.Boolean & Schema.Attribute.DefaultTo; + blocked: Schema.Attribute.Boolean & Schema.Attribute.DefaultTo; + role: Schema.Attribute.Relation< + 'manyToOne', + 'plugin::users-permissions.role' + >; + createdAt: Schema.Attribute.DateTime; + updatedAt: Schema.Attribute.DateTime; + publishedAt: Schema.Attribute.DateTime; + createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & + Schema.Attribute.Private; + locale: Schema.Attribute.String; + }; +} + export interface AdminPermission extends Struct.CollectionTypeSchema { collectionName: 'admin_permissions'; info: { @@ -346,370 +839,21 @@ export interface AdminTransferTokenPermission }; } -export interface PluginUploadFile extends Struct.CollectionTypeSchema { - collectionName: 'files'; - info: { - singularName: 'file'; - pluralName: 'files'; - displayName: 'File'; - description: ''; - }; - options: { - draftAndPublish: false; - }; - pluginOptions: { - 'content-manager': { - visible: false; - }; - 'content-type-builder': { - visible: false; - }; - }; - attributes: { - name: Schema.Attribute.String & Schema.Attribute.Required; - alternativeText: Schema.Attribute.String; - caption: Schema.Attribute.String; - width: Schema.Attribute.Integer; - height: Schema.Attribute.Integer; - formats: Schema.Attribute.JSON; - hash: Schema.Attribute.String & Schema.Attribute.Required; - ext: Schema.Attribute.String; - mime: Schema.Attribute.String & Schema.Attribute.Required; - size: Schema.Attribute.Decimal & Schema.Attribute.Required; - url: Schema.Attribute.String & Schema.Attribute.Required; - previewUrl: Schema.Attribute.String; - provider: Schema.Attribute.String & Schema.Attribute.Required; - provider_metadata: Schema.Attribute.JSON; - related: Schema.Attribute.Relation<'morphToMany'>; - folder: Schema.Attribute.Relation<'manyToOne', 'plugin::upload.folder'> & - Schema.Attribute.Private; - folderPath: Schema.Attribute.String & - Schema.Attribute.Required & - Schema.Attribute.Private & - Schema.Attribute.SetMinMaxLength<{ - minLength: 1; - }>; - createdAt: Schema.Attribute.DateTime; - updatedAt: Schema.Attribute.DateTime; - publishedAt: Schema.Attribute.DateTime; - createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - locale: Schema.Attribute.String; - }; -} - -export interface PluginUploadFolder extends Struct.CollectionTypeSchema { - collectionName: 'upload_folders'; - info: { - singularName: 'folder'; - pluralName: 'folders'; - displayName: 'Folder'; - }; - options: { - draftAndPublish: false; - }; - pluginOptions: { - 'content-manager': { - visible: false; - }; - 'content-type-builder': { - visible: false; - }; - }; - attributes: { - name: Schema.Attribute.String & - Schema.Attribute.Required & - Schema.Attribute.SetMinMaxLength<{ - minLength: 1; - }>; - pathId: Schema.Attribute.Integer & - Schema.Attribute.Required & - Schema.Attribute.Unique; - parent: Schema.Attribute.Relation<'manyToOne', 'plugin::upload.folder'>; - children: Schema.Attribute.Relation<'oneToMany', 'plugin::upload.folder'>; - files: Schema.Attribute.Relation<'oneToMany', 'plugin::upload.file'>; - path: Schema.Attribute.String & - Schema.Attribute.Required & - Schema.Attribute.SetMinMaxLength<{ - minLength: 1; - }>; - createdAt: Schema.Attribute.DateTime; - updatedAt: Schema.Attribute.DateTime; - publishedAt: Schema.Attribute.DateTime; - createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - locale: Schema.Attribute.String; - }; -} - -export interface PluginI18NLocale extends Struct.CollectionTypeSchema { - collectionName: 'i18n_locale'; - info: { - singularName: 'locale'; - pluralName: 'locales'; - collectionName: 'locales'; - displayName: 'Locale'; - description: ''; - }; - options: { - draftAndPublish: false; - }; - pluginOptions: { - 'content-manager': { - visible: false; - }; - 'content-type-builder': { - visible: false; - }; - }; - attributes: { - name: Schema.Attribute.String & - Schema.Attribute.SetMinMax< - { - min: 1; - max: 50; - }, - number - >; - code: Schema.Attribute.String & Schema.Attribute.Unique; - createdAt: Schema.Attribute.DateTime; - updatedAt: Schema.Attribute.DateTime; - publishedAt: Schema.Attribute.DateTime; - createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - locale: Schema.Attribute.String; - }; -} - -export interface PluginContentReleasesRelease - extends Struct.CollectionTypeSchema { - collectionName: 'strapi_releases'; - info: { - singularName: 'release'; - pluralName: 'releases'; - displayName: 'Release'; - }; - options: { - draftAndPublish: false; - }; - pluginOptions: { - 'content-manager': { - visible: false; - }; - 'content-type-builder': { - visible: false; - }; - }; - attributes: { - name: Schema.Attribute.String & Schema.Attribute.Required; - releasedAt: Schema.Attribute.DateTime; - scheduledAt: Schema.Attribute.DateTime; - timezone: Schema.Attribute.String; - status: Schema.Attribute.Enumeration< - ['ready', 'blocked', 'failed', 'done', 'empty'] - > & - Schema.Attribute.Required; - actions: Schema.Attribute.Relation< - 'oneToMany', - 'plugin::content-releases.release-action' - >; - createdAt: Schema.Attribute.DateTime; - updatedAt: Schema.Attribute.DateTime; - publishedAt: Schema.Attribute.DateTime; - createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - locale: Schema.Attribute.String; - }; -} - -export interface PluginContentReleasesReleaseAction - extends Struct.CollectionTypeSchema { - collectionName: 'strapi_release_actions'; - info: { - singularName: 'release-action'; - pluralName: 'release-actions'; - displayName: 'Release Action'; - }; - options: { - draftAndPublish: false; - }; - pluginOptions: { - 'content-manager': { - visible: false; - }; - 'content-type-builder': { - visible: false; - }; - }; - attributes: { - type: Schema.Attribute.Enumeration<['publish', 'unpublish']> & - Schema.Attribute.Required; - entry: Schema.Attribute.Relation<'morphToOne'>; - contentType: Schema.Attribute.String & Schema.Attribute.Required; - locale: Schema.Attribute.String; - release: Schema.Attribute.Relation< - 'manyToOne', - 'plugin::content-releases.release' - >; - isEntryValid: Schema.Attribute.Boolean; - createdAt: Schema.Attribute.DateTime; - updatedAt: Schema.Attribute.DateTime; - publishedAt: Schema.Attribute.DateTime; - createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - }; -} - -export interface PluginUsersPermissionsPermission - extends Struct.CollectionTypeSchema { - collectionName: 'up_permissions'; - info: { - name: 'permission'; - description: ''; - singularName: 'permission'; - pluralName: 'permissions'; - displayName: 'Permission'; - }; - options: { - draftAndPublish: false; - }; - pluginOptions: { - 'content-manager': { - visible: false; - }; - 'content-type-builder': { - visible: false; - }; - }; - attributes: { - action: Schema.Attribute.String & Schema.Attribute.Required; - role: Schema.Attribute.Relation< - 'manyToOne', - 'plugin::users-permissions.role' - >; - createdAt: Schema.Attribute.DateTime; - updatedAt: Schema.Attribute.DateTime; - publishedAt: Schema.Attribute.DateTime; - createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - locale: Schema.Attribute.String; - }; -} - -export interface PluginUsersPermissionsRole - extends Struct.CollectionTypeSchema { - collectionName: 'up_roles'; - info: { - name: 'role'; - description: ''; - singularName: 'role'; - pluralName: 'roles'; - displayName: 'Role'; - }; - options: { - draftAndPublish: false; - }; - pluginOptions: { - 'content-manager': { - visible: false; - }; - 'content-type-builder': { - visible: false; - }; - }; - attributes: { - name: Schema.Attribute.String & - Schema.Attribute.Required & - Schema.Attribute.SetMinMaxLength<{ - minLength: 3; - }>; - description: Schema.Attribute.String; - type: Schema.Attribute.String & Schema.Attribute.Unique; - permissions: Schema.Attribute.Relation< - 'oneToMany', - 'plugin::users-permissions.permission' - >; - users: Schema.Attribute.Relation< - 'oneToMany', - 'plugin::users-permissions.user' - >; - createdAt: Schema.Attribute.DateTime; - updatedAt: Schema.Attribute.DateTime; - publishedAt: Schema.Attribute.DateTime; - createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - locale: Schema.Attribute.String; - }; -} - -export interface PluginUsersPermissionsUser - extends Struct.CollectionTypeSchema { - collectionName: 'up_users'; - info: { - name: 'user'; - description: ''; - singularName: 'user'; - pluralName: 'users'; - displayName: 'User'; - }; - options: { - timestamps: true; - draftAndPublish: false; - }; - attributes: { - username: Schema.Attribute.String & - Schema.Attribute.Required & - Schema.Attribute.Unique & - Schema.Attribute.SetMinMaxLength<{ - minLength: 3; - }>; - email: Schema.Attribute.Email & - Schema.Attribute.Required & - Schema.Attribute.SetMinMaxLength<{ - minLength: 6; - }>; - provider: Schema.Attribute.String; - password: Schema.Attribute.Password & - Schema.Attribute.Private & - Schema.Attribute.SetMinMaxLength<{ - minLength: 6; - }>; - resetPasswordToken: Schema.Attribute.String & Schema.Attribute.Private; - confirmationToken: Schema.Attribute.String & Schema.Attribute.Private; - confirmed: Schema.Attribute.Boolean & Schema.Attribute.DefaultTo; - blocked: Schema.Attribute.Boolean & Schema.Attribute.DefaultTo; - role: Schema.Attribute.Relation< - 'manyToOne', - 'plugin::users-permissions.role' - >; - createdAt: Schema.Attribute.DateTime; - updatedAt: Schema.Attribute.DateTime; - publishedAt: Schema.Attribute.DateTime; - createdBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - updatedBy: Schema.Attribute.Relation<'oneToOne', 'admin::user'> & - Schema.Attribute.Private; - locale: Schema.Attribute.String; - }; -} - declare module '@strapi/strapi' { export module Public { export interface ContentTypeSchemas { + 'api::home.home': ApiHomeHome; + 'api::page.page': ApiPagePage; + 'plugin::upload.file': PluginUploadFile; + 'plugin::upload.folder': PluginUploadFolder; + 'plugin::i18n.locale': PluginI18NLocale; + 'plugin::content-releases.release': PluginContentReleasesRelease; + 'plugin::content-releases.release-action': PluginContentReleasesReleaseAction; + 'plugin::review-workflows.workflow': PluginReviewWorkflowsWorkflow; + 'plugin::review-workflows.workflow-stage': PluginReviewWorkflowsWorkflowStage; + 'plugin::users-permissions.permission': PluginUsersPermissionsPermission; + 'plugin::users-permissions.role': PluginUsersPermissionsRole; + 'plugin::users-permissions.user': PluginUsersPermissionsUser; 'admin::permission': AdminPermission; 'admin::user': AdminUser; 'admin::role': AdminRole; @@ -717,14 +861,6 @@ declare module '@strapi/strapi' { 'admin::api-token-permission': AdminApiTokenPermission; 'admin::transfer-token': AdminTransferToken; 'admin::transfer-token-permission': AdminTransferTokenPermission; - 'plugin::upload.file': PluginUploadFile; - 'plugin::upload.folder': PluginUploadFolder; - 'plugin::i18n.locale': PluginI18NLocale; - 'plugin::content-releases.release': PluginContentReleasesRelease; - 'plugin::content-releases.release-action': PluginContentReleasesReleaseAction; - 'plugin::users-permissions.permission': PluginUsersPermissionsPermission; - 'plugin::users-permissions.role': PluginUsersPermissionsRole; - 'plugin::users-permissions.user': PluginUsersPermissionsUser; } } } diff --git a/yarn.lock b/yarn.lock index c8aa993..b5d86db 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4678,7 +4678,14 @@ braces@^2.3.1: split-string "^3.0.2" to-regex "^3.0.1" -braces@^3.0.2, braces@~3.0.2: +braces@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + +braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== @@ -6146,9 +6153,9 @@ electron-to-chromium@^1.4.668: integrity sha512-RTRvkmRkGhNBPPpdrgtDKvmOEYTrPlXDfc0J/Nfq5s29tEahAwhiX4mmhNzj6febWMleulxVYPh7QwCSL/EldA== elliptic@^6.5.3, elliptic@^6.5.4: - version "6.5.4" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" - integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + version "6.5.7" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.7.tgz#8ec4da2cb2939926a1b9a73619d768207e647c8b" + integrity sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q== dependencies: bn.js "^4.11.9" brorand "^1.1.0" @@ -7002,10 +7009,10 @@ fill-range@^4.0.0: repeat-string "^1.6.1" to-regex-range "^2.1.0" -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1"