@strapi/core 0.0.0 → 5.0.0-alpha.1
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 +9 -4
- package/dist/Strapi.d.ts.map +1 -1
- package/dist/Strapi.js +78 -52
- package/dist/Strapi.js.map +1 -1
- package/dist/Strapi.mjs +80 -53
- package/dist/Strapi.mjs.map +1 -1
- package/dist/configuration/config-loader.d.ts.map +1 -0
- package/dist/configuration/config-loader.js +102 -0
- package/dist/configuration/config-loader.js.map +1 -0
- package/dist/configuration/config-loader.mjs +100 -0
- package/dist/configuration/config-loader.mjs.map +1 -0
- package/dist/{core/app-configuration → configuration}/index.d.ts +20 -5
- package/dist/configuration/index.d.ts.map +1 -0
- package/dist/{core/app-configuration → configuration}/index.js +28 -5
- package/dist/configuration/index.js.map +1 -0
- package/dist/{core/app-configuration → configuration}/index.mjs +28 -5
- package/dist/configuration/index.mjs.map +1 -0
- package/dist/configuration/urls.d.ts +8 -0
- package/dist/configuration/urls.d.ts.map +1 -0
- package/dist/configuration/urls.js +68 -0
- package/dist/configuration/urls.js.map +1 -0
- package/dist/configuration/urls.mjs +66 -0
- package/dist/configuration/urls.mjs.map +1 -0
- package/dist/core-api/controller/collection-type.d.ts +1 -1
- package/dist/core-api/controller/collection-type.d.ts.map +1 -1
- package/dist/core-api/controller/collection-type.js +9 -20
- package/dist/core-api/controller/collection-type.js.map +1 -1
- package/dist/core-api/controller/collection-type.mjs +8 -20
- package/dist/core-api/controller/collection-type.mjs.map +1 -1
- package/dist/core-api/controller/index.d.ts.map +1 -1
- package/dist/core-api/controller/index.js +8 -3
- package/dist/core-api/controller/index.js.map +1 -1
- package/dist/core-api/controller/index.mjs +8 -3
- package/dist/core-api/controller/index.mjs.map +1 -1
- package/dist/core-api/controller/single-type.d.ts +1 -1
- package/dist/core-api/controller/single-type.d.ts.map +1 -1
- package/dist/core-api/controller/single-type.js +6 -11
- package/dist/core-api/controller/single-type.js.map +1 -1
- package/dist/core-api/controller/single-type.mjs +5 -11
- package/dist/core-api/controller/single-type.mjs.map +1 -1
- package/dist/core-api/controller/transform.d.ts +9 -17
- package/dist/core-api/controller/transform.d.ts.map +1 -1
- package/dist/core-api/controller/transform.js +9 -14
- package/dist/core-api/controller/transform.js.map +1 -1
- package/dist/core-api/controller/transform.mjs +9 -14
- package/dist/core-api/controller/transform.mjs.map +1 -1
- package/dist/core-api/service/collection-type.d.ts +28 -5
- package/dist/core-api/service/collection-type.d.ts.map +1 -1
- package/dist/core-api/service/collection-type.js +47 -49
- package/dist/core-api/service/collection-type.js.map +1 -1
- package/dist/core-api/service/collection-type.mjs +47 -50
- package/dist/core-api/service/collection-type.mjs.map +1 -1
- package/dist/core-api/service/core-service.d.ts +4 -0
- package/dist/core-api/service/core-service.d.ts.map +1 -0
- package/dist/core-api/service/core-service.js +12 -0
- package/dist/core-api/service/core-service.js.map +1 -0
- package/dist/core-api/service/core-service.mjs +12 -0
- package/dist/core-api/service/core-service.mjs.map +1 -0
- package/dist/core-api/service/index.js +2 -2
- package/dist/core-api/service/index.js.map +1 -1
- package/dist/core-api/service/index.mjs +4 -4
- package/dist/core-api/service/index.mjs.map +1 -1
- package/dist/core-api/service/pagination.d.ts +1 -5
- package/dist/core-api/service/pagination.d.ts.map +1 -1
- package/dist/core-api/service/pagination.js +0 -11
- package/dist/core-api/service/pagination.js.map +1 -1
- package/dist/core-api/service/pagination.mjs +0 -11
- package/dist/core-api/service/pagination.mjs.map +1 -1
- package/dist/core-api/service/single-type.d.ts +14 -8
- package/dist/core-api/service/single-type.d.ts.map +1 -1
- package/dist/core-api/service/single-type.js +35 -50
- package/dist/core-api/service/single-type.js.map +1 -1
- package/dist/core-api/service/single-type.mjs +34 -50
- package/dist/core-api/service/single-type.mjs.map +1 -1
- package/dist/{core/domain → domain}/content-type/index.d.ts +2 -1
- package/dist/domain/content-type/index.d.ts.map +1 -0
- package/dist/{core/domain → domain}/content-type/index.js +23 -34
- package/dist/domain/content-type/index.js.map +1 -0
- package/dist/{core/domain → domain}/content-type/index.mjs +24 -35
- package/dist/domain/content-type/index.mjs.map +1 -0
- package/dist/domain/content-type/validator.d.ts.map +1 -0
- package/dist/{core/domain → domain}/content-type/validator.js +1 -1
- package/dist/domain/content-type/validator.js.map +1 -0
- package/dist/{core/domain → domain}/content-type/validator.mjs +2 -2
- package/dist/domain/content-type/validator.mjs.map +1 -0
- package/dist/domain/module/index.d.ts.map +1 -0
- package/dist/{core/domain → domain}/module/index.js +30 -31
- package/dist/domain/module/index.js.map +1 -0
- package/dist/{core/domain → domain}/module/index.mjs +3 -4
- package/dist/domain/module/index.mjs.map +1 -0
- package/dist/domain/module/validation.d.ts.map +1 -0
- package/dist/domain/module/validation.js.map +1 -0
- package/dist/domain/module/validation.mjs.map +1 -0
- package/dist/ee/index.js +2 -2
- package/dist/ee/index.js.map +1 -1
- package/dist/ee/index.mjs +2 -2
- package/dist/ee/index.mjs.map +1 -1
- package/dist/ee/license.d.ts.map +1 -1
- package/dist/ee/license.js +2 -1
- package/dist/ee/license.js.map +1 -1
- package/dist/ee/license.mjs +2 -1
- package/dist/ee/license.mjs.map +1 -1
- package/dist/factories.d.ts +2 -1
- package/dist/factories.d.ts.map +1 -1
- package/dist/factories.js +16 -11
- package/dist/factories.js.map +1 -1
- package/dist/factories.mjs +17 -12
- package/dist/factories.mjs.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3 -1
- package/dist/index.mjs.map +1 -1
- package/dist/loaders/admin.d.ts.map +1 -0
- package/dist/{core/loaders → loaders}/admin.js +12 -1
- package/dist/loaders/admin.js.map +1 -0
- package/dist/{core/loaders → loaders}/admin.mjs +12 -1
- package/dist/loaders/admin.mjs.map +1 -0
- package/dist/loaders/apis.d.ts.map +1 -0
- package/dist/{core/loaders → loaders}/apis.js +20 -13
- package/dist/loaders/apis.js.map +1 -0
- package/dist/{core/loaders → loaders}/apis.mjs +19 -12
- package/dist/loaders/apis.mjs.map +1 -0
- package/dist/loaders/components.d.ts.map +1 -0
- package/dist/{core/loaders → loaders}/components.js +2 -2
- package/dist/loaders/components.js.map +1 -0
- package/dist/{core/loaders → loaders}/components.mjs +1 -1
- package/dist/loaders/components.mjs.map +1 -0
- package/dist/loaders/index.d.ts.map +1 -0
- package/dist/loaders/index.js.map +1 -0
- package/dist/loaders/index.mjs.map +1 -0
- package/dist/loaders/middlewares.d.ts.map +1 -0
- package/dist/{core/loaders → loaders}/middlewares.js +1 -1
- package/dist/loaders/middlewares.js.map +1 -0
- package/dist/{core/loaders → loaders}/middlewares.mjs +1 -1
- package/dist/loaders/middlewares.mjs.map +1 -0
- package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -0
- package/dist/{core/loaders → loaders}/plugins/get-enabled-plugins.js +4 -2
- package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -0
- package/dist/{core/loaders → loaders}/plugins/get-enabled-plugins.mjs +5 -3
- package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -0
- package/dist/loaders/plugins/get-user-plugins-config.d.ts.map +1 -0
- package/dist/{core/loaders → loaders}/plugins/get-user-plugins-config.js +3 -3
- package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -0
- package/dist/{core/loaders → loaders}/plugins/get-user-plugins-config.mjs +3 -3
- package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -0
- package/dist/loaders/plugins/index.d.ts.map +1 -0
- package/dist/{core/loaders → loaders}/plugins/index.js +18 -5
- package/dist/loaders/plugins/index.js.map +1 -0
- package/dist/{core/loaders → loaders}/plugins/index.mjs +16 -3
- package/dist/loaders/plugins/index.mjs.map +1 -0
- package/dist/loaders/policies.d.ts.map +1 -0
- package/dist/loaders/policies.js.map +1 -0
- package/dist/loaders/policies.mjs.map +1 -0
- package/dist/loaders/sanitizers.d.ts.map +1 -0
- package/dist/loaders/sanitizers.js.map +1 -0
- package/dist/loaders/sanitizers.mjs.map +1 -0
- package/dist/loaders/src-index.d.ts.map +1 -0
- package/dist/loaders/src-index.js.map +1 -0
- package/dist/loaders/src-index.mjs.map +1 -0
- package/dist/loaders/validators.d.ts.map +1 -0
- package/dist/loaders/validators.js.map +1 -0
- package/dist/loaders/validators.mjs.map +1 -0
- package/dist/middlewares/favicon.d.ts +1 -0
- package/dist/middlewares/favicon.d.ts.map +1 -1
- package/dist/middlewares/index.js +2 -2
- package/dist/middlewares/index.js.map +1 -1
- package/dist/middlewares/index.mjs +1 -1
- package/dist/middlewares/{public/index.d.ts → public.d.ts} +1 -1
- package/dist/middlewares/public.d.ts.map +1 -0
- package/dist/middlewares/public.js +34 -0
- package/dist/middlewares/public.js.map +1 -0
- package/dist/middlewares/public.mjs +32 -0
- package/dist/middlewares/public.mjs.map +1 -0
- package/dist/middlewares/security.d.ts.map +1 -1
- package/dist/middlewares/security.js +24 -3
- package/dist/middlewares/security.js.map +1 -1
- package/dist/middlewares/security.mjs +24 -3
- package/dist/middlewares/security.mjs.map +1 -1
- package/dist/migrations/draft-publish.d.ts +17 -0
- package/dist/migrations/draft-publish.d.ts.map +1 -0
- package/dist/migrations/draft-publish.js +59 -0
- package/dist/migrations/draft-publish.js.map +1 -0
- package/dist/migrations/draft-publish.mjs +59 -0
- package/dist/migrations/draft-publish.mjs.map +1 -0
- package/dist/registries/apis.d.ts.map +1 -0
- package/dist/registries/apis.js.map +1 -0
- package/dist/registries/apis.mjs.map +1 -0
- package/dist/registries/components.d.ts.map +1 -0
- package/dist/registries/components.js.map +1 -0
- package/dist/registries/components.mjs.map +1 -0
- package/dist/registries/config.d.ts +4 -0
- package/dist/registries/config.d.ts.map +1 -0
- package/dist/registries/config.js +31 -0
- package/dist/registries/config.js.map +1 -0
- package/dist/registries/config.mjs +32 -0
- package/dist/registries/config.mjs.map +1 -0
- package/dist/registries/content-types.d.ts.map +1 -0
- package/dist/{core/registries → registries}/content-types.js +6 -7
- package/dist/registries/content-types.js.map +1 -0
- package/dist/{core/registries → registries}/content-types.mjs +2 -3
- package/dist/registries/content-types.mjs.map +1 -0
- package/dist/registries/controllers.d.ts.map +1 -0
- package/dist/{core/registries → registries}/controllers.js +5 -5
- package/dist/registries/controllers.js.map +1 -0
- package/dist/{core/registries → registries}/controllers.mjs +1 -1
- package/dist/registries/controllers.mjs.map +1 -0
- package/dist/registries/custom-fields.d.ts.map +1 -0
- package/dist/registries/custom-fields.js.map +1 -0
- package/dist/registries/custom-fields.mjs.map +1 -0
- package/dist/registries/hooks.d.ts.map +1 -0
- package/dist/{core/registries → registries}/hooks.js +5 -5
- package/dist/registries/hooks.js.map +1 -0
- package/dist/{core/registries → registries}/hooks.mjs +1 -1
- package/dist/registries/hooks.mjs.map +1 -0
- package/dist/{core/registries → registries}/index.d.ts +1 -0
- package/dist/registries/index.d.ts.map +1 -0
- package/dist/registries/middlewares.d.ts.map +1 -0
- package/dist/{core/registries → registries}/middlewares.js +5 -5
- package/dist/registries/middlewares.js.map +1 -0
- package/dist/{core/registries → registries}/middlewares.mjs +1 -1
- package/dist/registries/middlewares.mjs.map +1 -0
- package/dist/registries/models.d.ts +6 -0
- package/dist/registries/models.d.ts.map +1 -0
- package/dist/registries/models.js +16 -0
- package/dist/registries/models.js.map +1 -0
- package/dist/registries/models.mjs +16 -0
- package/dist/registries/models.mjs.map +1 -0
- package/dist/registries/modules.d.ts.map +1 -0
- package/dist/registries/modules.js.map +1 -0
- package/dist/registries/modules.mjs.map +1 -0
- package/dist/{core/utils.d.ts → registries/namespace.d.ts} +1 -1
- package/dist/registries/namespace.d.ts.map +1 -0
- package/dist/{core/utils.js → registries/namespace.js} +1 -1
- package/dist/registries/namespace.js.map +1 -0
- package/dist/{core/utils.mjs → registries/namespace.mjs} +1 -1
- package/dist/registries/namespace.mjs.map +1 -0
- package/dist/registries/plugins.d.ts.map +1 -0
- package/dist/registries/plugins.js.map +1 -0
- package/dist/registries/plugins.mjs.map +1 -0
- package/dist/registries/policies.d.ts.map +1 -0
- package/dist/{core/registries → registries}/policies.js +5 -5
- package/dist/registries/policies.js.map +1 -0
- package/dist/{core/registries → registries}/policies.mjs +1 -1
- package/dist/registries/policies.mjs.map +1 -0
- package/dist/registries/sanitizers.d.ts.map +1 -0
- package/dist/registries/sanitizers.js.map +1 -0
- package/dist/registries/sanitizers.mjs.map +1 -0
- package/dist/registries/services.d.ts.map +1 -0
- package/dist/{core/registries → registries}/services.js +5 -5
- package/dist/registries/services.js.map +1 -0
- package/dist/{core/registries → registries}/services.mjs +1 -1
- package/dist/registries/services.mjs.map +1 -0
- package/dist/registries/validators.d.ts.map +1 -0
- package/dist/registries/validators.js.map +1 -0
- package/dist/registries/validators.mjs.map +1 -0
- package/dist/services/core-store.d.ts +2 -22
- package/dist/services/core-store.d.ts.map +1 -1
- package/dist/services/core-store.js +5 -1
- package/dist/services/core-store.js.map +1 -1
- package/dist/services/core-store.mjs +5 -1
- package/dist/services/core-store.mjs.map +1 -1
- package/dist/services/document-service/common.d.ts +4 -0
- package/dist/services/document-service/common.d.ts.map +1 -0
- package/dist/services/document-service/common.js +7 -0
- package/dist/services/document-service/common.js.map +1 -0
- package/dist/services/document-service/common.mjs +7 -0
- package/dist/services/document-service/common.mjs.map +1 -0
- package/dist/services/document-service/draft-and-publish.d.ts +10 -0
- package/dist/services/document-service/draft-and-publish.d.ts.map +1 -0
- package/dist/services/document-service/draft-and-publish.js +69 -0
- package/dist/services/document-service/draft-and-publish.js.map +1 -0
- package/dist/services/document-service/draft-and-publish.mjs +69 -0
- package/dist/services/document-service/draft-and-publish.mjs.map +1 -0
- package/dist/services/document-service/index.d.ts +18 -7
- package/dist/services/document-service/index.d.ts.map +1 -1
- package/dist/services/document-service/index.js +20 -190
- package/dist/services/document-service/index.js.map +1 -1
- package/dist/services/document-service/index.mjs +19 -190
- package/dist/services/document-service/index.mjs.map +1 -1
- package/dist/services/document-service/internationalization.d.ts +8 -0
- package/dist/services/document-service/internationalization.d.ts.map +1 -0
- package/dist/services/document-service/internationalization.js +54 -0
- package/dist/services/document-service/internationalization.js.map +1 -0
- package/dist/services/document-service/internationalization.mjs +54 -0
- package/dist/services/document-service/internationalization.mjs.map +1 -0
- package/dist/services/document-service/middlewares/errors.d.ts +6 -0
- package/dist/services/document-service/middlewares/errors.d.ts.map +1 -0
- package/dist/services/document-service/middlewares/errors.js +25 -0
- package/dist/services/document-service/middlewares/errors.js.map +1 -0
- package/dist/services/document-service/middlewares/errors.mjs +25 -0
- package/dist/services/document-service/middlewares/errors.mjs.map +1 -0
- package/dist/services/document-service/middlewares/index.d.ts +2 -10
- package/dist/services/document-service/middlewares/index.d.ts.map +1 -1
- package/dist/services/document-service/middlewares/middleware-manager.d.ts +7 -0
- package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -0
- package/dist/services/document-service/middlewares/middleware-manager.js +46 -0
- package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -0
- package/dist/services/document-service/middlewares/middleware-manager.mjs +46 -0
- package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -0
- package/dist/services/document-service/repository.d.ts +3 -0
- package/dist/services/document-service/repository.d.ts.map +1 -0
- package/dist/services/document-service/repository.js +295 -0
- package/dist/services/document-service/repository.js.map +1 -0
- package/dist/services/document-service/repository.mjs +295 -0
- package/dist/services/document-service/repository.mjs.map +1 -0
- package/dist/services/document-service/transform/data.d.ts +5 -0
- package/dist/services/document-service/transform/data.d.ts.map +1 -0
- package/dist/services/document-service/transform/data.js +13 -0
- package/dist/services/document-service/transform/data.js.map +1 -0
- package/dist/services/document-service/transform/data.mjs +13 -0
- package/dist/services/document-service/transform/data.mjs.map +1 -0
- package/dist/services/document-service/transform/fields.d.ts +5 -0
- package/dist/services/document-service/transform/fields.d.ts.map +1 -0
- package/dist/services/document-service/transform/fields.js +24 -0
- package/dist/services/document-service/transform/fields.js.map +1 -0
- package/dist/services/document-service/transform/fields.mjs +24 -0
- package/dist/services/document-service/transform/fields.mjs.map +1 -0
- package/dist/services/document-service/transform/id-map.d.ts +23 -0
- package/dist/services/document-service/transform/id-map.d.ts.map +1 -0
- package/dist/services/document-service/transform/id-map.js +78 -0
- package/dist/services/document-service/transform/id-map.js.map +1 -0
- package/dist/services/document-service/transform/id-map.mjs +78 -0
- package/dist/services/document-service/transform/id-map.mjs.map +1 -0
- package/dist/services/document-service/transform/id-transform.d.ts +5 -0
- package/dist/services/document-service/transform/id-transform.d.ts.map +1 -0
- package/dist/services/document-service/transform/id-transform.js +33 -0
- package/dist/services/document-service/transform/id-transform.js.map +1 -0
- package/dist/services/document-service/transform/id-transform.mjs +33 -0
- package/dist/services/document-service/transform/id-transform.mjs.map +1 -0
- package/dist/services/document-service/transform/populate.d.ts +6 -0
- package/dist/services/document-service/transform/populate.d.ts.map +1 -0
- package/dist/services/document-service/transform/populate.js +21 -0
- package/dist/services/document-service/transform/populate.js.map +1 -0
- package/dist/services/document-service/transform/populate.mjs +21 -0
- package/dist/services/document-service/transform/populate.mjs.map +1 -0
- package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +13 -0
- package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -0
- package/dist/services/document-service/transform/relations/extract/data-ids.js +90 -0
- package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -0
- package/dist/services/document-service/transform/relations/extract/data-ids.mjs +90 -0
- package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -0
- package/dist/services/document-service/transform/relations/transform/data-ids.d.ts +10 -0
- package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -0
- package/dist/services/document-service/transform/relations/transform/data-ids.js +141 -0
- package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -0
- package/dist/services/document-service/transform/relations/transform/data-ids.mjs +141 -0
- package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -0
- package/dist/services/document-service/transform/relations/utils/data.d.ts +4 -0
- package/dist/services/document-service/transform/relations/utils/data.d.ts.map +1 -0
- package/dist/services/document-service/transform/relations/utils/data.js +12 -0
- package/dist/services/document-service/transform/relations/utils/data.js.map +1 -0
- package/dist/services/document-service/transform/relations/utils/data.mjs +12 -0
- package/dist/services/document-service/transform/relations/utils/data.mjs.map +1 -0
- package/dist/services/document-service/transform/relations/utils/dp.d.ts +10 -0
- package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -0
- package/dist/services/document-service/transform/relations/utils/dp.js +30 -0
- package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -0
- package/dist/services/document-service/transform/relations/utils/dp.mjs +30 -0
- package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -0
- package/dist/services/document-service/transform/relations/utils/i18n.d.ts +10 -0
- package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -0
- package/dist/services/document-service/transform/relations/utils/i18n.js +31 -0
- package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -0
- package/dist/services/document-service/transform/relations/utils/i18n.mjs +31 -0
- package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -0
- package/dist/services/document-service/transform/relations/utils/types.d.ts +15 -0
- package/dist/services/document-service/transform/relations/utils/types.d.ts.map +1 -0
- package/dist/services/document-service/transform/types.d.ts +13 -0
- package/dist/services/document-service/transform/types.d.ts.map +1 -0
- package/dist/services/document-service/utils/populate.d.ts +10 -0
- package/dist/services/document-service/utils/populate.d.ts.map +1 -0
- package/dist/services/document-service/utils/populate.js +41 -0
- package/dist/services/document-service/utils/populate.js.map +1 -0
- package/dist/services/document-service/utils/populate.mjs +41 -0
- package/dist/services/document-service/utils/populate.mjs.map +1 -0
- package/dist/services/entity-service/components.d.ts +1 -4
- package/dist/services/entity-service/components.d.ts.map +1 -1
- package/dist/services/entity-service/components.js +13 -99
- package/dist/services/entity-service/components.js.map +1 -1
- package/dist/services/entity-service/components.mjs +14 -100
- package/dist/services/entity-service/components.mjs.map +1 -1
- package/dist/services/entity-service/index.d.ts +1 -3
- package/dist/services/entity-service/index.d.ts.map +1 -1
- package/dist/services/entity-service/index.js +34 -199
- package/dist/services/entity-service/index.js.map +1 -1
- package/dist/services/entity-service/index.mjs +27 -192
- package/dist/services/entity-service/index.mjs.map +1 -1
- package/dist/services/entity-service/params.d.ts +4 -4
- package/dist/services/entity-service/params.d.ts.map +1 -1
- package/dist/services/entity-service/params.js +1 -1
- package/dist/services/entity-service/params.js.map +1 -1
- package/dist/services/entity-service/params.mjs +1 -1
- package/dist/services/entity-service/params.mjs.map +1 -1
- package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
- package/dist/services/entity-validator/blocks-validator.js +22 -2
- package/dist/services/entity-validator/blocks-validator.js.map +1 -1
- package/dist/services/entity-validator/blocks-validator.mjs +22 -2
- package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
- package/dist/services/entity-validator/index.d.ts.map +1 -1
- package/dist/services/entity-validator/index.js +5 -2
- package/dist/services/entity-validator/index.js.map +1 -1
- package/dist/services/entity-validator/index.mjs +5 -2
- package/dist/services/entity-validator/index.mjs.map +1 -1
- package/dist/services/entity-validator/validators.d.ts +14 -13
- package/dist/services/entity-validator/validators.d.ts.map +1 -1
- package/dist/services/entity-validator/validators.js +20 -16
- package/dist/services/entity-validator/validators.js.map +1 -1
- package/dist/services/entity-validator/validators.mjs +20 -16
- package/dist/services/entity-validator/validators.mjs.map +1 -1
- package/dist/services/features.d.ts +10 -0
- package/dist/services/features.d.ts.map +1 -0
- package/dist/services/features.js +17 -0
- package/dist/services/features.js.map +1 -0
- package/dist/services/features.mjs +17 -0
- package/dist/services/features.mjs.map +1 -0
- package/dist/services/server/compose-endpoint.d.ts.map +1 -1
- package/dist/services/server/compose-endpoint.js +3 -0
- package/dist/services/server/compose-endpoint.js.map +1 -1
- package/dist/services/server/compose-endpoint.mjs +3 -0
- package/dist/services/server/compose-endpoint.mjs.map +1 -1
- package/dist/services/server/middleware.d.ts +1 -5
- package/dist/services/server/middleware.d.ts.map +1 -1
- package/dist/services/server/middleware.js.map +1 -1
- package/dist/services/server/middleware.mjs.map +1 -1
- package/dist/services/server/register-middlewares.js +1 -1
- package/dist/services/server/register-middlewares.js.map +1 -1
- package/dist/services/server/register-middlewares.mjs +1 -1
- package/dist/services/server/register-middlewares.mjs.map +1 -1
- package/dist/services/webhook-runner.d.ts +10 -1
- package/dist/services/webhook-runner.d.ts.map +1 -1
- package/dist/services/webhook-store.d.ts +2 -22
- package/dist/services/webhook-store.d.ts.map +1 -1
- package/dist/services/webhook-store.js +7 -3
- package/dist/services/webhook-store.js.map +1 -1
- package/dist/services/webhook-store.mjs +7 -3
- package/dist/services/webhook-store.mjs.map +1 -1
- package/dist/utils/convert-custom-field-type.d.ts +1 -2
- package/dist/utils/convert-custom-field-type.d.ts.map +1 -1
- package/dist/utils/convert-custom-field-type.js +2 -1
- package/dist/utils/convert-custom-field-type.js.map +1 -1
- package/dist/utils/convert-custom-field-type.mjs +1 -1
- package/dist/utils/convert-custom-field-type.mjs.map +1 -1
- package/dist/utils/ee.d.ts +1 -2
- package/dist/utils/ee.d.ts.map +1 -1
- package/dist/utils/fetch.d.ts +2 -1
- package/dist/utils/fetch.d.ts.map +1 -1
- package/dist/utils/fetch.js +2 -2
- package/dist/utils/fetch.js.map +1 -1
- package/dist/utils/fetch.mjs +2 -2
- package/dist/utils/fetch.mjs.map +1 -1
- package/dist/utils/filepath-to-prop-path.d.ts +5 -0
- package/dist/utils/filepath-to-prop-path.d.ts.map +1 -0
- package/dist/{load → utils}/filepath-to-prop-path.js +3 -2
- package/dist/utils/filepath-to-prop-path.js.map +1 -0
- package/dist/{load → utils}/filepath-to-prop-path.mjs +2 -2
- package/dist/utils/filepath-to-prop-path.mjs.map +1 -0
- package/dist/utils/get-dirs.d.ts +1 -2
- package/dist/utils/get-dirs.d.ts.map +1 -1
- package/dist/utils/get-dirs.js +2 -1
- package/dist/utils/get-dirs.js.map +1 -1
- package/dist/utils/get-dirs.mjs +1 -1
- package/dist/utils/get-dirs.mjs.map +1 -1
- package/dist/utils/index.d.ts +11 -4
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/is-initialized.d.ts +1 -1
- package/dist/utils/is-initialized.d.ts.map +1 -1
- package/dist/utils/is-initialized.js +5 -4
- package/dist/utils/is-initialized.js.map +1 -1
- package/dist/utils/is-initialized.mjs +4 -4
- package/dist/utils/is-initialized.mjs.map +1 -1
- package/dist/utils/load-config-file.d.ts +2 -0
- package/dist/utils/load-config-file.d.ts.map +1 -0
- package/dist/{core/app-configuration → utils}/load-config-file.js +3 -3
- package/dist/utils/load-config-file.js.map +1 -0
- package/dist/{core/app-configuration → utils}/load-config-file.mjs +4 -4
- package/dist/utils/load-config-file.mjs.map +1 -0
- package/dist/{load → utils}/load-files.d.ts +2 -2
- package/dist/utils/load-files.d.ts.map +1 -0
- package/dist/{load → utils}/load-files.js +7 -6
- package/dist/utils/load-files.js.map +1 -0
- package/dist/{load → utils}/load-files.mjs +7 -7
- package/dist/utils/load-files.mjs.map +1 -0
- package/dist/utils/open-browser.d.ts +1 -2
- package/dist/utils/open-browser.d.ts.map +1 -1
- package/dist/utils/open-browser.js +5 -5
- package/dist/utils/open-browser.js.map +1 -1
- package/dist/utils/open-browser.mjs +4 -5
- package/dist/utils/open-browser.mjs.map +1 -1
- package/dist/utils/startup-logger.d.ts +1 -2
- package/dist/utils/startup-logger.d.ts.map +1 -1
- package/dist/utils/startup-logger.js +19 -13
- package/dist/utils/startup-logger.js.map +1 -1
- package/dist/utils/startup-logger.mjs +18 -13
- package/dist/utils/startup-logger.mjs.map +1 -1
- package/dist/utils/transform-content-types-to-models.d.ts +176 -4
- package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
- package/dist/utils/transform-content-types-to-models.js +202 -15
- package/dist/utils/transform-content-types-to-models.js.map +1 -1
- package/dist/utils/transform-content-types-to-models.mjs +199 -15
- package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
- package/dist/utils/update-notifier/index.d.ts +1 -2
- package/dist/utils/update-notifier/index.d.ts.map +1 -1
- package/dist/utils/update-notifier/index.js +8 -2
- package/dist/utils/update-notifier/index.js.map +1 -1
- package/dist/utils/update-notifier/index.mjs +7 -2
- package/dist/utils/update-notifier/index.mjs.map +1 -1
- package/package.json +19 -26
- package/bin/strapi.js +0 -2
- package/dist/admin.d.ts +0 -5
- package/dist/admin.d.ts.map +0 -1
- package/dist/cli.d.ts +0 -2
- package/dist/cli.d.ts.map +0 -1
- package/dist/commands/actions/admin/create-user/action.d.ts +0 -12
- package/dist/commands/actions/admin/create-user/action.d.ts.map +0 -1
- package/dist/commands/actions/admin/create-user/command.d.ts +0 -7
- package/dist/commands/actions/admin/create-user/command.d.ts.map +0 -1
- package/dist/commands/actions/admin/reset-user-password/action.d.ts +0 -10
- package/dist/commands/actions/admin/reset-user-password/action.d.ts.map +0 -1
- package/dist/commands/actions/admin/reset-user-password/command.d.ts +0 -7
- package/dist/commands/actions/admin/reset-user-password/command.d.ts.map +0 -1
- package/dist/commands/actions/components/list/action.d.ts +0 -3
- package/dist/commands/actions/components/list/action.d.ts.map +0 -1
- package/dist/commands/actions/components/list/command.d.ts +0 -7
- package/dist/commands/actions/components/list/command.d.ts.map +0 -1
- package/dist/commands/actions/configuration/dump/action.d.ts +0 -11
- package/dist/commands/actions/configuration/dump/action.d.ts.map +0 -1
- package/dist/commands/actions/configuration/dump/command.d.ts +0 -7
- package/dist/commands/actions/configuration/dump/command.d.ts.map +0 -1
- package/dist/commands/actions/configuration/restore/action.d.ts +0 -11
- package/dist/commands/actions/configuration/restore/action.d.ts.map +0 -1
- package/dist/commands/actions/configuration/restore/command.d.ts +0 -7
- package/dist/commands/actions/configuration/restore/command.d.ts.map +0 -1
- package/dist/commands/actions/console/action.d.ts +0 -6
- package/dist/commands/actions/console/action.d.ts.map +0 -1
- package/dist/commands/actions/console/command.d.ts +0 -7
- package/dist/commands/actions/console/command.d.ts.map +0 -1
- package/dist/commands/actions/content-types/list/action.d.ts +0 -3
- package/dist/commands/actions/content-types/list/action.d.ts.map +0 -1
- package/dist/commands/actions/content-types/list/command.d.ts +0 -7
- package/dist/commands/actions/content-types/list/command.d.ts.map +0 -1
- package/dist/commands/actions/controllers/list/action.d.ts +0 -3
- package/dist/commands/actions/controllers/list/action.d.ts.map +0 -1
- package/dist/commands/actions/controllers/list/command.d.ts +0 -7
- package/dist/commands/actions/controllers/list/command.d.ts.map +0 -1
- package/dist/commands/actions/generate/command.d.ts +0 -7
- package/dist/commands/actions/generate/command.d.ts.map +0 -1
- package/dist/commands/actions/hooks/list/action.d.ts +0 -3
- package/dist/commands/actions/hooks/list/action.d.ts.map +0 -1
- package/dist/commands/actions/hooks/list/command.d.ts +0 -7
- package/dist/commands/actions/hooks/list/command.d.ts.map +0 -1
- package/dist/commands/actions/install/action.d.ts +0 -3
- package/dist/commands/actions/install/action.d.ts.map +0 -1
- package/dist/commands/actions/install/command.d.ts +0 -7
- package/dist/commands/actions/install/command.d.ts.map +0 -1
- package/dist/commands/actions/middlewares/list/action.d.ts +0 -3
- package/dist/commands/actions/middlewares/list/action.d.ts.map +0 -1
- package/dist/commands/actions/middlewares/list/command.d.ts +0 -7
- package/dist/commands/actions/middlewares/list/command.d.ts.map +0 -1
- package/dist/commands/actions/new/action.d.ts +0 -8
- package/dist/commands/actions/new/action.d.ts.map +0 -1
- package/dist/commands/actions/new/command.d.ts +0 -7
- package/dist/commands/actions/new/command.d.ts.map +0 -1
- package/dist/commands/actions/plugin/build-command/action.d.ts +0 -7
- package/dist/commands/actions/plugin/build-command/action.d.ts.map +0 -1
- package/dist/commands/actions/plugin/build-command/command.d.ts +0 -7
- package/dist/commands/actions/plugin/build-command/command.d.ts.map +0 -1
- package/dist/commands/actions/plugin/watch/action.d.ts +0 -7
- package/dist/commands/actions/plugin/watch/action.d.ts.map +0 -1
- package/dist/commands/actions/plugin/watch/command.d.ts +0 -7
- package/dist/commands/actions/plugin/watch/command.d.ts.map +0 -1
- package/dist/commands/actions/policies/list/action.d.ts +0 -3
- package/dist/commands/actions/policies/list/action.d.ts.map +0 -1
- package/dist/commands/actions/policies/list/command.d.ts +0 -7
- package/dist/commands/actions/policies/list/command.d.ts.map +0 -1
- package/dist/commands/actions/report/action.d.ts +0 -8
- package/dist/commands/actions/report/action.d.ts.map +0 -1
- package/dist/commands/actions/report/command.d.ts +0 -7
- package/dist/commands/actions/report/command.d.ts.map +0 -1
- package/dist/commands/actions/routes/list/action.d.ts +0 -3
- package/dist/commands/actions/routes/list/action.d.ts.map +0 -1
- package/dist/commands/actions/routes/list/command.d.ts +0 -7
- package/dist/commands/actions/routes/list/command.d.ts.map +0 -1
- package/dist/commands/actions/services/list/action.d.ts +0 -3
- package/dist/commands/actions/services/list/action.d.ts.map +0 -1
- package/dist/commands/actions/services/list/command.d.ts +0 -7
- package/dist/commands/actions/services/list/command.d.ts.map +0 -1
- package/dist/commands/actions/start/action.d.ts +0 -6
- package/dist/commands/actions/start/action.d.ts.map +0 -1
- package/dist/commands/actions/start/command.d.ts +0 -7
- package/dist/commands/actions/start/command.d.ts.map +0 -1
- package/dist/commands/actions/telemetry/disable/action.d.ts +0 -2
- package/dist/commands/actions/telemetry/disable/action.d.ts.map +0 -1
- package/dist/commands/actions/telemetry/disable/command.d.ts +0 -7
- package/dist/commands/actions/telemetry/disable/command.d.ts.map +0 -1
- package/dist/commands/actions/telemetry/enable/action.d.ts +0 -3
- package/dist/commands/actions/telemetry/enable/action.d.ts.map +0 -1
- package/dist/commands/actions/telemetry/enable/command.d.ts +0 -7
- package/dist/commands/actions/telemetry/enable/command.d.ts.map +0 -1
- package/dist/commands/actions/templates/generate/action.d.ts +0 -2
- package/dist/commands/actions/templates/generate/action.d.ts.map +0 -1
- package/dist/commands/actions/templates/generate/command.d.ts +0 -7
- package/dist/commands/actions/templates/generate/command.d.ts.map +0 -1
- package/dist/commands/actions/ts/generate-types/action.d.ts +0 -9
- package/dist/commands/actions/ts/generate-types/action.d.ts.map +0 -1
- package/dist/commands/actions/ts/generate-types/command.d.ts +0 -7
- package/dist/commands/actions/ts/generate-types/command.d.ts.map +0 -1
- package/dist/commands/actions/uninstall/action.d.ts +0 -6
- package/dist/commands/actions/uninstall/action.d.ts.map +0 -1
- package/dist/commands/actions/uninstall/command.d.ts +0 -7
- package/dist/commands/actions/uninstall/command.d.ts.map +0 -1
- package/dist/commands/actions/version/command.d.ts +0 -7
- package/dist/commands/actions/version/command.d.ts.map +0 -1
- package/dist/commands/actions/watch-admin/action.d.ts +0 -7
- package/dist/commands/actions/watch-admin/action.d.ts.map +0 -1
- package/dist/commands/actions/watch-admin/command.d.ts +0 -7
- package/dist/commands/actions/watch-admin/command.d.ts.map +0 -1
- package/dist/commands/index.d.ts +0 -37
- package/dist/commands/index.d.ts.map +0 -1
- package/dist/commands/types.d.ts +0 -14
- package/dist/commands/types.d.ts.map +0 -1
- package/dist/commands/utils/commander.d.ts +0 -36
- package/dist/commands/utils/commander.d.ts.map +0 -1
- package/dist/commands/utils/helpers.d.ts +0 -49
- package/dist/commands/utils/helpers.d.ts.map +0 -1
- package/dist/commands/utils/logger.d.ts +0 -19
- package/dist/commands/utils/logger.d.ts.map +0 -1
- package/dist/commands/utils/pkg.d.ts +0 -119
- package/dist/commands/utils/pkg.d.ts.map +0 -1
- package/dist/commands/utils/tsconfig.d.ts +0 -19
- package/dist/commands/utils/tsconfig.d.ts.map +0 -1
- package/dist/core/app-configuration/config-loader.d.ts.map +0 -1
- package/dist/core/app-configuration/config-loader.js +0 -19
- package/dist/core/app-configuration/config-loader.js.map +0 -1
- package/dist/core/app-configuration/config-loader.mjs +0 -17
- package/dist/core/app-configuration/config-loader.mjs.map +0 -1
- package/dist/core/app-configuration/index.d.ts.map +0 -1
- package/dist/core/app-configuration/index.js.map +0 -1
- package/dist/core/app-configuration/index.mjs.map +0 -1
- package/dist/core/app-configuration/load-config-file.d.ts +0 -2
- package/dist/core/app-configuration/load-config-file.d.ts.map +0 -1
- package/dist/core/app-configuration/load-config-file.js.map +0 -1
- package/dist/core/app-configuration/load-config-file.mjs.map +0 -1
- package/dist/core/bootstrap.d.ts +0 -5
- package/dist/core/bootstrap.d.ts.map +0 -1
- package/dist/core/bootstrap.js +0 -28
- package/dist/core/bootstrap.js.map +0 -1
- package/dist/core/bootstrap.mjs +0 -27
- package/dist/core/bootstrap.mjs.map +0 -1
- package/dist/core/domain/content-type/index.d.ts.map +0 -1
- package/dist/core/domain/content-type/index.js.map +0 -1
- package/dist/core/domain/content-type/index.mjs.map +0 -1
- package/dist/core/domain/content-type/validator.d.ts.map +0 -1
- package/dist/core/domain/content-type/validator.js.map +0 -1
- package/dist/core/domain/content-type/validator.mjs.map +0 -1
- package/dist/core/domain/module/index.d.ts.map +0 -1
- package/dist/core/domain/module/index.js.map +0 -1
- package/dist/core/domain/module/index.mjs.map +0 -1
- package/dist/core/domain/module/validation.d.ts.map +0 -1
- package/dist/core/domain/module/validation.js.map +0 -1
- package/dist/core/domain/module/validation.mjs.map +0 -1
- package/dist/core/loaders/admin.d.ts.map +0 -1
- package/dist/core/loaders/admin.js.map +0 -1
- package/dist/core/loaders/admin.mjs.map +0 -1
- package/dist/core/loaders/apis.d.ts.map +0 -1
- package/dist/core/loaders/apis.js.map +0 -1
- package/dist/core/loaders/apis.mjs.map +0 -1
- package/dist/core/loaders/components.d.ts.map +0 -1
- package/dist/core/loaders/components.js.map +0 -1
- package/dist/core/loaders/components.mjs.map +0 -1
- package/dist/core/loaders/index.d.ts.map +0 -1
- package/dist/core/loaders/index.js.map +0 -1
- package/dist/core/loaders/index.mjs.map +0 -1
- package/dist/core/loaders/middlewares.d.ts.map +0 -1
- package/dist/core/loaders/middlewares.js.map +0 -1
- package/dist/core/loaders/middlewares.mjs.map +0 -1
- package/dist/core/loaders/plugins/get-enabled-plugins.d.ts.map +0 -1
- package/dist/core/loaders/plugins/get-enabled-plugins.js.map +0 -1
- package/dist/core/loaders/plugins/get-enabled-plugins.mjs.map +0 -1
- package/dist/core/loaders/plugins/get-user-plugins-config.d.ts.map +0 -1
- package/dist/core/loaders/plugins/get-user-plugins-config.js.map +0 -1
- package/dist/core/loaders/plugins/get-user-plugins-config.mjs.map +0 -1
- package/dist/core/loaders/plugins/index.d.ts.map +0 -1
- package/dist/core/loaders/plugins/index.js.map +0 -1
- package/dist/core/loaders/plugins/index.mjs.map +0 -1
- package/dist/core/loaders/policies.d.ts.map +0 -1
- package/dist/core/loaders/policies.js.map +0 -1
- package/dist/core/loaders/policies.mjs.map +0 -1
- package/dist/core/loaders/sanitizers.d.ts.map +0 -1
- package/dist/core/loaders/sanitizers.js.map +0 -1
- package/dist/core/loaders/sanitizers.mjs.map +0 -1
- package/dist/core/loaders/src-index.d.ts.map +0 -1
- package/dist/core/loaders/src-index.js.map +0 -1
- package/dist/core/loaders/src-index.mjs.map +0 -1
- package/dist/core/loaders/validators.d.ts.map +0 -1
- package/dist/core/loaders/validators.js.map +0 -1
- package/dist/core/loaders/validators.mjs.map +0 -1
- package/dist/core/registries/apis.d.ts.map +0 -1
- package/dist/core/registries/apis.js.map +0 -1
- package/dist/core/registries/apis.mjs.map +0 -1
- package/dist/core/registries/components.d.ts.map +0 -1
- package/dist/core/registries/components.js.map +0 -1
- package/dist/core/registries/components.mjs.map +0 -1
- package/dist/core/registries/config.d.ts +0 -4
- package/dist/core/registries/config.d.ts.map +0 -1
- package/dist/core/registries/config.js +0 -23
- package/dist/core/registries/config.js.map +0 -1
- package/dist/core/registries/config.mjs +0 -22
- package/dist/core/registries/config.mjs.map +0 -1
- package/dist/core/registries/content-types.d.ts.map +0 -1
- package/dist/core/registries/content-types.js.map +0 -1
- package/dist/core/registries/content-types.mjs.map +0 -1
- package/dist/core/registries/controllers.d.ts.map +0 -1
- package/dist/core/registries/controllers.js.map +0 -1
- package/dist/core/registries/controllers.mjs.map +0 -1
- package/dist/core/registries/custom-fields.d.ts.map +0 -1
- package/dist/core/registries/custom-fields.js.map +0 -1
- package/dist/core/registries/custom-fields.mjs.map +0 -1
- package/dist/core/registries/hooks.d.ts.map +0 -1
- package/dist/core/registries/hooks.js.map +0 -1
- package/dist/core/registries/hooks.mjs.map +0 -1
- package/dist/core/registries/index.d.ts.map +0 -1
- package/dist/core/registries/middlewares.d.ts.map +0 -1
- package/dist/core/registries/middlewares.js.map +0 -1
- package/dist/core/registries/middlewares.mjs.map +0 -1
- package/dist/core/registries/modules.d.ts.map +0 -1
- package/dist/core/registries/modules.js.map +0 -1
- package/dist/core/registries/modules.mjs.map +0 -1
- package/dist/core/registries/plugins.d.ts.map +0 -1
- package/dist/core/registries/plugins.js.map +0 -1
- package/dist/core/registries/plugins.mjs.map +0 -1
- package/dist/core/registries/policies.d.ts.map +0 -1
- package/dist/core/registries/policies.js.map +0 -1
- package/dist/core/registries/policies.mjs.map +0 -1
- package/dist/core/registries/sanitizers.d.ts.map +0 -1
- package/dist/core/registries/sanitizers.js.map +0 -1
- package/dist/core/registries/sanitizers.mjs.map +0 -1
- package/dist/core/registries/services.d.ts.map +0 -1
- package/dist/core/registries/services.js.map +0 -1
- package/dist/core/registries/services.mjs.map +0 -1
- package/dist/core/registries/validators.d.ts.map +0 -1
- package/dist/core/registries/validators.js.map +0 -1
- package/dist/core/registries/validators.mjs.map +0 -1
- package/dist/core/utils.d.ts.map +0 -1
- package/dist/core/utils.js.map +0 -1
- package/dist/core/utils.mjs.map +0 -1
- package/dist/core-api/service/get-fetch-params.d.ts +0 -7
- package/dist/core-api/service/get-fetch-params.d.ts.map +0 -1
- package/dist/core-api/service/get-fetch-params.js +0 -14
- package/dist/core-api/service/get-fetch-params.js.map +0 -1
- package/dist/core-api/service/get-fetch-params.mjs +0 -14
- package/dist/core-api/service/get-fetch-params.mjs.map +0 -1
- package/dist/load/filepath-to-prop-path.d.ts +0 -6
- package/dist/load/filepath-to-prop-path.d.ts.map +0 -1
- package/dist/load/filepath-to-prop-path.js.map +0 -1
- package/dist/load/filepath-to-prop-path.mjs.map +0 -1
- package/dist/load/glob.d.ts +0 -7
- package/dist/load/glob.d.ts.map +0 -1
- package/dist/load/glob.js +0 -15
- package/dist/load/glob.js.map +0 -1
- package/dist/load/glob.mjs +0 -14
- package/dist/load/glob.mjs.map +0 -1
- package/dist/load/index.d.ts +0 -3
- package/dist/load/index.d.ts.map +0 -1
- package/dist/load/load-files.d.ts.map +0 -1
- package/dist/load/load-files.js.map +0 -1
- package/dist/load/load-files.mjs.map +0 -1
- package/dist/load/package-path.d.ts +0 -6
- package/dist/load/package-path.d.ts.map +0 -1
- package/dist/middlewares/public/assets/images/group_people_1.png +0 -0
- package/dist/middlewares/public/assets/images/group_people_2.png +0 -0
- package/dist/middlewares/public/assets/images/group_people_3.png +0 -0
- package/dist/middlewares/public/assets/images/logo_login.png +0 -0
- package/dist/middlewares/public/index.d.ts.map +0 -1
- package/dist/middlewares/public/index.html +0 -66
- package/dist/middlewares/public/index.js +0 -91
- package/dist/middlewares/public/index.js.map +0 -1
- package/dist/middlewares/public/index.mjs +0 -85
- package/dist/middlewares/public/index.mjs.map +0 -1
- package/dist/middlewares/public/serve-static.d.ts +0 -4
- package/dist/middlewares/public/serve-static.d.ts.map +0 -1
- package/dist/middlewares/public/serve-static.js +0 -24
- package/dist/middlewares/public/serve-static.js.map +0 -1
- package/dist/middlewares/public/serve-static.mjs +0 -21
- package/dist/middlewares/public/serve-static.mjs.map +0 -1
- package/dist/services/document-service/document-repository.d.ts +0 -21
- package/dist/services/document-service/document-repository.d.ts.map +0 -1
- package/dist/services/document-service/document-repository.js +0 -132
- package/dist/services/document-service/document-repository.js.map +0 -1
- package/dist/services/document-service/document-repository.mjs +0 -132
- package/dist/services/document-service/document-repository.mjs.map +0 -1
- package/dist/services/document-service/middlewares/defaults/draft-and-publish.d.ts +0 -26
- package/dist/services/document-service/middlewares/defaults/draft-and-publish.d.ts.map +0 -1
- package/dist/services/document-service/middlewares/defaults/draft-and-publish.js +0 -58
- package/dist/services/document-service/middlewares/defaults/draft-and-publish.js.map +0 -1
- package/dist/services/document-service/middlewares/defaults/draft-and-publish.mjs +0 -58
- package/dist/services/document-service/middlewares/defaults/draft-and-publish.mjs.map +0 -1
- package/dist/services/document-service/middlewares/defaults/index.d.ts +0 -3
- package/dist/services/document-service/middlewares/defaults/index.d.ts.map +0 -1
- package/dist/services/document-service/middlewares/defaults/index.js +0 -82
- package/dist/services/document-service/middlewares/defaults/index.js.map +0 -1
- package/dist/services/document-service/middlewares/defaults/index.mjs +0 -82
- package/dist/services/document-service/middlewares/defaults/index.mjs.map +0 -1
- package/dist/services/document-service/middlewares/defaults/locales.d.ts +0 -18
- package/dist/services/document-service/middlewares/defaults/locales.d.ts.map +0 -1
- package/dist/services/document-service/middlewares/defaults/locales.js +0 -40
- package/dist/services/document-service/middlewares/defaults/locales.js.map +0 -1
- package/dist/services/document-service/middlewares/defaults/locales.mjs +0 -40
- package/dist/services/document-service/middlewares/defaults/locales.mjs.map +0 -1
- package/dist/services/document-service/middlewares/index.js +0 -59
- package/dist/services/document-service/middlewares/index.js.map +0 -1
- package/dist/services/document-service/middlewares/index.mjs +0 -59
- package/dist/services/document-service/middlewares/index.mjs.map +0 -1
- package/dist/services/utils/upload-files.d.ts +0 -8
- package/dist/services/utils/upload-files.d.ts.map +0 -1
- package/dist/services/utils/upload-files.js +0 -64
- package/dist/services/utils/upload-files.js.map +0 -1
- package/dist/services/utils/upload-files.mjs +0 -63
- package/dist/services/utils/upload-files.mjs.map +0 -1
- package/dist/utils/addSlash.d.ts +0 -3
- package/dist/utils/addSlash.d.ts.map +0 -1
- package/dist/utils/ee.js +0 -4
- package/dist/utils/ee.js.map +0 -1
- package/dist/utils/ee.mjs +0 -5
- package/dist/utils/ee.mjs.map +0 -1
- /package/dist/{core/app-configuration → configuration}/config-loader.d.ts +0 -0
- /package/dist/{core/domain → domain}/content-type/validator.d.ts +0 -0
- /package/dist/{core/domain → domain}/module/index.d.ts +0 -0
- /package/dist/{core/domain → domain}/module/validation.d.ts +0 -0
- /package/dist/{core/domain → domain}/module/validation.js +0 -0
- /package/dist/{core/domain → domain}/module/validation.mjs +0 -0
- /package/dist/{core/loaders → loaders}/admin.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/apis.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/components.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/index.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/index.js +0 -0
- /package/dist/{core/loaders → loaders}/index.mjs +0 -0
- /package/dist/{core/loaders → loaders}/middlewares.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/plugins/get-enabled-plugins.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/plugins/get-user-plugins-config.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/plugins/index.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/policies.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/policies.js +0 -0
- /package/dist/{core/loaders → loaders}/policies.mjs +0 -0
- /package/dist/{core/loaders → loaders}/sanitizers.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/sanitizers.js +0 -0
- /package/dist/{core/loaders → loaders}/sanitizers.mjs +0 -0
- /package/dist/{core/loaders → loaders}/src-index.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/src-index.js +0 -0
- /package/dist/{core/loaders → loaders}/src-index.mjs +0 -0
- /package/dist/{core/loaders → loaders}/validators.d.ts +0 -0
- /package/dist/{core/loaders → loaders}/validators.js +0 -0
- /package/dist/{core/loaders → loaders}/validators.mjs +0 -0
- /package/dist/{core/registries → registries}/apis.d.ts +0 -0
- /package/dist/{core/registries → registries}/apis.js +0 -0
- /package/dist/{core/registries → registries}/apis.mjs +0 -0
- /package/dist/{core/registries → registries}/components.d.ts +0 -0
- /package/dist/{core/registries → registries}/components.js +0 -0
- /package/dist/{core/registries → registries}/components.mjs +0 -0
- /package/dist/{core/registries → registries}/content-types.d.ts +0 -0
- /package/dist/{core/registries → registries}/controllers.d.ts +0 -0
- /package/dist/{core/registries → registries}/custom-fields.d.ts +0 -0
- /package/dist/{core/registries → registries}/custom-fields.js +0 -0
- /package/dist/{core/registries → registries}/custom-fields.mjs +0 -0
- /package/dist/{core/registries → registries}/hooks.d.ts +0 -0
- /package/dist/{core/registries → registries}/middlewares.d.ts +0 -0
- /package/dist/{core/registries → registries}/modules.d.ts +0 -0
- /package/dist/{core/registries → registries}/modules.js +0 -0
- /package/dist/{core/registries → registries}/modules.mjs +0 -0
- /package/dist/{core/registries → registries}/plugins.d.ts +0 -0
- /package/dist/{core/registries → registries}/plugins.js +0 -0
- /package/dist/{core/registries → registries}/plugins.mjs +0 -0
- /package/dist/{core/registries → registries}/policies.d.ts +0 -0
- /package/dist/{core/registries → registries}/sanitizers.d.ts +0 -0
- /package/dist/{core/registries → registries}/sanitizers.js +0 -0
- /package/dist/{core/registries → registries}/sanitizers.mjs +0 -0
- /package/dist/{core/registries → registries}/services.d.ts +0 -0
- /package/dist/{core/registries → registries}/validators.d.ts +0 -0
- /package/dist/{core/registries → registries}/validators.js +0 -0
- /package/dist/{core/registries → registries}/validators.mjs +0 -0
@@ -4,6 +4,7 @@ const fse = require("fs-extra");
|
|
4
4
|
const _ = require("lodash");
|
5
5
|
const strapiUtils = require("@strapi/utils");
|
6
6
|
const _$1 = require("lodash/fp");
|
7
|
+
const index = require("../domain/content-type/index.js");
|
7
8
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
8
9
|
const fse__default = /* @__PURE__ */ _interopDefault(fse);
|
9
10
|
const ___default = /* @__PURE__ */ _interopDefault(_);
|
@@ -12,7 +13,7 @@ const DEFAULT_CONTENT_TYPE = {
|
|
12
13
|
actions: {},
|
13
14
|
lifecycles: {}
|
14
15
|
};
|
15
|
-
const normalizeName = (name) => strapiUtils.isKebabCase(name) ? name : ___default.default.kebabCase(name);
|
16
|
+
const normalizeName = (name) => strapiUtils.strings.isKebabCase(name) ? name : ___default.default.kebabCase(name);
|
16
17
|
const isDirectory = (fd) => fd.isDirectory();
|
17
18
|
const isDotFile = (fd) => fd.name.startsWith(".");
|
18
19
|
async function loadAPIs(strapi) {
|
@@ -23,7 +24,7 @@ async function loadAPIs(strapi) {
|
|
23
24
|
const apis = {};
|
24
25
|
for (const apiFD of apisFDs) {
|
25
26
|
const apiName = normalizeName(apiFD.name);
|
26
|
-
const api = await loadAPI(path.join(strapi.dirs.dist.api, apiFD.name));
|
27
|
+
const api = await loadAPI(apiName, path.join(strapi.dirs.dist.api, apiFD.name));
|
27
28
|
apis[apiName] = api;
|
28
29
|
}
|
29
30
|
validateContentTypesUnicity(apis);
|
@@ -51,8 +52,8 @@ const validateContentTypesUnicity = (apis) => {
|
|
51
52
|
}
|
52
53
|
});
|
53
54
|
};
|
54
|
-
const loadAPI = async (dir) => {
|
55
|
-
const [
|
55
|
+
const loadAPI = async (apiName, dir) => {
|
56
|
+
const [index2, config, routes, controllers, services, policies, middlewares, contentTypes] = await Promise.all([
|
56
57
|
loadIndex(dir),
|
57
58
|
loadDir(path.join(dir, "config")),
|
58
59
|
loadDir(path.join(dir, "routes")),
|
@@ -60,10 +61,10 @@ const loadAPI = async (dir) => {
|
|
60
61
|
loadDir(path.join(dir, "services")),
|
61
62
|
loadDir(path.join(dir, "policies")),
|
62
63
|
loadDir(path.join(dir, "middlewares")),
|
63
|
-
loadContentTypes(path.join(dir, "content-types"))
|
64
|
+
loadContentTypes(apiName, path.join(dir, "content-types"))
|
64
65
|
]);
|
65
66
|
return {
|
66
|
-
...
|
67
|
+
...index2 || {},
|
67
68
|
config: config || {},
|
68
69
|
routes: routes || [],
|
69
70
|
controllers: controllers || {},
|
@@ -78,7 +79,7 @@ const loadIndex = async (dir) => {
|
|
78
79
|
return loadFile(path.join(dir, "index.js"));
|
79
80
|
}
|
80
81
|
};
|
81
|
-
const loadContentTypes = async (dir) => {
|
82
|
+
const loadContentTypes = async (apiName, dir) => {
|
82
83
|
if (!await fse__default.default.pathExists(dir)) {
|
83
84
|
return;
|
84
85
|
}
|
@@ -89,14 +90,20 @@ const loadContentTypes = async (dir) => {
|
|
89
90
|
continue;
|
90
91
|
}
|
91
92
|
const contentTypeName = normalizeName(fd.name);
|
92
|
-
const
|
93
|
-
if (_$1.isEmpty(
|
93
|
+
const loadedContentType = await loadDir(path.join(dir, fd.name));
|
94
|
+
if (_$1.isEmpty(loadedContentType) || _$1.isEmpty(loadedContentType.schema)) {
|
94
95
|
throw new Error(`Could not load content type found at ${dir}`);
|
95
96
|
}
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
97
|
+
const contentType = {
|
98
|
+
...DEFAULT_CONTENT_TYPE,
|
99
|
+
...loadedContentType
|
100
|
+
};
|
101
|
+
Object.assign(contentType.schema, {
|
102
|
+
apiName,
|
103
|
+
collectionName: contentType.schema.collectionName || contentType.schema.info.singularName,
|
104
|
+
globalId: index.getGlobalId(contentType.schema)
|
105
|
+
});
|
106
|
+
contentTypes[normalizeName(contentTypeName)] = contentType;
|
100
107
|
}
|
101
108
|
return contentTypes;
|
102
109
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"apis.js","sources":["../../src/loaders/apis.ts"],"sourcesContent":["import { join, extname, basename } from 'path';\nimport fse, { existsSync } from 'fs-extra';\nimport _ from 'lodash';\nimport { strings, importDefault } from '@strapi/utils';\nimport { isEmpty } from 'lodash/fp';\nimport type { Strapi, Common, Schema } from '@strapi/types';\nimport { getGlobalId, type ContentTypeDefinition } from '../domain/content-type';\n\ninterface API {\n bootstrap: () => void | Promise<void>;\n destroy: () => void | Promise<void>;\n register: () => void | Promise<void>;\n config: Record<string, unknown>;\n routes: Record<string, Common.Router>;\n controllers: Record<string, Common.Controller>;\n services: Record<string, Common.Service>;\n policies: Record<string, Common.Policy>;\n middlewares: Record<string, Common.Middleware>;\n contentTypes: Record<string, { schema: Schema.ContentType }>;\n}\n\ninterface APIs {\n [key: string]: API;\n}\n\nconst DEFAULT_CONTENT_TYPE = {\n schema: {},\n actions: {},\n lifecycles: {},\n};\n\n// to handle names with numbers in it we first check if it is already in kebabCase\nconst normalizeName = (name: string) => (strings.isKebabCase(name) ? name : _.kebabCase(name));\n\nconst isDirectory = (fd: fse.Dirent) => fd.isDirectory();\nconst isDotFile = (fd: fse.Dirent) => fd.name.startsWith('.');\n\nexport default async function loadAPIs(strapi: Strapi) {\n if (!existsSync(strapi.dirs.dist.api)) {\n return;\n }\n\n const apisFDs = await (await fse.readdir(strapi.dirs.dist.api, { withFileTypes: true }))\n .filter(isDirectory)\n .filter(_.negate(isDotFile));\n\n const apis: APIs = {};\n\n // only load folders\n for (const apiFD of apisFDs) {\n const apiName = normalizeName(apiFD.name);\n const api = await loadAPI(apiName, join(strapi.dirs.dist.api, apiFD.name));\n\n apis[apiName] = api;\n }\n\n validateContentTypesUnicity(apis);\n\n for (const apiName of Object.keys(apis)) {\n strapi.get('apis').add(apiName, apis[apiName]);\n }\n}\n\nconst validateContentTypesUnicity = (apis: APIs) => {\n const allApisSchemas = Object.values(apis).flatMap((api) => Object.values(api.contentTypes));\n\n const names: string[] = [];\n allApisSchemas.forEach(({ schema }) => {\n if (schema.info.singularName) {\n const singularName = _.kebabCase(schema.info.singularName);\n if (names.includes(singularName)) {\n throw new Error(`The singular name \"${schema.info.singularName}\" should be unique`);\n }\n names.push(singularName);\n }\n\n if (schema.info.pluralName) {\n const pluralName = _.kebabCase(schema.info.pluralName);\n if (names.includes(pluralName)) {\n throw new Error(`The plural name \"${schema.info.pluralName}\" should be unique`);\n }\n names.push(pluralName);\n }\n });\n};\n\nconst loadAPI = async (apiName: string, dir: string) => {\n const [index, config, routes, controllers, services, policies, middlewares, contentTypes] =\n await Promise.all([\n loadIndex(dir),\n loadDir(join(dir, 'config')),\n loadDir(join(dir, 'routes')),\n loadDir(join(dir, 'controllers')),\n loadDir(join(dir, 'services')),\n loadDir(join(dir, 'policies')),\n loadDir(join(dir, 'middlewares')),\n loadContentTypes(apiName, join(dir, 'content-types')),\n ]);\n\n return {\n ...(index || {}),\n config: config || {},\n routes: routes || [],\n controllers: controllers || {},\n services: services || {},\n policies: policies || {},\n middlewares: middlewares || {},\n contentTypes: contentTypes || {},\n };\n};\n\nconst loadIndex = async (dir: string) => {\n if (await fse.pathExists(join(dir, 'index.js'))) {\n return loadFile(join(dir, 'index.js'));\n }\n};\n\nconst loadContentTypes = async (apiName: string, dir: string) => {\n if (!(await fse.pathExists(dir))) {\n return;\n }\n\n const fds = await fse.readdir(dir, { withFileTypes: true });\n const contentTypes: API['contentTypes'] = {};\n\n // only load folders\n for (const fd of fds) {\n if (fd.isFile()) {\n continue;\n }\n\n const contentTypeName = normalizeName(fd.name);\n const loadedContentType = await loadDir(join(dir, fd.name));\n\n if (isEmpty(loadedContentType) || isEmpty(loadedContentType.schema)) {\n throw new Error(`Could not load content type found at ${dir}`);\n }\n\n const contentType = {\n ...DEFAULT_CONTENT_TYPE,\n ...loadedContentType,\n } as ContentTypeDefinition;\n\n Object.assign(contentType.schema, {\n apiName,\n collectionName: contentType.schema.collectionName || contentType.schema.info.singularName,\n globalId: getGlobalId(contentType.schema),\n });\n\n contentTypes[normalizeName(contentTypeName)] = contentType;\n }\n\n return contentTypes;\n};\n\nconst loadDir = async (dir: string) => {\n if (!(await fse.pathExists(dir))) {\n return;\n }\n\n const fds = await fse.readdir(dir, { withFileTypes: true });\n\n const root: Record<string, unknown> = {};\n for (const fd of fds) {\n if (!fd.isFile() || extname(fd.name) === '.map') {\n continue;\n }\n\n const key = basename(fd.name, extname(fd.name));\n\n root[normalizeName(key)] = await loadFile(join(dir, fd.name));\n }\n\n return root;\n};\n\nconst loadFile = (file: string) => {\n const ext = extname(file);\n\n switch (ext) {\n case '.js':\n return importDefault(file);\n case '.json':\n return fse.readJSON(file);\n default:\n return {};\n }\n};\n"],"names":["strings","_","existsSync","fse","join","index","isEmpty","getGlobalId","extname","basename","importDefault"],"mappings":"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"}
|
@@ -1,14 +1,15 @@
|
|
1
1
|
import { join, extname, basename } from "path";
|
2
2
|
import fse, { existsSync } from "fs-extra";
|
3
3
|
import _ from "lodash";
|
4
|
-
import {
|
4
|
+
import { strings, importDefault } from "@strapi/utils";
|
5
5
|
import { isEmpty } from "lodash/fp";
|
6
|
+
import { getGlobalId } from "../domain/content-type/index.mjs";
|
6
7
|
const DEFAULT_CONTENT_TYPE = {
|
7
8
|
schema: {},
|
8
9
|
actions: {},
|
9
10
|
lifecycles: {}
|
10
11
|
};
|
11
|
-
const normalizeName = (name) => isKebabCase(name) ? name : _.kebabCase(name);
|
12
|
+
const normalizeName = (name) => strings.isKebabCase(name) ? name : _.kebabCase(name);
|
12
13
|
const isDirectory = (fd) => fd.isDirectory();
|
13
14
|
const isDotFile = (fd) => fd.name.startsWith(".");
|
14
15
|
async function loadAPIs(strapi) {
|
@@ -19,7 +20,7 @@ async function loadAPIs(strapi) {
|
|
19
20
|
const apis = {};
|
20
21
|
for (const apiFD of apisFDs) {
|
21
22
|
const apiName = normalizeName(apiFD.name);
|
22
|
-
const api = await loadAPI(join(strapi.dirs.dist.api, apiFD.name));
|
23
|
+
const api = await loadAPI(apiName, join(strapi.dirs.dist.api, apiFD.name));
|
23
24
|
apis[apiName] = api;
|
24
25
|
}
|
25
26
|
validateContentTypesUnicity(apis);
|
@@ -47,7 +48,7 @@ const validateContentTypesUnicity = (apis) => {
|
|
47
48
|
}
|
48
49
|
});
|
49
50
|
};
|
50
|
-
const loadAPI = async (dir) => {
|
51
|
+
const loadAPI = async (apiName, dir) => {
|
51
52
|
const [index, config, routes, controllers, services, policies, middlewares, contentTypes] = await Promise.all([
|
52
53
|
loadIndex(dir),
|
53
54
|
loadDir(join(dir, "config")),
|
@@ -56,7 +57,7 @@ const loadAPI = async (dir) => {
|
|
56
57
|
loadDir(join(dir, "services")),
|
57
58
|
loadDir(join(dir, "policies")),
|
58
59
|
loadDir(join(dir, "middlewares")),
|
59
|
-
loadContentTypes(join(dir, "content-types"))
|
60
|
+
loadContentTypes(apiName, join(dir, "content-types"))
|
60
61
|
]);
|
61
62
|
return {
|
62
63
|
...index || {},
|
@@ -74,7 +75,7 @@ const loadIndex = async (dir) => {
|
|
74
75
|
return loadFile(join(dir, "index.js"));
|
75
76
|
}
|
76
77
|
};
|
77
|
-
const loadContentTypes = async (dir) => {
|
78
|
+
const loadContentTypes = async (apiName, dir) => {
|
78
79
|
if (!await fse.pathExists(dir)) {
|
79
80
|
return;
|
80
81
|
}
|
@@ -85,14 +86,20 @@ const loadContentTypes = async (dir) => {
|
|
85
86
|
continue;
|
86
87
|
}
|
87
88
|
const contentTypeName = normalizeName(fd.name);
|
88
|
-
const
|
89
|
-
if (isEmpty(
|
89
|
+
const loadedContentType = await loadDir(join(dir, fd.name));
|
90
|
+
if (isEmpty(loadedContentType) || isEmpty(loadedContentType.schema)) {
|
90
91
|
throw new Error(`Could not load content type found at ${dir}`);
|
91
92
|
}
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
93
|
+
const contentType = {
|
94
|
+
...DEFAULT_CONTENT_TYPE,
|
95
|
+
...loadedContentType
|
96
|
+
};
|
97
|
+
Object.assign(contentType.schema, {
|
98
|
+
apiName,
|
99
|
+
collectionName: contentType.schema.collectionName || contentType.schema.info.singularName,
|
100
|
+
globalId: getGlobalId(contentType.schema)
|
101
|
+
});
|
102
|
+
contentTypes[normalizeName(contentTypeName)] = contentType;
|
96
103
|
}
|
97
104
|
return contentTypes;
|
98
105
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"apis.mjs","sources":["../../src/loaders/apis.ts"],"sourcesContent":["import { join, extname, basename } from 'path';\nimport fse, { existsSync } from 'fs-extra';\nimport _ from 'lodash';\nimport { strings, importDefault } from '@strapi/utils';\nimport { isEmpty } from 'lodash/fp';\nimport type { Strapi, Common, Schema } from '@strapi/types';\nimport { getGlobalId, type ContentTypeDefinition } from '../domain/content-type';\n\ninterface API {\n bootstrap: () => void | Promise<void>;\n destroy: () => void | Promise<void>;\n register: () => void | Promise<void>;\n config: Record<string, unknown>;\n routes: Record<string, Common.Router>;\n controllers: Record<string, Common.Controller>;\n services: Record<string, Common.Service>;\n policies: Record<string, Common.Policy>;\n middlewares: Record<string, Common.Middleware>;\n contentTypes: Record<string, { schema: Schema.ContentType }>;\n}\n\ninterface APIs {\n [key: string]: API;\n}\n\nconst DEFAULT_CONTENT_TYPE = {\n schema: {},\n actions: {},\n lifecycles: {},\n};\n\n// to handle names with numbers in it we first check if it is already in kebabCase\nconst normalizeName = (name: string) => (strings.isKebabCase(name) ? name : _.kebabCase(name));\n\nconst isDirectory = (fd: fse.Dirent) => fd.isDirectory();\nconst isDotFile = (fd: fse.Dirent) => fd.name.startsWith('.');\n\nexport default async function loadAPIs(strapi: Strapi) {\n if (!existsSync(strapi.dirs.dist.api)) {\n return;\n }\n\n const apisFDs = await (await fse.readdir(strapi.dirs.dist.api, { withFileTypes: true }))\n .filter(isDirectory)\n .filter(_.negate(isDotFile));\n\n const apis: APIs = {};\n\n // only load folders\n for (const apiFD of apisFDs) {\n const apiName = normalizeName(apiFD.name);\n const api = await loadAPI(apiName, join(strapi.dirs.dist.api, apiFD.name));\n\n apis[apiName] = api;\n }\n\n validateContentTypesUnicity(apis);\n\n for (const apiName of Object.keys(apis)) {\n strapi.get('apis').add(apiName, apis[apiName]);\n }\n}\n\nconst validateContentTypesUnicity = (apis: APIs) => {\n const allApisSchemas = Object.values(apis).flatMap((api) => Object.values(api.contentTypes));\n\n const names: string[] = [];\n allApisSchemas.forEach(({ schema }) => {\n if (schema.info.singularName) {\n const singularName = _.kebabCase(schema.info.singularName);\n if (names.includes(singularName)) {\n throw new Error(`The singular name \"${schema.info.singularName}\" should be unique`);\n }\n names.push(singularName);\n }\n\n if (schema.info.pluralName) {\n const pluralName = _.kebabCase(schema.info.pluralName);\n if (names.includes(pluralName)) {\n throw new Error(`The plural name \"${schema.info.pluralName}\" should be unique`);\n }\n names.push(pluralName);\n }\n });\n};\n\nconst loadAPI = async (apiName: string, dir: string) => {\n const [index, config, routes, controllers, services, policies, middlewares, contentTypes] =\n await Promise.all([\n loadIndex(dir),\n loadDir(join(dir, 'config')),\n loadDir(join(dir, 'routes')),\n loadDir(join(dir, 'controllers')),\n loadDir(join(dir, 'services')),\n loadDir(join(dir, 'policies')),\n loadDir(join(dir, 'middlewares')),\n loadContentTypes(apiName, join(dir, 'content-types')),\n ]);\n\n return {\n ...(index || {}),\n config: config || {},\n routes: routes || [],\n controllers: controllers || {},\n services: services || {},\n policies: policies || {},\n middlewares: middlewares || {},\n contentTypes: contentTypes || {},\n };\n};\n\nconst loadIndex = async (dir: string) => {\n if (await fse.pathExists(join(dir, 'index.js'))) {\n return loadFile(join(dir, 'index.js'));\n }\n};\n\nconst loadContentTypes = async (apiName: string, dir: string) => {\n if (!(await fse.pathExists(dir))) {\n return;\n }\n\n const fds = await fse.readdir(dir, { withFileTypes: true });\n const contentTypes: API['contentTypes'] = {};\n\n // only load folders\n for (const fd of fds) {\n if (fd.isFile()) {\n continue;\n }\n\n const contentTypeName = normalizeName(fd.name);\n const loadedContentType = await loadDir(join(dir, fd.name));\n\n if (isEmpty(loadedContentType) || isEmpty(loadedContentType.schema)) {\n throw new Error(`Could not load content type found at ${dir}`);\n }\n\n const contentType = {\n ...DEFAULT_CONTENT_TYPE,\n ...loadedContentType,\n } as ContentTypeDefinition;\n\n Object.assign(contentType.schema, {\n apiName,\n collectionName: contentType.schema.collectionName || contentType.schema.info.singularName,\n globalId: getGlobalId(contentType.schema),\n });\n\n contentTypes[normalizeName(contentTypeName)] = contentType;\n }\n\n return contentTypes;\n};\n\nconst loadDir = async (dir: string) => {\n if (!(await fse.pathExists(dir))) {\n return;\n }\n\n const fds = await fse.readdir(dir, { withFileTypes: true });\n\n const root: Record<string, unknown> = {};\n for (const fd of fds) {\n if (!fd.isFile() || extname(fd.name) === '.map') {\n continue;\n }\n\n const key = basename(fd.name, extname(fd.name));\n\n root[normalizeName(key)] = await loadFile(join(dir, fd.name));\n }\n\n return root;\n};\n\nconst loadFile = (file: string) => {\n const ext = extname(file);\n\n switch (ext) {\n case '.js':\n return importDefault(file);\n case '.json':\n return fse.readJSON(file);\n default:\n return {};\n }\n};\n"],"names":[],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../src/loaders/components.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,eAAe,CAAC;AAyB5D,wBAA8B,cAAc,CAAC,MAAM,EAAE,MAAM,2BAoC1D"}
|
@@ -2,14 +2,14 @@
|
|
2
2
|
const path = require("path");
|
3
3
|
const _ = require("lodash");
|
4
4
|
const fse = require("fs-extra");
|
5
|
-
const loadFiles = require("
|
5
|
+
const loadFiles = require("../utils/load-files.js");
|
6
6
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
7
7
|
const ___default = /* @__PURE__ */ _interopDefault(_);
|
8
8
|
async function loadComponents(strapi) {
|
9
9
|
if (!await fse.pathExists(strapi.dirs.dist.components)) {
|
10
10
|
return {};
|
11
11
|
}
|
12
|
-
const map = await loadFiles(strapi.dirs.dist.components, "*/*.*(js|json)");
|
12
|
+
const map = await loadFiles.loadFiles(strapi.dirs.dist.components, "*/*.*(js|json)");
|
13
13
|
const components = Object.keys(map).reduce((acc, category) => {
|
14
14
|
Object.keys(map[category]).forEach((key) => {
|
15
15
|
const schema = map[category][key];
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"components.js","sources":["../../src/loaders/components.ts"],"sourcesContent":["import { join } from 'path';\nimport _ from 'lodash';\nimport { pathExists } from 'fs-extra';\nimport type { Strapi, Common, Schema } from '@strapi/types';\nimport { loadFiles } from '../utils/load-files';\n\ntype LoadedComponent = {\n collectionName: string;\n __filename__: string;\n __schema__: LoadedComponent;\n uid: string;\n category: string;\n modelName: string;\n globalId: string;\n info: any;\n attributes: any;\n};\n\ntype LoadedComponents = {\n [category: string]: {\n [key: string]: LoadedComponent;\n };\n};\n\ntype ComponentMap = {\n [uid in Common.UID.Component]: Schema.Component;\n};\n\nexport default async function loadComponents(strapi: Strapi) {\n if (!(await pathExists(strapi.dirs.dist.components))) {\n return {};\n }\n\n const map = await loadFiles<LoadedComponents>(strapi.dirs.dist.components, '*/*.*(js|json)');\n\n const components = Object.keys(map).reduce((acc, category) => {\n Object.keys(map[category]).forEach((key) => {\n const schema = map[category][key];\n\n if (!schema.collectionName) {\n // NOTE: We're using the filepath from the app directory instead of the dist for information purpose\n const filePath = join(strapi.dirs.app.components, category, schema.__filename__);\n\n return strapi.stopWithError(\n `Component ${key} is missing a \"collectionName\" property.\\nVerify file ${filePath}.`\n );\n }\n\n const uid: Common.UID.Component = `${category}.${key}`;\n\n acc[uid] = Object.assign(schema, {\n __schema__: _.cloneDeep(schema),\n uid,\n category,\n modelType: 'component' as const,\n modelName: key,\n globalId: schema.globalId || _.upperFirst(_.camelCase(`component_${uid}`)),\n });\n });\n\n return acc;\n }, {} as ComponentMap);\n\n strapi.get('components').add(components);\n}\n"],"names":["pathExists","loadFiles","join","_"],"mappings":";;;;;;;AA4BA,eAA8B,eAAe,QAAgB;AAC3D,MAAI,CAAE,MAAMA,IAAAA,WAAW,OAAO,KAAK,KAAK,UAAU,GAAI;AACpD,WAAO;EACT;AAEA,QAAM,MAAM,MAAMC,UAAAA,UAA4B,OAAO,KAAK,KAAK,YAAY,gBAAgB;AAErF,QAAA,aAAa,OAAO,KAAK,GAAG,EAAE,OAAO,CAAC,KAAK,aAAa;AAC5D,WAAO,KAAK,IAAI,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ;AAC1C,YAAM,SAAS,IAAI,QAAQ,EAAE,GAAG;AAE5B,UAAA,CAAC,OAAO,gBAAgB;AAEpB,cAAA,WAAWC,UAAK,OAAO,KAAK,IAAI,YAAY,UAAU,OAAO,YAAY;AAE/E,eAAO,OAAO;AAAA,UACZ,aAAa,GAAG;AAAA,cAAyD,QAAQ;AAAA,QAAA;AAAA,MAErF;AAEA,YAAM,MAA4B,GAAG,QAAQ,IAAI,GAAG;AAEpD,UAAI,GAAG,IAAI,OAAO,OAAO,QAAQ;AAAA,QAC/B,YAAYC,WAAAA,QAAE,UAAU,MAAM;AAAA,QAC9B;AAAA,QACA;AAAA,QACA,WAAW;AAAA,QACX,WAAW;AAAA,QACX,UAAU,OAAO,YAAYA,WAAAA,QAAE,WAAWA,mBAAE,UAAU,aAAa,GAAG,EAAE,CAAC;AAAA,MAAA,CAC1E;AAAA,IAAA,CACF;AAEM,WAAA;AAAA,EACT,GAAG,CAAkB,CAAA;AAErB,SAAO,IAAI,YAAY,EAAE,IAAI,UAAU;AACzC;;"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { join } from "path";
|
2
2
|
import _ from "lodash";
|
3
3
|
import { pathExists } from "fs-extra";
|
4
|
-
import loadFiles from "
|
4
|
+
import { loadFiles } from "../utils/load-files.mjs";
|
5
5
|
async function loadComponents(strapi) {
|
6
6
|
if (!await pathExists(strapi.dirs.dist.components)) {
|
7
7
|
return {};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"components.mjs","sources":["../../src/loaders/components.ts"],"sourcesContent":["import { join } from 'path';\nimport _ from 'lodash';\nimport { pathExists } from 'fs-extra';\nimport type { Strapi, Common, Schema } from '@strapi/types';\nimport { loadFiles } from '../utils/load-files';\n\ntype LoadedComponent = {\n collectionName: string;\n __filename__: string;\n __schema__: LoadedComponent;\n uid: string;\n category: string;\n modelName: string;\n globalId: string;\n info: any;\n attributes: any;\n};\n\ntype LoadedComponents = {\n [category: string]: {\n [key: string]: LoadedComponent;\n };\n};\n\ntype ComponentMap = {\n [uid in Common.UID.Component]: Schema.Component;\n};\n\nexport default async function loadComponents(strapi: Strapi) {\n if (!(await pathExists(strapi.dirs.dist.components))) {\n return {};\n }\n\n const map = await loadFiles<LoadedComponents>(strapi.dirs.dist.components, '*/*.*(js|json)');\n\n const components = Object.keys(map).reduce((acc, category) => {\n Object.keys(map[category]).forEach((key) => {\n const schema = map[category][key];\n\n if (!schema.collectionName) {\n // NOTE: We're using the filepath from the app directory instead of the dist for information purpose\n const filePath = join(strapi.dirs.app.components, category, schema.__filename__);\n\n return strapi.stopWithError(\n `Component ${key} is missing a \"collectionName\" property.\\nVerify file ${filePath}.`\n );\n }\n\n const uid: Common.UID.Component = `${category}.${key}`;\n\n acc[uid] = Object.assign(schema, {\n __schema__: _.cloneDeep(schema),\n uid,\n category,\n modelType: 'component' as const,\n modelName: key,\n globalId: schema.globalId || _.upperFirst(_.camelCase(`component_${uid}`)),\n });\n });\n\n return acc;\n }, {} as ComponentMap);\n\n strapi.get('components').add(components);\n}\n"],"names":[],"mappings":";;;;AA4BA,eAA8B,eAAe,QAAgB;AAC3D,MAAI,CAAE,MAAM,WAAW,OAAO,KAAK,KAAK,UAAU,GAAI;AACpD,WAAO;EACT;AAEA,QAAM,MAAM,MAAM,UAA4B,OAAO,KAAK,KAAK,YAAY,gBAAgB;AAErF,QAAA,aAAa,OAAO,KAAK,GAAG,EAAE,OAAO,CAAC,KAAK,aAAa;AAC5D,WAAO,KAAK,IAAI,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ;AAC1C,YAAM,SAAS,IAAI,QAAQ,EAAE,GAAG;AAE5B,UAAA,CAAC,OAAO,gBAAgB;AAEpB,cAAA,WAAW,KAAK,OAAO,KAAK,IAAI,YAAY,UAAU,OAAO,YAAY;AAE/E,eAAO,OAAO;AAAA,UACZ,aAAa,GAAG;AAAA,cAAyD,QAAQ;AAAA,QAAA;AAAA,MAErF;AAEA,YAAM,MAA4B,GAAG,QAAQ,IAAI,GAAG;AAEpD,UAAI,GAAG,IAAI,OAAO,OAAO,QAAQ;AAAA,QAC/B,YAAY,EAAE,UAAU,MAAM;AAAA,QAC9B;AAAA,QACA;AAAA,QACA,WAAW;AAAA,QACX,WAAW;AAAA,QACX,UAAU,OAAO,YAAY,EAAE,WAAW,EAAE,UAAU,aAAa,GAAG,EAAE,CAAC;AAAA,MAAA,CAC1E;AAAA,IAAA,CACF;AAEM,WAAA;AAAA,EACT,GAAG,CAAkB,CAAA;AAErB,SAAO,IAAI,YAAY,EAAE,IAAI,UAAU;AACzC;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/loaders/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAY5C,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,MAAM,iBAY1D"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/loaders/index.ts"],"sourcesContent":["import type { Strapi } from '@strapi/types';\n\nimport loadSrcIndex from './src-index';\nimport loadAPIs from './apis';\nimport loadMiddlewares from './middlewares';\nimport loadComponents from './components';\nimport loadPolicies from './policies';\nimport loadPlugins from './plugins';\nimport loadAdmin from './admin';\nimport loadSanitizers from './sanitizers';\nimport loadValidators from './validators';\n\nexport async function loadApplicationContext(strapi: Strapi) {\n await Promise.all([\n loadSrcIndex(strapi),\n loadSanitizers(strapi),\n loadValidators(strapi),\n loadPlugins(strapi),\n loadAdmin(strapi),\n loadAPIs(strapi),\n loadComponents(strapi),\n loadMiddlewares(strapi),\n loadPolicies(strapi),\n ]);\n}\n"],"names":["loadSrcIndex","loadSanitizers","loadValidators","loadPlugins","loadAdmin","loadAPIs","loadComponents","loadMiddlewares","loadPolicies"],"mappings":";;;;;;;;;;;AAYA,eAAsB,uBAAuB,QAAgB;AAC3D,QAAM,QAAQ,IAAI;AAAA,IAChBA,SAAa,MAAM;AAAA,IACnBC,WAAe,MAAM;AAAA,IACrBC,WAAe,MAAM;AAAA,IACrBC,MAAY,MAAM;AAAA,IAClBC,MAAU,MAAM;AAAA,IAChBC,KAAS,MAAM;AAAA,IACfC,WAAe,MAAM;AAAA,IACrBC,YAAgB,MAAM;AAAA,IACtBC,SAAa,MAAM;AAAA,EAAA,CACpB;AACH;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/loaders/index.ts"],"sourcesContent":["import type { Strapi } from '@strapi/types';\n\nimport loadSrcIndex from './src-index';\nimport loadAPIs from './apis';\nimport loadMiddlewares from './middlewares';\nimport loadComponents from './components';\nimport loadPolicies from './policies';\nimport loadPlugins from './plugins';\nimport loadAdmin from './admin';\nimport loadSanitizers from './sanitizers';\nimport loadValidators from './validators';\n\nexport async function loadApplicationContext(strapi: Strapi) {\n await Promise.all([\n loadSrcIndex(strapi),\n loadSanitizers(strapi),\n loadValidators(strapi),\n loadPlugins(strapi),\n loadAdmin(strapi),\n loadAPIs(strapi),\n loadComponents(strapi),\n loadMiddlewares(strapi),\n loadPolicies(strapi),\n ]);\n}\n"],"names":[],"mappings":";;;;;;;;;AAYA,eAAsB,uBAAuB,QAAgB;AAC3D,QAAM,QAAQ,IAAI;AAAA,IAChB,aAAa,MAAM;AAAA,IACnB,eAAe,MAAM;AAAA,IACrB,eAAe,MAAM;AAAA,IACrB,YAAY,MAAM;AAAA,IAClB,UAAU,MAAM;AAAA,IAChB,SAAS,MAAM;AAAA,IACf,eAAe,MAAM;AAAA,IACrB,gBAAgB,MAAM;AAAA,IACtB,aAAa,MAAM;AAAA,EAAA,CACpB;AACH;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"middlewares.d.ts","sourceRoot":"","sources":["../../src/loaders/middlewares.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAIpD,wBAA8B,eAAe,CAAC,MAAM,EAAE,MAAM,iBAK3D"}
|
@@ -2,7 +2,7 @@
|
|
2
2
|
const path = require("path");
|
3
3
|
const fse = require("fs-extra");
|
4
4
|
const strapiUtils = require("@strapi/utils");
|
5
|
-
const index = require("
|
5
|
+
const index = require("../middlewares/index.js");
|
6
6
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
7
7
|
const fse__default = /* @__PURE__ */ _interopDefault(fse);
|
8
8
|
async function loadMiddlewares(strapi) {
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"middlewares.js","sources":["../../src/loaders/middlewares.ts"],"sourcesContent":["import { join, extname, basename } from 'path';\nimport fse from 'fs-extra';\nimport { importDefault } from '@strapi/utils';\nimport type { Strapi, Common } from '@strapi/types';\nimport { middlewares as internalMiddlewares } from '../middlewares';\n\n// TODO:: allow folders with index.js inside for bigger policies\nexport default async function loadMiddlewares(strapi: Strapi) {\n const localMiddlewares = await loadLocalMiddlewares(strapi);\n\n strapi.get('middlewares').add(`global::`, localMiddlewares);\n strapi.get('middlewares').add(`strapi::`, internalMiddlewares);\n}\n\nconst loadLocalMiddlewares = async (strapi: Strapi) => {\n const dir = strapi.dirs.dist.middlewares;\n\n if (!(await fse.pathExists(dir))) {\n return {};\n }\n\n const middlewares: Record<string, Common.MiddlewareFactory> = {};\n const paths = await fse.readdir(dir, { withFileTypes: true });\n\n for (const fd of paths) {\n const { name } = fd;\n const fullPath = join(dir, name);\n\n if (fd.isFile() && extname(name) === '.js') {\n const key = basename(name, '.js');\n middlewares[key] = importDefault(fullPath);\n }\n }\n\n return middlewares;\n};\n"],"names":["internalMiddlewares","fse","join","extname","basename","importDefault"],"mappings":";;;;;;;AAOA,eAA8B,gBAAgB,QAAgB;AACtD,QAAA,mBAAmB,MAAM,qBAAqB,MAAM;AAE1D,SAAO,IAAI,aAAa,EAAE,IAAI,YAAY,gBAAgB;AAC1D,SAAO,IAAI,aAAa,EAAE,IAAI,YAAYA,MAAAA,WAAmB;AAC/D;AAEA,MAAM,uBAAuB,OAAO,WAAmB;AAC/C,QAAA,MAAM,OAAO,KAAK,KAAK;AAE7B,MAAI,CAAE,MAAMC,aAAAA,QAAI,WAAW,GAAG,GAAI;AAChC,WAAO;EACT;AAEA,QAAM,cAAwD,CAAA;AACxD,QAAA,QAAQ,MAAMA,aAAAA,QAAI,QAAQ,KAAK,EAAE,eAAe,MAAM;AAE5D,aAAW,MAAM,OAAO;AAChB,UAAA,EAAE,KAAS,IAAA;AACX,UAAA,WAAWC,KAAAA,KAAK,KAAK,IAAI;AAE/B,QAAI,GAAG,OAAO,KAAKC,KAAQ,QAAA,IAAI,MAAM,OAAO;AACpC,YAAA,MAAMC,KAAAA,SAAS,MAAM,KAAK;AACpB,kBAAA,GAAG,IAAIC,YAAA,cAAc,QAAQ;AAAA,IAC3C;AAAA,EACF;AAEO,SAAA;AACT;;"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { join, extname, basename } from "path";
|
2
2
|
import fse from "fs-extra";
|
3
3
|
import { importDefault } from "@strapi/utils";
|
4
|
-
import { middlewares } from "
|
4
|
+
import { middlewares } from "../middlewares/index.mjs";
|
5
5
|
async function loadMiddlewares(strapi) {
|
6
6
|
const localMiddlewares = await loadLocalMiddlewares(strapi);
|
7
7
|
strapi.get("middlewares").add(`global::`, localMiddlewares);
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"middlewares.mjs","sources":["../../src/loaders/middlewares.ts"],"sourcesContent":["import { join, extname, basename } from 'path';\nimport fse from 'fs-extra';\nimport { importDefault } from '@strapi/utils';\nimport type { Strapi, Common } from '@strapi/types';\nimport { middlewares as internalMiddlewares } from '../middlewares';\n\n// TODO:: allow folders with index.js inside for bigger policies\nexport default async function loadMiddlewares(strapi: Strapi) {\n const localMiddlewares = await loadLocalMiddlewares(strapi);\n\n strapi.get('middlewares').add(`global::`, localMiddlewares);\n strapi.get('middlewares').add(`strapi::`, internalMiddlewares);\n}\n\nconst loadLocalMiddlewares = async (strapi: Strapi) => {\n const dir = strapi.dirs.dist.middlewares;\n\n if (!(await fse.pathExists(dir))) {\n return {};\n }\n\n const middlewares: Record<string, Common.MiddlewareFactory> = {};\n const paths = await fse.readdir(dir, { withFileTypes: true });\n\n for (const fd of paths) {\n const { name } = fd;\n const fullPath = join(dir, name);\n\n if (fd.isFile() && extname(name) === '.js') {\n const key = basename(name, '.js');\n middlewares[key] = importDefault(fullPath);\n }\n }\n\n return middlewares;\n};\n"],"names":["internalMiddlewares","middlewares"],"mappings":";;;;AAOA,eAA8B,gBAAgB,QAAgB;AACtD,QAAA,mBAAmB,MAAM,qBAAqB,MAAM;AAE1D,SAAO,IAAI,aAAa,EAAE,IAAI,YAAY,gBAAgB;AAC1D,SAAO,IAAI,aAAa,EAAE,IAAI,YAAYA,WAAmB;AAC/D;AAEA,MAAM,uBAAuB,OAAO,WAAmB;AAC/C,QAAA,MAAM,OAAO,KAAK,KAAK;AAE7B,MAAI,CAAE,MAAM,IAAI,WAAW,GAAG,GAAI;AAChC,WAAO;EACT;AAEA,QAAMC,eAAwD,CAAA;AACxD,QAAA,QAAQ,MAAM,IAAI,QAAQ,KAAK,EAAE,eAAe,MAAM;AAE5D,aAAW,MAAM,OAAO;AAChB,UAAA,EAAE,KAAS,IAAA;AACX,UAAA,WAAW,KAAK,KAAK,IAAI;AAE/B,QAAI,GAAG,OAAO,KAAK,QAAQ,IAAI,MAAM,OAAO;AACpC,YAAA,MAAM,SAAS,MAAM,KAAK;AACpB,MAAAA,aAAA,GAAG,IAAI,cAAc,QAAQ;AAAA,IAC3C;AAAA,EACF;AAEO,SAAAA;AACT;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-enabled-plugins.d.ts","sourceRoot":"","sources":["../../../src/loaders/plugins/get-enabled-plugins.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AA6E5C,eAAO,MAAM,iBAAiB,WAAkB,MAAM;;kBA2ErD,CAAC"}
|
@@ -12,11 +12,13 @@ const INTERNAL_PLUGINS = [
|
|
12
12
|
"@strapi/plugin-content-manager",
|
13
13
|
"@strapi/plugin-content-type-builder",
|
14
14
|
"@strapi/plugin-email",
|
15
|
-
"@strapi/plugin-upload"
|
15
|
+
"@strapi/plugin-upload",
|
16
|
+
"@strapi/plugin-i18n",
|
17
|
+
"@strapi/content-releases"
|
16
18
|
];
|
17
19
|
const isStrapiPlugin = (info) => _$1.get("strapi.kind", info) === "plugin";
|
18
20
|
const validatePluginName = (pluginName) => {
|
19
|
-
if (!strapiUtils.isKebabCase(pluginName)) {
|
21
|
+
if (!strapiUtils.strings.isKebabCase(pluginName)) {
|
20
22
|
throw new Error(`Plugin name "${pluginName}" is not in kebab (an-example-of-kebab-case)`);
|
21
23
|
}
|
22
24
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-enabled-plugins.js","sources":["../../../src/loaders/plugins/get-enabled-plugins.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport { dirname, join, resolve } from 'path';\nimport { statSync, existsSync } from 'fs';\nimport _ from 'lodash';\nimport { get, pickBy, defaultsDeep, map, prop, pipe } from 'lodash/fp';\nimport { strings } from '@strapi/utils';\nimport type { Strapi } from '@strapi/types';\nimport { getUserPluginsConfig } from './get-user-plugins-config';\n\ninterface PluginMeta {\n enabled: boolean;\n pathToPlugin?: string;\n info: Record<string, unknown>;\n}\n\ntype PluginMetas = Record<string, PluginMeta>;\n\ninterface PluginInfo {\n name: string;\n kind: string;\n}\n\ninterface PluginDeclaration {\n enabled: boolean;\n resolve: string;\n isModule: boolean;\n}\n\n/**\n * otherwise known as \"core features\"\n */\nconst INTERNAL_PLUGINS = [\n '@strapi/plugin-content-manager',\n '@strapi/plugin-content-type-builder',\n '@strapi/plugin-email',\n '@strapi/plugin-upload',\n '@strapi/plugin-i18n',\n '@strapi/content-releases',\n];\n\nconst isStrapiPlugin = (info: PluginInfo) => get('strapi.kind', info) === 'plugin';\n\nconst validatePluginName = (pluginName: string) => {\n if (!strings.isKebabCase(pluginName)) {\n throw new Error(`Plugin name \"${pluginName}\" is not in kebab (an-example-of-kebab-case)`);\n }\n};\n\nconst toDetailedDeclaration = (declaration: boolean | PluginDeclaration) => {\n if (typeof declaration === 'boolean') {\n return { enabled: declaration };\n }\n\n const detailedDeclaration: { enabled: boolean; pathToPlugin?: string } = {\n enabled: declaration.enabled,\n };\n\n if (declaration?.resolve) {\n let pathToPlugin = '';\n\n if (declaration.isModule) {\n /**\n * we only want the node_module here, not the package.json\n */\n pathToPlugin = join(declaration.resolve, '..');\n } else {\n try {\n pathToPlugin = dirname(require.resolve(declaration.resolve));\n } catch (e) {\n pathToPlugin = resolve(strapi.dirs.app.root, declaration.resolve);\n\n if (!existsSync(pathToPlugin) || !statSync(pathToPlugin).isDirectory()) {\n throw new Error(`${declaration.resolve} couldn't be resolved`);\n }\n }\n }\n\n detailedDeclaration.pathToPlugin = pathToPlugin;\n }\n\n return detailedDeclaration;\n};\n\nexport const getEnabledPlugins = async (strapi: Strapi, { client } = { client: false }) => {\n const internalPlugins: PluginMetas = {};\n\n for (const dep of INTERNAL_PLUGINS) {\n const packagePath = join(dep, 'package.json');\n const packageInfo = require(packagePath);\n\n validatePluginName(packageInfo.strapi.name);\n internalPlugins[packageInfo.strapi.name] = {\n ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),\n info: packageInfo.strapi,\n };\n }\n\n const installedPlugins: PluginMetas = {};\n const dependencies = strapi.config.get('info.dependencies', {});\n\n for (const dep of Object.keys(dependencies)) {\n const packagePath = join(dep, 'package.json');\n let packageInfo;\n try {\n packageInfo = require(packagePath);\n } catch {\n continue;\n }\n\n if (isStrapiPlugin(packageInfo)) {\n validatePluginName(packageInfo.strapi.name);\n installedPlugins[packageInfo.strapi.name] = {\n ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),\n info: {\n ...packageInfo.strapi,\n packageName: packageInfo.name,\n },\n };\n }\n }\n\n const declaredPlugins: PluginMetas = {};\n const userPluginsConfig = await getUserPluginsConfig();\n\n _.forEach(userPluginsConfig, (declaration, pluginName) => {\n validatePluginName(pluginName);\n\n declaredPlugins[pluginName] = {\n ...toDetailedDeclaration(declaration),\n info: {},\n };\n\n const { pathToPlugin } = declaredPlugins[pluginName];\n\n // for manually resolved plugins\n if (pathToPlugin) {\n const packagePath = join(pathToPlugin, 'package.json');\n const packageInfo = require(packagePath);\n\n if (isStrapiPlugin(packageInfo)) {\n declaredPlugins[pluginName].info = packageInfo.strapi || {};\n }\n }\n });\n\n const declaredPluginsResolves = map(prop('pathToPlugin'), declaredPlugins);\n const installedPluginsNotAlreadyUsed = pickBy(\n (p) => !declaredPluginsResolves.includes(p.pathToPlugin),\n installedPlugins\n );\n\n const enabledPlugins = pipe(\n defaultsDeep(declaredPlugins),\n defaultsDeep(installedPluginsNotAlreadyUsed),\n pickBy((p: PluginMeta) => p.enabled)\n )(internalPlugins);\n\n return enabledPlugins;\n};\n"],"names":["get","strings","join","dirname","resolve","existsSync","statSync","strapi","getUserPluginsConfig","_","map","prop","pickBy","pipe","defaultsDeep"],"mappings":"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"}
|
@@ -2,17 +2,19 @@ import { join, dirname, resolve } from "path";
|
|
2
2
|
import { existsSync, statSync } from "fs";
|
3
3
|
import _ from "lodash";
|
4
4
|
import { map, prop, pickBy, pipe, defaultsDeep, get } from "lodash/fp";
|
5
|
-
import {
|
5
|
+
import { strings } from "@strapi/utils";
|
6
6
|
import { getUserPluginsConfig } from "./get-user-plugins-config.mjs";
|
7
7
|
const INTERNAL_PLUGINS = [
|
8
8
|
"@strapi/plugin-content-manager",
|
9
9
|
"@strapi/plugin-content-type-builder",
|
10
10
|
"@strapi/plugin-email",
|
11
|
-
"@strapi/plugin-upload"
|
11
|
+
"@strapi/plugin-upload",
|
12
|
+
"@strapi/plugin-i18n",
|
13
|
+
"@strapi/content-releases"
|
12
14
|
];
|
13
15
|
const isStrapiPlugin = (info) => get("strapi.kind", info) === "plugin";
|
14
16
|
const validatePluginName = (pluginName) => {
|
15
|
-
if (!isKebabCase(pluginName)) {
|
17
|
+
if (!strings.isKebabCase(pluginName)) {
|
16
18
|
throw new Error(`Plugin name "${pluginName}" is not in kebab (an-example-of-kebab-case)`);
|
17
19
|
}
|
18
20
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-enabled-plugins.mjs","sources":["../../../src/loaders/plugins/get-enabled-plugins.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-var-requires */\nimport { dirname, join, resolve } from 'path';\nimport { statSync, existsSync } from 'fs';\nimport _ from 'lodash';\nimport { get, pickBy, defaultsDeep, map, prop, pipe } from 'lodash/fp';\nimport { strings } from '@strapi/utils';\nimport type { Strapi } from '@strapi/types';\nimport { getUserPluginsConfig } from './get-user-plugins-config';\n\ninterface PluginMeta {\n enabled: boolean;\n pathToPlugin?: string;\n info: Record<string, unknown>;\n}\n\ntype PluginMetas = Record<string, PluginMeta>;\n\ninterface PluginInfo {\n name: string;\n kind: string;\n}\n\ninterface PluginDeclaration {\n enabled: boolean;\n resolve: string;\n isModule: boolean;\n}\n\n/**\n * otherwise known as \"core features\"\n */\nconst INTERNAL_PLUGINS = [\n '@strapi/plugin-content-manager',\n '@strapi/plugin-content-type-builder',\n '@strapi/plugin-email',\n '@strapi/plugin-upload',\n '@strapi/plugin-i18n',\n '@strapi/content-releases',\n];\n\nconst isStrapiPlugin = (info: PluginInfo) => get('strapi.kind', info) === 'plugin';\n\nconst validatePluginName = (pluginName: string) => {\n if (!strings.isKebabCase(pluginName)) {\n throw new Error(`Plugin name \"${pluginName}\" is not in kebab (an-example-of-kebab-case)`);\n }\n};\n\nconst toDetailedDeclaration = (declaration: boolean | PluginDeclaration) => {\n if (typeof declaration === 'boolean') {\n return { enabled: declaration };\n }\n\n const detailedDeclaration: { enabled: boolean; pathToPlugin?: string } = {\n enabled: declaration.enabled,\n };\n\n if (declaration?.resolve) {\n let pathToPlugin = '';\n\n if (declaration.isModule) {\n /**\n * we only want the node_module here, not the package.json\n */\n pathToPlugin = join(declaration.resolve, '..');\n } else {\n try {\n pathToPlugin = dirname(require.resolve(declaration.resolve));\n } catch (e) {\n pathToPlugin = resolve(strapi.dirs.app.root, declaration.resolve);\n\n if (!existsSync(pathToPlugin) || !statSync(pathToPlugin).isDirectory()) {\n throw new Error(`${declaration.resolve} couldn't be resolved`);\n }\n }\n }\n\n detailedDeclaration.pathToPlugin = pathToPlugin;\n }\n\n return detailedDeclaration;\n};\n\nexport const getEnabledPlugins = async (strapi: Strapi, { client } = { client: false }) => {\n const internalPlugins: PluginMetas = {};\n\n for (const dep of INTERNAL_PLUGINS) {\n const packagePath = join(dep, 'package.json');\n const packageInfo = require(packagePath);\n\n validatePluginName(packageInfo.strapi.name);\n internalPlugins[packageInfo.strapi.name] = {\n ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),\n info: packageInfo.strapi,\n };\n }\n\n const installedPlugins: PluginMetas = {};\n const dependencies = strapi.config.get('info.dependencies', {});\n\n for (const dep of Object.keys(dependencies)) {\n const packagePath = join(dep, 'package.json');\n let packageInfo;\n try {\n packageInfo = require(packagePath);\n } catch {\n continue;\n }\n\n if (isStrapiPlugin(packageInfo)) {\n validatePluginName(packageInfo.strapi.name);\n installedPlugins[packageInfo.strapi.name] = {\n ...toDetailedDeclaration({ enabled: true, resolve: packagePath, isModule: client }),\n info: {\n ...packageInfo.strapi,\n packageName: packageInfo.name,\n },\n };\n }\n }\n\n const declaredPlugins: PluginMetas = {};\n const userPluginsConfig = await getUserPluginsConfig();\n\n _.forEach(userPluginsConfig, (declaration, pluginName) => {\n validatePluginName(pluginName);\n\n declaredPlugins[pluginName] = {\n ...toDetailedDeclaration(declaration),\n info: {},\n };\n\n const { pathToPlugin } = declaredPlugins[pluginName];\n\n // for manually resolved plugins\n if (pathToPlugin) {\n const packagePath = join(pathToPlugin, 'package.json');\n const packageInfo = require(packagePath);\n\n if (isStrapiPlugin(packageInfo)) {\n declaredPlugins[pluginName].info = packageInfo.strapi || {};\n }\n }\n });\n\n const declaredPluginsResolves = map(prop('pathToPlugin'), declaredPlugins);\n const installedPluginsNotAlreadyUsed = pickBy(\n (p) => !declaredPluginsResolves.includes(p.pathToPlugin),\n installedPlugins\n );\n\n const enabledPlugins = pipe(\n defaultsDeep(declaredPlugins),\n defaultsDeep(installedPluginsNotAlreadyUsed),\n pickBy((p: PluginMeta) => p.enabled)\n )(internalPlugins);\n\n return enabledPlugins;\n};\n"],"names":["strapi"],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-user-plugins-config.d.ts","sourceRoot":"","sources":["../../../src/loaders/plugins/get-user-plugins-config.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,mBAqBhC,CAAC"}
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const path = require("path");
|
4
4
|
const fse = require("fs-extra");
|
5
5
|
const _ = require("lodash/fp");
|
6
|
-
const loadConfigFile = require("../../
|
6
|
+
const loadConfigFile = require("../../utils/load-config-file.js");
|
7
7
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
8
8
|
const fse__default = /* @__PURE__ */ _interopDefault(fse);
|
9
9
|
const getUserPluginsConfig = async () => {
|
@@ -16,10 +16,10 @@ const getUserPluginsConfig = async () => {
|
|
16
16
|
);
|
17
17
|
let config = {};
|
18
18
|
if (await fse__default.default.pathExists(globalUserConfigPath)) {
|
19
|
-
config = loadConfigFile.
|
19
|
+
config = loadConfigFile.loadConfigFile(globalUserConfigPath);
|
20
20
|
}
|
21
21
|
if (await fse__default.default.pathExists(currentEnvUserConfigPath)) {
|
22
|
-
config = _.merge(config, loadConfigFile.
|
22
|
+
config = _.merge(config, loadConfigFile.loadConfigFile(currentEnvUserConfigPath));
|
23
23
|
}
|
24
24
|
return config;
|
25
25
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-user-plugins-config.js","sources":["../../../src/loaders/plugins/get-user-plugins-config.ts"],"sourcesContent":["import { join } from 'path';\nimport fse from 'fs-extra';\nimport { merge } from 'lodash/fp';\nimport { loadConfigFile } from '../../utils/load-config-file';\n\n/**\n * Return user defined plugins' config\n * first load config from `config/plugins.js`\n * and then merge config from `config/env/{env}/plugins.js`\n */\nexport const getUserPluginsConfig = async () => {\n const globalUserConfigPath = join(strapi.dirs.dist.config, 'plugins.js');\n const currentEnvUserConfigPath = join(\n strapi.dirs.dist.config,\n 'env',\n process.env.NODE_ENV as string,\n 'plugins.js'\n );\n let config = {};\n\n // assign global user config if exists\n if (await fse.pathExists(globalUserConfigPath)) {\n config = loadConfigFile(globalUserConfigPath);\n }\n\n // and merge user config by environment if exists\n if (await fse.pathExists(currentEnvUserConfigPath)) {\n config = merge(config, loadConfigFile(currentEnvUserConfigPath));\n }\n\n return config;\n};\n"],"names":["join","fse","loadConfigFile","merge"],"mappings":";;;;;;;;AAUO,MAAM,uBAAuB,YAAY;AAC9C,QAAM,uBAAuBA,KAAAA,KAAK,OAAO,KAAK,KAAK,QAAQ,YAAY;AACvE,QAAM,2BAA2BA,KAAA;AAAA,IAC/B,OAAO,KAAK,KAAK;AAAA,IACjB;AAAA,IACA,QAAQ,IAAI;AAAA,IACZ;AAAA,EAAA;AAEF,MAAI,SAAS,CAAA;AAGb,MAAI,MAAMC,aAAA,QAAI,WAAW,oBAAoB,GAAG;AAC9C,aAASC,eAAAA,eAAe,oBAAoB;AAAA,EAC9C;AAGA,MAAI,MAAMD,aAAA,QAAI,WAAW,wBAAwB,GAAG;AAClD,aAASE,EAAAA,MAAM,QAAQD,eAAAA,eAAe,wBAAwB,CAAC;AAAA,EACjE;AAEO,SAAA;AACT;;"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { join } from "path";
|
2
2
|
import fse from "fs-extra";
|
3
3
|
import { merge } from "lodash/fp";
|
4
|
-
import {
|
4
|
+
import { loadConfigFile } from "../../utils/load-config-file.mjs";
|
5
5
|
const getUserPluginsConfig = async () => {
|
6
6
|
const globalUserConfigPath = join(strapi.dirs.dist.config, "plugins.js");
|
7
7
|
const currentEnvUserConfigPath = join(
|
@@ -12,10 +12,10 @@ const getUserPluginsConfig = async () => {
|
|
12
12
|
);
|
13
13
|
let config = {};
|
14
14
|
if (await fse.pathExists(globalUserConfigPath)) {
|
15
|
-
config =
|
15
|
+
config = loadConfigFile(globalUserConfigPath);
|
16
16
|
}
|
17
17
|
if (await fse.pathExists(currentEnvUserConfigPath)) {
|
18
|
-
config = merge(config,
|
18
|
+
config = merge(config, loadConfigFile(currentEnvUserConfigPath));
|
19
19
|
}
|
20
20
|
return config;
|
21
21
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"get-user-plugins-config.mjs","sources":["../../../src/loaders/plugins/get-user-plugins-config.ts"],"sourcesContent":["import { join } from 'path';\nimport fse from 'fs-extra';\nimport { merge } from 'lodash/fp';\nimport { loadConfigFile } from '../../utils/load-config-file';\n\n/**\n * Return user defined plugins' config\n * first load config from `config/plugins.js`\n * and then merge config from `config/env/{env}/plugins.js`\n */\nexport const getUserPluginsConfig = async () => {\n const globalUserConfigPath = join(strapi.dirs.dist.config, 'plugins.js');\n const currentEnvUserConfigPath = join(\n strapi.dirs.dist.config,\n 'env',\n process.env.NODE_ENV as string,\n 'plugins.js'\n );\n let config = {};\n\n // assign global user config if exists\n if (await fse.pathExists(globalUserConfigPath)) {\n config = loadConfigFile(globalUserConfigPath);\n }\n\n // and merge user config by environment if exists\n if (await fse.pathExists(currentEnvUserConfigPath)) {\n config = merge(config, loadConfigFile(currentEnvUserConfigPath));\n }\n\n return config;\n};\n"],"names":[],"mappings":";;;;AAUO,MAAM,uBAAuB,YAAY;AAC9C,QAAM,uBAAuB,KAAK,OAAO,KAAK,KAAK,QAAQ,YAAY;AACvE,QAAM,2BAA2B;AAAA,IAC/B,OAAO,KAAK,KAAK;AAAA,IACjB;AAAA,IACA,QAAQ,IAAI;AAAA,IACZ;AAAA,EAAA;AAEF,MAAI,SAAS,CAAA;AAGb,MAAI,MAAM,IAAI,WAAW,oBAAoB,GAAG;AAC9C,aAAS,eAAe,oBAAoB;AAAA,EAC9C;AAGA,MAAI,MAAM,IAAI,WAAW,wBAAwB,GAAG;AAClD,aAAS,MAAM,QAAQ,eAAe,wBAAwB,CAAC;AAAA,EACjE;AAEO,SAAA;AACT;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/loaders/plugins/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,eAAe,CAAC;AAiF5D,wBAA8B,WAAW,CAAC,MAAM,EAAE,MAAM,iBA0CvD"}
|
@@ -3,10 +3,11 @@ const path = require("path");
|
|
3
3
|
const fse = require("fs-extra");
|
4
4
|
const _ = require("lodash/fp");
|
5
5
|
const strapiUtils = require("@strapi/utils");
|
6
|
-
const loadConfigFile = require("../../
|
7
|
-
const loadFiles = require("
|
6
|
+
const loadConfigFile = require("../../utils/load-config-file.js");
|
7
|
+
const loadFiles = require("../../utils/load-files.js");
|
8
8
|
const getEnabledPlugins = require("./get-enabled-plugins.js");
|
9
9
|
const getUserPluginsConfig = require("./get-user-plugins-config.js");
|
10
|
+
const index = require("../../domain/content-type/index.js");
|
10
11
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
11
12
|
const fse__default = /* @__PURE__ */ _interopDefault(fse);
|
12
13
|
const defaultPlugin = {
|
@@ -33,8 +34,8 @@ const applyUserExtension = async (plugins) => {
|
|
33
34
|
if (!await fse__default.default.pathExists(extensionsDir)) {
|
34
35
|
return;
|
35
36
|
}
|
36
|
-
const extendedSchemas = await loadFiles(extensionsDir, "**/content-types/**/schema.json");
|
37
|
-
const strapiServers = await loadFiles(extensionsDir, "**/strapi-server.js");
|
37
|
+
const extendedSchemas = await loadFiles.loadFiles(extensionsDir, "**/content-types/**/schema.json");
|
38
|
+
const strapiServers = await loadFiles.loadFiles(extensionsDir, "**/strapi-server.js");
|
38
39
|
for (const pluginName of Object.keys(plugins)) {
|
39
40
|
const plugin = plugins[pluginName];
|
40
41
|
for (const ctName of Object.keys(plugin.contentTypes)) {
|
@@ -87,10 +88,11 @@ async function loadPlugins(strapi2) {
|
|
87
88
|
if (!await fse__default.default.pathExists(serverEntrypointPath)) {
|
88
89
|
continue;
|
89
90
|
}
|
90
|
-
const pluginServer = loadConfigFile.
|
91
|
+
const pluginServer = loadConfigFile.loadConfigFile(serverEntrypointPath);
|
91
92
|
plugins[pluginName] = {
|
92
93
|
...defaultPlugin,
|
93
94
|
...pluginServer,
|
95
|
+
contentTypes: formatContentTypes(pluginName, pluginServer.contentTypes ?? {}),
|
94
96
|
config: _.defaults(defaultPlugin.config, pluginServer.config),
|
95
97
|
routes: pluginServer.routes ?? defaultPlugin.routes
|
96
98
|
};
|
@@ -101,5 +103,16 @@ async function loadPlugins(strapi2) {
|
|
101
103
|
strapi2.get("plugins").add(pluginName, plugins[pluginName]);
|
102
104
|
}
|
103
105
|
}
|
106
|
+
const formatContentTypes = (pluginName, contentTypes) => {
|
107
|
+
Object.values(contentTypes).forEach((definition) => {
|
108
|
+
const { schema } = definition;
|
109
|
+
Object.assign(schema, {
|
110
|
+
plugin: pluginName,
|
111
|
+
collectionName: schema.collectionName || `${pluginName}_${schema.info.singularName}`.toLowerCase(),
|
112
|
+
globalId: index.getGlobalId(schema, pluginName)
|
113
|
+
});
|
114
|
+
});
|
115
|
+
return contentTypes;
|
116
|
+
};
|
104
117
|
module.exports = loadPlugins;
|
105
118
|
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/loaders/plugins/index.ts"],"sourcesContent":["import { join } from 'path';\nimport fse from 'fs-extra';\nimport { defaultsDeep, defaults, getOr, get } from 'lodash/fp';\nimport { env } from '@strapi/utils';\nimport type { Strapi, Plugin, Schema } from '@strapi/types';\nimport { loadConfigFile } from '../../utils/load-config-file';\nimport { loadFiles } from '../../utils/load-files';\nimport { getEnabledPlugins } from './get-enabled-plugins';\nimport { getUserPluginsConfig } from './get-user-plugins-config';\nimport { getGlobalId } from '../../domain/content-type';\n\ninterface Plugins {\n [key: string]: Plugin.LoadedPlugin;\n}\n\nconst defaultPlugin = {\n bootstrap() {},\n destroy() {},\n register() {},\n config: {\n default: {},\n validator() {},\n },\n routes: [],\n controllers: {},\n services: {},\n policies: {},\n middlewares: {},\n contentTypes: {},\n};\n\nconst applyUserExtension = async (plugins: Plugins) => {\n const extensionsDir = strapi.dirs.dist.extensions;\n if (!(await fse.pathExists(extensionsDir))) {\n return;\n }\n\n const extendedSchemas = await loadFiles(extensionsDir, '**/content-types/**/schema.json');\n const strapiServers = await loadFiles(extensionsDir, '**/strapi-server.js');\n\n for (const pluginName of Object.keys(plugins)) {\n const plugin = plugins[pluginName];\n // first: load json schema\n for (const ctName of Object.keys(plugin.contentTypes)) {\n const extendedSchema = get([pluginName, 'content-types', ctName, 'schema'], extendedSchemas);\n if (extendedSchema) {\n plugin.contentTypes[ctName].schema = {\n ...plugin.contentTypes[ctName].schema,\n ...extendedSchema,\n };\n }\n }\n // second: execute strapi-server extension\n const strapiServer = get([pluginName, 'strapi-server'], strapiServers);\n if (strapiServer) {\n plugins[pluginName] = await strapiServer(plugin);\n }\n }\n};\n\nconst applyUserConfig = async (plugins: Plugins) => {\n const userPluginsConfig = await getUserPluginsConfig();\n\n for (const pluginName of Object.keys(plugins)) {\n const plugin = plugins[pluginName];\n const userPluginConfig = getOr({}, `${pluginName}.config`, userPluginsConfig);\n const defaultConfig =\n typeof plugin.config.default === 'function'\n ? plugin.config.default({ env })\n : plugin.config.default;\n\n const config = defaultsDeep(defaultConfig, userPluginConfig);\n try {\n plugin.config.validator(config);\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Error regarding ${pluginName} config: ${e.message}`);\n }\n\n throw e;\n }\n plugin.config = config;\n }\n};\n\nexport default async function loadPlugins(strapi: Strapi) {\n const plugins: Plugins = {};\n\n const enabledPlugins = await getEnabledPlugins(strapi);\n\n strapi.config.set('enabledPlugins', enabledPlugins);\n\n for (const pluginName of Object.keys(enabledPlugins)) {\n const enabledPlugin = enabledPlugins[pluginName];\n\n let serverEntrypointPath;\n\n try {\n serverEntrypointPath = join(enabledPlugin.pathToPlugin, 'strapi-server.js');\n } catch (e) {\n throw new Error(\n `Error loading the plugin ${pluginName} because ${pluginName} is not installed. Please either install the plugin or remove it's configuration.`\n );\n }\n\n // only load plugins with a server entrypoint\n if (!(await fse.pathExists(serverEntrypointPath))) {\n continue;\n }\n\n const pluginServer = loadConfigFile(serverEntrypointPath);\n plugins[pluginName] = {\n ...defaultPlugin,\n ...pluginServer,\n contentTypes: formatContentTypes(pluginName, pluginServer.contentTypes ?? {}),\n config: defaults(defaultPlugin.config, pluginServer.config),\n routes: pluginServer.routes ?? defaultPlugin.routes,\n };\n }\n\n // TODO: validate plugin format\n await applyUserConfig(plugins);\n await applyUserExtension(plugins);\n\n for (const pluginName of Object.keys(plugins)) {\n strapi.get('plugins').add(pluginName, plugins[pluginName]);\n }\n}\n\nconst formatContentTypes = (\n pluginName: string,\n contentTypes: Record<string, { schema: Schema.ContentType }>\n) => {\n Object.values(contentTypes).forEach((definition) => {\n const { schema } = definition;\n\n Object.assign(schema, {\n plugin: pluginName,\n collectionName:\n schema.collectionName || `${pluginName}_${schema.info.singularName}`.toLowerCase(),\n globalId: getGlobalId(schema, pluginName),\n });\n });\n\n return contentTypes;\n};\n"],"names":["fse","loadFiles","get","getUserPluginsConfig","getOr","env","defaultsDeep","strapi","getEnabledPlugins","join","loadConfigFile","defaults","getGlobalId"],"mappings":"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"}
|
@@ -2,10 +2,11 @@ import { join } from "path";
|
|
2
2
|
import fse from "fs-extra";
|
3
3
|
import { defaults, get, getOr, defaultsDeep } from "lodash/fp";
|
4
4
|
import { env } from "@strapi/utils";
|
5
|
-
import {
|
6
|
-
import loadFiles from "
|
5
|
+
import { loadConfigFile } from "../../utils/load-config-file.mjs";
|
6
|
+
import { loadFiles } from "../../utils/load-files.mjs";
|
7
7
|
import { getEnabledPlugins } from "./get-enabled-plugins.mjs";
|
8
8
|
import { getUserPluginsConfig } from "./get-user-plugins-config.mjs";
|
9
|
+
import { getGlobalId } from "../../domain/content-type/index.mjs";
|
9
10
|
const defaultPlugin = {
|
10
11
|
bootstrap() {
|
11
12
|
},
|
@@ -84,10 +85,11 @@ async function loadPlugins(strapi2) {
|
|
84
85
|
if (!await fse.pathExists(serverEntrypointPath)) {
|
85
86
|
continue;
|
86
87
|
}
|
87
|
-
const pluginServer =
|
88
|
+
const pluginServer = loadConfigFile(serverEntrypointPath);
|
88
89
|
plugins[pluginName] = {
|
89
90
|
...defaultPlugin,
|
90
91
|
...pluginServer,
|
92
|
+
contentTypes: formatContentTypes(pluginName, pluginServer.contentTypes ?? {}),
|
91
93
|
config: defaults(defaultPlugin.config, pluginServer.config),
|
92
94
|
routes: pluginServer.routes ?? defaultPlugin.routes
|
93
95
|
};
|
@@ -98,6 +100,17 @@ async function loadPlugins(strapi2) {
|
|
98
100
|
strapi2.get("plugins").add(pluginName, plugins[pluginName]);
|
99
101
|
}
|
100
102
|
}
|
103
|
+
const formatContentTypes = (pluginName, contentTypes) => {
|
104
|
+
Object.values(contentTypes).forEach((definition) => {
|
105
|
+
const { schema } = definition;
|
106
|
+
Object.assign(schema, {
|
107
|
+
plugin: pluginName,
|
108
|
+
collectionName: schema.collectionName || `${pluginName}_${schema.info.singularName}`.toLowerCase(),
|
109
|
+
globalId: getGlobalId(schema, pluginName)
|
110
|
+
});
|
111
|
+
});
|
112
|
+
return contentTypes;
|
113
|
+
};
|
101
114
|
export {
|
102
115
|
loadPlugins as default
|
103
116
|
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../src/loaders/plugins/index.ts"],"sourcesContent":["import { join } from 'path';\nimport fse from 'fs-extra';\nimport { defaultsDeep, defaults, getOr, get } from 'lodash/fp';\nimport { env } from '@strapi/utils';\nimport type { Strapi, Plugin, Schema } from '@strapi/types';\nimport { loadConfigFile } from '../../utils/load-config-file';\nimport { loadFiles } from '../../utils/load-files';\nimport { getEnabledPlugins } from './get-enabled-plugins';\nimport { getUserPluginsConfig } from './get-user-plugins-config';\nimport { getGlobalId } from '../../domain/content-type';\n\ninterface Plugins {\n [key: string]: Plugin.LoadedPlugin;\n}\n\nconst defaultPlugin = {\n bootstrap() {},\n destroy() {},\n register() {},\n config: {\n default: {},\n validator() {},\n },\n routes: [],\n controllers: {},\n services: {},\n policies: {},\n middlewares: {},\n contentTypes: {},\n};\n\nconst applyUserExtension = async (plugins: Plugins) => {\n const extensionsDir = strapi.dirs.dist.extensions;\n if (!(await fse.pathExists(extensionsDir))) {\n return;\n }\n\n const extendedSchemas = await loadFiles(extensionsDir, '**/content-types/**/schema.json');\n const strapiServers = await loadFiles(extensionsDir, '**/strapi-server.js');\n\n for (const pluginName of Object.keys(plugins)) {\n const plugin = plugins[pluginName];\n // first: load json schema\n for (const ctName of Object.keys(plugin.contentTypes)) {\n const extendedSchema = get([pluginName, 'content-types', ctName, 'schema'], extendedSchemas);\n if (extendedSchema) {\n plugin.contentTypes[ctName].schema = {\n ...plugin.contentTypes[ctName].schema,\n ...extendedSchema,\n };\n }\n }\n // second: execute strapi-server extension\n const strapiServer = get([pluginName, 'strapi-server'], strapiServers);\n if (strapiServer) {\n plugins[pluginName] = await strapiServer(plugin);\n }\n }\n};\n\nconst applyUserConfig = async (plugins: Plugins) => {\n const userPluginsConfig = await getUserPluginsConfig();\n\n for (const pluginName of Object.keys(plugins)) {\n const plugin = plugins[pluginName];\n const userPluginConfig = getOr({}, `${pluginName}.config`, userPluginsConfig);\n const defaultConfig =\n typeof plugin.config.default === 'function'\n ? plugin.config.default({ env })\n : plugin.config.default;\n\n const config = defaultsDeep(defaultConfig, userPluginConfig);\n try {\n plugin.config.validator(config);\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Error regarding ${pluginName} config: ${e.message}`);\n }\n\n throw e;\n }\n plugin.config = config;\n }\n};\n\nexport default async function loadPlugins(strapi: Strapi) {\n const plugins: Plugins = {};\n\n const enabledPlugins = await getEnabledPlugins(strapi);\n\n strapi.config.set('enabledPlugins', enabledPlugins);\n\n for (const pluginName of Object.keys(enabledPlugins)) {\n const enabledPlugin = enabledPlugins[pluginName];\n\n let serverEntrypointPath;\n\n try {\n serverEntrypointPath = join(enabledPlugin.pathToPlugin, 'strapi-server.js');\n } catch (e) {\n throw new Error(\n `Error loading the plugin ${pluginName} because ${pluginName} is not installed. Please either install the plugin or remove it's configuration.`\n );\n }\n\n // only load plugins with a server entrypoint\n if (!(await fse.pathExists(serverEntrypointPath))) {\n continue;\n }\n\n const pluginServer = loadConfigFile(serverEntrypointPath);\n plugins[pluginName] = {\n ...defaultPlugin,\n ...pluginServer,\n contentTypes: formatContentTypes(pluginName, pluginServer.contentTypes ?? {}),\n config: defaults(defaultPlugin.config, pluginServer.config),\n routes: pluginServer.routes ?? defaultPlugin.routes,\n };\n }\n\n // TODO: validate plugin format\n await applyUserConfig(plugins);\n await applyUserExtension(plugins);\n\n for (const pluginName of Object.keys(plugins)) {\n strapi.get('plugins').add(pluginName, plugins[pluginName]);\n }\n}\n\nconst formatContentTypes = (\n pluginName: string,\n contentTypes: Record<string, { schema: Schema.ContentType }>\n) => {\n Object.values(contentTypes).forEach((definition) => {\n const { schema } = definition;\n\n Object.assign(schema, {\n plugin: pluginName,\n collectionName:\n schema.collectionName || `${pluginName}_${schema.info.singularName}`.toLowerCase(),\n globalId: getGlobalId(schema, pluginName),\n });\n });\n\n return contentTypes;\n};\n"],"names":["strapi"],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"policies.d.ts","sourceRoot":"","sources":["../../src/loaders/policies.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAU,MAAM,eAAe,CAAC;AAGpD,wBAA8B,YAAY,CAAC,MAAM,EAAE,MAAM,iBAqBxD"}
|