arkos 1.2.31-test → 1.3.0-beta
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 +2 -2
- package/dist/cjs/app.js +1 -1
- package/dist/cjs/app.js.map +1 -1
- package/dist/cjs/exports/auth/index.js +1 -6
- package/dist/cjs/exports/controllers/index.js +1 -11
- package/dist/cjs/exports/error-handler/index.js +1 -11
- package/dist/cjs/exports/index.js +1 -12
- package/dist/cjs/exports/middlewares/index.js +1 -7
- package/dist/cjs/exports/prisma/index.js +1 -6
- package/dist/cjs/exports/prisma/index.js.map +1 -1
- package/dist/cjs/exports/services/index.js +1 -49
- package/dist/cjs/exports/services/index.js.map +1 -1
- package/dist/cjs/exports/utils/index.js +1 -44
- package/dist/cjs/exports/validation/index.js +1 -11
- package/dist/cjs/modules/auth/auth.controller.js +1 -194
- package/dist/cjs/modules/auth/auth.controller.js.map +1 -1
- package/dist/cjs/modules/auth/auth.router.js +1 -50
- package/dist/cjs/modules/auth/auth.router.js.map +1 -1
- package/dist/cjs/modules/auth/auth.service.js +1 -185
- package/dist/cjs/modules/auth/auth.service.js.map +1 -1
- package/dist/cjs/modules/auth/utils/auth-error-objects.js +1 -0
- package/dist/cjs/modules/auth/utils/auth-error-objects.js.map +1 -0
- package/dist/cjs/modules/auth/utils/helpers/auth.controller.helpers.js +1 -83
- package/dist/cjs/modules/auth/utils/services/auth-action.service.js +1 -0
- package/dist/cjs/modules/auth/utils/services/auth-action.service.js.map +1 -0
- package/dist/cjs/modules/base/base.controller.js +1 -158
- package/dist/cjs/modules/base/base.controller.js.map +1 -1
- package/dist/cjs/modules/base/base.middlewares.js +1 -92
- package/dist/cjs/modules/base/base.middlewares.js.map +1 -1
- package/dist/cjs/modules/base/base.router.js +1 -24
- package/dist/cjs/modules/base/base.router.js.map +1 -1
- package/dist/cjs/modules/base/base.service.js +1 -128
- package/dist/cjs/modules/base/base.service.js.map +1 -1
- package/dist/cjs/modules/base/types/base.service.types.js +1 -0
- package/dist/cjs/modules/base/types/base.service.types.js.map +1 -0
- package/dist/cjs/modules/base/utils/helpers/base.controller.helpers.js +1 -82
- package/dist/cjs/modules/base/utils/helpers/base.controller.helpers.js.map +1 -1
- package/dist/cjs/modules/base/utils/helpers/base.middlewares.helpers.js +1 -50
- package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js +1 -97
- package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js.map +1 -1
- package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js +1 -171
- package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js.map +1 -1
- package/dist/cjs/modules/base/utils/router-validator.js +1 -0
- package/dist/cjs/modules/base/utils/router-validator.js.map +1 -0
- package/dist/cjs/modules/base/utils/service-hooks-manager.js +1 -0
- package/dist/cjs/modules/base/utils/service-hooks-manager.js.map +1 -0
- package/dist/cjs/modules/email/email.service.js +1 -104
- package/dist/cjs/modules/error-handler/error-handler.controller.js +4 -146
- package/dist/cjs/modules/error-handler/error-handler.controller.js.map +1 -1
- package/dist/cjs/modules/error-handler/utils/app-error.js +1 -17
- package/dist/cjs/modules/error-handler/utils/app-error.js.map +1 -1
- package/dist/cjs/modules/error-handler/utils/catch-async.js +1 -12
- package/dist/cjs/modules/error-handler/utils/catch-async.js.map +1 -1
- package/dist/cjs/modules/error-handler/utils/error-handler.helpers.js +3 -201
- package/dist/cjs/modules/error-handler/utils/error-handler.helpers.js.map +1 -1
- package/dist/cjs/modules/file-upload/file-upload.controller.js +1 -271
- package/dist/cjs/modules/file-upload/file-upload.controller.js.map +1 -1
- package/dist/cjs/modules/file-upload/file-upload.router.js +1 -44
- package/dist/cjs/modules/file-upload/file-upload.router.js.map +1 -1
- package/dist/cjs/modules/file-upload/file-upload.service.js +1 -322
- package/dist/cjs/modules/file-upload/file-upload.service.js.map +1 -1
- package/dist/cjs/modules/file-upload/utils/helpers/file-upload.helpers.js +1 -97
- package/dist/cjs/modules/swagger/swagger.router.js +1 -99
- package/dist/cjs/modules/swagger/swagger.router.js.map +1 -1
- package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +1 -250
- package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +1 -1
- package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js.map +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js +1 -66
- package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js.map +1 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +1 -41
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +1 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +1 -22
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js.map +1 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js.map +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js.map +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js.map +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.js +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.js.map +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js.map +1 -0
- package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js +1 -94
- package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js.map +1 -1
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/server.js +4 -2
- package/dist/cjs/server.js.map +1 -1
- package/dist/cjs/types/arkos-config.js +1 -3
- package/dist/cjs/types/arkos-config.js.map +1 -1
- package/dist/cjs/types/auth.js +1 -3
- package/dist/cjs/types/auth.js.map +1 -1
- package/dist/cjs/types/index.js +1 -11
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/router-config.js +1 -3
- package/dist/cjs/types/router-config.js.map +1 -1
- package/dist/cjs/utils/arkos-env.js +1 -9
- package/dist/cjs/utils/cli/build.js +5 -212
- package/dist/cjs/utils/cli/build.js.map +1 -1
- package/dist/cjs/utils/cli/dev.js +3 -256
- package/dist/cjs/utils/cli/dev.js.map +1 -1
- package/dist/cjs/utils/cli/generate.js +1 -189
- package/dist/cjs/utils/cli/generate.js.map +1 -1
- package/dist/cjs/utils/cli/index.js +1 -81
- package/dist/cjs/utils/cli/index.js.map +1 -1
- package/dist/cjs/utils/cli/start.js +1 -93
- package/dist/cjs/utils/cli/start.js.map +1 -1
- package/dist/cjs/utils/cli/utils/cli.helpers.js +1 -24
- package/dist/cjs/utils/cli/utils/smart-fs-watcher.js +1 -0
- package/dist/cjs/utils/cli/utils/smart-fs-watcher.js.map +1 -0
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js +5 -20
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js +9 -18
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +1 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-hooks-template.js +144 -0
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-hooks-template.js.map +1 -0
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-middlewares.js +156 -135
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-middlewares.js.map +1 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js +9 -37
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js.map +1 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-router-template.js +11 -36
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-router-template.js.map +1 -1
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-service-template.js +6 -32
- package/dist/cjs/utils/cli/utils/template-generator/templates/generate-service-template.js.map +1 -1
- package/dist/cjs/utils/cli/utils/template-generators.js +2 -28
- package/dist/cjs/utils/cli/utils/template-generators.js.map +1 -1
- package/dist/cjs/utils/cli/utils/watermark-stamper.js +3 -0
- package/dist/cjs/utils/cli/utils/watermark-stamper.js.map +1 -0
- package/dist/cjs/utils/dotenv.helpers.js +1 -43
- package/dist/cjs/utils/dynamic-loader.js +9 -0
- package/dist/cjs/utils/dynamic-loader.js.map +1 -0
- package/dist/cjs/utils/features/api.features.js +1 -167
- package/dist/cjs/utils/features/api.features.js.map +1 -1
- package/dist/cjs/utils/features/change-case.features.js +1 -67
- package/dist/cjs/utils/features/port-and-host-allocator.js +1 -0
- package/dist/cjs/utils/features/port-and-host-allocator.js.map +1 -0
- package/dist/cjs/utils/helpers/api.features.helpers.js +1 -106
- package/dist/cjs/utils/helpers/api.features.helpers.js.map +1 -1
- package/dist/cjs/utils/helpers/change-case.helpers.js +1 -177
- package/dist/cjs/utils/helpers/deepmerge.helper.js +1 -115
- package/dist/cjs/utils/helpers/dynamic-loader.helpers.js +1 -0
- package/dist/cjs/utils/helpers/dynamic-loader.helpers.js.map +1 -0
- package/dist/cjs/utils/helpers/fs.helpers.js +1 -61
- package/dist/cjs/utils/helpers/fs.helpers.js.map +1 -1
- package/dist/cjs/utils/helpers/global.helpers.js +1 -92
- package/dist/cjs/utils/helpers/global.helpers.js.map +1 -1
- package/dist/cjs/utils/helpers/prisma.helpers.js +1 -52
- package/dist/cjs/utils/helpers/prisma.helpers.js.map +1 -1
- package/dist/cjs/utils/helpers/query-parser.helpers.js +1 -45
- package/dist/cjs/utils/helpers/routers.helpers.js +1 -21
- package/dist/cjs/utils/helpers/routers.helpers.js.map +1 -1
- package/dist/cjs/utils/helpers/text.helpers.js +1 -28
- package/dist/cjs/utils/prisma/prisma-json-schema-generator.js +1 -0
- package/dist/cjs/utils/prisma/prisma-json-schema-generator.js.map +1 -0
- package/dist/cjs/utils/prisma/prisma-schema-parser.js +4 -0
- package/dist/cjs/utils/prisma/prisma-schema-parser.js.map +1 -0
- package/dist/cjs/utils/prisma/types.js +1 -0
- package/dist/cjs/utils/prisma/types.js.map +1 -0
- package/dist/cjs/utils/sheu.js +1 -119
- package/dist/cjs/utils/sheu.js.map +1 -1
- package/dist/cjs/utils/validate-dto.js +1 -17
- package/dist/cjs/utils/validate-dto.js.map +1 -1
- package/dist/cjs/utils/validate-schema.js +1 -15
- package/dist/cjs/utils/validate-schema.js.map +1 -1
- package/dist/esm/app.js +1 -1
- package/dist/esm/app.js.map +1 -1
- package/dist/esm/exports/auth/index.js +1 -2
- package/dist/esm/exports/controllers/index.js +1 -4
- package/dist/esm/exports/error-handler/index.js +1 -4
- package/dist/esm/exports/index.js +1 -8
- package/dist/esm/exports/middlewares/index.js +1 -2
- package/dist/esm/exports/prisma/index.js +1 -3
- package/dist/esm/exports/prisma/index.js.map +1 -1
- package/dist/esm/exports/services/index.js +1 -9
- package/dist/esm/exports/services/index.js.map +1 -1
- package/dist/esm/exports/utils/index.js +1 -4
- package/dist/esm/exports/validation/index.js +1 -4
- package/dist/esm/modules/auth/auth.controller.js +1 -187
- package/dist/esm/modules/auth/auth.controller.js.map +1 -1
- package/dist/esm/modules/auth/auth.router.js +1 -44
- package/dist/esm/modules/auth/auth.router.js.map +1 -1
- package/dist/esm/modules/auth/auth.service.js +1 -178
- package/dist/esm/modules/auth/auth.service.js.map +1 -1
- package/dist/esm/modules/auth/utils/auth-error-objects.js +1 -0
- package/dist/esm/modules/auth/utils/auth-error-objects.js.map +1 -0
- package/dist/esm/modules/auth/utils/helpers/auth.controller.helpers.js +1 -73
- package/dist/esm/modules/auth/utils/services/auth-action.service.js +1 -0
- package/dist/esm/modules/auth/utils/services/auth-action.service.js.map +1 -0
- package/dist/esm/modules/base/base.controller.js +1 -150
- package/dist/esm/modules/base/base.controller.js.map +1 -1
- package/dist/esm/modules/base/base.middlewares.js +1 -81
- package/dist/esm/modules/base/base.middlewares.js.map +1 -1
- package/dist/esm/modules/base/base.router.js +1 -17
- package/dist/esm/modules/base/base.router.js.map +1 -1
- package/dist/esm/modules/base/base.service.js +1 -120
- package/dist/esm/modules/base/base.service.js.map +1 -1
- package/dist/esm/modules/base/types/base.service.types.js +1 -0
- package/dist/esm/modules/base/types/base.service.types.js.map +1 -0
- package/dist/esm/modules/base/utils/helpers/base.controller.helpers.js +1 -77
- package/dist/esm/modules/base/utils/helpers/base.controller.helpers.js.map +1 -1
- package/dist/esm/modules/base/utils/helpers/base.middlewares.helpers.js +1 -44
- package/dist/esm/modules/base/utils/helpers/base.router.helpers.js +1 -89
- package/dist/esm/modules/base/utils/helpers/base.router.helpers.js.map +1 -1
- package/dist/esm/modules/base/utils/helpers/base.service.helpers.js +1 -165
- package/dist/esm/modules/base/utils/helpers/base.service.helpers.js.map +1 -1
- package/dist/esm/modules/base/utils/router-validator.js +1 -0
- package/dist/esm/modules/base/utils/router-validator.js.map +1 -0
- package/dist/esm/modules/base/utils/service-hooks-manager.js +1 -0
- package/dist/esm/modules/base/utils/service-hooks-manager.js.map +1 -0
- package/dist/esm/modules/email/email.service.js +1 -97
- package/dist/esm/modules/error-handler/error-handler.controller.js +4 -107
- package/dist/esm/modules/error-handler/error-handler.controller.js.map +1 -1
- package/dist/esm/modules/error-handler/utils/app-error.js +1 -15
- package/dist/esm/modules/error-handler/utils/app-error.js.map +1 -1
- package/dist/esm/modules/error-handler/utils/catch-async.js +1 -10
- package/dist/esm/modules/error-handler/utils/catch-async.js.map +1 -1
- package/dist/esm/modules/error-handler/utils/error-handler.helpers.js +3 -160
- package/dist/esm/modules/error-handler/utils/error-handler.helpers.js.map +1 -1
- package/dist/esm/modules/file-upload/file-upload.controller.js +1 -266
- package/dist/esm/modules/file-upload/file-upload.controller.js.map +1 -1
- package/dist/esm/modules/file-upload/file-upload.router.js +1 -38
- package/dist/esm/modules/file-upload/file-upload.router.js.map +1 -1
- package/dist/esm/modules/file-upload/file-upload.service.js +1 -314
- package/dist/esm/modules/file-upload/file-upload.service.js.map +1 -1
- package/dist/esm/modules/file-upload/utils/helpers/file-upload.helpers.js +1 -87
- package/dist/esm/modules/swagger/swagger.router.js +1 -93
- package/dist/esm/modules/swagger/swagger.router.js.map +1 -1
- package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +1 -247
- package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +1 -1
- package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js +1 -0
- package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js.map +1 -0
- package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js +1 -63
- package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js.map +1 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +1 -38
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +1 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +1 -19
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js.map +1 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +1 -0
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js.map +1 -0
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +1 -0
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js.map +1 -0
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +1 -0
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js.map +1 -0
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.js +1 -0
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.js.map +1 -0
- package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js +1 -0
- package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js.map +1 -0
- package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js +1 -84
- package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js.map +1 -1
- package/dist/esm/package.json +3 -0
- package/dist/esm/server.js +4 -2
- package/dist/esm/server.js.map +1 -1
- package/dist/esm/types/arkos-config.js +1 -2
- package/dist/esm/types/arkos-config.js.map +1 -1
- package/dist/esm/types/auth.js +1 -2
- package/dist/esm/types/auth.js.map +1 -1
- package/dist/esm/types/index.js +1 -8
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/types/router-config.js +1 -2
- package/dist/esm/types/router-config.js.map +1 -1
- package/dist/esm/utils/arkos-env.js +1 -7
- package/dist/esm/utils/cli/build.js +5 -206
- package/dist/esm/utils/cli/build.js.map +1 -1
- package/dist/esm/utils/cli/dev.js +3 -249
- package/dist/esm/utils/cli/dev.js.map +1 -1
- package/dist/esm/utils/cli/generate.js +1 -183
- package/dist/esm/utils/cli/generate.js.map +1 -1
- package/dist/esm/utils/cli/index.js +1 -74
- package/dist/esm/utils/cli/index.js.map +1 -1
- package/dist/esm/utils/cli/start.js +1 -86
- package/dist/esm/utils/cli/start.js.map +1 -1
- package/dist/esm/utils/cli/utils/cli.helpers.js +1 -16
- package/dist/esm/utils/cli/utils/smart-fs-watcher.js +1 -0
- package/dist/esm/utils/cli/utils/smart-fs-watcher.js.map +1 -0
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js +5 -17
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js +9 -15
- 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-hooks-template.js +144 -0
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-hooks-template.js.map +1 -0
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-middlewares.js +156 -132
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-middlewares.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js +9 -34
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-router-template.js +11 -30
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-router-template.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-service-template.js +6 -29
- package/dist/esm/utils/cli/utils/template-generator/templates/generate-service-template.js.map +1 -1
- package/dist/esm/utils/cli/utils/template-generators.js +2 -25
- package/dist/esm/utils/cli/utils/template-generators.js.map +1 -1
- package/dist/esm/utils/cli/utils/watermark-stamper.js +3 -0
- package/dist/esm/utils/cli/utils/watermark-stamper.js.map +1 -0
- package/dist/esm/utils/dotenv.helpers.js +1 -37
- package/dist/esm/utils/dynamic-loader.js +9 -0
- package/dist/esm/utils/dynamic-loader.js.map +1 -0
- package/dist/esm/utils/features/api.features.js +1 -160
- package/dist/esm/utils/features/api.features.js.map +1 -1
- package/dist/esm/utils/features/change-case.features.js +1 -31
- package/dist/esm/utils/features/port-and-host-allocator.js +1 -0
- package/dist/esm/utils/features/port-and-host-allocator.js.map +1 -0
- package/dist/esm/utils/helpers/api.features.helpers.js +1 -103
- package/dist/esm/utils/helpers/api.features.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/change-case.helpers.js +1 -161
- package/dist/esm/utils/helpers/deepmerge.helper.js +1 -113
- package/dist/esm/utils/helpers/dynamic-loader.helpers.js +1 -0
- package/dist/esm/utils/helpers/dynamic-loader.helpers.js.map +1 -0
- package/dist/esm/utils/helpers/fs.helpers.js +1 -52
- package/dist/esm/utils/helpers/fs.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/global.helpers.js +1 -50
- package/dist/esm/utils/helpers/global.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/prisma.helpers.js +1 -44
- package/dist/esm/utils/helpers/prisma.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/query-parser.helpers.js +1 -40
- package/dist/esm/utils/helpers/routers.helpers.js +1 -16
- package/dist/esm/utils/helpers/routers.helpers.js.map +1 -1
- package/dist/esm/utils/helpers/text.helpers.js +1 -22
- package/dist/esm/utils/prisma/prisma-json-schema-generator.js +1 -0
- package/dist/esm/utils/prisma/prisma-json-schema-generator.js.map +1 -0
- package/dist/esm/utils/prisma/prisma-schema-parser.js +4 -0
- package/dist/esm/utils/prisma/prisma-schema-parser.js.map +1 -0
- package/dist/esm/utils/prisma/types.js +1 -0
- package/dist/esm/utils/prisma/types.js.map +1 -0
- package/dist/esm/utils/sheu.js +1 -117
- package/dist/esm/utils/sheu.js.map +1 -1
- package/dist/esm/utils/validate-dto.js +1 -11
- package/dist/esm/utils/validate-dto.js.map +1 -1
- package/dist/esm/utils/validate-schema.js +1 -9
- package/dist/esm/utils/validate-schema.js.map +1 -1
- package/dist/types/exports/prisma/index.d.ts +3 -2
- package/dist/types/exports/services/index.d.ts +3 -2
- package/dist/types/modules/auth/auth.controller.d.ts +10 -9
- package/dist/types/modules/auth/auth.service.d.ts +7 -3
- package/dist/types/modules/auth/utils/auth-error-objects.d.ts +3 -0
- package/dist/types/modules/auth/utils/services/auth-action.service.d.ts +23 -0
- package/dist/types/modules/base/base.controller.d.ts +10 -12
- package/dist/types/modules/base/base.middlewares.d.ts +4 -4
- package/dist/types/modules/base/base.service.d.ts +14 -68
- package/dist/types/modules/base/types/base.service.types.d.ts +215 -0
- package/dist/types/modules/base/utils/helpers/base.controller.helpers.d.ts +0 -2
- package/dist/types/modules/base/utils/helpers/base.router.helpers.d.ts +3 -3
- package/dist/types/modules/base/utils/helpers/base.service.helpers.d.ts +9 -2
- package/dist/types/modules/base/utils/router-validator.d.ts +5 -0
- package/dist/types/modules/base/utils/service-hooks-manager.d.ts +7 -0
- package/dist/types/modules/error-handler/error-handler.controller.d.ts +1 -1
- package/dist/types/modules/error-handler/utils/catch-async.d.ts +4 -2
- package/dist/types/modules/error-handler/utils/error-handler.helpers.d.ts +18 -17
- package/dist/types/modules/file-upload/file-upload.controller.d.ts +4 -6
- package/dist/types/modules/file-upload/file-upload.service.d.ts +4 -5
- package/dist/types/modules/swagger/utils/helpers/get-authentication-json-schema-paths.d.ts +3 -1
- package/dist/types/modules/swagger/utils/helpers/get-swagger-default-configs.d.ts +46 -0
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.d.ts +2 -1
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.d.ts +4 -0
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.d.ts +1 -0
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.d.ts +3 -0
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.d.ts +3 -0
- package/dist/types/modules/swagger/utils/helpers/missing-json-schemas-generator.d.ts +34 -0
- package/dist/types/modules/swagger/utils/helpers/swagger.router.helpers.d.ts +4 -2
- package/dist/types/server.d.ts +4 -1
- package/dist/types/types/arkos-config.d.ts +5 -3
- package/dist/types/types/auth.d.ts +7 -1
- package/dist/types/types/index.d.ts +4 -1
- package/dist/types/types/router-config.d.ts +24 -1
- package/dist/types/utils/cli/generate.d.ts +2 -1
- package/dist/types/utils/cli/utils/smart-fs-watcher.d.ts +11 -0
- package/dist/types/utils/cli/utils/template-generator/templates/generate-hooks-template.d.ts +2 -0
- package/dist/types/utils/cli/utils/watermark-stamper.d.ts +9 -0
- package/dist/types/utils/dynamic-loader.d.ts +104 -0
- package/dist/types/utils/features/port-and-host-allocator.d.ts +21 -0
- package/dist/types/utils/helpers/dynamic-loader.helpers.d.ts +3 -0
- package/dist/types/utils/helpers/fs.helpers.d.ts +0 -4
- package/dist/types/utils/helpers/global.helpers.d.ts +1 -0
- package/dist/types/utils/helpers/prisma.helpers.d.ts +0 -1
- package/dist/types/utils/helpers/routers.helpers.d.ts +6 -2
- package/dist/types/utils/prisma/prisma-json-schema-generator.d.ts +34 -0
- package/dist/types/utils/prisma/prisma-schema-parser.d.ts +28 -0
- package/dist/types/utils/prisma/types.d.ts +49 -0
- package/dist/types/utils/sheu.d.ts +15 -15
- package/package.json +32 -18
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.js +0 -30
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.js +0 -442
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.js.map +0 -1
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.js +0 -165
- package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.js.map +0 -1
- package/dist/cjs/utils/helpers/models.helpers.js +0 -313
- package/dist/cjs/utils/helpers/models.helpers.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.js +0 -24
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.js +0 -436
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.js.map +0 -1
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.js +0 -159
- package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.js.map +0 -1
- package/dist/esm/utils/helpers/models.helpers.js +0 -296
- package/dist/esm/utils/helpers/models.helpers.js.map +0 -1
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.d.ts +0 -1
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.d.ts +0 -2
- package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.d.ts +0 -2
- package/dist/types/utils/helpers/models.helpers.d.ts +0 -107
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
declare const catchAsync: (fn: ArkosRequestHandler
|
|
1
|
+
import { ArkosRequestHandler, ArkosErrorRequestHandler } from "../../../types";
|
|
2
|
+
declare const catchAsync: (fn: ArkosRequestHandler | ArkosErrorRequestHandler, options?: {
|
|
3
|
+
type: "error" | "normal";
|
|
4
|
+
}) => any;
|
|
3
5
|
export type CatchAsyncReturnType = ReturnType<typeof catchAsync>;
|
|
4
6
|
export default catchAsync;
|
|
@@ -8,39 +8,40 @@ export interface PrismaError {
|
|
|
8
8
|
export declare function handleJWTError(): AppError;
|
|
9
9
|
export declare function handleJWTExpired(): AppError;
|
|
10
10
|
export declare function handlePrismaClientValidationError(err: AppError): AppError;
|
|
11
|
-
export declare function handleAuthenticationError(
|
|
12
|
-
export declare function handleServerNotReachableError(
|
|
13
|
-
export declare function handleConnectionTimeoutError(
|
|
14
|
-
export declare function handleDatabaseNotFoundError(
|
|
11
|
+
export declare function handleAuthenticationError(_: AppError): AppError;
|
|
12
|
+
export declare function handleServerNotReachableError(_: AppError): AppError;
|
|
13
|
+
export declare function handleConnectionTimeoutError(_: AppError): AppError;
|
|
14
|
+
export declare function handleDatabaseNotFoundError(_: AppError): AppError;
|
|
15
15
|
export declare function handleEnvironmentVariableError(err: AppError): AppError;
|
|
16
16
|
export declare function handleFieldValueTooLargeError(err: AppError): AppError;
|
|
17
|
-
export declare function handleRecordNotFoundError(
|
|
17
|
+
export declare function handleRecordNotFoundError(_: AppError): AppError;
|
|
18
18
|
export declare function handleUniqueConstraintError(err: AppError): AppError;
|
|
19
|
-
export declare function handleForeignKeyConstraintError(
|
|
19
|
+
export declare function handleForeignKeyConstraintError(_: AppError): AppError;
|
|
20
20
|
export declare function handleConstraintFailedError(err: AppError): AppError;
|
|
21
21
|
export declare function handleInvalidFieldValueError(err: AppError): AppError;
|
|
22
22
|
export declare function handleInvalidFieldProvidedError(err: AppError): AppError;
|
|
23
|
-
export declare function handleDataValidationError(
|
|
23
|
+
export declare function handleDataValidationError(_: AppError): AppError;
|
|
24
24
|
export declare function handleQueryParsingError(err: AppError): AppError;
|
|
25
25
|
export declare function handleInvalidQueryFormatError(err: AppError): AppError;
|
|
26
|
-
export declare function handleRawQueryExecutionError(
|
|
26
|
+
export declare function handleRawQueryExecutionError(_: AppError): AppError;
|
|
27
27
|
export declare function handleNullConstraintViolationError(err: AppError): AppError;
|
|
28
|
-
export declare function handleSchemaCreationFailedError(
|
|
28
|
+
export declare function handleSchemaCreationFailedError(_: AppError): AppError;
|
|
29
29
|
export declare function handleMigrationAlreadyAppliedError(err: AppError): AppError;
|
|
30
30
|
export declare function handleMigrationScriptFailedError(err: AppError): AppError;
|
|
31
|
-
export declare function handleVersionMismatchError(
|
|
31
|
+
export declare function handleVersionMismatchError(_: AppError): AppError;
|
|
32
32
|
export declare function handleMigrationFileReadError(err: AppError): AppError;
|
|
33
|
-
export declare function handleSchemaDriftError(
|
|
34
|
-
export declare function handleSchemaSyntaxError(
|
|
35
|
-
export declare function handleClientTypeError(
|
|
36
|
-
export declare function handleDynamicQueryError(
|
|
33
|
+
export declare function handleSchemaDriftError(_: AppError): AppError;
|
|
34
|
+
export declare function handleSchemaSyntaxError(_: AppError): AppError;
|
|
35
|
+
export declare function handleClientTypeError(_: AppError): AppError;
|
|
36
|
+
export declare function handleDynamicQueryError(_: AppError): AppError;
|
|
37
37
|
export declare function handleRelationLoadingError(err: AppError): AppError;
|
|
38
38
|
export declare function handleBinaryError(err: AppError): AppError;
|
|
39
|
-
export declare function handleNetworkError(
|
|
40
|
-
export declare function handleUnhandledPromiseError(
|
|
39
|
+
export declare function handleNetworkError(_: AppError): AppError;
|
|
40
|
+
export declare function handleUnhandledPromiseError(_: AppError): AppError;
|
|
41
41
|
export declare function handleDataTypeError(err: AppError): AppError;
|
|
42
|
-
export declare function handleEmptyResultError(
|
|
42
|
+
export declare function handleEmptyResultError(_: AppError): AppError;
|
|
43
43
|
export declare function handleNonExistingRecord(err: {
|
|
44
44
|
meta?: Record<string, any>;
|
|
45
45
|
[x: string]: any;
|
|
46
46
|
}): AppError;
|
|
47
|
+
export declare function handlePrismaClientInitializationError(_: any): AppError;
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import { ArkosNextFunction, ArkosRequest, ArkosResponse } from "../../types";
|
|
2
1
|
declare class FileUploadController {
|
|
3
|
-
private
|
|
4
|
-
uploadFile:
|
|
5
|
-
deleteFile:
|
|
6
|
-
updateFile:
|
|
7
|
-
streamFile: (req: ArkosRequest, res: ArkosResponse, next: ArkosNextFunction) => Promise<void>;
|
|
2
|
+
private interceptors;
|
|
3
|
+
uploadFile: any;
|
|
4
|
+
deleteFile: any;
|
|
5
|
+
updateFile: any;
|
|
8
6
|
}
|
|
9
7
|
declare const fileUploadController: FileUploadController;
|
|
10
8
|
export default fileUploadController;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import multer from "multer";
|
|
2
|
-
import {
|
|
3
|
-
import { ArkosRequest, ArkosResponse } from "../../types";
|
|
2
|
+
import { ArkosRequest, ArkosRequestHandler, ArkosResponse } from "../../types";
|
|
4
3
|
export declare class FileUploadService {
|
|
5
4
|
readonly uploadDir: string;
|
|
6
5
|
private fileSizeLimit;
|
|
@@ -10,9 +9,9 @@ export declare class FileUploadService {
|
|
|
10
9
|
constructor(uploadDir: string, fileSizeLimit?: number, allowedFileTypes?: RegExp, maxCount?: number);
|
|
11
10
|
private fileFilter;
|
|
12
11
|
getUpload(): multer.Multer;
|
|
13
|
-
handleSingleUpload(oldFilePath?: string):
|
|
14
|
-
handleMultipleUpload():
|
|
15
|
-
handleDeleteSingleFile(oldFilePath: string):
|
|
12
|
+
handleSingleUpload(oldFilePath?: string): ArkosRequestHandler;
|
|
13
|
+
handleMultipleUpload(): ArkosRequestHandler;
|
|
14
|
+
handleDeleteSingleFile(oldFilePath: string): ArkosRequestHandler;
|
|
16
15
|
deleteFileByUrl(fileUrl: string): Promise<boolean>;
|
|
17
16
|
private getFieldName;
|
|
18
17
|
upload(req: ArkosRequest, res: ArkosResponse, options?: {
|
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
import { OpenAPIV3 } from "openapi-types";
|
|
2
|
-
|
|
2
|
+
import { ArkosConfig } from "../../../../exports";
|
|
3
|
+
export declare const getSchemaMode: (action: string, arkosConfig: ArkosConfig) => Promise<"prisma" | "zod" | "class-validator">;
|
|
4
|
+
export default function getAuthenticationJsonSchemaPaths(arkosConfig: ArkosConfig): Promise<OpenAPIV3.PathsObject<{}, {}>>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { OpenAPIV3 } from "openapi-types";
|
|
2
|
+
export default function getSwaggerDefaultConfig(defaultModelsPaths: Record<string, any>, defaultJsonSchemas: OpenAPIV3.PathsObject<{}, {}>): Promise<{
|
|
3
|
+
enableAfterBuild?: boolean;
|
|
4
|
+
endpoint?: string;
|
|
5
|
+
mode: "prisma" | "class-validator" | "zod";
|
|
6
|
+
strict?: boolean;
|
|
7
|
+
options?: {
|
|
8
|
+
definition?: {
|
|
9
|
+
openapi?: string;
|
|
10
|
+
info?: {
|
|
11
|
+
title?: string;
|
|
12
|
+
version?: string;
|
|
13
|
+
description?: string;
|
|
14
|
+
};
|
|
15
|
+
servers?: {
|
|
16
|
+
url: string;
|
|
17
|
+
description?: string;
|
|
18
|
+
}[];
|
|
19
|
+
paths?: OpenAPIV3.PathsObject;
|
|
20
|
+
termsOfService?: string;
|
|
21
|
+
contact?: {
|
|
22
|
+
name?: string;
|
|
23
|
+
url?: string;
|
|
24
|
+
email?: string;
|
|
25
|
+
};
|
|
26
|
+
license?: {
|
|
27
|
+
name: string;
|
|
28
|
+
url?: string;
|
|
29
|
+
};
|
|
30
|
+
tags?: {
|
|
31
|
+
name: string;
|
|
32
|
+
description?: string;
|
|
33
|
+
}[];
|
|
34
|
+
components?: {
|
|
35
|
+
securitySchemes?: Record<string, any>;
|
|
36
|
+
schemas?: Record<string, any>;
|
|
37
|
+
};
|
|
38
|
+
security?: Array<Record<string, string[]>>;
|
|
39
|
+
};
|
|
40
|
+
apis?: string[];
|
|
41
|
+
deepLinking?: boolean;
|
|
42
|
+
tryItOutEnabled?: boolean;
|
|
43
|
+
persistAuthorization?: boolean;
|
|
44
|
+
};
|
|
45
|
+
scalarApiReferenceConfiguration?: Partial<import("@scalar/express-api-reference").ApiReferenceConfiguration>;
|
|
46
|
+
} | undefined>;
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { ArkosConfig } from "../../../../../exports";
|
|
2
|
+
export declare function generatePrismaJsonSchemas(arkosConfig: ArkosConfig): Promise<import("../../../../../utils/prisma/prisma-json-schema-generator").GeneratedSchemas>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function generateZodJsonSchemas(): Promise<Record<string, any>>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { OpenAPIV3 } from "openapi-types";
|
|
2
|
+
import { ArkosConfig } from "../../../../../../exports";
|
|
3
|
+
export declare function generatePrismaModelMainRoutesPaths(model: string, paths: OpenAPIV3.PathsObject | undefined, arkosConfig: ArkosConfig): Promise<OpenAPIV3.PathsObject<{}, {}> | undefined>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { OpenAPIV3 } from "openapi-types";
|
|
2
|
+
import { ArkosConfig } from "../../../../exports";
|
|
3
|
+
declare class MissingJsonSchemasGenerator {
|
|
4
|
+
private extractModelNameFromSchemaRef;
|
|
5
|
+
private extractActionFromOperationId;
|
|
6
|
+
private extractModelNameFromOperationId;
|
|
7
|
+
private extractSchemaRefsWithContext;
|
|
8
|
+
private extractPathSchemaRefs;
|
|
9
|
+
private getSchemaNameFromRef;
|
|
10
|
+
generateMissingJsonSchemas(currentPaths: OpenAPIV3.PathsObject, currentJsonSchemas: Record<string, any>, arkosConfig: ArkosConfig): Promise<Record<string, any>>;
|
|
11
|
+
private extractActionFromSchemaRef;
|
|
12
|
+
analyzeMissingSchemas(currentPaths: OpenAPIV3.PathsObject, currentJsonSchemas: Record<string, any>): {
|
|
13
|
+
allRefs: Array<{
|
|
14
|
+
ref: string;
|
|
15
|
+
context: any;
|
|
16
|
+
}>;
|
|
17
|
+
missingRefs: Array<{
|
|
18
|
+
ref: string;
|
|
19
|
+
context: any;
|
|
20
|
+
}>;
|
|
21
|
+
existingRefs: Array<{
|
|
22
|
+
ref: string;
|
|
23
|
+
context: any;
|
|
24
|
+
}>;
|
|
25
|
+
modelActions: {
|
|
26
|
+
model: string;
|
|
27
|
+
action: string;
|
|
28
|
+
ref: string;
|
|
29
|
+
operationId?: string;
|
|
30
|
+
}[];
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
declare const missingJsonSchemaGenerator: MissingJsonSchemasGenerator;
|
|
34
|
+
export default missingJsonSchemaGenerator;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { ArkosConfig } from "../../../../exports";
|
|
2
2
|
import { OpenAPIV3 } from "openapi-types";
|
|
3
|
-
|
|
3
|
+
import { ValidationFileMappingKey } from "../../../../utils/dynamic-loader";
|
|
4
|
+
export declare function getOpenAPIJsonSchemasByConfigMode(arkosConfig: ArkosConfig): Promise<Record<string, any>>;
|
|
4
5
|
export declare function getCorrectJsonSchemaName(type: string, modelName: string, suffix: "Dto" | "Schema"): string;
|
|
5
6
|
export declare function kebabToHuman(kebabStr: string): string;
|
|
6
|
-
export declare function getSchemaRef(schemaName: string, mode:
|
|
7
|
+
export declare function getSchemaRef(schemaName: string, mode: "prisma" | "zod" | "class-validator"): string;
|
|
7
8
|
export declare function generatePathsForModels(arkosConfig: ArkosConfig): Promise<OpenAPIV3.PathsObject>;
|
|
9
|
+
export declare function localValidatorFileExists(action: ValidationFileMappingKey, modelName: string, arkosConfig: ArkosConfig): Promise<boolean>;
|
package/dist/types/server.d.ts
CHANGED
|
@@ -2,7 +2,10 @@ import { IncomingMessage, Server, ServerResponse } from "http";
|
|
|
2
2
|
import { Express } from "express";
|
|
3
3
|
import { ArkosConfig } from "./types/arkos-config";
|
|
4
4
|
declare let server: Server<typeof IncomingMessage, typeof ServerResponse>;
|
|
5
|
-
declare
|
|
5
|
+
export declare let _arkosConfig: ArkosConfig & {
|
|
6
|
+
available?: boolean;
|
|
7
|
+
};
|
|
8
|
+
declare function initApp(arkosConfig?: ArkosConfig): Promise<Express | undefined>;
|
|
6
9
|
export declare function terminateApplicationRunningProcessAndServer(): void;
|
|
7
10
|
export declare function getArkosConfig(): ArkosConfig;
|
|
8
11
|
export declare function getExpressApp(): Express;
|
|
@@ -8,6 +8,7 @@ import { Options as QueryParserOptions } from "../utils/helpers/query-parser.hel
|
|
|
8
8
|
import { ValidatorOptions } from "class-validator";
|
|
9
9
|
import { MsDuration } from "../modules/auth/utils/helpers/auth.controller.helpers";
|
|
10
10
|
import { OpenAPIV3 } from "openapi-types";
|
|
11
|
+
import type { ApiReferenceConfiguration } from "@scalar/express-api-reference" with { "resolution-mode": "import" };
|
|
11
12
|
export type ArkosConfig = {
|
|
12
13
|
request?: {
|
|
13
14
|
parameters?: {
|
|
@@ -84,7 +85,7 @@ export type ArkosConfig = {
|
|
|
84
85
|
};
|
|
85
86
|
middlewares?: {
|
|
86
87
|
additional?: express.RequestHandler[];
|
|
87
|
-
disable?: ("compression" | "global-rate-limit" | "auth-rate-limit" | "cors" | "express-json" | "cookie-parser" | "query-parser" | "
|
|
88
|
+
disable?: ("compression" | "global-rate-limit" | "auth-rate-limit" | "cors" | "express-json" | "cookie-parser" | "query-parser" | "request-logger" | "global-error-handler")[];
|
|
88
89
|
replace?: {
|
|
89
90
|
compression?: express.RequestHandler;
|
|
90
91
|
globalRateLimit?: express.RequestHandler;
|
|
@@ -93,12 +94,12 @@ export type ArkosConfig = {
|
|
|
93
94
|
expressJson?: express.RequestHandler;
|
|
94
95
|
cookieParser?: express.RequestHandler;
|
|
95
96
|
queryParser?: express.RequestHandler;
|
|
96
|
-
databaseConnection?: express.RequestHandler;
|
|
97
97
|
requestLogger?: express.RequestHandler;
|
|
98
98
|
globalErrorHandler?: express.ErrorRequestHandler;
|
|
99
99
|
};
|
|
100
100
|
};
|
|
101
101
|
routers?: {
|
|
102
|
+
strict?: boolean | "no-bulk";
|
|
102
103
|
additional?: express.Router[];
|
|
103
104
|
disable?: ("auth-router" | "prisma-models-router" | "file-upload" | "welcome-endpoint")[];
|
|
104
105
|
replace?: {
|
|
@@ -124,6 +125,7 @@ export type ArkosConfig = {
|
|
|
124
125
|
enableAfterBuild?: boolean;
|
|
125
126
|
endpoint?: string;
|
|
126
127
|
mode: "prisma" | "class-validator" | "zod";
|
|
128
|
+
strict?: boolean;
|
|
127
129
|
options?: {
|
|
128
130
|
definition?: {
|
|
129
131
|
openapi?: string;
|
|
@@ -158,10 +160,10 @@ export type ArkosConfig = {
|
|
|
158
160
|
security?: Array<Record<string, string[]>>;
|
|
159
161
|
};
|
|
160
162
|
apis?: string[];
|
|
161
|
-
swaggerUiOptions?: Record<string, any>;
|
|
162
163
|
deepLinking?: boolean;
|
|
163
164
|
tryItOutEnabled?: boolean;
|
|
164
165
|
persistAuthorization?: boolean;
|
|
165
166
|
};
|
|
167
|
+
scalarApiReferenceConfiguration?: Partial<ApiReferenceConfiguration>;
|
|
166
168
|
};
|
|
167
169
|
};
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { JwtPayload } from "jsonwebtoken";
|
|
2
2
|
export type AccessAction = "Create" | "Update" | "Delete" | "View" | string;
|
|
3
|
+
export type DetailedAccessControlRule = {
|
|
4
|
+
roles: string[];
|
|
5
|
+
name?: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
errorMessage?: string;
|
|
8
|
+
};
|
|
3
9
|
export type AccessControlRules = {
|
|
4
|
-
[key in AccessAction]: string[];
|
|
10
|
+
[key in AccessAction]: string[] | DetailedAccessControlRule;
|
|
5
11
|
};
|
|
6
12
|
export type AuthenticationControlRules = {
|
|
7
13
|
[key in AccessAction]: boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NextFunction, Request, RequestHandler, Response } from "express";
|
|
1
|
+
import { ErrorRequestHandler, NextFunction, Request, RequestHandler, Response } from "express";
|
|
2
2
|
export type PrismaOperations = "findMany";
|
|
3
3
|
export type PrismaQueryOptions<T extends Record<string, any>> = {
|
|
4
4
|
queryOptions?: Partial<Parameters<T["findMany"]>[0]>;
|
|
@@ -122,6 +122,7 @@ export interface ArkosRequest<Body = any, Query = any> extends Request {
|
|
|
122
122
|
responseStatus?: number | string | null | undefined;
|
|
123
123
|
body: Body;
|
|
124
124
|
prismaQueryOptions?: Record<string, any>;
|
|
125
|
+
accessToken?: string;
|
|
125
126
|
}
|
|
126
127
|
export interface ArkosResponse extends Response {
|
|
127
128
|
}
|
|
@@ -129,3 +130,5 @@ export interface ArkosNextFunction extends NextFunction {
|
|
|
129
130
|
}
|
|
130
131
|
export interface ArkosRequestHandler extends RequestHandler {
|
|
131
132
|
}
|
|
133
|
+
export interface ArkosErrorRequestHandler extends ErrorRequestHandler {
|
|
134
|
+
}
|
|
@@ -1,10 +1,32 @@
|
|
|
1
1
|
export type RouterEndpoint = "createOne" | "findOne" | "updateOne" | "deleteOne" | "findMany" | "createMany" | "updateMany" | "deleteMany";
|
|
2
|
-
export type
|
|
2
|
+
export type AuthRouterEndpoint = "getMe" | "updateMe" | "deleteMe" | "login" | "logout" | "signup" | "updatePassword" | "findManyAuthAction" | "findOneAuthAction";
|
|
3
|
+
export type FileUploadRouterEndpoint = "findFile" | "uploadFile" | "updateFile" | "deleteFile";
|
|
4
|
+
interface PrismaBaseRouterConfig {
|
|
3
5
|
parent?: {
|
|
4
6
|
model?: string;
|
|
5
7
|
foreignKeyField?: string;
|
|
6
8
|
endpoints?: "*" | RouterEndpoint[];
|
|
7
9
|
};
|
|
10
|
+
}
|
|
11
|
+
export type RouterConfig<T extends string = string> = T extends "auth" ? {
|
|
12
|
+
disable?: boolean | {
|
|
13
|
+
getMe?: boolean;
|
|
14
|
+
updateMe?: boolean;
|
|
15
|
+
deleteMe?: boolean;
|
|
16
|
+
login?: boolean;
|
|
17
|
+
logout?: boolean;
|
|
18
|
+
signup?: boolean;
|
|
19
|
+
updatePassword?: boolean;
|
|
20
|
+
findManyAuthAction?: boolean;
|
|
21
|
+
};
|
|
22
|
+
} : T extends "file-upload" ? {
|
|
23
|
+
disable?: boolean | {
|
|
24
|
+
findFile?: boolean;
|
|
25
|
+
uploadFile?: boolean;
|
|
26
|
+
updateFile?: boolean;
|
|
27
|
+
deleteFile?: boolean;
|
|
28
|
+
};
|
|
29
|
+
} : PrismaBaseRouterConfig & {
|
|
8
30
|
disable?: boolean | {
|
|
9
31
|
createOne?: boolean;
|
|
10
32
|
findOne?: boolean;
|
|
@@ -16,3 +38,4 @@ export type RouterConfig = {
|
|
|
16
38
|
deleteMany?: boolean;
|
|
17
39
|
};
|
|
18
40
|
};
|
|
41
|
+
export {};
|
|
@@ -6,8 +6,9 @@ export declare const generateCommand: {
|
|
|
6
6
|
controller: (options: GenerateOptions) => Promise<void>;
|
|
7
7
|
service: (options: GenerateOptions) => Promise<void>;
|
|
8
8
|
router: (options: GenerateOptions) => Promise<void>;
|
|
9
|
-
|
|
9
|
+
interceptors: (options: GenerateOptions) => Promise<void>;
|
|
10
10
|
authConfigs: (options: GenerateOptions) => Promise<void>;
|
|
11
|
+
hooks: (options: GenerateOptions) => Promise<void>;
|
|
11
12
|
queryOptions: (options: GenerateOptions) => Promise<void>;
|
|
12
13
|
};
|
|
13
14
|
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
declare class SmartFSWather {
|
|
2
|
+
private watchedFiles;
|
|
3
|
+
private watcher;
|
|
4
|
+
private onNewFile;
|
|
5
|
+
start(onNewFile: (filePath: string) => void): void;
|
|
6
|
+
private setupListeners;
|
|
7
|
+
reset(): void;
|
|
8
|
+
close(): void;
|
|
9
|
+
}
|
|
10
|
+
declare const smartFsWatcher: SmartFSWather;
|
|
11
|
+
export default smartFsWatcher;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { ZodTypeAny } from "zod";
|
|
2
|
+
import { AuthConfigs } from "../types/auth";
|
|
3
|
+
import { ArkosConfig } from "../exports";
|
|
4
|
+
type AppModuleComponent = Awaited<ReturnType<typeof importModuleComponents>>;
|
|
5
|
+
export declare function setModuleComponents(modelName: string, modules: AppModuleComponent): any;
|
|
6
|
+
export declare function getModuleComponents(modelName: string): importModuleComponentsReturnType;
|
|
7
|
+
export type ValidationFileMappingKey = keyof ReturnType<typeof getFileModuleComponentsFileStructure>["dtos"];
|
|
8
|
+
export declare function getFileModuleComponentsFileStructure(modelName: string): {
|
|
9
|
+
core: {
|
|
10
|
+
hooks: string;
|
|
11
|
+
interceptors: string;
|
|
12
|
+
authConfigs: string;
|
|
13
|
+
authConfigsNew: string;
|
|
14
|
+
prismaQueryOptions: string;
|
|
15
|
+
prismaQueryOptionsNew: string;
|
|
16
|
+
router: string;
|
|
17
|
+
};
|
|
18
|
+
dtos: {
|
|
19
|
+
login: string;
|
|
20
|
+
signup: string;
|
|
21
|
+
getMe: string;
|
|
22
|
+
updateMe: string;
|
|
23
|
+
updatePassword: string;
|
|
24
|
+
model?: undefined;
|
|
25
|
+
create?: undefined;
|
|
26
|
+
createOne?: undefined;
|
|
27
|
+
createMany?: undefined;
|
|
28
|
+
update?: undefined;
|
|
29
|
+
updateOne?: undefined;
|
|
30
|
+
updateMany?: undefined;
|
|
31
|
+
query?: undefined;
|
|
32
|
+
findOne?: undefined;
|
|
33
|
+
findMany?: undefined;
|
|
34
|
+
} | {
|
|
35
|
+
model: string;
|
|
36
|
+
create: string;
|
|
37
|
+
createOne: string;
|
|
38
|
+
createMany: string;
|
|
39
|
+
update: string;
|
|
40
|
+
updateOne: string;
|
|
41
|
+
updateMany: string;
|
|
42
|
+
query: string;
|
|
43
|
+
findOne: string;
|
|
44
|
+
findMany: string;
|
|
45
|
+
login?: undefined;
|
|
46
|
+
signup?: undefined;
|
|
47
|
+
getMe?: undefined;
|
|
48
|
+
updateMe?: undefined;
|
|
49
|
+
updatePassword?: undefined;
|
|
50
|
+
};
|
|
51
|
+
schemas: {
|
|
52
|
+
login: string;
|
|
53
|
+
signup: string;
|
|
54
|
+
getMe: string;
|
|
55
|
+
updateMe: string;
|
|
56
|
+
updatePassword: string;
|
|
57
|
+
model?: undefined;
|
|
58
|
+
create?: undefined;
|
|
59
|
+
createOne?: undefined;
|
|
60
|
+
createMany?: undefined;
|
|
61
|
+
update?: undefined;
|
|
62
|
+
updateOne?: undefined;
|
|
63
|
+
updateMany?: undefined;
|
|
64
|
+
query?: undefined;
|
|
65
|
+
findOne?: undefined;
|
|
66
|
+
findMany?: undefined;
|
|
67
|
+
} | {
|
|
68
|
+
model: string;
|
|
69
|
+
create: string;
|
|
70
|
+
createOne: string;
|
|
71
|
+
createMany: string;
|
|
72
|
+
update: string;
|
|
73
|
+
updateOne: string;
|
|
74
|
+
updateMany: string;
|
|
75
|
+
query: string;
|
|
76
|
+
findOne: string;
|
|
77
|
+
findMany: string;
|
|
78
|
+
login?: undefined;
|
|
79
|
+
signup?: undefined;
|
|
80
|
+
getMe?: undefined;
|
|
81
|
+
updateMe?: undefined;
|
|
82
|
+
updatePassword?: undefined;
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
export declare function isClass(value: any): boolean;
|
|
86
|
+
export declare function isZodSchema(value: any): value is ZodTypeAny;
|
|
87
|
+
export declare function processSubdir(modelName: string, type: "dtos" | "schemas"): Promise<Record<string, any>>;
|
|
88
|
+
type importModuleComponentsReturnType = {
|
|
89
|
+
hooks?: any;
|
|
90
|
+
interceptors?: any;
|
|
91
|
+
authConfigs?: AuthConfigs;
|
|
92
|
+
authConfigsNew?: AuthConfigs;
|
|
93
|
+
prismaQueryOptions?: any;
|
|
94
|
+
prismaQueryOptionsNew?: any;
|
|
95
|
+
router?: any;
|
|
96
|
+
dtos?: Record<string, any>;
|
|
97
|
+
schemas?: Record<string, any>;
|
|
98
|
+
};
|
|
99
|
+
export declare function validateNamingConventions(key: string, fileName: string, result: importModuleComponentsReturnType): void;
|
|
100
|
+
export declare function assignModuleToResult(appModule: string, key: string, module: any, result: importModuleComponentsReturnType, arkosConfig: ArkosConfig): void;
|
|
101
|
+
export declare function importModuleComponents(modelName: string, arkosConfig: ArkosConfig, moduleDirExists?: boolean): Promise<importModuleComponentsReturnType>;
|
|
102
|
+
export declare const appModules: string[];
|
|
103
|
+
export declare function loadAllModuleComponents(arkosConfig: ArkosConfig): Promise<void>;
|
|
104
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ArkosConfig } from "../../exports";
|
|
2
|
+
declare class PortAndHostAllocator {
|
|
3
|
+
private host;
|
|
4
|
+
private port;
|
|
5
|
+
private prevWarnings;
|
|
6
|
+
getCorrectHostAndPortToUse(env: Record<string, any>, config?: ArkosConfig): {
|
|
7
|
+
port: string;
|
|
8
|
+
host: string;
|
|
9
|
+
};
|
|
10
|
+
getHostAndAvailablePort(env: Record<string, any>, config?: ArkosConfig & {
|
|
11
|
+
logWarning?: boolean;
|
|
12
|
+
caller?: string;
|
|
13
|
+
}): Promise<{
|
|
14
|
+
port: string;
|
|
15
|
+
host: string;
|
|
16
|
+
}>;
|
|
17
|
+
private isPortAvailable;
|
|
18
|
+
logWarnings(): void;
|
|
19
|
+
}
|
|
20
|
+
declare const portAndHostAllocator: PortAndHostAllocator;
|
|
21
|
+
export default portAndHostAllocator;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ArkosConfig, RouterConfig } from "../../exports";
|
|
2
|
+
export declare function applyStrictRoutingRules<T extends string>(appModule: T, arkosConfig: ArkosConfig, moduleConfig?: RouterConfig<T>): RouterConfig<T>;
|
|
3
|
+
export declare function pathExists(path: string): Promise<boolean>;
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
export declare const statAsync: typeof fs.stat.__promisify__;
|
|
3
|
-
export declare const accessAsync: typeof fs.access.__promisify__;
|
|
4
|
-
export declare const mkdirAsync: typeof fs.mkdir.__promisify__;
|
|
5
1
|
export declare const crd: () => string;
|
|
6
2
|
export declare function fullCleanCwd(path: string): string;
|
|
7
3
|
export declare let userFileExtension: "ts" | "js" | undefined;
|
|
@@ -3,4 +3,5 @@ export declare function isEsm(): boolean;
|
|
|
3
3
|
export declare function importModule(modulePath: string, options?: {
|
|
4
4
|
fixExtension: boolean;
|
|
5
5
|
}): Promise<any>;
|
|
6
|
+
export declare function importEsmPreventingTsTransformation(path: string): Promise<any>;
|
|
6
7
|
export declare function detectPackageManagerFromUserAgent(): string;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
export declare let prismaInstance: any;
|
|
2
2
|
export declare function loadPrismaModule(): Promise<any>;
|
|
3
3
|
export declare function getPrismaInstance(): any;
|
|
4
|
-
export declare const checkDatabaseConnection: (req: import("../../types").ArkosRequest, res: import("../../types").ArkosResponse, next: import("../../types").ArkosNextFunction) => Promise<void>;
|
|
@@ -1,2 +1,6 @@
|
|
|
1
|
-
export declare const safeCatchAsync: (middleware: any
|
|
2
|
-
|
|
1
|
+
export declare const safeCatchAsync: (middleware: any, options?: {
|
|
2
|
+
type: "error" | "normal";
|
|
3
|
+
}) => any;
|
|
4
|
+
export declare const processMiddleware: (middleware: any, options?: {
|
|
5
|
+
type: "error" | "normal";
|
|
6
|
+
}) => any[];
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ArkosConfig } from "../../exports";
|
|
2
|
+
import { ValidationFileMappingKey } from "../dynamic-loader";
|
|
3
|
+
import { JsonSchema } from "./types";
|
|
4
|
+
export interface SchemaGenerationConfig {
|
|
5
|
+
modelName: string;
|
|
6
|
+
arkosConfig: ArkosConfig;
|
|
7
|
+
schemasToGenerate?: ValidationFileMappingKey[];
|
|
8
|
+
}
|
|
9
|
+
export interface GeneratedSchemas {
|
|
10
|
+
[key: string]: JsonSchema;
|
|
11
|
+
}
|
|
12
|
+
export declare class PrismaJsonSchemaGenerator {
|
|
13
|
+
schema: import("./types").PrismaSchema;
|
|
14
|
+
generateModelSchemas(config: SchemaGenerationConfig): Promise<GeneratedSchemas>;
|
|
15
|
+
private generateAuthSchemas;
|
|
16
|
+
private generateCrudSchemas;
|
|
17
|
+
private generateCreateSchema;
|
|
18
|
+
private generateUpdateSchema;
|
|
19
|
+
private generateResponseSchema;
|
|
20
|
+
private generateNestedRelationSchema;
|
|
21
|
+
private generateLoginSchema;
|
|
22
|
+
private generateSignupSchema;
|
|
23
|
+
private generateUpdateMeSchema;
|
|
24
|
+
private generateUpdatePasswordSchema;
|
|
25
|
+
private resolvePrismaQueryOptions;
|
|
26
|
+
private getGeneralOptionsForAction;
|
|
27
|
+
private isEndpointDisabled;
|
|
28
|
+
private isModelRelation;
|
|
29
|
+
private convertFieldToJsonSchema;
|
|
30
|
+
private mapPrismaTypeToJsonSchema;
|
|
31
|
+
private isEnum;
|
|
32
|
+
}
|
|
33
|
+
declare const prismaJsonSchemaGenerator: PrismaJsonSchemaGenerator;
|
|
34
|
+
export default prismaJsonSchemaGenerator;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { PrismaSchema, PrismaModel, PrismaEnum, PrismaField } from "./types";
|
|
2
|
+
export declare class PrismaSchemaParser {
|
|
3
|
+
enums: PrismaEnum[];
|
|
4
|
+
models: PrismaModel[];
|
|
5
|
+
prismaSchemasContent: string;
|
|
6
|
+
parsed: boolean;
|
|
7
|
+
constructor();
|
|
8
|
+
parse({ override }?: {
|
|
9
|
+
override: boolean;
|
|
10
|
+
}): PrismaSchema;
|
|
11
|
+
private extractEnums;
|
|
12
|
+
private parseEnumBlock;
|
|
13
|
+
private extractModels;
|
|
14
|
+
private extractModelBlocks;
|
|
15
|
+
private parseModelBlock;
|
|
16
|
+
private parseFields;
|
|
17
|
+
private parseFieldLine;
|
|
18
|
+
private parseDefaultValue;
|
|
19
|
+
getPrismaSchemasContent(): string;
|
|
20
|
+
private getAllPrismaFiles;
|
|
21
|
+
isEnum(typeName: string): boolean;
|
|
22
|
+
isModel(typeName: string): boolean;
|
|
23
|
+
getModelUniqueFields(modelName: string): PrismaField[] | undefined;
|
|
24
|
+
getModelRelations(modelName: string): PrismaField[] | undefined;
|
|
25
|
+
getModelsAsArrayOfStrings(): string[];
|
|
26
|
+
}
|
|
27
|
+
declare const prismaSchemaParser: PrismaSchemaParser;
|
|
28
|
+
export default prismaSchemaParser;
|