@strapi/core 5.48.1 → 5.50.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.map +1 -1
- package/dist/Strapi.js +11 -5
- package/dist/Strapi.js.map +1 -1
- package/dist/Strapi.mjs +2 -1
- package/dist/Strapi.mjs.map +1 -1
- package/dist/ai.d.ts +2 -0
- package/dist/ai.d.ts.map +1 -0
- package/dist/ai.js +8 -0
- package/dist/ai.js.map +1 -0
- package/dist/ai.mjs +3 -0
- package/dist/ai.mjs.map +1 -0
- package/dist/configuration/config-loader.d.ts.map +1 -1
- package/dist/configuration/config-loader.js +11 -6
- package/dist/configuration/config-loader.js.map +1 -1
- package/dist/configuration/get-dirs.d.ts.map +1 -1
- package/dist/configuration/index.d.ts +0 -3
- package/dist/configuration/index.d.ts.map +1 -1
- package/dist/configuration/index.js +22 -18
- package/dist/configuration/index.js.map +1 -1
- package/dist/configuration/index.mjs +0 -3
- package/dist/configuration/index.mjs.map +1 -1
- package/dist/configuration/server-config.d.ts +11 -0
- package/dist/configuration/server-config.d.ts.map +1 -0
- package/dist/configuration/server-config.js +16 -0
- package/dist/configuration/server-config.js.map +1 -0
- package/dist/configuration/server-config.mjs +14 -0
- package/dist/configuration/server-config.mjs.map +1 -0
- package/dist/configuration/urls.d.ts.map +1 -1
- package/dist/configuration/urls.js +11 -7
- package/dist/configuration/urls.js.map +1 -1
- package/dist/core-api/controller/collection-type.d.ts.map +1 -1
- package/dist/core-api/controller/single-type.d.ts.map +1 -1
- package/dist/core-api/controller/transform.d.ts.map +1 -1
- package/dist/core-api/routes/index.d.ts.map +1 -1
- package/dist/core-api/routes/index.js +3 -2
- package/dist/core-api/routes/index.js.map +1 -1
- package/dist/core-api/routes/validation/attributes.d.ts.map +1 -1
- package/dist/core-api/routes/validation/common.js +3 -2
- package/dist/core-api/routes/validation/common.js.map +1 -1
- package/dist/core-api/routes/validation/content-type.js +3 -2
- package/dist/core-api/routes/validation/content-type.js.map +1 -1
- package/dist/core-api/routes/validation/mappers.d.ts.map +1 -1
- package/dist/core-api/routes/validation/mappers.js +3 -2
- package/dist/core-api/routes/validation/mappers.js.map +1 -1
- package/dist/core-api/routes/validation/utils.d.ts.map +1 -1
- package/dist/core-api/routes/validation/utils.js +3 -2
- package/dist/core-api/routes/validation/utils.js.map +1 -1
- package/dist/core-api/service/collection-type.d.ts.map +1 -1
- package/dist/core-api/service/pagination.d.ts.map +1 -1
- package/dist/core-api/service/single-type.d.ts.map +1 -1
- package/dist/domain/content-type/index.d.ts.map +1 -1
- package/dist/domain/content-type/index.js +9 -5
- package/dist/domain/content-type/index.js.map +1 -1
- package/dist/domain/content-type/validator.d.ts.map +1 -1
- package/dist/domain/content-type/validator.js +6 -2
- package/dist/domain/content-type/validator.js.map +1 -1
- package/dist/domain/module/index.d.ts.map +1 -1
- package/dist/domain/module/index.js +6 -2
- package/dist/domain/module/index.js.map +1 -1
- package/dist/domain/module/validation.d.ts.map +1 -1
- package/dist/ee/index.d.ts +2 -1
- package/dist/ee/index.d.ts.map +1 -1
- package/dist/ee/license.d.ts.map +1 -1
- package/dist/ee/license.js +8 -3
- package/dist/ee/license.js.map +1 -1
- package/dist/factories.d.ts.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +1 -1
- package/dist/loaders/admin.js +5 -1
- package/dist/loaders/admin.js.map +1 -1
- package/dist/loaders/apis.js +16 -11
- package/dist/loaders/apis.js.map +1 -1
- package/dist/loaders/components.js +6 -2
- package/dist/loaders/components.js.map +1 -1
- package/dist/loaders/middlewares.js +6 -2
- package/dist/loaders/middlewares.js.map +1 -1
- package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
- package/dist/loaders/plugins/get-enabled-plugins.js +5 -1
- package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
- package/dist/loaders/plugins/get-user-plugins-config.js +6 -2
- package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
- package/dist/loaders/plugins/index.js +8 -4
- package/dist/loaders/plugins/index.js.map +1 -1
- package/dist/loaders/policies.js +6 -2
- package/dist/loaders/policies.js.map +1 -1
- package/dist/loaders/sanitizers.d.ts.map +1 -1
- package/dist/loaders/src-index.d.ts.map +1 -1
- package/dist/loaders/validators.d.ts.map +1 -1
- package/dist/mcp.d.ts +4 -0
- package/dist/mcp.d.ts.map +1 -0
- package/dist/mcp.js +12 -0
- package/dist/mcp.js.map +1 -0
- package/dist/mcp.mjs +4 -0
- package/dist/mcp.mjs.map +1 -0
- package/dist/middlewares/body.d.ts.map +1 -1
- package/dist/middlewares/body.js +9 -4
- package/dist/middlewares/body.js.map +1 -1
- package/dist/middlewares/body.mjs +1 -1
- package/dist/middlewares/body.mjs.map +1 -1
- package/dist/middlewares/compression.js +5 -1
- package/dist/middlewares/compression.js.map +1 -1
- package/dist/middlewares/cors.d.ts.map +1 -1
- package/dist/middlewares/cors.js +5 -1
- package/dist/middlewares/cors.js.map +1 -1
- package/dist/middlewares/errors.d.ts +5 -0
- package/dist/middlewares/errors.d.ts.map +1 -1
- package/dist/middlewares/errors.js.map +1 -1
- package/dist/middlewares/errors.mjs.map +1 -1
- package/dist/middlewares/favicon.d.ts +0 -1
- package/dist/middlewares/favicon.d.ts.map +1 -1
- package/dist/middlewares/favicon.js +5 -1
- package/dist/middlewares/favicon.js.map +1 -1
- package/dist/middlewares/ip.js +5 -1
- package/dist/middlewares/ip.js.map +1 -1
- package/dist/middlewares/public.js +5 -1
- package/dist/middlewares/public.js.map +1 -1
- package/dist/middlewares/query.js +6 -2
- package/dist/middlewares/query.js.map +1 -1
- package/dist/middlewares/security.js +5 -1
- package/dist/middlewares/security.js.map +1 -1
- package/dist/migrations/database/5.0.0-discard-drafts.js +5 -1
- package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
- package/dist/migrations/draft-publish.d.ts.map +1 -1
- package/dist/migrations/first-published-at.d.ts.map +1 -1
- package/dist/migrations/first-published-at.js +5 -1
- package/dist/migrations/first-published-at.js.map +1 -1
- package/dist/migrations/i18n.d.ts.map +1 -1
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/package.json.js +18 -21
- package/dist/package.json.js.map +1 -1
- package/dist/package.json.mjs +18 -21
- package/dist/package.json.mjs.map +1 -1
- package/dist/providers/provider.d.ts.map +1 -1
- package/dist/registries/apis.d.ts.map +1 -1
- package/dist/registries/components.d.ts +1 -1
- package/dist/registries/components.d.ts.map +1 -1
- package/dist/registries/content-types.d.ts +2 -3
- package/dist/registries/content-types.d.ts.map +1 -1
- package/dist/registries/controllers.d.ts +3 -3
- package/dist/registries/controllers.d.ts.map +1 -1
- package/dist/registries/custom-fields.d.ts.map +1 -1
- package/dist/registries/hooks.d.ts +3 -4
- package/dist/registries/hooks.d.ts.map +1 -1
- package/dist/registries/middlewares.d.ts +2 -3
- package/dist/registries/middlewares.d.ts.map +1 -1
- package/dist/registries/models.d.ts +1 -1
- package/dist/registries/modules.d.ts.map +1 -1
- package/dist/registries/namespace.d.ts.map +1 -1
- package/dist/registries/plugins.d.ts.map +1 -1
- package/dist/registries/policies.d.ts +1 -2
- package/dist/registries/policies.d.ts.map +1 -1
- package/dist/registries/sanitizers.d.ts +2 -2
- package/dist/registries/sanitizers.js +7 -3
- package/dist/registries/sanitizers.js.map +1 -1
- package/dist/registries/services.d.ts +3 -3
- package/dist/registries/services.d.ts.map +1 -1
- package/dist/registries/validators.d.ts +2 -2
- package/dist/registries/validators.js +7 -3
- package/dist/registries/validators.js.map +1 -1
- package/dist/services/ai.d.ts.map +1 -1
- package/dist/services/auth/index.js +7 -3
- package/dist/services/auth/index.js.map +1 -1
- package/dist/services/config.d.ts.map +1 -1
- package/dist/services/content-api/index.d.ts +4 -4
- package/dist/services/content-api/index.d.ts.map +1 -1
- package/dist/services/content-api/index.js +10 -6
- package/dist/services/content-api/index.js.map +1 -1
- package/dist/services/content-api/permissions/engine.d.ts.map +1 -1
- package/dist/services/content-api/permissions/engine.js +5 -1
- package/dist/services/content-api/permissions/engine.js.map +1 -1
- package/dist/services/content-api/permissions/index.d.ts +2 -2
- package/dist/services/content-api/permissions/index.d.ts.map +1 -1
- package/dist/services/content-api/permissions/index.js +10 -6
- package/dist/services/content-api/permissions/index.js.map +1 -1
- package/dist/services/content-api/permissions/providers/action.d.ts +1 -1
- package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
- package/dist/services/content-api/permissions/providers/condition.d.ts +1 -1
- package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
- package/dist/services/content-source-maps.d.ts.map +1 -1
- package/dist/services/core-store.d.ts.map +1 -1
- package/dist/services/cron.d.ts +5 -5
- package/dist/services/custom-fields.d.ts.map +1 -1
- package/dist/services/document-service/attributes/index.d.ts +0 -1
- package/dist/services/document-service/attributes/index.d.ts.map +1 -1
- package/dist/services/document-service/attributes/transforms.js +5 -1
- package/dist/services/document-service/attributes/transforms.js.map +1 -1
- package/dist/services/document-service/common.d.ts.map +1 -1
- package/dist/services/document-service/components.d.ts +2 -2
- package/dist/services/document-service/components.d.ts.map +1 -1
- package/dist/services/document-service/components.js +14 -10
- package/dist/services/document-service/components.js.map +1 -1
- package/dist/services/document-service/components.mjs.map +1 -1
- package/dist/services/document-service/draft-and-publish.d.ts +0 -1
- package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
- package/dist/services/document-service/draft-and-publish.js +1 -1
- package/dist/services/document-service/draft-and-publish.js.map +1 -1
- package/dist/services/document-service/draft-and-publish.mjs +1 -1
- package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
- package/dist/services/document-service/entries.d.ts.map +1 -1
- package/dist/services/document-service/entries.js +6 -2
- package/dist/services/document-service/entries.js.map +1 -1
- package/dist/services/document-service/entries.mjs +7 -3
- package/dist/services/document-service/entries.mjs.map +1 -1
- package/dist/services/document-service/events.d.ts.map +1 -1
- package/dist/services/document-service/first-published-at.d.ts.map +1 -1
- package/dist/services/document-service/index.d.ts.map +1 -1
- package/dist/services/document-service/internationalization.d.ts +0 -1
- package/dist/services/document-service/internationalization.d.ts.map +1 -1
- package/dist/services/document-service/internationalization.js.map +1 -1
- package/dist/services/document-service/internationalization.mjs.map +1 -1
- package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -1
- package/dist/services/document-service/params.d.ts +1 -1
- package/dist/services/document-service/params.d.ts.map +1 -1
- package/dist/services/document-service/publication-filter.d.ts +1 -1
- package/dist/services/document-service/publication-filter.d.ts.map +1 -1
- package/dist/services/document-service/transform/data.d.ts +2 -0
- package/dist/services/document-service/transform/data.d.ts.map +1 -1
- package/dist/services/document-service/transform/data.js +7 -1
- package/dist/services/document-service/transform/data.js.map +1 -1
- package/dist/services/document-service/transform/data.mjs +7 -2
- package/dist/services/document-service/transform/data.mjs.map +1 -1
- package/dist/services/document-service/transform/fields.d.ts.map +1 -1
- package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
- package/dist/services/document-service/transform/id-map.js +7 -4
- package/dist/services/document-service/transform/id-map.js.map +1 -1
- package/dist/services/document-service/transform/id-map.mjs +7 -4
- package/dist/services/document-service/transform/id-map.mjs.map +1 -1
- package/dist/services/document-service/transform/id-transform.d.ts +0 -1
- package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
- package/dist/services/document-service/transform/populate.d.ts.map +1 -1
- package/dist/services/document-service/transform/query.d.ts +0 -1
- package/dist/services/document-service/transform/query.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/transform/default-locale.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/utils/data.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
- package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/utils/map-relation.d.ts +0 -1
- package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/utils/xto-one.d.ts.map +1 -1
- package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -1
- package/dist/services/document-service/utils/bidirectional-relations.js +7 -2
- package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -1
- package/dist/services/document-service/utils/bidirectional-relations.mjs +7 -2
- package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -1
- package/dist/services/document-service/utils/clean-component-join-table.d.ts.map +1 -1
- package/dist/services/document-service/utils/ordered-parallel.d.ts.map +1 -1
- package/dist/services/document-service/utils/populate.d.ts +1 -1
- package/dist/services/document-service/utils/populate.d.ts.map +1 -1
- package/dist/services/document-service/utils/populate.js.map +1 -1
- package/dist/services/document-service/utils/populate.mjs.map +1 -1
- package/dist/services/document-service/utils/self-referential-relations.d.ts.map +1 -1
- package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
- package/dist/services/entity-service/index.d.ts.map +1 -1
- package/dist/services/entity-service/index.js +9 -4
- package/dist/services/entity-service/index.js.map +1 -1
- package/dist/services/entity-validator/index.d.ts.map +1 -1
- package/dist/services/entity-validator/index.js +9 -4
- package/dist/services/entity-validator/index.js.map +1 -1
- package/dist/services/entity-validator/index.mjs.map +1 -1
- package/dist/services/entity-validator/validators.d.ts.map +1 -1
- package/dist/services/entity-validator/validators.js +10 -6
- package/dist/services/entity-validator/validators.js.map +1 -1
- package/dist/services/errors.d.ts.map +1 -1
- package/dist/services/errors.js +7 -3
- package/dist/services/errors.js.map +1 -1
- package/dist/services/features.d.ts.map +1 -1
- package/dist/services/fs.d.ts.map +1 -1
- package/dist/services/fs.js +10 -5
- package/dist/services/fs.js.map +1 -1
- package/dist/services/mcp/authentication.d.ts.map +1 -1
- package/dist/services/mcp/handlers/handlePost.d.ts.map +1 -1
- package/dist/services/mcp/index.d.ts.map +1 -1
- package/dist/services/mcp/internal/McpCapabilityRegistry.d.ts +2 -2
- package/dist/services/mcp/internal/McpServerFactory.d.ts.map +1 -1
- package/dist/services/mcp/internal/syncMcpSessionCapabilities.d.ts.map +1 -1
- package/dist/services/mcp/metrics/metrics.d.ts.map +1 -1
- package/dist/services/mcp/metrics/normalizeMcpCapability.d.ts.map +1 -1
- package/dist/services/mcp/metrics/wrapCapabilityHandlerForMetrics.d.ts.map +1 -1
- package/dist/services/mcp/middleware/oauthDiscoveryFallback.d.ts.map +1 -1
- package/dist/services/mcp/prompt-registry.d.ts +31 -3
- package/dist/services/mcp/prompt-registry.d.ts.map +1 -1
- package/dist/services/mcp/prompt-registry.js +31 -0
- package/dist/services/mcp/prompt-registry.js.map +1 -1
- package/dist/services/mcp/prompt-registry.mjs +31 -1
- package/dist/services/mcp/prompt-registry.mjs.map +1 -1
- package/dist/services/mcp/resource-registry.d.ts +31 -1
- package/dist/services/mcp/resource-registry.d.ts.map +1 -1
- package/dist/services/mcp/resource-registry.js +31 -0
- package/dist/services/mcp/resource-registry.js.map +1 -1
- package/dist/services/mcp/resource-registry.mjs +31 -1
- package/dist/services/mcp/resource-registry.mjs.map +1 -1
- package/dist/services/mcp/routes.d.ts +1 -1
- package/dist/services/mcp/routes.d.ts.map +1 -1
- package/dist/services/mcp/tool-registry.d.ts +36 -9
- package/dist/services/mcp/tool-registry.d.ts.map +1 -1
- package/dist/services/mcp/tool-registry.js +35 -3
- package/dist/services/mcp/tool-registry.js.map +1 -1
- package/dist/services/mcp/tool-registry.mjs +35 -3
- package/dist/services/mcp/tool-registry.mjs.map +1 -1
- package/dist/services/mcp/tools/log.d.ts +15 -85
- package/dist/services/mcp/tools/log.d.ts.map +1 -1
- package/dist/services/mcp/utils/createSafeCapabilityRegistration.d.ts.map +1 -1
- package/dist/services/mcp/utils/safeHandlerWrapper.d.ts.map +1 -1
- package/dist/services/mcp/utils/sendJsonRpcError.d.ts +0 -1
- package/dist/services/mcp/utils/sendJsonRpcError.d.ts.map +1 -1
- package/dist/services/mcp/utils/withTimeout.d.ts.map +1 -1
- package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
- package/dist/services/metrics/admin-user-hash.js +5 -1
- package/dist/services/metrics/admin-user-hash.js.map +1 -1
- package/dist/services/metrics/index.d.ts.map +1 -1
- package/dist/services/metrics/is-truthy.d.ts.map +1 -1
- package/dist/services/metrics/is-truthy.js +5 -1
- package/dist/services/metrics/is-truthy.js.map +1 -1
- package/dist/services/metrics/middleware.d.ts.map +1 -1
- package/dist/services/metrics/rate-limiter.d.ts +2 -1
- package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
- package/dist/services/metrics/sender.d.ts.map +1 -1
- package/dist/services/metrics/sender.js +17 -9
- package/dist/services/metrics/sender.js.map +1 -1
- package/dist/services/query-params.d.ts.map +1 -1
- package/dist/services/reloader.d.ts.map +1 -1
- package/dist/services/request-context.d.ts.map +1 -1
- package/dist/services/server/admin-api.d.ts +3 -5
- package/dist/services/server/admin-api.d.ts.map +1 -1
- package/dist/services/server/api.d.ts +3 -4
- package/dist/services/server/api.d.ts.map +1 -1
- package/dist/services/server/api.js +5 -1
- package/dist/services/server/api.js.map +1 -1
- package/dist/services/server/compose-endpoint.d.ts.map +1 -1
- package/dist/services/server/compose-endpoint.js +5 -1
- package/dist/services/server/compose-endpoint.js.map +1 -1
- package/dist/services/server/content-api.d.ts +3 -5
- package/dist/services/server/content-api.d.ts.map +1 -1
- package/dist/services/server/http-server.d.ts +0 -1
- package/dist/services/server/http-server.d.ts.map +1 -1
- package/dist/services/server/http-server.js +5 -1
- package/dist/services/server/http-server.js.map +1 -1
- package/dist/services/server/index.d.ts.map +1 -1
- package/dist/services/server/index.js +5 -1
- package/dist/services/server/index.js.map +1 -1
- package/dist/services/server/koa-methods.d.ts +107 -0
- package/dist/services/server/koa-methods.d.ts.map +1 -0
- package/dist/services/server/koa-methods.js +24 -0
- package/dist/services/server/koa-methods.js.map +1 -0
- package/dist/services/server/koa-methods.mjs +22 -0
- package/dist/services/server/koa-methods.mjs.map +1 -0
- package/dist/services/server/koa.d.ts +0 -9
- package/dist/services/server/koa.d.ts.map +1 -1
- package/dist/services/server/koa.js +14 -10
- package/dist/services/server/koa.js.map +1 -1
- package/dist/services/server/koa.mjs +7 -9
- package/dist/services/server/koa.mjs.map +1 -1
- package/dist/services/server/middleware.d.ts.map +1 -1
- package/dist/services/server/middleware.js +5 -1
- package/dist/services/server/middleware.js.map +1 -1
- package/dist/services/server/openapi.d.ts.map +1 -1
- package/dist/services/server/openapi.js +11 -6
- package/dist/services/server/openapi.js.map +1 -1
- package/dist/services/server/policy.d.ts.map +1 -1
- package/dist/services/server/register-middlewares.d.ts.map +1 -1
- package/dist/services/server/register-routes.d.ts.map +1 -1
- package/dist/services/server/register-routes.js +8 -4
- package/dist/services/server/register-routes.js.map +1 -1
- package/dist/services/server/routing.d.ts +0 -2
- package/dist/services/server/routing.d.ts.map +1 -1
- package/dist/services/server/routing.js +5 -1
- package/dist/services/server/routing.js.map +1 -1
- package/dist/services/session-manager.d.ts +20 -0
- package/dist/services/session-manager.d.ts.map +1 -1
- package/dist/services/session-manager.js +71 -9
- package/dist/services/session-manager.js.map +1 -1
- package/dist/services/session-manager.mjs +57 -0
- package/dist/services/session-manager.mjs.map +1 -1
- package/dist/services/webhook-runner.js +7 -2
- package/dist/services/webhook-runner.js.map +1 -1
- package/dist/services/webhook-store.d.ts.map +1 -1
- package/dist/services/worker-queue.js +5 -1
- package/dist/services/worker-queue.js.map +1 -1
- package/dist/utils/convert-custom-field-type.d.ts.map +1 -1
- package/dist/utils/cron.d.ts.map +1 -1
- package/dist/utils/fetch.d.ts.map +1 -1
- package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
- package/dist/utils/filepath-to-prop-path.js +13 -8
- package/dist/utils/filepath-to-prop-path.js.map +1 -1
- package/dist/utils/is-initialized.d.ts.map +1 -1
- package/dist/utils/load-config-file.d.ts.map +1 -1
- package/dist/utils/load-config-file.js +7 -2
- package/dist/utils/load-config-file.js.map +1 -1
- package/dist/utils/load-files.d.ts +1 -1
- package/dist/utils/load-files.d.ts.map +1 -1
- package/dist/utils/load-files.js +12 -6
- package/dist/utils/load-files.js.map +1 -1
- package/dist/utils/open-browser.d.ts +0 -1
- package/dist/utils/open-browser.d.ts.map +1 -1
- package/dist/utils/open-browser.js +5 -1
- package/dist/utils/open-browser.js.map +1 -1
- package/dist/utils/resolve-working-dirs.d.ts.map +1 -1
- package/dist/utils/resolve-working-dirs.js +6 -2
- package/dist/utils/resolve-working-dirs.js.map +1 -1
- package/dist/utils/signals.d.ts.map +1 -1
- package/dist/utils/startup-logger.d.ts.map +1 -1
- package/dist/utils/startup-logger.js +27 -21
- package/dist/utils/startup-logger.js.map +1 -1
- package/dist/utils/transform-content-types-to-models.d.ts +3 -3
- package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
- package/dist/utils/transform-content-types-to-models.js +10 -5
- package/dist/utils/transform-content-types-to-models.js.map +1 -1
- package/dist/utils/update-notifier/index.d.ts.map +1 -1
- package/dist/utils/update-notifier/index.js +21 -8
- package/dist/utils/update-notifier/index.js.map +1 -1
- package/dist/utils/update-notifier/index.mjs +6 -1
- package/dist/utils/update-notifier/index.mjs.map +1 -1
- package/package.json +18 -21
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/server/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAgBnD,QAAA,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/server/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAgBnD,QAAA,MAAM,YAAY,GAAI,QAAQ,IAAI,CAAC,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC,MA4F1D,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -10,6 +10,10 @@ var registerMiddlewares = require('./register-middlewares.js');
|
|
|
10
10
|
var koa = require('./koa.js');
|
|
11
11
|
var requestContext = require('../request-context.js');
|
|
12
12
|
|
|
13
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
|
|
15
|
+
var Router__default = /*#__PURE__*/_interopDefault(Router);
|
|
16
|
+
|
|
13
17
|
const healthCheck = async (ctx)=>{
|
|
14
18
|
ctx.set('strapi', 'You are so French!');
|
|
15
19
|
ctx.status = 204;
|
|
@@ -20,7 +24,7 @@ const createServer = (strapi)=>{
|
|
|
20
24
|
keys: strapi.config.get('server.app.keys')
|
|
21
25
|
});
|
|
22
26
|
app.use((ctx, next)=>requestContext.run(ctx, ()=>next()));
|
|
23
|
-
const router = new
|
|
27
|
+
const router = new Router__default.default();
|
|
24
28
|
const routeManager = routing.createRouteManager(strapi);
|
|
25
29
|
const httpServer$1 = httpServer.createHTTPServer(strapi, app);
|
|
26
30
|
const apis = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/services/server/index.ts"],"sourcesContent":["import Router from '@koa/router';\nimport type { Core, Modules } from '@strapi/types';\n\nimport { createHTTPServer } from './http-server';\nimport { createRouteManager } from './routing';\nimport { createAdminAPI } from './admin-api';\nimport { createContentAPI } from './content-api';\nimport registerAllRoutes from './register-routes';\nimport registerApplicationMiddlewares from './register-middlewares';\nimport createKoaApp from './koa';\nimport requestCtx from '../request-context';\n\nconst healthCheck: Core.MiddlewareHandler = async (ctx) => {\n ctx.set('strapi', 'You are so French!');\n ctx.status = 204;\n};\n\nconst createServer = (strapi: Core.Strapi): Modules.Server.Server => {\n const app = createKoaApp({\n proxy: strapi.config.get('server.proxy.koa'),\n keys: strapi.config.get('server.app.keys'),\n });\n\n app.use((ctx, next) => requestCtx.run(ctx, () => next()));\n\n const router = new Router();\n\n const routeManager = createRouteManager(strapi);\n\n const httpServer = createHTTPServer(strapi, app);\n\n const apis = {\n 'content-api': createContentAPI(strapi),\n admin: createAdminAPI(strapi),\n };\n\n // init health check\n router.all('/_health', healthCheck);\n\n const state = {\n mounted: false,\n };\n\n return {\n app,\n router,\n httpServer,\n\n api(name) {\n return apis[name];\n },\n\n use(...args) {\n app.use(...args);\n return this;\n },\n\n routes(routes: Core.Router | Omit<Core.Route, 'info'>[]) {\n if (!Array.isArray(routes) && routes.type) {\n const api = apis[routes.type];\n if (!api) {\n throw new Error(`API ${routes.type} not found. Possible APIs are ${Object.keys(apis)}`);\n }\n\n apis[routes.type].routes(routes);\n return this;\n }\n\n routeManager.addRoutes(routes, router);\n return this;\n },\n\n mount() {\n state.mounted = true;\n\n Object.values(apis).forEach((api) => api.mount(router));\n app.use(router.routes()).use(router.allowedMethods());\n\n return this;\n },\n\n initRouting() {\n registerAllRoutes(strapi);\n\n return this;\n },\n\n async initMiddlewares() {\n await registerApplicationMiddlewares(strapi);\n\n return this;\n },\n\n listRoutes() {\n return [...router.stack];\n },\n\n listen(...args: any[]) {\n if (!state.mounted) {\n this.mount();\n }\n\n return httpServer.listen(...args);\n },\n\n async destroy() {\n await httpServer.destroy();\n },\n };\n};\n\nexport { createServer };\n"],"names":["healthCheck","ctx","set","status","createServer","strapi","app","createKoaApp","proxy","config","get","keys","use","next","requestCtx","run","router","Router","routeManager","createRouteManager","httpServer","createHTTPServer","apis","createContentAPI","admin","createAdminAPI","all","state","mounted","api","name","args","routes","Array","isArray","type","Error","Object","addRoutes","mount","values","forEach","allowedMethods","initRouting","registerAllRoutes","initMiddlewares","registerApplicationMiddlewares","listRoutes","stack","listen","destroy"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/services/server/index.ts"],"sourcesContent":["import Router from '@koa/router';\nimport type { Core, Modules } from '@strapi/types';\n\nimport { createHTTPServer } from './http-server';\nimport { createRouteManager } from './routing';\nimport { createAdminAPI } from './admin-api';\nimport { createContentAPI } from './content-api';\nimport registerAllRoutes from './register-routes';\nimport registerApplicationMiddlewares from './register-middlewares';\nimport createKoaApp from './koa';\nimport requestCtx from '../request-context';\n\nconst healthCheck: Core.MiddlewareHandler = async (ctx) => {\n ctx.set('strapi', 'You are so French!');\n ctx.status = 204;\n};\n\nconst createServer = (strapi: Core.Strapi): Modules.Server.Server => {\n const app = createKoaApp({\n proxy: strapi.config.get('server.proxy.koa'),\n keys: strapi.config.get('server.app.keys'),\n });\n\n app.use((ctx, next) => requestCtx.run(ctx, () => next()));\n\n const router = new Router();\n\n const routeManager = createRouteManager(strapi);\n\n const httpServer = createHTTPServer(strapi, app);\n\n const apis = {\n 'content-api': createContentAPI(strapi),\n admin: createAdminAPI(strapi),\n };\n\n // init health check\n router.all('/_health', healthCheck);\n\n const state = {\n mounted: false,\n };\n\n return {\n app,\n router,\n httpServer,\n\n api(name) {\n return apis[name];\n },\n\n use(...args) {\n app.use(...args);\n return this;\n },\n\n routes(routes: Core.Router | Omit<Core.Route, 'info'>[]) {\n if (!Array.isArray(routes) && routes.type) {\n const api = apis[routes.type];\n if (!api) {\n throw new Error(`API ${routes.type} not found. Possible APIs are ${Object.keys(apis)}`);\n }\n\n apis[routes.type].routes(routes);\n return this;\n }\n\n routeManager.addRoutes(routes, router);\n return this;\n },\n\n mount() {\n state.mounted = true;\n\n Object.values(apis).forEach((api) => api.mount(router));\n app.use(router.routes()).use(router.allowedMethods());\n\n return this;\n },\n\n initRouting() {\n registerAllRoutes(strapi);\n\n return this;\n },\n\n async initMiddlewares() {\n await registerApplicationMiddlewares(strapi);\n\n return this;\n },\n\n listRoutes() {\n return [...router.stack];\n },\n\n listen(...args: any[]) {\n if (!state.mounted) {\n this.mount();\n }\n\n return httpServer.listen(...args);\n },\n\n async destroy() {\n await httpServer.destroy();\n },\n };\n};\n\nexport { createServer };\n"],"names":["healthCheck","ctx","set","status","createServer","strapi","app","createKoaApp","proxy","config","get","keys","use","next","requestCtx","run","router","Router","routeManager","createRouteManager","httpServer","createHTTPServer","apis","createContentAPI","admin","createAdminAPI","all","state","mounted","api","name","args","routes","Array","isArray","type","Error","Object","addRoutes","mount","values","forEach","allowedMethods","initRouting","registerAllRoutes","initMiddlewares","registerApplicationMiddlewares","listRoutes","stack","listen","destroy"],"mappings":"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"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
export interface ErrorMethodEntry {
|
|
2
|
+
/** HTTP status code (400–599). */
|
|
3
|
+
code: number;
|
|
4
|
+
/** Reason phrase from `node:http` `STATUS_CODES`, e.g. "Not Found". */
|
|
5
|
+
statusName: string;
|
|
6
|
+
/** camelCased helper name registered on the context, e.g. "notFound". */
|
|
7
|
+
methodName: keyof ContextDelegatedResponseErrorMethods;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Single source of truth for the generated error helpers: yields one entry per
|
|
11
|
+
* 4xx/5xx `node:http` status. Both the runtime registration (`koa.ts`) and the
|
|
12
|
+
* type/runtime sync test iterate this, so they cannot drift.
|
|
13
|
+
*/
|
|
14
|
+
export declare function errorMethodEntries(): Generator<ErrorMethodEntry>;
|
|
15
|
+
export interface ContextDelegatedResponseErrorMethods {
|
|
16
|
+
/** 400 Bad Request */
|
|
17
|
+
badRequest(response?: string | object, details?: object): void;
|
|
18
|
+
/** 401 Unauthorized */
|
|
19
|
+
unauthorized(response?: string | object, details?: object): void;
|
|
20
|
+
/** 402 Payment Required */
|
|
21
|
+
paymentRequired(response?: string | object, details?: object): void;
|
|
22
|
+
/** 403 Forbidden */
|
|
23
|
+
forbidden(response?: string | object, details?: object): void;
|
|
24
|
+
/** 404 Not Found */
|
|
25
|
+
notFound(response?: string | object, details?: object): void;
|
|
26
|
+
/** 405 Method Not Allowed */
|
|
27
|
+
methodNotAllowed(response?: string | object, details?: object): void;
|
|
28
|
+
/** 406 Not Acceptable */
|
|
29
|
+
notAcceptable(response?: string | object, details?: object): void;
|
|
30
|
+
/** 407 Proxy Authentication Required */
|
|
31
|
+
proxyAuthenticationRequired(response?: string | object, details?: object): void;
|
|
32
|
+
/** 408 Request Timeout */
|
|
33
|
+
requestTimeout(response?: string | object, details?: object): void;
|
|
34
|
+
/** 409 Conflict */
|
|
35
|
+
conflict(response?: string | object, details?: object): void;
|
|
36
|
+
/** 410 Gone */
|
|
37
|
+
gone(response?: string | object, details?: object): void;
|
|
38
|
+
/** 411 Length Required */
|
|
39
|
+
lengthRequired(response?: string | object, details?: object): void;
|
|
40
|
+
/** 412 Precondition Failed */
|
|
41
|
+
preconditionFailed(response?: string | object, details?: object): void;
|
|
42
|
+
/** 413 Payload Too Large */
|
|
43
|
+
payloadTooLarge(response?: string | object, details?: object): void;
|
|
44
|
+
/** 414 Uri Too Long */
|
|
45
|
+
uriTooLong(response?: string | object, details?: object): void;
|
|
46
|
+
/** 415 Unsupported Media Type */
|
|
47
|
+
unsupportedMediaType(response?: string | object, details?: object): void;
|
|
48
|
+
/** 416 Range Not Satisfiable */
|
|
49
|
+
rangeNotSatisfiable(response?: string | object, details?: object): void;
|
|
50
|
+
/** 417 Expectation Failed */
|
|
51
|
+
expectationFailed(response?: string | object, details?: object): void;
|
|
52
|
+
/** 418 Im A Teapot */
|
|
53
|
+
imATeapot(response?: string | object, details?: object): void;
|
|
54
|
+
/** 421 Misdirected Request */
|
|
55
|
+
misdirectedRequest(response?: string | object, details?: object): void;
|
|
56
|
+
/** 422 Unprocessable Entity */
|
|
57
|
+
unprocessableEntity(response?: string | object, details?: object): void;
|
|
58
|
+
/** 423 Locked */
|
|
59
|
+
locked(response?: string | object, details?: object): void;
|
|
60
|
+
/** 424 Failed Dependency */
|
|
61
|
+
failedDependency(response?: string | object, details?: object): void;
|
|
62
|
+
/** 425 Too Early */
|
|
63
|
+
tooEarly(response?: string | object, details?: object): void;
|
|
64
|
+
/** 426 Upgrade Required */
|
|
65
|
+
upgradeRequired(response?: string | object, details?: object): void;
|
|
66
|
+
/** 428 Precondition Required */
|
|
67
|
+
preconditionRequired(response?: string | object, details?: object): void;
|
|
68
|
+
/** 429 Too Many Requests */
|
|
69
|
+
tooManyRequests(response?: string | object, details?: object): void;
|
|
70
|
+
/** 431 Request Header Fields Too Large */
|
|
71
|
+
requestHeaderFieldsTooLarge(response?: string | object, details?: object): void;
|
|
72
|
+
/** 451 Unavailable For Legal Reasons */
|
|
73
|
+
unavailableForLegalReasons(response?: string | object, details?: object): void;
|
|
74
|
+
/** 500 Internal Server Error */
|
|
75
|
+
internalServerError(response?: string | object, details?: object): void;
|
|
76
|
+
/** 501 Not Implemented */
|
|
77
|
+
notImplemented(response?: string | object, details?: object): void;
|
|
78
|
+
/** 502 Bad Gateway */
|
|
79
|
+
badGateway(response?: string | object, details?: object): void;
|
|
80
|
+
/** 503 Service Unavailable */
|
|
81
|
+
serviceUnavailable(response?: string | object, details?: object): void;
|
|
82
|
+
/** 504 Gateway Timeout */
|
|
83
|
+
gatewayTimeout(response?: string | object, details?: object): void;
|
|
84
|
+
/** 505 Http Version Not Supported */
|
|
85
|
+
httpVersionNotSupported(response?: string | object, details?: object): void;
|
|
86
|
+
/** 506 Variant Also Negotiates */
|
|
87
|
+
variantAlsoNegotiates(response?: string | object, details?: object): void;
|
|
88
|
+
/** 507 Insufficient Storage */
|
|
89
|
+
insufficientStorage(response?: string | object, details?: object): void;
|
|
90
|
+
/** 508 Loop Detected */
|
|
91
|
+
loopDetected(response?: string | object, details?: object): void;
|
|
92
|
+
/** 509 Bandwidth Limit Exceeded */
|
|
93
|
+
bandwidthLimitExceeded(response?: string | object, details?: object): void;
|
|
94
|
+
/** 510 Not Extended */
|
|
95
|
+
notExtended(response?: string | object, details?: object): void;
|
|
96
|
+
/** 511 Network Authentication Required */
|
|
97
|
+
networkAuthenticationRequired(response?: string | object, details?: object): void;
|
|
98
|
+
}
|
|
99
|
+
export interface ContextDelegatedResponseSuccessMethods {
|
|
100
|
+
/** 200 */
|
|
101
|
+
send(response: unknown, status?: number): void;
|
|
102
|
+
/** 201 */
|
|
103
|
+
created(response?: unknown): void;
|
|
104
|
+
/** 204 | 200 */
|
|
105
|
+
deleted(response?: unknown): void;
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=koa-methods.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"koa-methods.d.ts","sourceRoot":"","sources":["../../../src/services/server/koa-methods.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var fp = require('lodash/fp');
|
|
4
|
+
var node_http = require('node:http');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Single source of truth for the generated error helpers: yields one entry per
|
|
8
|
+
* 4xx/5xx `node:http` status. Both the runtime registration (`koa.ts`) and the
|
|
9
|
+
* type/runtime sync test iterate this, so they cannot drift.
|
|
10
|
+
*/ function* errorMethodEntries() {
|
|
11
|
+
for (const [codeStr, statusName] of Object.entries(node_http.STATUS_CODES)){
|
|
12
|
+
const code = Number(codeStr);
|
|
13
|
+
if (statusName && code >= 400 && code < 600) {
|
|
14
|
+
yield {
|
|
15
|
+
code,
|
|
16
|
+
statusName,
|
|
17
|
+
methodName: fp.camelCase(statusName)
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
exports.errorMethodEntries = errorMethodEntries;
|
|
24
|
+
//# sourceMappingURL=koa-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"koa-methods.js","sources":["../../../src/services/server/koa-methods.ts"],"sourcesContent":["import { camelCase } from 'lodash/fp';\nimport { STATUS_CODES } from 'node:http';\n\nexport interface ErrorMethodEntry {\n /** HTTP status code (400–599). */\n code: number;\n /** Reason phrase from `node:http` `STATUS_CODES`, e.g. \"Not Found\". */\n statusName: string;\n /** camelCased helper name registered on the context, e.g. \"notFound\". */\n methodName: keyof ContextDelegatedResponseErrorMethods;\n}\n\n/**\n * Single source of truth for the generated error helpers: yields one entry per\n * 4xx/5xx `node:http` status. Both the runtime registration (`koa.ts`) and the\n * type/runtime sync test iterate this, so they cannot drift.\n */\nexport function* errorMethodEntries(): Generator<ErrorMethodEntry> {\n for (const [codeStr, statusName] of Object.entries(STATUS_CODES)) {\n const code = Number(codeStr);\n\n if (statusName && code >= 400 && code < 600) {\n yield {\n code,\n statusName,\n methodName: camelCase(statusName) as keyof ContextDelegatedResponseErrorMethods,\n };\n }\n }\n}\n\nexport interface ContextDelegatedResponseErrorMethods {\n /** 400 Bad Request */\n badRequest(response?: string | object, details?: object): void;\n /** 401 Unauthorized */\n unauthorized(response?: string | object, details?: object): void;\n /** 402 Payment Required */\n paymentRequired(response?: string | object, details?: object): void;\n /** 403 Forbidden */\n forbidden(response?: string | object, details?: object): void;\n /** 404 Not Found */\n notFound(response?: string | object, details?: object): void;\n /** 405 Method Not Allowed */\n methodNotAllowed(response?: string | object, details?: object): void;\n /** 406 Not Acceptable */\n notAcceptable(response?: string | object, details?: object): void;\n /** 407 Proxy Authentication Required */\n proxyAuthenticationRequired(response?: string | object, details?: object): void;\n /** 408 Request Timeout */\n requestTimeout(response?: string | object, details?: object): void;\n /** 409 Conflict */\n conflict(response?: string | object, details?: object): void;\n /** 410 Gone */\n gone(response?: string | object, details?: object): void;\n /** 411 Length Required */\n lengthRequired(response?: string | object, details?: object): void;\n /** 412 Precondition Failed */\n preconditionFailed(response?: string | object, details?: object): void;\n /** 413 Payload Too Large */\n payloadTooLarge(response?: string | object, details?: object): void;\n /** 414 Uri Too Long */\n uriTooLong(response?: string | object, details?: object): void;\n /** 415 Unsupported Media Type */\n unsupportedMediaType(response?: string | object, details?: object): void;\n /** 416 Range Not Satisfiable */\n rangeNotSatisfiable(response?: string | object, details?: object): void;\n /** 417 Expectation Failed */\n expectationFailed(response?: string | object, details?: object): void;\n /** 418 Im A Teapot */\n imATeapot(response?: string | object, details?: object): void;\n /** 421 Misdirected Request */\n misdirectedRequest(response?: string | object, details?: object): void;\n /** 422 Unprocessable Entity */\n unprocessableEntity(response?: string | object, details?: object): void;\n /** 423 Locked */\n locked(response?: string | object, details?: object): void;\n /** 424 Failed Dependency */\n failedDependency(response?: string | object, details?: object): void;\n /** 425 Too Early */\n tooEarly(response?: string | object, details?: object): void;\n /** 426 Upgrade Required */\n upgradeRequired(response?: string | object, details?: object): void;\n /** 428 Precondition Required */\n preconditionRequired(response?: string | object, details?: object): void;\n /** 429 Too Many Requests */\n tooManyRequests(response?: string | object, details?: object): void;\n /** 431 Request Header Fields Too Large */\n requestHeaderFieldsTooLarge(response?: string | object, details?: object): void;\n /** 451 Unavailable For Legal Reasons */\n unavailableForLegalReasons(response?: string | object, details?: object): void;\n /** 500 Internal Server Error */\n internalServerError(response?: string | object, details?: object): void;\n /** 501 Not Implemented */\n notImplemented(response?: string | object, details?: object): void;\n /** 502 Bad Gateway */\n badGateway(response?: string | object, details?: object): void;\n /** 503 Service Unavailable */\n serviceUnavailable(response?: string | object, details?: object): void;\n /** 504 Gateway Timeout */\n gatewayTimeout(response?: string | object, details?: object): void;\n /** 505 Http Version Not Supported */\n httpVersionNotSupported(response?: string | object, details?: object): void;\n /** 506 Variant Also Negotiates */\n variantAlsoNegotiates(response?: string | object, details?: object): void;\n /** 507 Insufficient Storage */\n insufficientStorage(response?: string | object, details?: object): void;\n /** 508 Loop Detected */\n loopDetected(response?: string | object, details?: object): void;\n /** 509 Bandwidth Limit Exceeded */\n bandwidthLimitExceeded(response?: string | object, details?: object): void;\n /** 510 Not Extended */\n notExtended(response?: string | object, details?: object): void;\n /** 511 Network Authentication Required */\n networkAuthenticationRequired(response?: string | object, details?: object): void;\n}\n\nexport interface ContextDelegatedResponseSuccessMethods {\n /** 200 */\n send(response: unknown, status?: number): void;\n /** 201 */\n created(response?: unknown): void;\n /** 204 | 200 */\n deleted(response?: unknown): void;\n}\n"],"names":["errorMethodEntries","codeStr","statusName","Object","entries","STATUS_CODES","code","Number","methodName","camelCase"],"mappings":";;;;;AAYA;;;;AAIC,IACM,UAAUA,kBAAAA,GAAAA;IACf,KAAK,MAAM,CAACC,OAAAA,EAASC,UAAAA,CAAW,IAAIC,MAAAA,CAAOC,OAAO,CAACC,sBAAAA,CAAAA,CAAe;AAChE,QAAA,MAAMC,OAAOC,MAAAA,CAAON,OAAAA,CAAAA;AAEpB,QAAA,IAAIC,UAAAA,IAAcI,IAAAA,IAAQ,GAAA,IAAOA,IAAAA,GAAO,GAAA,EAAK;YAC3C,MAAM;AACJA,gBAAAA,IAAAA;AACAJ,gBAAAA,UAAAA;AACAM,gBAAAA,UAAAA,EAAYC,YAAAA,CAAUP,UAAAA;AACxB,aAAA;AACF,QAAA;AACF,IAAA;AACF;;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { camelCase } from 'lodash/fp';
|
|
2
|
+
import { STATUS_CODES } from 'node:http';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Single source of truth for the generated error helpers: yields one entry per
|
|
6
|
+
* 4xx/5xx `node:http` status. Both the runtime registration (`koa.ts`) and the
|
|
7
|
+
* type/runtime sync test iterate this, so they cannot drift.
|
|
8
|
+
*/ function* errorMethodEntries() {
|
|
9
|
+
for (const [codeStr, statusName] of Object.entries(STATUS_CODES)){
|
|
10
|
+
const code = Number(codeStr);
|
|
11
|
+
if (statusName && code >= 400 && code < 600) {
|
|
12
|
+
yield {
|
|
13
|
+
code,
|
|
14
|
+
statusName,
|
|
15
|
+
methodName: camelCase(statusName)
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export { errorMethodEntries };
|
|
22
|
+
//# sourceMappingURL=koa-methods.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"koa-methods.mjs","sources":["../../../src/services/server/koa-methods.ts"],"sourcesContent":["import { camelCase } from 'lodash/fp';\nimport { STATUS_CODES } from 'node:http';\n\nexport interface ErrorMethodEntry {\n /** HTTP status code (400–599). */\n code: number;\n /** Reason phrase from `node:http` `STATUS_CODES`, e.g. \"Not Found\". */\n statusName: string;\n /** camelCased helper name registered on the context, e.g. \"notFound\". */\n methodName: keyof ContextDelegatedResponseErrorMethods;\n}\n\n/**\n * Single source of truth for the generated error helpers: yields one entry per\n * 4xx/5xx `node:http` status. Both the runtime registration (`koa.ts`) and the\n * type/runtime sync test iterate this, so they cannot drift.\n */\nexport function* errorMethodEntries(): Generator<ErrorMethodEntry> {\n for (const [codeStr, statusName] of Object.entries(STATUS_CODES)) {\n const code = Number(codeStr);\n\n if (statusName && code >= 400 && code < 600) {\n yield {\n code,\n statusName,\n methodName: camelCase(statusName) as keyof ContextDelegatedResponseErrorMethods,\n };\n }\n }\n}\n\nexport interface ContextDelegatedResponseErrorMethods {\n /** 400 Bad Request */\n badRequest(response?: string | object, details?: object): void;\n /** 401 Unauthorized */\n unauthorized(response?: string | object, details?: object): void;\n /** 402 Payment Required */\n paymentRequired(response?: string | object, details?: object): void;\n /** 403 Forbidden */\n forbidden(response?: string | object, details?: object): void;\n /** 404 Not Found */\n notFound(response?: string | object, details?: object): void;\n /** 405 Method Not Allowed */\n methodNotAllowed(response?: string | object, details?: object): void;\n /** 406 Not Acceptable */\n notAcceptable(response?: string | object, details?: object): void;\n /** 407 Proxy Authentication Required */\n proxyAuthenticationRequired(response?: string | object, details?: object): void;\n /** 408 Request Timeout */\n requestTimeout(response?: string | object, details?: object): void;\n /** 409 Conflict */\n conflict(response?: string | object, details?: object): void;\n /** 410 Gone */\n gone(response?: string | object, details?: object): void;\n /** 411 Length Required */\n lengthRequired(response?: string | object, details?: object): void;\n /** 412 Precondition Failed */\n preconditionFailed(response?: string | object, details?: object): void;\n /** 413 Payload Too Large */\n payloadTooLarge(response?: string | object, details?: object): void;\n /** 414 Uri Too Long */\n uriTooLong(response?: string | object, details?: object): void;\n /** 415 Unsupported Media Type */\n unsupportedMediaType(response?: string | object, details?: object): void;\n /** 416 Range Not Satisfiable */\n rangeNotSatisfiable(response?: string | object, details?: object): void;\n /** 417 Expectation Failed */\n expectationFailed(response?: string | object, details?: object): void;\n /** 418 Im A Teapot */\n imATeapot(response?: string | object, details?: object): void;\n /** 421 Misdirected Request */\n misdirectedRequest(response?: string | object, details?: object): void;\n /** 422 Unprocessable Entity */\n unprocessableEntity(response?: string | object, details?: object): void;\n /** 423 Locked */\n locked(response?: string | object, details?: object): void;\n /** 424 Failed Dependency */\n failedDependency(response?: string | object, details?: object): void;\n /** 425 Too Early */\n tooEarly(response?: string | object, details?: object): void;\n /** 426 Upgrade Required */\n upgradeRequired(response?: string | object, details?: object): void;\n /** 428 Precondition Required */\n preconditionRequired(response?: string | object, details?: object): void;\n /** 429 Too Many Requests */\n tooManyRequests(response?: string | object, details?: object): void;\n /** 431 Request Header Fields Too Large */\n requestHeaderFieldsTooLarge(response?: string | object, details?: object): void;\n /** 451 Unavailable For Legal Reasons */\n unavailableForLegalReasons(response?: string | object, details?: object): void;\n /** 500 Internal Server Error */\n internalServerError(response?: string | object, details?: object): void;\n /** 501 Not Implemented */\n notImplemented(response?: string | object, details?: object): void;\n /** 502 Bad Gateway */\n badGateway(response?: string | object, details?: object): void;\n /** 503 Service Unavailable */\n serviceUnavailable(response?: string | object, details?: object): void;\n /** 504 Gateway Timeout */\n gatewayTimeout(response?: string | object, details?: object): void;\n /** 505 Http Version Not Supported */\n httpVersionNotSupported(response?: string | object, details?: object): void;\n /** 506 Variant Also Negotiates */\n variantAlsoNegotiates(response?: string | object, details?: object): void;\n /** 507 Insufficient Storage */\n insufficientStorage(response?: string | object, details?: object): void;\n /** 508 Loop Detected */\n loopDetected(response?: string | object, details?: object): void;\n /** 509 Bandwidth Limit Exceeded */\n bandwidthLimitExceeded(response?: string | object, details?: object): void;\n /** 510 Not Extended */\n notExtended(response?: string | object, details?: object): void;\n /** 511 Network Authentication Required */\n networkAuthenticationRequired(response?: string | object, details?: object): void;\n}\n\nexport interface ContextDelegatedResponseSuccessMethods {\n /** 200 */\n send(response: unknown, status?: number): void;\n /** 201 */\n created(response?: unknown): void;\n /** 204 | 200 */\n deleted(response?: unknown): void;\n}\n"],"names":["errorMethodEntries","codeStr","statusName","Object","entries","STATUS_CODES","code","Number","methodName","camelCase"],"mappings":";;;AAYA;;;;AAIC,IACM,UAAUA,kBAAAA,GAAAA;IACf,KAAK,MAAM,CAACC,OAAAA,EAASC,UAAAA,CAAW,IAAIC,MAAAA,CAAOC,OAAO,CAACC,YAAAA,CAAAA,CAAe;AAChE,QAAA,MAAMC,OAAOC,MAAAA,CAAON,OAAAA,CAAAA;AAEpB,QAAA,IAAIC,UAAAA,IAAcI,IAAAA,IAAQ,GAAA,IAAOA,IAAAA,GAAO,GAAA,EAAK;YAC3C,MAAM;AACJA,gBAAAA,IAAAA;AACAJ,gBAAAA,UAAAA;AACAM,gBAAAA,UAAAA,EAAYC,SAAAA,CAAUP,UAAAA;AACxB,aAAA;AACF,QAAA;AACF,IAAA;AACF;;;;"}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import Koa from 'koa';
|
|
2
|
-
declare module 'koa' {
|
|
3
|
-
interface BaseResponse {
|
|
4
|
-
send: (data: any, status?: number) => void;
|
|
5
|
-
created: (data: any) => void;
|
|
6
|
-
deleted: (data: any) => void;
|
|
7
|
-
_explicitStatus: boolean;
|
|
8
|
-
[key: string]: (message: string, details?: unknown) => void;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
2
|
declare const createKoaApp: ({ proxy, keys }: {
|
|
12
3
|
proxy: boolean;
|
|
13
4
|
keys: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koa.d.ts","sourceRoot":"","sources":["../../../src/services/server/koa.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"koa.d.ts","sourceRoot":"","sources":["../../../src/services/server/koa.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,KAAK,CAAC;AA8CtB,QAAA,MAAM,YAAY,GAAI,iBAAiB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,8CAOxE,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -4,24 +4,28 @@ var fp = require('lodash/fp');
|
|
|
4
4
|
var Koa = require('koa');
|
|
5
5
|
var createError = require('http-errors');
|
|
6
6
|
var delegate = require('delegates');
|
|
7
|
-
var statuses = require('statuses');
|
|
8
7
|
var errors = require('../errors.js');
|
|
8
|
+
var koaMethods = require('./koa-methods.js');
|
|
9
|
+
|
|
10
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
|
|
12
|
+
var Koa__default = /*#__PURE__*/_interopDefault(Koa);
|
|
13
|
+
var createError__default = /*#__PURE__*/_interopDefault(createError);
|
|
14
|
+
var delegate__default = /*#__PURE__*/_interopDefault(delegate);
|
|
9
15
|
|
|
10
16
|
const addCustomMethods = (app)=>{
|
|
11
|
-
const delegator =
|
|
12
|
-
/* errors */
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
app.response[camelCasedName] = function responseCode(message = name, details = {}) {
|
|
16
|
-
const httpError = createError(code, message, {
|
|
17
|
+
const delegator = delegate__default.default(app.context, 'response');
|
|
18
|
+
/* errors */ for (const { code, statusName, methodName } of koaMethods.errorMethodEntries()){
|
|
19
|
+
app.response[methodName] = function responseCode(response = statusName, details = {}) {
|
|
20
|
+
const httpError = createError__default.default(code, response, {
|
|
17
21
|
details
|
|
18
22
|
});
|
|
19
23
|
const { status, body } = errors.formatHttpError(httpError);
|
|
20
24
|
this.status = status;
|
|
21
25
|
this.body = body;
|
|
22
26
|
};
|
|
23
|
-
delegator.method(
|
|
24
|
-
}
|
|
27
|
+
delegator.method(methodName);
|
|
28
|
+
}
|
|
25
29
|
/* send, created, deleted */ app.response.send = function send(data, status = 200) {
|
|
26
30
|
this.status = status;
|
|
27
31
|
this.body = data;
|
|
@@ -42,7 +46,7 @@ const addCustomMethods = (app)=>{
|
|
|
42
46
|
return app;
|
|
43
47
|
};
|
|
44
48
|
const createKoaApp = ({ proxy, keys })=>{
|
|
45
|
-
const app = new
|
|
49
|
+
const app = new Koa__default.default({
|
|
46
50
|
proxy
|
|
47
51
|
});
|
|
48
52
|
app.keys = keys;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koa.js","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil
|
|
1
|
+
{"version":3,"file":"koa.js","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil } from 'lodash/fp';\nimport Koa from 'koa';\nimport createError from 'http-errors';\nimport delegate from 'delegates';\nimport { formatHttpError } from '../errors';\nimport { errorMethodEntries } from './koa-methods';\n\nconst addCustomMethods = (app: Koa) => {\n const delegator = delegate(app.context, 'response');\n\n /* errors */\n for (const { code, statusName, methodName } of errorMethodEntries()) {\n app.response[methodName] = function responseCode(response = statusName, details = {}) {\n const httpError = createError(code, response, { details });\n const { status, body } = formatHttpError(httpError);\n this.status = status;\n this.body = body;\n };\n\n delegator.method(methodName);\n }\n\n /* send, created, deleted */\n app.response.send = function send(data, status = 200) {\n this.status = status;\n this.body = data;\n };\n\n app.response.created = function created(data) {\n this.status = 201;\n this.body = data;\n };\n\n app.response.deleted = function deleted(data) {\n if (isNil(data)) {\n this.status = 204;\n } else {\n this.status = 200;\n this.body = data;\n }\n };\n\n delegator.method('send').method('created').method('deleted');\n\n return app;\n};\n\nconst createKoaApp = ({ proxy, keys }: { proxy: boolean; keys: string[] }) => {\n const app = new Koa({ proxy });\n app.keys = keys;\n\n addCustomMethods(app);\n\n return app;\n};\n\nexport default createKoaApp;\n"],"names":["addCustomMethods","app","delegator","delegate","context","code","statusName","methodName","errorMethodEntries","response","responseCode","details","httpError","createError","status","body","formatHttpError","method","send","data","created","deleted","isNil","createKoaApp","proxy","keys","Koa"],"mappings":";;;;;;;;;;;;;;;AAOA,MAAMA,mBAAmB,CAACC,GAAAA,GAAAA;AACxB,IAAA,MAAMC,SAAAA,GAAYC,yBAAAA,CAASF,GAAAA,CAAIG,OAAO,EAAE,UAAA,CAAA;iBAGxC,KAAK,MAAM,EAAEC,IAAI,EAAEC,UAAU,EAAEC,UAAU,EAAE,IAAIC,6BAAAA,EAAAA,CAAsB;QACnEP,GAAAA,CAAIQ,QAAQ,CAACF,UAAAA,CAAW,GAAG,SAASG,YAAAA,CAAaD,QAAAA,GAAWH,UAAU,EAAEK,OAAAA,GAAU,EAAE,EAAA;YAClF,MAAMC,SAAAA,GAAYC,4BAAAA,CAAYR,IAAAA,EAAMI,QAAAA,EAAU;AAAEE,gBAAAA;AAAQ,aAAA,CAAA;AACxD,YAAA,MAAM,EAAEG,MAAM,EAAEC,IAAI,EAAE,GAAGC,sBAAAA,CAAgBJ,SAAAA,CAAAA;YACzC,IAAI,CAACE,MAAM,GAAGA,MAAAA;YACd,IAAI,CAACC,IAAI,GAAGA,IAAAA;AACd,QAAA,CAAA;AAEAb,QAAAA,SAAAA,CAAUe,MAAM,CAACV,UAAAA,CAAAA;AACnB,IAAA;iCAGAN,GAAAA,CAAIQ,QAAQ,CAACS,IAAI,GAAG,SAASA,IAAAA,CAAKC,IAAI,EAAEL,MAAAA,GAAS,GAAG,EAAA;QAClD,IAAI,CAACA,MAAM,GAAGA,MAAAA;QACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd,IAAA,CAAA;AAEAlB,IAAAA,GAAAA,CAAIQ,QAAQ,CAACW,OAAO,GAAG,SAASA,QAAQD,IAAI,EAAA;QAC1C,IAAI,CAACL,MAAM,GAAG,GAAA;QACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd,IAAA,CAAA;AAEAlB,IAAAA,GAAAA,CAAIQ,QAAQ,CAACY,OAAO,GAAG,SAASA,QAAQF,IAAI,EAAA;AAC1C,QAAA,IAAIG,SAAMH,IAAAA,CAAAA,EAAO;YACf,IAAI,CAACL,MAAM,GAAG,GAAA;QAChB,CAAA,MAAO;YACL,IAAI,CAACA,MAAM,GAAG,GAAA;YACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd,QAAA;AACF,IAAA,CAAA;AAEAjB,IAAAA,SAAAA,CAAUe,MAAM,CAAC,MAAA,CAAA,CAAQA,MAAM,CAAC,SAAA,CAAA,CAAWA,MAAM,CAAC,SAAA,CAAA;IAElD,OAAOhB,GAAAA;AACT,CAAA;AAEA,MAAMsB,eAAe,CAAC,EAAEC,KAAK,EAAEC,IAAI,EAAsC,GAAA;IACvE,MAAMxB,GAAAA,GAAM,IAAIyB,oBAAAA,CAAI;AAAEF,QAAAA;AAAM,KAAA,CAAA;AAC5BvB,IAAAA,GAAAA,CAAIwB,IAAI,GAAGA,IAAAA;IAEXzB,gBAAAA,CAAiBC,GAAAA,CAAAA;IAEjB,OAAOA,GAAAA;AACT;;;;"}
|
|
@@ -1,25 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isNil } from 'lodash/fp';
|
|
2
2
|
import Koa from 'koa';
|
|
3
3
|
import createError from 'http-errors';
|
|
4
4
|
import delegate from 'delegates';
|
|
5
|
-
import statuses from 'statuses';
|
|
6
5
|
import { formatHttpError } from '../errors.mjs';
|
|
6
|
+
import { errorMethodEntries } from './koa-methods.mjs';
|
|
7
7
|
|
|
8
8
|
const addCustomMethods = (app)=>{
|
|
9
9
|
const delegator = delegate(app.context, 'response');
|
|
10
|
-
/* errors */
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
app.response[camelCasedName] = function responseCode(message = name, details = {}) {
|
|
14
|
-
const httpError = createError(code, message, {
|
|
10
|
+
/* errors */ for (const { code, statusName, methodName } of errorMethodEntries()){
|
|
11
|
+
app.response[methodName] = function responseCode(response = statusName, details = {}) {
|
|
12
|
+
const httpError = createError(code, response, {
|
|
15
13
|
details
|
|
16
14
|
});
|
|
17
15
|
const { status, body } = formatHttpError(httpError);
|
|
18
16
|
this.status = status;
|
|
19
17
|
this.body = body;
|
|
20
18
|
};
|
|
21
|
-
delegator.method(
|
|
22
|
-
}
|
|
19
|
+
delegator.method(methodName);
|
|
20
|
+
}
|
|
23
21
|
/* send, created, deleted */ app.response.send = function send(data, status = 200) {
|
|
24
22
|
this.status = status;
|
|
25
23
|
this.body = data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koa.mjs","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil
|
|
1
|
+
{"version":3,"file":"koa.mjs","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil } from 'lodash/fp';\nimport Koa from 'koa';\nimport createError from 'http-errors';\nimport delegate from 'delegates';\nimport { formatHttpError } from '../errors';\nimport { errorMethodEntries } from './koa-methods';\n\nconst addCustomMethods = (app: Koa) => {\n const delegator = delegate(app.context, 'response');\n\n /* errors */\n for (const { code, statusName, methodName } of errorMethodEntries()) {\n app.response[methodName] = function responseCode(response = statusName, details = {}) {\n const httpError = createError(code, response, { details });\n const { status, body } = formatHttpError(httpError);\n this.status = status;\n this.body = body;\n };\n\n delegator.method(methodName);\n }\n\n /* send, created, deleted */\n app.response.send = function send(data, status = 200) {\n this.status = status;\n this.body = data;\n };\n\n app.response.created = function created(data) {\n this.status = 201;\n this.body = data;\n };\n\n app.response.deleted = function deleted(data) {\n if (isNil(data)) {\n this.status = 204;\n } else {\n this.status = 200;\n this.body = data;\n }\n };\n\n delegator.method('send').method('created').method('deleted');\n\n return app;\n};\n\nconst createKoaApp = ({ proxy, keys }: { proxy: boolean; keys: string[] }) => {\n const app = new Koa({ proxy });\n app.keys = keys;\n\n addCustomMethods(app);\n\n return app;\n};\n\nexport default createKoaApp;\n"],"names":["addCustomMethods","app","delegator","delegate","context","code","statusName","methodName","errorMethodEntries","response","responseCode","details","httpError","createError","status","body","formatHttpError","method","send","data","created","deleted","isNil","createKoaApp","proxy","keys","Koa"],"mappings":";;;;;;;AAOA,MAAMA,mBAAmB,CAACC,GAAAA,GAAAA;AACxB,IAAA,MAAMC,SAAAA,GAAYC,QAAAA,CAASF,GAAAA,CAAIG,OAAO,EAAE,UAAA,CAAA;iBAGxC,KAAK,MAAM,EAAEC,IAAI,EAAEC,UAAU,EAAEC,UAAU,EAAE,IAAIC,kBAAAA,EAAAA,CAAsB;QACnEP,GAAAA,CAAIQ,QAAQ,CAACF,UAAAA,CAAW,GAAG,SAASG,YAAAA,CAAaD,QAAAA,GAAWH,UAAU,EAAEK,OAAAA,GAAU,EAAE,EAAA;YAClF,MAAMC,SAAAA,GAAYC,WAAAA,CAAYR,IAAAA,EAAMI,QAAAA,EAAU;AAAEE,gBAAAA;AAAQ,aAAA,CAAA;AACxD,YAAA,MAAM,EAAEG,MAAM,EAAEC,IAAI,EAAE,GAAGC,eAAAA,CAAgBJ,SAAAA,CAAAA;YACzC,IAAI,CAACE,MAAM,GAAGA,MAAAA;YACd,IAAI,CAACC,IAAI,GAAGA,IAAAA;AACd,QAAA,CAAA;AAEAb,QAAAA,SAAAA,CAAUe,MAAM,CAACV,UAAAA,CAAAA;AACnB,IAAA;iCAGAN,GAAAA,CAAIQ,QAAQ,CAACS,IAAI,GAAG,SAASA,IAAAA,CAAKC,IAAI,EAAEL,MAAAA,GAAS,GAAG,EAAA;QAClD,IAAI,CAACA,MAAM,GAAGA,MAAAA;QACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd,IAAA,CAAA;AAEAlB,IAAAA,GAAAA,CAAIQ,QAAQ,CAACW,OAAO,GAAG,SAASA,QAAQD,IAAI,EAAA;QAC1C,IAAI,CAACL,MAAM,GAAG,GAAA;QACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd,IAAA,CAAA;AAEAlB,IAAAA,GAAAA,CAAIQ,QAAQ,CAACY,OAAO,GAAG,SAASA,QAAQF,IAAI,EAAA;AAC1C,QAAA,IAAIG,MAAMH,IAAAA,CAAAA,EAAO;YACf,IAAI,CAACL,MAAM,GAAG,GAAA;QAChB,CAAA,MAAO;YACL,IAAI,CAACA,MAAM,GAAG,GAAA;YACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd,QAAA;AACF,IAAA,CAAA;AAEAjB,IAAAA,SAAAA,CAAUe,MAAM,CAAC,MAAA,CAAA,CAAQA,MAAM,CAAC,SAAA,CAAA,CAAWA,MAAM,CAAC,SAAA,CAAA;IAElD,OAAOhB,GAAAA;AACT,CAAA;AAEA,MAAMsB,eAAe,CAAC,EAAEC,KAAK,EAAEC,IAAI,EAAsC,GAAA;IACvE,MAAMxB,GAAAA,GAAM,IAAIyB,GAAAA,CAAI;AAAEF,QAAAA;AAAM,KAAA,CAAA;AAC5BvB,IAAAA,GAAAA,CAAIwB,IAAI,GAAGA,IAAAA;IAEXzB,gBAAAA,CAAiBC,GAAAA,CAAAA;IAEjB,OAAOA,GAAAA;AACT;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/services/server/middleware.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAiB1C,QAAA,MAAM,uBAAuB,
|
|
1
|
+
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/services/server/middleware.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAiB1C,QAAA,MAAM,uBAAuB,GAAI,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,IAAI,CAAC,MAAM,6BAUtE,CAAC;AAIF;;GAEG;AACH,QAAA,MAAM,kBAAkB,GACtB,QAAQ,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,EACnF,QAAQ,IAAI,CAAC,MAAM;UAGX,MAAM,GAAG,IAAI;aACV,IAAI,CAAC,iBAAiB;GA+DlC,CAAC;AAyBF,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -4,6 +4,10 @@ var path = require('path');
|
|
|
4
4
|
var fp = require('lodash/fp');
|
|
5
5
|
var strapiUtils = require('@strapi/utils');
|
|
6
6
|
|
|
7
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
|
+
|
|
9
|
+
var path__default = /*#__PURE__*/_interopDefault(path);
|
|
10
|
+
|
|
7
11
|
const instantiateMiddleware = (middlewareFactory, name, config, strapi)=>{
|
|
8
12
|
try {
|
|
9
13
|
return middlewareFactory(config, {
|
|
@@ -79,7 +83,7 @@ const dummyMiddleware = (_, next)=>next();
|
|
|
79
83
|
modulePath = require.resolve(resolve);
|
|
80
84
|
} catch (error) {
|
|
81
85
|
if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {
|
|
82
|
-
modulePath =
|
|
86
|
+
modulePath = path__default.default.resolve(strapi.dirs.dist.root, resolve);
|
|
83
87
|
} else {
|
|
84
88
|
throw error;
|
|
85
89
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sources":["../../../src/services/server/middleware.ts"],"sourcesContent":["import path from 'path';\nimport { isArray } from 'lodash/fp';\nimport { importDefault } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst instantiateMiddleware = (\n middlewareFactory: Core.MiddlewareFactory,\n name: string,\n config: unknown,\n strapi: Core.Strapi\n) => {\n try {\n return middlewareFactory(config, { strapi });\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Middleware \"${name}\": ${e.message}`);\n }\n }\n};\n\nconst resolveRouteMiddlewares = (route: Core.Route, strapi: Core.Strapi) => {\n const middlewaresConfig = route?.config?.middlewares ?? [];\n\n if (!isArray(middlewaresConfig)) {\n throw new Error('Route middlewares config must be an array');\n }\n\n const middlewares = resolveMiddlewares(middlewaresConfig, strapi);\n\n return middlewares.map(({ handler }) => handler);\n};\n\nconst dummyMiddleware: Core.MiddlewareHandler = (_, next) => next();\n\n/**\n * Initialize every configured middlewares\n */\nconst resolveMiddlewares = (\n config: Array<Core.MiddlewareName | Core.MiddlewareConfig | Core.MiddlewareHandler>,\n strapi: Core.Strapi\n) => {\n const middlewares: {\n name: string | null;\n handler: Core.MiddlewareHandler;\n }[] = [];\n\n for (const item of config) {\n if (typeof item === 'function') {\n middlewares.push({\n name: null,\n handler: item,\n });\n\n continue;\n }\n\n if (typeof item === 'string') {\n const middlewareFactory = strapi.middleware(item);\n\n if (!middlewareFactory) {\n throw new Error(`Middleware ${item} not found.`);\n }\n\n middlewares.push({\n name: item,\n handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (typeof item === 'object' && item !== null) {\n const { name, resolve, config = {} } = item;\n\n if (name) {\n const middlewareFactory = strapi.middleware(name);\n middlewares.push({\n name,\n handler:\n instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (resolve) {\n const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);\n middlewares.push({\n name: resolve,\n handler:\n instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ??\n dummyMiddleware,\n });\n\n continue;\n }\n\n throw new Error('Invalid middleware configuration. Missing name or resolve properties.');\n }\n\n throw new Error(\n 'Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.'\n );\n }\n\n return middlewares;\n};\n\n/**\n * Resolve middleware from package name or path\n */\nconst resolveCustomMiddleware = (resolve: string, strapi: Core.Strapi) => {\n let modulePath;\n\n try {\n modulePath = require.resolve(resolve);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = path.resolve(strapi.dirs.dist.root, resolve);\n } else {\n throw error;\n }\n }\n\n try {\n return importDefault(modulePath);\n } catch (err) {\n throw new Error(`Could not load middleware \"${modulePath}\".`);\n }\n};\n\nexport { resolveRouteMiddlewares, resolveMiddlewares };\n"],"names":["instantiateMiddleware","middlewareFactory","name","config","strapi","e","Error","message","resolveRouteMiddlewares","route","middlewaresConfig","middlewares","isArray","resolveMiddlewares","map","handler","dummyMiddleware","_","next","item","push","middleware","resolve","resolvedMiddlewareFactory","resolveCustomMiddleware","modulePath","require","error","code","path","dirs","dist","root","importDefault","err"],"mappings":"
|
|
1
|
+
{"version":3,"file":"middleware.js","sources":["../../../src/services/server/middleware.ts"],"sourcesContent":["import path from 'path';\nimport { isArray } from 'lodash/fp';\nimport { importDefault } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst instantiateMiddleware = (\n middlewareFactory: Core.MiddlewareFactory,\n name: string,\n config: unknown,\n strapi: Core.Strapi\n) => {\n try {\n return middlewareFactory(config, { strapi });\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Middleware \"${name}\": ${e.message}`);\n }\n }\n};\n\nconst resolveRouteMiddlewares = (route: Core.Route, strapi: Core.Strapi) => {\n const middlewaresConfig = route?.config?.middlewares ?? [];\n\n if (!isArray(middlewaresConfig)) {\n throw new Error('Route middlewares config must be an array');\n }\n\n const middlewares = resolveMiddlewares(middlewaresConfig, strapi);\n\n return middlewares.map(({ handler }) => handler);\n};\n\nconst dummyMiddleware: Core.MiddlewareHandler = (_, next) => next();\n\n/**\n * Initialize every configured middlewares\n */\nconst resolveMiddlewares = (\n config: Array<Core.MiddlewareName | Core.MiddlewareConfig | Core.MiddlewareHandler>,\n strapi: Core.Strapi\n) => {\n const middlewares: {\n name: string | null;\n handler: Core.MiddlewareHandler;\n }[] = [];\n\n for (const item of config) {\n if (typeof item === 'function') {\n middlewares.push({\n name: null,\n handler: item,\n });\n\n continue;\n }\n\n if (typeof item === 'string') {\n const middlewareFactory = strapi.middleware(item);\n\n if (!middlewareFactory) {\n throw new Error(`Middleware ${item} not found.`);\n }\n\n middlewares.push({\n name: item,\n handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (typeof item === 'object' && item !== null) {\n const { name, resolve, config = {} } = item;\n\n if (name) {\n const middlewareFactory = strapi.middleware(name);\n middlewares.push({\n name,\n handler:\n instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (resolve) {\n const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);\n middlewares.push({\n name: resolve,\n handler:\n instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ??\n dummyMiddleware,\n });\n\n continue;\n }\n\n throw new Error('Invalid middleware configuration. Missing name or resolve properties.');\n }\n\n throw new Error(\n 'Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.'\n );\n }\n\n return middlewares;\n};\n\n/**\n * Resolve middleware from package name or path\n */\nconst resolveCustomMiddleware = (resolve: string, strapi: Core.Strapi) => {\n let modulePath;\n\n try {\n modulePath = require.resolve(resolve);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = path.resolve(strapi.dirs.dist.root, resolve);\n } else {\n throw error;\n }\n }\n\n try {\n return importDefault(modulePath);\n } catch (err) {\n throw new Error(`Could not load middleware \"${modulePath}\".`);\n }\n};\n\nexport { resolveRouteMiddlewares, resolveMiddlewares };\n"],"names":["instantiateMiddleware","middlewareFactory","name","config","strapi","e","Error","message","resolveRouteMiddlewares","route","middlewaresConfig","middlewares","isArray","resolveMiddlewares","map","handler","dummyMiddleware","_","next","item","push","middleware","resolve","resolvedMiddlewareFactory","resolveCustomMiddleware","modulePath","require","error","code","path","dirs","dist","root","importDefault","err"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../../src/services/server/openapi.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AA0K1C,eAAO,MAAM,oBAAoB,
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../../src/services/server/openapi.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AA0K1C,eAAO,MAAM,oBAAoB,GAAI,QAAQ,IAAI,CAAC,MAAM,SA8DvD,CAAC"}
|
|
@@ -4,7 +4,10 @@ var path = require('path');
|
|
|
4
4
|
var fse = require('fs-extra');
|
|
5
5
|
var openapi = require('@strapi/openapi');
|
|
6
6
|
|
|
7
|
-
function
|
|
7
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
|
+
|
|
9
|
+
function _interopNamespace(e) {
|
|
10
|
+
if (e && e.__esModule) return e;
|
|
8
11
|
var n = Object.create(null);
|
|
9
12
|
if (e) {
|
|
10
13
|
Object.keys(e).forEach(function (k) {
|
|
@@ -21,7 +24,9 @@ function _interopNamespaceDefault(e) {
|
|
|
21
24
|
return Object.freeze(n);
|
|
22
25
|
}
|
|
23
26
|
|
|
24
|
-
var
|
|
27
|
+
var path__default = /*#__PURE__*/_interopDefault(path);
|
|
28
|
+
var fse__default = /*#__PURE__*/_interopDefault(fse);
|
|
29
|
+
var openapi__namespace = /*#__PURE__*/_interopNamespace(openapi);
|
|
25
30
|
|
|
26
31
|
const SUPPORTED_ACCESS = {
|
|
27
32
|
'content-api': [
|
|
@@ -86,7 +91,7 @@ const resolveEndpointConfig = (strapi, rawConfig, type)=>{
|
|
|
86
91
|
const cacheEnabled = rawConfig?.cache?.enabled ?? DEFAULTS.cacheEnabled;
|
|
87
92
|
const cacheMaxAgeMs = rawConfig?.cache?.maxAgeMs ?? DEFAULTS.cacheMaxAgeMs;
|
|
88
93
|
const configuredCachePath = rawConfig?.cache?.filePath ?? DEFAULTS.cacheRelativeFilePaths[type];
|
|
89
|
-
const absoluteCachePath =
|
|
94
|
+
const absoluteCachePath = path__default.default.isAbsolute(configuredCachePath) ? configuredCachePath : path__default.default.resolve(strapi.dirs.app.root, configuredCachePath);
|
|
90
95
|
return {
|
|
91
96
|
type,
|
|
92
97
|
access,
|
|
@@ -130,18 +135,18 @@ const readCache = async (cachePath, maxAgeMs)=>{
|
|
|
130
135
|
return null;
|
|
131
136
|
}
|
|
132
137
|
try {
|
|
133
|
-
const stat = await
|
|
138
|
+
const stat = await fse__default.default.stat(cachePath);
|
|
134
139
|
const ageMs = Date.now() - stat.mtimeMs;
|
|
135
140
|
if (ageMs > maxAgeMs) {
|
|
136
141
|
return null;
|
|
137
142
|
}
|
|
138
|
-
return await
|
|
143
|
+
return await fse__default.default.readJson(cachePath);
|
|
139
144
|
} catch {
|
|
140
145
|
return null;
|
|
141
146
|
}
|
|
142
147
|
};
|
|
143
148
|
const writeCache = async (cachePath, document)=>{
|
|
144
|
-
await
|
|
149
|
+
await fse__default.default.outputJson(cachePath, document, {
|
|
145
150
|
spaces: 2
|
|
146
151
|
});
|
|
147
152
|
};
|