@strapi/core 0.0.0-experimental.e02b4637b3906c6d31048d00600d09a23a0edc3d → 0.0.0-experimental.e100737b0ed96d0d80a5c6f4925c7374e63a342a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Strapi.d.ts.map +1 -1
- package/dist/Strapi.js +427 -403
- package/dist/Strapi.js.map +1 -1
- package/dist/Strapi.mjs +426 -402
- package/dist/Strapi.mjs.map +1 -1
- package/dist/compile.js +23 -14
- package/dist/compile.js.map +1 -1
- package/dist/compile.mjs +22 -14
- package/dist/compile.mjs.map +1 -1
- package/dist/configuration/config-loader.js +110 -97
- package/dist/configuration/config-loader.js.map +1 -1
- package/dist/configuration/config-loader.mjs +109 -96
- package/dist/configuration/config-loader.mjs.map +1 -1
- package/dist/configuration/get-dirs.js +31 -29
- package/dist/configuration/get-dirs.js.map +1 -1
- package/dist/configuration/get-dirs.mjs +30 -30
- package/dist/configuration/get-dirs.mjs.map +1 -1
- package/dist/configuration/index.d.ts.map +1 -1
- package/dist/configuration/index.js +84 -73
- package/dist/configuration/index.js.map +1 -1
- package/dist/configuration/index.mjs +83 -69
- package/dist/configuration/index.mjs.map +1 -1
- package/dist/configuration/urls.js +65 -61
- package/dist/configuration/urls.js.map +1 -1
- package/dist/configuration/urls.mjs +64 -62
- package/dist/configuration/urls.mjs.map +1 -1
- package/dist/container.js +27 -23
- package/dist/container.js.map +1 -1
- package/dist/container.mjs +26 -24
- package/dist/container.mjs.map +1 -1
- package/dist/core-api/controller/collection-type.js +77 -76
- package/dist/core-api/controller/collection-type.js.map +1 -1
- package/dist/core-api/controller/collection-type.mjs +76 -77
- package/dist/core-api/controller/collection-type.mjs.map +1 -1
- package/dist/core-api/controller/index.js +63 -48
- package/dist/core-api/controller/index.js.map +1 -1
- package/dist/core-api/controller/index.mjs +62 -49
- package/dist/core-api/controller/index.mjs.map +1 -1
- package/dist/core-api/controller/single-type.js +41 -40
- package/dist/core-api/controller/single-type.js.map +1 -1
- package/dist/core-api/controller/single-type.mjs +40 -41
- package/dist/core-api/controller/single-type.mjs.map +1 -1
- package/dist/core-api/controller/transform.js +72 -63
- package/dist/core-api/controller/transform.js.map +1 -1
- package/dist/core-api/controller/transform.mjs +71 -64
- package/dist/core-api/controller/transform.mjs.map +1 -1
- package/dist/core-api/routes/index.js +64 -62
- package/dist/core-api/routes/index.js.map +1 -1
- package/dist/core-api/routes/index.mjs +62 -62
- package/dist/core-api/routes/index.mjs.map +1 -1
- package/dist/core-api/service/collection-type.js +73 -60
- package/dist/core-api/service/collection-type.js.map +1 -1
- package/dist/core-api/service/collection-type.mjs +72 -62
- package/dist/core-api/service/collection-type.mjs.map +1 -1
- package/dist/core-api/service/core-service.js +9 -8
- package/dist/core-api/service/core-service.js.map +1 -1
- package/dist/core-api/service/core-service.mjs +8 -9
- package/dist/core-api/service/core-service.mjs.map +1 -1
- package/dist/core-api/service/index.js +13 -13
- package/dist/core-api/service/index.js.map +1 -1
- package/dist/core-api/service/index.mjs +12 -14
- package/dist/core-api/service/index.mjs.map +1 -1
- package/dist/core-api/service/pagination.js +69 -43
- package/dist/core-api/service/pagination.js.map +1 -1
- package/dist/core-api/service/pagination.mjs +68 -47
- package/dist/core-api/service/pagination.mjs.map +1 -1
- package/dist/core-api/service/single-type.js +43 -39
- package/dist/core-api/service/single-type.js.map +1 -1
- package/dist/core-api/service/single-type.mjs +42 -41
- package/dist/core-api/service/single-type.mjs.map +1 -1
- package/dist/domain/content-type/index.js +95 -100
- package/dist/domain/content-type/index.js.map +1 -1
- package/dist/domain/content-type/index.mjs +94 -100
- package/dist/domain/content-type/index.mjs.map +1 -1
- package/dist/domain/content-type/validator.js +84 -69
- package/dist/domain/content-type/validator.js.map +1 -1
- package/dist/domain/content-type/validator.mjs +83 -68
- package/dist/domain/content-type/validator.mjs.map +1 -1
- package/dist/domain/module/index.js +109 -100
- package/dist/domain/module/index.js.map +1 -1
- package/dist/domain/module/index.mjs +108 -99
- package/dist/domain/module/index.mjs.map +1 -1
- package/dist/domain/module/validation.js +25 -20
- package/dist/domain/module/validation.js.map +1 -1
- package/dist/domain/module/validation.mjs +24 -21
- package/dist/domain/module/validation.mjs.map +1 -1
- package/dist/ee/index.d.ts +1 -0
- package/dist/ee/index.d.ts.map +1 -1
- package/dist/ee/index.js +171 -132
- package/dist/ee/index.js.map +1 -1
- package/dist/ee/index.mjs +170 -134
- package/dist/ee/index.mjs.map +1 -1
- package/dist/ee/license.d.ts.map +1 -1
- package/dist/ee/license.js +99 -75
- package/dist/ee/license.js.map +1 -1
- package/dist/ee/license.mjs +98 -76
- package/dist/ee/license.mjs.map +1 -1
- package/dist/factories.js +72 -67
- package/dist/factories.js.map +1 -1
- package/dist/factories.mjs +71 -71
- package/dist/factories.mjs.map +1 -1
- package/dist/index.js +29 -26
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +29 -29
- package/dist/index.mjs.map +1 -1
- package/dist/loaders/admin.d.ts.map +1 -1
- package/dist/loaders/admin.js +21 -20
- package/dist/loaders/admin.js.map +1 -1
- package/dist/loaders/admin.mjs +20 -20
- package/dist/loaders/admin.mjs.map +1 -1
- package/dist/loaders/apis.js +143 -120
- package/dist/loaders/apis.js.map +1 -1
- package/dist/loaders/apis.mjs +142 -119
- package/dist/loaders/apis.mjs.map +1 -1
- package/dist/loaders/components.js +33 -34
- package/dist/loaders/components.js.map +1 -1
- package/dist/loaders/components.mjs +32 -34
- package/dist/loaders/components.mjs.map +1 -1
- package/dist/loaders/index.js +22 -20
- package/dist/loaders/index.js.map +1 -1
- package/dist/loaders/index.mjs +21 -21
- package/dist/loaders/index.mjs.map +1 -1
- package/dist/loaders/middlewares.js +29 -25
- package/dist/loaders/middlewares.js.map +1 -1
- package/dist/loaders/middlewares.mjs +28 -25
- package/dist/loaders/middlewares.mjs.map +1 -1
- package/dist/loaders/plugins/get-enabled-plugins.js +126 -131
- package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
- package/dist/loaders/plugins/get-enabled-plugins.mjs +125 -108
- package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
- package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
- package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
- package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
- package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
- package/dist/loaders/plugins/index.js +132 -122
- package/dist/loaders/plugins/index.js.map +1 -1
- package/dist/loaders/plugins/index.mjs +121 -112
- package/dist/loaders/plugins/index.mjs.map +1 -1
- package/dist/loaders/policies.js +24 -20
- package/dist/loaders/policies.js.map +1 -1
- package/dist/loaders/policies.mjs +23 -20
- package/dist/loaders/policies.mjs.map +1 -1
- package/dist/loaders/sanitizers.js +10 -4
- package/dist/loaders/sanitizers.js.map +1 -1
- package/dist/loaders/sanitizers.mjs +9 -6
- package/dist/loaders/sanitizers.mjs.map +1 -1
- package/dist/loaders/src-index.js +35 -27
- package/dist/loaders/src-index.js.map +1 -1
- package/dist/loaders/src-index.mjs +34 -29
- package/dist/loaders/src-index.mjs.map +1 -1
- package/dist/loaders/validators.js +9 -4
- package/dist/loaders/validators.js.map +1 -1
- package/dist/loaders/validators.mjs +8 -6
- package/dist/loaders/validators.mjs.map +1 -1
- package/dist/middlewares/body.d.ts.map +1 -1
- package/dist/middlewares/body.js +58 -54
- package/dist/middlewares/body.js.map +1 -1
- package/dist/middlewares/body.mjs +57 -51
- package/dist/middlewares/body.mjs.map +1 -1
- package/dist/middlewares/compression.js +6 -6
- package/dist/middlewares/compression.js.map +1 -1
- package/dist/middlewares/compression.mjs +5 -5
- package/dist/middlewares/compression.mjs.map +1 -1
- package/dist/middlewares/cors.js +59 -48
- package/dist/middlewares/cors.js.map +1 -1
- package/dist/middlewares/cors.mjs +58 -47
- package/dist/middlewares/cors.mjs.map +1 -1
- package/dist/middlewares/errors.js +32 -30
- package/dist/middlewares/errors.js.map +1 -1
- package/dist/middlewares/errors.mjs +31 -31
- package/dist/middlewares/errors.mjs.map +1 -1
- package/dist/middlewares/favicon.js +27 -17
- package/dist/middlewares/favicon.js.map +1 -1
- package/dist/middlewares/favicon.mjs +26 -16
- package/dist/middlewares/favicon.mjs.map +1 -1
- package/dist/middlewares/index.js +32 -30
- package/dist/middlewares/index.js.map +1 -1
- package/dist/middlewares/index.mjs +31 -31
- package/dist/middlewares/index.mjs.map +1 -1
- package/dist/middlewares/ip.js +6 -6
- package/dist/middlewares/ip.js.map +1 -1
- package/dist/middlewares/ip.mjs +5 -5
- package/dist/middlewares/ip.mjs.map +1 -1
- package/dist/middlewares/logger.js +10 -9
- package/dist/middlewares/logger.js.map +1 -1
- package/dist/middlewares/logger.mjs +9 -10
- package/dist/middlewares/logger.mjs.map +1 -1
- package/dist/middlewares/powered-by.js +13 -9
- package/dist/middlewares/powered-by.js.map +1 -1
- package/dist/middlewares/powered-by.mjs +12 -10
- package/dist/middlewares/powered-by.mjs.map +1 -1
- package/dist/middlewares/public.js +33 -29
- package/dist/middlewares/public.js.map +1 -1
- package/dist/middlewares/public.mjs +32 -28
- package/dist/middlewares/public.mjs.map +1 -1
- package/dist/middlewares/query.js +35 -32
- package/dist/middlewares/query.js.map +1 -1
- package/dist/middlewares/query.mjs +34 -31
- package/dist/middlewares/query.mjs.map +1 -1
- package/dist/middlewares/response-time.js +10 -9
- package/dist/middlewares/response-time.js.map +1 -1
- package/dist/middlewares/response-time.mjs +9 -10
- package/dist/middlewares/response-time.mjs.map +1 -1
- package/dist/middlewares/responses.js +14 -12
- package/dist/middlewares/responses.js.map +1 -1
- package/dist/middlewares/responses.mjs +13 -13
- package/dist/middlewares/responses.mjs.map +1 -1
- package/dist/middlewares/security.js +109 -71
- package/dist/middlewares/security.js.map +1 -1
- package/dist/middlewares/security.mjs +108 -70
- package/dist/middlewares/security.mjs.map +1 -1
- package/dist/middlewares/session.js +26 -25
- package/dist/middlewares/session.js.map +1 -1
- package/dist/middlewares/session.mjs +25 -24
- package/dist/middlewares/session.mjs.map +1 -1
- package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
- package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
- package/dist/migrations/database/5.0.0-discard-drafts.js +154 -80
- package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
- package/dist/migrations/database/5.0.0-discard-drafts.mjs +153 -82
- package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
- package/dist/migrations/draft-publish.d.ts +1 -1
- package/dist/migrations/draft-publish.d.ts.map +1 -1
- package/dist/migrations/draft-publish.js +61 -34
- package/dist/migrations/draft-publish.js.map +1 -1
- package/dist/migrations/draft-publish.mjs +60 -36
- package/dist/migrations/draft-publish.mjs.map +1 -1
- package/dist/migrations/i18n.js +62 -45
- package/dist/migrations/i18n.js.map +1 -1
- package/dist/migrations/i18n.mjs +61 -47
- package/dist/migrations/i18n.mjs.map +1 -1
- package/dist/migrations/index.js +24 -10
- package/dist/migrations/index.js.map +1 -1
- package/dist/migrations/index.mjs +23 -12
- package/dist/migrations/index.mjs.map +1 -1
- package/dist/package.json.js +182 -0
- package/dist/package.json.js.map +1 -0
- package/dist/package.json.mjs +159 -0
- package/dist/package.json.mjs.map +1 -0
- package/dist/providers/admin.js +27 -17
- package/dist/providers/admin.js.map +1 -1
- package/dist/providers/admin.mjs +26 -19
- package/dist/providers/admin.mjs.map +1 -1
- package/dist/providers/coreStore.js +13 -8
- package/dist/providers/coreStore.js.map +1 -1
- package/dist/providers/coreStore.mjs +12 -10
- package/dist/providers/coreStore.mjs.map +1 -1
- package/dist/providers/cron.js +19 -16
- package/dist/providers/cron.js.map +1 -1
- package/dist/providers/cron.mjs +18 -18
- package/dist/providers/cron.mjs.map +1 -1
- package/dist/providers/index.js +18 -9
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/index.mjs +17 -10
- package/dist/providers/index.mjs.map +1 -1
- package/dist/providers/provider.js +4 -3
- package/dist/providers/provider.js.map +1 -1
- package/dist/providers/provider.mjs +3 -4
- package/dist/providers/provider.mjs.map +1 -1
- package/dist/providers/registries.js +37 -32
- package/dist/providers/registries.js.map +1 -1
- package/dist/providers/registries.mjs +36 -34
- package/dist/providers/registries.mjs.map +1 -1
- package/dist/providers/telemetry.js +19 -16
- package/dist/providers/telemetry.js.map +1 -1
- package/dist/providers/telemetry.mjs +18 -18
- package/dist/providers/telemetry.mjs.map +1 -1
- package/dist/providers/webhooks.js +28 -26
- package/dist/providers/webhooks.js.map +1 -1
- package/dist/providers/webhooks.mjs +27 -28
- package/dist/providers/webhooks.mjs.map +1 -1
- package/dist/registries/apis.js +23 -20
- package/dist/registries/apis.js.map +1 -1
- package/dist/registries/apis.mjs +22 -22
- package/dist/registries/apis.mjs.map +1 -1
- package/dist/registries/components.js +35 -37
- package/dist/registries/components.js.map +1 -1
- package/dist/registries/components.mjs +34 -39
- package/dist/registries/components.mjs.map +1 -1
- package/dist/registries/content-types.js +54 -59
- package/dist/registries/content-types.js.map +1 -1
- package/dist/registries/content-types.mjs +53 -61
- package/dist/registries/content-types.mjs.map +1 -1
- package/dist/registries/controllers.js +70 -71
- package/dist/registries/controllers.js.map +1 -1
- package/dist/registries/controllers.mjs +69 -73
- package/dist/registries/controllers.mjs.map +1 -1
- package/dist/registries/custom-fields.js +75 -65
- package/dist/registries/custom-fields.js.map +1 -1
- package/dist/registries/custom-fields.mjs +74 -67
- package/dist/registries/custom-fields.mjs.map +1 -1
- package/dist/registries/hooks.js +46 -49
- package/dist/registries/hooks.js.map +1 -1
- package/dist/registries/hooks.mjs +45 -51
- package/dist/registries/hooks.mjs.map +1 -1
- package/dist/registries/middlewares.js +49 -51
- package/dist/registries/middlewares.js.map +1 -1
- package/dist/registries/middlewares.mjs +48 -53
- package/dist/registries/middlewares.mjs.map +1 -1
- package/dist/registries/models.js +14 -13
- package/dist/registries/models.js.map +1 -1
- package/dist/registries/models.mjs +13 -14
- package/dist/registries/models.mjs.map +1 -1
- package/dist/registries/modules.js +39 -36
- package/dist/registries/modules.js.map +1 -1
- package/dist/registries/modules.mjs +38 -38
- package/dist/registries/modules.mjs.map +1 -1
- package/dist/registries/namespace.js +21 -20
- package/dist/registries/namespace.js.map +1 -1
- package/dist/registries/namespace.mjs +20 -23
- package/dist/registries/namespace.mjs.map +1 -1
- package/dist/registries/plugins.js +23 -20
- package/dist/registries/plugins.js.map +1 -1
- package/dist/registries/plugins.mjs +22 -22
- package/dist/registries/plugins.mjs.map +1 -1
- package/dist/registries/policies.js +103 -96
- package/dist/registries/policies.js.map +1 -1
- package/dist/registries/policies.mjs +102 -98
- package/dist/registries/policies.mjs.map +1 -1
- package/dist/registries/sanitizers.js +23 -22
- package/dist/registries/sanitizers.js.map +1 -1
- package/dist/registries/sanitizers.mjs +22 -22
- package/dist/registries/sanitizers.mjs.map +1 -1
- package/dist/registries/services.js +71 -71
- package/dist/registries/services.js.map +1 -1
- package/dist/registries/services.mjs +70 -73
- package/dist/registries/services.mjs.map +1 -1
- package/dist/registries/validators.js +23 -22
- package/dist/registries/validators.js.map +1 -1
- package/dist/registries/validators.mjs +22 -22
- package/dist/registries/validators.mjs.map +1 -1
- package/dist/services/auth/index.js +74 -74
- package/dist/services/auth/index.js.map +1 -1
- package/dist/services/auth/index.mjs +73 -74
- package/dist/services/auth/index.mjs.map +1 -1
- package/dist/services/config.js +47 -43
- package/dist/services/config.js.map +1 -1
- package/dist/services/config.mjs +46 -44
- package/dist/services/config.mjs.map +1 -1
- package/dist/services/content-api/index.js +80 -79
- package/dist/services/content-api/index.js.map +1 -1
- package/dist/services/content-api/index.mjs +79 -79
- package/dist/services/content-api/index.mjs.map +1 -1
- package/dist/services/content-api/permissions/engine.js +8 -5
- package/dist/services/content-api/permissions/engine.js.map +1 -1
- package/dist/services/content-api/permissions/engine.mjs +7 -5
- package/dist/services/content-api/permissions/engine.mjs.map +1 -1
- package/dist/services/content-api/permissions/index.js +101 -81
- package/dist/services/content-api/permissions/index.js.map +1 -1
- package/dist/services/content-api/permissions/index.mjs +100 -81
- package/dist/services/content-api/permissions/index.mjs.map +1 -1
- package/dist/services/content-api/permissions/providers/action.js +17 -14
- package/dist/services/content-api/permissions/providers/action.js.map +1 -1
- package/dist/services/content-api/permissions/providers/action.mjs +16 -16
- package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
- package/dist/services/content-api/permissions/providers/condition.js +17 -14
- package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
- package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
- package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
- package/dist/services/core-store.js +115 -95
- package/dist/services/core-store.js.map +1 -1
- package/dist/services/core-store.mjs +114 -97
- package/dist/services/core-store.mjs.map +1 -1
- package/dist/services/cron.js +74 -60
- package/dist/services/cron.js.map +1 -1
- package/dist/services/cron.mjs +73 -62
- package/dist/services/cron.mjs.map +1 -1
- package/dist/services/custom-fields.js +9 -7
- package/dist/services/custom-fields.js.map +1 -1
- package/dist/services/custom-fields.mjs +8 -9
- package/dist/services/custom-fields.mjs.map +1 -1
- package/dist/services/document-service/attributes/index.js +23 -18
- package/dist/services/document-service/attributes/index.js.map +1 -1
- package/dist/services/document-service/attributes/index.mjs +22 -19
- package/dist/services/document-service/attributes/index.mjs.map +1 -1
- package/dist/services/document-service/attributes/transforms.js +16 -15
- package/dist/services/document-service/attributes/transforms.js.map +1 -1
- package/dist/services/document-service/attributes/transforms.mjs +15 -15
- package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
- package/dist/services/document-service/common.d.ts +1 -1
- package/dist/services/document-service/common.d.ts.map +1 -1
- package/dist/services/document-service/common.js +5 -4
- package/dist/services/document-service/common.js.map +1 -1
- package/dist/services/document-service/common.mjs +4 -5
- package/dist/services/document-service/common.mjs.map +1 -1
- package/dist/services/document-service/components.d.ts.map +1 -1
- package/dist/services/document-service/components.js +255 -257
- package/dist/services/document-service/components.js.map +1 -1
- package/dist/services/document-service/components.mjs +254 -262
- package/dist/services/document-service/components.mjs.map +1 -1
- package/dist/services/document-service/draft-and-publish.d.ts +1 -1
- package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
- package/dist/services/document-service/draft-and-publish.js +88 -48
- package/dist/services/document-service/draft-and-publish.js.map +1 -1
- package/dist/services/document-service/draft-and-publish.mjs +87 -54
- package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
- package/dist/services/document-service/entries.d.ts +2 -2
- package/dist/services/document-service/entries.d.ts.map +1 -1
- package/dist/services/document-service/entries.js +109 -92
- package/dist/services/document-service/entries.js.map +1 -1
- package/dist/services/document-service/entries.mjs +108 -93
- package/dist/services/document-service/entries.mjs.map +1 -1
- package/dist/services/document-service/events.d.ts +1 -1
- package/dist/services/document-service/events.d.ts.map +1 -1
- package/dist/services/document-service/events.js +52 -40
- package/dist/services/document-service/events.js.map +1 -1
- package/dist/services/document-service/events.mjs +51 -41
- package/dist/services/document-service/events.mjs.map +1 -1
- package/dist/services/document-service/index.d.ts +2 -1
- package/dist/services/document-service/index.d.ts.map +1 -1
- package/dist/services/document-service/index.js +53 -32
- package/dist/services/document-service/index.js.map +1 -1
- package/dist/services/document-service/index.mjs +52 -33
- package/dist/services/document-service/index.mjs.map +1 -1
- package/dist/services/document-service/internationalization.js +62 -46
- package/dist/services/document-service/internationalization.js.map +1 -1
- package/dist/services/document-service/internationalization.mjs +61 -50
- package/dist/services/document-service/internationalization.mjs.map +1 -1
- package/dist/services/document-service/middlewares/errors.js +23 -19
- package/dist/services/document-service/middlewares/errors.js.map +1 -1
- package/dist/services/document-service/middlewares/errors.mjs +22 -20
- package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
- package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
- package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
- package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
- package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
- package/dist/services/document-service/params.js +11 -5
- package/dist/services/document-service/params.js.map +1 -1
- package/dist/services/document-service/params.mjs +10 -6
- package/dist/services/document-service/params.mjs.map +1 -1
- package/dist/services/document-service/repository.d.ts.map +1 -1
- package/dist/services/document-service/repository.js +354 -304
- package/dist/services/document-service/repository.js.map +1 -1
- package/dist/services/document-service/repository.mjs +353 -305
- package/dist/services/document-service/repository.mjs.map +1 -1
- package/dist/services/document-service/transform/data.js +22 -12
- package/dist/services/document-service/transform/data.js.map +1 -1
- package/dist/services/document-service/transform/data.mjs +21 -13
- package/dist/services/document-service/transform/data.mjs.map +1 -1
- package/dist/services/document-service/transform/fields.js +26 -17
- package/dist/services/document-service/transform/fields.js.map +1 -1
- package/dist/services/document-service/transform/fields.mjs +25 -18
- package/dist/services/document-service/transform/fields.mjs.map +1 -1
- package/dist/services/document-service/transform/id-map.d.ts +1 -1
- package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
- package/dist/services/document-service/transform/id-map.js +116 -69
- package/dist/services/document-service/transform/id-map.js.map +1 -1
- package/dist/services/document-service/transform/id-map.mjs +115 -70
- package/dist/services/document-service/transform/id-map.mjs.map +1 -1
- package/dist/services/document-service/transform/id-transform.d.ts +1 -1
- package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
- package/dist/services/document-service/transform/id-transform.js +37 -29
- package/dist/services/document-service/transform/id-transform.js.map +1 -1
- package/dist/services/document-service/transform/id-transform.mjs +36 -30
- package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
- package/dist/services/document-service/transform/populate.js +23 -18
- package/dist/services/document-service/transform/populate.js.map +1 -1
- package/dist/services/document-service/transform/populate.mjs +22 -19
- package/dist/services/document-service/transform/populate.mjs.map +1 -1
- package/dist/services/document-service/transform/query.js +11 -6
- package/dist/services/document-service/transform/query.js.map +1 -1
- package/dist/services/document-service/transform/query.mjs +10 -7
- package/dist/services/document-service/transform/query.mjs.map +1 -1
- package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
- package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
- package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
- package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
- package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
- package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
- package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
- package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
- package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
- package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
- package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
- package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
- package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
- package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
- package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
- package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
- package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
- package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
- package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
- package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
- package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
- package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
- package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
- package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
- package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
- package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
- package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
- package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
- package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
- package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
- package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
- package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
- package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
- package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
- package/dist/services/document-service/utils/populate.d.ts +1 -1
- package/dist/services/document-service/utils/populate.d.ts.map +1 -1
- package/dist/services/document-service/utils/populate.js +66 -42
- package/dist/services/document-service/utils/populate.js.map +1 -1
- package/dist/services/document-service/utils/populate.mjs +65 -43
- package/dist/services/document-service/utils/populate.mjs.map +1 -1
- package/dist/services/document-service/utils/unidirectional-relations.d.ts +12 -9
- package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
- package/dist/services/document-service/utils/unidirectional-relations.js +110 -51
- package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
- package/dist/services/document-service/utils/unidirectional-relations.mjs +109 -53
- package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
- package/dist/services/entity-service/index.js +230 -161
- package/dist/services/entity-service/index.js.map +1 -1
- package/dist/services/entity-service/index.mjs +229 -160
- package/dist/services/entity-service/index.mjs.map +1 -1
- package/dist/services/entity-validator/blocks-validator.js +135 -103
- package/dist/services/entity-validator/blocks-validator.js.map +1 -1
- package/dist/services/entity-validator/blocks-validator.mjs +134 -104
- package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
- package/dist/services/entity-validator/index.d.ts +1 -1
- package/dist/services/entity-validator/index.d.ts.map +1 -1
- package/dist/services/entity-validator/index.js +362 -367
- package/dist/services/entity-validator/index.js.map +1 -1
- package/dist/services/entity-validator/index.mjs +358 -364
- package/dist/services/entity-validator/index.mjs.map +1 -1
- package/dist/services/entity-validator/validators.js +268 -210
- package/dist/services/entity-validator/validators.js.map +1 -1
- package/dist/services/entity-validator/validators.mjs +267 -216
- package/dist/services/entity-validator/validators.mjs.map +1 -1
- package/dist/services/errors.js +65 -65
- package/dist/services/errors.js.map +1 -1
- package/dist/services/errors.mjs +64 -66
- package/dist/services/errors.mjs.map +1 -1
- package/dist/services/event-hub.js +82 -69
- package/dist/services/event-hub.js.map +1 -1
- package/dist/services/event-hub.mjs +81 -71
- package/dist/services/event-hub.mjs.map +1 -1
- package/dist/services/features.js +19 -14
- package/dist/services/features.js.map +1 -1
- package/dist/services/features.mjs +18 -15
- package/dist/services/features.mjs.map +1 -1
- package/dist/services/fs.js +41 -40
- package/dist/services/fs.js.map +1 -1
- package/dist/services/fs.mjs +40 -39
- package/dist/services/fs.mjs.map +1 -1
- package/dist/services/metrics/admin-user-hash.js +13 -11
- package/dist/services/metrics/admin-user-hash.js.map +1 -1
- package/dist/services/metrics/admin-user-hash.mjs +12 -10
- package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
- package/dist/services/metrics/index.js +46 -40
- package/dist/services/metrics/index.js.map +1 -1
- package/dist/services/metrics/index.mjs +45 -42
- package/dist/services/metrics/index.mjs.map +1 -1
- package/dist/services/metrics/is-truthy.js +13 -6
- package/dist/services/metrics/is-truthy.js.map +1 -1
- package/dist/services/metrics/is-truthy.mjs +12 -6
- package/dist/services/metrics/is-truthy.mjs.map +1 -1
- package/dist/services/metrics/middleware.d.ts.map +1 -1
- package/dist/services/metrics/middleware.js +37 -22
- package/dist/services/metrics/middleware.js.map +1 -1
- package/dist/services/metrics/middleware.mjs +36 -24
- package/dist/services/metrics/middleware.mjs.map +1 -1
- package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
- package/dist/services/metrics/rate-limiter.js +24 -19
- package/dist/services/metrics/rate-limiter.js.map +1 -1
- package/dist/services/metrics/rate-limiter.mjs +23 -21
- package/dist/services/metrics/rate-limiter.mjs.map +1 -1
- package/dist/services/metrics/sender.js +78 -69
- package/dist/services/metrics/sender.js.map +1 -1
- package/dist/services/metrics/sender.mjs +77 -64
- package/dist/services/metrics/sender.mjs.map +1 -1
- package/dist/services/query-params.js +13 -10
- package/dist/services/query-params.js.map +1 -1
- package/dist/services/query-params.mjs +12 -12
- package/dist/services/query-params.mjs.map +1 -1
- package/dist/services/reloader.js +35 -32
- package/dist/services/reloader.js.map +1 -1
- package/dist/services/reloader.mjs +34 -33
- package/dist/services/reloader.mjs.map +1 -1
- package/dist/services/request-context.js +11 -8
- package/dist/services/request-context.js.map +1 -1
- package/dist/services/request-context.mjs +10 -10
- package/dist/services/request-context.mjs.map +1 -1
- package/dist/services/server/admin-api.js +11 -10
- package/dist/services/server/admin-api.js.map +1 -1
- package/dist/services/server/admin-api.mjs +10 -11
- package/dist/services/server/admin-api.mjs.map +1 -1
- package/dist/services/server/api.js +33 -27
- package/dist/services/server/api.js.map +1 -1
- package/dist/services/server/api.mjs +32 -26
- package/dist/services/server/api.mjs.map +1 -1
- package/dist/services/server/compose-endpoint.js +116 -105
- package/dist/services/server/compose-endpoint.js.map +1 -1
- package/dist/services/server/compose-endpoint.mjs +115 -105
- package/dist/services/server/compose-endpoint.mjs.map +1 -1
- package/dist/services/server/content-api.js +11 -9
- package/dist/services/server/content-api.js.map +1 -1
- package/dist/services/server/content-api.mjs +10 -10
- package/dist/services/server/content-api.mjs.map +1 -1
- package/dist/services/server/http-server.js +48 -44
- package/dist/services/server/http-server.js.map +1 -1
- package/dist/services/server/http-server.mjs +47 -43
- package/dist/services/server/http-server.mjs.map +1 -1
- package/dist/services/server/index.js +85 -82
- package/dist/services/server/index.js.map +1 -1
- package/dist/services/server/index.mjs +84 -81
- package/dist/services/server/index.mjs.map +1 -1
- package/dist/services/server/koa.js +49 -47
- package/dist/services/server/koa.js.map +1 -1
- package/dist/services/server/koa.mjs +48 -44
- package/dist/services/server/koa.mjs.map +1 -1
- package/dist/services/server/middleware.js +86 -82
- package/dist/services/server/middleware.js.map +1 -1
- package/dist/services/server/middleware.mjs +85 -82
- package/dist/services/server/middleware.mjs.map +1 -1
- package/dist/services/server/policy.js +24 -17
- package/dist/services/server/policy.js.map +1 -1
- package/dist/services/server/policy.mjs +23 -18
- package/dist/services/server/policy.mjs.map +1 -1
- package/dist/services/server/register-middlewares.js +68 -61
- package/dist/services/server/register-middlewares.js.map +1 -1
- package/dist/services/server/register-middlewares.mjs +67 -63
- package/dist/services/server/register-middlewares.mjs.map +1 -1
- package/dist/services/server/register-routes.js +90 -67
- package/dist/services/server/register-routes.js.map +1 -1
- package/dist/services/server/register-routes.mjs +89 -67
- package/dist/services/server/register-routes.mjs.map +1 -1
- package/dist/services/server/routing.js +94 -81
- package/dist/services/server/routing.js.map +1 -1
- package/dist/services/server/routing.mjs +93 -81
- package/dist/services/server/routing.mjs.map +1 -1
- package/dist/services/utils/dynamic-zones.js +13 -14
- package/dist/services/utils/dynamic-zones.js.map +1 -1
- package/dist/services/utils/dynamic-zones.mjs +12 -16
- package/dist/services/utils/dynamic-zones.mjs.map +1 -1
- package/dist/services/webhook-runner.js +124 -122
- package/dist/services/webhook-runner.js.map +1 -1
- package/dist/services/webhook-runner.mjs +123 -121
- package/dist/services/webhook-runner.mjs.map +1 -1
- package/dist/services/webhook-store.js +132 -99
- package/dist/services/webhook-store.js.map +1 -1
- package/dist/services/webhook-store.mjs +131 -101
- package/dist/services/webhook-store.mjs.map +1 -1
- package/dist/services/worker-queue.js +44 -49
- package/dist/services/worker-queue.js.map +1 -1
- package/dist/services/worker-queue.mjs +43 -49
- package/dist/services/worker-queue.mjs.map +1 -1
- package/dist/utils/convert-custom-field-type.js +17 -20
- package/dist/utils/convert-custom-field-type.js.map +1 -1
- package/dist/utils/convert-custom-field-type.mjs +16 -21
- package/dist/utils/convert-custom-field-type.mjs.map +1 -1
- package/dist/utils/cron.js +64 -30
- package/dist/utils/cron.js.map +1 -1
- package/dist/utils/cron.mjs +63 -31
- package/dist/utils/cron.mjs.map +1 -1
- package/dist/utils/fetch.js +24 -18
- package/dist/utils/fetch.js.map +1 -1
- package/dist/utils/fetch.mjs +23 -19
- package/dist/utils/fetch.mjs.map +1 -1
- package/dist/utils/filepath-to-prop-path.js +20 -28
- package/dist/utils/filepath-to-prop-path.js.map +1 -1
- package/dist/utils/filepath-to-prop-path.mjs +19 -26
- package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
- package/dist/utils/is-initialized.js +21 -12
- package/dist/utils/is-initialized.js.map +1 -1
- package/dist/utils/is-initialized.mjs +20 -13
- package/dist/utils/is-initialized.mjs.map +1 -1
- package/dist/utils/lifecycles.js +6 -5
- package/dist/utils/lifecycles.js.map +1 -1
- package/dist/utils/lifecycles.mjs +5 -6
- package/dist/utils/lifecycles.mjs.map +1 -1
- package/dist/utils/load-config-file.js +40 -38
- package/dist/utils/load-config-file.js.map +1 -1
- package/dist/utils/load-config-file.mjs +39 -36
- package/dist/utils/load-config-file.mjs.map +1 -1
- package/dist/utils/load-files.js +40 -35
- package/dist/utils/load-files.js.map +1 -1
- package/dist/utils/load-files.mjs +39 -32
- package/dist/utils/load-files.mjs.map +1 -1
- package/dist/utils/open-browser.js +8 -8
- package/dist/utils/open-browser.js.map +1 -1
- package/dist/utils/open-browser.mjs +7 -7
- package/dist/utils/open-browser.mjs.map +1 -1
- package/dist/utils/resolve-working-dirs.js +23 -10
- package/dist/utils/resolve-working-dirs.js.map +1 -1
- package/dist/utils/resolve-working-dirs.mjs +22 -9
- package/dist/utils/resolve-working-dirs.mjs.map +1 -1
- package/dist/utils/signals.js +20 -14
- package/dist/utils/signals.js.map +1 -1
- package/dist/utils/signals.mjs +19 -15
- package/dist/utils/signals.mjs.map +1 -1
- package/dist/utils/startup-logger.d.ts.map +1 -1
- package/dist/utils/startup-logger.js +107 -78
- package/dist/utils/startup-logger.js.map +1 -1
- package/dist/utils/startup-logger.mjs +106 -75
- package/dist/utils/startup-logger.mjs.map +1 -1
- package/dist/utils/transform-content-types-to-models.d.ts +353 -21
- package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
- package/dist/utils/transform-content-types-to-models.js +350 -261
- package/dist/utils/transform-content-types-to-models.js.map +1 -1
- package/dist/utils/transform-content-types-to-models.mjs +349 -269
- package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
- package/dist/utils/update-notifier/index.d.ts.map +1 -1
- package/dist/utils/update-notifier/index.js +68 -73
- package/dist/utils/update-notifier/index.js.map +1 -1
- package/dist/utils/update-notifier/index.mjs +67 -67
- package/dist/utils/update-notifier/index.mjs.map +1 -1
- package/package.json +27 -28
@@ -1,20 +1,25 @@
|
|
1
|
-
import { policy, errors } from
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
const
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
1
|
+
import { policy, errors } from '@strapi/utils';
|
2
|
+
|
3
|
+
const createPolicicesMiddleware = (route, strapi)=>{
|
4
|
+
const policiesConfig = route?.config?.policies ?? [];
|
5
|
+
const resolvedPolicies = strapi.get('policies').resolve(policiesConfig, route.info);
|
6
|
+
const policiesMiddleware = async (ctx, next)=>{
|
7
|
+
const context = policy.createPolicyContext('koa', ctx);
|
8
|
+
for (const { handler, config } of resolvedPolicies){
|
9
|
+
const result = await handler(context, config, {
|
10
|
+
strapi
|
11
|
+
});
|
12
|
+
if (![
|
13
|
+
true,
|
14
|
+
undefined
|
15
|
+
].includes(result)) {
|
16
|
+
throw new errors.PolicyError();
|
17
|
+
}
|
18
|
+
}
|
19
|
+
await next();
|
20
|
+
};
|
21
|
+
return policiesMiddleware;
|
19
22
|
};
|
23
|
+
|
24
|
+
export { createPolicicesMiddleware };
|
20
25
|
//# sourceMappingURL=policy.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"policy.mjs","sources":["../../../src/services/server/policy.ts"],"sourcesContent":["import { policy as policyUtils, errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst createPolicicesMiddleware = (route: Core.Route, strapi: Core.Strapi) => {\n const policiesConfig = route?.config?.policies ?? [];\n const resolvedPolicies = strapi.get('policies').resolve(policiesConfig, route.info);\n\n const policiesMiddleware: Core.MiddlewareHandler = async (ctx, next) => {\n const context = policyUtils.createPolicyContext('koa', ctx);\n\n for (const { handler, config } of resolvedPolicies) {\n const result = await handler(context, config, { strapi });\n\n if (![true, undefined].includes(result)) {\n throw new errors.PolicyError();\n }\n }\n\n await next();\n };\n\n return policiesMiddleware;\n};\n\nexport { createPolicicesMiddleware };\n"],"names":["policyUtils"],"mappings":"
|
1
|
+
{"version":3,"file":"policy.mjs","sources":["../../../src/services/server/policy.ts"],"sourcesContent":["import { policy as policyUtils, errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst createPolicicesMiddleware = (route: Core.Route, strapi: Core.Strapi) => {\n const policiesConfig = route?.config?.policies ?? [];\n const resolvedPolicies = strapi.get('policies').resolve(policiesConfig, route.info);\n\n const policiesMiddleware: Core.MiddlewareHandler = async (ctx, next) => {\n const context = policyUtils.createPolicyContext('koa', ctx);\n\n for (const { handler, config } of resolvedPolicies) {\n const result = await handler(context, config, { strapi });\n\n if (![true, undefined].includes(result)) {\n throw new errors.PolicyError();\n }\n }\n\n await next();\n };\n\n return policiesMiddleware;\n};\n\nexport { createPolicicesMiddleware };\n"],"names":["createPolicicesMiddleware","route","strapi","policiesConfig","config","policies","resolvedPolicies","get","resolve","info","policiesMiddleware","ctx","next","context","policyUtils","createPolicyContext","handler","result","undefined","includes","errors","PolicyError"],"mappings":";;AAGMA,MAAAA,yBAAAA,GAA4B,CAACC,KAAmBC,EAAAA,MAAAA,GAAAA;AACpD,IAAA,MAAMC,cAAiBF,GAAAA,KAAAA,EAAOG,MAAQC,EAAAA,QAAAA,IAAY,EAAE;IACpD,MAAMC,gBAAAA,GAAmBJ,OAAOK,GAAG,CAAC,YAAYC,OAAO,CAACL,cAAgBF,EAAAA,KAAAA,CAAMQ,IAAI,CAAA;IAElF,MAAMC,kBAAAA,GAA6C,OAAOC,GAAKC,EAAAA,IAAAA,GAAAA;AAC7D,QAAA,MAAMC,OAAUC,GAAAA,MAAAA,CAAYC,mBAAmB,CAAC,KAAOJ,EAAAA,GAAAA,CAAAA;AAEvD,QAAA,KAAK,MAAM,EAAEK,OAAO,EAAEZ,MAAM,EAAE,IAAIE,gBAAkB,CAAA;AAClD,YAAA,MAAMW,MAAS,GAAA,MAAMD,OAAQH,CAAAA,OAAAA,EAAST,MAAQ,EAAA;AAAEF,gBAAAA;AAAO,aAAA,CAAA;AAEvD,YAAA,IAAI,CAAC;AAAC,gBAAA,IAAA;AAAMgB,gBAAAA;aAAU,CAACC,QAAQ,CAACF,MAAS,CAAA,EAAA;gBACvC,MAAM,IAAIG,OAAOC,WAAW,EAAA;AAC9B;AACF;QAEA,MAAMT,IAAAA,EAAAA;AACR,KAAA;IAEA,OAAOF,kBAAAA;AACT;;;;"}
|
@@ -1,72 +1,79 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var strapiUtils = require('@strapi/utils');
|
4
|
+
var middleware = require('./middleware.js');
|
5
|
+
|
4
6
|
const defaultConfig = [
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
7
|
+
'strapi::logger',
|
8
|
+
'strapi::errors',
|
9
|
+
'strapi::security',
|
10
|
+
'strapi::cors',
|
11
|
+
'strapi::poweredBy',
|
12
|
+
'strapi::session',
|
13
|
+
'strapi::query',
|
14
|
+
'strapi::body',
|
15
|
+
'strapi::favicon',
|
16
|
+
'strapi::public'
|
15
17
|
];
|
16
18
|
const requiredMiddlewares = [
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
19
|
+
'strapi::errors',
|
20
|
+
'strapi::security',
|
21
|
+
'strapi::cors',
|
22
|
+
'strapi::query',
|
23
|
+
'strapi::body',
|
24
|
+
'strapi::public',
|
25
|
+
'strapi::favicon'
|
24
26
|
];
|
25
|
-
const middlewareConfigSchema = strapiUtils.yup.array().of(
|
26
|
-
|
27
|
-
|
28
|
-
return strapiUtils.yup.string().required();
|
27
|
+
const middlewareConfigSchema = strapiUtils.yup.array().of(strapiUtils.yup.lazy((value)=>{
|
28
|
+
if (typeof value === 'string') {
|
29
|
+
return strapiUtils.yup.string().required();
|
29
30
|
}
|
30
|
-
if (typeof value ===
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
31
|
+
if (typeof value === 'object') {
|
32
|
+
return strapiUtils.yup.object({
|
33
|
+
name: strapiUtils.yup.string(),
|
34
|
+
resolve: strapiUtils.yup.string(),
|
35
|
+
config: strapiUtils.yup.mixed()
|
36
|
+
}).required().noUnknown();
|
37
|
+
}
|
38
|
+
return strapiUtils.yup.mixed().test(()=>false);
|
39
|
+
}));
|
40
|
+
/**
|
41
|
+
* Register middlewares in router
|
42
|
+
*/ const registerApplicationMiddlewares = async (strapi)=>{
|
43
|
+
const middlewareConfig = strapi.config.get('middlewares', defaultConfig);
|
44
|
+
await validateMiddlewareConfig(middlewareConfig);
|
45
|
+
const middlewares = await middleware.resolveMiddlewares(middlewareConfig, strapi);
|
46
|
+
checkRequiredMiddlewares(middlewares);
|
47
|
+
// NOTE: exclude middlewares that return nothing.
|
48
|
+
// this is used for middlewares that only extend the app only need to be added in certain conditions
|
49
|
+
for (const middleware of middlewares){
|
50
|
+
strapi.server.use(middleware.handler);
|
36
51
|
}
|
37
|
-
return strapiUtils.yup.mixed().test(() => false);
|
38
|
-
})
|
39
|
-
// FIXME: yup v1
|
40
|
-
);
|
41
|
-
const registerApplicationMiddlewares = async (strapi) => {
|
42
|
-
const middlewareConfig = strapi.config.get("middlewares", defaultConfig);
|
43
|
-
await validateMiddlewareConfig(middlewareConfig);
|
44
|
-
const middlewares = await middleware.resolveMiddlewares(middlewareConfig, strapi);
|
45
|
-
checkRequiredMiddlewares(middlewares);
|
46
|
-
for (const middleware2 of middlewares) {
|
47
|
-
strapi.server.use(middleware2.handler);
|
48
|
-
}
|
49
52
|
};
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
53
|
+
/**
|
54
|
+
*
|
55
|
+
* @param {MiddlewaresConfig} config
|
56
|
+
*/ const validateMiddlewareConfig = async (config)=>{
|
57
|
+
try {
|
58
|
+
await middlewareConfigSchema.validate(config, {
|
59
|
+
strict: true,
|
60
|
+
abortEarly: false
|
61
|
+
});
|
62
|
+
} catch (error) {
|
63
|
+
throw new Error('Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.');
|
64
|
+
}
|
58
65
|
};
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
}
|
66
|
+
/**
|
67
|
+
* Check if some required middlewares are missing in configure middlewares
|
68
|
+
* @param {Middlewares} middlewares
|
69
|
+
*/ const checkRequiredMiddlewares = (middlewares)=>{
|
70
|
+
const missingMiddlewares = requiredMiddlewares.filter((name)=>{
|
71
|
+
return middlewares.findIndex((mdl)=>mdl.name === name) === -1;
|
72
|
+
});
|
73
|
+
if (missingMiddlewares.length > 0) {
|
74
|
+
throw new Error(`Missing required middlewares in configuration. Add the following middlewares: "${missingMiddlewares.join(', ')}".`);
|
75
|
+
}
|
70
76
|
};
|
77
|
+
|
71
78
|
module.exports = registerApplicationMiddlewares;
|
72
79
|
//# sourceMappingURL=register-middlewares.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"register-middlewares.js","sources":["../../../src/services/server/register-middlewares.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { resolveMiddlewares } from './middleware';\n\ntype MiddlewareConfig = (string | { name?: string; resolve?: string; config?: unknown })[];\n\nconst defaultConfig = [\n 'strapi::logger',\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::poweredBy',\n 'strapi::session',\n 'strapi::query',\n 'strapi::body',\n 'strapi::favicon',\n 'strapi::public',\n];\n\nconst requiredMiddlewares = [\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::query',\n 'strapi::body',\n 'strapi::public',\n 'strapi::favicon',\n];\n\nconst middlewareConfigSchema = yup.array().of(\n yup.lazy((value) => {\n if (typeof value === 'string') {\n return yup.string().required();\n }\n\n if (typeof value === 'object') {\n return yup\n .object({\n name: yup.string(),\n resolve: yup.string(),\n config: yup.mixed(),\n })\n .required()\n .noUnknown();\n }\n\n return yup.mixed().test(() => false);\n }) as any // FIXME: yup v1\n);\n\n/**\n * Register middlewares in router\n */\nconst registerApplicationMiddlewares = async (strapi: Core.Strapi) => {\n const middlewareConfig: MiddlewareConfig = strapi.config.get('middlewares', defaultConfig);\n\n await validateMiddlewareConfig(middlewareConfig);\n\n const middlewares = await resolveMiddlewares(middlewareConfig, strapi);\n\n checkRequiredMiddlewares(middlewares);\n\n // NOTE: exclude middlewares that return nothing.\n // this is used for middlewares that only extend the app only need to be added in certain conditions\n for (const middleware of middlewares) {\n strapi.server.use(middleware.handler);\n }\n};\n\n/**\n *\n * @param {MiddlewaresConfig} config\n */\nconst validateMiddlewareConfig = async (config: MiddlewareConfig) => {\n try {\n await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });\n } catch (error) {\n throw new Error(\n 'Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.'\n );\n }\n};\n\n/**\n * Check if some required middlewares are missing in configure middlewares\n * @param {Middlewares} middlewares\n */\nconst checkRequiredMiddlewares = (middlewares: { name: string | null }[]) => {\n const missingMiddlewares = requiredMiddlewares.filter((name) => {\n return middlewares.findIndex((mdl) => mdl.name === name) === -1;\n });\n\n if (missingMiddlewares.length > 0) {\n throw new Error(\n `Missing required middlewares in configuration. Add the following middlewares: \"${missingMiddlewares.join(\n ', '\n )}\".`\n );\n }\n};\n\nexport default registerApplicationMiddlewares;\n"],"names":["yup","resolveMiddlewares","middleware"],"mappings":"
|
1
|
+
{"version":3,"file":"register-middlewares.js","sources":["../../../src/services/server/register-middlewares.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { resolveMiddlewares } from './middleware';\n\ntype MiddlewareConfig = (string | { name?: string; resolve?: string; config?: unknown })[];\n\nconst defaultConfig = [\n 'strapi::logger',\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::poweredBy',\n 'strapi::session',\n 'strapi::query',\n 'strapi::body',\n 'strapi::favicon',\n 'strapi::public',\n];\n\nconst requiredMiddlewares = [\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::query',\n 'strapi::body',\n 'strapi::public',\n 'strapi::favicon',\n];\n\nconst middlewareConfigSchema = yup.array().of(\n yup.lazy((value) => {\n if (typeof value === 'string') {\n return yup.string().required();\n }\n\n if (typeof value === 'object') {\n return yup\n .object({\n name: yup.string(),\n resolve: yup.string(),\n config: yup.mixed(),\n })\n .required()\n .noUnknown();\n }\n\n return yup.mixed().test(() => false);\n }) as any // FIXME: yup v1\n);\n\n/**\n * Register middlewares in router\n */\nconst registerApplicationMiddlewares = async (strapi: Core.Strapi) => {\n const middlewareConfig: MiddlewareConfig = strapi.config.get('middlewares', defaultConfig);\n\n await validateMiddlewareConfig(middlewareConfig);\n\n const middlewares = await resolveMiddlewares(middlewareConfig, strapi);\n\n checkRequiredMiddlewares(middlewares);\n\n // NOTE: exclude middlewares that return nothing.\n // this is used for middlewares that only extend the app only need to be added in certain conditions\n for (const middleware of middlewares) {\n strapi.server.use(middleware.handler);\n }\n};\n\n/**\n *\n * @param {MiddlewaresConfig} config\n */\nconst validateMiddlewareConfig = async (config: MiddlewareConfig) => {\n try {\n await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });\n } catch (error) {\n throw new Error(\n 'Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.'\n );\n }\n};\n\n/**\n * Check if some required middlewares are missing in configure middlewares\n * @param {Middlewares} middlewares\n */\nconst checkRequiredMiddlewares = (middlewares: { name: string | null }[]) => {\n const missingMiddlewares = requiredMiddlewares.filter((name) => {\n return middlewares.findIndex((mdl) => mdl.name === name) === -1;\n });\n\n if (missingMiddlewares.length > 0) {\n throw new Error(\n `Missing required middlewares in configuration. Add the following middlewares: \"${missingMiddlewares.join(\n ', '\n )}\".`\n );\n }\n};\n\nexport default registerApplicationMiddlewares;\n"],"names":["defaultConfig","requiredMiddlewares","middlewareConfigSchema","yup","array","of","lazy","value","string","required","object","name","resolve","config","mixed","noUnknown","test","registerApplicationMiddlewares","strapi","middlewareConfig","get","validateMiddlewareConfig","middlewares","resolveMiddlewares","checkRequiredMiddlewares","middleware","server","use","handler","validate","strict","abortEarly","error","Error","missingMiddlewares","filter","findIndex","mdl","length","join"],"mappings":";;;;;AAMA,MAAMA,aAAgB,GAAA;AACpB,IAAA,gBAAA;AACA,IAAA,gBAAA;AACA,IAAA,kBAAA;AACA,IAAA,cAAA;AACA,IAAA,mBAAA;AACA,IAAA,iBAAA;AACA,IAAA,eAAA;AACA,IAAA,cAAA;AACA,IAAA,iBAAA;AACA,IAAA;AACD,CAAA;AAED,MAAMC,mBAAsB,GAAA;AAC1B,IAAA,gBAAA;AACA,IAAA,kBAAA;AACA,IAAA,cAAA;AACA,IAAA,eAAA;AACA,IAAA,cAAA;AACA,IAAA,gBAAA;AACA,IAAA;AACD,CAAA;AAED,MAAMC,sBAAAA,GAAyBC,gBAAIC,KAAK,EAAA,CAAGC,EAAE,CAC3CF,eAAAA,CAAIG,IAAI,CAAC,CAACC,KAAAA,GAAAA;IACR,IAAI,OAAOA,UAAU,QAAU,EAAA;QAC7B,OAAOJ,eAAAA,CAAIK,MAAM,EAAA,CAAGC,QAAQ,EAAA;AAC9B;IAEA,IAAI,OAAOF,UAAU,QAAU,EAAA;QAC7B,OAAOJ,eAAAA,CACJO,MAAM,CAAC;AACNC,YAAAA,IAAAA,EAAMR,gBAAIK,MAAM,EAAA;AAChBI,YAAAA,OAAAA,EAAST,gBAAIK,MAAM,EAAA;AACnBK,YAAAA,MAAAA,EAAQV,gBAAIW,KAAK;SAElBL,CAAAA,CAAAA,QAAQ,GACRM,SAAS,EAAA;AACd;AAEA,IAAA,OAAOZ,eAAIW,CAAAA,KAAK,EAAGE,CAAAA,IAAI,CAAC,IAAM,KAAA,CAAA;AAChC,CAAA,CAAA,CAAA;AAGF;;IAGA,MAAMC,iCAAiC,OAAOC,MAAAA,GAAAA;AAC5C,IAAA,MAAMC,mBAAqCD,MAAOL,CAAAA,MAAM,CAACO,GAAG,CAAC,aAAepB,EAAAA,aAAAA,CAAAA;AAE5E,IAAA,MAAMqB,wBAAyBF,CAAAA,gBAAAA,CAAAA;IAE/B,MAAMG,WAAAA,GAAc,MAAMC,6BAAAA,CAAmBJ,gBAAkBD,EAAAA,MAAAA,CAAAA;IAE/DM,wBAAyBF,CAAAA,WAAAA,CAAAA;;;IAIzB,KAAK,MAAMG,cAAcH,WAAa,CAAA;AACpCJ,QAAAA,MAAAA,CAAOQ,MAAM,CAACC,GAAG,CAACF,WAAWG,OAAO,CAAA;AACtC;AACF;AAEA;;;IAIA,MAAMP,2BAA2B,OAAOR,MAAAA,GAAAA;IACtC,IAAI;QACF,MAAMX,sBAAAA,CAAuB2B,QAAQ,CAAChB,MAAQ,EAAA;YAAEiB,MAAQ,EAAA,IAAA;YAAMC,UAAY,EAAA;AAAM,SAAA,CAAA;AAClF,KAAA,CAAE,OAAOC,KAAO,EAAA;AACd,QAAA,MAAM,IAAIC,KACR,CAAA,yGAAA,CAAA;AAEJ;AACF,CAAA;AAEA;;;IAIA,MAAMT,2BAA2B,CAACF,WAAAA,GAAAA;AAChC,IAAA,MAAMY,kBAAqBjC,GAAAA,mBAAAA,CAAoBkC,MAAM,CAAC,CAACxB,IAAAA,GAAAA;QACrD,OAAOW,WAAAA,CAAYc,SAAS,CAAC,CAACC,MAAQA,GAAI1B,CAAAA,IAAI,KAAKA,IAAAA,CAAAA,KAAU,CAAC,CAAA;AAChE,KAAA,CAAA;IAEA,IAAIuB,kBAAAA,CAAmBI,MAAM,GAAG,CAAG,EAAA;QACjC,MAAM,IAAIL,KACR,CAAA,CAAC,+EAA+E,EAAEC,mBAAmBK,IAAI,CACvG,IACA,CAAA,CAAA,EAAE,CAAC,CAAA;AAET;AACF,CAAA;;;;"}
|
@@ -1,73 +1,77 @@
|
|
1
|
-
import { yup } from
|
2
|
-
import { resolveMiddlewares } from
|
1
|
+
import { yup } from '@strapi/utils';
|
2
|
+
import { resolveMiddlewares } from './middleware.mjs';
|
3
|
+
|
3
4
|
const defaultConfig = [
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
5
|
+
'strapi::logger',
|
6
|
+
'strapi::errors',
|
7
|
+
'strapi::security',
|
8
|
+
'strapi::cors',
|
9
|
+
'strapi::poweredBy',
|
10
|
+
'strapi::session',
|
11
|
+
'strapi::query',
|
12
|
+
'strapi::body',
|
13
|
+
'strapi::favicon',
|
14
|
+
'strapi::public'
|
14
15
|
];
|
15
16
|
const requiredMiddlewares = [
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
17
|
+
'strapi::errors',
|
18
|
+
'strapi::security',
|
19
|
+
'strapi::cors',
|
20
|
+
'strapi::query',
|
21
|
+
'strapi::body',
|
22
|
+
'strapi::public',
|
23
|
+
'strapi::favicon'
|
23
24
|
];
|
24
|
-
const middlewareConfigSchema = yup.array().of(
|
25
|
-
|
26
|
-
|
27
|
-
return yup.string().required();
|
25
|
+
const middlewareConfigSchema = yup.array().of(yup.lazy((value)=>{
|
26
|
+
if (typeof value === 'string') {
|
27
|
+
return yup.string().required();
|
28
28
|
}
|
29
|
-
if (typeof value ===
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
29
|
+
if (typeof value === 'object') {
|
30
|
+
return yup.object({
|
31
|
+
name: yup.string(),
|
32
|
+
resolve: yup.string(),
|
33
|
+
config: yup.mixed()
|
34
|
+
}).required().noUnknown();
|
35
|
+
}
|
36
|
+
return yup.mixed().test(()=>false);
|
37
|
+
}));
|
38
|
+
/**
|
39
|
+
* Register middlewares in router
|
40
|
+
*/ const registerApplicationMiddlewares = async (strapi)=>{
|
41
|
+
const middlewareConfig = strapi.config.get('middlewares', defaultConfig);
|
42
|
+
await validateMiddlewareConfig(middlewareConfig);
|
43
|
+
const middlewares = await resolveMiddlewares(middlewareConfig, strapi);
|
44
|
+
checkRequiredMiddlewares(middlewares);
|
45
|
+
// NOTE: exclude middlewares that return nothing.
|
46
|
+
// this is used for middlewares that only extend the app only need to be added in certain conditions
|
47
|
+
for (const middleware of middlewares){
|
48
|
+
strapi.server.use(middleware.handler);
|
35
49
|
}
|
36
|
-
return yup.mixed().test(() => false);
|
37
|
-
})
|
38
|
-
// FIXME: yup v1
|
39
|
-
);
|
40
|
-
const registerApplicationMiddlewares = async (strapi) => {
|
41
|
-
const middlewareConfig = strapi.config.get("middlewares", defaultConfig);
|
42
|
-
await validateMiddlewareConfig(middlewareConfig);
|
43
|
-
const middlewares = await resolveMiddlewares(middlewareConfig, strapi);
|
44
|
-
checkRequiredMiddlewares(middlewares);
|
45
|
-
for (const middleware of middlewares) {
|
46
|
-
strapi.server.use(middleware.handler);
|
47
|
-
}
|
48
|
-
};
|
49
|
-
const validateMiddlewareConfig = async (config) => {
|
50
|
-
try {
|
51
|
-
await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });
|
52
|
-
} catch (error) {
|
53
|
-
throw new Error(
|
54
|
-
"Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}."
|
55
|
-
);
|
56
|
-
}
|
57
50
|
};
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
)
|
68
|
-
|
51
|
+
/**
|
52
|
+
*
|
53
|
+
* @param {MiddlewaresConfig} config
|
54
|
+
*/ const validateMiddlewareConfig = async (config)=>{
|
55
|
+
try {
|
56
|
+
await middlewareConfigSchema.validate(config, {
|
57
|
+
strict: true,
|
58
|
+
abortEarly: false
|
59
|
+
});
|
60
|
+
} catch (error) {
|
61
|
+
throw new Error('Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.');
|
62
|
+
}
|
69
63
|
};
|
70
|
-
|
71
|
-
|
64
|
+
/**
|
65
|
+
* Check if some required middlewares are missing in configure middlewares
|
66
|
+
* @param {Middlewares} middlewares
|
67
|
+
*/ const checkRequiredMiddlewares = (middlewares)=>{
|
68
|
+
const missingMiddlewares = requiredMiddlewares.filter((name)=>{
|
69
|
+
return middlewares.findIndex((mdl)=>mdl.name === name) === -1;
|
70
|
+
});
|
71
|
+
if (missingMiddlewares.length > 0) {
|
72
|
+
throw new Error(`Missing required middlewares in configuration. Add the following middlewares: "${missingMiddlewares.join(', ')}".`);
|
73
|
+
}
|
72
74
|
};
|
75
|
+
|
76
|
+
export { registerApplicationMiddlewares as default };
|
73
77
|
//# sourceMappingURL=register-middlewares.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"register-middlewares.mjs","sources":["../../../src/services/server/register-middlewares.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { resolveMiddlewares } from './middleware';\n\ntype MiddlewareConfig = (string | { name?: string; resolve?: string; config?: unknown })[];\n\nconst defaultConfig = [\n 'strapi::logger',\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::poweredBy',\n 'strapi::session',\n 'strapi::query',\n 'strapi::body',\n 'strapi::favicon',\n 'strapi::public',\n];\n\nconst requiredMiddlewares = [\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::query',\n 'strapi::body',\n 'strapi::public',\n 'strapi::favicon',\n];\n\nconst middlewareConfigSchema = yup.array().of(\n yup.lazy((value) => {\n if (typeof value === 'string') {\n return yup.string().required();\n }\n\n if (typeof value === 'object') {\n return yup\n .object({\n name: yup.string(),\n resolve: yup.string(),\n config: yup.mixed(),\n })\n .required()\n .noUnknown();\n }\n\n return yup.mixed().test(() => false);\n }) as any // FIXME: yup v1\n);\n\n/**\n * Register middlewares in router\n */\nconst registerApplicationMiddlewares = async (strapi: Core.Strapi) => {\n const middlewareConfig: MiddlewareConfig = strapi.config.get('middlewares', defaultConfig);\n\n await validateMiddlewareConfig(middlewareConfig);\n\n const middlewares = await resolveMiddlewares(middlewareConfig, strapi);\n\n checkRequiredMiddlewares(middlewares);\n\n // NOTE: exclude middlewares that return nothing.\n // this is used for middlewares that only extend the app only need to be added in certain conditions\n for (const middleware of middlewares) {\n strapi.server.use(middleware.handler);\n }\n};\n\n/**\n *\n * @param {MiddlewaresConfig} config\n */\nconst validateMiddlewareConfig = async (config: MiddlewareConfig) => {\n try {\n await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });\n } catch (error) {\n throw new Error(\n 'Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.'\n );\n }\n};\n\n/**\n * Check if some required middlewares are missing in configure middlewares\n * @param {Middlewares} middlewares\n */\nconst checkRequiredMiddlewares = (middlewares: { name: string | null }[]) => {\n const missingMiddlewares = requiredMiddlewares.filter((name) => {\n return middlewares.findIndex((mdl) => mdl.name === name) === -1;\n });\n\n if (missingMiddlewares.length > 0) {\n throw new Error(\n `Missing required middlewares in configuration. Add the following middlewares: \"${missingMiddlewares.join(\n ', '\n )}\".`\n );\n }\n};\n\nexport default registerApplicationMiddlewares;\n"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"register-middlewares.mjs","sources":["../../../src/services/server/register-middlewares.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { resolveMiddlewares } from './middleware';\n\ntype MiddlewareConfig = (string | { name?: string; resolve?: string; config?: unknown })[];\n\nconst defaultConfig = [\n 'strapi::logger',\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::poweredBy',\n 'strapi::session',\n 'strapi::query',\n 'strapi::body',\n 'strapi::favicon',\n 'strapi::public',\n];\n\nconst requiredMiddlewares = [\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::query',\n 'strapi::body',\n 'strapi::public',\n 'strapi::favicon',\n];\n\nconst middlewareConfigSchema = yup.array().of(\n yup.lazy((value) => {\n if (typeof value === 'string') {\n return yup.string().required();\n }\n\n if (typeof value === 'object') {\n return yup\n .object({\n name: yup.string(),\n resolve: yup.string(),\n config: yup.mixed(),\n })\n .required()\n .noUnknown();\n }\n\n return yup.mixed().test(() => false);\n }) as any // FIXME: yup v1\n);\n\n/**\n * Register middlewares in router\n */\nconst registerApplicationMiddlewares = async (strapi: Core.Strapi) => {\n const middlewareConfig: MiddlewareConfig = strapi.config.get('middlewares', defaultConfig);\n\n await validateMiddlewareConfig(middlewareConfig);\n\n const middlewares = await resolveMiddlewares(middlewareConfig, strapi);\n\n checkRequiredMiddlewares(middlewares);\n\n // NOTE: exclude middlewares that return nothing.\n // this is used for middlewares that only extend the app only need to be added in certain conditions\n for (const middleware of middlewares) {\n strapi.server.use(middleware.handler);\n }\n};\n\n/**\n *\n * @param {MiddlewaresConfig} config\n */\nconst validateMiddlewareConfig = async (config: MiddlewareConfig) => {\n try {\n await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });\n } catch (error) {\n throw new Error(\n 'Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.'\n );\n }\n};\n\n/**\n * Check if some required middlewares are missing in configure middlewares\n * @param {Middlewares} middlewares\n */\nconst checkRequiredMiddlewares = (middlewares: { name: string | null }[]) => {\n const missingMiddlewares = requiredMiddlewares.filter((name) => {\n return middlewares.findIndex((mdl) => mdl.name === name) === -1;\n });\n\n if (missingMiddlewares.length > 0) {\n throw new Error(\n `Missing required middlewares in configuration. Add the following middlewares: \"${missingMiddlewares.join(\n ', '\n )}\".`\n );\n }\n};\n\nexport default registerApplicationMiddlewares;\n"],"names":["defaultConfig","requiredMiddlewares","middlewareConfigSchema","yup","array","of","lazy","value","string","required","object","name","resolve","config","mixed","noUnknown","test","registerApplicationMiddlewares","strapi","middlewareConfig","get","validateMiddlewareConfig","middlewares","resolveMiddlewares","checkRequiredMiddlewares","middleware","server","use","handler","validate","strict","abortEarly","error","Error","missingMiddlewares","filter","findIndex","mdl","length","join"],"mappings":";;;AAMA,MAAMA,aAAgB,GAAA;AACpB,IAAA,gBAAA;AACA,IAAA,gBAAA;AACA,IAAA,kBAAA;AACA,IAAA,cAAA;AACA,IAAA,mBAAA;AACA,IAAA,iBAAA;AACA,IAAA,eAAA;AACA,IAAA,cAAA;AACA,IAAA,iBAAA;AACA,IAAA;AACD,CAAA;AAED,MAAMC,mBAAsB,GAAA;AAC1B,IAAA,gBAAA;AACA,IAAA,kBAAA;AACA,IAAA,cAAA;AACA,IAAA,eAAA;AACA,IAAA,cAAA;AACA,IAAA,gBAAA;AACA,IAAA;AACD,CAAA;AAED,MAAMC,sBAAAA,GAAyBC,IAAIC,KAAK,EAAA,CAAGC,EAAE,CAC3CF,GAAAA,CAAIG,IAAI,CAAC,CAACC,KAAAA,GAAAA;IACR,IAAI,OAAOA,UAAU,QAAU,EAAA;QAC7B,OAAOJ,GAAAA,CAAIK,MAAM,EAAA,CAAGC,QAAQ,EAAA;AAC9B;IAEA,IAAI,OAAOF,UAAU,QAAU,EAAA;QAC7B,OAAOJ,GAAAA,CACJO,MAAM,CAAC;AACNC,YAAAA,IAAAA,EAAMR,IAAIK,MAAM,EAAA;AAChBI,YAAAA,OAAAA,EAAST,IAAIK,MAAM,EAAA;AACnBK,YAAAA,MAAAA,EAAQV,IAAIW,KAAK;SAElBL,CAAAA,CAAAA,QAAQ,GACRM,SAAS,EAAA;AACd;AAEA,IAAA,OAAOZ,GAAIW,CAAAA,KAAK,EAAGE,CAAAA,IAAI,CAAC,IAAM,KAAA,CAAA;AAChC,CAAA,CAAA,CAAA;AAGF;;IAGA,MAAMC,iCAAiC,OAAOC,MAAAA,GAAAA;AAC5C,IAAA,MAAMC,mBAAqCD,MAAOL,CAAAA,MAAM,CAACO,GAAG,CAAC,aAAepB,EAAAA,aAAAA,CAAAA;AAE5E,IAAA,MAAMqB,wBAAyBF,CAAAA,gBAAAA,CAAAA;IAE/B,MAAMG,WAAAA,GAAc,MAAMC,kBAAAA,CAAmBJ,gBAAkBD,EAAAA,MAAAA,CAAAA;IAE/DM,wBAAyBF,CAAAA,WAAAA,CAAAA;;;IAIzB,KAAK,MAAMG,cAAcH,WAAa,CAAA;AACpCJ,QAAAA,MAAAA,CAAOQ,MAAM,CAACC,GAAG,CAACF,WAAWG,OAAO,CAAA;AACtC;AACF;AAEA;;;IAIA,MAAMP,2BAA2B,OAAOR,MAAAA,GAAAA;IACtC,IAAI;QACF,MAAMX,sBAAAA,CAAuB2B,QAAQ,CAAChB,MAAQ,EAAA;YAAEiB,MAAQ,EAAA,IAAA;YAAMC,UAAY,EAAA;AAAM,SAAA,CAAA;AAClF,KAAA,CAAE,OAAOC,KAAO,EAAA;AACd,QAAA,MAAM,IAAIC,KACR,CAAA,yGAAA,CAAA;AAEJ;AACF,CAAA;AAEA;;;IAIA,MAAMT,2BAA2B,CAACF,WAAAA,GAAAA;AAChC,IAAA,MAAMY,kBAAqBjC,GAAAA,mBAAAA,CAAoBkC,MAAM,CAAC,CAACxB,IAAAA,GAAAA;QACrD,OAAOW,WAAAA,CAAYc,SAAS,CAAC,CAACC,MAAQA,GAAI1B,CAAAA,IAAI,KAAKA,IAAAA,CAAAA,KAAU,CAAC,CAAA;AAChE,KAAA,CAAA;IAEA,IAAIuB,kBAAAA,CAAmBI,MAAM,GAAG,CAAG,EAAA;QACjC,MAAM,IAAIL,KACR,CAAA,CAAC,+EAA+E,EAAEC,mBAAmBK,IAAI,CACvG,IACA,CAAA,CAAA,EAAE,CAAC,CAAA;AAET;AACF,CAAA;;;;"}
|
@@ -1,76 +1,99 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
const createRouteScopeGenerator = (namespace)
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
var _ = require('lodash');
|
4
|
+
|
5
|
+
const createRouteScopeGenerator = (namespace)=>(route)=>{
|
6
|
+
const prefix = namespace.endsWith('::') ? namespace : `${namespace}.`;
|
7
|
+
if (typeof route.handler === 'string') {
|
8
|
+
_.defaultsDeep(route, {
|
9
|
+
config: {
|
10
|
+
auth: {
|
11
|
+
scope: [
|
12
|
+
`${route.handler.startsWith(prefix) ? '' : prefix}${route.handler}`
|
13
|
+
]
|
14
|
+
}
|
15
|
+
}
|
16
|
+
});
|
12
17
|
}
|
13
|
-
|
18
|
+
};
|
19
|
+
/**
|
20
|
+
* Register all routes
|
21
|
+
*/ var registerAllRoutes = ((strapi)=>{
|
22
|
+
registerAdminRoutes(strapi);
|
23
|
+
registerAPIRoutes(strapi);
|
24
|
+
registerPluginRoutes(strapi);
|
25
|
+
});
|
26
|
+
/**
|
27
|
+
* Register admin routes
|
28
|
+
* @param {import('../../').Strapi} strapi
|
29
|
+
*/ const registerAdminRoutes = (strapi)=>{
|
30
|
+
const generateRouteScope = createRouteScopeGenerator(`admin::`);
|
31
|
+
_.forEach(strapi.admin.routes, (router)=>{
|
32
|
+
router.type = router.type || 'admin';
|
33
|
+
router.prefix = router.prefix || `/admin`;
|
34
|
+
router.routes.forEach((route)=>{
|
35
|
+
generateRouteScope(route);
|
36
|
+
route.info = {
|
37
|
+
pluginName: 'admin'
|
38
|
+
};
|
39
|
+
});
|
40
|
+
strapi.server.routes(router);
|
14
41
|
});
|
15
|
-
}
|
16
|
-
};
|
17
|
-
const registerAllRoutes = (strapi) => {
|
18
|
-
registerAdminRoutes(strapi);
|
19
|
-
registerAPIRoutes(strapi);
|
20
|
-
registerPluginRoutes(strapi);
|
21
42
|
};
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
43
|
+
/**
|
44
|
+
* Register plugin routes
|
45
|
+
* @param {import('../../').Strapi} strapi
|
46
|
+
*/ const registerPluginRoutes = (strapi)=>{
|
47
|
+
for (const pluginName of Object.keys(strapi.plugins)){
|
48
|
+
const plugin = strapi.plugins[pluginName];
|
49
|
+
const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);
|
50
|
+
if (Array.isArray(plugin.routes)) {
|
51
|
+
plugin.routes.forEach((route)=>{
|
52
|
+
generateRouteScope(route);
|
53
|
+
route.info = {
|
54
|
+
pluginName
|
55
|
+
};
|
56
|
+
});
|
57
|
+
strapi.server.routes({
|
58
|
+
type: 'admin',
|
59
|
+
prefix: `/${pluginName}`,
|
60
|
+
routes: plugin.routes
|
61
|
+
});
|
62
|
+
} else {
|
63
|
+
_.forEach(plugin.routes, (router)=>{
|
64
|
+
router.type = router.type || 'admin';
|
65
|
+
router.prefix = router.prefix || `/${pluginName}`;
|
66
|
+
router.routes.forEach((route)=>{
|
67
|
+
generateRouteScope(route);
|
68
|
+
route.info = {
|
69
|
+
pluginName
|
70
|
+
};
|
71
|
+
});
|
72
|
+
strapi.server.routes(router);
|
73
|
+
});
|
74
|
+
}
|
75
|
+
}
|
33
76
|
};
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
const
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
router.prefix = router.prefix || `/${pluginName}`;
|
52
|
-
router.routes.forEach((route) => {
|
53
|
-
generateRouteScope(route);
|
54
|
-
route.info = { pluginName };
|
77
|
+
/**
|
78
|
+
* Register api routes
|
79
|
+
*/ const registerAPIRoutes = (strapi)=>{
|
80
|
+
for (const apiName of Object.keys(strapi.apis)){
|
81
|
+
const api = strapi.api(apiName);
|
82
|
+
const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);
|
83
|
+
_.forEach(api.routes, (router)=>{
|
84
|
+
// TODO: remove once auth setup
|
85
|
+
// pass meta down to compose endpoint
|
86
|
+
router.type = 'content-api';
|
87
|
+
router.routes?.forEach((route)=>{
|
88
|
+
generateRouteScope(route);
|
89
|
+
route.info = {
|
90
|
+
apiName
|
91
|
+
};
|
92
|
+
});
|
93
|
+
return strapi.server.routes(router);
|
55
94
|
});
|
56
|
-
strapi.server.routes(router);
|
57
|
-
});
|
58
95
|
}
|
59
|
-
}
|
60
|
-
};
|
61
|
-
const registerAPIRoutes = (strapi) => {
|
62
|
-
for (const apiName of Object.keys(strapi.apis)) {
|
63
|
-
const api = strapi.api(apiName);
|
64
|
-
const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);
|
65
|
-
___default.default.forEach(api.routes, (router) => {
|
66
|
-
router.type = "content-api";
|
67
|
-
router.routes?.forEach((route) => {
|
68
|
-
generateRouteScope(route);
|
69
|
-
route.info = { apiName };
|
70
|
-
});
|
71
|
-
return strapi.server.routes(router);
|
72
|
-
});
|
73
|
-
}
|
74
96
|
};
|
97
|
+
|
75
98
|
module.exports = registerAllRoutes;
|
76
99
|
//# sourceMappingURL=register-routes.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"register-routes.js","sources":["../../../src/services/server/register-routes.ts"],"sourcesContent":["import _ from 'lodash';\nimport type { Core } from '@strapi/types';\n\nconst createRouteScopeGenerator = (namespace: string) => (route: Core.RouteInput) => {\n const prefix = namespace.endsWith('::') ? namespace : `${namespace}.`;\n\n if (typeof route.handler === 'string') {\n _.defaultsDeep(route, {\n config: {\n auth: {\n scope: [`${route.handler.startsWith(prefix) ? '' : prefix}${route.handler}`],\n },\n },\n });\n }\n};\n\n/**\n * Register all routes\n */\nexport default (strapi: Core.Strapi) => {\n registerAdminRoutes(strapi);\n registerAPIRoutes(strapi);\n registerPluginRoutes(strapi);\n};\n\n/**\n * Register admin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerAdminRoutes = (strapi: Core.Strapi) => {\n const generateRouteScope = createRouteScopeGenerator(`admin::`);\n\n _.forEach(strapi.admin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/admin`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName: 'admin' };\n });\n strapi.server.routes(router);\n });\n};\n\n/**\n * Register plugin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerPluginRoutes = (strapi: Core.Strapi) => {\n for (const pluginName of Object.keys(strapi.plugins)) {\n const plugin = strapi.plugins[pluginName];\n\n const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);\n\n if (Array.isArray(plugin.routes)) {\n plugin.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes({\n type: 'admin',\n prefix: `/${pluginName}`,\n routes: plugin.routes,\n });\n } else {\n _.forEach(plugin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/${pluginName}`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes(router);\n });\n }\n }\n};\n\n/**\n * Register api routes\n */\nconst registerAPIRoutes = (strapi: Core.Strapi) => {\n for (const apiName of Object.keys(strapi.apis)) {\n const api = strapi.api(apiName);\n\n const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);\n\n _.forEach(api.routes, (router) => {\n // TODO: remove once auth setup\n // pass meta down to compose endpoint\n router.type = 'content-api';\n router.routes?.forEach((route) => {\n generateRouteScope(route);\n route.info = { apiName };\n });\n\n return strapi.server.routes(router);\n });\n }\n};\n"],"names":["_"],"mappings":";;;;AAGA,
|
1
|
+
{"version":3,"file":"register-routes.js","sources":["../../../src/services/server/register-routes.ts"],"sourcesContent":["import _ from 'lodash';\nimport type { Core } from '@strapi/types';\n\nconst createRouteScopeGenerator = (namespace: string) => (route: Core.RouteInput) => {\n const prefix = namespace.endsWith('::') ? namespace : `${namespace}.`;\n\n if (typeof route.handler === 'string') {\n _.defaultsDeep(route, {\n config: {\n auth: {\n scope: [`${route.handler.startsWith(prefix) ? '' : prefix}${route.handler}`],\n },\n },\n });\n }\n};\n\n/**\n * Register all routes\n */\nexport default (strapi: Core.Strapi) => {\n registerAdminRoutes(strapi);\n registerAPIRoutes(strapi);\n registerPluginRoutes(strapi);\n};\n\n/**\n * Register admin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerAdminRoutes = (strapi: Core.Strapi) => {\n const generateRouteScope = createRouteScopeGenerator(`admin::`);\n\n _.forEach(strapi.admin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/admin`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName: 'admin' };\n });\n strapi.server.routes(router);\n });\n};\n\n/**\n * Register plugin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerPluginRoutes = (strapi: Core.Strapi) => {\n for (const pluginName of Object.keys(strapi.plugins)) {\n const plugin = strapi.plugins[pluginName];\n\n const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);\n\n if (Array.isArray(plugin.routes)) {\n plugin.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes({\n type: 'admin',\n prefix: `/${pluginName}`,\n routes: plugin.routes,\n });\n } else {\n _.forEach(plugin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/${pluginName}`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes(router);\n });\n }\n }\n};\n\n/**\n * Register api routes\n */\nconst registerAPIRoutes = (strapi: Core.Strapi) => {\n for (const apiName of Object.keys(strapi.apis)) {\n const api = strapi.api(apiName);\n\n const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);\n\n _.forEach(api.routes, (router) => {\n // TODO: remove once auth setup\n // pass meta down to compose endpoint\n router.type = 'content-api';\n router.routes?.forEach((route) => {\n generateRouteScope(route);\n route.info = { apiName };\n });\n\n return strapi.server.routes(router);\n });\n }\n};\n"],"names":["createRouteScopeGenerator","namespace","route","prefix","endsWith","handler","_","defaultsDeep","config","auth","scope","startsWith","strapi","registerAdminRoutes","registerAPIRoutes","registerPluginRoutes","generateRouteScope","forEach","admin","routes","router","type","info","pluginName","server","Object","keys","plugins","plugin","Array","isArray","apiName","apis","api"],"mappings":";;;;AAGA,MAAMA,yBAAAA,GAA4B,CAACC,SAAAA,GAAsB,CAACC,KAAAA,GAAAA;QACxD,MAAMC,MAAAA,GAASF,SAAUG,CAAAA,QAAQ,CAAC,IAAA,CAAA,GAAQH,YAAY,CAAC,EAAEA,SAAU,CAAA,CAAC,CAAC;AAErE,QAAA,IAAI,OAAOC,KAAAA,CAAMG,OAAO,KAAK,QAAU,EAAA;YACrCC,CAAEC,CAAAA,YAAY,CAACL,KAAO,EAAA;gBACpBM,MAAQ,EAAA;oBACNC,IAAM,EAAA;wBACJC,KAAO,EAAA;AAAC,4BAAA,CAAC,EAAER,KAAAA,CAAMG,OAAO,CAACM,UAAU,CAACR,MAAU,CAAA,GAAA,EAAA,GAAKA,MAAO,CAAA,EAAED,KAAMG,CAAAA,OAAO,CAAC;AAAE;AAC9E;AACF;AACF,aAAA,CAAA;AACF;AACF,KAAA;AAEA;;IAGA,wBAAe,CAAA,CAACO,MAAAA,GAAAA;IACdC,mBAAoBD,CAAAA,MAAAA,CAAAA;IACpBE,iBAAkBF,CAAAA,MAAAA,CAAAA;IAClBG,oBAAqBH,CAAAA,MAAAA,CAAAA;AACvB,CAAA;AAEA;;;IAIA,MAAMC,sBAAsB,CAACD,MAAAA,GAAAA;AAC3B,IAAA,MAAMI,kBAAqBhB,GAAAA,yBAAAA,CAA0B,CAAC,OAAO,CAAC,CAAA;AAE9DM,IAAAA,CAAAA,CAAEW,OAAO,CAACL,MAAAA,CAAOM,KAAK,CAACC,MAAM,EAAE,CAACC,MAAAA,GAAAA;AAC9BA,QAAAA,MAAAA,CAAOC,IAAI,GAAGD,MAAOC,CAAAA,IAAI,IAAI,OAAA;AAC7BD,QAAAA,MAAAA,CAAOjB,MAAM,GAAGiB,MAAAA,CAAOjB,MAAM,IAAI,CAAC,MAAM,CAAC;AACzCiB,QAAAA,MAAAA,CAAOD,MAAM,CAACF,OAAO,CAAC,CAACf,KAAAA,GAAAA;YACrBc,kBAAmBd,CAAAA,KAAAA,CAAAA;AACnBA,YAAAA,KAAAA,CAAMoB,IAAI,GAAG;gBAAEC,UAAY,EAAA;AAAQ,aAAA;AACrC,SAAA,CAAA;QACAX,MAAOY,CAAAA,MAAM,CAACL,MAAM,CAACC,MAAAA,CAAAA;AACvB,KAAA,CAAA;AACF,CAAA;AAEA;;;IAIA,MAAML,uBAAuB,CAACH,MAAAA,GAAAA;AAC5B,IAAA,KAAK,MAAMW,UAAcE,IAAAA,MAAAA,CAAOC,IAAI,CAACd,MAAAA,CAAOe,OAAO,CAAG,CAAA;AACpD,QAAA,MAAMC,MAAShB,GAAAA,MAAAA,CAAOe,OAAO,CAACJ,UAAW,CAAA;AAEzC,QAAA,MAAMP,qBAAqBhB,yBAA0B,CAAA,CAAC,QAAQ,EAAEuB,WAAW,CAAC,CAAA;AAE5E,QAAA,IAAIM,KAAMC,CAAAA,OAAO,CAACF,MAAAA,CAAOT,MAAM,CAAG,EAAA;AAChCS,YAAAA,MAAAA,CAAOT,MAAM,CAACF,OAAO,CAAC,CAACf,KAAAA,GAAAA;gBACrBc,kBAAmBd,CAAAA,KAAAA,CAAAA;AACnBA,gBAAAA,KAAAA,CAAMoB,IAAI,GAAG;AAAEC,oBAAAA;AAAW,iBAAA;AAC5B,aAAA,CAAA;YAEAX,MAAOY,CAAAA,MAAM,CAACL,MAAM,CAAC;gBACnBE,IAAM,EAAA,OAAA;AACNlB,gBAAAA,MAAAA,EAAQ,CAAC,CAAC,EAAEoB,UAAAA,CAAW,CAAC;AACxBJ,gBAAAA,MAAAA,EAAQS,OAAOT;AACjB,aAAA,CAAA;SACK,MAAA;AACLb,YAAAA,CAAAA,CAAEW,OAAO,CAACW,MAAOT,CAAAA,MAAM,EAAE,CAACC,MAAAA,GAAAA;AACxBA,gBAAAA,MAAAA,CAAOC,IAAI,GAAGD,MAAOC,CAAAA,IAAI,IAAI,OAAA;gBAC7BD,MAAOjB,CAAAA,MAAM,GAAGiB,MAAOjB,CAAAA,MAAM,IAAI,CAAC,CAAC,EAAEoB,UAAAA,CAAW,CAAC;AACjDH,gBAAAA,MAAAA,CAAOD,MAAM,CAACF,OAAO,CAAC,CAACf,KAAAA,GAAAA;oBACrBc,kBAAmBd,CAAAA,KAAAA,CAAAA;AACnBA,oBAAAA,KAAAA,CAAMoB,IAAI,GAAG;AAAEC,wBAAAA;AAAW,qBAAA;AAC5B,iBAAA,CAAA;gBAEAX,MAAOY,CAAAA,MAAM,CAACL,MAAM,CAACC,MAAAA,CAAAA;AACvB,aAAA,CAAA;AACF;AACF;AACF,CAAA;AAEA;;IAGA,MAAMN,oBAAoB,CAACF,MAAAA,GAAAA;AACzB,IAAA,KAAK,MAAMmB,OAAWN,IAAAA,MAAAA,CAAOC,IAAI,CAACd,MAAAA,CAAOoB,IAAI,CAAG,CAAA;QAC9C,MAAMC,GAAAA,GAAMrB,MAAOqB,CAAAA,GAAG,CAACF,OAAAA,CAAAA;AAEvB,QAAA,MAAMf,qBAAqBhB,yBAA0B,CAAA,CAAC,KAAK,EAAE+B,QAAQ,CAAC,CAAA;AAEtEzB,QAAAA,CAAAA,CAAEW,OAAO,CAACgB,GAAId,CAAAA,MAAM,EAAE,CAACC,MAAAA,GAAAA;;;AAGrBA,YAAAA,MAAAA,CAAOC,IAAI,GAAG,aAAA;YACdD,MAAOD,CAAAA,MAAM,EAAEF,OAAAA,CAAQ,CAACf,KAAAA,GAAAA;gBACtBc,kBAAmBd,CAAAA,KAAAA,CAAAA;AACnBA,gBAAAA,KAAAA,CAAMoB,IAAI,GAAG;AAAES,oBAAAA;AAAQ,iBAAA;AACzB,aAAA,CAAA;AAEA,YAAA,OAAOnB,MAAOY,CAAAA,MAAM,CAACL,MAAM,CAACC,MAAAA,CAAAA;AAC9B,SAAA,CAAA;AACF;AACF,CAAA;;;;"}
|