arkos 2.0.0-next.2 → 2.0.0-next.20
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/README.md +146 -145
- package/cli.js +11 -13
- package/dist/esm/app.js +17 -16
- package/dist/esm/app.js.map +1 -1
- package/dist/esm/components/arkos-gateway/arkos-gateway.js +338 -0
- package/dist/esm/components/arkos-gateway/arkos-gateway.js.map +1 -0
- package/dist/esm/components/arkos-gateway/socket-extensions.js +168 -0
- package/dist/esm/components/arkos-gateway/socket-extensions.js.map +1 -0
- package/dist/esm/components/arkos-gateway/types.js +3 -0
- package/dist/esm/components/arkos-gateway/types.js.map +1 -0
- package/dist/esm/components/arkos-gateway/utils/helpers.js +105 -0
- package/dist/esm/components/arkos-gateway/utils/helpers.js.map +1 -0
- package/dist/esm/components/arkos-gateway/utils/memory-gateway-store.js +45 -0
- package/dist/esm/components/arkos-gateway/utils/memory-gateway-store.js.map +1 -0
- package/dist/esm/components/arkos-gateway/utils/multi-tier-arkos-gateway-store.js +40 -0
- package/dist/esm/components/arkos-gateway/utils/multi-tier-arkos-gateway-store.js.map +1 -0
- package/dist/esm/components/arkos-gateway/utils/rate-limiter.js +13 -0
- package/dist/esm/components/arkos-gateway/utils/rate-limiter.js.map +1 -0
- package/dist/esm/components/arkos-loadable-registry/index.js +1 -3
- package/dist/esm/components/arkos-loadable-registry/index.js.map +1 -1
- package/dist/esm/components/arkos-policy/index.js +3 -1
- package/dist/esm/components/arkos-policy/index.js.map +1 -1
- package/dist/esm/components/arkos-route-hook/index.js +2 -1
- package/dist/esm/components/arkos-route-hook/index.js.map +1 -1
- package/dist/esm/components/arkos-route-hook/reader.js.map +1 -1
- package/dist/esm/components/arkos-route-hook/types.js.map +1 -1
- package/dist/esm/exports/error-handler/index.js +1 -0
- package/dist/esm/exports/error-handler/index.js.map +1 -1
- package/dist/esm/exports/index.js +3 -3
- package/dist/esm/exports/index.js.map +1 -1
- package/dist/esm/exports/middlewares/index.js +1 -1
- package/dist/esm/exports/middlewares/index.js.map +1 -1
- package/dist/esm/exports/services/index.js +2 -2
- package/dist/esm/exports/services/index.js.map +1 -1
- package/dist/esm/exports/websockets.js +5 -0
- package/dist/esm/exports/websockets.js.map +1 -0
- package/dist/esm/generated.js.map +1 -1
- package/dist/esm/modules/auth/auth.controller.js +214 -222
- package/dist/esm/modules/auth/auth.controller.js.map +1 -1
- package/dist/esm/modules/auth/auth.router.js +26 -9
- package/dist/esm/modules/auth/auth.router.js.map +1 -1
- package/dist/esm/modules/auth/auth.service.js +90 -102
- package/dist/esm/modules/auth/auth.service.js.map +1 -1
- package/dist/esm/modules/auth/utils/auth-error-objects.js +2 -2
- package/dist/esm/modules/auth/utils/auth-error-objects.js.map +1 -1
- package/dist/esm/modules/auth/utils/auth-hooks-manager.js +148 -0
- package/dist/esm/modules/auth/utils/auth-hooks-manager.js.map +1 -0
- package/dist/esm/modules/auth/utils/auth-openapi-generator.js +367 -0
- package/dist/esm/modules/auth/utils/auth-openapi-generator.js.map +1 -0
- package/dist/esm/modules/auth/utils/auth-prisma-json-schema-generator.js +97 -0
- package/dist/esm/modules/auth/utils/auth-prisma-json-schema-generator.js.map +1 -0
- package/dist/esm/modules/auth/utils/docs-links.js +6 -0
- package/dist/esm/modules/auth/utils/docs-links.js.map +1 -0
- package/dist/esm/modules/auth/utils/services/auth-action.service.js +20 -16
- package/dist/esm/modules/auth/utils/services/auth-action.service.js.map +1 -1
- package/dist/esm/modules/base/base.controller.js +182 -162
- package/dist/esm/modules/base/base.controller.js.map +1 -1
- package/dist/esm/modules/base/base.middlewares.js +31 -48
- package/dist/esm/modules/base/base.middlewares.js.map +1 -1
- package/dist/esm/modules/base/base.router.js +23 -9
- package/dist/esm/modules/base/base.router.js.map +1 -1
- package/dist/esm/modules/base/base.service.js +33 -138
- package/dist/esm/modules/base/base.service.js.map +1 -1
- package/dist/esm/modules/base/types/base.service.types.js.map +1 -1
- package/dist/esm/modules/base/utils/error-prettifier.js +26 -30
- package/dist/esm/modules/base/utils/error-prettifier.js.map +1 -1
- package/dist/esm/modules/base/utils/helpers/base.service.helpers.js +26 -5
- package/dist/esm/modules/base/utils/helpers/base.service.helpers.js.map +1 -1
- package/dist/esm/modules/base/utils/model-openapi-generator.js +438 -0
- package/dist/esm/modules/base/utils/model-openapi-generator.js.map +1 -0
- package/dist/esm/modules/email/email.service.js +17 -10
- package/dist/esm/modules/email/email.service.js.map +1 -1
- package/dist/esm/modules/error-handler/error-handler.controller.js +24 -113
- package/dist/esm/modules/error-handler/error-handler.controller.js.map +1 -1
- package/dist/esm/modules/error-handler/utils/app-error.js +5 -2
- package/dist/esm/modules/error-handler/utils/app-error.js.map +1 -1
- package/dist/esm/modules/error-handler/utils/catch-async.js.map +1 -1
- package/dist/esm/modules/error-handler/utils/error-handler.helpers.js +9 -103
- package/dist/esm/modules/error-handler/utils/error-handler.helpers.js.map +1 -1
- package/dist/esm/modules/error-handler/utils/errors.js +127 -0
- package/dist/esm/modules/error-handler/utils/errors.js.map +1 -0
- package/dist/esm/modules/error-handler/utils/get-handled-error.js +68 -0
- package/dist/esm/modules/error-handler/utils/get-handled-error.js.map +1 -0
- package/dist/esm/modules/error-handler/utils/multer-error-handler.js +34 -0
- package/dist/esm/modules/error-handler/utils/multer-error-handler.js.map +1 -0
- package/dist/esm/modules/file-upload/file-upload.controller.js +208 -214
- package/dist/esm/modules/file-upload/file-upload.controller.js.map +1 -1
- package/dist/esm/modules/file-upload/file-upload.router.js +35 -12
- package/dist/esm/modules/file-upload/file-upload.router.js.map +1 -1
- package/dist/esm/modules/file-upload/file-upload.service.js +13 -8
- package/dist/esm/modules/file-upload/file-upload.service.js.map +1 -1
- package/dist/esm/modules/file-upload/utils/file-upload-json-schema-generator.js +346 -0
- package/dist/esm/modules/file-upload/utils/file-upload-json-schema-generator.js.map +1 -0
- package/dist/esm/modules/swagger/swagger.router.js +39 -22
- package/dist/esm/modules/swagger/swagger.router.js.map +1 -1
- package/dist/esm/modules/swagger/utils/get-open-api-login-html.js +305 -0
- package/dist/esm/modules/swagger/utils/get-open-api-login-html.js.map +1 -0
- package/dist/esm/modules/swagger/utils/helpers/class-validator-to-json-schema.js.map +1 -1
- package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js +6 -7
- package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js.map +1 -1
- package/dist/esm/modules/swagger/utils/helpers/openapi-schema-converter.js +6 -3
- package/dist/esm/modules/swagger/utils/helpers/openapi-schema-converter.js.map +1 -1
- package/dist/esm/server.js +1 -1
- package/dist/esm/server.js.map +1 -1
- package/dist/esm/types/arkos-config/utils.js +2 -0
- package/dist/esm/types/arkos-config/utils.js.map +1 -0
- package/dist/esm/types/arkos-prisma-input.js.map +1 -1
- package/dist/esm/types/arkos.js.map +1 -1
- package/dist/esm/types/auth.js.map +1 -1
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/new-arkos-config.js.map +1 -1
- package/dist/esm/types/router-config.js.map +1 -1
- package/dist/esm/types/upload.js +2 -0
- package/dist/esm/types/upload.js.map +1 -0
- package/dist/esm/types/validation/validation-manager.js +49 -0
- package/dist/esm/types/validation/validation-manager.js.map +1 -0
- package/dist/esm/types/validation/validator.js +2 -0
- package/dist/esm/types/validation/validator.js.map +1 -0
- package/dist/esm/utils/arkos-router/arkos-router-openapi-manager.js +68 -34
- package/dist/esm/utils/arkos-router/arkos-router-openapi-manager.js.map +1 -1
- package/dist/esm/utils/arkos-router/index.js +37 -130
- package/dist/esm/utils/arkos-router/index.js.map +1 -1
- package/dist/esm/utils/arkos-router/route-config-registry.js +2 -3
- package/dist/esm/utils/arkos-router/route-config-registry.js.map +1 -1
- package/dist/esm/utils/arkos-router/types/index.js.map +1 -1
- package/dist/esm/utils/arkos-router/types/openapi-config.js.map +1 -1
- package/dist/esm/utils/arkos-router/types/upload-config.js.map +1 -1
- package/dist/esm/utils/arkos-router/utils/helpers/apply-arkos-router-proxy.js +188 -0
- package/dist/esm/utils/arkos-router/utils/helpers/apply-arkos-router-proxy.js.map +1 -0
- package/dist/esm/utils/arkos-router/utils/helpers/index.js +88 -29
- package/dist/esm/utils/arkos-router/utils/helpers/index.js.map +1 -1
- package/dist/esm/utils/arkos-router/utils/helpers/upload-manager.js +364 -89
- package/dist/esm/utils/arkos-router/utils/helpers/upload-manager.js.map +1 -1
- package/dist/esm/utils/bundler.js +6 -6
- package/dist/esm/utils/bundler.js.map +1 -1
- package/dist/esm/utils/cli/build.js +16 -7
- package/dist/esm/utils/cli/build.js.map +1 -1
- package/dist/esm/utils/cli/dev.js +18 -28
- package/dist/esm/utils/cli/dev.js.map +1 -1
- package/dist/esm/utils/cli/export-auth-action.js +5 -4
- package/dist/esm/utils/cli/export-auth-action.js.map +1 -1
- package/dist/esm/utils/cli/generate.js +70 -56
- package/dist/esm/utils/cli/generate.js.map +1 -1
- package/dist/esm/utils/cli/index.js +54 -50
- package/dist/esm/utils/cli/index.js.map +1 -1
- package/dist/esm/utils/cli/prisma-generate.js +8 -37
- package/dist/esm/utils/cli/prisma-generate.js.map +1 -1
- package/dist/esm/utils/cli/start.js +25 -14
- package/dist/esm/utils/cli/start.js.map +1 -1
- package/dist/esm/utils/cli/utils/cli.helpers.js +1 -1
- package/dist/esm/utils/cli/utils/runtime-cli-commander.js +7 -4
- package/dist/esm/utils/cli/utils/runtime-cli-commander.js.map +1 -1
- package/dist/esm/utils/cli/utils/smart-fs-watcher.js +3 -0
- package/dist/esm/utils/cli/utils/smart-fs-watcher.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/class-validator-dto-generator.js +307 -11
- package/dist/esm/utils/cli/utils/template-generator/templates/class-validator-dto-generator.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js +16 -7
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-multiple-components.js +117 -65
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-multiple-components.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/policy-template.js +6 -8
- package/dist/esm/utils/cli/utils/template-generator/templates/policy-template.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js +13 -2
- package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/service-template.js +2 -2
- package/dist/esm/utils/cli/utils/template-generator/templates/service-template.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/zod-schema-generator.js +213 -19
- package/dist/esm/utils/cli/utils/template-generator/templates/zod-schema-generator.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generators.js +31 -18
- package/dist/esm/utils/cli/utils/template-generators.js.map +1 -1
- package/dist/esm/utils/define-config.js +14 -0
- package/dist/esm/utils/define-config.js.map +1 -1
- package/dist/esm/utils/docs-links.js +2 -0
- package/dist/esm/utils/docs-links.js.map +1 -0
- package/dist/esm/utils/dotenv.helpers.js +0 -6
- package/dist/esm/utils/dotenv.helpers.js.map +1 -1
- package/dist/esm/utils/dynamic-loader.js +2 -1
- package/dist/esm/utils/dynamic-loader.js.map +1 -1
- package/dist/esm/utils/features/api.features.js +46 -27
- package/dist/esm/utils/features/api.features.js.map +1 -1
- package/dist/esm/utils/features/port-and-host-allocator.js +4 -3
- package/dist/esm/utils/features/port-and-host-allocator.js.map +1 -1
- package/dist/esm/utils/helpers/api.features.helpers.js +20 -0
- package/dist/esm/utils/helpers/api.features.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/arkos-config.helpers.js +20 -2
- package/dist/esm/utils/helpers/arkos-config.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/exit-error.js +1 -0
- package/dist/esm/utils/helpers/exit-error.js.map +1 -1
- package/dist/esm/utils/helpers/fs.helpers.js +26 -33
- package/dist/esm/utils/helpers/fs.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/global.helpers.js +1 -1
- package/dist/esm/utils/helpers/global.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/prisma.helpers.js +10 -7
- package/dist/esm/utils/helpers/prisma.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/query-parser.helpers.js +7 -22
- package/dist/esm/utils/helpers/query-parser.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/routers.helpers.js +2 -2
- package/dist/esm/utils/helpers/routers.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/url-helpers.js +11 -0
- package/dist/esm/utils/helpers/url-helpers.js.map +1 -0
- package/dist/esm/utils/initialize-app.js +41 -17
- package/dist/esm/utils/initialize-app.js.map +1 -1
- package/dist/esm/utils/prisma/prisma-json-schema-generator.js +154 -226
- package/dist/esm/utils/prisma/prisma-json-schema-generator.js.map +1 -1
- package/dist/esm/utils/prisma/prisma-schema-parser.js +37 -11
- package/dist/esm/utils/prisma/prisma-schema-parser.js.map +1 -1
- package/dist/esm/utils/prisma/types.js.map +1 -1
- package/dist/esm/utils/remove-dir.js +1 -1
- package/dist/esm/utils/remove-dir.js.map +1 -1
- package/dist/esm/utils/setup-app.js +59 -42
- package/dist/esm/utils/setup-app.js.map +1 -1
- package/dist/esm/utils/validate-schema.js +23 -21
- package/dist/esm/utils/validate-schema.js.map +1 -1
- package/dist/types/app.d.ts +10 -7
- package/dist/types/components/arkos-gateway/arkos-gateway.d.ts +121 -0
- package/dist/types/components/arkos-gateway/socket-extensions.d.ts +79 -0
- package/dist/types/components/arkos-gateway/types.d.ts +364 -0
- package/dist/types/components/arkos-gateway/utils/helpers.d.ts +9 -0
- package/dist/types/components/arkos-gateway/utils/memory-gateway-store.d.ts +14 -0
- package/dist/types/components/arkos-gateway/utils/multi-tier-arkos-gateway-store.d.ts +20 -0
- package/dist/types/components/arkos-gateway/utils/rate-limiter.d.ts +11 -0
- package/dist/types/components/arkos-route-hook/index.d.ts +11 -5
- package/dist/types/components/arkos-route-hook/reader.d.ts +4 -7
- package/dist/types/components/arkos-route-hook/types.d.ts +9 -5
- package/dist/types/exports/error-handler/index.d.ts +1 -0
- package/dist/types/exports/index.d.ts +5 -5
- package/dist/types/exports/middlewares/index.d.ts +1 -1
- package/dist/types/exports/services/index.d.ts +3 -3
- package/dist/types/exports/websockets.d.ts +5 -0
- package/dist/types/modules/auth/auth.service.d.ts +80 -51
- package/dist/types/modules/auth/utils/auth-hooks-manager.d.ts +63 -0
- package/dist/types/modules/auth/utils/auth-openapi-generator.d.ts +9 -0
- package/dist/types/modules/auth/utils/auth-prisma-json-schema-generator.d.ts +13 -0
- package/dist/types/modules/auth/utils/docs-links.d.ts +3 -0
- package/dist/types/modules/auth/utils/services/auth-action.service.d.ts +2 -2
- package/dist/types/modules/base/base.controller.d.ts +4 -4
- package/dist/types/modules/base/base.middlewares.d.ts +1 -7
- package/dist/types/modules/base/base.service.d.ts +8 -17
- package/dist/types/modules/base/types/base.service.types.d.ts +11 -0
- package/dist/types/modules/base/utils/helpers/base.service.helpers.d.ts +1 -1
- package/dist/types/modules/base/utils/model-openapi-generator.d.ts +12 -0
- package/dist/types/modules/email/email.service.d.ts +1 -1
- package/dist/types/modules/error-handler/utils/app-error.d.ts +0 -2
- package/dist/types/modules/error-handler/utils/catch-async.d.ts +2 -2
- package/dist/types/modules/error-handler/utils/error-handler.helpers.d.ts +1 -27
- package/dist/types/modules/error-handler/utils/errors.d.ts +176 -0
- package/dist/types/modules/error-handler/utils/get-handled-error.d.ts +1 -0
- package/dist/types/modules/error-handler/utils/multer-error-handler.d.ts +7 -0
- package/dist/types/modules/file-upload/file-upload.controller.d.ts +7 -2
- package/dist/types/modules/file-upload/utils/file-upload-json-schema-generator.d.ts +12 -0
- package/dist/types/modules/swagger/swagger.router.d.ts +1 -2
- package/dist/types/modules/swagger/utils/get-open-api-login-html.d.ts +1 -0
- package/dist/types/modules/swagger/utils/helpers/get-swagger-default-configs.d.ts +48 -3
- package/dist/types/modules/swagger/utils/helpers/openapi-schema-converter.d.ts +6 -1
- package/dist/types/types/arkos-config/utils.d.ts +68 -0
- package/dist/types/types/arkos-prisma-input.d.ts +4 -3
- package/dist/types/types/arkos.d.ts +5 -15
- package/dist/types/types/auth.d.ts +4 -4
- package/dist/types/types/index.d.ts +10 -58
- package/dist/types/types/new-arkos-config.d.ts +326 -36
- package/dist/types/types/router-config.d.ts +0 -63
- package/dist/types/types/upload.d.ts +10 -0
- package/dist/types/types/validation/validation-manager.d.ts +27 -0
- package/dist/types/types/validation/validator.d.ts +2 -0
- package/dist/types/utils/arkos-router/arkos-router-openapi-manager.d.ts +14 -1
- package/dist/types/utils/arkos-router/index.d.ts +83 -8
- package/dist/types/utils/arkos-router/types/index.d.ts +74 -23
- package/dist/types/utils/arkos-router/types/openapi-config.d.ts +3 -2
- package/dist/types/utils/arkos-router/types/upload-config.d.ts +65 -8
- package/dist/types/utils/arkos-router/utils/helpers/apply-arkos-router-proxy.d.ts +6 -0
- package/dist/types/utils/arkos-router/utils/helpers/index.d.ts +4 -6
- package/dist/types/utils/arkos-router/utils/helpers/upload-manager.d.ts +1 -36
- package/dist/types/utils/bundler.d.ts +1 -1
- package/dist/types/utils/cli/build.d.ts +1 -1
- package/dist/types/utils/cli/generate.d.ts +15 -6
- package/dist/types/utils/cli/start.d.ts +3 -1
- package/dist/types/utils/cli/utils/template-generator/templates/class-validator-dto-generator.d.ts +11 -0
- package/dist/types/utils/cli/utils/template-generator/templates/zod-schema-generator.d.ts +4 -0
- package/dist/types/utils/define-config.d.ts +1 -1
- package/dist/types/utils/docs-links.d.ts +1 -0
- package/dist/types/utils/dynamic-loader.d.ts +2 -2
- package/dist/types/utils/features/api.features.d.ts +1 -2
- package/dist/types/utils/helpers/arkos-config.helpers.d.ts +7 -0
- package/dist/types/utils/helpers/fs.helpers.d.ts +1 -16
- package/dist/types/utils/helpers/global.helpers.d.ts +1 -0
- package/dist/types/utils/helpers/prisma.helpers.d.ts +1 -1
- package/dist/types/utils/helpers/query-parser.helpers.d.ts +1 -1
- package/dist/types/utils/helpers/url-helpers.d.ts +1 -0
- package/dist/types/utils/initialize-app.d.ts +1 -0
- package/dist/types/utils/prisma/prisma-json-schema-generator.d.ts +12 -30
- package/dist/types/utils/prisma/prisma-schema-parser.d.ts +4 -0
- package/dist/types/utils/prisma/types.d.ts +3 -2
- package/package.json +117 -84
- package/dist/cjs/app.js +0 -79
- package/dist/cjs/app.js.map +0 -1
- package/dist/cjs/components/arkos-loadable-registry/index.js +0 -28
- package/dist/cjs/components/arkos-loadable-registry/index.js.map +0 -1
- package/dist/cjs/components/arkos-loadable-translator/index.js +0 -144
- package/dist/cjs/components/arkos-loadable-translator/index.js.map +0 -1
- package/dist/cjs/components/arkos-policy/index.js +0 -36
- package/dist/cjs/components/arkos-policy/index.js.map +0 -1
- package/dist/cjs/components/arkos-policy/types.js +0 -3
- package/dist/cjs/components/arkos-policy/types.js.map +0 -1
- package/dist/cjs/components/arkos-route-hook/index.js +0 -50
- package/dist/cjs/components/arkos-route-hook/index.js.map +0 -1
- package/dist/cjs/components/arkos-route-hook/reader.js +0 -47
- package/dist/cjs/components/arkos-route-hook/reader.js.map +0 -1
- package/dist/cjs/components/arkos-route-hook/types.js +0 -3
- package/dist/cjs/components/arkos-route-hook/types.js.map +0 -1
- package/dist/cjs/components/arkos-service-hook/index.js +0 -35
- package/dist/cjs/components/arkos-service-hook/index.js.map +0 -1
- package/dist/cjs/components/arkos-service-hook/reader.js +0 -30
- package/dist/cjs/components/arkos-service-hook/reader.js.map +0 -1
- package/dist/cjs/components/arkos-service-hook/types.js +0 -3
- package/dist/cjs/components/arkos-service-hook/types.js.map +0 -1
- package/dist/cjs/exports/auth/index.js +0 -6
- package/dist/cjs/exports/auth/index.js.map +0 -1
- package/dist/cjs/exports/config.js +0 -6
- package/dist/cjs/exports/config.js.map +0 -1
- package/dist/cjs/exports/controllers/index.js +0 -42
- package/dist/cjs/exports/controllers/index.js.map +0 -1
- package/dist/cjs/exports/error-handler/index.js +0 -11
- package/dist/cjs/exports/error-handler/index.js.map +0 -1
- package/dist/cjs/exports/index.js +0 -23
- package/dist/cjs/exports/index.js.map +0 -1
- package/dist/cjs/exports/middlewares/index.js +0 -7
- package/dist/cjs/exports/middlewares/index.js.map +0 -1
- package/dist/cjs/exports/prisma/index.js +0 -13
- package/dist/cjs/exports/prisma/index.js.map +0 -1
- package/dist/cjs/exports/services/index.js +0 -53
- package/dist/cjs/exports/services/index.js.map +0 -1
- package/dist/cjs/exports/utils/index.js +0 -26
- package/dist/cjs/exports/utils/index.js.map +0 -1
- package/dist/cjs/exports/validation/index.js +0 -11
- package/dist/cjs/exports/validation/index.js.map +0 -1
- package/dist/cjs/generated.js +0 -7
- package/dist/cjs/generated.js.map +0 -1
- package/dist/cjs/modules/auth/auth.controller.js +0 -254
- package/dist/cjs/modules/auth/auth.controller.js.map +0 -1
- package/dist/cjs/modules/auth/auth.router.js +0 -113
- package/dist/cjs/modules/auth/auth.router.js.map +0 -1
- package/dist/cjs/modules/auth/auth.service.js +0 -277
- package/dist/cjs/modules/auth/auth.service.js.map +0 -1
- package/dist/cjs/modules/auth/utils/auth-error-objects.js +0 -10
- package/dist/cjs/modules/auth/utils/auth-error-objects.js.map +0 -1
- package/dist/cjs/modules/auth/utils/helpers/auth.controller.helpers.js +0 -83
- package/dist/cjs/modules/auth/utils/helpers/auth.controller.helpers.js.map +0 -1
- package/dist/cjs/modules/auth/utils/services/auth-action.service.js +0 -150
- package/dist/cjs/modules/auth/utils/services/auth-action.service.js.map +0 -1
- package/dist/cjs/modules/base/base.controller.js +0 -275
- package/dist/cjs/modules/base/base.controller.js.map +0 -1
- package/dist/cjs/modules/base/base.middlewares.js +0 -231
- package/dist/cjs/modules/base/base.middlewares.js.map +0 -1
- package/dist/cjs/modules/base/base.router.js +0 -112
- package/dist/cjs/modules/base/base.router.js.map +0 -1
- package/dist/cjs/modules/base/base.service.js +0 -432
- package/dist/cjs/modules/base/base.service.js.map +0 -1
- package/dist/cjs/modules/base/types/base.service.types.js +0 -3
- package/dist/cjs/modules/base/types/base.service.types.js.map +0 -1
- package/dist/cjs/modules/base/utils/error-prettifier.js +0 -188
- package/dist/cjs/modules/base/utils/error-prettifier.js.map +0 -1
- package/dist/cjs/modules/base/utils/helpers/base.middlewares.helpers.js +0 -49
- package/dist/cjs/modules/base/utils/helpers/base.middlewares.helpers.js.map +0 -1
- package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js +0 -13
- package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js.map +0 -1
- package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js +0 -222
- package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js.map +0 -1
- package/dist/cjs/modules/base/utils/router-validator.js +0 -13
- package/dist/cjs/modules/base/utils/router-validator.js.map +0 -1
- package/dist/cjs/modules/base/utils/service-hooks-manager.js +0 -19
- package/dist/cjs/modules/base/utils/service-hooks-manager.js.map +0 -1
- package/dist/cjs/modules/debugger/debugger.service.js +0 -59
- package/dist/cjs/modules/debugger/debugger.service.js.map +0 -1
- package/dist/cjs/modules/email/email.service.js +0 -106
- package/dist/cjs/modules/email/email.service.js.map +0 -1
- package/dist/cjs/modules/error-handler/error-handler.controller.js +0 -192
- package/dist/cjs/modules/error-handler/error-handler.controller.js.map +0 -1
- package/dist/cjs/modules/error-handler/utils/app-error.js +0 -28
- package/dist/cjs/modules/error-handler/utils/app-error.js.map +0 -1
- package/dist/cjs/modules/error-handler/utils/catch-async.js +0 -21
- package/dist/cjs/modules/error-handler/utils/catch-async.js.map +0 -1
- package/dist/cjs/modules/error-handler/utils/error-handler.helpers.js +0 -218
- package/dist/cjs/modules/error-handler/utils/error-handler.helpers.js.map +0 -1
- package/dist/cjs/modules/file-upload/file-upload.controller.js +0 -256
- package/dist/cjs/modules/file-upload/file-upload.controller.js.map +0 -1
- package/dist/cjs/modules/file-upload/file-upload.router.js +0 -80
- package/dist/cjs/modules/file-upload/file-upload.router.js.map +0 -1
- package/dist/cjs/modules/file-upload/file-upload.service.js +0 -343
- package/dist/cjs/modules/file-upload/file-upload.service.js.map +0 -1
- package/dist/cjs/modules/file-upload/utils/helpers/file-extensions.js +0 -134
- package/dist/cjs/modules/file-upload/utils/helpers/file-extensions.js.map +0 -1
- package/dist/cjs/modules/file-upload/utils/helpers/file-upload.helpers.js +0 -100
- package/dist/cjs/modules/file-upload/utils/helpers/file-upload.helpers.js.map +0 -1
- package/dist/cjs/modules/swagger/swagger.router.js +0 -65
- package/dist/cjs/modules/swagger/swagger.router.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/built-in-route-path-object-manager.js +0 -7
- package/dist/cjs/modules/swagger/utils/built-in-route-path-object-manager.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/class-validator-to-json-schema.js +0 -53
- package/dist/cjs/modules/swagger/utils/helpers/class-validator-to-json-schema.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +0 -473
- package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js +0 -491
- package/dist/cjs/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js +0 -73
- package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js +0 -37
- package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +0 -61
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +0 -31
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +0 -49
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +0 -39
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +0 -468
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js +0 -260
- package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/openapi-schema-converter.js +0 -331
- package/dist/cjs/modules/swagger/utils/helpers/openapi-schema-converter.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js +0 -109
- package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js.map +0 -1
- package/dist/cjs/package.json +0 -3
- package/dist/cjs/server.js +0 -60
- package/dist/cjs/server.js.map +0 -1
- package/dist/cjs/types/arkos-prisma-input.js +0 -3
- package/dist/cjs/types/arkos-prisma-input.js.map +0 -1
- package/dist/cjs/types/arkos.js +0 -3
- package/dist/cjs/types/arkos.js.map +0 -1
- package/dist/cjs/types/auth.js +0 -3
- package/dist/cjs/types/auth.js.map +0 -1
- package/dist/cjs/types/index.js +0 -3
- package/dist/cjs/types/index.js.map +0 -1
- package/dist/cjs/types/new-arkos-config.js +0 -3
- package/dist/cjs/types/new-arkos-config.js.map +0 -1
- package/dist/cjs/types/router-config.js +0 -3
- package/dist/cjs/types/router-config.js.map +0 -1
- package/dist/cjs/utils/arkos-env.js +0 -9
- package/dist/cjs/utils/arkos-env.js.map +0 -1
- package/dist/cjs/utils/arkos-router/arkos-router-openapi-manager.js +0 -126
- package/dist/cjs/utils/arkos-router/arkos-router-openapi-manager.js.map +0 -1
- package/dist/cjs/utils/arkos-router/index.js +0 -253
- package/dist/cjs/utils/arkos-router/index.js.map +0 -1
- package/dist/cjs/utils/arkos-router/route-config-registry.js +0 -16
- package/dist/cjs/utils/arkos-router/route-config-registry.js.map +0 -1
- package/dist/cjs/utils/arkos-router/route-config-validator.js +0 -56
- package/dist/cjs/utils/arkos-router/route-config-validator.js.map +0 -1
- package/dist/cjs/utils/arkos-router/types/body-parser-config.js +0 -3
- package/dist/cjs/utils/arkos-router/types/body-parser-config.js.map +0 -1
- package/dist/cjs/utils/arkos-router/types/index.js +0 -3
- package/dist/cjs/utils/arkos-router/types/index.js.map +0 -1
- package/dist/cjs/utils/arkos-router/types/openapi-config.js +0 -3
- package/dist/cjs/utils/arkos-router/types/openapi-config.js.map +0 -1
- package/dist/cjs/utils/arkos-router/types/upload-config.js +0 -3
- package/dist/cjs/utils/arkos-router/types/upload-config.js.map +0 -1
- package/dist/cjs/utils/arkos-router/utils/helpers/index.js +0 -163
- package/dist/cjs/utils/arkos-router/utils/helpers/index.js.map +0 -1
- package/dist/cjs/utils/arkos-router/utils/helpers/upload-manager.js +0 -283
- package/dist/cjs/utils/arkos-router/utils/helpers/upload-manager.js.map +0 -1
- package/dist/cjs/utils/bundler.js +0 -163
- package/dist/cjs/utils/bundler.js.map +0 -1
- package/dist/cjs/utils/cli/build.js +0 -199
- package/dist/cjs/utils/cli/build.js.map +0 -1
- package/dist/cjs/utils/cli/dev.js +0 -128
- package/dist/cjs/utils/cli/dev.js.map +0 -1
- package/dist/cjs/utils/cli/export-auth-action.js +0 -79
- package/dist/cjs/utils/cli/export-auth-action.js.map +0 -1
- package/dist/cjs/utils/cli/generate.js +0 -229
- package/dist/cjs/utils/cli/generate.js.map +0 -1
- package/dist/cjs/utils/cli/index.js +0 -191
- package/dist/cjs/utils/cli/index.js.map +0 -1
- package/dist/cjs/utils/cli/prisma-generate.js +0 -112
- package/dist/cjs/utils/cli/prisma-generate.js.map +0 -1
- package/dist/cjs/utils/cli/start.js +0 -72
- package/dist/cjs/utils/cli/start.js.map +0 -1
- package/dist/cjs/utils/cli/utils/cli.helpers.js +0 -24
- package/dist/cjs/utils/cli/utils/cli.helpers.js.map +0 -1
- package/dist/cjs/utils/cli/utils/runtime-cli-commander.js +0 -115
- package/dist/cjs/utils/cli/utils/runtime-cli-commander.js.map +0 -1
- package/dist/cjs/utils/cli/utils/smart-fs-watcher.js +0 -73
- package/dist/cjs/utils/cli/utils/smart-fs-watcher.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/class-validator-dto-generator.js +0 -550
- package/dist/cjs/utils/cli/utils/template-generator/templates/class-validator-dto-generator.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js +0 -52
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-multiple-components.js +0 -139
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-multiple-components.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/policy-template.js +0 -53
- package/dist/cjs/utils/cli/utils/template-generator/templates/policy-template.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/route-hook.template.js +0 -39
- package/dist/cjs/utils/cli/utils/template-generator/templates/route-hook.template.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js +0 -19
- package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/service-hook.template.js +0 -32
- package/dist/cjs/utils/cli/utils/template-generator/templates/service-hook.template.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/service-template.js +0 -50
- package/dist/cjs/utils/cli/utils/template-generator/templates/service-template.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/zod-schema-generator.js +0 -351
- package/dist/cjs/utils/cli/utils/template-generator/templates/zod-schema-generator.js.map +0 -1
- package/dist/cjs/utils/cli/utils/template-generators.js +0 -52
- package/dist/cjs/utils/cli/utils/template-generators.js.map +0 -1
- package/dist/cjs/utils/cli/utils/watermark-stamper.js +0 -26
- package/dist/cjs/utils/cli/utils/watermark-stamper.js.map +0 -1
- package/dist/cjs/utils/define-config.js +0 -46
- package/dist/cjs/utils/define-config.js.map +0 -1
- package/dist/cjs/utils/dotenv.helpers.js +0 -52
- package/dist/cjs/utils/dotenv.helpers.js.map +0 -1
- package/dist/cjs/utils/dynamic-loader.js +0 -22
- package/dist/cjs/utils/dynamic-loader.js.map +0 -1
- package/dist/cjs/utils/expand-env.js +0 -72
- package/dist/cjs/utils/expand-env.js.map +0 -1
- package/dist/cjs/utils/features/api.features.js +0 -201
- package/dist/cjs/utils/features/api.features.js.map +0 -1
- package/dist/cjs/utils/features/port-and-host-allocator.js +0 -129
- package/dist/cjs/utils/features/port-and-host-allocator.js.map +0 -1
- package/dist/cjs/utils/helpers/api.features.helpers.js +0 -327
- package/dist/cjs/utils/helpers/api.features.helpers.js.map +0 -1
- package/dist/cjs/utils/helpers/arkos-config.helpers.js +0 -86
- package/dist/cjs/utils/helpers/arkos-config.helpers.js.map +0 -1
- package/dist/cjs/utils/helpers/change-case.helpers.js +0 -177
- package/dist/cjs/utils/helpers/change-case.helpers.js.map +0 -1
- package/dist/cjs/utils/helpers/deepmerge.helper.js +0 -115
- package/dist/cjs/utils/helpers/deepmerge.helper.js.map +0 -1
- package/dist/cjs/utils/helpers/exit-error.js +0 -12
- package/dist/cjs/utils/helpers/exit-error.js.map +0 -1
- package/dist/cjs/utils/helpers/fs.helpers.js +0 -60
- package/dist/cjs/utils/helpers/fs.helpers.js.map +0 -1
- package/dist/cjs/utils/helpers/global.helpers.js +0 -105
- package/dist/cjs/utils/helpers/global.helpers.js.map +0 -1
- package/dist/cjs/utils/helpers/prisma.helpers.js +0 -53
- package/dist/cjs/utils/helpers/prisma.helpers.js.map +0 -1
- package/dist/cjs/utils/helpers/query-parser.helpers.js +0 -69
- package/dist/cjs/utils/helpers/query-parser.helpers.js.map +0 -1
- package/dist/cjs/utils/helpers/routers.helpers.js +0 -36
- package/dist/cjs/utils/helpers/routers.helpers.js.map +0 -1
- package/dist/cjs/utils/helpers/text.helpers.js +0 -28
- package/dist/cjs/utils/helpers/text.helpers.js.map +0 -1
- package/dist/cjs/utils/initialize-app.js +0 -55
- package/dist/cjs/utils/initialize-app.js.map +0 -1
- package/dist/cjs/utils/prisma/prisma-json-schema-generator.js +0 -437
- package/dist/cjs/utils/prisma/prisma-json-schema-generator.js.map +0 -1
- package/dist/cjs/utils/prisma/prisma-schema-parser.js +0 -360
- package/dist/cjs/utils/prisma/prisma-schema-parser.js.map +0 -1
- package/dist/cjs/utils/prisma/types.js +0 -3
- package/dist/cjs/utils/prisma/types.js.map +0 -1
- package/dist/cjs/utils/remove-dir.js +0 -14
- package/dist/cjs/utils/remove-dir.js.map +0 -1
- package/dist/cjs/utils/setup-app.js +0 -119
- package/dist/cjs/utils/setup-app.js.map +0 -1
- package/dist/cjs/utils/sheu.js +0 -131
- package/dist/cjs/utils/sheu.js.map +0 -1
- package/dist/cjs/utils/validate-dto.js +0 -19
- package/dist/cjs/utils/validate-dto.js.map +0 -1
- package/dist/cjs/utils/validate-schema.js +0 -75
- package/dist/cjs/utils/validate-schema.js.map +0 -1
- package/dist/esm/components/arkos-loadable-translator/index.js +0 -138
- package/dist/esm/components/arkos-loadable-translator/index.js.map +0 -1
- package/dist/esm/components/arkos-service-hook/index.js +0 -32
- package/dist/esm/components/arkos-service-hook/index.js.map +0 -1
- package/dist/esm/components/arkos-service-hook/reader.js +0 -24
- package/dist/esm/components/arkos-service-hook/reader.js.map +0 -1
- package/dist/esm/components/arkos-service-hook/types.js +0 -2
- package/dist/esm/components/arkos-service-hook/types.js.map +0 -1
- package/dist/esm/modules/base/utils/helpers/base.router.helpers.js +0 -10
- package/dist/esm/modules/base/utils/helpers/base.router.helpers.js.map +0 -1
- package/dist/esm/modules/base/utils/service-hooks-manager.js +0 -17
- package/dist/esm/modules/base/utils/service-hooks-manager.js.map +0 -1
- package/dist/esm/modules/swagger/utils/built-in-route-path-object-manager.js +0 -5
- package/dist/esm/modules/swagger/utils/built-in-route-path-object-manager.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +0 -469
- package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js +0 -485
- package/dist/esm/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js +0 -34
- package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +0 -55
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +0 -25
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +0 -46
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +0 -33
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +0 -462
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js +0 -255
- package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js +0 -98
- package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js.map +0 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/route-hook.template.js +0 -36
- package/dist/esm/utils/cli/utils/template-generator/templates/route-hook.template.js.map +0 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/service-hook.template.js +0 -29
- package/dist/esm/utils/cli/utils/template-generator/templates/service-hook.template.js.map +0 -1
- package/dist/types/components/arkos-loadable-translator/index.d.ts +0 -53
- package/dist/types/components/arkos-service-hook/index.d.ts +0 -41
- package/dist/types/components/arkos-service-hook/reader.d.ts +0 -35
- package/dist/types/components/arkos-service-hook/types.d.ts +0 -240
- package/dist/types/modules/base/utils/helpers/base.router.helpers.d.ts +0 -3
- package/dist/types/modules/base/utils/service-hooks-manager.d.ts +0 -10
- package/dist/types/modules/swagger/utils/built-in-route-path-object-manager.d.ts +0 -4
- package/dist/types/modules/swagger/utils/helpers/get-authentication-json-schema-paths.d.ts +0 -5
- package/dist/types/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.d.ts +0 -3
- package/dist/types/modules/swagger/utils/helpers/get-system-json-schema-paths.d.ts +0 -2
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.d.ts +0 -1
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.d.ts +0 -1
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.d.ts +0 -4
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.d.ts +0 -1
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.d.ts +0 -2
- package/dist/types/modules/swagger/utils/helpers/missing-json-schemas-generator.d.ts +0 -76
- package/dist/types/modules/swagger/utils/helpers/swagger.router.helpers.d.ts +0 -19
- package/dist/types/utils/cli/utils/template-generator/templates/route-hook.template.d.ts +0 -2
- package/dist/types/utils/cli/utils/template-generator/templates/service-hook.template.d.ts +0 -2
package/dist/cjs/utils/sheu.js
DELETED
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
class Sheu {
|
|
4
|
-
getTimestamp() {
|
|
5
|
-
return new Date().toTimeString().split(" ")[0];
|
|
6
|
-
}
|
|
7
|
-
formatText(content = "", options = {}) {
|
|
8
|
-
const label = options?.label
|
|
9
|
-
? content
|
|
10
|
-
? options?.label + " "
|
|
11
|
-
: content === null
|
|
12
|
-
? options?.label + " "
|
|
13
|
-
: options?.label
|
|
14
|
-
: "";
|
|
15
|
-
let result = `${label}${content}`;
|
|
16
|
-
if (options.timestamp) {
|
|
17
|
-
const timestamp = this.getTimestamp();
|
|
18
|
-
if (options.timestamp === true)
|
|
19
|
-
result = `${label}\x1b[90m${timestamp}\x1b[0m ${content}`;
|
|
20
|
-
else if (typeof options.timestamp === "string") {
|
|
21
|
-
const colorCode = this.getColorCode(options.timestamp);
|
|
22
|
-
result = `${label}${colorCode}${timestamp}\x1b[0m ${content}`;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
if (options.bold)
|
|
26
|
-
result = `\x1b[1m${result}\x1b[0m`;
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
29
|
-
getColorCode(color) {
|
|
30
|
-
const colorMap = {
|
|
31
|
-
red: "\x1b[31m",
|
|
32
|
-
blue: "\x1b[34m",
|
|
33
|
-
green: "\x1b[32m",
|
|
34
|
-
yellow: "\x1b[33m",
|
|
35
|
-
cyan: "\x1b[36m",
|
|
36
|
-
magenta: "\x1b[35m",
|
|
37
|
-
white: "\x1b[37m",
|
|
38
|
-
black: "\x1b[30m",
|
|
39
|
-
gray: "\x1b[90m",
|
|
40
|
-
orange: "\x1b[91m",
|
|
41
|
-
};
|
|
42
|
-
return colorMap[color] || "\x1b[90m";
|
|
43
|
-
}
|
|
44
|
-
red(content, options) {
|
|
45
|
-
const coloredText = `\x1b[31m${content}\x1b[0m`;
|
|
46
|
-
return this.formatText(coloredText, options || {});
|
|
47
|
-
}
|
|
48
|
-
blue(content, options) {
|
|
49
|
-
const coloredText = `\x1b[34m${content}\x1b[0m`;
|
|
50
|
-
return this.formatText(coloredText, options || {});
|
|
51
|
-
}
|
|
52
|
-
green(content, options) {
|
|
53
|
-
const coloredText = `\x1b[32m${content}\x1b[0m`;
|
|
54
|
-
return this.formatText(coloredText, options || {});
|
|
55
|
-
}
|
|
56
|
-
yellow(content, options) {
|
|
57
|
-
const coloredText = `\x1b[33m${content}\x1b[0m`;
|
|
58
|
-
return this.formatText(coloredText, options || {});
|
|
59
|
-
}
|
|
60
|
-
cyan(content, options) {
|
|
61
|
-
const coloredText = `\x1b[36m${content}\x1b[0m`;
|
|
62
|
-
return this.formatText(coloredText, options || {});
|
|
63
|
-
}
|
|
64
|
-
magenta(content, options) {
|
|
65
|
-
const coloredText = `\x1b[35m${content}\x1b[0m`;
|
|
66
|
-
return this.formatText(coloredText, options || {});
|
|
67
|
-
}
|
|
68
|
-
white(content, options) {
|
|
69
|
-
const coloredText = `\x1b[37m${content}\x1b[0m`;
|
|
70
|
-
return this.formatText(coloredText, options || {});
|
|
71
|
-
}
|
|
72
|
-
black(content, options) {
|
|
73
|
-
const coloredText = `\x1b[30m${content}\x1b[0m`;
|
|
74
|
-
return this.formatText(coloredText, options || {});
|
|
75
|
-
}
|
|
76
|
-
gray(content, options) {
|
|
77
|
-
const coloredText = `\x1b[90m${content}\x1b[0m`;
|
|
78
|
-
return this.formatText(coloredText, options || {});
|
|
79
|
-
}
|
|
80
|
-
orange(content, options) {
|
|
81
|
-
const coloredText = `\x1b[91m${content}\x1b[0m`;
|
|
82
|
-
return this.formatText(coloredText, options || {});
|
|
83
|
-
}
|
|
84
|
-
bold(content, options) {
|
|
85
|
-
return this.formatText(content, { ...options, bold: true });
|
|
86
|
-
}
|
|
87
|
-
info(message, options) {
|
|
88
|
-
const label = `[\x1b[36mInfo\x1b[0m]`;
|
|
89
|
-
const result = this.formatText(message, { ...options, label });
|
|
90
|
-
console.info(result);
|
|
91
|
-
return result;
|
|
92
|
-
}
|
|
93
|
-
print(message, options) {
|
|
94
|
-
const result = this.formatText(message, { ...options });
|
|
95
|
-
console.info(result);
|
|
96
|
-
return result;
|
|
97
|
-
}
|
|
98
|
-
error(message, options) {
|
|
99
|
-
const label = `[\x1b[31mError\x1b[0m]`;
|
|
100
|
-
const result = this.formatText(message, { ...options, label });
|
|
101
|
-
console.error(result);
|
|
102
|
-
return result;
|
|
103
|
-
}
|
|
104
|
-
ready(message, options) {
|
|
105
|
-
const label = `[\x1b[32mReady\x1b[0m]`;
|
|
106
|
-
const result = this.formatText(message, { ...options, label });
|
|
107
|
-
console.info(result);
|
|
108
|
-
return result;
|
|
109
|
-
}
|
|
110
|
-
done(message, options) {
|
|
111
|
-
const label = `[\x1b[32mDone\x1b[0m]`;
|
|
112
|
-
const result = this.formatText(message, { ...options, label });
|
|
113
|
-
console.info(result);
|
|
114
|
-
return result;
|
|
115
|
-
}
|
|
116
|
-
warn(message, options) {
|
|
117
|
-
const label = `[\x1b[33mWarn\x1b[0m]`;
|
|
118
|
-
const result = this.formatText(message, { ...options, label });
|
|
119
|
-
console.warn(result);
|
|
120
|
-
return result;
|
|
121
|
-
}
|
|
122
|
-
debug(message, options) {
|
|
123
|
-
const label = `[\x1b[35mDebug\x1b[0m]`;
|
|
124
|
-
const result = this.formatText(message, { ...options, label });
|
|
125
|
-
console.debug(result);
|
|
126
|
-
return result;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
const sheu = new Sheu();
|
|
130
|
-
exports.default = sheu;
|
|
131
|
-
//# sourceMappingURL=sheu.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sheu.js","sourceRoot":"","sources":["../../../src/utils/sheu.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Sheu - Simplified terminal color utility for styling console output\n */\nclass Sheu {\n /**\n * Get current timestamp in HH:MM:SS format\n */\n private getTimestamp(): string {\n return new Date().toTimeString().split(\" \")[0];\n }\n\n /**\n * Apply timestamp and bold formatting if requested\n */\n private formatText(\n content: any = \"\",\n options: {\n timestamp?: boolean | string;\n bold?: boolean;\n label?: string;\n } = {}\n ): string {\n const label = options?.label\n ? content\n ? options?.label + \" \"\n : content === null\n ? options?.label + \" \"\n : options?.label\n : \"\";\n let result = `${label}${content}`;\n\n if (options.timestamp) {\n const timestamp = this.getTimestamp();\n if (options.timestamp === true)\n result = `${label}\\x1b[90m${timestamp}\\x1b[0m ${content}`;\n else if (typeof options.timestamp === \"string\") {\n const colorCode = this.getColorCode(options.timestamp);\n result = `${label}${colorCode}${timestamp}\\x1b[0m ${content}`;\n }\n }\n\n if (options.bold) result = `\\x1b[1m${result}\\x1b[0m`;\n\n return result;\n }\n\n /**\n * Get ANSI color code for color name\n */\n private getColorCode(color: string): string {\n const colorMap: { [key: string]: string } = {\n red: \"\\x1b[31m\",\n blue: \"\\x1b[34m\",\n green: \"\\x1b[32m\",\n yellow: \"\\x1b[33m\",\n cyan: \"\\x1b[36m\",\n magenta: \"\\x1b[35m\",\n white: \"\\x1b[37m\",\n black: \"\\x1b[30m\",\n gray: \"\\x1b[90m\",\n orange: \"\\x1b[91m\",\n };\n return colorMap[color] || \"\\x1b[90m\"; // Default to gray if color not found\n }\n\n /**\n * Red color\n */\n red(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[31m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Blue color\n */\n blue(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[34m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Green color\n */\n green(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[32m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Yellow color\n */\n yellow(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[33m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Cyan color\n */\n cyan(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[36m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Magenta color\n */\n magenta(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[35m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * White color\n */\n white(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[37m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Black color\n */\n black(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[30m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Gray color\n */\n gray(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[90m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Orange color\n */\n orange(\n content: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const coloredText = `\\x1b[91m${content}\\x1b[0m`;\n return this.formatText(coloredText, options || {});\n }\n\n /**\n * Bold text formatting\n */\n bold(content: any, options?: { timestamp?: boolean | string }): string {\n return this.formatText(content, { ...options, bold: true });\n }\n\n /**\n * Info label with cyan color [INFO]\n */\n info(\n message: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const label = `[\\x1b[36mInfo\\x1b[0m]`;\n const result = this.formatText(message, { ...options, label });\n console.info(result);\n return result;\n }\n\n /**\n * Simple Log with no label\n */\n print(\n message: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const result = this.formatText(message, { ...options });\n console.info(result);\n return result;\n }\n\n /**\n * Error label with red color [ERROR]\n */\n error(\n message: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const label = `[\\x1b[31mError\\x1b[0m]`;\n const result = this.formatText(message, { ...options, label });\n console.error(result);\n return result;\n }\n\n /**\n * Ready label with green color [READY]\n */\n ready(\n message: string,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n // const label = `\\x1b[32m✓\\x1b[0m`;\n const label = `[\\x1b[32mReady\\x1b[0m]`;\n const result = this.formatText(message, { ...options, label });\n console.info(result);\n return result;\n }\n\n /**\n * Done label with green color [DONE]\n */\n done(\n message: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const label = `[\\x1b[32mDone\\x1b[0m]`;\n const result = this.formatText(message, { ...options, label });\n console.info(result);\n return result;\n }\n\n /**\n * Warning label with yellow color [WARN]\n */\n warn(\n message: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const label = `[\\x1b[33mWarn\\x1b[0m]`;\n const result = this.formatText(message, { ...options, label });\n console.warn(result);\n return result;\n }\n\n /**\n * Debug label with magenta color [DEBUG]\n */\n debug(\n message: any,\n options?: { timestamp?: boolean | string; bold?: boolean }\n ): string {\n const label = `[\\x1b[35mDebug\\x1b[0m]`;\n const result = this.formatText(message, { ...options, label });\n console.debug(result);\n return result;\n }\n}\n\nconst sheu = new Sheu();\n\nexport default sheu;\n"]}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.default = validateDto;
|
|
7
|
-
const class_transformer_1 = require("class-transformer");
|
|
8
|
-
const class_validator_1 = require("class-validator");
|
|
9
|
-
const arkos_config_helpers_1 = require("./helpers/arkos-config.helpers.js");
|
|
10
|
-
const deepmerge_helper_1 = __importDefault(require("./helpers/deepmerge.helper.js"));
|
|
11
|
-
async function validateDto(DtoClass, data, validationOptions) {
|
|
12
|
-
const arkosConfig = (0, arkos_config_helpers_1.getArkosConfig)();
|
|
13
|
-
const dataDto = (0, class_transformer_1.plainToInstance)(DtoClass, data);
|
|
14
|
-
const errors = await (0, class_validator_1.validate)(dataDto, (0, deepmerge_helper_1.default)(arkosConfig?.validation?.validationOptions || {}, validationOptions || {}));
|
|
15
|
-
if (errors.length > 0)
|
|
16
|
-
throw errors;
|
|
17
|
-
return dataDto;
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=validate-dto.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validate-dto.js","sourceRoot":"","sources":["../../../src/utils/validate-dto.ts"],"names":[],"mappings":";;;;;AAoCA,8BAkBC;AAtDD,yDAAsE;AACtE,qDAA6D;AAC7D,yEAAgE;AAChE,kFAAmD;AAiCpC,KAAK,UAAU,WAAW,CACvC,QAA6B,EAC7B,IAAyB,EACzB,iBAAoC;IAEpC,MAAM,WAAW,GAAG,IAAA,qCAAc,GAAE,CAAC;IACrC,MAAM,OAAO,GAAG,IAAA,mCAAe,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAC3B,OAAO,EACP,IAAA,0BAAS,EACP,WAAW,EAAE,UAAU,EAAE,iBAAiB,IAAI,EAAE,EAChD,iBAAiB,IAAI,EAAE,CACxB,CACF,CAAC;IAEF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,MAAM,CAAC;IAEpC,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import { ClassConstructor, plainToInstance } from \"class-transformer\";\nimport { validate, ValidatorOptions } from \"class-validator\";\nimport { getArkosConfig } from \"./helpers/arkos-config.helpers\";\nimport deepmerge from \"./helpers/deepmerge.helper\";\n\n/**\n * Used to easy validate your data with class validator by passing the validator class and the data to validate, and if whished some validation options\n *\n * @param {ClassConstructor<T>} DtoClass - The DTO class you want to use to validate the data\n * @param {Record<string, any>} data - The data to validated\n * @param {ValidatorOptions} validationOptions - class-validator validation options, default {whitelist: true}\n * @returns {Promise<T> | AppError} - returns the validated data or the encountered errors.\n *\n *\n * @example\n * ```ts\n * class CreateUserDto {\n * @IsString()\n * name: string;\n *\n * @IsEmail()\n * email: string;\n * }\n *\n * async function main() {\n * const data = { name: \"Uanela Como\", email: \"invalid-email\" };\n * try {\n * const validatedUser = await validateDto(CreateUserDto, data);\n * // do something\n * } catch (error) {\n * console.error(error.message);\n * }\n * }\n * ```\n */\n\nexport default async function validateDto<T extends object>(\n DtoClass: ClassConstructor<T>,\n data: Record<string, any>,\n validationOptions?: ValidatorOptions\n): Promise<T> {\n const arkosConfig = getArkosConfig();\n const dataDto = plainToInstance(DtoClass, data);\n const errors = await validate(\n dataDto,\n deepmerge(\n arkosConfig?.validation?.validationOptions || {},\n validationOptions || {}\n )\n );\n\n if (errors.length > 0) throw errors;\n\n return dataDto;\n}\n"]}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.default = validateSchema;
|
|
7
|
-
exports.parseWithWhitelistCheck = parseWithWhitelistCheck;
|
|
8
|
-
const zod_1 = require("zod");
|
|
9
|
-
const arkos_config_helpers_1 = require("./helpers/arkos-config.helpers.js");
|
|
10
|
-
const deepmerge_helper_1 = __importDefault(require("./helpers/deepmerge.helper.js"));
|
|
11
|
-
async function validateSchema(schema, data, options) {
|
|
12
|
-
const arkosConfig = (0, arkos_config_helpers_1.getArkosConfig)();
|
|
13
|
-
const result = parseWithWhitelistCheck(schema, data, (0, deepmerge_helper_1.default)(arkosConfig?.validation?.validationOptions || {}, options || {}));
|
|
14
|
-
if (!result.success)
|
|
15
|
-
throw result.error;
|
|
16
|
-
return result.data;
|
|
17
|
-
}
|
|
18
|
-
function parseWithWhitelistCheck(schema, data, options) {
|
|
19
|
-
const errors = [];
|
|
20
|
-
function checkNestedKeys(schemaType, dataValue, path = []) {
|
|
21
|
-
if (typeof dataValue !== "object" || dataValue === null)
|
|
22
|
-
return;
|
|
23
|
-
if (Array.isArray(dataValue) && schemaType._def?.typeName === "ZodArray") {
|
|
24
|
-
const arrayElement = schemaType._def.type;
|
|
25
|
-
dataValue.forEach((item, index) => {
|
|
26
|
-
checkNestedKeys(arrayElement, item, [...path, index]);
|
|
27
|
-
});
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
if (schemaType._def?.typeName === "ZodObject") {
|
|
31
|
-
const schemaShape = schemaType._def.shape();
|
|
32
|
-
const allowedKeys = Object.keys(schemaShape);
|
|
33
|
-
const actualKeys = Object.keys(dataValue);
|
|
34
|
-
const extraKeys = actualKeys.filter((key) => !allowedKeys.includes(key));
|
|
35
|
-
extraKeys.forEach((key) => {
|
|
36
|
-
errors.push({
|
|
37
|
-
code: zod_1.z.ZodIssueCode.unrecognized_keys,
|
|
38
|
-
keys: [key],
|
|
39
|
-
path: [...path, key],
|
|
40
|
-
message: `Unrecognized key(s) in object: ${key}`,
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
allowedKeys.forEach((key) => {
|
|
44
|
-
const schemaField = schemaShape[key];
|
|
45
|
-
const nestedValue = dataValue[key];
|
|
46
|
-
if (nestedValue === undefined || nestedValue === null)
|
|
47
|
-
return;
|
|
48
|
-
let unwrappedSchema = schemaField;
|
|
49
|
-
if (schemaField._def?.typeName === "ZodOptional" ||
|
|
50
|
-
schemaField._def?.typeName === "ZodNullable") {
|
|
51
|
-
unwrappedSchema = schemaField._def.innerType;
|
|
52
|
-
}
|
|
53
|
-
checkNestedKeys(unwrappedSchema, nestedValue, [...path, key]);
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
if (options?.forbidNonWhitelisted !== false && data !== null) {
|
|
58
|
-
checkNestedKeys(schema, data);
|
|
59
|
-
}
|
|
60
|
-
const parseResult = schema.safeParse(data);
|
|
61
|
-
if (!parseResult.success) {
|
|
62
|
-
errors.push(...parseResult.error.issues);
|
|
63
|
-
}
|
|
64
|
-
if (errors.length > 0) {
|
|
65
|
-
return {
|
|
66
|
-
success: false,
|
|
67
|
-
error: new zod_1.z.ZodError(errors),
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
return {
|
|
71
|
-
success: true,
|
|
72
|
-
data: parseResult.data,
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=validate-schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validate-schema.js","sourceRoot":"","sources":["../../../src/utils/validate-schema.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from \"zod\";\nimport { getArkosConfig } from \"./helpers/arkos-config.helpers\";\nimport deepmerge from \"./helpers/deepmerge.helper\";\n\nexport type ZodValidationOptions = { forbidNonWhitelisted?: boolean };\n/**\n * Validates data using a Zod schema and throws an AppError if validation fails.\n *\n * @param {ZodSchema} schema - The Zod schema to validate against.\n * @param {unknown} data - The data to validate.\n * @returns {Promise<any>} - The validated data or throws an AppError on failure.\n *\n * @example\n * ```typescript\n * const userSchema = z.object({\n * name: z.string(),\n * email: z.string().email()\n * });\n *\n * async function main() {\n * const data = { name: \"Uanela Como\", email: \"invalid-email\" };\n * try {\n * const validatedUser = await validateSchema(userSchema, data);\n * // do something\n * } catch (error) {\n * console.error(error.message);\n * }\n * }\n * ```\n */\nexport default async function validateSchema<T extends z.ZodTypeAny>(\n schema: T,\n data: unknown,\n options?: ZodValidationOptions\n): Promise<z.infer<T>> {\n const arkosConfig = getArkosConfig();\n const result = parseWithWhitelistCheck(\n schema,\n data,\n deepmerge(arkosConfig?.validation?.validationOptions || {}, options || {})\n );\n if (!result.success) throw result.error;\n return result.data;\n}\n\nexport function parseWithWhitelistCheck<T extends z.ZodTypeAny>(\n schema: T,\n data: unknown,\n options?: ZodValidationOptions\n): { success: true; data: z.infer<T> } | { success: false; error: z.ZodError } {\n const errors: z.ZodIssue[] = [];\n\n function checkNestedKeys(\n schemaType: any,\n dataValue: any,\n path: (string | number)[] = []\n ): void {\n if (typeof dataValue !== \"object\" || dataValue === null) return;\n\n // Handle arrays\n if (Array.isArray(dataValue) && schemaType._def?.typeName === \"ZodArray\") {\n const arrayElement = schemaType._def.type;\n dataValue.forEach((item, index) => {\n checkNestedKeys(arrayElement, item, [...path, index]);\n });\n return;\n }\n\n // Handle objects\n if (schemaType._def?.typeName === \"ZodObject\") {\n const schemaShape = schemaType._def.shape();\n const allowedKeys = Object.keys(schemaShape);\n const actualKeys = Object.keys(dataValue);\n const extraKeys = actualKeys.filter((key) => !allowedKeys.includes(key));\n\n extraKeys.forEach((key) => {\n errors.push({\n code: z.ZodIssueCode.unrecognized_keys,\n keys: [key],\n path: [...path, key],\n message: `Unrecognized key(s) in object: ${key}`,\n });\n });\n\n // Check nested fields\n allowedKeys.forEach((key) => {\n const schemaField = schemaShape[key];\n const nestedValue = dataValue[key];\n if (nestedValue === undefined || nestedValue === null) return;\n\n // Handle optional/nullable wrappers\n let unwrappedSchema = schemaField;\n if (\n schemaField._def?.typeName === \"ZodOptional\" ||\n schemaField._def?.typeName === \"ZodNullable\"\n ) {\n unwrappedSchema = schemaField._def.innerType;\n }\n\n checkNestedKeys(unwrappedSchema, nestedValue, [...path, key]);\n });\n }\n }\n\n if (options?.forbidNonWhitelisted !== false && data !== null) {\n checkNestedKeys(schema, data);\n }\n\n const parseResult = schema.safeParse(data);\n if (!parseResult.success) {\n errors.push(...parseResult.error.issues);\n }\n\n if (errors.length > 0) {\n return {\n success: false,\n error: new z.ZodError(errors),\n };\n }\n\n return {\n success: true,\n data: parseResult.data as z.infer<T>,\n };\n}\n"]}
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
import loadableRegistry from "../arkos-loadable-registry/index.js";
|
|
2
|
-
import { routeHookReader } from "../arkos-route-hook/reader.js";
|
|
3
|
-
const PRISMA_OPERATIONS = [
|
|
4
|
-
"createOne",
|
|
5
|
-
"createMany",
|
|
6
|
-
"findOne",
|
|
7
|
-
"findMany",
|
|
8
|
-
"updateOne",
|
|
9
|
-
"updateMany",
|
|
10
|
-
"deleteOne",
|
|
11
|
-
"deleteMany",
|
|
12
|
-
];
|
|
13
|
-
const AUTH_OPERATIONS = [
|
|
14
|
-
"login",
|
|
15
|
-
"logout",
|
|
16
|
-
"signup",
|
|
17
|
-
"getMe",
|
|
18
|
-
"updateMe",
|
|
19
|
-
"updatePassword",
|
|
20
|
-
"refreshToken",
|
|
21
|
-
];
|
|
22
|
-
const FILE_UPLOAD_OPERATIONS = [
|
|
23
|
-
"uploadFile",
|
|
24
|
-
"updateFile",
|
|
25
|
-
"deleteFile",
|
|
26
|
-
"findFile",
|
|
27
|
-
];
|
|
28
|
-
const VALIDATION_OPERATIONS = [
|
|
29
|
-
"createOne",
|
|
30
|
-
"updateOne",
|
|
31
|
-
"login",
|
|
32
|
-
"signup",
|
|
33
|
-
"updateMe",
|
|
34
|
-
"updatePassword",
|
|
35
|
-
];
|
|
36
|
-
class LoadableDynamicTranslator {
|
|
37
|
-
getOperations(moduleName) {
|
|
38
|
-
if (moduleName === "auth")
|
|
39
|
-
return AUTH_OPERATIONS;
|
|
40
|
-
if (moduleName === "file-upload")
|
|
41
|
-
return FILE_UPLOAD_OPERATIONS;
|
|
42
|
-
return PRISMA_OPERATIONS;
|
|
43
|
-
}
|
|
44
|
-
translateInterceptors(moduleName) {
|
|
45
|
-
const interceptors = {};
|
|
46
|
-
for (const operation of this.getOperations(moduleName)) {
|
|
47
|
-
const hooks = routeHookReader.getHooks(moduleName, operation);
|
|
48
|
-
if (!hooks)
|
|
49
|
-
continue;
|
|
50
|
-
const pascal = operation.charAt(0).toUpperCase() + operation.slice(1);
|
|
51
|
-
if (hooks.before?.length)
|
|
52
|
-
interceptors[`before${pascal}`] = hooks.before;
|
|
53
|
-
if (hooks.after?.length)
|
|
54
|
-
interceptors[`after${pascal}`] = hooks.after;
|
|
55
|
-
if (hooks.onError?.length)
|
|
56
|
-
interceptors[`on${pascal}Error`] = hooks.onError;
|
|
57
|
-
}
|
|
58
|
-
return interceptors;
|
|
59
|
-
}
|
|
60
|
-
translateHooks(moduleName) {
|
|
61
|
-
const serviceHook = loadableRegistry.getItem("ArkosServiceHook", moduleName);
|
|
62
|
-
if (!serviceHook)
|
|
63
|
-
return {};
|
|
64
|
-
const hooks = {};
|
|
65
|
-
const store = serviceHook._store ?? {};
|
|
66
|
-
for (const [operation, config] of Object.entries(store)) {
|
|
67
|
-
const pascal = operation.charAt(0).toUpperCase() + operation.slice(1);
|
|
68
|
-
if (config?.before?.length)
|
|
69
|
-
hooks[`before${pascal}`] = config.before;
|
|
70
|
-
if (config?.after?.length)
|
|
71
|
-
hooks[`after${pascal}`] = config.after;
|
|
72
|
-
if (config?.onError?.length)
|
|
73
|
-
hooks[`on${pascal}Error`] = config.onError;
|
|
74
|
-
}
|
|
75
|
-
return hooks;
|
|
76
|
-
}
|
|
77
|
-
translateRouterConfig(moduleName) {
|
|
78
|
-
const config = {};
|
|
79
|
-
for (const operation of this.getOperations(moduleName)) {
|
|
80
|
-
const routeConfig = routeHookReader.getRouteConfig(moduleName, operation);
|
|
81
|
-
if (routeConfig && Object.keys(routeConfig).length > 0) {
|
|
82
|
-
config[operation] = routeConfig;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
return config;
|
|
86
|
-
}
|
|
87
|
-
translateValidation(moduleName) {
|
|
88
|
-
const schemas = {};
|
|
89
|
-
const dtos = {};
|
|
90
|
-
const isAuth = moduleName === "auth";
|
|
91
|
-
for (const operation of VALIDATION_OPERATIONS) {
|
|
92
|
-
const isAuthOp = [
|
|
93
|
-
"login",
|
|
94
|
-
"signup",
|
|
95
|
-
"updateMe",
|
|
96
|
-
"updatePassword",
|
|
97
|
-
].includes(operation);
|
|
98
|
-
if (isAuth && !isAuthOp)
|
|
99
|
-
continue;
|
|
100
|
-
if (!isAuth && isAuthOp)
|
|
101
|
-
continue;
|
|
102
|
-
const config = routeHookReader.getFullConfig(moduleName, operation);
|
|
103
|
-
const body = config?.validation?.body;
|
|
104
|
-
if (!body)
|
|
105
|
-
continue;
|
|
106
|
-
const key = isAuth
|
|
107
|
-
? operation
|
|
108
|
-
: operation === "createOne"
|
|
109
|
-
? "create"
|
|
110
|
-
: operation === "updateOne"
|
|
111
|
-
? "update"
|
|
112
|
-
: operation;
|
|
113
|
-
const isZod = body?._def?.typeName?.startsWith("Zod");
|
|
114
|
-
if (isZod)
|
|
115
|
-
schemas[key] = body;
|
|
116
|
-
else
|
|
117
|
-
dtos[key] = body;
|
|
118
|
-
}
|
|
119
|
-
return { schemas, dtos };
|
|
120
|
-
}
|
|
121
|
-
translate(moduleName) {
|
|
122
|
-
const interceptors = this.translateInterceptors(moduleName);
|
|
123
|
-
const hooks = this.translateHooks(moduleName);
|
|
124
|
-
const routerConfig = this.translateRouterConfig(moduleName);
|
|
125
|
-
const { schemas, dtos } = this.translateValidation(moduleName);
|
|
126
|
-
return {
|
|
127
|
-
...(Object.keys(interceptors).length && { interceptors }),
|
|
128
|
-
...(Object.keys(hooks).length && { hooks }),
|
|
129
|
-
...(Object.keys(routerConfig).length && {
|
|
130
|
-
router: { config: routerConfig, default: routerConfig },
|
|
131
|
-
}),
|
|
132
|
-
...(Object.keys(schemas).length && { schemas }),
|
|
133
|
-
...(Object.keys(dtos).length && { dtos }),
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
export const loadableDynamicTranslator = new LoadableDynamicTranslator();
|
|
138
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/arkos-loadable-translator/index.ts"],"names":[],"mappings":"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","sourcesContent":["// import { ModuleComponents } from \"../../utils/dynamic-loader\";\nimport loadableRegistry from \"../arkos-loadable-registry\";\nimport { routeHookReader } from \"../arkos-route-hook/reader\";\nimport { ArkosModuleType } from \"../arkos-route-hook/types\";\n\ntype ModuleComponents = any;\n\nconst PRISMA_OPERATIONS = [\n \"createOne\",\n \"createMany\",\n \"findOne\",\n \"findMany\",\n \"updateOne\",\n \"updateMany\",\n \"deleteOne\",\n \"deleteMany\",\n] as const;\n\nconst AUTH_OPERATIONS = [\n \"login\",\n \"logout\",\n \"signup\",\n \"getMe\",\n \"updateMe\",\n \"updatePassword\",\n \"refreshToken\",\n] as const;\n\nconst FILE_UPLOAD_OPERATIONS = [\n \"uploadFile\",\n \"updateFile\",\n \"deleteFile\",\n \"findFile\",\n] as const;\n\nconst VALIDATION_OPERATIONS = [\n \"createOne\",\n \"updateOne\",\n \"login\",\n \"signup\",\n \"updateMe\",\n \"updatePassword\",\n] as const;\n\ntype ValidationOperation = (typeof VALIDATION_OPERATIONS)[number];\n\n/**\n * Translates from the new `ArkosRouteHook` and `ArkosServiceHook` loadable\n * instances in the global registry back to the old `ModuleComponents` shape\n * that the rest of the codebase still consumes.\n *\n * This is a compatibility bridge between v1 dynamic-loader and v2 explicit\n * registry — it allows call sites that still use `getModuleComponents()` to\n * keep working without changes while the migration to the new API is in progress.\n *\n * @example\n * ```ts\n * // Before (dynamic loader)\n * const { interceptors, hooks, router } = getModuleComponents(\"user\");\n *\n * // Now transparently backed by the registry translator\n * const { interceptors, hooks, router } = loadableDynamicTranslator.translate(\"user\");\n * ```\n */\nclass LoadableDynamicTranslator {\n private getOperations(moduleName: ArkosModuleType): readonly string[] {\n if (moduleName === \"auth\") return AUTH_OPERATIONS;\n if (moduleName === \"file-upload\") return FILE_UPLOAD_OPERATIONS;\n return PRISMA_OPERATIONS;\n }\n\n /**\n * Translates the route hook for a given module into the old `interceptors` shape.\n * Maps `{ before, after, onError }` per operation to flat `beforeX`, `afterX`, `onXError` keys.\n */\n private translateInterceptors(\n moduleName: ArkosModuleType\n ): Record<string, Function[]> {\n const interceptors: Record<string, Function[]> = {};\n\n for (const operation of this.getOperations(moduleName)) {\n const hooks = routeHookReader.getHooks(moduleName, operation as any);\n if (!hooks) continue;\n\n const pascal = operation.charAt(0).toUpperCase() + operation.slice(1);\n\n if (hooks.before?.length) interceptors[`before${pascal}`] = hooks.before;\n if (hooks.after?.length) interceptors[`after${pascal}`] = hooks.after;\n if (hooks.onError?.length)\n interceptors[`on${pascal}Error`] = hooks.onError;\n }\n\n return interceptors;\n }\n\n /**\n * Translates the service hook for a given module into the old `hooks` shape.\n * Maps `{ before, after, onError }` per operation to flat `beforeX`, `afterX`, `onXError` keys.\n */\n private translateHooks(\n moduleName: ArkosModuleType\n ): Record<string, Function[]> {\n const serviceHook = loadableRegistry.getItem(\n \"ArkosServiceHook\",\n moduleName\n );\n if (!serviceHook) return {};\n\n const hooks: Record<string, Function[]> = {};\n const store = (serviceHook as any)._store ?? {};\n\n for (const [operation, config] of Object.entries(store) as any) {\n const pascal = operation.charAt(0).toUpperCase() + operation.slice(1);\n\n if (config?.before?.length) hooks[`before${pascal}`] = config.before;\n if (config?.after?.length) hooks[`after${pascal}`] = config.after;\n if (config?.onError?.length) hooks[`on${pascal}Error`] = config.onError;\n }\n\n return hooks;\n }\n\n /**\n * Translates the route hook for a given module into the old `router.config` shape.\n * Maps per-operation route configs into a flat `RouterConfig` object.\n */\n private translateRouterConfig(\n moduleName: ArkosModuleType\n ): Record<string, any> {\n const config: Record<string, any> = {};\n\n for (const operation of this.getOperations(moduleName)) {\n const routeConfig = routeHookReader.getRouteConfig(\n moduleName,\n operation as any\n );\n if (routeConfig && Object.keys(routeConfig).length > 0) {\n config[operation] = routeConfig;\n }\n }\n\n return config;\n }\n\n /**\n * Translates validation body from route hook configs into the old `schemas`/`dtos` shape.\n * Only cares about: createOne, updateOne, login, signup, updateMe, updatePassword.\n *\n * Auth operations map 1:1 by operation name.\n * Prisma: createOne → create, updateOne → update.\n */\n private translateValidation(moduleName: ArkosModuleType): {\n schemas: Record<string, any>;\n dtos: Record<string, any>;\n } {\n const schemas: Record<string, any> = {};\n const dtos: Record<string, any> = {};\n const isAuth = moduleName === \"auth\";\n\n for (const operation of VALIDATION_OPERATIONS) {\n // only process operations relevant to this module type\n const isAuthOp = [\n \"login\",\n \"signup\",\n \"updateMe\",\n \"updatePassword\",\n ].includes(operation);\n if (isAuth && !isAuthOp) continue;\n if (!isAuth && isAuthOp) continue;\n\n const config = routeHookReader.getFullConfig(\n moduleName,\n operation as any\n );\n const body = (config as any)?.validation?.body;\n if (!body) continue;\n\n const key = isAuth\n ? operation\n : operation === \"createOne\"\n ? \"create\"\n : operation === \"updateOne\"\n ? \"update\"\n : operation;\n\n // determine if it's a zod schema or class-validator dto\n const isZod = body?._def?.typeName?.startsWith(\"Zod\");\n if (isZod) schemas[key] = body;\n else dtos[key] = body;\n }\n\n return { schemas, dtos };\n }\n\n /**\n * Returns the resolved `ModuleComponents` for a given module name,\n * translated from the global loadable registry.\n */\n translate(moduleName: ArkosModuleType): ModuleComponents {\n const interceptors = this.translateInterceptors(moduleName);\n const hooks = this.translateHooks(moduleName);\n const routerConfig = this.translateRouterConfig(moduleName);\n const { schemas, dtos } = this.translateValidation(moduleName);\n\n return {\n ...(Object.keys(interceptors).length && { interceptors }),\n ...(Object.keys(hooks).length && { hooks }),\n ...(Object.keys(routerConfig).length && {\n router: { config: routerConfig, default: routerConfig },\n }),\n ...(Object.keys(schemas).length && { schemas }),\n ...(Object.keys(dtos).length && { dtos }),\n };\n }\n}\n\nexport const loadableDynamicTranslator = new LoadableDynamicTranslator();\n"]}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
export function ArkosServiceHook(moduleName) {
|
|
2
|
-
const store = {};
|
|
3
|
-
const makeMethod = (name) => (config) => {
|
|
4
|
-
store[name] = config;
|
|
5
|
-
return proxy;
|
|
6
|
-
};
|
|
7
|
-
const base = {
|
|
8
|
-
__type: "ArkosServiceHook",
|
|
9
|
-
moduleName,
|
|
10
|
-
_store: store,
|
|
11
|
-
};
|
|
12
|
-
const methods = {};
|
|
13
|
-
for (const name of [
|
|
14
|
-
"createOne",
|
|
15
|
-
"createMany",
|
|
16
|
-
"count",
|
|
17
|
-
"findMany",
|
|
18
|
-
"findOne",
|
|
19
|
-
"findById",
|
|
20
|
-
"updateOne",
|
|
21
|
-
"updateById",
|
|
22
|
-
"updateMany",
|
|
23
|
-
"deleteOne",
|
|
24
|
-
"deleteById",
|
|
25
|
-
"deleteMany",
|
|
26
|
-
]) {
|
|
27
|
-
methods[name] = makeMethod(name);
|
|
28
|
-
}
|
|
29
|
-
const proxy = Object.assign(base, methods);
|
|
30
|
-
return proxy;
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/arkos-service-hook/index.ts"],"names":[],"mappings":"AA6CA,MAAM,UAAU,gBAAgB,CAG9B,UAAsB;IACtB,MAAM,KAAK,GAAgE,EAAE,CAAC;IAE9E,MAAM,UAAU,GACd,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,MAAiD,EAAE,EAAE;QACrE,KAAa,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEJ,MAAM,IAAI,GAAG;QACX,MAAM,EAAE,kBAA2B;QACnC,UAAU;QACV,MAAM,EAAE,KAAK;KACd,CAAC;IAEF,MAAM,OAAO,GAGT,EAAE,CAAC;IAEP,KAAK,MAAM,IAAI,IAAI;QACjB,WAAW;QACX,YAAY;QACZ,OAAO;QACP,UAAU;QACV,SAAS;QACT,UAAU;QACV,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,YAAY;QACZ,YAAY;KACb,EAAE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3C,OAAO,KAAiE,CAAC;AAC3E,CAAC","sourcesContent":["import { ServiceHookContext } from \"../../exports/services\";\nimport { PrismaModels } from \"../../generated\";\nimport {\n ArkosServiceHookMethodConfigs,\n ArkosServiceHookInstance,\n ServiceHookOperationConfig,\n} from \"./types\";\n\ntype Models = PrismaModels<any>;\n\n/**\n * Creates a service hook for a generated Prisma model service.\n *\n * The returned instance exposes a method per service operation.\n * Each method accepts typed `before`, `after`, and `onError` handler arrays\n * that run around the corresponding `BaseService` method call.\n *\n * Unlike `ArkosRouteHook`, handlers here are **not** Express middlewares —\n * they receive a typed args object specific to each operation.\n *\n * Register via `app.load()` before calling `app.build()`.\n *\n * @param moduleName - The Prisma model name in kebab-case (e.g. `\"user\"`, `\"blog-post\"`)\n *\n * @example\n * ```ts\n * const userServiceHook = ArkosServiceHook(\"user\");\n *\n * userServiceHook.createOne({\n * before: [async ({ data, context }) => {\n * data.createdBy = context?.user?.id;\n * }],\n * after: [async ({ result }) => {\n * await notifyAdmins(result);\n * }],\n * onError: [async ({ error, data }) => {\n * await logFailure(error, data);\n * }],\n * });\n *\n * app.load(userServiceHook);\n * ```\n *\n * @see {@link https://www.arkosjs.com/docs/core-concepts/components/service-hooks}\n */\nexport function ArkosServiceHook<\n TModelName extends keyof Models = keyof Models,\n Context = ServiceHookContext,\n>(moduleName: TModelName): ArkosServiceHookInstance<TModelName, Context> {\n const store: Partial<ArkosServiceHookMethodConfigs<TModelName, Context>> = {};\n\n const makeMethod =\n (name: string) => (config: ServiceHookOperationConfig<any, any, any>) => {\n (store as any)[name] = config;\n return proxy;\n };\n\n const base = {\n __type: \"ArkosServiceHook\" as const,\n moduleName,\n _store: store,\n };\n\n const methods: Record<\n string,\n (config: ServiceHookOperationConfig<any, any, any>) => unknown\n > = {};\n\n for (const name of [\n \"createOne\",\n \"createMany\",\n \"count\",\n \"findMany\",\n \"findOne\",\n \"findById\",\n \"updateOne\",\n \"updateById\",\n \"updateMany\",\n \"deleteOne\",\n \"deleteById\",\n \"deleteMany\",\n ]) {\n methods[name] = makeMethod(name);\n }\n\n const proxy = Object.assign(base, methods);\n return proxy as unknown as ArkosServiceHookInstance<TModelName, Context>;\n}\n"]}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import loadableRegistry from "../../components/arkos-loadable-registry/index.js";
|
|
2
|
-
class ArkosServiceHookReader {
|
|
3
|
-
getServiceHook(moduleName) {
|
|
4
|
-
return loadableRegistry.getItem("ArkosServiceHook", moduleName);
|
|
5
|
-
}
|
|
6
|
-
getStore(moduleName) {
|
|
7
|
-
return this.getServiceHook(moduleName)?._store ?? {};
|
|
8
|
-
}
|
|
9
|
-
hasOperation(moduleName, operation) {
|
|
10
|
-
return operation in this.getStore(moduleName);
|
|
11
|
-
}
|
|
12
|
-
getFullConfig(moduleName, operation) {
|
|
13
|
-
return this.getStore(moduleName)[operation] ?? null;
|
|
14
|
-
}
|
|
15
|
-
getHooks(moduleName, operation) {
|
|
16
|
-
const config = this.getStore(moduleName)[operation];
|
|
17
|
-
if (!config)
|
|
18
|
-
return {};
|
|
19
|
-
const { before, after, onError } = config;
|
|
20
|
-
return { before, after, onError };
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
export const serviceHookReader = new ArkosServiceHookReader();
|
|
24
|
-
//# sourceMappingURL=reader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reader.js","sourceRoot":"","sources":["../../../../src/components/arkos-service-hook/reader.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,0CAA0C,CAAC;AAuBxE,MAAM,sBAAsB;IAClB,cAAc,CAAC,UAA2B;QAChD,OAAO,gBAAgB,CAAC,OAAO,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;IAEO,QAAQ,CACd,UAA2B;QAE3B,OAAQ,IAAI,CAAC,cAAc,CAAC,UAAU,CAAS,EAAE,MAAM,IAAI,EAAE,CAAC;IAChE,CAAC;IAKD,YAAY,CACV,UAA2B,EAC3B,SAA+B;QAE/B,OAAO,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC;IAKD,aAAa,CACX,UAA2B,EAC3B,SAA+B;QAE/B,OAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAS,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;IAC/D,CAAC;IAKD,QAAQ,CACN,UAA2B,EAC3B,SAA+B;QAE/B,MAAM,MAAM,GAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAS,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QACvB,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QAC1C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IACpC,CAAC;CACF;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,sBAAsB,EAAE,CAAC","sourcesContent":["import loadableRegistry from \"../../components/arkos-loadable-registry\";\nimport { ArkosModuleType } from \"../arkos-route-hook/types\";\nimport {\n ArkosServiceHookMethodConfigs,\n ServiceHookOperationConfig,\n} from \"./types\";\n\ntype ServiceHookOperation = keyof ArkosServiceHookMethodConfigs<any, any>;\n\n/**\n * Reader for `ArkosServiceHook` instances.\n * Reads config from the global loadable registry by module name.\n *\n * @example\n * ```ts\n * serviceHookReader.getHooks(\"user\", \"createOne\") // { before, after, onError }\n * serviceHookReader.getHooks(\"user\", \"createOne\").before // ServiceHookHandler[]\n * serviceHookReader.getHooks(\"user\", \"createOne\").after // ServiceHookHandler[]\n * serviceHookReader.getHooks(\"user\", \"createOne\").onError // ServiceHookHandler[]\n * serviceHookReader.hasOperation(\"user\", \"createOne\") // true | false\n * serviceHookReader.getFullConfig(\"user\", \"createOne\") // { before, after, onError } | null\n * ```\n */\nclass ArkosServiceHookReader {\n private getServiceHook(moduleName: ArkosModuleType) {\n return loadableRegistry.getItem(\"ArkosServiceHook\", moduleName);\n }\n\n private getStore(\n moduleName: ArkosModuleType\n ): Partial<ArkosServiceHookMethodConfigs<any, any>> {\n return (this.getServiceHook(moduleName) as any)?._store ?? {};\n }\n\n /**\n * Returns true if the serviceHook has a config registered for the given operation.\n */\n hasOperation(\n moduleName: ArkosModuleType,\n operation: ServiceHookOperation\n ): boolean {\n return operation in this.getStore(moduleName);\n }\n\n /**\n * Returns the full raw config for the given operation, or `null` if not registered.\n */\n getFullConfig(\n moduleName: ArkosModuleType,\n operation: ServiceHookOperation\n ): ServiceHookOperationConfig<any, any, any> | null {\n return (this.getStore(moduleName) as any)[operation] ?? null;\n }\n\n /**\n * Returns only the lifecycle hooks (`before`, `after`, `onError`) for the given operation.\n */\n getHooks(\n moduleName: ArkosModuleType,\n operation: ServiceHookOperation\n ): ServiceHookOperationConfig<any, any, any> | undefined {\n const config = (this.getStore(moduleName) as any)[operation];\n if (!config) return {};\n const { before, after, onError } = config;\n return { before, after, onError };\n }\n}\n\nexport const serviceHookReader = new ArkosServiceHookReader();\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/arkos-service-hook/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n CountFilters,\n CreateData,\n CreateManyData,\n CreateManyOptions,\n CreateManyResult,\n CreateOptions,\n CreateResult,\n DeleteManyFilters,\n DeleteOneFilters,\n FindManyFilters,\n FindManyOptions,\n FindManyResult,\n FindOneFilters,\n FindOneOptions,\n FindOneResult,\n Models,\n UpdateManyData,\n UpdateManyFilters,\n UpdateManyOptions,\n UpdateOneData,\n UpdateOneFilters,\n UpdateOneOptions,\n UpdateOneResult,\n} from \"../../modules/base/types/base.service.types\";\nimport { User } from \"../../types\";\n\nexport interface ServiceHookContext {\n /**\n * The authenticated user making the request.\n */\n user?: User;\n\n /**\n * The access token from the request for authorization.\n */\n accessToken?: string;\n\n /**\n * Hook types to skip for this operation.\n * - `\"before\"`: Skip before hooks\n * - `\"after\"`: Skip after hooks\n * - `\"error\"`: Skip error hooks\n * - `\"all\"`: Skip all hooks\n *\n * @example\n * ```ts\n * { skip: [\"before\", \"error\"] }\n * { skip: \"all\" }\n * ```\n */\n skip?:\n | (\"before\" | \"after\" | \"error\")[]\n | \"before\"\n | \"after\"\n | \"error\"\n | \"all\";\n\n /**\n * Whether to re-throw errors after error hooks have run.\n * - `true` (default): re-throws the error\n * - `false`: returns the fallback value instead\n * @default true\n */\n throwOnError?: boolean;\n}\n\nexport type ServiceHookHandler<TArgs> = (args: TArgs) => void | Promise<void>;\n\nexport interface ServiceHookOperationConfig<TBefore, TAfter, TError> {\n before?: ServiceHookHandler<TBefore>[];\n after?: ServiceHookHandler<TAfter>[];\n onError?: ServiceHookHandler<TError>[];\n}\n\nexport interface BeforeCreateOneHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n data: CreateData<TModelName>;\n queryOptions?: CreateOptions<TModelName>;\n context?: Context;\n}\n\nexport interface AfterCreateOneHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: CreateResult<TModelName>;\n data: CreateData<TModelName>;\n queryOptions?: CreateOptions<TModelName>;\n context?: Context;\n}\n\nexport interface OnCreateOneErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeCreateOneHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeCreateManyHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n data: CreateManyData<TModelName>;\n queryOptions?: CreateManyOptions<TModelName>;\n context?: Context;\n}\n\nexport interface AfterCreateManyHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: CreateManyResult<TModelName>;\n data: CreateManyData<TModelName>;\n queryOptions?: CreateManyOptions<TModelName>;\n context?: Context;\n}\n\nexport interface OnCreateManyErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeCreateManyHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeCountHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n filters?: CountFilters<TModelName>;\n context?: Context;\n}\n\nexport interface AfterCountHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: number;\n filters?: CountFilters<TModelName>;\n context?: Context;\n}\n\nexport interface OnCountErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeCountHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeFindManyHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n filters?: FindManyFilters<TModelName>;\n queryOptions?: FindManyOptions<TModelName>;\n context?: Context;\n}\n\nexport interface AfterFindManyHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: FindManyResult<TModelName>;\n filters?: FindManyFilters<TModelName>;\n queryOptions?: FindManyOptions<TModelName>;\n context?: Context;\n}\n\nexport interface OnFindManyErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeFindManyHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeFindOneHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n filters: FindOneFilters<TModelName>;\n queryOptions?: FindOneOptions<TModelName>;\n context?: Context;\n}\n\nexport interface AfterFindOneHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: FindOneResult<TModelName>;\n filters: FindOneFilters<TModelName>;\n queryOptions?: FindOneOptions<TModelName>;\n context?: Context;\n}\n\nexport interface OnFindOneErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeFindOneHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeUpdateOneHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n filters: UpdateOneFilters<TModelName>;\n data: UpdateOneData<TModelName>;\n queryOptions?: UpdateOneOptions<TModelName>;\n context?: Context;\n}\n\nexport interface AfterUpdateOneHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: UpdateOneResult<TModelName>;\n filters: UpdateOneFilters<TModelName>;\n data: UpdateOneData<TModelName>;\n queryOptions?: UpdateOneOptions<TModelName>;\n context?: Context;\n}\n\nexport interface OnUpdateOneErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeUpdateOneHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeUpdateManyHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n filters: UpdateManyFilters<TModelName>;\n data: UpdateManyData<TModelName>;\n queryOptions?: UpdateManyOptions<TModelName>;\n context?: Context;\n}\n\nexport interface AfterUpdateManyHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: { count: number };\n filters: UpdateManyFilters<TModelName>;\n data: UpdateManyData<TModelName>;\n queryOptions?: UpdateManyOptions<TModelName>;\n context?: Context;\n}\n\nexport interface OnUpdateManyErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeUpdateManyHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeDeleteOneHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n filters: DeleteOneFilters<TModelName>;\n context?: Context;\n}\n\nexport interface AfterDeleteOneHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: Models[TModelName][\"GetPayload\"];\n filters: DeleteOneFilters<TModelName>;\n context?: Context;\n}\n\nexport interface OnDeleteOneErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeDeleteOneHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeDeleteManyHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n filters: DeleteManyFilters<TModelName>;\n context?: Context;\n}\n\nexport interface AfterDeleteManyHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: { count: number };\n filters: DeleteManyFilters<TModelName>;\n context?: Context;\n}\n\nexport interface OnDeleteManyErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeDeleteManyHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeFindByIdHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n id: string | number;\n queryOptions?: FindOneOptions<TModelName>;\n context?: Context;\n}\n\nexport interface AfterFindByIdHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: FindOneResult<TModelName>;\n id: string | number;\n queryOptions?: FindOneOptions<TModelName>;\n context?: Context;\n}\n\nexport interface OnFindByIdErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeFindByIdHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeUpdateByIdHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n id: string | number;\n data: UpdateOneData<TModelName>;\n queryOptions?: UpdateOneOptions<TModelName>;\n context?: Context;\n}\n\nexport interface AfterUpdateByIdHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: UpdateOneResult<TModelName>;\n id: string | number;\n data: UpdateOneData<TModelName>;\n queryOptions?: UpdateOneOptions<TModelName>;\n context?: Context;\n}\n\nexport interface OnUpdateByIdErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeUpdateByIdHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport interface BeforeDeleteByIdHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n id: string | number;\n context?: Context;\n}\n\nexport interface AfterDeleteByIdHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> {\n result: Models[TModelName][\"GetPayload\"];\n id: string | number;\n context?: Context;\n}\n\nexport interface OnDeleteByIdErrorHookArgs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> extends BeforeDeleteByIdHookArgs<TModelName, Context> {\n error: any;\n}\n\nexport type ArkosServiceHookMethodConfigs<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> = {\n createOne?: ServiceHookOperationConfig<\n BeforeCreateOneHookArgs<TModelName, Context>,\n AfterCreateOneHookArgs<TModelName, Context>,\n OnCreateOneErrorHookArgs<TModelName, Context>\n >;\n createMany?: ServiceHookOperationConfig<\n BeforeCreateManyHookArgs<TModelName, Context>,\n AfterCreateManyHookArgs<TModelName, Context>,\n OnCreateManyErrorHookArgs<TModelName, Context>\n >;\n count?: ServiceHookOperationConfig<\n BeforeCountHookArgs<TModelName, Context>,\n AfterCountHookArgs<TModelName, Context>,\n OnCountErrorHookArgs<TModelName, Context>\n >;\n findMany?: ServiceHookOperationConfig<\n BeforeFindManyHookArgs<TModelName, Context>,\n AfterFindManyHookArgs<TModelName, Context>,\n OnFindManyErrorHookArgs<TModelName, Context>\n >;\n findOne?: ServiceHookOperationConfig<\n BeforeFindOneHookArgs<TModelName, Context>,\n AfterFindOneHookArgs<TModelName, Context>,\n OnFindOneErrorHookArgs<TModelName, Context>\n >;\n updateOne?: ServiceHookOperationConfig<\n BeforeUpdateOneHookArgs<TModelName, Context>,\n AfterUpdateOneHookArgs<TModelName, Context>,\n OnUpdateOneErrorHookArgs<TModelName, Context>\n >;\n updateMany?: ServiceHookOperationConfig<\n BeforeUpdateManyHookArgs<TModelName, Context>,\n AfterUpdateManyHookArgs<TModelName, Context>,\n OnUpdateManyErrorHookArgs<TModelName, Context>\n >;\n deleteOne?: ServiceHookOperationConfig<\n BeforeDeleteOneHookArgs<TModelName, Context>,\n AfterDeleteOneHookArgs<TModelName, Context>,\n OnDeleteOneErrorHookArgs<TModelName, Context>\n >;\n deleteMany?: ServiceHookOperationConfig<\n BeforeDeleteManyHookArgs<TModelName, Context>,\n AfterDeleteManyHookArgs<TModelName, Context>,\n OnDeleteManyErrorHookArgs<TModelName, Context>\n >;\n findById?: ServiceHookOperationConfig<\n BeforeFindByIdHookArgs<TModelName, Context>,\n AfterFindByIdHookArgs<TModelName, Context>,\n OnFindByIdErrorHookArgs<TModelName, Context>\n >;\n\n updateById?: ServiceHookOperationConfig<\n BeforeUpdateByIdHookArgs<TModelName, Context>,\n AfterUpdateByIdHookArgs<TModelName, Context>,\n OnUpdateByIdErrorHookArgs<TModelName, Context>\n >;\n\n deleteById?: ServiceHookOperationConfig<\n BeforeDeleteByIdHookArgs<TModelName, Context>,\n AfterDeleteByIdHookArgs<TModelName, Context>,\n OnDeleteByIdErrorHookArgs<TModelName, Context>\n >;\n};\n\nexport type ArkosServiceHookInstance<\n TModelName extends keyof Models,\n Context = ServiceHookContext,\n> = {\n readonly __type: \"ArkosServiceHook\";\n readonly moduleName: TModelName;\n readonly _store: Partial<ArkosServiceHookMethodConfigs<TModelName, Context>>;\n\n createOne(\n config: ServiceHookOperationConfig<\n BeforeCreateOneHookArgs<TModelName, Context>,\n AfterCreateOneHookArgs<TModelName, Context>,\n OnCreateOneErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n createMany(\n config: ServiceHookOperationConfig<\n BeforeCreateManyHookArgs<TModelName, Context>,\n AfterCreateManyHookArgs<TModelName, Context>,\n OnCreateManyErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n count(\n config: ServiceHookOperationConfig<\n BeforeCountHookArgs<TModelName, Context>,\n AfterCountHookArgs<TModelName, Context>,\n OnCountErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n findMany(\n config: ServiceHookOperationConfig<\n BeforeFindManyHookArgs<TModelName, Context>,\n AfterFindManyHookArgs<TModelName, Context>,\n OnFindManyErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n findOne(\n config: ServiceHookOperationConfig<\n BeforeFindOneHookArgs<TModelName, Context>,\n AfterFindOneHookArgs<TModelName, Context>,\n OnFindOneErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n updateOne(\n config: ServiceHookOperationConfig<\n BeforeUpdateOneHookArgs<TModelName, Context>,\n AfterUpdateOneHookArgs<TModelName, Context>,\n OnUpdateOneErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n updateMany(\n config: ServiceHookOperationConfig<\n BeforeUpdateManyHookArgs<TModelName, Context>,\n AfterUpdateManyHookArgs<TModelName, Context>,\n OnUpdateManyErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n deleteOne(\n config: ServiceHookOperationConfig<\n BeforeDeleteOneHookArgs<TModelName, Context>,\n AfterDeleteOneHookArgs<TModelName, Context>,\n OnDeleteOneErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n deleteMany(\n config: ServiceHookOperationConfig<\n BeforeDeleteManyHookArgs<TModelName, Context>,\n AfterDeleteManyHookArgs<TModelName, Context>,\n OnDeleteManyErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n findById(\n config: ServiceHookOperationConfig<\n BeforeFindByIdHookArgs<TModelName, Context>,\n AfterFindByIdHookArgs<TModelName, Context>,\n OnFindByIdErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n updateById(\n config: ServiceHookOperationConfig<\n BeforeUpdateByIdHookArgs<TModelName, Context>,\n AfterUpdateByIdHookArgs<TModelName, Context>,\n OnUpdateByIdErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n\n deleteById(\n config: ServiceHookOperationConfig<\n BeforeDeleteByIdHookArgs<TModelName, Context>,\n AfterDeleteByIdHookArgs<TModelName, Context>,\n OnDeleteByIdErrorHookArgs<TModelName, Context>\n >\n ): ArkosServiceHookInstance<TModelName, Context>;\n};\n"]}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export function isEndpointDisabled(routerConfig, endpoint) {
|
|
2
|
-
if (!routerConfig?.disable)
|
|
3
|
-
return false;
|
|
4
|
-
if (routerConfig.disable === true)
|
|
5
|
-
return true;
|
|
6
|
-
if (typeof routerConfig.disable === "object")
|
|
7
|
-
return routerConfig.disable[endpoint] === true;
|
|
8
|
-
return false;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=base.router.helpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base.router.helpers.js","sourceRoot":"","sources":["../../../../../../src/modules/base/utils/helpers/base.router.helpers.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,kBAAkB,CAChC,YAA+B,EAC/B,QAAwE;IAExE,IAAI,CAAC,YAAY,EAAE,OAAO;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,YAAY,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAI,OAAO,YAAY,CAAC,OAAO,KAAK,QAAQ;QAC1C,OAAO,YAAY,CAAC,OAAO,CAAC,QAAiB,CAAC,KAAK,IAAI,CAAC;IAC1D,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["import { RouterConfig } from \"../../../../exports\";\nimport {\n AuthRouterEndpoint,\n FileUploadRouterEndpoint,\n RouterEndpoint,\n} from \"../../../../types/router-config\";\n\nexport function isEndpointDisabled(\n routerConfig: RouterConfig<any>,\n endpoint: RouterEndpoint | AuthRouterEndpoint | FileUploadRouterEndpoint\n): boolean {\n if (!routerConfig?.disable) return false;\n if (routerConfig.disable === true) return true;\n if (typeof routerConfig.disable === \"object\")\n return routerConfig.disable[endpoint as never] === true;\n return false;\n}\n"]}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
class ServiceHooksManager {
|
|
2
|
-
async handleHook(hooksReceived, hooksArgs) {
|
|
3
|
-
const hooks = Array.isArray(hooksReceived)
|
|
4
|
-
? hooksReceived
|
|
5
|
-
: [hooksReceived];
|
|
6
|
-
for (const hook of hooks) {
|
|
7
|
-
await hook(hooksArgs);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
validateServiceHook(hook) {
|
|
11
|
-
if (typeof hook !== "function")
|
|
12
|
-
throw new Error(`Validation Error: service hook must be of type function or array of functions but received value of type ${typeof hook}`);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
const serviceHooksManager = new ServiceHooksManager();
|
|
16
|
-
export default serviceHooksManager;
|
|
17
|
-
//# sourceMappingURL=service-hooks-manager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"service-hooks-manager.js","sourceRoot":"","sources":["../../../../../src/modules/base/utils/service-hooks-manager.ts"],"names":[],"mappings":"AAKA,MAAM,mBAAmB;IAIvB,KAAK,CAAC,UAAU,CACd,aAAkE,EAClE,SAA8B;QAE9B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;YACxC,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAEpB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,IAA6B;QAC/C,IAAI,OAAO,IAAI,KAAK,UAAU;YAC5B,MAAM,IAAI,KAAK,CACb,4GAA4G,OAAO,IAAI,EAAE,CAC1H,CAAC;IACN,CAAC;CACF;AAED,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,EAAE,CAAC;AAEtD,eAAe,mBAAmB,CAAC","sourcesContent":["import { ServiceHookHandler } from \"../../../components/arkos-service-hook/types\";\n\n/**\n * Manages and handles service hooks implementation on the base service class\n */\nclass ServiceHooksManager {\n /*\n * Handles single function or array of functions of service hook\n */\n async handleHook(\n hooksReceived: ServiceHookHandler<any> | ServiceHookHandler<any>[],\n hooksArgs: Record<string, any>\n ) {\n const hooks = Array.isArray(hooksReceived)\n ? hooksReceived\n : [hooksReceived];\n\n for (const hook of hooks) {\n await hook(hooksArgs);\n }\n }\n\n validateServiceHook(hook: ServiceHookHandler<any>) {\n if (typeof hook !== \"function\")\n throw new Error(\n `Validation Error: service hook must be of type function or array of functions but received value of type ${typeof hook}`\n );\n }\n}\n\nconst serviceHooksManager = new ServiceHooksManager();\n\nexport default serviceHooksManager;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"built-in-route-path-object-manager.js","sourceRoot":"","sources":["../../../../../src/modules/swagger/utils/built-in-route-path-object-manager.ts"],"names":[],"mappings":"AAAA,MAAM,6BAA6B;CAAG;AAEtC,MAAM,6BAA6B,GAAG,IAAI,6BAA6B,EAAE,CAAC;AAE1E,eAAe,6BAA6B,CAAC","sourcesContent":["class BuiltInRoutePathObjectManager {}\n\nconst builtInRoutePathObjectManager = new BuiltInRoutePathObjectManager();\n\nexport default builtInRoutePathObjectManager;\n"]}
|