@strapi/core 5.42.1 → 5.43.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.
- package/dist/Strapi.d.ts +1 -0
- package/dist/Strapi.d.ts.map +1 -1
- package/dist/Strapi.js +3 -0
- package/dist/Strapi.js.map +1 -1
- package/dist/Strapi.mjs +3 -0
- package/dist/Strapi.mjs.map +1 -1
- package/dist/compile.d.ts.map +1 -1
- package/dist/compile.js +13 -8
- package/dist/compile.js.map +1 -1
- package/dist/compile.mjs +13 -8
- package/dist/compile.mjs.map +1 -1
- package/dist/package.json.js +13 -13
- package/dist/package.json.mjs +13 -13
- package/dist/providers/ai.d.ts +3 -0
- package/dist/providers/ai.d.ts.map +1 -0
- package/dist/providers/ai.js +13 -0
- package/dist/providers/ai.js.map +1 -0
- package/dist/providers/ai.mjs +11 -0
- package/dist/providers/ai.mjs.map +1 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +2 -0
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/index.mjs +2 -0
- package/dist/providers/index.mjs.map +1 -1
- package/dist/services/ai.d.ts +3 -0
- package/dist/services/ai.d.ts.map +1 -0
- package/dist/services/ai.js +10 -0
- package/dist/services/ai.js.map +1 -0
- package/dist/services/ai.mjs +8 -0
- package/dist/services/ai.mjs.map +1 -0
- package/dist/services/entity-validator/blocks-validator.js +1 -1
- package/dist/services/entity-validator/blocks-validator.js.map +1 -1
- package/dist/services/entity-validator/blocks-validator.mjs +1 -1
- package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
- package/package.json +13 -13
package/dist/Strapi.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ declare class Strapi extends Container implements Core.Strapi {
|
|
|
9
9
|
internal_config: Record<string, unknown>;
|
|
10
10
|
constructor(opts: StrapiOptions);
|
|
11
11
|
get admin(): Core.Module;
|
|
12
|
+
get ai(): Modules.AI.AiNamespace;
|
|
12
13
|
get EE(): boolean;
|
|
13
14
|
get ee(): Core.Strapi['ee'];
|
|
14
15
|
get dirs(): Core.StrapiDirectories;
|
package/dist/Strapi.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Strapi.d.ts","sourceRoot":"","sources":["../src/Strapi.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Strapi.d.ts","sourceRoot":"","sources":["../src/Strapi.ts"],"names":[],"mappings":"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"}
|
package/dist/Strapi.js
CHANGED
package/dist/Strapi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Strapi.js","sources":["../src/Strapi.ts"],"sourcesContent":["import { bootstrap as bootstrapGlobalAgent } from 'global-agent';\nimport path from 'path';\nimport _ from 'lodash';\nimport { isFunction } from 'lodash/fp';\nimport { Logger, createLogger } from '@strapi/logger';\nimport { Database } from '@strapi/database';\n\nimport type { Core, Modules, UID, Schema } from '@strapi/types';\n\nimport tsUtils from '@strapi/typescript-utils';\nimport { loadConfiguration } from './configuration';\n\nimport * as factories from './factories';\n\nimport * as utils from './utils';\nimport { Container } from './container';\nimport createStrapiFs from './services/fs';\nimport createEventHub from './services/event-hub';\nimport { createServer } from './services/server';\nimport { createReloader } from './services/reloader';\n\nimport { providers } from './providers';\nimport createEntityService from './services/entity-service';\nimport createQueryParamService from './services/query-params';\n\nimport entityValidator from './services/entity-validator';\nimport requestContext from './services/request-context';\nimport createAuth from './services/auth';\nimport createCustomFields from './services/custom-fields';\nimport createContentAPI from './services/content-api';\nimport getNumberOfDynamicZones from './services/utils/dynamic-zones';\nimport getNumberOfConditionalFields from './services/utils/conditional-fields';\nimport { FeaturesService, createFeaturesService } from './services/features';\nimport { createDocumentService } from './services/document-service';\nimport { createContentSourceMapsService } from './services/content-source-maps';\n\nimport { coreStoreModel } from './services/core-store';\nimport { createConfigProvider } from './services/config';\n\nimport { cleanComponentJoinTable } from './services/document-service/utils/clean-component-join-table';\n\nclass Strapi extends Container implements Core.Strapi {\n app: any;\n\n isLoaded: boolean = false;\n\n internal_config: Record<string, unknown> = {};\n\n constructor(opts: StrapiOptions) {\n super();\n\n this.internal_config = loadConfiguration(opts);\n\n this.registerInternalServices();\n\n for (const provider of providers) {\n provider.init?.(this);\n }\n }\n\n get admin(): Core.Module {\n return this.get('admin');\n }\n\n get EE(): boolean {\n return utils.ee.isEE;\n }\n\n get ee(): Core.Strapi['ee'] {\n return utils.ee;\n }\n\n get dirs(): Core.StrapiDirectories {\n return this.config.get('dirs');\n }\n\n get reload(): Core.Reloader {\n return this.get('reload');\n }\n\n get db(): Database {\n return this.get('db');\n }\n\n get requestContext(): Modules.RequestContext.RequestContext {\n return this.get('requestContext');\n }\n\n get customFields(): Modules.CustomFields.CustomFields {\n return this.get('customFields');\n }\n\n get entityValidator(): Modules.EntityValidator.EntityValidator {\n return this.get('entityValidator');\n }\n\n /**\n * @deprecated `strapi.entityService` will be removed in the next major version\n */\n get entityService(): Modules.EntityService.EntityService {\n return this.get('entityService');\n }\n\n get documents(): Modules.Documents.Service {\n return this.get('documents');\n }\n\n get features(): FeaturesService {\n return this.get('features');\n }\n\n get fetch(): Modules.Fetch.Fetch {\n return this.get('fetch');\n }\n\n get cron(): Modules.Cron.CronService {\n return this.get('cron');\n }\n\n get log(): Logger {\n return this.get('logger');\n }\n\n get startupLogger(): Core.StartupLogger {\n return this.get('startupLogger');\n }\n\n get eventHub(): Modules.EventHub.EventHub {\n return this.get('eventHub');\n }\n\n get fs(): Core.StrapiFS {\n return this.get('fs');\n }\n\n get server(): Modules.Server.Server {\n return this.get('server');\n }\n\n get telemetry(): Modules.Metrics.TelemetryService {\n return this.get('telemetry');\n }\n\n get sessionManager(): Modules.SessionManager.SessionManagerService {\n return this.get('sessionManager');\n }\n\n get store(): Modules.CoreStore.CoreStore {\n return this.get('coreStore');\n }\n\n get config() {\n return this.get('config');\n }\n\n get services() {\n return this.get('services').getAll();\n }\n\n service(uid: UID.Service) {\n return this.get('services').get(uid);\n }\n\n get controllers() {\n return this.get('controllers').getAll();\n }\n\n controller(uid: UID.Controller) {\n return this.get('controllers').get(uid);\n }\n\n get contentTypes(): Schema.ContentTypes {\n return this.get('content-types').getAll();\n }\n\n contentType(name: UID.ContentType) {\n return this.get('content-types').get(name);\n }\n\n get components(): Schema.Components {\n return this.get('components').getAll();\n }\n\n get policies() {\n return this.get('policies').getAll();\n }\n\n policy(name: string) {\n return this.get('policies').get(name);\n }\n\n get middlewares() {\n return this.get('middlewares').getAll();\n }\n\n middleware(name: string) {\n return this.get('middlewares').get(name);\n }\n\n get plugins(): Record<string, Core.Plugin> {\n return this.get('plugins').getAll();\n }\n\n plugin(name: string): Core.Plugin {\n return this.get('plugins').get(name);\n }\n\n get hooks() {\n return this.get('hooks').getAll();\n }\n\n hook(name: string) {\n return this.get('hooks').get(name);\n }\n\n get apis() {\n return this.get('apis').getAll();\n }\n\n api(name: string): Core.Module {\n return this.get('apis').get(name);\n }\n\n get auth() {\n return this.get('auth');\n }\n\n get contentAPI() {\n return this.get('content-api');\n }\n\n get sanitizers() {\n return this.get('sanitizers');\n }\n\n get validators() {\n return this.get('validators');\n }\n\n async start() {\n try {\n if (!this.isLoaded) {\n await this.load();\n }\n\n await this.listen();\n\n return this;\n } catch (error) {\n return this.stopWithError(error);\n }\n }\n\n // TODO: split into more providers\n registerInternalServices() {\n const config = createConfigProvider(this.internal_config, this);\n\n const logger = createLogger({\n level: 'http', // Strapi defaults to level 'http'\n ...config.get('logger'), // DEPRECATED\n ...config.get('server.logger.config'),\n });\n\n // Instantiate the Strapi container\n this.add('config', () => config)\n .add('query-params', createQueryParamService(this))\n .add('content-api', createContentAPI(this))\n .add('auth', createAuth())\n .add('server', () => createServer(this))\n .add('fs', () => createStrapiFs(this))\n .add('eventHub', () => createEventHub())\n .add('startupLogger', () => utils.createStartupLogger(this))\n .add('logger', () => logger)\n .add('fetch', () => utils.createStrapiFetch(this))\n .add('features', () => createFeaturesService(this))\n .add('requestContext', requestContext)\n .add('customFields', createCustomFields(this))\n .add('entityValidator', entityValidator)\n .add('entityService', () => createEntityService({ strapi: this, db: this.db }))\n .add('documents', () => createDocumentService(this))\n .add('db', () => {\n const tsDir = tsUtils.resolveOutDirSync(this.dirs.app.root);\n const tsMigrationsEnabled =\n this.config.get('database.settings.useTypescriptMigrations') === true && tsDir;\n const projectDir = tsMigrationsEnabled ? tsDir : this.dirs.app.root;\n return new Database(\n _.merge(this.config.get('database'), {\n logger,\n settings: {\n migrations: {\n dir: path.join(projectDir, 'database/migrations'),\n },\n },\n })\n );\n })\n .add('reload', () => createReloader(this))\n .add('content-source-maps', () => createContentSourceMapsService(this));\n }\n\n sendStartupTelemetry() {\n // Emit started event.\n // do not await to avoid slower startup\n // This event is anonymous\n this.telemetry\n .send('didStartServer', {\n groupProperties: {\n database: this.config.get('database.connection.client'),\n plugins: Object.keys(this.plugins),\n numberOfAllContentTypes: _.size(this.contentTypes), // TODO: V5: This event should be renamed numberOfContentTypes in V5 as the name is already taken to describe the number of content types using i18n.\n numberOfComponents: _.size(this.components),\n numberOfDynamicZones: getNumberOfDynamicZones(),\n numberOfConditionalFields: getNumberOfConditionalFields(),\n numberOfCustomControllers: Object.values<Core.Controller>(this.controllers).filter(\n // TODO: Fix this at the content API loader level to prevent future types issues\n (controller) => controller !== undefined && factories.isCustomController(controller)\n ).length,\n environment: this.config.environment,\n // TODO: to add back\n // providers: this.config.installedProviders,\n },\n })\n .catch(this.log.error);\n }\n\n async openAdmin({ isInitialized }: { isInitialized: boolean }) {\n const shouldOpenAdmin =\n this.config.get('environment') === 'development' &&\n this.config.get('admin.autoOpen', true) !== false;\n\n if (shouldOpenAdmin && !isInitialized) {\n try {\n await utils.openBrowser(this.config);\n this.telemetry.send('didOpenTab');\n } catch (e) {\n this.telemetry.send('didNotOpenTab');\n }\n }\n }\n\n async postListen() {\n const isInitialized = await utils.isInitialized(this);\n\n this.startupLogger.logStartupMessage({ isInitialized });\n\n this.log.info('Strapi started successfully');\n this.sendStartupTelemetry();\n this.openAdmin({ isInitialized });\n }\n\n /**\n * Add behaviors to the server\n */\n async listen() {\n return new Promise<void>((resolve, reject) => {\n const onListen = async () => {\n try {\n await this.postListen();\n\n resolve();\n } catch (error) {\n reject(error);\n }\n };\n\n const listenSocket = this.config.get('server.socket');\n\n if (listenSocket) {\n this.server.listen(listenSocket, onListen);\n } else {\n const { host, port } = this.config.get('server');\n\n this.server.listen(port, host, onListen);\n }\n });\n }\n\n stopWithError(err: unknown, customMessage?: string): never {\n this.log.debug(`⛔️ Server wasn't able to start properly.`);\n if (customMessage) {\n this.log.error(customMessage);\n }\n\n this.log.error(err);\n return this.stop();\n }\n\n stop(exitCode = 1): never {\n this.destroy();\n\n if (this.config.get('autoReload')) {\n process.send?.('stop');\n }\n\n // Kill process\n process.exit(exitCode);\n }\n\n async load() {\n await this.register();\n await this.bootstrap();\n\n this.isLoaded = true;\n\n return this;\n }\n\n async register() {\n // @ts-expect-error: init is internal\n this.ee.init(this.dirs.app.root, this.log);\n\n for (const provider of providers) {\n await provider.register?.(this);\n }\n\n await this.runPluginsLifecycles(utils.LIFECYCLES.REGISTER);\n await this.runUserLifecycles(utils.LIFECYCLES.REGISTER);\n\n // NOTE: Swap type customField for underlying data type\n utils.convertCustomFieldType(this);\n\n return this;\n }\n\n async bootstrap() {\n this.configureGlobalProxy();\n\n const models = [\n ...utils.transformContentTypesToModels(\n [...Object.values(this.contentTypes), ...Object.values(this.components)],\n this.db.metadata.identifiers\n ),\n ...this.get('models').get(),\n ];\n\n await this.db.init({ models });\n\n let oldContentTypes;\n if (await this.db.getSchemaConnection().hasTable(coreStoreModel.tableName)) {\n oldContentTypes = await this.store.get({\n type: 'strapi',\n name: 'content_types',\n key: 'schema',\n });\n }\n\n await this.hook('strapi::content-types.beforeSync').call({\n oldContentTypes,\n contentTypes: this.contentTypes,\n });\n\n // NOTE: commenting out repair logic for now as it is causing relationship loss in some cases\n // will revisit soon in the future PR\n\n const status = await this.db.schema.sync();\n\n // // if schemas have changed, run repairs\n if (status === 'CHANGED') {\n await this.db.repair.removeOrphanMorphType({ pivot: 'component_type' });\n await this.db.repair.removeOrphanMorphType({ pivot: 'related_type' });\n }\n\n const alreadyRanComponentRepair = await this.store.get({\n type: 'strapi',\n key: 'unidirectional-join-table-repair-ran',\n });\n\n if (!alreadyRanComponentRepair) {\n await this.db.repair.processUnidirectionalJoinTables(cleanComponentJoinTable);\n await this.store.set({\n type: 'strapi',\n key: 'unidirectional-join-table-repair-ran',\n value: true,\n });\n }\n\n if (this.EE) {\n await utils.ee.checkLicense({ strapi: this });\n }\n\n await this.hook('strapi::content-types.afterSync').call({\n oldContentTypes,\n contentTypes: this.contentTypes,\n });\n\n await this.store.set({\n type: 'strapi',\n name: 'content_types',\n key: 'schema',\n value: this.contentTypes,\n });\n\n await this.server.initMiddlewares();\n this.server.initRouting();\n\n await this.contentAPI.permissions.registerActions();\n\n await this.runPluginsLifecycles(utils.LIFECYCLES.BOOTSTRAP);\n\n for (const provider of providers) {\n await provider.bootstrap?.(this);\n }\n\n await this.runUserLifecycles(utils.LIFECYCLES.BOOTSTRAP);\n\n return this;\n }\n\n configureGlobalProxy() {\n const globalProxy = this.config.get('server.proxy.global');\n const httpProxy = this.config.get('server.proxy.http') || globalProxy;\n const httpsProxy = this.config.get('server.proxy.https') || globalProxy;\n\n if (!httpProxy && !httpsProxy) {\n return;\n }\n\n bootstrapGlobalAgent();\n\n if (httpProxy) {\n this.log.info(`Using HTTP proxy: ${httpProxy}`);\n (global as any).GLOBAL_AGENT.HTTP_PROXY = httpProxy;\n }\n\n if (httpsProxy) {\n this.log.info(`Using HTTPS proxy: ${httpsProxy}`);\n (global as any).GLOBAL_AGENT.HTTPS_PROXY = httpsProxy;\n }\n }\n\n async destroy() {\n this.log.info('Shutting down Strapi');\n await this.runPluginsLifecycles(utils.LIFECYCLES.DESTROY);\n\n for (const provider of providers) {\n await provider.destroy?.(this);\n }\n\n await this.runUserLifecycles(utils.LIFECYCLES.DESTROY);\n\n await this.server.destroy();\n\n this.eventHub.destroy();\n\n await this.db?.destroy();\n\n process.removeAllListeners();\n\n // @ts-expect-error: Allow clean delete of global.strapi to allow re-instanciation\n delete global.strapi;\n\n this.log.info('Strapi has been shut down');\n }\n\n async runPluginsLifecycles(lifecycleName: 'register' | 'bootstrap' | 'destroy') {\n // plugins\n await this.get('modules')[lifecycleName]();\n }\n\n async runUserLifecycles(lifecycleName: 'register' | 'bootstrap' | 'destroy') {\n // user\n const userLifecycleFunction = this.app && this.app[lifecycleName];\n if (isFunction(userLifecycleFunction)) {\n await userLifecycleFunction({ strapi: this });\n }\n }\n\n getModel(uid: UID.ContentType): Schema.ContentType;\n getModel(uid: UID.Component): Schema.Component;\n getModel<TUID extends UID.Schema>(uid: TUID): Schema.ContentType | Schema.Component | undefined {\n if (uid in this.contentTypes) {\n return this.contentTypes[uid as UID.ContentType];\n }\n\n if (uid in this.components) {\n return this.components[uid as UID.Component];\n }\n }\n\n /**\n * @deprecated Use `strapi.db.query` instead\n */\n query(uid: UID.Schema) {\n return this.db.query(uid);\n }\n}\n\nexport interface StrapiOptions {\n appDir: string;\n distDir: string;\n autoReload?: boolean;\n serveAdminPanel?: boolean;\n}\n\nexport default Strapi;\n"],"names":["Strapi","Container","admin","get","EE","utils","isEE","ee","dirs","config","reload","db","requestContext","customFields","entityValidator","entityService","documents","features","fetch","cron","log","startupLogger","eventHub","fs","server","telemetry","sessionManager","store","services","getAll","service","uid","controllers","controller","contentTypes","contentType","name","components","policies","policy","middlewares","middleware","plugins","plugin","hooks","hook","apis","api","auth","contentAPI","sanitizers","validators","start","isLoaded","load","listen","error","stopWithError","registerInternalServices","createConfigProvider","internal_config","logger","createLogger","level","add","createQueryParamService","createContentAPI","createAuth","createServer","createStrapiFs","createEventHub","createFeaturesService","createCustomFields","createEntityService","strapi","createDocumentService","tsDir","tsUtils","resolveOutDirSync","app","root","tsMigrationsEnabled","projectDir","Database","_","merge","settings","migrations","dir","path","join","createReloader","createContentSourceMapsService","sendStartupTelemetry","send","groupProperties","database","Object","keys","numberOfAllContentTypes","size","numberOfComponents","numberOfDynamicZones","getNumberOfDynamicZones","numberOfConditionalFields","getNumberOfConditionalFields","numberOfCustomControllers","values","filter","undefined","factories","length","environment","catch","openAdmin","isInitialized","shouldOpenAdmin","e","postListen","logStartupMessage","info","Promise","resolve","reject","onListen","listenSocket","host","port","err","customMessage","debug","stop","exitCode","destroy","process","exit","register","bootstrap","init","provider","providers","runPluginsLifecycles","REGISTER","runUserLifecycles","configureGlobalProxy","models","metadata","identifiers","oldContentTypes","getSchemaConnection","hasTable","coreStoreModel","tableName","type","key","call","status","schema","sync","repair","removeOrphanMorphType","pivot","alreadyRanComponentRepair","processUnidirectionalJoinTables","cleanComponentJoinTable","set","value","checkLicense","initMiddlewares","initRouting","permissions","registerActions","BOOTSTRAP","globalProxy","httpProxy","httpsProxy","bootstrapGlobalAgent","global","GLOBAL_AGENT","HTTP_PROXY","HTTPS_PROXY","DESTROY","removeAllListeners","lifecycleName","userLifecycleFunction","isFunction","getModel","query","opts","loadConfiguration"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Strapi.js","sources":["../src/Strapi.ts"],"sourcesContent":["import { bootstrap as bootstrapGlobalAgent } from 'global-agent';\nimport path from 'path';\nimport _ from 'lodash';\nimport { isFunction } from 'lodash/fp';\nimport { Logger, createLogger } from '@strapi/logger';\nimport { Database } from '@strapi/database';\n\nimport type { Core, Modules, UID, Schema } from '@strapi/types';\n\nimport tsUtils from '@strapi/typescript-utils';\nimport { loadConfiguration } from './configuration';\n\nimport * as factories from './factories';\n\nimport * as utils from './utils';\nimport { Container } from './container';\nimport createStrapiFs from './services/fs';\nimport createEventHub from './services/event-hub';\nimport { createServer } from './services/server';\nimport { createReloader } from './services/reloader';\n\nimport { providers } from './providers';\nimport createEntityService from './services/entity-service';\nimport createQueryParamService from './services/query-params';\n\nimport entityValidator from './services/entity-validator';\nimport requestContext from './services/request-context';\nimport createAuth from './services/auth';\nimport createCustomFields from './services/custom-fields';\nimport createContentAPI from './services/content-api';\nimport getNumberOfDynamicZones from './services/utils/dynamic-zones';\nimport getNumberOfConditionalFields from './services/utils/conditional-fields';\nimport { FeaturesService, createFeaturesService } from './services/features';\nimport { createDocumentService } from './services/document-service';\nimport { createContentSourceMapsService } from './services/content-source-maps';\n\nimport { coreStoreModel } from './services/core-store';\nimport { createConfigProvider } from './services/config';\n\nimport { cleanComponentJoinTable } from './services/document-service/utils/clean-component-join-table';\n\nclass Strapi extends Container implements Core.Strapi {\n app: any;\n\n isLoaded: boolean = false;\n\n internal_config: Record<string, unknown> = {};\n\n constructor(opts: StrapiOptions) {\n super();\n\n this.internal_config = loadConfiguration(opts);\n\n this.registerInternalServices();\n\n for (const provider of providers) {\n provider.init?.(this);\n }\n }\n\n get admin(): Core.Module {\n return this.get('admin');\n }\n\n get ai(): Modules.AI.AiNamespace {\n return this.get('ai');\n }\n\n get EE(): boolean {\n return utils.ee.isEE;\n }\n\n get ee(): Core.Strapi['ee'] {\n return utils.ee;\n }\n\n get dirs(): Core.StrapiDirectories {\n return this.config.get('dirs');\n }\n\n get reload(): Core.Reloader {\n return this.get('reload');\n }\n\n get db(): Database {\n return this.get('db');\n }\n\n get requestContext(): Modules.RequestContext.RequestContext {\n return this.get('requestContext');\n }\n\n get customFields(): Modules.CustomFields.CustomFields {\n return this.get('customFields');\n }\n\n get entityValidator(): Modules.EntityValidator.EntityValidator {\n return this.get('entityValidator');\n }\n\n /**\n * @deprecated `strapi.entityService` will be removed in the next major version\n */\n get entityService(): Modules.EntityService.EntityService {\n return this.get('entityService');\n }\n\n get documents(): Modules.Documents.Service {\n return this.get('documents');\n }\n\n get features(): FeaturesService {\n return this.get('features');\n }\n\n get fetch(): Modules.Fetch.Fetch {\n return this.get('fetch');\n }\n\n get cron(): Modules.Cron.CronService {\n return this.get('cron');\n }\n\n get log(): Logger {\n return this.get('logger');\n }\n\n get startupLogger(): Core.StartupLogger {\n return this.get('startupLogger');\n }\n\n get eventHub(): Modules.EventHub.EventHub {\n return this.get('eventHub');\n }\n\n get fs(): Core.StrapiFS {\n return this.get('fs');\n }\n\n get server(): Modules.Server.Server {\n return this.get('server');\n }\n\n get telemetry(): Modules.Metrics.TelemetryService {\n return this.get('telemetry');\n }\n\n get sessionManager(): Modules.SessionManager.SessionManagerService {\n return this.get('sessionManager');\n }\n\n get store(): Modules.CoreStore.CoreStore {\n return this.get('coreStore');\n }\n\n get config() {\n return this.get('config');\n }\n\n get services() {\n return this.get('services').getAll();\n }\n\n service(uid: UID.Service) {\n return this.get('services').get(uid);\n }\n\n get controllers() {\n return this.get('controllers').getAll();\n }\n\n controller(uid: UID.Controller) {\n return this.get('controllers').get(uid);\n }\n\n get contentTypes(): Schema.ContentTypes {\n return this.get('content-types').getAll();\n }\n\n contentType(name: UID.ContentType) {\n return this.get('content-types').get(name);\n }\n\n get components(): Schema.Components {\n return this.get('components').getAll();\n }\n\n get policies() {\n return this.get('policies').getAll();\n }\n\n policy(name: string) {\n return this.get('policies').get(name);\n }\n\n get middlewares() {\n return this.get('middlewares').getAll();\n }\n\n middleware(name: string) {\n return this.get('middlewares').get(name);\n }\n\n get plugins(): Record<string, Core.Plugin> {\n return this.get('plugins').getAll();\n }\n\n plugin(name: string): Core.Plugin {\n return this.get('plugins').get(name);\n }\n\n get hooks() {\n return this.get('hooks').getAll();\n }\n\n hook(name: string) {\n return this.get('hooks').get(name);\n }\n\n get apis() {\n return this.get('apis').getAll();\n }\n\n api(name: string): Core.Module {\n return this.get('apis').get(name);\n }\n\n get auth() {\n return this.get('auth');\n }\n\n get contentAPI() {\n return this.get('content-api');\n }\n\n get sanitizers() {\n return this.get('sanitizers');\n }\n\n get validators() {\n return this.get('validators');\n }\n\n async start() {\n try {\n if (!this.isLoaded) {\n await this.load();\n }\n\n await this.listen();\n\n return this;\n } catch (error) {\n return this.stopWithError(error);\n }\n }\n\n // TODO: split into more providers\n registerInternalServices() {\n const config = createConfigProvider(this.internal_config, this);\n\n const logger = createLogger({\n level: 'http', // Strapi defaults to level 'http'\n ...config.get('logger'), // DEPRECATED\n ...config.get('server.logger.config'),\n });\n\n // Instantiate the Strapi container\n this.add('config', () => config)\n .add('query-params', createQueryParamService(this))\n .add('content-api', createContentAPI(this))\n .add('auth', createAuth())\n .add('server', () => createServer(this))\n .add('fs', () => createStrapiFs(this))\n .add('eventHub', () => createEventHub())\n .add('startupLogger', () => utils.createStartupLogger(this))\n .add('logger', () => logger)\n .add('fetch', () => utils.createStrapiFetch(this))\n .add('features', () => createFeaturesService(this))\n .add('requestContext', requestContext)\n .add('customFields', createCustomFields(this))\n .add('entityValidator', entityValidator)\n .add('entityService', () => createEntityService({ strapi: this, db: this.db }))\n .add('documents', () => createDocumentService(this))\n .add('db', () => {\n const tsDir = tsUtils.resolveOutDirSync(this.dirs.app.root);\n const tsMigrationsEnabled =\n this.config.get('database.settings.useTypescriptMigrations') === true && tsDir;\n const projectDir = tsMigrationsEnabled ? tsDir : this.dirs.app.root;\n return new Database(\n _.merge(this.config.get('database'), {\n logger,\n settings: {\n migrations: {\n dir: path.join(projectDir, 'database/migrations'),\n },\n },\n })\n );\n })\n .add('reload', () => createReloader(this))\n .add('content-source-maps', () => createContentSourceMapsService(this));\n }\n\n sendStartupTelemetry() {\n // Emit started event.\n // do not await to avoid slower startup\n // This event is anonymous\n this.telemetry\n .send('didStartServer', {\n groupProperties: {\n database: this.config.get('database.connection.client'),\n plugins: Object.keys(this.plugins),\n numberOfAllContentTypes: _.size(this.contentTypes), // TODO: V5: This event should be renamed numberOfContentTypes in V5 as the name is already taken to describe the number of content types using i18n.\n numberOfComponents: _.size(this.components),\n numberOfDynamicZones: getNumberOfDynamicZones(),\n numberOfConditionalFields: getNumberOfConditionalFields(),\n numberOfCustomControllers: Object.values<Core.Controller>(this.controllers).filter(\n // TODO: Fix this at the content API loader level to prevent future types issues\n (controller) => controller !== undefined && factories.isCustomController(controller)\n ).length,\n environment: this.config.environment,\n // TODO: to add back\n // providers: this.config.installedProviders,\n },\n })\n .catch(this.log.error);\n }\n\n async openAdmin({ isInitialized }: { isInitialized: boolean }) {\n const shouldOpenAdmin =\n this.config.get('environment') === 'development' &&\n this.config.get('admin.autoOpen', true) !== false;\n\n if (shouldOpenAdmin && !isInitialized) {\n try {\n await utils.openBrowser(this.config);\n this.telemetry.send('didOpenTab');\n } catch (e) {\n this.telemetry.send('didNotOpenTab');\n }\n }\n }\n\n async postListen() {\n const isInitialized = await utils.isInitialized(this);\n\n this.startupLogger.logStartupMessage({ isInitialized });\n\n this.log.info('Strapi started successfully');\n this.sendStartupTelemetry();\n this.openAdmin({ isInitialized });\n }\n\n /**\n * Add behaviors to the server\n */\n async listen() {\n return new Promise<void>((resolve, reject) => {\n const onListen = async () => {\n try {\n await this.postListen();\n\n resolve();\n } catch (error) {\n reject(error);\n }\n };\n\n const listenSocket = this.config.get('server.socket');\n\n if (listenSocket) {\n this.server.listen(listenSocket, onListen);\n } else {\n const { host, port } = this.config.get('server');\n\n this.server.listen(port, host, onListen);\n }\n });\n }\n\n stopWithError(err: unknown, customMessage?: string): never {\n this.log.debug(`⛔️ Server wasn't able to start properly.`);\n if (customMessage) {\n this.log.error(customMessage);\n }\n\n this.log.error(err);\n return this.stop();\n }\n\n stop(exitCode = 1): never {\n this.destroy();\n\n if (this.config.get('autoReload')) {\n process.send?.('stop');\n }\n\n // Kill process\n process.exit(exitCode);\n }\n\n async load() {\n await this.register();\n await this.bootstrap();\n\n this.isLoaded = true;\n\n return this;\n }\n\n async register() {\n // @ts-expect-error: init is internal\n this.ee.init(this.dirs.app.root, this.log);\n\n for (const provider of providers) {\n await provider.register?.(this);\n }\n\n await this.runPluginsLifecycles(utils.LIFECYCLES.REGISTER);\n await this.runUserLifecycles(utils.LIFECYCLES.REGISTER);\n\n // NOTE: Swap type customField for underlying data type\n utils.convertCustomFieldType(this);\n\n return this;\n }\n\n async bootstrap() {\n this.configureGlobalProxy();\n\n const models = [\n ...utils.transformContentTypesToModels(\n [...Object.values(this.contentTypes), ...Object.values(this.components)],\n this.db.metadata.identifiers\n ),\n ...this.get('models').get(),\n ];\n\n await this.db.init({ models });\n\n let oldContentTypes;\n if (await this.db.getSchemaConnection().hasTable(coreStoreModel.tableName)) {\n oldContentTypes = await this.store.get({\n type: 'strapi',\n name: 'content_types',\n key: 'schema',\n });\n }\n\n await this.hook('strapi::content-types.beforeSync').call({\n oldContentTypes,\n contentTypes: this.contentTypes,\n });\n\n // NOTE: commenting out repair logic for now as it is causing relationship loss in some cases\n // will revisit soon in the future PR\n\n const status = await this.db.schema.sync();\n\n // // if schemas have changed, run repairs\n if (status === 'CHANGED') {\n await this.db.repair.removeOrphanMorphType({ pivot: 'component_type' });\n await this.db.repair.removeOrphanMorphType({ pivot: 'related_type' });\n }\n\n const alreadyRanComponentRepair = await this.store.get({\n type: 'strapi',\n key: 'unidirectional-join-table-repair-ran',\n });\n\n if (!alreadyRanComponentRepair) {\n await this.db.repair.processUnidirectionalJoinTables(cleanComponentJoinTable);\n await this.store.set({\n type: 'strapi',\n key: 'unidirectional-join-table-repair-ran',\n value: true,\n });\n }\n\n if (this.EE) {\n await utils.ee.checkLicense({ strapi: this });\n }\n\n await this.hook('strapi::content-types.afterSync').call({\n oldContentTypes,\n contentTypes: this.contentTypes,\n });\n\n await this.store.set({\n type: 'strapi',\n name: 'content_types',\n key: 'schema',\n value: this.contentTypes,\n });\n\n await this.server.initMiddlewares();\n this.server.initRouting();\n\n await this.contentAPI.permissions.registerActions();\n\n await this.runPluginsLifecycles(utils.LIFECYCLES.BOOTSTRAP);\n\n for (const provider of providers) {\n await provider.bootstrap?.(this);\n }\n\n await this.runUserLifecycles(utils.LIFECYCLES.BOOTSTRAP);\n\n return this;\n }\n\n configureGlobalProxy() {\n const globalProxy = this.config.get('server.proxy.global');\n const httpProxy = this.config.get('server.proxy.http') || globalProxy;\n const httpsProxy = this.config.get('server.proxy.https') || globalProxy;\n\n if (!httpProxy && !httpsProxy) {\n return;\n }\n\n bootstrapGlobalAgent();\n\n if (httpProxy) {\n this.log.info(`Using HTTP proxy: ${httpProxy}`);\n (global as any).GLOBAL_AGENT.HTTP_PROXY = httpProxy;\n }\n\n if (httpsProxy) {\n this.log.info(`Using HTTPS proxy: ${httpsProxy}`);\n (global as any).GLOBAL_AGENT.HTTPS_PROXY = httpsProxy;\n }\n }\n\n async destroy() {\n this.log.info('Shutting down Strapi');\n await this.runPluginsLifecycles(utils.LIFECYCLES.DESTROY);\n\n for (const provider of providers) {\n await provider.destroy?.(this);\n }\n\n await this.runUserLifecycles(utils.LIFECYCLES.DESTROY);\n\n await this.server.destroy();\n\n this.eventHub.destroy();\n\n await this.db?.destroy();\n\n process.removeAllListeners();\n\n // @ts-expect-error: Allow clean delete of global.strapi to allow re-instanciation\n delete global.strapi;\n\n this.log.info('Strapi has been shut down');\n }\n\n async runPluginsLifecycles(lifecycleName: 'register' | 'bootstrap' | 'destroy') {\n // plugins\n await this.get('modules')[lifecycleName]();\n }\n\n async runUserLifecycles(lifecycleName: 'register' | 'bootstrap' | 'destroy') {\n // user\n const userLifecycleFunction = this.app && this.app[lifecycleName];\n if (isFunction(userLifecycleFunction)) {\n await userLifecycleFunction({ strapi: this });\n }\n }\n\n getModel(uid: UID.ContentType): Schema.ContentType;\n getModel(uid: UID.Component): Schema.Component;\n getModel<TUID extends UID.Schema>(uid: TUID): Schema.ContentType | Schema.Component | undefined {\n if (uid in this.contentTypes) {\n return this.contentTypes[uid as UID.ContentType];\n }\n\n if (uid in this.components) {\n return this.components[uid as UID.Component];\n }\n }\n\n /**\n * @deprecated Use `strapi.db.query` instead\n */\n query(uid: UID.Schema) {\n return this.db.query(uid);\n }\n}\n\nexport interface StrapiOptions {\n appDir: string;\n distDir: string;\n autoReload?: boolean;\n serveAdminPanel?: boolean;\n}\n\nexport default Strapi;\n"],"names":["Strapi","Container","admin","get","ai","EE","utils","isEE","ee","dirs","config","reload","db","requestContext","customFields","entityValidator","entityService","documents","features","fetch","cron","log","startupLogger","eventHub","fs","server","telemetry","sessionManager","store","services","getAll","service","uid","controllers","controller","contentTypes","contentType","name","components","policies","policy","middlewares","middleware","plugins","plugin","hooks","hook","apis","api","auth","contentAPI","sanitizers","validators","start","isLoaded","load","listen","error","stopWithError","registerInternalServices","createConfigProvider","internal_config","logger","createLogger","level","add","createQueryParamService","createContentAPI","createAuth","createServer","createStrapiFs","createEventHub","createFeaturesService","createCustomFields","createEntityService","strapi","createDocumentService","tsDir","tsUtils","resolveOutDirSync","app","root","tsMigrationsEnabled","projectDir","Database","_","merge","settings","migrations","dir","path","join","createReloader","createContentSourceMapsService","sendStartupTelemetry","send","groupProperties","database","Object","keys","numberOfAllContentTypes","size","numberOfComponents","numberOfDynamicZones","getNumberOfDynamicZones","numberOfConditionalFields","getNumberOfConditionalFields","numberOfCustomControllers","values","filter","undefined","factories","length","environment","catch","openAdmin","isInitialized","shouldOpenAdmin","e","postListen","logStartupMessage","info","Promise","resolve","reject","onListen","listenSocket","host","port","err","customMessage","debug","stop","exitCode","destroy","process","exit","register","bootstrap","init","provider","providers","runPluginsLifecycles","REGISTER","runUserLifecycles","configureGlobalProxy","models","metadata","identifiers","oldContentTypes","getSchemaConnection","hasTable","coreStoreModel","tableName","type","key","call","status","schema","sync","repair","removeOrphanMorphType","pivot","alreadyRanComponentRepair","processUnidirectionalJoinTables","cleanComponentJoinTable","set","value","checkLicense","initMiddlewares","initRouting","permissions","registerActions","BOOTSTRAP","globalProxy","httpProxy","httpsProxy","bootstrapGlobalAgent","global","GLOBAL_AGENT","HTTP_PROXY","HTTPS_PROXY","DESTROY","removeAllListeners","lifecycleName","userLifecycleFunction","isFunction","getModel","query","opts","loadConfiguration"],"mappings":"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"}
|
package/dist/Strapi.mjs
CHANGED
package/dist/Strapi.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Strapi.mjs","sources":["../src/Strapi.ts"],"sourcesContent":["import { bootstrap as bootstrapGlobalAgent } from 'global-agent';\nimport path from 'path';\nimport _ from 'lodash';\nimport { isFunction } from 'lodash/fp';\nimport { Logger, createLogger } from '@strapi/logger';\nimport { Database } from '@strapi/database';\n\nimport type { Core, Modules, UID, Schema } from '@strapi/types';\n\nimport tsUtils from '@strapi/typescript-utils';\nimport { loadConfiguration } from './configuration';\n\nimport * as factories from './factories';\n\nimport * as utils from './utils';\nimport { Container } from './container';\nimport createStrapiFs from './services/fs';\nimport createEventHub from './services/event-hub';\nimport { createServer } from './services/server';\nimport { createReloader } from './services/reloader';\n\nimport { providers } from './providers';\nimport createEntityService from './services/entity-service';\nimport createQueryParamService from './services/query-params';\n\nimport entityValidator from './services/entity-validator';\nimport requestContext from './services/request-context';\nimport createAuth from './services/auth';\nimport createCustomFields from './services/custom-fields';\nimport createContentAPI from './services/content-api';\nimport getNumberOfDynamicZones from './services/utils/dynamic-zones';\nimport getNumberOfConditionalFields from './services/utils/conditional-fields';\nimport { FeaturesService, createFeaturesService } from './services/features';\nimport { createDocumentService } from './services/document-service';\nimport { createContentSourceMapsService } from './services/content-source-maps';\n\nimport { coreStoreModel } from './services/core-store';\nimport { createConfigProvider } from './services/config';\n\nimport { cleanComponentJoinTable } from './services/document-service/utils/clean-component-join-table';\n\nclass Strapi extends Container implements Core.Strapi {\n app: any;\n\n isLoaded: boolean = false;\n\n internal_config: Record<string, unknown> = {};\n\n constructor(opts: StrapiOptions) {\n super();\n\n this.internal_config = loadConfiguration(opts);\n\n this.registerInternalServices();\n\n for (const provider of providers) {\n provider.init?.(this);\n }\n }\n\n get admin(): Core.Module {\n return this.get('admin');\n }\n\n get EE(): boolean {\n return utils.ee.isEE;\n }\n\n get ee(): Core.Strapi['ee'] {\n return utils.ee;\n }\n\n get dirs(): Core.StrapiDirectories {\n return this.config.get('dirs');\n }\n\n get reload(): Core.Reloader {\n return this.get('reload');\n }\n\n get db(): Database {\n return this.get('db');\n }\n\n get requestContext(): Modules.RequestContext.RequestContext {\n return this.get('requestContext');\n }\n\n get customFields(): Modules.CustomFields.CustomFields {\n return this.get('customFields');\n }\n\n get entityValidator(): Modules.EntityValidator.EntityValidator {\n return this.get('entityValidator');\n }\n\n /**\n * @deprecated `strapi.entityService` will be removed in the next major version\n */\n get entityService(): Modules.EntityService.EntityService {\n return this.get('entityService');\n }\n\n get documents(): Modules.Documents.Service {\n return this.get('documents');\n }\n\n get features(): FeaturesService {\n return this.get('features');\n }\n\n get fetch(): Modules.Fetch.Fetch {\n return this.get('fetch');\n }\n\n get cron(): Modules.Cron.CronService {\n return this.get('cron');\n }\n\n get log(): Logger {\n return this.get('logger');\n }\n\n get startupLogger(): Core.StartupLogger {\n return this.get('startupLogger');\n }\n\n get eventHub(): Modules.EventHub.EventHub {\n return this.get('eventHub');\n }\n\n get fs(): Core.StrapiFS {\n return this.get('fs');\n }\n\n get server(): Modules.Server.Server {\n return this.get('server');\n }\n\n get telemetry(): Modules.Metrics.TelemetryService {\n return this.get('telemetry');\n }\n\n get sessionManager(): Modules.SessionManager.SessionManagerService {\n return this.get('sessionManager');\n }\n\n get store(): Modules.CoreStore.CoreStore {\n return this.get('coreStore');\n }\n\n get config() {\n return this.get('config');\n }\n\n get services() {\n return this.get('services').getAll();\n }\n\n service(uid: UID.Service) {\n return this.get('services').get(uid);\n }\n\n get controllers() {\n return this.get('controllers').getAll();\n }\n\n controller(uid: UID.Controller) {\n return this.get('controllers').get(uid);\n }\n\n get contentTypes(): Schema.ContentTypes {\n return this.get('content-types').getAll();\n }\n\n contentType(name: UID.ContentType) {\n return this.get('content-types').get(name);\n }\n\n get components(): Schema.Components {\n return this.get('components').getAll();\n }\n\n get policies() {\n return this.get('policies').getAll();\n }\n\n policy(name: string) {\n return this.get('policies').get(name);\n }\n\n get middlewares() {\n return this.get('middlewares').getAll();\n }\n\n middleware(name: string) {\n return this.get('middlewares').get(name);\n }\n\n get plugins(): Record<string, Core.Plugin> {\n return this.get('plugins').getAll();\n }\n\n plugin(name: string): Core.Plugin {\n return this.get('plugins').get(name);\n }\n\n get hooks() {\n return this.get('hooks').getAll();\n }\n\n hook(name: string) {\n return this.get('hooks').get(name);\n }\n\n get apis() {\n return this.get('apis').getAll();\n }\n\n api(name: string): Core.Module {\n return this.get('apis').get(name);\n }\n\n get auth() {\n return this.get('auth');\n }\n\n get contentAPI() {\n return this.get('content-api');\n }\n\n get sanitizers() {\n return this.get('sanitizers');\n }\n\n get validators() {\n return this.get('validators');\n }\n\n async start() {\n try {\n if (!this.isLoaded) {\n await this.load();\n }\n\n await this.listen();\n\n return this;\n } catch (error) {\n return this.stopWithError(error);\n }\n }\n\n // TODO: split into more providers\n registerInternalServices() {\n const config = createConfigProvider(this.internal_config, this);\n\n const logger = createLogger({\n level: 'http', // Strapi defaults to level 'http'\n ...config.get('logger'), // DEPRECATED\n ...config.get('server.logger.config'),\n });\n\n // Instantiate the Strapi container\n this.add('config', () => config)\n .add('query-params', createQueryParamService(this))\n .add('content-api', createContentAPI(this))\n .add('auth', createAuth())\n .add('server', () => createServer(this))\n .add('fs', () => createStrapiFs(this))\n .add('eventHub', () => createEventHub())\n .add('startupLogger', () => utils.createStartupLogger(this))\n .add('logger', () => logger)\n .add('fetch', () => utils.createStrapiFetch(this))\n .add('features', () => createFeaturesService(this))\n .add('requestContext', requestContext)\n .add('customFields', createCustomFields(this))\n .add('entityValidator', entityValidator)\n .add('entityService', () => createEntityService({ strapi: this, db: this.db }))\n .add('documents', () => createDocumentService(this))\n .add('db', () => {\n const tsDir = tsUtils.resolveOutDirSync(this.dirs.app.root);\n const tsMigrationsEnabled =\n this.config.get('database.settings.useTypescriptMigrations') === true && tsDir;\n const projectDir = tsMigrationsEnabled ? tsDir : this.dirs.app.root;\n return new Database(\n _.merge(this.config.get('database'), {\n logger,\n settings: {\n migrations: {\n dir: path.join(projectDir, 'database/migrations'),\n },\n },\n })\n );\n })\n .add('reload', () => createReloader(this))\n .add('content-source-maps', () => createContentSourceMapsService(this));\n }\n\n sendStartupTelemetry() {\n // Emit started event.\n // do not await to avoid slower startup\n // This event is anonymous\n this.telemetry\n .send('didStartServer', {\n groupProperties: {\n database: this.config.get('database.connection.client'),\n plugins: Object.keys(this.plugins),\n numberOfAllContentTypes: _.size(this.contentTypes), // TODO: V5: This event should be renamed numberOfContentTypes in V5 as the name is already taken to describe the number of content types using i18n.\n numberOfComponents: _.size(this.components),\n numberOfDynamicZones: getNumberOfDynamicZones(),\n numberOfConditionalFields: getNumberOfConditionalFields(),\n numberOfCustomControllers: Object.values<Core.Controller>(this.controllers).filter(\n // TODO: Fix this at the content API loader level to prevent future types issues\n (controller) => controller !== undefined && factories.isCustomController(controller)\n ).length,\n environment: this.config.environment,\n // TODO: to add back\n // providers: this.config.installedProviders,\n },\n })\n .catch(this.log.error);\n }\n\n async openAdmin({ isInitialized }: { isInitialized: boolean }) {\n const shouldOpenAdmin =\n this.config.get('environment') === 'development' &&\n this.config.get('admin.autoOpen', true) !== false;\n\n if (shouldOpenAdmin && !isInitialized) {\n try {\n await utils.openBrowser(this.config);\n this.telemetry.send('didOpenTab');\n } catch (e) {\n this.telemetry.send('didNotOpenTab');\n }\n }\n }\n\n async postListen() {\n const isInitialized = await utils.isInitialized(this);\n\n this.startupLogger.logStartupMessage({ isInitialized });\n\n this.log.info('Strapi started successfully');\n this.sendStartupTelemetry();\n this.openAdmin({ isInitialized });\n }\n\n /**\n * Add behaviors to the server\n */\n async listen() {\n return new Promise<void>((resolve, reject) => {\n const onListen = async () => {\n try {\n await this.postListen();\n\n resolve();\n } catch (error) {\n reject(error);\n }\n };\n\n const listenSocket = this.config.get('server.socket');\n\n if (listenSocket) {\n this.server.listen(listenSocket, onListen);\n } else {\n const { host, port } = this.config.get('server');\n\n this.server.listen(port, host, onListen);\n }\n });\n }\n\n stopWithError(err: unknown, customMessage?: string): never {\n this.log.debug(`⛔️ Server wasn't able to start properly.`);\n if (customMessage) {\n this.log.error(customMessage);\n }\n\n this.log.error(err);\n return this.stop();\n }\n\n stop(exitCode = 1): never {\n this.destroy();\n\n if (this.config.get('autoReload')) {\n process.send?.('stop');\n }\n\n // Kill process\n process.exit(exitCode);\n }\n\n async load() {\n await this.register();\n await this.bootstrap();\n\n this.isLoaded = true;\n\n return this;\n }\n\n async register() {\n // @ts-expect-error: init is internal\n this.ee.init(this.dirs.app.root, this.log);\n\n for (const provider of providers) {\n await provider.register?.(this);\n }\n\n await this.runPluginsLifecycles(utils.LIFECYCLES.REGISTER);\n await this.runUserLifecycles(utils.LIFECYCLES.REGISTER);\n\n // NOTE: Swap type customField for underlying data type\n utils.convertCustomFieldType(this);\n\n return this;\n }\n\n async bootstrap() {\n this.configureGlobalProxy();\n\n const models = [\n ...utils.transformContentTypesToModels(\n [...Object.values(this.contentTypes), ...Object.values(this.components)],\n this.db.metadata.identifiers\n ),\n ...this.get('models').get(),\n ];\n\n await this.db.init({ models });\n\n let oldContentTypes;\n if (await this.db.getSchemaConnection().hasTable(coreStoreModel.tableName)) {\n oldContentTypes = await this.store.get({\n type: 'strapi',\n name: 'content_types',\n key: 'schema',\n });\n }\n\n await this.hook('strapi::content-types.beforeSync').call({\n oldContentTypes,\n contentTypes: this.contentTypes,\n });\n\n // NOTE: commenting out repair logic for now as it is causing relationship loss in some cases\n // will revisit soon in the future PR\n\n const status = await this.db.schema.sync();\n\n // // if schemas have changed, run repairs\n if (status === 'CHANGED') {\n await this.db.repair.removeOrphanMorphType({ pivot: 'component_type' });\n await this.db.repair.removeOrphanMorphType({ pivot: 'related_type' });\n }\n\n const alreadyRanComponentRepair = await this.store.get({\n type: 'strapi',\n key: 'unidirectional-join-table-repair-ran',\n });\n\n if (!alreadyRanComponentRepair) {\n await this.db.repair.processUnidirectionalJoinTables(cleanComponentJoinTable);\n await this.store.set({\n type: 'strapi',\n key: 'unidirectional-join-table-repair-ran',\n value: true,\n });\n }\n\n if (this.EE) {\n await utils.ee.checkLicense({ strapi: this });\n }\n\n await this.hook('strapi::content-types.afterSync').call({\n oldContentTypes,\n contentTypes: this.contentTypes,\n });\n\n await this.store.set({\n type: 'strapi',\n name: 'content_types',\n key: 'schema',\n value: this.contentTypes,\n });\n\n await this.server.initMiddlewares();\n this.server.initRouting();\n\n await this.contentAPI.permissions.registerActions();\n\n await this.runPluginsLifecycles(utils.LIFECYCLES.BOOTSTRAP);\n\n for (const provider of providers) {\n await provider.bootstrap?.(this);\n }\n\n await this.runUserLifecycles(utils.LIFECYCLES.BOOTSTRAP);\n\n return this;\n }\n\n configureGlobalProxy() {\n const globalProxy = this.config.get('server.proxy.global');\n const httpProxy = this.config.get('server.proxy.http') || globalProxy;\n const httpsProxy = this.config.get('server.proxy.https') || globalProxy;\n\n if (!httpProxy && !httpsProxy) {\n return;\n }\n\n bootstrapGlobalAgent();\n\n if (httpProxy) {\n this.log.info(`Using HTTP proxy: ${httpProxy}`);\n (global as any).GLOBAL_AGENT.HTTP_PROXY = httpProxy;\n }\n\n if (httpsProxy) {\n this.log.info(`Using HTTPS proxy: ${httpsProxy}`);\n (global as any).GLOBAL_AGENT.HTTPS_PROXY = httpsProxy;\n }\n }\n\n async destroy() {\n this.log.info('Shutting down Strapi');\n await this.runPluginsLifecycles(utils.LIFECYCLES.DESTROY);\n\n for (const provider of providers) {\n await provider.destroy?.(this);\n }\n\n await this.runUserLifecycles(utils.LIFECYCLES.DESTROY);\n\n await this.server.destroy();\n\n this.eventHub.destroy();\n\n await this.db?.destroy();\n\n process.removeAllListeners();\n\n // @ts-expect-error: Allow clean delete of global.strapi to allow re-instanciation\n delete global.strapi;\n\n this.log.info('Strapi has been shut down');\n }\n\n async runPluginsLifecycles(lifecycleName: 'register' | 'bootstrap' | 'destroy') {\n // plugins\n await this.get('modules')[lifecycleName]();\n }\n\n async runUserLifecycles(lifecycleName: 'register' | 'bootstrap' | 'destroy') {\n // user\n const userLifecycleFunction = this.app && this.app[lifecycleName];\n if (isFunction(userLifecycleFunction)) {\n await userLifecycleFunction({ strapi: this });\n }\n }\n\n getModel(uid: UID.ContentType): Schema.ContentType;\n getModel(uid: UID.Component): Schema.Component;\n getModel<TUID extends UID.Schema>(uid: TUID): Schema.ContentType | Schema.Component | undefined {\n if (uid in this.contentTypes) {\n return this.contentTypes[uid as UID.ContentType];\n }\n\n if (uid in this.components) {\n return this.components[uid as UID.Component];\n }\n }\n\n /**\n * @deprecated Use `strapi.db.query` instead\n */\n query(uid: UID.Schema) {\n return this.db.query(uid);\n }\n}\n\nexport interface StrapiOptions {\n appDir: string;\n distDir: string;\n autoReload?: boolean;\n serveAdminPanel?: boolean;\n}\n\nexport default Strapi;\n"],"names":["Strapi","Container","admin","get","EE","utils","isEE","ee","dirs","config","reload","db","requestContext","customFields","entityValidator","entityService","documents","features","fetch","cron","log","startupLogger","eventHub","fs","server","telemetry","sessionManager","store","services","getAll","service","uid","controllers","controller","contentTypes","contentType","name","components","policies","policy","middlewares","middleware","plugins","plugin","hooks","hook","apis","api","auth","contentAPI","sanitizers","validators","start","isLoaded","load","listen","error","stopWithError","registerInternalServices","createConfigProvider","internal_config","logger","createLogger","level","add","createQueryParamService","createContentAPI","createAuth","createServer","createStrapiFs","createEventHub","createFeaturesService","createCustomFields","createEntityService","strapi","createDocumentService","tsDir","tsUtils","resolveOutDirSync","app","root","tsMigrationsEnabled","projectDir","Database","_","merge","settings","migrations","dir","path","join","createReloader","createContentSourceMapsService","sendStartupTelemetry","send","groupProperties","database","Object","keys","numberOfAllContentTypes","size","numberOfComponents","numberOfDynamicZones","getNumberOfDynamicZones","numberOfConditionalFields","getNumberOfConditionalFields","numberOfCustomControllers","values","filter","undefined","factories","length","environment","catch","openAdmin","isInitialized","shouldOpenAdmin","e","postListen","logStartupMessage","info","Promise","resolve","reject","onListen","listenSocket","host","port","err","customMessage","debug","stop","exitCode","destroy","process","exit","register","bootstrap","init","provider","providers","runPluginsLifecycles","REGISTER","runUserLifecycles","configureGlobalProxy","models","metadata","identifiers","oldContentTypes","getSchemaConnection","hasTable","coreStoreModel","tableName","type","key","call","status","schema","sync","repair","removeOrphanMorphType","pivot","alreadyRanComponentRepair","processUnidirectionalJoinTables","cleanComponentJoinTable","set","value","checkLicense","initMiddlewares","initRouting","permissions","registerActions","BOOTSTRAP","globalProxy","httpProxy","httpsProxy","bootstrapGlobalAgent","global","GLOBAL_AGENT","HTTP_PROXY","HTTPS_PROXY","DESTROY","removeAllListeners","lifecycleName","userLifecycleFunction","isFunction","getModel","query","opts","loadConfiguration"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Strapi.mjs","sources":["../src/Strapi.ts"],"sourcesContent":["import { bootstrap as bootstrapGlobalAgent } from 'global-agent';\nimport path from 'path';\nimport _ from 'lodash';\nimport { isFunction } from 'lodash/fp';\nimport { Logger, createLogger } from '@strapi/logger';\nimport { Database } from '@strapi/database';\n\nimport type { Core, Modules, UID, Schema } from '@strapi/types';\n\nimport tsUtils from '@strapi/typescript-utils';\nimport { loadConfiguration } from './configuration';\n\nimport * as factories from './factories';\n\nimport * as utils from './utils';\nimport { Container } from './container';\nimport createStrapiFs from './services/fs';\nimport createEventHub from './services/event-hub';\nimport { createServer } from './services/server';\nimport { createReloader } from './services/reloader';\n\nimport { providers } from './providers';\nimport createEntityService from './services/entity-service';\nimport createQueryParamService from './services/query-params';\n\nimport entityValidator from './services/entity-validator';\nimport requestContext from './services/request-context';\nimport createAuth from './services/auth';\nimport createCustomFields from './services/custom-fields';\nimport createContentAPI from './services/content-api';\nimport getNumberOfDynamicZones from './services/utils/dynamic-zones';\nimport getNumberOfConditionalFields from './services/utils/conditional-fields';\nimport { FeaturesService, createFeaturesService } from './services/features';\nimport { createDocumentService } from './services/document-service';\nimport { createContentSourceMapsService } from './services/content-source-maps';\n\nimport { coreStoreModel } from './services/core-store';\nimport { createConfigProvider } from './services/config';\n\nimport { cleanComponentJoinTable } from './services/document-service/utils/clean-component-join-table';\n\nclass Strapi extends Container implements Core.Strapi {\n app: any;\n\n isLoaded: boolean = false;\n\n internal_config: Record<string, unknown> = {};\n\n constructor(opts: StrapiOptions) {\n super();\n\n this.internal_config = loadConfiguration(opts);\n\n this.registerInternalServices();\n\n for (const provider of providers) {\n provider.init?.(this);\n }\n }\n\n get admin(): Core.Module {\n return this.get('admin');\n }\n\n get ai(): Modules.AI.AiNamespace {\n return this.get('ai');\n }\n\n get EE(): boolean {\n return utils.ee.isEE;\n }\n\n get ee(): Core.Strapi['ee'] {\n return utils.ee;\n }\n\n get dirs(): Core.StrapiDirectories {\n return this.config.get('dirs');\n }\n\n get reload(): Core.Reloader {\n return this.get('reload');\n }\n\n get db(): Database {\n return this.get('db');\n }\n\n get requestContext(): Modules.RequestContext.RequestContext {\n return this.get('requestContext');\n }\n\n get customFields(): Modules.CustomFields.CustomFields {\n return this.get('customFields');\n }\n\n get entityValidator(): Modules.EntityValidator.EntityValidator {\n return this.get('entityValidator');\n }\n\n /**\n * @deprecated `strapi.entityService` will be removed in the next major version\n */\n get entityService(): Modules.EntityService.EntityService {\n return this.get('entityService');\n }\n\n get documents(): Modules.Documents.Service {\n return this.get('documents');\n }\n\n get features(): FeaturesService {\n return this.get('features');\n }\n\n get fetch(): Modules.Fetch.Fetch {\n return this.get('fetch');\n }\n\n get cron(): Modules.Cron.CronService {\n return this.get('cron');\n }\n\n get log(): Logger {\n return this.get('logger');\n }\n\n get startupLogger(): Core.StartupLogger {\n return this.get('startupLogger');\n }\n\n get eventHub(): Modules.EventHub.EventHub {\n return this.get('eventHub');\n }\n\n get fs(): Core.StrapiFS {\n return this.get('fs');\n }\n\n get server(): Modules.Server.Server {\n return this.get('server');\n }\n\n get telemetry(): Modules.Metrics.TelemetryService {\n return this.get('telemetry');\n }\n\n get sessionManager(): Modules.SessionManager.SessionManagerService {\n return this.get('sessionManager');\n }\n\n get store(): Modules.CoreStore.CoreStore {\n return this.get('coreStore');\n }\n\n get config() {\n return this.get('config');\n }\n\n get services() {\n return this.get('services').getAll();\n }\n\n service(uid: UID.Service) {\n return this.get('services').get(uid);\n }\n\n get controllers() {\n return this.get('controllers').getAll();\n }\n\n controller(uid: UID.Controller) {\n return this.get('controllers').get(uid);\n }\n\n get contentTypes(): Schema.ContentTypes {\n return this.get('content-types').getAll();\n }\n\n contentType(name: UID.ContentType) {\n return this.get('content-types').get(name);\n }\n\n get components(): Schema.Components {\n return this.get('components').getAll();\n }\n\n get policies() {\n return this.get('policies').getAll();\n }\n\n policy(name: string) {\n return this.get('policies').get(name);\n }\n\n get middlewares() {\n return this.get('middlewares').getAll();\n }\n\n middleware(name: string) {\n return this.get('middlewares').get(name);\n }\n\n get plugins(): Record<string, Core.Plugin> {\n return this.get('plugins').getAll();\n }\n\n plugin(name: string): Core.Plugin {\n return this.get('plugins').get(name);\n }\n\n get hooks() {\n return this.get('hooks').getAll();\n }\n\n hook(name: string) {\n return this.get('hooks').get(name);\n }\n\n get apis() {\n return this.get('apis').getAll();\n }\n\n api(name: string): Core.Module {\n return this.get('apis').get(name);\n }\n\n get auth() {\n return this.get('auth');\n }\n\n get contentAPI() {\n return this.get('content-api');\n }\n\n get sanitizers() {\n return this.get('sanitizers');\n }\n\n get validators() {\n return this.get('validators');\n }\n\n async start() {\n try {\n if (!this.isLoaded) {\n await this.load();\n }\n\n await this.listen();\n\n return this;\n } catch (error) {\n return this.stopWithError(error);\n }\n }\n\n // TODO: split into more providers\n registerInternalServices() {\n const config = createConfigProvider(this.internal_config, this);\n\n const logger = createLogger({\n level: 'http', // Strapi defaults to level 'http'\n ...config.get('logger'), // DEPRECATED\n ...config.get('server.logger.config'),\n });\n\n // Instantiate the Strapi container\n this.add('config', () => config)\n .add('query-params', createQueryParamService(this))\n .add('content-api', createContentAPI(this))\n .add('auth', createAuth())\n .add('server', () => createServer(this))\n .add('fs', () => createStrapiFs(this))\n .add('eventHub', () => createEventHub())\n .add('startupLogger', () => utils.createStartupLogger(this))\n .add('logger', () => logger)\n .add('fetch', () => utils.createStrapiFetch(this))\n .add('features', () => createFeaturesService(this))\n .add('requestContext', requestContext)\n .add('customFields', createCustomFields(this))\n .add('entityValidator', entityValidator)\n .add('entityService', () => createEntityService({ strapi: this, db: this.db }))\n .add('documents', () => createDocumentService(this))\n .add('db', () => {\n const tsDir = tsUtils.resolveOutDirSync(this.dirs.app.root);\n const tsMigrationsEnabled =\n this.config.get('database.settings.useTypescriptMigrations') === true && tsDir;\n const projectDir = tsMigrationsEnabled ? tsDir : this.dirs.app.root;\n return new Database(\n _.merge(this.config.get('database'), {\n logger,\n settings: {\n migrations: {\n dir: path.join(projectDir, 'database/migrations'),\n },\n },\n })\n );\n })\n .add('reload', () => createReloader(this))\n .add('content-source-maps', () => createContentSourceMapsService(this));\n }\n\n sendStartupTelemetry() {\n // Emit started event.\n // do not await to avoid slower startup\n // This event is anonymous\n this.telemetry\n .send('didStartServer', {\n groupProperties: {\n database: this.config.get('database.connection.client'),\n plugins: Object.keys(this.plugins),\n numberOfAllContentTypes: _.size(this.contentTypes), // TODO: V5: This event should be renamed numberOfContentTypes in V5 as the name is already taken to describe the number of content types using i18n.\n numberOfComponents: _.size(this.components),\n numberOfDynamicZones: getNumberOfDynamicZones(),\n numberOfConditionalFields: getNumberOfConditionalFields(),\n numberOfCustomControllers: Object.values<Core.Controller>(this.controllers).filter(\n // TODO: Fix this at the content API loader level to prevent future types issues\n (controller) => controller !== undefined && factories.isCustomController(controller)\n ).length,\n environment: this.config.environment,\n // TODO: to add back\n // providers: this.config.installedProviders,\n },\n })\n .catch(this.log.error);\n }\n\n async openAdmin({ isInitialized }: { isInitialized: boolean }) {\n const shouldOpenAdmin =\n this.config.get('environment') === 'development' &&\n this.config.get('admin.autoOpen', true) !== false;\n\n if (shouldOpenAdmin && !isInitialized) {\n try {\n await utils.openBrowser(this.config);\n this.telemetry.send('didOpenTab');\n } catch (e) {\n this.telemetry.send('didNotOpenTab');\n }\n }\n }\n\n async postListen() {\n const isInitialized = await utils.isInitialized(this);\n\n this.startupLogger.logStartupMessage({ isInitialized });\n\n this.log.info('Strapi started successfully');\n this.sendStartupTelemetry();\n this.openAdmin({ isInitialized });\n }\n\n /**\n * Add behaviors to the server\n */\n async listen() {\n return new Promise<void>((resolve, reject) => {\n const onListen = async () => {\n try {\n await this.postListen();\n\n resolve();\n } catch (error) {\n reject(error);\n }\n };\n\n const listenSocket = this.config.get('server.socket');\n\n if (listenSocket) {\n this.server.listen(listenSocket, onListen);\n } else {\n const { host, port } = this.config.get('server');\n\n this.server.listen(port, host, onListen);\n }\n });\n }\n\n stopWithError(err: unknown, customMessage?: string): never {\n this.log.debug(`⛔️ Server wasn't able to start properly.`);\n if (customMessage) {\n this.log.error(customMessage);\n }\n\n this.log.error(err);\n return this.stop();\n }\n\n stop(exitCode = 1): never {\n this.destroy();\n\n if (this.config.get('autoReload')) {\n process.send?.('stop');\n }\n\n // Kill process\n process.exit(exitCode);\n }\n\n async load() {\n await this.register();\n await this.bootstrap();\n\n this.isLoaded = true;\n\n return this;\n }\n\n async register() {\n // @ts-expect-error: init is internal\n this.ee.init(this.dirs.app.root, this.log);\n\n for (const provider of providers) {\n await provider.register?.(this);\n }\n\n await this.runPluginsLifecycles(utils.LIFECYCLES.REGISTER);\n await this.runUserLifecycles(utils.LIFECYCLES.REGISTER);\n\n // NOTE: Swap type customField for underlying data type\n utils.convertCustomFieldType(this);\n\n return this;\n }\n\n async bootstrap() {\n this.configureGlobalProxy();\n\n const models = [\n ...utils.transformContentTypesToModels(\n [...Object.values(this.contentTypes), ...Object.values(this.components)],\n this.db.metadata.identifiers\n ),\n ...this.get('models').get(),\n ];\n\n await this.db.init({ models });\n\n let oldContentTypes;\n if (await this.db.getSchemaConnection().hasTable(coreStoreModel.tableName)) {\n oldContentTypes = await this.store.get({\n type: 'strapi',\n name: 'content_types',\n key: 'schema',\n });\n }\n\n await this.hook('strapi::content-types.beforeSync').call({\n oldContentTypes,\n contentTypes: this.contentTypes,\n });\n\n // NOTE: commenting out repair logic for now as it is causing relationship loss in some cases\n // will revisit soon in the future PR\n\n const status = await this.db.schema.sync();\n\n // // if schemas have changed, run repairs\n if (status === 'CHANGED') {\n await this.db.repair.removeOrphanMorphType({ pivot: 'component_type' });\n await this.db.repair.removeOrphanMorphType({ pivot: 'related_type' });\n }\n\n const alreadyRanComponentRepair = await this.store.get({\n type: 'strapi',\n key: 'unidirectional-join-table-repair-ran',\n });\n\n if (!alreadyRanComponentRepair) {\n await this.db.repair.processUnidirectionalJoinTables(cleanComponentJoinTable);\n await this.store.set({\n type: 'strapi',\n key: 'unidirectional-join-table-repair-ran',\n value: true,\n });\n }\n\n if (this.EE) {\n await utils.ee.checkLicense({ strapi: this });\n }\n\n await this.hook('strapi::content-types.afterSync').call({\n oldContentTypes,\n contentTypes: this.contentTypes,\n });\n\n await this.store.set({\n type: 'strapi',\n name: 'content_types',\n key: 'schema',\n value: this.contentTypes,\n });\n\n await this.server.initMiddlewares();\n this.server.initRouting();\n\n await this.contentAPI.permissions.registerActions();\n\n await this.runPluginsLifecycles(utils.LIFECYCLES.BOOTSTRAP);\n\n for (const provider of providers) {\n await provider.bootstrap?.(this);\n }\n\n await this.runUserLifecycles(utils.LIFECYCLES.BOOTSTRAP);\n\n return this;\n }\n\n configureGlobalProxy() {\n const globalProxy = this.config.get('server.proxy.global');\n const httpProxy = this.config.get('server.proxy.http') || globalProxy;\n const httpsProxy = this.config.get('server.proxy.https') || globalProxy;\n\n if (!httpProxy && !httpsProxy) {\n return;\n }\n\n bootstrapGlobalAgent();\n\n if (httpProxy) {\n this.log.info(`Using HTTP proxy: ${httpProxy}`);\n (global as any).GLOBAL_AGENT.HTTP_PROXY = httpProxy;\n }\n\n if (httpsProxy) {\n this.log.info(`Using HTTPS proxy: ${httpsProxy}`);\n (global as any).GLOBAL_AGENT.HTTPS_PROXY = httpsProxy;\n }\n }\n\n async destroy() {\n this.log.info('Shutting down Strapi');\n await this.runPluginsLifecycles(utils.LIFECYCLES.DESTROY);\n\n for (const provider of providers) {\n await provider.destroy?.(this);\n }\n\n await this.runUserLifecycles(utils.LIFECYCLES.DESTROY);\n\n await this.server.destroy();\n\n this.eventHub.destroy();\n\n await this.db?.destroy();\n\n process.removeAllListeners();\n\n // @ts-expect-error: Allow clean delete of global.strapi to allow re-instanciation\n delete global.strapi;\n\n this.log.info('Strapi has been shut down');\n }\n\n async runPluginsLifecycles(lifecycleName: 'register' | 'bootstrap' | 'destroy') {\n // plugins\n await this.get('modules')[lifecycleName]();\n }\n\n async runUserLifecycles(lifecycleName: 'register' | 'bootstrap' | 'destroy') {\n // user\n const userLifecycleFunction = this.app && this.app[lifecycleName];\n if (isFunction(userLifecycleFunction)) {\n await userLifecycleFunction({ strapi: this });\n }\n }\n\n getModel(uid: UID.ContentType): Schema.ContentType;\n getModel(uid: UID.Component): Schema.Component;\n getModel<TUID extends UID.Schema>(uid: TUID): Schema.ContentType | Schema.Component | undefined {\n if (uid in this.contentTypes) {\n return this.contentTypes[uid as UID.ContentType];\n }\n\n if (uid in this.components) {\n return this.components[uid as UID.Component];\n }\n }\n\n /**\n * @deprecated Use `strapi.db.query` instead\n */\n query(uid: UID.Schema) {\n return this.db.query(uid);\n }\n}\n\nexport interface StrapiOptions {\n appDir: string;\n distDir: string;\n autoReload?: boolean;\n serveAdminPanel?: boolean;\n}\n\nexport default Strapi;\n"],"names":["Strapi","Container","admin","get","ai","EE","utils","isEE","ee","dirs","config","reload","db","requestContext","customFields","entityValidator","entityService","documents","features","fetch","cron","log","startupLogger","eventHub","fs","server","telemetry","sessionManager","store","services","getAll","service","uid","controllers","controller","contentTypes","contentType","name","components","policies","policy","middlewares","middleware","plugins","plugin","hooks","hook","apis","api","auth","contentAPI","sanitizers","validators","start","isLoaded","load","listen","error","stopWithError","registerInternalServices","createConfigProvider","internal_config","logger","createLogger","level","add","createQueryParamService","createContentAPI","createAuth","createServer","createStrapiFs","createEventHub","createFeaturesService","createCustomFields","createEntityService","strapi","createDocumentService","tsDir","tsUtils","resolveOutDirSync","app","root","tsMigrationsEnabled","projectDir","Database","_","merge","settings","migrations","dir","path","join","createReloader","createContentSourceMapsService","sendStartupTelemetry","send","groupProperties","database","Object","keys","numberOfAllContentTypes","size","numberOfComponents","numberOfDynamicZones","getNumberOfDynamicZones","numberOfConditionalFields","getNumberOfConditionalFields","numberOfCustomControllers","values","filter","undefined","factories","length","environment","catch","openAdmin","isInitialized","shouldOpenAdmin","e","postListen","logStartupMessage","info","Promise","resolve","reject","onListen","listenSocket","host","port","err","customMessage","debug","stop","exitCode","destroy","process","exit","register","bootstrap","init","provider","providers","runPluginsLifecycles","REGISTER","runUserLifecycles","configureGlobalProxy","models","metadata","identifiers","oldContentTypes","getSchemaConnection","hasTable","coreStoreModel","tableName","type","key","call","status","schema","sync","repair","removeOrphanMorphType","pivot","alreadyRanComponentRepair","processUnidirectionalJoinTables","cleanComponentJoinTable","set","value","checkLicense","initMiddlewares","initRouting","permissions","registerActions","BOOTSTRAP","globalProxy","httpProxy","httpsProxy","bootstrapGlobalAgent","global","GLOBAL_AGENT","HTTP_PROXY","HTTPS_PROXY","DESTROY","removeAllListeners","lifecycleName","userLifecycleFunction","isFunction","getModel","query","opts","loadConfiguration"],"mappings":"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"}
|
package/dist/compile.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../src/compile.ts"],"names":[],"mappings":"AAEA,UAAU,OAAO;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,wBAA8B,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO;;;
|
|
1
|
+
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../src/compile.ts"],"names":[],"mappings":"AAEA,UAAU,OAAO;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,wBAA8B,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO;;;GAmBtD"}
|
package/dist/compile.js
CHANGED
|
@@ -7,14 +7,19 @@ async function compile(options) {
|
|
|
7
7
|
const isTSProject = await tsUtils.isUsingTypeScript(appDir);
|
|
8
8
|
const outDir = await tsUtils.resolveOutDir(appDir);
|
|
9
9
|
if (isTSProject) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
try {
|
|
11
|
+
await tsUtils.compile(appDir, {
|
|
12
|
+
configOptions: {
|
|
13
|
+
options: {
|
|
14
|
+
incremental: true
|
|
15
|
+
},
|
|
16
|
+
ignoreDiagnostics
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
} catch (err) {
|
|
20
|
+
// we exit here to maintain the same behavior as before.
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
18
23
|
}
|
|
19
24
|
const distDir = isTSProject ? outDir : appDir;
|
|
20
25
|
return {
|
package/dist/compile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.js","sources":["../src/compile.ts"],"sourcesContent":["import tsUtils from '@strapi/typescript-utils';\n\ninterface Options {\n appDir?: string;\n ignoreDiagnostics?: boolean;\n}\n\nexport default async function compile(options?: Options) {\n const { appDir = process.cwd(), ignoreDiagnostics = false } = options ?? {};\n const isTSProject = await tsUtils.isUsingTypeScript(appDir);\n const outDir = await tsUtils.resolveOutDir(appDir);\n\n if (isTSProject) {\n await tsUtils.compile(appDir, {\n
|
|
1
|
+
{"version":3,"file":"compile.js","sources":["../src/compile.ts"],"sourcesContent":["import tsUtils from '@strapi/typescript-utils';\n\ninterface Options {\n appDir?: string;\n ignoreDiagnostics?: boolean;\n}\n\nexport default async function compile(options?: Options) {\n const { appDir = process.cwd(), ignoreDiagnostics = false } = options ?? {};\n const isTSProject = await tsUtils.isUsingTypeScript(appDir);\n const outDir = await tsUtils.resolveOutDir(appDir);\n\n if (isTSProject) {\n try {\n await tsUtils.compile(appDir, {\n configOptions: { options: { incremental: true }, ignoreDiagnostics },\n });\n } catch (err: unknown) {\n // we exit here to maintain the same behavior as before.\n process.exit(1);\n }\n }\n\n const distDir = isTSProject ? outDir : appDir;\n\n return { appDir, distDir };\n}\n"],"names":["compile","options","appDir","process","cwd","ignoreDiagnostics","isTSProject","tsUtils","isUsingTypeScript","outDir","resolveOutDir","configOptions","incremental","err","exit","distDir"],"mappings":";;;;AAOe,eAAeA,QAAQC,OAAiB,EAAA;IACrD,MAAM,EAAEC,MAAAA,GAASC,OAAAA,CAAQC,GAAG,EAAE,EAAEC,iBAAAA,GAAoB,KAAK,EAAE,GAAGJ,OAAAA,IAAW,EAAC;AAC1E,IAAA,MAAMK,WAAAA,GAAc,MAAMC,OAAAA,CAAQC,iBAAiB,CAACN,MAAAA,CAAAA;AACpD,IAAA,MAAMO,MAAAA,GAAS,MAAMF,OAAAA,CAAQG,aAAa,CAACR,MAAAA,CAAAA;AAE3C,IAAA,IAAII,WAAAA,EAAa;QACf,IAAI;YACF,MAAMC,OAAAA,CAAQP,OAAO,CAACE,MAAAA,EAAQ;gBAC5BS,aAAAA,EAAe;oBAAEV,OAAAA,EAAS;wBAAEW,WAAAA,EAAa;AAAK,qBAAA;AAAGP,oBAAAA;AAAkB;AACrE,aAAA,CAAA;AACF,QAAA,CAAA,CAAE,OAAOQ,GAAAA,EAAc;;AAErBV,YAAAA,OAAAA,CAAQW,IAAI,CAAC,CAAA,CAAA;AACf,QAAA;AACF,IAAA;IAEA,MAAMC,OAAAA,GAAUT,cAAcG,MAAAA,GAASP,MAAAA;IAEvC,OAAO;AAAEA,QAAAA,MAAAA;AAAQa,QAAAA;AAAQ,KAAA;AAC3B;;;;"}
|
package/dist/compile.mjs
CHANGED
|
@@ -5,14 +5,19 @@ async function compile(options) {
|
|
|
5
5
|
const isTSProject = await tsUtils.isUsingTypeScript(appDir);
|
|
6
6
|
const outDir = await tsUtils.resolveOutDir(appDir);
|
|
7
7
|
if (isTSProject) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
try {
|
|
9
|
+
await tsUtils.compile(appDir, {
|
|
10
|
+
configOptions: {
|
|
11
|
+
options: {
|
|
12
|
+
incremental: true
|
|
13
|
+
},
|
|
14
|
+
ignoreDiagnostics
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
} catch (err) {
|
|
18
|
+
// we exit here to maintain the same behavior as before.
|
|
19
|
+
process.exit(1);
|
|
20
|
+
}
|
|
16
21
|
}
|
|
17
22
|
const distDir = isTSProject ? outDir : appDir;
|
|
18
23
|
return {
|
package/dist/compile.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.mjs","sources":["../src/compile.ts"],"sourcesContent":["import tsUtils from '@strapi/typescript-utils';\n\ninterface Options {\n appDir?: string;\n ignoreDiagnostics?: boolean;\n}\n\nexport default async function compile(options?: Options) {\n const { appDir = process.cwd(), ignoreDiagnostics = false } = options ?? {};\n const isTSProject = await tsUtils.isUsingTypeScript(appDir);\n const outDir = await tsUtils.resolveOutDir(appDir);\n\n if (isTSProject) {\n await tsUtils.compile(appDir, {\n
|
|
1
|
+
{"version":3,"file":"compile.mjs","sources":["../src/compile.ts"],"sourcesContent":["import tsUtils from '@strapi/typescript-utils';\n\ninterface Options {\n appDir?: string;\n ignoreDiagnostics?: boolean;\n}\n\nexport default async function compile(options?: Options) {\n const { appDir = process.cwd(), ignoreDiagnostics = false } = options ?? {};\n const isTSProject = await tsUtils.isUsingTypeScript(appDir);\n const outDir = await tsUtils.resolveOutDir(appDir);\n\n if (isTSProject) {\n try {\n await tsUtils.compile(appDir, {\n configOptions: { options: { incremental: true }, ignoreDiagnostics },\n });\n } catch (err: unknown) {\n // we exit here to maintain the same behavior as before.\n process.exit(1);\n }\n }\n\n const distDir = isTSProject ? outDir : appDir;\n\n return { appDir, distDir };\n}\n"],"names":["compile","options","appDir","process","cwd","ignoreDiagnostics","isTSProject","tsUtils","isUsingTypeScript","outDir","resolveOutDir","configOptions","incremental","err","exit","distDir"],"mappings":";;AAOe,eAAeA,QAAQC,OAAiB,EAAA;IACrD,MAAM,EAAEC,MAAAA,GAASC,OAAAA,CAAQC,GAAG,EAAE,EAAEC,iBAAAA,GAAoB,KAAK,EAAE,GAAGJ,OAAAA,IAAW,EAAC;AAC1E,IAAA,MAAMK,WAAAA,GAAc,MAAMC,OAAAA,CAAQC,iBAAiB,CAACN,MAAAA,CAAAA;AACpD,IAAA,MAAMO,MAAAA,GAAS,MAAMF,OAAAA,CAAQG,aAAa,CAACR,MAAAA,CAAAA;AAE3C,IAAA,IAAII,WAAAA,EAAa;QACf,IAAI;YACF,MAAMC,OAAAA,CAAQP,OAAO,CAACE,MAAAA,EAAQ;gBAC5BS,aAAAA,EAAe;oBAAEV,OAAAA,EAAS;wBAAEW,WAAAA,EAAa;AAAK,qBAAA;AAAGP,oBAAAA;AAAkB;AACrE,aAAA,CAAA;AACF,QAAA,CAAA,CAAE,OAAOQ,GAAAA,EAAc;;AAErBV,YAAAA,OAAAA,CAAQW,IAAI,CAAC,CAAA,CAAA;AACf,QAAA;AACF,IAAA;IAEA,MAAMC,OAAAA,GAAUT,cAAcG,MAAAA,GAASP,MAAAA;IAEvC,OAAO;AAAEA,QAAAA,MAAAA;AAAQa,QAAAA;AAAQ,KAAA;AAC3B;;;;"}
|
package/dist/package.json.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var name = "@strapi/core";
|
|
6
|
-
var version = "5.
|
|
6
|
+
var version = "5.43.0";
|
|
7
7
|
var description = "Core of Strapi";
|
|
8
8
|
var homepage = "https://strapi.io";
|
|
9
9
|
var bugs = {
|
|
@@ -62,14 +62,14 @@ var dependencies = {
|
|
|
62
62
|
"@koa/cors": "5.0.0",
|
|
63
63
|
"@koa/router": "12.0.2",
|
|
64
64
|
"@paralleldrive/cuid2": "2.2.2",
|
|
65
|
-
"@strapi/admin": "5.
|
|
66
|
-
"@strapi/database": "5.
|
|
67
|
-
"@strapi/generators": "5.
|
|
68
|
-
"@strapi/logger": "5.
|
|
69
|
-
"@strapi/permissions": "5.
|
|
70
|
-
"@strapi/types": "5.
|
|
71
|
-
"@strapi/typescript-utils": "5.
|
|
72
|
-
"@strapi/utils": "5.
|
|
65
|
+
"@strapi/admin": "5.43.0",
|
|
66
|
+
"@strapi/database": "5.43.0",
|
|
67
|
+
"@strapi/generators": "5.43.0",
|
|
68
|
+
"@strapi/logger": "5.43.0",
|
|
69
|
+
"@strapi/permissions": "5.43.0",
|
|
70
|
+
"@strapi/types": "5.43.0",
|
|
71
|
+
"@strapi/typescript-utils": "5.43.0",
|
|
72
|
+
"@strapi/utils": "5.43.0",
|
|
73
73
|
"@vercel/stega": "0.1.2",
|
|
74
74
|
bcryptjs: "2.4.3",
|
|
75
75
|
boxen: "5.1.2",
|
|
@@ -111,7 +111,7 @@ var dependencies = {
|
|
|
111
111
|
semver: "7.5.4",
|
|
112
112
|
statuses: "2.0.1",
|
|
113
113
|
typescript: "5.4.4",
|
|
114
|
-
undici: "6.
|
|
114
|
+
undici: "6.25.0",
|
|
115
115
|
yup: "0.32.9",
|
|
116
116
|
zod: "3.25.67"
|
|
117
117
|
};
|
|
@@ -136,11 +136,11 @@ var devDependencies = {
|
|
|
136
136
|
"@types/node": "24.10.0",
|
|
137
137
|
"@types/node-schedule": "2.1.7",
|
|
138
138
|
"@types/statuses": "2.0.1",
|
|
139
|
-
"eslint-config-custom": "5.
|
|
139
|
+
"eslint-config-custom": "5.43.0",
|
|
140
140
|
supertest: "7.2.2",
|
|
141
|
-
tsconfig: "5.
|
|
141
|
+
tsconfig: "5.43.0",
|
|
142
142
|
vitest: "catalog:",
|
|
143
|
-
"vitest-config": "5.
|
|
143
|
+
"vitest-config": "5.43.0"
|
|
144
144
|
};
|
|
145
145
|
var engines = {
|
|
146
146
|
node: ">=20.0.0 <=24.x.x",
|
package/dist/package.json.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var name = "@strapi/core";
|
|
2
|
-
var version = "5.
|
|
2
|
+
var version = "5.43.0";
|
|
3
3
|
var description = "Core of Strapi";
|
|
4
4
|
var homepage = "https://strapi.io";
|
|
5
5
|
var bugs = {
|
|
@@ -58,14 +58,14 @@ var dependencies = {
|
|
|
58
58
|
"@koa/cors": "5.0.0",
|
|
59
59
|
"@koa/router": "12.0.2",
|
|
60
60
|
"@paralleldrive/cuid2": "2.2.2",
|
|
61
|
-
"@strapi/admin": "5.
|
|
62
|
-
"@strapi/database": "5.
|
|
63
|
-
"@strapi/generators": "5.
|
|
64
|
-
"@strapi/logger": "5.
|
|
65
|
-
"@strapi/permissions": "5.
|
|
66
|
-
"@strapi/types": "5.
|
|
67
|
-
"@strapi/typescript-utils": "5.
|
|
68
|
-
"@strapi/utils": "5.
|
|
61
|
+
"@strapi/admin": "5.43.0",
|
|
62
|
+
"@strapi/database": "5.43.0",
|
|
63
|
+
"@strapi/generators": "5.43.0",
|
|
64
|
+
"@strapi/logger": "5.43.0",
|
|
65
|
+
"@strapi/permissions": "5.43.0",
|
|
66
|
+
"@strapi/types": "5.43.0",
|
|
67
|
+
"@strapi/typescript-utils": "5.43.0",
|
|
68
|
+
"@strapi/utils": "5.43.0",
|
|
69
69
|
"@vercel/stega": "0.1.2",
|
|
70
70
|
bcryptjs: "2.4.3",
|
|
71
71
|
boxen: "5.1.2",
|
|
@@ -107,7 +107,7 @@ var dependencies = {
|
|
|
107
107
|
semver: "7.5.4",
|
|
108
108
|
statuses: "2.0.1",
|
|
109
109
|
typescript: "5.4.4",
|
|
110
|
-
undici: "6.
|
|
110
|
+
undici: "6.25.0",
|
|
111
111
|
yup: "0.32.9",
|
|
112
112
|
zod: "3.25.67"
|
|
113
113
|
};
|
|
@@ -132,11 +132,11 @@ var devDependencies = {
|
|
|
132
132
|
"@types/node": "24.10.0",
|
|
133
133
|
"@types/node-schedule": "2.1.7",
|
|
134
134
|
"@types/statuses": "2.0.1",
|
|
135
|
-
"eslint-config-custom": "5.
|
|
135
|
+
"eslint-config-custom": "5.43.0",
|
|
136
136
|
supertest: "7.2.2",
|
|
137
|
-
tsconfig: "5.
|
|
137
|
+
tsconfig: "5.43.0",
|
|
138
138
|
vitest: "catalog:",
|
|
139
|
-
"vitest-config": "5.
|
|
139
|
+
"vitest-config": "5.43.0"
|
|
140
140
|
};
|
|
141
141
|
var engines = {
|
|
142
142
|
node: ">=20.0.0 <=24.x.x",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/providers/ai.ts"],"names":[],"mappings":";AAIA,wBAIG"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var provider = require('./provider.js');
|
|
4
|
+
var ai$1 = require('../services/ai.js');
|
|
5
|
+
|
|
6
|
+
var ai = provider.defineProvider({
|
|
7
|
+
init (strapi) {
|
|
8
|
+
strapi.add('ai', (s)=>ai$1.createAiNamespace(s));
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
module.exports = ai;
|
|
13
|
+
//# sourceMappingURL=ai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.js","sources":["../../src/providers/ai.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { defineProvider } from './provider';\nimport { createAiNamespace } from '../services/ai';\n\nexport default defineProvider({\n init(strapi) {\n strapi.add('ai', (s: Core.Strapi) => createAiNamespace(s));\n },\n});\n"],"names":["defineProvider","init","strapi","add","s","createAiNamespace"],"mappings":";;;;;AAIA,SAAeA,uBAAAA,CAAe;AAC5BC,IAAAA,IAAAA,CAAAA,CAAKC,MAAM,EAAA;AACTA,QAAAA,MAAAA,CAAOC,GAAG,CAAC,IAAA,EAAM,CAACC,IAAmBC,sBAAAA,CAAkBD,CAAAA,CAAAA,CAAAA;AACzD,IAAA;AACF,CAAA,CAAA;;;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { defineProvider } from './provider.mjs';
|
|
2
|
+
import { createAiNamespace } from '../services/ai.mjs';
|
|
3
|
+
|
|
4
|
+
var ai = defineProvider({
|
|
5
|
+
init (strapi) {
|
|
6
|
+
strapi.add('ai', (s)=>createAiNamespace(s));
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
export { ai as default };
|
|
11
|
+
//# sourceMappingURL=ai.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.mjs","sources":["../../src/providers/ai.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { defineProvider } from './provider';\nimport { createAiNamespace } from '../services/ai';\n\nexport default defineProvider({\n init(strapi) {\n strapi.add('ai', (s: Core.Strapi) => createAiNamespace(s));\n },\n});\n"],"names":["defineProvider","init","strapi","add","s","createAiNamespace"],"mappings":";;;AAIA,SAAeA,cAAAA,CAAe;AAC5BC,IAAAA,IAAAA,CAAAA,CAAKC,MAAM,EAAA;AACTA,QAAAA,MAAAA,CAAOC,GAAG,CAAC,IAAA,EAAM,CAACC,IAAmBC,iBAAAA,CAAkBD,CAAAA,CAAAA,CAAAA;AACzD,IAAA;AACF,CAAA,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,eAAO,MAAM,SAAS,EAAE,QAAQ,EAS/B,CAAC"}
|
package/dist/providers/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var admin = require('./admin.js');
|
|
4
|
+
var ai = require('./ai.js');
|
|
4
5
|
var coreStore = require('./coreStore.js');
|
|
5
6
|
var cron = require('./cron.js');
|
|
6
7
|
var registries = require('./registries.js');
|
|
@@ -11,6 +12,7 @@ var webhooks = require('./webhooks.js');
|
|
|
11
12
|
const providers = [
|
|
12
13
|
registries,
|
|
13
14
|
admin,
|
|
15
|
+
ai,
|
|
14
16
|
coreStore,
|
|
15
17
|
sessionManager,
|
|
16
18
|
webhooks,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/providers/index.ts"],"sourcesContent":["import admin from './admin';\nimport coreStore from './coreStore';\nimport cron from './cron';\nimport registries from './registries';\nimport sessionManager from './session-manager';\nimport telemetry from './telemetry';\nimport webhooks from './webhooks';\n\nimport type { Provider } from './provider';\n\nexport const providers: Provider[] = [\n registries,\n admin,\n coreStore,\n sessionManager,\n webhooks,\n telemetry,\n cron,\n];\n"],"names":["providers","registries","admin","coreStore","sessionManager","webhooks","telemetry","cron"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/providers/index.ts"],"sourcesContent":["import admin from './admin';\nimport ai from './ai';\nimport coreStore from './coreStore';\nimport cron from './cron';\nimport registries from './registries';\nimport sessionManager from './session-manager';\nimport telemetry from './telemetry';\nimport webhooks from './webhooks';\n\nimport type { Provider } from './provider';\n\nexport const providers: Provider[] = [\n registries,\n admin,\n ai,\n coreStore,\n sessionManager,\n webhooks,\n telemetry,\n cron,\n];\n"],"names":["providers","registries","admin","ai","coreStore","sessionManager","webhooks","telemetry","cron"],"mappings":";;;;;;;;;;;MAWaA,SAAAA,GAAwB;AACnCC,IAAAA,UAAAA;AACAC,IAAAA,KAAAA;AACAC,IAAAA,EAAAA;AACAC,IAAAA,SAAAA;AACAC,IAAAA,cAAAA;AACAC,IAAAA,QAAAA;AACAC,IAAAA,SAAAA;AACAC,IAAAA;;;;;"}
|
package/dist/providers/index.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import admin from './admin.mjs';
|
|
2
|
+
import ai from './ai.mjs';
|
|
2
3
|
import coreStore from './coreStore.mjs';
|
|
3
4
|
import cron from './cron.mjs';
|
|
4
5
|
import registries from './registries.mjs';
|
|
@@ -9,6 +10,7 @@ import webhooks from './webhooks.mjs';
|
|
|
9
10
|
const providers = [
|
|
10
11
|
registries,
|
|
11
12
|
admin,
|
|
13
|
+
ai,
|
|
12
14
|
coreStore,
|
|
13
15
|
sessionManager,
|
|
14
16
|
webhooks,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/providers/index.ts"],"sourcesContent":["import admin from './admin';\nimport coreStore from './coreStore';\nimport cron from './cron';\nimport registries from './registries';\nimport sessionManager from './session-manager';\nimport telemetry from './telemetry';\nimport webhooks from './webhooks';\n\nimport type { Provider } from './provider';\n\nexport const providers: Provider[] = [\n registries,\n admin,\n coreStore,\n sessionManager,\n webhooks,\n telemetry,\n cron,\n];\n"],"names":["providers","registries","admin","coreStore","sessionManager","webhooks","telemetry","cron"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/providers/index.ts"],"sourcesContent":["import admin from './admin';\nimport ai from './ai';\nimport coreStore from './coreStore';\nimport cron from './cron';\nimport registries from './registries';\nimport sessionManager from './session-manager';\nimport telemetry from './telemetry';\nimport webhooks from './webhooks';\n\nimport type { Provider } from './provider';\n\nexport const providers: Provider[] = [\n registries,\n admin,\n ai,\n coreStore,\n sessionManager,\n webhooks,\n telemetry,\n cron,\n];\n"],"names":["providers","registries","admin","ai","coreStore","sessionManager","webhooks","telemetry","cron"],"mappings":";;;;;;;;;MAWaA,SAAAA,GAAwB;AACnCC,IAAAA,UAAAA;AACAC,IAAAA,KAAAA;AACAC,IAAAA,EAAAA;AACAC,IAAAA,SAAAA;AACAC,IAAAA,cAAAA;AACAC,IAAAA,QAAAA;AACAC,IAAAA,SAAAA;AACAC,IAAAA;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/services/ai.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAEnD,eAAO,MAAM,iBAAiB,WAAY,KAAK,MAAM,KAAG,QAAQ,EAAE,CAAC,WAIjE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.js","sources":["../../src/services/ai.ts"],"sourcesContent":["import type { Core, Modules } from '@strapi/types';\n\nexport const createAiNamespace = (strapi: Core.Strapi): Modules.AI.AiNamespace => ({\n get admin(): Modules.AI.AiAdminService {\n return strapi.get('ai.admin');\n },\n});\n"],"names":["createAiNamespace","strapi","admin","get"],"mappings":";;AAEO,MAAMA,iBAAAA,GAAoB,CAACC,MAAAA,IAAiD;AACjF,QAAA,IAAIC,KAAAA,CAAAA,GAAmC;YACrC,OAAOD,MAAAA,CAAOE,GAAG,CAAC,UAAA,CAAA;AACpB,QAAA;AACF,KAAA;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.mjs","sources":["../../src/services/ai.ts"],"sourcesContent":["import type { Core, Modules } from '@strapi/types';\n\nexport const createAiNamespace = (strapi: Core.Strapi): Modules.AI.AiNamespace => ({\n get admin(): Modules.AI.AiAdminService {\n return strapi.get('ai.admin');\n },\n});\n"],"names":["createAiNamespace","strapi","admin","get"],"mappings":"AAEO,MAAMA,iBAAAA,GAAoB,CAACC,MAAAA,IAAiD;AACjF,QAAA,IAAIC,KAAAA,CAAAA,GAAmC;YACrC,OAAOD,MAAAA,CAAOE,GAAG,CAAC,UAAA,CAAA;AACpB,QAAA;AACF,KAAA;;;;"}
|
|
@@ -119,7 +119,7 @@ const imageNodeValidator = strapiUtils.yup.object().shape({
|
|
|
119
119
|
caption: strapiUtils.yup.string().nullable(),
|
|
120
120
|
width: strapiUtils.yup.number().required(),
|
|
121
121
|
height: strapiUtils.yup.number().required(),
|
|
122
|
-
formats: strapiUtils.yup.object().
|
|
122
|
+
formats: strapiUtils.yup.object().nullable(),
|
|
123
123
|
hash: strapiUtils.yup.string().required(),
|
|
124
124
|
ext: strapiUtils.yup.string().required(),
|
|
125
125
|
mime: strapiUtils.yup.string().required(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocks-validator.js","sources":["../../../src/services/entity-validator/blocks-validator.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\n\nconst textNodeValidator = yup.object().shape({\n type: yup.string().equals(['text']).required(),\n text: yup\n .string()\n .test(\n 'is-valid-text',\n 'Text must be defined with at least an empty string',\n (text: unknown) => {\n return typeof text === 'string' || text === '';\n }\n ),\n bold: yup.boolean(),\n italic: yup.boolean(),\n underline: yup.boolean(),\n strikethrough: yup.boolean(),\n code: yup.boolean(),\n});\n\nconst checkValidLink = (link: string) => {\n try {\n // eslint-disable-next-line no-new\n new URL(link.startsWith('/') ? `https://strapi.io${link}` : link);\n } catch (error) {\n return false;\n }\n return true;\n};\n\nconst linkNodeValidator = yup.object().shape({\n type: yup.string().equals(['link']).required(),\n url: yup\n .string()\n .test('invalid-url', 'Please specify a valid link.', (value) => checkValidLink(value ?? '')),\n children: yup.array().of(textNodeValidator).required(),\n});\n\n// TODO: remove any with a correct Type\nconst inlineNodeValidator: any = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'text':\n return textNodeValidator;\n case 'link':\n return linkNodeValidator;\n default:\n return yup.mixed().test('invalid-type', 'Inline node must be Text or Link', () => {\n return false;\n });\n }\n});\n\nconst paragraphNodeValidator = yup.object().shape({\n type: yup.string().equals(['paragraph']).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Paragraph node children must have at least one Text or Link node')\n .required(),\n});\n\nconst headingNodeValidator = yup.object().shape({\n type: yup.string().equals(['heading']).required(),\n level: yup.number().oneOf([1, 2, 3, 4, 5, 6]).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Heading node children must have at least one Text or Link node')\n .required(),\n});\n\nconst quoteNodeValidator = yup.object().shape({\n type: yup.string().equals(['quote']).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Quote node children must have at least one Text or Link node')\n .required(),\n});\n\nconst codeBlockValidator = yup.object().shape({\n type: yup.string().equals(['code']).required(),\n syntax: yup.string().nullable(),\n children: yup\n .array()\n .of(textNodeValidator)\n .min(1, 'Quote node children must have at least one Text or Link node')\n .required(),\n});\n\nconst listItemNode = yup.object().shape({\n type: yup.string().equals(['list-item']).required(),\n children: yup.array().of(inlineNodeValidator).required(),\n});\n\n// Allow children to be either a listItemNode or a listNode itself\n// @ts-expect-error - listChildrenValidator needs a type\nconst listChildrenValidator = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'list':\n return listNodeValidator;\n case 'list-item':\n return listItemNode;\n default:\n return yup.mixed().test('invalid-type', 'Inline node must be list-item or list', () => {\n return false;\n });\n }\n});\n\n// @ts-expect-error - listNodeValidator needs a type\nconst listNodeValidator = yup.object().shape({\n type: yup.string().equals(['list']).required(),\n format: yup.string().equals(['ordered', 'unordered']).required(),\n children: yup\n .array()\n .of(listChildrenValidator)\n .min(1, 'List node children must have at least one ListItem or ListNode')\n .required(),\n});\n\nconst imageNodeValidator = yup.object().shape({\n type: yup.string().equals(['image']).required(),\n image: yup.object().shape({\n name: yup.string().required(),\n alternativeText: yup.string().nullable(),\n url: yup.string().required(),\n caption: yup.string().nullable(),\n width: yup.number().required(),\n height: yup.number().required(),\n formats: yup.object().required(),\n hash: yup.string().required(),\n ext: yup.string().required(),\n mime: yup.string().required(),\n size: yup.number().required(),\n previewUrl: yup.string().nullable(),\n provider: yup.string().required(),\n provider_metadata: yup.mixed().nullable(),\n createdAt: yup.string().required(),\n updatedAt: yup.string().required(),\n }),\n children: yup.array().of(inlineNodeValidator).required(),\n});\n\n// TODO: remove the any and replace with a correct Type\nconst blockNodeValidator: any = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'paragraph':\n return paragraphNodeValidator;\n case 'heading':\n return headingNodeValidator;\n case 'quote':\n return quoteNodeValidator;\n case 'list':\n return listNodeValidator;\n case 'image':\n return imageNodeValidator;\n case 'code':\n return codeBlockValidator;\n default:\n return yup.mixed().test('invalid-type', 'Block node is of invalid type', () => {\n return false;\n });\n }\n});\n\nconst blocksValidatorSchema = yup.array().of(blockNodeValidator);\n\nexport const blocksValidator = () => blocksValidatorSchema;\n"],"names":["textNodeValidator","yup","object","shape","type","string","equals","required","text","test","bold","boolean","italic","underline","strikethrough","code","checkValidLink","link","URL","startsWith","error","linkNodeValidator","url","value","children","array","of","inlineNodeValidator","lazy","mixed","paragraphNodeValidator","min","headingNodeValidator","level","number","oneOf","quoteNodeValidator","codeBlockValidator","syntax","nullable","listItemNode","listChildrenValidator","listNodeValidator","format","imageNodeValidator","image","name","alternativeText","caption","width","height","formats","hash","ext","mime","size","previewUrl","provider","provider_metadata","createdAt","updatedAt","blockNodeValidator","blocksValidatorSchema","blocksValidator"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"blocks-validator.js","sources":["../../../src/services/entity-validator/blocks-validator.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\n\nconst textNodeValidator = yup.object().shape({\n type: yup.string().equals(['text']).required(),\n text: yup\n .string()\n .test(\n 'is-valid-text',\n 'Text must be defined with at least an empty string',\n (text: unknown) => {\n return typeof text === 'string' || text === '';\n }\n ),\n bold: yup.boolean(),\n italic: yup.boolean(),\n underline: yup.boolean(),\n strikethrough: yup.boolean(),\n code: yup.boolean(),\n});\n\nconst checkValidLink = (link: string) => {\n try {\n // eslint-disable-next-line no-new\n new URL(link.startsWith('/') ? `https://strapi.io${link}` : link);\n } catch (error) {\n return false;\n }\n return true;\n};\n\nconst linkNodeValidator = yup.object().shape({\n type: yup.string().equals(['link']).required(),\n url: yup\n .string()\n .test('invalid-url', 'Please specify a valid link.', (value) => checkValidLink(value ?? '')),\n children: yup.array().of(textNodeValidator).required(),\n});\n\n// TODO: remove any with a correct Type\nconst inlineNodeValidator: any = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'text':\n return textNodeValidator;\n case 'link':\n return linkNodeValidator;\n default:\n return yup.mixed().test('invalid-type', 'Inline node must be Text or Link', () => {\n return false;\n });\n }\n});\n\nconst paragraphNodeValidator = yup.object().shape({\n type: yup.string().equals(['paragraph']).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Paragraph node children must have at least one Text or Link node')\n .required(),\n});\n\nconst headingNodeValidator = yup.object().shape({\n type: yup.string().equals(['heading']).required(),\n level: yup.number().oneOf([1, 2, 3, 4, 5, 6]).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Heading node children must have at least one Text or Link node')\n .required(),\n});\n\nconst quoteNodeValidator = yup.object().shape({\n type: yup.string().equals(['quote']).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Quote node children must have at least one Text or Link node')\n .required(),\n});\n\nconst codeBlockValidator = yup.object().shape({\n type: yup.string().equals(['code']).required(),\n syntax: yup.string().nullable(),\n children: yup\n .array()\n .of(textNodeValidator)\n .min(1, 'Quote node children must have at least one Text or Link node')\n .required(),\n});\n\nconst listItemNode = yup.object().shape({\n type: yup.string().equals(['list-item']).required(),\n children: yup.array().of(inlineNodeValidator).required(),\n});\n\n// Allow children to be either a listItemNode or a listNode itself\n// @ts-expect-error - listChildrenValidator needs a type\nconst listChildrenValidator = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'list':\n return listNodeValidator;\n case 'list-item':\n return listItemNode;\n default:\n return yup.mixed().test('invalid-type', 'Inline node must be list-item or list', () => {\n return false;\n });\n }\n});\n\n// @ts-expect-error - listNodeValidator needs a type\nconst listNodeValidator = yup.object().shape({\n type: yup.string().equals(['list']).required(),\n format: yup.string().equals(['ordered', 'unordered']).required(),\n children: yup\n .array()\n .of(listChildrenValidator)\n .min(1, 'List node children must have at least one ListItem or ListNode')\n .required(),\n});\n\nconst imageNodeValidator = yup.object().shape({\n type: yup.string().equals(['image']).required(),\n image: yup.object().shape({\n name: yup.string().required(),\n alternativeText: yup.string().nullable(),\n url: yup.string().required(),\n caption: yup.string().nullable(),\n width: yup.number().required(),\n height: yup.number().required(),\n formats: yup.object().nullable(),\n hash: yup.string().required(),\n ext: yup.string().required(),\n mime: yup.string().required(),\n size: yup.number().required(),\n previewUrl: yup.string().nullable(),\n provider: yup.string().required(),\n provider_metadata: yup.mixed().nullable(),\n createdAt: yup.string().required(),\n updatedAt: yup.string().required(),\n }),\n children: yup.array().of(inlineNodeValidator).required(),\n});\n\n// TODO: remove the any and replace with a correct Type\nconst blockNodeValidator: any = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'paragraph':\n return paragraphNodeValidator;\n case 'heading':\n return headingNodeValidator;\n case 'quote':\n return quoteNodeValidator;\n case 'list':\n return listNodeValidator;\n case 'image':\n return imageNodeValidator;\n case 'code':\n return codeBlockValidator;\n default:\n return yup.mixed().test('invalid-type', 'Block node is of invalid type', () => {\n return false;\n });\n }\n});\n\nconst blocksValidatorSchema = yup.array().of(blockNodeValidator);\n\nexport const blocksValidator = () => blocksValidatorSchema;\n"],"names":["textNodeValidator","yup","object","shape","type","string","equals","required","text","test","bold","boolean","italic","underline","strikethrough","code","checkValidLink","link","URL","startsWith","error","linkNodeValidator","url","value","children","array","of","inlineNodeValidator","lazy","mixed","paragraphNodeValidator","min","headingNodeValidator","level","number","oneOf","quoteNodeValidator","codeBlockValidator","syntax","nullable","listItemNode","listChildrenValidator","listNodeValidator","format","imageNodeValidator","image","name","alternativeText","caption","width","height","formats","hash","ext","mime","size","previewUrl","provider","provider_metadata","createdAt","updatedAt","blockNodeValidator","blocksValidatorSchema","blocksValidator"],"mappings":"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"}
|
|
@@ -117,7 +117,7 @@ const imageNodeValidator = yup.object().shape({
|
|
|
117
117
|
caption: yup.string().nullable(),
|
|
118
118
|
width: yup.number().required(),
|
|
119
119
|
height: yup.number().required(),
|
|
120
|
-
formats: yup.object().
|
|
120
|
+
formats: yup.object().nullable(),
|
|
121
121
|
hash: yup.string().required(),
|
|
122
122
|
ext: yup.string().required(),
|
|
123
123
|
mime: yup.string().required(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocks-validator.mjs","sources":["../../../src/services/entity-validator/blocks-validator.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\n\nconst textNodeValidator = yup.object().shape({\n type: yup.string().equals(['text']).required(),\n text: yup\n .string()\n .test(\n 'is-valid-text',\n 'Text must be defined with at least an empty string',\n (text: unknown) => {\n return typeof text === 'string' || text === '';\n }\n ),\n bold: yup.boolean(),\n italic: yup.boolean(),\n underline: yup.boolean(),\n strikethrough: yup.boolean(),\n code: yup.boolean(),\n});\n\nconst checkValidLink = (link: string) => {\n try {\n // eslint-disable-next-line no-new\n new URL(link.startsWith('/') ? `https://strapi.io${link}` : link);\n } catch (error) {\n return false;\n }\n return true;\n};\n\nconst linkNodeValidator = yup.object().shape({\n type: yup.string().equals(['link']).required(),\n url: yup\n .string()\n .test('invalid-url', 'Please specify a valid link.', (value) => checkValidLink(value ?? '')),\n children: yup.array().of(textNodeValidator).required(),\n});\n\n// TODO: remove any with a correct Type\nconst inlineNodeValidator: any = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'text':\n return textNodeValidator;\n case 'link':\n return linkNodeValidator;\n default:\n return yup.mixed().test('invalid-type', 'Inline node must be Text or Link', () => {\n return false;\n });\n }\n});\n\nconst paragraphNodeValidator = yup.object().shape({\n type: yup.string().equals(['paragraph']).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Paragraph node children must have at least one Text or Link node')\n .required(),\n});\n\nconst headingNodeValidator = yup.object().shape({\n type: yup.string().equals(['heading']).required(),\n level: yup.number().oneOf([1, 2, 3, 4, 5, 6]).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Heading node children must have at least one Text or Link node')\n .required(),\n});\n\nconst quoteNodeValidator = yup.object().shape({\n type: yup.string().equals(['quote']).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Quote node children must have at least one Text or Link node')\n .required(),\n});\n\nconst codeBlockValidator = yup.object().shape({\n type: yup.string().equals(['code']).required(),\n syntax: yup.string().nullable(),\n children: yup\n .array()\n .of(textNodeValidator)\n .min(1, 'Quote node children must have at least one Text or Link node')\n .required(),\n});\n\nconst listItemNode = yup.object().shape({\n type: yup.string().equals(['list-item']).required(),\n children: yup.array().of(inlineNodeValidator).required(),\n});\n\n// Allow children to be either a listItemNode or a listNode itself\n// @ts-expect-error - listChildrenValidator needs a type\nconst listChildrenValidator = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'list':\n return listNodeValidator;\n case 'list-item':\n return listItemNode;\n default:\n return yup.mixed().test('invalid-type', 'Inline node must be list-item or list', () => {\n return false;\n });\n }\n});\n\n// @ts-expect-error - listNodeValidator needs a type\nconst listNodeValidator = yup.object().shape({\n type: yup.string().equals(['list']).required(),\n format: yup.string().equals(['ordered', 'unordered']).required(),\n children: yup\n .array()\n .of(listChildrenValidator)\n .min(1, 'List node children must have at least one ListItem or ListNode')\n .required(),\n});\n\nconst imageNodeValidator = yup.object().shape({\n type: yup.string().equals(['image']).required(),\n image: yup.object().shape({\n name: yup.string().required(),\n alternativeText: yup.string().nullable(),\n url: yup.string().required(),\n caption: yup.string().nullable(),\n width: yup.number().required(),\n height: yup.number().required(),\n formats: yup.object().required(),\n hash: yup.string().required(),\n ext: yup.string().required(),\n mime: yup.string().required(),\n size: yup.number().required(),\n previewUrl: yup.string().nullable(),\n provider: yup.string().required(),\n provider_metadata: yup.mixed().nullable(),\n createdAt: yup.string().required(),\n updatedAt: yup.string().required(),\n }),\n children: yup.array().of(inlineNodeValidator).required(),\n});\n\n// TODO: remove the any and replace with a correct Type\nconst blockNodeValidator: any = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'paragraph':\n return paragraphNodeValidator;\n case 'heading':\n return headingNodeValidator;\n case 'quote':\n return quoteNodeValidator;\n case 'list':\n return listNodeValidator;\n case 'image':\n return imageNodeValidator;\n case 'code':\n return codeBlockValidator;\n default:\n return yup.mixed().test('invalid-type', 'Block node is of invalid type', () => {\n return false;\n });\n }\n});\n\nconst blocksValidatorSchema = yup.array().of(blockNodeValidator);\n\nexport const blocksValidator = () => blocksValidatorSchema;\n"],"names":["textNodeValidator","yup","object","shape","type","string","equals","required","text","test","bold","boolean","italic","underline","strikethrough","code","checkValidLink","link","URL","startsWith","error","linkNodeValidator","url","value","children","array","of","inlineNodeValidator","lazy","mixed","paragraphNodeValidator","min","headingNodeValidator","level","number","oneOf","quoteNodeValidator","codeBlockValidator","syntax","nullable","listItemNode","listChildrenValidator","listNodeValidator","format","imageNodeValidator","image","name","alternativeText","caption","width","height","formats","hash","ext","mime","size","previewUrl","provider","provider_metadata","createdAt","updatedAt","blockNodeValidator","blocksValidatorSchema","blocksValidator"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"blocks-validator.mjs","sources":["../../../src/services/entity-validator/blocks-validator.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\n\nconst textNodeValidator = yup.object().shape({\n type: yup.string().equals(['text']).required(),\n text: yup\n .string()\n .test(\n 'is-valid-text',\n 'Text must be defined with at least an empty string',\n (text: unknown) => {\n return typeof text === 'string' || text === '';\n }\n ),\n bold: yup.boolean(),\n italic: yup.boolean(),\n underline: yup.boolean(),\n strikethrough: yup.boolean(),\n code: yup.boolean(),\n});\n\nconst checkValidLink = (link: string) => {\n try {\n // eslint-disable-next-line no-new\n new URL(link.startsWith('/') ? `https://strapi.io${link}` : link);\n } catch (error) {\n return false;\n }\n return true;\n};\n\nconst linkNodeValidator = yup.object().shape({\n type: yup.string().equals(['link']).required(),\n url: yup\n .string()\n .test('invalid-url', 'Please specify a valid link.', (value) => checkValidLink(value ?? '')),\n children: yup.array().of(textNodeValidator).required(),\n});\n\n// TODO: remove any with a correct Type\nconst inlineNodeValidator: any = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'text':\n return textNodeValidator;\n case 'link':\n return linkNodeValidator;\n default:\n return yup.mixed().test('invalid-type', 'Inline node must be Text or Link', () => {\n return false;\n });\n }\n});\n\nconst paragraphNodeValidator = yup.object().shape({\n type: yup.string().equals(['paragraph']).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Paragraph node children must have at least one Text or Link node')\n .required(),\n});\n\nconst headingNodeValidator = yup.object().shape({\n type: yup.string().equals(['heading']).required(),\n level: yup.number().oneOf([1, 2, 3, 4, 5, 6]).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Heading node children must have at least one Text or Link node')\n .required(),\n});\n\nconst quoteNodeValidator = yup.object().shape({\n type: yup.string().equals(['quote']).required(),\n children: yup\n .array()\n .of(inlineNodeValidator)\n .min(1, 'Quote node children must have at least one Text or Link node')\n .required(),\n});\n\nconst codeBlockValidator = yup.object().shape({\n type: yup.string().equals(['code']).required(),\n syntax: yup.string().nullable(),\n children: yup\n .array()\n .of(textNodeValidator)\n .min(1, 'Quote node children must have at least one Text or Link node')\n .required(),\n});\n\nconst listItemNode = yup.object().shape({\n type: yup.string().equals(['list-item']).required(),\n children: yup.array().of(inlineNodeValidator).required(),\n});\n\n// Allow children to be either a listItemNode or a listNode itself\n// @ts-expect-error - listChildrenValidator needs a type\nconst listChildrenValidator = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'list':\n return listNodeValidator;\n case 'list-item':\n return listItemNode;\n default:\n return yup.mixed().test('invalid-type', 'Inline node must be list-item or list', () => {\n return false;\n });\n }\n});\n\n// @ts-expect-error - listNodeValidator needs a type\nconst listNodeValidator = yup.object().shape({\n type: yup.string().equals(['list']).required(),\n format: yup.string().equals(['ordered', 'unordered']).required(),\n children: yup\n .array()\n .of(listChildrenValidator)\n .min(1, 'List node children must have at least one ListItem or ListNode')\n .required(),\n});\n\nconst imageNodeValidator = yup.object().shape({\n type: yup.string().equals(['image']).required(),\n image: yup.object().shape({\n name: yup.string().required(),\n alternativeText: yup.string().nullable(),\n url: yup.string().required(),\n caption: yup.string().nullable(),\n width: yup.number().required(),\n height: yup.number().required(),\n formats: yup.object().nullable(),\n hash: yup.string().required(),\n ext: yup.string().required(),\n mime: yup.string().required(),\n size: yup.number().required(),\n previewUrl: yup.string().nullable(),\n provider: yup.string().required(),\n provider_metadata: yup.mixed().nullable(),\n createdAt: yup.string().required(),\n updatedAt: yup.string().required(),\n }),\n children: yup.array().of(inlineNodeValidator).required(),\n});\n\n// TODO: remove the any and replace with a correct Type\nconst blockNodeValidator: any = yup.lazy((value: { type: string }) => {\n switch (value.type) {\n case 'paragraph':\n return paragraphNodeValidator;\n case 'heading':\n return headingNodeValidator;\n case 'quote':\n return quoteNodeValidator;\n case 'list':\n return listNodeValidator;\n case 'image':\n return imageNodeValidator;\n case 'code':\n return codeBlockValidator;\n default:\n return yup.mixed().test('invalid-type', 'Block node is of invalid type', () => {\n return false;\n });\n }\n});\n\nconst blocksValidatorSchema = yup.array().of(blockNodeValidator);\n\nexport const blocksValidator = () => blocksValidatorSchema;\n"],"names":["textNodeValidator","yup","object","shape","type","string","equals","required","text","test","bold","boolean","italic","underline","strikethrough","code","checkValidLink","link","URL","startsWith","error","linkNodeValidator","url","value","children","array","of","inlineNodeValidator","lazy","mixed","paragraphNodeValidator","min","headingNodeValidator","level","number","oneOf","quoteNodeValidator","codeBlockValidator","syntax","nullable","listItemNode","listChildrenValidator","listNodeValidator","format","imageNodeValidator","image","name","alternativeText","caption","width","height","formats","hash","ext","mime","size","previewUrl","provider","provider_metadata","createdAt","updatedAt","blockNodeValidator","blocksValidatorSchema","blocksValidator"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@strapi/core",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.43.0",
|
|
4
4
|
"description": "Core of Strapi",
|
|
5
5
|
"homepage": "https://strapi.io",
|
|
6
6
|
"bugs": {
|
|
@@ -59,14 +59,14 @@
|
|
|
59
59
|
"@koa/cors": "5.0.0",
|
|
60
60
|
"@koa/router": "12.0.2",
|
|
61
61
|
"@paralleldrive/cuid2": "2.2.2",
|
|
62
|
-
"@strapi/admin": "5.
|
|
63
|
-
"@strapi/database": "5.
|
|
64
|
-
"@strapi/generators": "5.
|
|
65
|
-
"@strapi/logger": "5.
|
|
66
|
-
"@strapi/permissions": "5.
|
|
67
|
-
"@strapi/types": "5.
|
|
68
|
-
"@strapi/typescript-utils": "5.
|
|
69
|
-
"@strapi/utils": "5.
|
|
62
|
+
"@strapi/admin": "5.43.0",
|
|
63
|
+
"@strapi/database": "5.43.0",
|
|
64
|
+
"@strapi/generators": "5.43.0",
|
|
65
|
+
"@strapi/logger": "5.43.0",
|
|
66
|
+
"@strapi/permissions": "5.43.0",
|
|
67
|
+
"@strapi/types": "5.43.0",
|
|
68
|
+
"@strapi/typescript-utils": "5.43.0",
|
|
69
|
+
"@strapi/utils": "5.43.0",
|
|
70
70
|
"@vercel/stega": "0.1.2",
|
|
71
71
|
"bcryptjs": "2.4.3",
|
|
72
72
|
"boxen": "5.1.2",
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
"semver": "7.5.4",
|
|
109
109
|
"statuses": "2.0.1",
|
|
110
110
|
"typescript": "5.4.4",
|
|
111
|
-
"undici": "6.
|
|
111
|
+
"undici": "6.25.0",
|
|
112
112
|
"yup": "0.32.9",
|
|
113
113
|
"zod": "3.25.67"
|
|
114
114
|
},
|
|
@@ -133,11 +133,11 @@
|
|
|
133
133
|
"@types/node": "24.10.0",
|
|
134
134
|
"@types/node-schedule": "2.1.7",
|
|
135
135
|
"@types/statuses": "2.0.1",
|
|
136
|
-
"eslint-config-custom": "5.
|
|
136
|
+
"eslint-config-custom": "5.43.0",
|
|
137
137
|
"supertest": "7.2.2",
|
|
138
|
-
"tsconfig": "5.
|
|
138
|
+
"tsconfig": "5.43.0",
|
|
139
139
|
"vitest": "catalog:",
|
|
140
|
-
"vitest-config": "5.
|
|
140
|
+
"vitest-config": "5.43.0"
|
|
141
141
|
},
|
|
142
142
|
"engines": {
|
|
143
143
|
"node": ">=20.0.0 <=24.x.x",
|