@warlock.js/core 4.0.174 → 4.1.2
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 +5 -1
- package/esm/_virtual/_rolldown/runtime.mjs +7 -0
- package/esm/application/app.d.mts +16 -0
- package/esm/application/app.d.mts.map +1 -0
- package/esm/application/app.mjs +36 -0
- package/esm/application/app.mjs.map +1 -0
- package/esm/application/application-config-types.d.mts +30 -0
- package/esm/application/application-config-types.d.mts.map +1 -0
- package/esm/application/application.d.mts +72 -0
- package/esm/application/application.d.mts.map +1 -0
- package/esm/application/application.mjs +98 -0
- package/esm/application/application.mjs.map +1 -0
- package/esm/application/index.d.mts +3 -0
- package/esm/application/index.mjs +4 -0
- package/esm/benchmark/benchmark-snapshots.d.mts +51 -0
- package/esm/benchmark/benchmark-snapshots.d.mts.map +1 -0
- package/esm/benchmark/benchmark-snapshots.mjs +70 -0
- package/esm/benchmark/benchmark-snapshots.mjs.map +1 -0
- package/esm/benchmark/benchmark.d.mts +29 -0
- package/esm/benchmark/benchmark.d.mts.map +1 -0
- package/esm/benchmark/benchmark.mjs +101 -0
- package/esm/benchmark/benchmark.mjs.map +1 -0
- package/esm/benchmark/channels/console.channel.d.mts +18 -0
- package/esm/benchmark/channels/console.channel.d.mts.map +1 -0
- package/esm/benchmark/channels/console.channel.mjs +32 -0
- package/esm/benchmark/channels/console.channel.mjs.map +1 -0
- package/esm/benchmark/channels/noop.channel.d.mts +9 -0
- package/esm/benchmark/channels/noop.channel.d.mts.map +1 -0
- package/esm/benchmark/channels/noop.channel.mjs +8 -0
- package/esm/benchmark/channels/noop.channel.mjs.map +1 -0
- package/esm/benchmark/index.mjs +7 -0
- package/esm/benchmark/profiler.d.mts +67 -0
- package/esm/benchmark/profiler.d.mts.map +1 -0
- package/esm/benchmark/profiler.mjs +142 -0
- package/esm/benchmark/profiler.mjs.map +1 -0
- package/esm/benchmark/types.d.mts +164 -0
- package/esm/benchmark/types.d.mts.map +1 -0
- package/esm/bootstrap/setup.d.mts +5 -0
- package/esm/bootstrap/setup.d.mts.map +1 -0
- package/esm/bootstrap/setup.mjs +20 -0
- package/esm/bootstrap/setup.mjs.map +1 -0
- package/esm/bootstrap.d.mts +5 -0
- package/esm/bootstrap.d.mts.map +1 -0
- package/esm/bootstrap.mjs +14 -0
- package/esm/bootstrap.mjs.map +1 -0
- package/esm/cache/database-cache-driver.d.mts +60 -0
- package/esm/cache/database-cache-driver.d.mts.map +1 -0
- package/esm/cache/database-cache-driver.mjs +98 -0
- package/esm/cache/database-cache-driver.mjs.map +1 -0
- package/esm/cache/index.d.mts +1 -0
- package/esm/cache/index.mjs +9 -0
- package/esm/cache/index.mjs.map +1 -0
- package/esm/cli/cli-command.d.mts +119 -0
- package/esm/cli/cli-command.d.mts.map +1 -0
- package/esm/cli/cli-command.mjs +159 -0
- package/esm/cli/cli-command.mjs.map +1 -0
- package/esm/cli/cli-commands.manager.mjs +285 -0
- package/esm/cli/cli-commands.manager.mjs.map +1 -0
- package/esm/cli/cli-commands.utils.mjs +187 -0
- package/esm/cli/cli-commands.utils.mjs.map +1 -0
- package/esm/cli/commands/add.command.mjs +27 -0
- package/esm/cli/commands/add.command.mjs.map +1 -0
- package/esm/cli/commands/build.command.mjs +14 -0
- package/esm/cli/commands/build.command.mjs.map +1 -0
- package/esm/cli/commands/create-database.command.mjs +24 -0
- package/esm/cli/commands/create-database.command.mjs.map +1 -0
- package/esm/cli/commands/dev-server.command.mjs +48 -0
- package/esm/cli/commands/dev-server.command.mjs.map +1 -0
- package/esm/cli/commands/drop-tables.command.mjs +23 -0
- package/esm/cli/commands/drop-tables.command.mjs.map +1 -0
- package/esm/cli/commands/generate/generate.command.mjs +201 -0
- package/esm/cli/commands/generate/generate.command.mjs.map +1 -0
- package/esm/cli/commands/generate/generators/column-dsl-parser.mjs +49 -0
- package/esm/cli/commands/generate/generators/column-dsl-parser.mjs.map +1 -0
- package/esm/cli/commands/generate/generators/controller.generator.mjs +48 -0
- package/esm/cli/commands/generate/generators/controller.generator.mjs.map +1 -0
- package/esm/cli/commands/generate/generators/migration.generator.mjs +81 -0
- package/esm/cli/commands/generate/generators/migration.generator.mjs.map +1 -0
- package/esm/cli/commands/generate/generators/model.generator.mjs +60 -0
- package/esm/cli/commands/generate/generators/model.generator.mjs.map +1 -0
- package/esm/cli/commands/generate/generators/module.generator.mjs +113 -0
- package/esm/cli/commands/generate/generators/module.generator.mjs.map +1 -0
- package/esm/cli/commands/generate/generators/repository.generator.mjs +42 -0
- package/esm/cli/commands/generate/generators/repository.generator.mjs.map +1 -0
- package/esm/cli/commands/generate/generators/resource.generator.mjs +42 -0
- package/esm/cli/commands/generate/generators/resource.generator.mjs.map +1 -0
- package/esm/cli/commands/generate/generators/service.generator.mjs +42 -0
- package/esm/cli/commands/generate/generators/service.generator.mjs.map +1 -0
- package/esm/cli/commands/generate/templates/stubs.mjs +514 -0
- package/esm/cli/commands/generate/templates/stubs.mjs.map +1 -0
- package/esm/cli/commands/generate/utils/name-parser.mjs +69 -0
- package/esm/cli/commands/generate/utils/name-parser.mjs.map +1 -0
- package/esm/cli/commands/generate/utils/path-resolver.mjs +56 -0
- package/esm/cli/commands/generate/utils/path-resolver.mjs.map +1 -0
- package/esm/cli/commands/generate/utils/prompt.mjs +28 -0
- package/esm/cli/commands/generate/utils/prompt.mjs.map +1 -0
- package/esm/cli/commands/generate/utils/writer.mjs +60 -0
- package/esm/cli/commands/generate/utils/writer.mjs.map +1 -0
- package/esm/cli/commands/migrate.command.mjs +60 -0
- package/esm/cli/commands/migrate.command.mjs.map +1 -0
- package/esm/cli/commands/seed.command.mjs +41 -0
- package/esm/cli/commands/seed.command.mjs.map +1 -0
- package/esm/cli/commands/start-production.command.mjs +50 -0
- package/esm/cli/commands/start-production.command.mjs.map +1 -0
- package/esm/cli/commands/storage-put.action.mjs +75 -0
- package/esm/cli/commands/storage-put.action.mjs.map +1 -0
- package/esm/cli/commands/storage-put.command.mjs +46 -0
- package/esm/cli/commands/storage-put.command.mjs.map +1 -0
- package/esm/cli/commands/typings-generator.command.mjs +38 -0
- package/esm/cli/commands/typings-generator.command.mjs.map +1 -0
- package/esm/cli/commands-loader.mjs +50 -0
- package/esm/cli/commands-loader.mjs.map +1 -0
- package/esm/cli/framework-cli-commands.mjs +37 -0
- package/esm/cli/framework-cli-commands.mjs.map +1 -0
- package/esm/cli/index.d.mts +2 -0
- package/esm/cli/parse-cli-args.mjs +62 -0
- package/esm/cli/parse-cli-args.mjs.map +1 -0
- package/esm/cli/start.d.mts +1 -0
- package/esm/cli/start.mjs +8 -0
- package/esm/cli/start.mjs.map +1 -0
- package/esm/cli/string-similarity.mjs +56 -0
- package/esm/cli/string-similarity.mjs.map +1 -0
- package/esm/cli/types.d.mts +216 -0
- package/esm/cli/types.d.mts.map +1 -0
- package/esm/config/config-getter.d.mts +38 -0
- package/esm/config/config-getter.d.mts.map +1 -0
- package/esm/config/config-getter.mjs +28 -0
- package/esm/config/config-getter.mjs.map +1 -0
- package/esm/config/config-handlers.d.mts +11 -0
- package/esm/config/config-handlers.d.mts.map +1 -0
- package/esm/config/config-handlers.mjs +23 -0
- package/esm/config/config-handlers.mjs.map +1 -0
- package/esm/config/config-loader.d.mts +9 -0
- package/esm/config/config-loader.d.mts.map +1 -0
- package/esm/config/config-loader.mjs +48 -0
- package/esm/config/config-loader.mjs.map +1 -0
- package/esm/config/config-manager.mjs +28 -0
- package/esm/config/config-manager.mjs.map +1 -0
- package/esm/config/config-special-handlers.d.mts +21 -0
- package/esm/config/config-special-handlers.d.mts.map +1 -0
- package/esm/config/config-special-handlers.mjs +25 -0
- package/esm/config/config-special-handlers.mjs.map +1 -0
- package/esm/config/index.mjs +5 -0
- package/esm/config/load-config-files.mjs +24 -0
- package/esm/config/load-config-files.mjs.map +1 -0
- package/esm/config/types.d.mts +53 -0
- package/esm/config/types.d.mts.map +1 -0
- package/esm/connectors/base-connector.d.mts +63 -0
- package/esm/connectors/base-connector.d.mts.map +1 -0
- package/esm/connectors/base-connector.mjs +52 -0
- package/esm/connectors/base-connector.mjs.map +1 -0
- package/esm/connectors/cache-connector.d.mts +28 -0
- package/esm/connectors/cache-connector.d.mts.map +1 -0
- package/esm/connectors/cache-connector.mjs +40 -0
- package/esm/connectors/cache-connector.mjs.map +1 -0
- package/esm/connectors/connectors-manager.d.mts +56 -0
- package/esm/connectors/connectors-manager.d.mts.map +1 -0
- package/esm/connectors/connectors-manager.mjs +105 -0
- package/esm/connectors/connectors-manager.mjs.map +1 -0
- package/esm/connectors/database-connector.d.mts +28 -0
- package/esm/connectors/database-connector.d.mts.map +1 -0
- package/esm/connectors/database-connector.mjs +53 -0
- package/esm/connectors/database-connector.mjs.map +1 -0
- package/esm/connectors/herald-connector.d.mts +28 -0
- package/esm/connectors/herald-connector.d.mts.map +1 -0
- package/esm/connectors/herald-connector.mjs +56 -0
- package/esm/connectors/herald-connector.mjs.map +1 -0
- package/esm/connectors/http-connector.d.mts +55 -0
- package/esm/connectors/http-connector.d.mts.map +1 -0
- package/esm/connectors/http-connector.mjs +107 -0
- package/esm/connectors/http-connector.mjs.map +1 -0
- package/esm/connectors/index.d.mts +11 -0
- package/esm/connectors/index.mjs +13 -0
- package/esm/connectors/logger-connector.d.mts +28 -0
- package/esm/connectors/logger-connector.d.mts.map +1 -0
- package/esm/connectors/logger-connector.mjs +52 -0
- package/esm/connectors/logger-connector.mjs.map +1 -0
- package/esm/connectors/mail-connector.d.mts +28 -0
- package/esm/connectors/mail-connector.d.mts.map +1 -0
- package/esm/connectors/mail-connector.mjs +56 -0
- package/esm/connectors/mail-connector.mjs.map +1 -0
- package/esm/connectors/socket-connector.d.mts +36 -0
- package/esm/connectors/socket-connector.d.mts.map +1 -0
- package/esm/connectors/socket-connector.mjs +82 -0
- package/esm/connectors/socket-connector.mjs.map +1 -0
- package/esm/connectors/storage.connector.d.mts +28 -0
- package/esm/connectors/storage.connector.d.mts.map +1 -0
- package/esm/connectors/storage.connector.mjs +40 -0
- package/esm/connectors/storage.connector.mjs.map +1 -0
- package/esm/connectors/types.d.mts +81 -0
- package/esm/connectors/types.d.mts.map +1 -0
- package/esm/connectors/types.mjs +33 -0
- package/esm/connectors/types.mjs.map +1 -0
- package/esm/container/index.d.mts +41 -0
- package/esm/container/index.d.mts.map +1 -0
- package/esm/container/index.mjs +27 -0
- package/esm/container/index.mjs.map +1 -0
- package/esm/database/create-database-action.mjs +32 -0
- package/esm/database/create-database-action.mjs.map +1 -0
- package/esm/database/drop-tables-action.mjs +35 -0
- package/esm/database/drop-tables-action.mjs.map +1 -0
- package/esm/database/index.d.mts +4 -0
- package/esm/database/index.mjs +6 -0
- package/esm/database/migrate-action.mjs +99 -0
- package/esm/database/migrate-action.mjs.map +1 -0
- package/esm/database/models/database-log/database-log.d.mts +19 -0
- package/esm/database/models/database-log/database-log.d.mts.map +1 -0
- package/esm/database/models/database-log/database-log.mjs +23 -0
- package/esm/database/models/database-log/database-log.mjs.map +1 -0
- package/esm/database/models/database-log/index.d.mts +1 -0
- package/esm/database/models/database-log/index.mjs +3 -0
- package/esm/database/seed-command-action.mjs +74 -0
- package/esm/database/seed-command-action.mjs.map +1 -0
- package/esm/database/seeds/seeder.d.mts +44 -0
- package/esm/database/seeds/seeder.d.mts.map +1 -0
- package/esm/database/seeds/seeder.mjs +11 -0
- package/esm/database/seeds/seeder.mjs.map +1 -0
- package/esm/database/seeds/seeders.manager.mjs +129 -0
- package/esm/database/seeds/seeders.manager.mjs.map +1 -0
- package/esm/database/seeds/seeds-table-migration.mjs +31 -0
- package/esm/database/seeds/seeds-table-migration.mjs.map +1 -0
- package/esm/database/seeds/types.d.mts +16 -0
- package/esm/database/seeds/types.d.mts.map +1 -0
- package/esm/database/seeds/utils.mjs +6 -0
- package/esm/database/seeds/utils.mjs.map +1 -0
- package/esm/database/utils.d.mts +20 -0
- package/esm/database/utils.d.mts.map +1 -0
- package/esm/database/utils.mjs +37 -0
- package/esm/database/utils.mjs.map +1 -0
- package/esm/dev-server/create-worker.mjs +41 -0
- package/esm/dev-server/create-worker.mjs.map +1 -0
- package/esm/dev-server/dependency-graph.d.mts +134 -0
- package/esm/dev-server/dependency-graph.d.mts.map +1 -0
- package/esm/dev-server/dependency-graph.mjs +303 -0
- package/esm/dev-server/dependency-graph.mjs.map +1 -0
- package/esm/dev-server/dev-logger.mjs +110 -0
- package/esm/dev-server/dev-logger.mjs.map +1 -0
- package/esm/dev-server/development-server.mjs +115 -0
- package/esm/dev-server/development-server.mjs.map +1 -0
- package/esm/dev-server/events.mjs +9 -0
- package/esm/dev-server/events.mjs.map +1 -0
- package/esm/dev-server/file-event-handler.mjs +98 -0
- package/esm/dev-server/file-event-handler.mjs.map +1 -0
- package/esm/dev-server/file-manager.d.mts +77 -0
- package/esm/dev-server/file-manager.d.mts.map +1 -0
- package/esm/dev-server/file-manager.mjs +157 -0
- package/esm/dev-server/file-manager.mjs.map +1 -0
- package/esm/dev-server/file-operations.d.mts +43 -0
- package/esm/dev-server/file-operations.d.mts.map +1 -0
- package/esm/dev-server/file-operations.mjs +113 -0
- package/esm/dev-server/file-operations.mjs.map +1 -0
- package/esm/dev-server/files-orchestrator.d.mts +89 -0
- package/esm/dev-server/files-orchestrator.d.mts.map +1 -0
- package/esm/dev-server/files-orchestrator.mjs +201 -0
- package/esm/dev-server/files-orchestrator.mjs.map +1 -0
- package/esm/dev-server/files-watcher.d.mts +69 -0
- package/esm/dev-server/files-watcher.d.mts.map +1 -0
- package/esm/dev-server/files-watcher.mjs +129 -0
- package/esm/dev-server/files-watcher.mjs.map +1 -0
- package/esm/dev-server/flags.mjs +9 -0
- package/esm/dev-server/flags.mjs.map +1 -0
- package/esm/dev-server/health-checker/checkers/base-health-checker.d.mts +55 -0
- package/esm/dev-server/health-checker/checkers/base-health-checker.d.mts.map +1 -0
- package/esm/dev-server/health-checker/checkers/base-health-checker.mjs +65 -0
- package/esm/dev-server/health-checker/checkers/base-health-checker.mjs.map +1 -0
- package/esm/dev-server/health-checker/checkers/eslint-health-checker.d.mts +44 -0
- package/esm/dev-server/health-checker/checkers/eslint-health-checker.d.mts.map +1 -0
- package/esm/dev-server/health-checker/checkers/eslint-health-checker.mjs +155 -0
- package/esm/dev-server/health-checker/checkers/eslint-health-checker.mjs.map +1 -0
- package/esm/dev-server/health-checker/checkers/typescript-health-checker.d.mts +60 -0
- package/esm/dev-server/health-checker/checkers/typescript-health-checker.d.mts.map +1 -0
- package/esm/dev-server/health-checker/checkers/typescript-health-checker.mjs +192 -0
- package/esm/dev-server/health-checker/checkers/typescript-health-checker.mjs.map +1 -0
- package/esm/dev-server/health-checker/file-health-checker.contract.d.mts +63 -0
- package/esm/dev-server/health-checker/file-health-checker.contract.d.mts.map +1 -0
- package/esm/dev-server/health-checker/file-health-result.d.mts +70 -0
- package/esm/dev-server/health-checker/file-health-result.d.mts.map +1 -0
- package/esm/dev-server/health-checker/file-health-result.mjs +41 -0
- package/esm/dev-server/health-checker/file-health-result.mjs.map +1 -0
- package/esm/dev-server/health-checker/files-healthcare.manager.d.mts +119 -0
- package/esm/dev-server/health-checker/files-healthcare.manager.d.mts.map +1 -0
- package/esm/dev-server/health-checker/files-healthcare.manager.mjs +346 -0
- package/esm/dev-server/health-checker/files-healthcare.manager.mjs.map +1 -0
- package/esm/dev-server/health-checker/index.mjs +7 -0
- package/esm/dev-server/health-checker/workers/eslint-health.worker.mjs +188 -0
- package/esm/dev-server/health-checker/workers/eslint-health.worker.mjs.map +1 -0
- package/esm/dev-server/health-checker/workers/ts-health.worker.mjs +212 -0
- package/esm/dev-server/health-checker/workers/ts-health.worker.mjs.map +1 -0
- package/esm/dev-server/layer-executor.mjs +114 -0
- package/esm/dev-server/layer-executor.mjs.map +1 -0
- package/esm/dev-server/loader/build-transpile-init.mjs +49 -0
- package/esm/dev-server/loader/build-transpile-init.mjs.map +1 -0
- package/esm/dev-server/loader/register-loader.mjs +68 -0
- package/esm/dev-server/loader/register-loader.mjs.map +1 -0
- package/esm/dev-server/loader/transpile-cache.mjs +57 -0
- package/esm/dev-server/loader/transpile-cache.mjs.map +1 -0
- package/esm/dev-server/manifest-manager.d.mts +71 -0
- package/esm/dev-server/manifest-manager.d.mts.map +1 -0
- package/esm/dev-server/manifest-manager.mjs +107 -0
- package/esm/dev-server/manifest-manager.mjs.map +1 -0
- package/esm/dev-server/module-loader.d.mts +51 -0
- package/esm/dev-server/module-loader.d.mts.map +1 -0
- package/esm/dev-server/module-loader.mjs +111 -0
- package/esm/dev-server/module-loader.mjs.map +1 -0
- package/esm/dev-server/package-json-manager.mjs +26 -0
- package/esm/dev-server/package-json-manager.mjs.map +1 -0
- package/esm/dev-server/parse-imports.mjs +348 -0
- package/esm/dev-server/parse-imports.mjs.map +1 -0
- package/esm/dev-server/path.mjs +63 -0
- package/esm/dev-server/path.mjs.map +1 -0
- package/esm/dev-server/special-files-collector.d.mts +23 -0
- package/esm/dev-server/special-files-collector.d.mts.map +1 -0
- package/esm/dev-server/special-files-collector.mjs +67 -0
- package/esm/dev-server/special-files-collector.mjs.map +1 -0
- package/esm/dev-server/start-development-server.mjs +63 -0
- package/esm/dev-server/start-development-server.mjs.map +1 -0
- package/esm/dev-server/tsconfig-manager.mjs +81 -0
- package/esm/dev-server/tsconfig-manager.mjs.map +1 -0
- package/esm/dev-server/type-generator.mjs +453 -0
- package/esm/dev-server/type-generator.mjs.map +1 -0
- package/esm/dev-server/types.d.mts +31 -0
- package/esm/dev-server/types.d.mts.map +1 -0
- package/esm/dev-server/utils.mjs +33 -0
- package/esm/dev-server/utils.mjs.map +1 -0
- package/esm/encryption/encrypt.d.mts +26 -0
- package/esm/encryption/encrypt.d.mts.map +1 -0
- package/esm/encryption/encrypt.mjs +81 -0
- package/esm/encryption/encrypt.mjs.map +1 -0
- package/esm/encryption/hash.d.mts +20 -0
- package/esm/encryption/hash.d.mts.map +1 -0
- package/esm/encryption/hash.mjs +31 -0
- package/esm/encryption/hash.mjs.map +1 -0
- package/esm/encryption/index.mjs +5 -0
- package/esm/encryption/password.d.mts +26 -0
- package/esm/encryption/password.d.mts.map +1 -0
- package/esm/encryption/password.mjs +73 -0
- package/esm/encryption/password.mjs.map +1 -0
- package/esm/encryption/types.d.mts +54 -0
- package/esm/encryption/types.d.mts.map +1 -0
- package/esm/generations/add-command.action.mjs +381 -0
- package/esm/generations/add-command.action.mjs.map +1 -0
- package/esm/generations/stubs.mjs +103 -0
- package/esm/generations/stubs.mjs.map +1 -0
- package/esm/http/config.d.mts +14 -0
- package/esm/http/config.d.mts.map +1 -0
- package/esm/http/config.mjs +26 -0
- package/esm/http/config.mjs.map +1 -0
- package/esm/http/context/request-context.d.mts +50 -0
- package/esm/http/context/request-context.d.mts.map +1 -0
- package/esm/http/context/request-context.mjs +59 -0
- package/esm/http/context/request-context.mjs.map +1 -0
- package/esm/http/createHttpApplication.d.mts +6 -0
- package/esm/http/createHttpApplication.d.mts.map +1 -0
- package/esm/http/createHttpApplication.mjs +38 -0
- package/esm/http/createHttpApplication.mjs.map +1 -0
- package/esm/http/database/RequestLog.d.mts +19 -0
- package/esm/http/database/RequestLog.d.mts.map +1 -0
- package/esm/http/database/RequestLog.mjs +32 -0
- package/esm/http/database/RequestLog.mjs.map +1 -0
- package/esm/http/error-codes.d.mts +44 -0
- package/esm/http/error-codes.d.mts.map +1 -0
- package/esm/http/error-codes.mjs +46 -0
- package/esm/http/error-codes.mjs.map +1 -0
- package/esm/http/errors/errors.d.mts +42 -0
- package/esm/http/errors/errors.d.mts.map +1 -0
- package/esm/http/errors/errors.mjs +70 -0
- package/esm/http/errors/errors.mjs.map +1 -0
- package/esm/http/events.d.mts +8 -0
- package/esm/http/events.d.mts.map +1 -0
- package/esm/http/events.mjs +29 -0
- package/esm/http/events.mjs.map +1 -0
- package/esm/http/index.d.mts +27 -0
- package/esm/http/index.mjs +22 -0
- package/esm/http/middleware/cache-response-middleware.d.mts +38 -0
- package/esm/http/middleware/cache-response-middleware.d.mts.map +1 -0
- package/esm/http/middleware/cache-response-middleware.mjs +39 -0
- package/esm/http/middleware/cache-response-middleware.mjs.map +1 -0
- package/esm/http/middleware/concurrency-limit.middleware.d.mts +53 -0
- package/esm/http/middleware/concurrency-limit.middleware.d.mts.map +1 -0
- package/esm/http/middleware/concurrency-limit.middleware.mjs +67 -0
- package/esm/http/middleware/concurrency-limit.middleware.mjs.map +1 -0
- package/esm/http/middleware/idempotency.middleware.d.mts +61 -0
- package/esm/http/middleware/idempotency.middleware.d.mts.map +1 -0
- package/esm/http/middleware/idempotency.middleware.mjs +88 -0
- package/esm/http/middleware/idempotency.middleware.mjs.map +1 -0
- package/esm/http/middleware/index.d.mts +11 -0
- package/esm/http/middleware/index.mjs +7 -0
- package/esm/http/middleware/inject-request-context.d.mts +25 -0
- package/esm/http/middleware/inject-request-context.d.mts.map +1 -0
- package/esm/http/middleware/inject-request-context.mjs +118 -0
- package/esm/http/middleware/inject-request-context.mjs.map +1 -0
- package/esm/http/middleware/ip-filter.middleware.d.mts +52 -0
- package/esm/http/middleware/ip-filter.middleware.d.mts.map +1 -0
- package/esm/http/middleware/ip-filter.middleware.mjs +51 -0
- package/esm/http/middleware/ip-filter.middleware.mjs.map +1 -0
- package/esm/http/middleware/maintenance.middleware.d.mts +49 -0
- package/esm/http/middleware/maintenance.middleware.d.mts.map +1 -0
- package/esm/http/middleware/maintenance.middleware.mjs +48 -0
- package/esm/http/middleware/maintenance.middleware.mjs.map +1 -0
- package/esm/http/middleware/max-body-size.middleware.d.mts +26 -0
- package/esm/http/middleware/max-body-size.middleware.d.mts.map +1 -0
- package/esm/http/middleware/max-body-size.middleware.mjs +46 -0
- package/esm/http/middleware/max-body-size.middleware.mjs.map +1 -0
- package/esm/http/middleware/middleware-list.d.mts +44 -0
- package/esm/http/middleware/middleware-list.d.mts.map +1 -0
- package/esm/http/middleware/middleware-list.mjs +45 -0
- package/esm/http/middleware/middleware-list.mjs.map +1 -0
- package/esm/http/middleware/rate-limit.middleware.d.mts +51 -0
- package/esm/http/middleware/rate-limit.middleware.d.mts.map +1 -0
- package/esm/http/middleware/rate-limit.middleware.mjs +70 -0
- package/esm/http/middleware/rate-limit.middleware.mjs.map +1 -0
- package/esm/http/middleware/utils/cidr-match.d.mts +12 -0
- package/esm/http/middleware/utils/cidr-match.d.mts.map +1 -0
- package/esm/http/middleware/utils/cidr-match.mjs +51 -0
- package/esm/http/middleware/utils/cidr-match.mjs.map +1 -0
- package/esm/http/middleware/utils/idempotency-key.d.mts +33 -0
- package/esm/http/middleware/utils/idempotency-key.d.mts.map +1 -0
- package/esm/http/middleware/utils/idempotency-key.mjs +51 -0
- package/esm/http/middleware/utils/idempotency-key.mjs.map +1 -0
- package/esm/http/middleware/utils/index.d.mts +3 -0
- package/esm/http/middleware/utils/parse-size.d.mts +5 -0
- package/esm/http/middleware/utils/parse-size.d.mts.map +1 -0
- package/esm/http/middleware/utils/parse-size.mjs +32 -0
- package/esm/http/middleware/utils/parse-size.mjs.map +1 -0
- package/esm/http/plugins.d.mts +7 -0
- package/esm/http/plugins.d.mts.map +1 -0
- package/esm/http/plugins.mjs +37 -0
- package/esm/http/plugins.mjs.map +1 -0
- package/esm/http/request-controller.d.mts +15 -0
- package/esm/http/request-controller.d.mts.map +1 -0
- package/esm/http/request-controller.mjs +11 -0
- package/esm/http/request-controller.mjs.map +1 -0
- package/esm/http/request.d.mts +458 -0
- package/esm/http/request.d.mts.map +1 -0
- package/esm/http/request.mjs +714 -0
- package/esm/http/request.mjs.map +1 -0
- package/esm/http/response.d.mts +452 -0
- package/esm/http/response.d.mts.map +1 -0
- package/esm/http/response.mjs +851 -0
- package/esm/http/response.mjs.map +1 -0
- package/esm/http/server.d.mts +12 -0
- package/esm/http/server.d.mts.map +1 -0
- package/esm/http/server.mjs +28 -0
- package/esm/http/server.mjs.map +1 -0
- package/esm/http/types.d.mts +326 -0
- package/esm/http/types.d.mts.map +1 -0
- package/esm/http/uploaded-file.d.mts +464 -0
- package/esm/http/uploaded-file.d.mts.map +1 -0
- package/esm/http/uploaded-file.mjs +579 -0
- package/esm/http/uploaded-file.mjs.map +1 -0
- package/esm/http/uploads-config.d.mts +30 -0
- package/esm/http/uploads-config.d.mts.map +1 -0
- package/esm/http/uploads-config.mjs +42 -0
- package/esm/http/uploads-config.mjs.map +1 -0
- package/esm/http/uploads-types.d.mts +240 -0
- package/esm/http/uploads-types.d.mts.map +1 -0
- package/esm/image/image.d.mts +389 -0
- package/esm/image/image.d.mts.map +1 -0
- package/esm/image/image.mjs +529 -0
- package/esm/image/image.mjs.map +1 -0
- package/esm/image/index.d.mts +1 -0
- package/esm/image/index.mjs +3 -0
- package/esm/index.d.mts +145 -0
- package/esm/index.mjs +145 -0
- package/esm/logger/index.d.mts +2 -0
- package/esm/logger/index.mjs +3 -0
- package/esm/logger/logger.d.mts +7 -0
- package/esm/logger/logger.d.mts.map +1 -0
- package/esm/logger/logger.mjs +17 -0
- package/esm/logger/logger.mjs.map +1 -0
- package/esm/logger/types.d.mts +42 -0
- package/esm/logger/types.d.mts.map +1 -0
- package/esm/mail/config.d.mts +84 -0
- package/esm/mail/config.d.mts.map +1 -0
- package/esm/mail/config.mjs +143 -0
- package/esm/mail/config.mjs.map +1 -0
- package/esm/mail/events.d.mts +99 -0
- package/esm/mail/events.d.mts.map +1 -0
- package/esm/mail/events.mjs +129 -0
- package/esm/mail/events.mjs.map +1 -0
- package/esm/mail/index.d.mts +8 -0
- package/esm/mail/index.mjs +10 -0
- package/esm/mail/mail.d.mts +178 -0
- package/esm/mail/mail.d.mts.map +1 -0
- package/esm/mail/mail.mjs +289 -0
- package/esm/mail/mail.mjs.map +1 -0
- package/esm/mail/mailer-pool.d.mts +31 -0
- package/esm/mail/mailer-pool.d.mts.map +1 -0
- package/esm/mail/mailer-pool.mjs +190 -0
- package/esm/mail/mailer-pool.mjs.map +1 -0
- package/esm/mail/react-mail.d.mts +16 -0
- package/esm/mail/react-mail.d.mts.map +1 -0
- package/esm/mail/react-mail.mjs +39 -0
- package/esm/mail/react-mail.mjs.map +1 -0
- package/esm/mail/send-mail.d.mts +37 -0
- package/esm/mail/send-mail.d.mts.map +1 -0
- package/esm/mail/send-mail.mjs +264 -0
- package/esm/mail/send-mail.mjs.map +1 -0
- package/esm/mail/test-mailbox.d.mts +50 -0
- package/esm/mail/test-mailbox.d.mts.map +1 -0
- package/esm/mail/test-mailbox.mjs +79 -0
- package/esm/mail/test-mailbox.mjs.map +1 -0
- package/esm/mail/types.d.mts +267 -0
- package/esm/mail/types.d.mts.map +1 -0
- package/esm/mail/types.mjs +16 -0
- package/esm/mail/types.mjs.map +1 -0
- package/esm/manifest/manifest-manager.mjs +79 -0
- package/esm/manifest/manifest-manager.mjs.map +1 -0
- package/esm/production/build-app-production.mjs +14 -0
- package/esm/production/build-app-production.mjs.map +1 -0
- package/esm/production/esbuild-plugins.mjs +37 -0
- package/esm/production/esbuild-plugins.mjs.map +1 -0
- package/esm/production/production-builder.mjs +264 -0
- package/esm/production/production-builder.mjs.map +1 -0
- package/esm/production/resolve-build-config.mjs +28 -0
- package/esm/production/resolve-build-config.mjs.map +1 -0
- package/esm/react/index.d.mts +18 -0
- package/esm/react/index.d.mts.map +1 -0
- package/esm/react/index.mjs +58 -0
- package/esm/react/index.mjs.map +1 -0
- package/esm/repositories/adapters/cascade/cascade-adapter.d.mts +91 -0
- package/esm/repositories/adapters/cascade/cascade-adapter.d.mts.map +1 -0
- package/esm/repositories/adapters/cascade/cascade-adapter.mjs +147 -0
- package/esm/repositories/adapters/cascade/cascade-adapter.mjs.map +1 -0
- package/esm/repositories/adapters/cascade/cascade-query-builder.d.mts +146 -0
- package/esm/repositories/adapters/cascade/cascade-query-builder.d.mts.map +1 -0
- package/esm/repositories/adapters/cascade/cascade-query-builder.mjs +238 -0
- package/esm/repositories/adapters/cascade/cascade-query-builder.mjs.map +1 -0
- package/esm/repositories/adapters/cascade/filter-applicator.mjs +381 -0
- package/esm/repositories/adapters/cascade/filter-applicator.mjs.map +1 -0
- package/esm/repositories/adapters/cascade/index.d.mts +2 -0
- package/esm/repositories/adapters/cascade/index.mjs +4 -0
- package/esm/repositories/contracts/index.d.mts +3 -0
- package/esm/repositories/contracts/query-builder.contract.d.mts +324 -0
- package/esm/repositories/contracts/query-builder.contract.d.mts.map +1 -0
- package/esm/repositories/contracts/repository-adapter.contract.d.mts +187 -0
- package/esm/repositories/contracts/repository-adapter.contract.d.mts.map +1 -0
- package/esm/repositories/contracts/types.d.mts +332 -0
- package/esm/repositories/contracts/types.d.mts.map +1 -0
- package/esm/repositories/index.d.mts +6 -0
- package/esm/repositories/index.mjs +6 -0
- package/esm/repositories/repository.manager.d.mts +700 -0
- package/esm/repositories/repository.manager.d.mts.map +1 -0
- package/esm/repositories/repository.manager.mjs +927 -0
- package/esm/repositories/repository.manager.mjs.map +1 -0
- package/esm/resource/define-resource.d.mts +69 -0
- package/esm/resource/define-resource.d.mts.map +1 -0
- package/esm/resource/define-resource.mjs +63 -0
- package/esm/resource/define-resource.mjs.map +1 -0
- package/esm/resource/index.d.mts +5 -0
- package/esm/resource/index.mjs +6 -0
- package/esm/resource/register-resource.d.mts +25 -0
- package/esm/resource/register-resource.d.mts.map +1 -0
- package/esm/resource/register-resource.mjs +30 -0
- package/esm/resource/register-resource.mjs.map +1 -0
- package/esm/resource/resource-field-builder.d.mts +108 -0
- package/esm/resource/resource-field-builder.d.mts.map +1 -0
- package/esm/resource/resource-field-builder.mjs +187 -0
- package/esm/resource/resource-field-builder.mjs.map +1 -0
- package/esm/resource/resource.d.mts +221 -0
- package/esm/resource/resource.d.mts.map +1 -0
- package/esm/resource/resource.mjs +239 -0
- package/esm/resource/resource.mjs.map +1 -0
- package/esm/resource/types.d.mts +77 -0
- package/esm/resource/types.d.mts.map +1 -0
- package/esm/restful/index.d.mts +1 -0
- package/esm/restful/index.mjs +3 -0
- package/esm/restful/restful.d.mts +115 -0
- package/esm/restful/restful.d.mts.map +1 -0
- package/esm/restful/restful.mjs +212 -0
- package/esm/restful/restful.mjs.map +1 -0
- package/esm/router/index.d.mts +2 -0
- package/esm/router/index.mjs +3 -0
- package/esm/router/route-builder.d.mts +124 -0
- package/esm/router/route-builder.d.mts.map +1 -0
- package/esm/router/route-builder.mjs +182 -0
- package/esm/router/route-builder.mjs.map +1 -0
- package/esm/router/route-registry.mjs +61 -0
- package/esm/router/route-registry.mjs.map +1 -0
- package/esm/router/router.d.mts +192 -0
- package/esm/router/router.d.mts.map +1 -0
- package/esm/router/router.mjs +498 -0
- package/esm/router/router.mjs.map +1 -0
- package/esm/router/types.d.mts +260 -0
- package/esm/router/types.d.mts.map +1 -0
- package/esm/socket/index.d.mts +2 -0
- package/esm/socket/index.mjs +3 -0
- package/esm/socket/types.d.mts +19 -0
- package/esm/socket/types.d.mts.map +1 -0
- package/esm/socket/utils.d.mts +10 -0
- package/esm/socket/utils.d.mts.map +1 -0
- package/esm/socket/utils.mjs +14 -0
- package/esm/socket/utils.mjs.map +1 -0
- package/esm/storage/config.d.mts +19 -0
- package/esm/storage/config.d.mts.map +1 -0
- package/esm/storage/config.mjs +38 -0
- package/esm/storage/config.mjs.map +1 -0
- package/esm/storage/context/storage-driver-context.d.mts +72 -0
- package/esm/storage/context/storage-driver-context.d.mts.map +1 -0
- package/esm/storage/context/storage-driver-context.mjs +87 -0
- package/esm/storage/context/storage-driver-context.mjs.map +1 -0
- package/esm/storage/drivers/cloud-driver.d.mts +208 -0
- package/esm/storage/drivers/cloud-driver.d.mts.map +1 -0
- package/esm/storage/drivers/cloud-driver.mjs +593 -0
- package/esm/storage/drivers/cloud-driver.mjs.map +1 -0
- package/esm/storage/drivers/do-spaces-driver.d.mts +47 -0
- package/esm/storage/drivers/do-spaces-driver.d.mts.map +1 -0
- package/esm/storage/drivers/do-spaces-driver.mjs +53 -0
- package/esm/storage/drivers/do-spaces-driver.mjs.map +1 -0
- package/esm/storage/drivers/local-driver.d.mts +157 -0
- package/esm/storage/drivers/local-driver.d.mts.map +1 -0
- package/esm/storage/drivers/local-driver.mjs +379 -0
- package/esm/storage/drivers/local-driver.mjs.map +1 -0
- package/esm/storage/drivers/r2-driver.d.mts +51 -0
- package/esm/storage/drivers/r2-driver.d.mts.map +1 -0
- package/esm/storage/drivers/r2-driver.mjs +58 -0
- package/esm/storage/drivers/r2-driver.mjs.map +1 -0
- package/esm/storage/drivers/s3-driver.d.mts +36 -0
- package/esm/storage/drivers/s3-driver.d.mts.map +1 -0
- package/esm/storage/drivers/s3-driver.mjs +40 -0
- package/esm/storage/drivers/s3-driver.mjs.map +1 -0
- package/esm/storage/index.d.mts +12 -0
- package/esm/storage/index.mjs +13 -0
- package/esm/storage/scoped-storage.d.mts +549 -0
- package/esm/storage/scoped-storage.d.mts.map +1 -0
- package/esm/storage/scoped-storage.mjs +693 -0
- package/esm/storage/scoped-storage.mjs.map +1 -0
- package/esm/storage/storage-file.d.mts +252 -0
- package/esm/storage/storage-file.d.mts.map +1 -0
- package/esm/storage/storage-file.mjs +363 -0
- package/esm/storage/storage-file.mjs.map +1 -0
- package/esm/storage/storage.d.mts +578 -0
- package/esm/storage/storage.d.mts.map +1 -0
- package/esm/storage/storage.mjs +871 -0
- package/esm/storage/storage.mjs.map +1 -0
- package/esm/storage/types.d.mts +967 -0
- package/esm/storage/types.d.mts.map +1 -0
- package/esm/storage/utils/mime.d.mts +36 -0
- package/esm/storage/utils/mime.d.mts.map +1 -0
- package/esm/storage/utils/mime.mjs +47 -0
- package/esm/storage/utils/mime.mjs.map +1 -0
- package/esm/tests/index.d.mts +3 -0
- package/esm/tests/index.mjs +5 -0
- package/esm/tests/start-http-development-server.d.mts +18 -0
- package/esm/tests/start-http-development-server.d.mts.map +1 -0
- package/esm/tests/start-http-development-server.mjs +74 -0
- package/esm/tests/start-http-development-server.mjs.map +1 -0
- package/esm/tests/test-helpers.d.mts +46 -0
- package/esm/tests/test-helpers.d.mts.map +1 -0
- package/esm/tests/test-helpers.mjs +99 -0
- package/esm/tests/test-helpers.mjs.map +1 -0
- package/esm/tests/vitest-setup.d.mts +14 -0
- package/esm/tests/vitest-setup.d.mts.map +1 -0
- package/esm/tests/vitest-setup.mjs +36 -0
- package/esm/tests/vitest-setup.mjs.map +1 -0
- package/esm/use-cases/index.d.mts +7 -0
- package/esm/use-cases/index.mjs +8 -0
- package/esm/use-cases/types.d.mts +306 -0
- package/esm/use-cases/types.d.mts.map +1 -0
- package/esm/use-cases/use-case-broadcast.d.mts +24 -0
- package/esm/use-cases/use-case-broadcast.d.mts.map +1 -0
- package/esm/use-cases/use-case-broadcast.mjs +36 -0
- package/esm/use-cases/use-case-broadcast.mjs.map +1 -0
- package/esm/use-cases/use-case-events.d.mts +40 -0
- package/esm/use-cases/use-case-events.d.mts.map +1 -0
- package/esm/use-cases/use-case-events.mjs +67 -0
- package/esm/use-cases/use-case-events.mjs.map +1 -0
- package/esm/use-cases/use-case-pipeline.d.mts +33 -0
- package/esm/use-cases/use-case-pipeline.d.mts.map +1 -0
- package/esm/use-cases/use-case-pipeline.mjs +47 -0
- package/esm/use-cases/use-case-pipeline.mjs.map +1 -0
- package/esm/use-cases/use-case.d.mts +35 -0
- package/esm/use-cases/use-case.d.mts.map +1 -0
- package/esm/use-cases/use-case.errors.d.mts +10 -0
- package/esm/use-cases/use-case.errors.d.mts.map +1 -0
- package/esm/use-cases/use-case.errors.mjs +15 -0
- package/esm/use-cases/use-case.errors.mjs.map +1 -0
- package/esm/use-cases/use-case.mjs +138 -0
- package/esm/use-cases/use-case.mjs.map +1 -0
- package/esm/use-cases/use-cases-registry.d.mts +41 -0
- package/esm/use-cases/use-cases-registry.d.mts.map +1 -0
- package/esm/use-cases/use-cases-registry.mjs +110 -0
- package/esm/use-cases/use-cases-registry.mjs.map +1 -0
- package/esm/utils/app-log.d.mts +11 -0
- package/esm/utils/app-log.d.mts.map +1 -0
- package/esm/utils/app-log.mjs +14 -0
- package/esm/utils/app-log.mjs.map +1 -0
- package/esm/utils/database-log.d.mts +28 -0
- package/esm/utils/database-log.d.mts.map +1 -0
- package/esm/utils/database-log.mjs +48 -0
- package/esm/utils/database-log.mjs.map +1 -0
- package/esm/utils/environment.d.mts +7 -0
- package/esm/utils/environment.d.mts.map +1 -0
- package/esm/utils/environment.mjs +11 -0
- package/esm/utils/environment.mjs.map +1 -0
- package/esm/utils/framework-vesion.mjs +24 -0
- package/esm/utils/framework-vesion.mjs.map +1 -0
- package/esm/utils/get-localized.d.mts +13 -0
- package/esm/utils/get-localized.d.mts.map +1 -0
- package/esm/utils/get-localized.mjs +17 -0
- package/esm/utils/get-localized.mjs.map +1 -0
- package/esm/utils/index.d.mts +11 -0
- package/esm/utils/index.mjs +13 -0
- package/esm/utils/paths.d.mts +72 -0
- package/esm/utils/paths.d.mts.map +1 -0
- package/esm/utils/paths.mjs +107 -0
- package/esm/utils/paths.mjs.map +1 -0
- package/esm/utils/promise-all-object.d.mts +9 -0
- package/esm/utils/promise-all-object.d.mts.map +1 -0
- package/esm/utils/promise-all-object.mjs +16 -0
- package/esm/utils/promise-all-object.mjs.map +1 -0
- package/esm/utils/queue.d.mts +52 -0
- package/esm/utils/queue.d.mts.map +1 -0
- package/esm/utils/queue.mjs +66 -0
- package/esm/utils/queue.mjs.map +1 -0
- package/esm/utils/sleep.d.mts +5 -0
- package/esm/utils/sleep.d.mts.map +1 -0
- package/esm/utils/sleep.mjs +8 -0
- package/esm/utils/sleep.mjs.map +1 -0
- package/esm/utils/sluggable.d.mts +10 -0
- package/esm/utils/sluggable.d.mts.map +1 -0
- package/esm/utils/sluggable.mjs +18 -0
- package/esm/utils/sluggable.mjs.map +1 -0
- package/esm/utils/to-json.d.mts +5 -0
- package/esm/utils/to-json.d.mts.map +1 -0
- package/esm/utils/to-json.mjs +23 -0
- package/esm/utils/to-json.mjs.map +1 -0
- package/esm/utils/types.d.mts +24 -0
- package/esm/utils/types.d.mts.map +1 -0
- package/esm/utils/urls.d.mts +24 -0
- package/esm/utils/urls.d.mts.map +1 -0
- package/esm/utils/urls.mjs +38 -0
- package/esm/utils/urls.mjs.map +1 -0
- package/esm/validation/database/exists-except-current-id.d.mts +11 -0
- package/esm/validation/database/exists-except-current-id.d.mts.map +1 -0
- package/esm/validation/database/exists-except-current-id.mjs +30 -0
- package/esm/validation/database/exists-except-current-id.mjs.map +1 -0
- package/esm/validation/database/exists-except-current-user.d.mts +11 -0
- package/esm/validation/database/exists-except-current-user.d.mts.map +1 -0
- package/esm/validation/database/exists-except-current-user.mjs +30 -0
- package/esm/validation/database/exists-except-current-user.mjs.map +1 -0
- package/esm/validation/database/index.d.mts +5 -0
- package/esm/validation/database/index.mjs +6 -0
- package/esm/validation/database/types.d.mts +32 -0
- package/esm/validation/database/types.d.mts.map +1 -0
- package/esm/validation/database/unique-except-current-id.d.mts +11 -0
- package/esm/validation/database/unique-except-current-id.d.mts.map +1 -0
- package/esm/validation/database/unique-except-current-id.mjs +30 -0
- package/esm/validation/database/unique-except-current-id.mjs.map +1 -0
- package/esm/validation/database/unique-except-current-user.d.mts +11 -0
- package/esm/validation/database/unique-except-current-user.d.mts.map +1 -0
- package/esm/validation/database/unique-except-current-user.mjs +35 -0
- package/esm/validation/database/unique-except-current-user.mjs.map +1 -0
- package/esm/validation/file/file.d.mts +26 -0
- package/esm/validation/file/file.d.mts.map +1 -0
- package/esm/validation/file/file.mjs +57 -0
- package/esm/validation/file/file.mjs.map +1 -0
- package/esm/validation/file/index.d.mts +1 -0
- package/esm/validation/file/index.mjs +3 -0
- package/esm/validation/index.d.mts +8 -0
- package/esm/validation/index.mjs +11 -0
- package/esm/validation/init.mjs +47 -0
- package/esm/validation/init.mjs.map +1 -0
- package/esm/validation/plugins/database-plugin.mjs +59 -0
- package/esm/validation/plugins/database-plugin.mjs.map +1 -0
- package/esm/validation/plugins/file-plugin.mjs +20 -0
- package/esm/validation/plugins/file-plugin.mjs.map +1 -0
- package/esm/validation/plugins/index.mjs +5 -0
- package/esm/validation/plugins/localized-plugin.mjs +21 -0
- package/esm/validation/plugins/localized-plugin.mjs.map +1 -0
- package/esm/validation/types.d.mts +71 -0
- package/esm/validation/types.d.mts.map +1 -0
- package/esm/validation/validateAll.mjs +53 -0
- package/esm/validation/validateAll.mjs.map +1 -0
- package/esm/validation/validators/file-validator.d.mts +65 -0
- package/esm/validation/validators/file-validator.d.mts.map +1 -0
- package/esm/validation/validators/file-validator.mjs +125 -0
- package/esm/validation/validators/file-validator.mjs.map +1 -0
- package/esm/validation/validators/index.d.mts +1 -0
- package/esm/validation/validators/index.mjs +3 -0
- package/esm/warlock-config/default-configurations.mjs +11 -0
- package/esm/warlock-config/default-configurations.mjs.map +1 -0
- package/esm/warlock-config/define-config.d.mts +7 -0
- package/esm/warlock-config/define-config.d.mts.map +1 -0
- package/esm/warlock-config/define-config.mjs +11 -0
- package/esm/warlock-config/define-config.mjs.map +1 -0
- package/esm/warlock-config/index.d.mts +3 -0
- package/esm/warlock-config/index.mjs +4 -0
- package/esm/warlock-config/types.d.mts +143 -0
- package/esm/warlock-config/types.d.mts.map +1 -0
- package/esm/warlock-config/warlock-config.manager.d.mts +86 -0
- package/esm/warlock-config/warlock-config.manager.d.mts.map +1 -0
- package/esm/warlock-config/warlock-config.manager.mjs +117 -0
- package/esm/warlock-config/warlock-config.manager.mjs.map +1 -0
- package/llms-full.txt +8233 -0
- package/llms.txt +41 -0
- package/package.json +93 -71
- package/skills/add-connector/SKILL.md +224 -0
- package/skills/benchmark-code/SKILL.md +256 -0
- package/skills/build-restful/SKILL.md +268 -0
- package/skills/build-url/SKILL.md +180 -0
- package/skills/configure-app/SKILL.md +219 -0
- package/skills/create-controller/SKILL.md +223 -0
- package/skills/create-module/SKILL.md +190 -0
- package/skills/define-resource/SKILL.md +297 -0
- package/skills/encrypt-data/SKILL.md +208 -0
- package/skills/hash-password/SKILL.md +183 -0
- package/skills/process-image/SKILL.md +169 -0
- package/skills/register-route/SKILL.md +159 -0
- package/skills/resolve-path/SKILL.md +170 -0
- package/skills/retry-operation/SKILL.md +109 -0
- package/skills/run-app/SKILL.md +256 -0
- package/skills/send-mail/SKILL.md +372 -0
- package/skills/send-response/SKILL.md +245 -0
- package/skills/store-file/SKILL.md +385 -0
- package/skills/test-http/SKILL.md +287 -0
- package/skills/test-service/SKILL.md +241 -0
- package/skills/upload-file/SKILL.md +297 -0
- package/skills/use-app-context/SKILL.md +240 -0
- package/skills/use-localization/SKILL.md +296 -0
- package/skills/use-middleware/SKILL.md +221 -0
- package/skills/use-model-transformers/SKILL.md +220 -0
- package/skills/use-repository/SKILL.md +393 -0
- package/skills/validate-input/SKILL.md +297 -0
- package/skills/warlock-conventions/SKILL.md +125 -0
- package/skills/wire-socket/SKILL.md +284 -0
- package/skills/write-cli-command/SKILL.md +289 -0
- package/skills/write-middleware/SKILL.md +220 -0
- package/skills/write-seeder/SKILL.md +279 -0
- package/skills/write-use-case/SKILL.md +293 -0
- package/esm/application/app.d.ts +0 -13
- package/esm/application/app.d.ts.map +0 -1
- package/esm/application/app.js +0 -29
- package/esm/application/app.js.map +0 -1
- package/esm/application/application-config-types.d.ts +0 -27
- package/esm/application/application-config-types.d.ts.map +0 -1
- package/esm/application/application.d.ts +0 -68
- package/esm/application/application.d.ts.map +0 -1
- package/esm/application/application.js +0 -94
- package/esm/application/application.js.map +0 -1
- package/esm/application/index.d.ts +0 -4
- package/esm/application/index.d.ts.map +0 -1
- package/esm/benchmark/benchmark-snapshots.d.ts +0 -47
- package/esm/benchmark/benchmark-snapshots.d.ts.map +0 -1
- package/esm/benchmark/benchmark-snapshots.js +0 -77
- package/esm/benchmark/benchmark-snapshots.js.map +0 -1
- package/esm/benchmark/benchmark.d.ts +0 -25
- package/esm/benchmark/benchmark.d.ts.map +0 -1
- package/esm/benchmark/benchmark.example.d.ts +0 -2
- package/esm/benchmark/benchmark.example.d.ts.map +0 -1
- package/esm/benchmark/benchmark.js +0 -120
- package/esm/benchmark/benchmark.js.map +0 -1
- package/esm/benchmark/channels/console.channel.d.ts +0 -14
- package/esm/benchmark/channels/console.channel.d.ts.map +0 -1
- package/esm/benchmark/channels/console.channel.js +0 -29
- package/esm/benchmark/channels/console.channel.js.map +0 -1
- package/esm/benchmark/channels/index.d.ts +0 -3
- package/esm/benchmark/channels/index.d.ts.map +0 -1
- package/esm/benchmark/channels/noop.channel.d.ts +0 -5
- package/esm/benchmark/channels/noop.channel.d.ts.map +0 -1
- package/esm/benchmark/channels/noop.channel.js +0 -3
- package/esm/benchmark/channels/noop.channel.js.map +0 -1
- package/esm/benchmark/index.d.ts +0 -7
- package/esm/benchmark/index.d.ts.map +0 -1
- package/esm/benchmark/profiler.d.ts +0 -63
- package/esm/benchmark/profiler.d.ts.map +0 -1
- package/esm/benchmark/profiler.js +0 -155
- package/esm/benchmark/profiler.js.map +0 -1
- package/esm/benchmark/types.d.ts +0 -167
- package/esm/benchmark/types.d.ts.map +0 -1
- package/esm/bootstrap/setup.d.ts +0 -2
- package/esm/bootstrap/setup.d.ts.map +0 -1
- package/esm/bootstrap/setup.js +0 -14
- package/esm/bootstrap/setup.js.map +0 -1
- package/esm/bootstrap.d.ts +0 -2
- package/esm/bootstrap.d.ts.map +0 -1
- package/esm/bootstrap.js +0 -5
- package/esm/bootstrap.js.map +0 -1
- package/esm/cache/database-cache-driver.d.ts +0 -56
- package/esm/cache/database-cache-driver.d.ts.map +0 -1
- package/esm/cache/database-cache-driver.js +0 -112
- package/esm/cache/database-cache-driver.js.map +0 -1
- package/esm/cache/index.d.ts +0 -3
- package/esm/cache/index.d.ts.map +0 -1
- package/esm/cache/index.js +0 -1
- package/esm/cache/index.js.map +0 -1
- package/esm/cli/cli-command.d.ts +0 -115
- package/esm/cli/cli-command.d.ts.map +0 -1
- package/esm/cli/cli-command.js +0 -227
- package/esm/cli/cli-command.js.map +0 -1
- package/esm/cli/cli-commands.manager.d.ts +0 -71
- package/esm/cli/cli-commands.manager.d.ts.map +0 -1
- package/esm/cli/cli-commands.manager.js +0 -362
- package/esm/cli/cli-commands.manager.js.map +0 -1
- package/esm/cli/cli-commands.utils.d.ts +0 -69
- package/esm/cli/cli-commands.utils.d.ts.map +0 -1
- package/esm/cli/cli-commands.utils.js +0 -180
- package/esm/cli/cli-commands.utils.js.map +0 -1
- package/esm/cli/commands/add.command.d.ts +0 -2
- package/esm/cli/commands/add.command.d.ts.map +0 -1
- package/esm/cli/commands/add.command.js +0 -15
- package/esm/cli/commands/add.command.js.map +0 -1
- package/esm/cli/commands/build.command.d.ts +0 -2
- package/esm/cli/commands/build.command.d.ts.map +0 -1
- package/esm/cli/commands/build.command.js +0 -8
- package/esm/cli/commands/build.command.js.map +0 -1
- package/esm/cli/commands/create-database.command.d.ts +0 -2
- package/esm/cli/commands/create-database.command.d.ts.map +0 -1
- package/esm/cli/commands/create-database.command.js +0 -18
- package/esm/cli/commands/create-database.command.js.map +0 -1
- package/esm/cli/commands/dev-server.command.d.ts +0 -2
- package/esm/cli/commands/dev-server.command.d.ts.map +0 -1
- package/esm/cli/commands/dev-server.command.js +0 -18
- package/esm/cli/commands/dev-server.command.js.map +0 -1
- package/esm/cli/commands/drop-tables.command.d.ts +0 -2
- package/esm/cli/commands/drop-tables.command.d.ts.map +0 -1
- package/esm/cli/commands/drop-tables.command.js +0 -17
- package/esm/cli/commands/drop-tables.command.js.map +0 -1
- package/esm/cli/commands/generate/generate.command.d.ts +0 -10
- package/esm/cli/commands/generate/generate.command.d.ts.map +0 -1
- package/esm/cli/commands/generate/generate.command.js +0 -188
- package/esm/cli/commands/generate/generate.command.js.map +0 -1
- package/esm/cli/commands/generate/generators/column-dsl-parser.d.ts +0 -11
- package/esm/cli/commands/generate/generators/column-dsl-parser.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/column-dsl-parser.js +0 -47
- package/esm/cli/commands/generate/generators/column-dsl-parser.js.map +0 -1
- package/esm/cli/commands/generate/generators/controller.generator.d.ts +0 -3
- package/esm/cli/commands/generate/generators/controller.generator.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/controller.generator.js +0 -51
- package/esm/cli/commands/generate/generators/controller.generator.js.map +0 -1
- package/esm/cli/commands/generate/generators/migration.generator.d.ts +0 -13
- package/esm/cli/commands/generate/generators/migration.generator.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/migration.generator.js +0 -82
- package/esm/cli/commands/generate/generators/migration.generator.js.map +0 -1
- package/esm/cli/commands/generate/generators/model.generator.d.ts +0 -3
- package/esm/cli/commands/generate/generators/model.generator.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/model.generator.js +0 -58
- package/esm/cli/commands/generate/generators/model.generator.js.map +0 -1
- package/esm/cli/commands/generate/generators/module.generator.d.ts +0 -3
- package/esm/cli/commands/generate/generators/module.generator.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/module.generator.js +0 -149
- package/esm/cli/commands/generate/generators/module.generator.js.map +0 -1
- package/esm/cli/commands/generate/generators/repository.generator.d.ts +0 -3
- package/esm/cli/commands/generate/generators/repository.generator.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/repository.generator.js +0 -37
- package/esm/cli/commands/generate/generators/repository.generator.js.map +0 -1
- package/esm/cli/commands/generate/generators/resource.generator.d.ts +0 -3
- package/esm/cli/commands/generate/generators/resource.generator.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/resource.generator.js +0 -37
- package/esm/cli/commands/generate/generators/resource.generator.js.map +0 -1
- package/esm/cli/commands/generate/generators/service.generator.d.ts +0 -3
- package/esm/cli/commands/generate/generators/service.generator.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/service.generator.js +0 -37
- package/esm/cli/commands/generate/generators/service.generator.js.map +0 -1
- package/esm/cli/commands/generate/generators/validation.generator.d.ts +0 -3
- package/esm/cli/commands/generate/generators/validation.generator.d.ts.map +0 -1
- package/esm/cli/commands/generate/generators/validation.generator.js +0 -46
- package/esm/cli/commands/generate/generators/validation.generator.js.map +0 -1
- package/esm/cli/commands/generate/templates/stubs.d.ts +0 -129
- package/esm/cli/commands/generate/templates/stubs.d.ts.map +0 -1
- package/esm/cli/commands/generate/templates/stubs.js +0 -528
- package/esm/cli/commands/generate/templates/stubs.js.map +0 -1
- package/esm/cli/commands/generate/types.d.ts +0 -53
- package/esm/cli/commands/generate/types.d.ts.map +0 -1
- package/esm/cli/commands/generate/utils/name-parser.d.ts +0 -40
- package/esm/cli/commands/generate/utils/name-parser.d.ts.map +0 -1
- package/esm/cli/commands/generate/utils/name-parser.js +0 -65
- package/esm/cli/commands/generate/utils/name-parser.js.map +0 -1
- package/esm/cli/commands/generate/utils/path-resolver.d.ts +0 -30
- package/esm/cli/commands/generate/utils/path-resolver.d.ts.map +0 -1
- package/esm/cli/commands/generate/utils/path-resolver.js +0 -42
- package/esm/cli/commands/generate/utils/path-resolver.js.map +0 -1
- package/esm/cli/commands/generate/utils/prompt.d.ts +0 -13
- package/esm/cli/commands/generate/utils/prompt.d.ts.map +0 -1
- package/esm/cli/commands/generate/utils/prompt.js +0 -21
- package/esm/cli/commands/generate/utils/prompt.js.map +0 -1
- package/esm/cli/commands/migrate.command.d.ts +0 -2
- package/esm/cli/commands/migrate.command.d.ts.map +0 -1
- package/esm/cli/commands/migrate.command.js +0 -52
- package/esm/cli/commands/migrate.command.js.map +0 -1
- package/esm/cli/commands/seed.command.d.ts +0 -2
- package/esm/cli/commands/seed.command.d.ts.map +0 -1
- package/esm/cli/commands/seed.command.js +0 -29
- package/esm/cli/commands/seed.command.js.map +0 -1
- package/esm/cli/commands/start-production.command.d.ts +0 -2
- package/esm/cli/commands/start-production.command.d.ts.map +0 -1
- package/esm/cli/commands/start-production.command.js +0 -65
- package/esm/cli/commands/start-production.command.js.map +0 -1
- package/esm/cli/commands/storage-put.action.d.ts +0 -22
- package/esm/cli/commands/storage-put.action.d.ts.map +0 -1
- package/esm/cli/commands/storage-put.action.js +0 -75
- package/esm/cli/commands/storage-put.action.js.map +0 -1
- package/esm/cli/commands/storage-put.command.d.ts +0 -20
- package/esm/cli/commands/storage-put.command.d.ts.map +0 -1
- package/esm/cli/commands/storage-put.command.js +0 -41
- package/esm/cli/commands/storage-put.command.js.map +0 -1
- package/esm/cli/commands/typings-generator.command.d.ts +0 -2
- package/esm/cli/commands/typings-generator.command.d.ts.map +0 -1
- package/esm/cli/commands/typings-generator.command.js +0 -37
- package/esm/cli/commands/typings-generator.command.js.map +0 -1
- package/esm/cli/commands-loader.d.ts +0 -18
- package/esm/cli/commands-loader.d.ts.map +0 -1
- package/esm/cli/commands-loader.js +0 -45
- package/esm/cli/commands-loader.js.map +0 -1
- package/esm/cli/framework-cli-commands.d.ts +0 -2
- package/esm/cli/framework-cli-commands.d.ts.map +0 -1
- package/esm/cli/framework-cli-commands.js +0 -27
- package/esm/cli/framework-cli-commands.js.map +0 -1
- package/esm/cli/index.d.ts +0 -3
- package/esm/cli/index.d.ts.map +0 -1
- package/esm/cli/index.js +0 -1
- package/esm/cli/index.js.map +0 -1
- package/esm/cli/parse-cli-args.d.ts +0 -18
- package/esm/cli/parse-cli-args.d.ts.map +0 -1
- package/esm/cli/parse-cli-args.js +0 -82
- package/esm/cli/parse-cli-args.js.map +0 -1
- package/esm/cli/start.d.ts +0 -2
- package/esm/cli/start.d.ts.map +0 -1
- package/esm/cli/start.js +0 -2
- package/esm/cli/start.js.map +0 -1
- package/esm/cli/string-similarity.d.ts +0 -44
- package/esm/cli/string-similarity.d.ts.map +0 -1
- package/esm/cli/string-similarity.js +0 -57
- package/esm/cli/string-similarity.js.map +0 -1
- package/esm/cli/types.d.ts +0 -218
- package/esm/cli/types.d.ts.map +0 -1
- package/esm/config/config-getter.d.ts +0 -35
- package/esm/config/config-getter.d.ts.map +0 -1
- package/esm/config/config-getter.js +0 -21
- package/esm/config/config-getter.js.map +0 -1
- package/esm/config/config-handlers.d.ts +0 -7
- package/esm/config/config-handlers.d.ts.map +0 -1
- package/esm/config/config-handlers.js +0 -19
- package/esm/config/config-handlers.js.map +0 -1
- package/esm/config/config-loader.d.ts +0 -37
- package/esm/config/config-loader.d.ts.map +0 -1
- package/esm/config/config-loader.js +0 -85
- package/esm/config/config-loader.js.map +0 -1
- package/esm/config/config-manager.d.ts +0 -22
- package/esm/config/config-manager.d.ts.map +0 -1
- package/esm/config/config-manager.js +0 -25
- package/esm/config/config-manager.js.map +0 -1
- package/esm/config/config-special-handlers.d.ts +0 -17
- package/esm/config/config-special-handlers.d.ts.map +0 -1
- package/esm/config/config-special-handlers.js +0 -23
- package/esm/config/config-special-handlers.js.map +0 -1
- package/esm/config/index.d.ts +0 -5
- package/esm/config/index.d.ts.map +0 -1
- package/esm/config/load-config-files.d.ts +0 -6
- package/esm/config/load-config-files.d.ts.map +0 -1
- package/esm/config/load-config-files.js +0 -19
- package/esm/config/load-config-files.js.map +0 -1
- package/esm/config/types.d.ts +0 -52
- package/esm/config/types.d.ts.map +0 -1
- package/esm/connectors/base-connector.d.ts +0 -49
- package/esm/connectors/base-connector.d.ts.map +0 -1
- package/esm/connectors/base-connector.js +0 -48
- package/esm/connectors/base-connector.js.map +0 -1
- package/esm/connectors/cache-connector.d.ts +0 -23
- package/esm/connectors/cache-connector.d.ts.map +0 -1
- package/esm/connectors/cache-connector.js +0 -35
- package/esm/connectors/cache-connector.js.map +0 -1
- package/esm/connectors/connectors-manager.d.ts +0 -42
- package/esm/connectors/connectors-manager.d.ts.map +0 -1
- package/esm/connectors/connectors-manager.js +0 -94
- package/esm/connectors/connectors-manager.js.map +0 -1
- package/esm/connectors/database-connector.d.ts +0 -23
- package/esm/connectors/database-connector.d.ts.map +0 -1
- package/esm/connectors/database-connector.js +0 -52
- package/esm/connectors/database-connector.js.map +0 -1
- package/esm/connectors/herald-connector.d.ts +0 -23
- package/esm/connectors/herald-connector.d.ts.map +0 -1
- package/esm/connectors/herald-connector.js +0 -57
- package/esm/connectors/herald-connector.js.map +0 -1
- package/esm/connectors/http-connector.d.ts +0 -31
- package/esm/connectors/http-connector.d.ts.map +0 -1
- package/esm/connectors/http-connector.js +0 -85
- package/esm/connectors/http-connector.js.map +0 -1
- package/esm/connectors/index.d.ts +0 -16
- package/esm/connectors/index.d.ts.map +0 -1
- package/esm/connectors/logger-connector.d.ts +0 -23
- package/esm/connectors/logger-connector.d.ts.map +0 -1
- package/esm/connectors/logger-connector.js +0 -45
- package/esm/connectors/logger-connector.js.map +0 -1
- package/esm/connectors/mail-connector.d.ts +0 -23
- package/esm/connectors/mail-connector.d.ts.map +0 -1
- package/esm/connectors/mail-connector.js +0 -45
- package/esm/connectors/mail-connector.js.map +0 -1
- package/esm/connectors/socket-connector.d.ts +0 -25
- package/esm/connectors/socket-connector.d.ts.map +0 -1
- package/esm/connectors/socket-connector.js +0 -57
- package/esm/connectors/socket-connector.js.map +0 -1
- package/esm/connectors/storage.connector.d.ts +0 -23
- package/esm/connectors/storage.connector.d.ts.map +0 -1
- package/esm/connectors/storage.connector.js +0 -30
- package/esm/connectors/storage.connector.js.map +0 -1
- package/esm/connectors/types.d.ts +0 -55
- package/esm/connectors/types.d.ts.map +0 -1
- package/esm/connectors/types.js +0 -14
- package/esm/connectors/types.js.map +0 -1
- package/esm/container/index.d.ts +0 -38
- package/esm/container/index.d.ts.map +0 -1
- package/esm/container/index.js +0 -22
- package/esm/container/index.js.map +0 -1
- package/esm/database/create-database-action.d.ts +0 -3
- package/esm/database/create-database-action.d.ts.map +0 -1
- package/esm/database/create-database-action.js +0 -28
- package/esm/database/create-database-action.js.map +0 -1
- package/esm/database/drop-tables-action.d.ts +0 -3
- package/esm/database/drop-tables-action.d.ts.map +0 -1
- package/esm/database/drop-tables-action.js +0 -29
- package/esm/database/drop-tables-action.js.map +0 -1
- package/esm/database/index.d.ts +0 -4
- package/esm/database/index.d.ts.map +0 -1
- package/esm/database/migrate-action.d.ts +0 -8
- package/esm/database/migrate-action.d.ts.map +0 -1
- package/esm/database/migrate-action.js +0 -118
- package/esm/database/migrate-action.js.map +0 -1
- package/esm/database/models/database-log/database-log.d.ts +0 -16
- package/esm/database/models/database-log/database-log.d.ts.map +0 -1
- package/esm/database/models/database-log/database-log.js +0 -17
- package/esm/database/models/database-log/database-log.js.map +0 -1
- package/esm/database/models/database-log/index.d.ts +0 -2
- package/esm/database/models/database-log/index.d.ts.map +0 -1
- package/esm/database/seed-command-action.d.ts +0 -16
- package/esm/database/seed-command-action.d.ts.map +0 -1
- package/esm/database/seed-command-action.js +0 -68
- package/esm/database/seed-command-action.js.map +0 -1
- package/esm/database/seeds/index.d.ts +0 -3
- package/esm/database/seeds/index.d.ts.map +0 -1
- package/esm/database/seeds/seeder.d.ts +0 -40
- package/esm/database/seeds/seeder.d.ts.map +0 -1
- package/esm/database/seeds/seeder.js +0 -6
- package/esm/database/seeds/seeder.js.map +0 -1
- package/esm/database/seeds/seeders.manager.d.ts +0 -51
- package/esm/database/seeds/seeders.manager.d.ts.map +0 -1
- package/esm/database/seeds/seeders.manager.js +0 -150
- package/esm/database/seeds/seeders.manager.js.map +0 -1
- package/esm/database/seeds/seeds-table-migration.d.ts +0 -8
- package/esm/database/seeds/seeds-table-migration.d.ts.map +0 -1
- package/esm/database/seeds/seeds-table-migration.js +0 -18
- package/esm/database/seeds/seeds-table-migration.js.map +0 -1
- package/esm/database/seeds/types.d.ts +0 -13
- package/esm/database/seeds/types.d.ts.map +0 -1
- package/esm/database/seeds/utils.d.ts +0 -2
- package/esm/database/seeds/utils.d.ts.map +0 -1
- package/esm/database/seeds/utils.js +0 -1
- package/esm/database/seeds/utils.js.map +0 -1
- package/esm/database/utils.d.ts +0 -17
- package/esm/database/utils.d.ts.map +0 -1
- package/esm/database/utils.js +0 -30
- package/esm/database/utils.js.map +0 -1
- package/esm/dev-server/create-worker.d.ts +0 -34
- package/esm/dev-server/create-worker.d.ts.map +0 -1
- package/esm/dev-server/create-worker.js +0 -37
- package/esm/dev-server/create-worker.js.map +0 -1
- package/esm/dev-server/dependency-graph.d.ts +0 -102
- package/esm/dev-server/dependency-graph.d.ts.map +0 -1
- package/esm/dev-server/dependency-graph.js +0 -310
- package/esm/dev-server/dependency-graph.js.map +0 -1
- package/esm/dev-server/dev-logger.d.ts +0 -14
- package/esm/dev-server/dev-logger.d.ts.map +0 -1
- package/esm/dev-server/dev-logger.js +0 -130
- package/esm/dev-server/dev-logger.js.map +0 -1
- package/esm/dev-server/development-server.d.ts +0 -55
- package/esm/dev-server/development-server.d.ts.map +0 -1
- package/esm/dev-server/development-server.js +0 -199
- package/esm/dev-server/development-server.js.map +0 -1
- package/esm/dev-server/events.d.ts +0 -5
- package/esm/dev-server/events.d.ts.map +0 -1
- package/esm/dev-server/events.js +0 -4
- package/esm/dev-server/events.js.map +0 -1
- package/esm/dev-server/export-analyzer.d.ts +0 -84
- package/esm/dev-server/export-analyzer.d.ts.map +0 -1
- package/esm/dev-server/export-analyzer.js +0 -206
- package/esm/dev-server/export-analyzer.js.map +0 -1
- package/esm/dev-server/file-event-handler.d.ts +0 -156
- package/esm/dev-server/file-event-handler.d.ts.map +0 -1
- package/esm/dev-server/file-event-handler.js +0 -309
- package/esm/dev-server/file-event-handler.js.map +0 -1
- package/esm/dev-server/file-manager.d.ts +0 -394
- package/esm/dev-server/file-manager.d.ts.map +0 -1
- package/esm/dev-server/file-manager.js +0 -603
- package/esm/dev-server/file-manager.js.map +0 -1
- package/esm/dev-server/file-operations.d.ts +0 -203
- package/esm/dev-server/file-operations.d.ts.map +0 -1
- package/esm/dev-server/file-operations.js +0 -365
- package/esm/dev-server/file-operations.js.map +0 -1
- package/esm/dev-server/files-orchestrator.d.ts +0 -153
- package/esm/dev-server/files-orchestrator.d.ts.map +0 -1
- package/esm/dev-server/files-orchestrator.js +0 -349
- package/esm/dev-server/files-orchestrator.js.map +0 -1
- package/esm/dev-server/files-watcher.d.ts +0 -67
- package/esm/dev-server/files-watcher.d.ts.map +0 -1
- package/esm/dev-server/files-watcher.js +0 -121
- package/esm/dev-server/files-watcher.js.map +0 -1
- package/esm/dev-server/flags.d.ts +0 -10
- package/esm/dev-server/flags.d.ts.map +0 -1
- package/esm/dev-server/flags.js +0 -9
- package/esm/dev-server/flags.js.map +0 -1
- package/esm/dev-server/health-checker/checkers/base-health-checker.d.ts +0 -52
- package/esm/dev-server/health-checker/checkers/base-health-checker.d.ts.map +0 -1
- package/esm/dev-server/health-checker/checkers/base-health-checker.js +0 -71
- package/esm/dev-server/health-checker/checkers/base-health-checker.js.map +0 -1
- package/esm/dev-server/health-checker/checkers/eslint-health-checker.d.ts +0 -40
- package/esm/dev-server/health-checker/checkers/eslint-health-checker.d.ts.map +0 -1
- package/esm/dev-server/health-checker/checkers/eslint-health-checker.js +0 -217
- package/esm/dev-server/health-checker/checkers/eslint-health-checker.js.map +0 -1
- package/esm/dev-server/health-checker/checkers/typescript-health-checker.d.ts +0 -56
- package/esm/dev-server/health-checker/checkers/typescript-health-checker.d.ts.map +0 -1
- package/esm/dev-server/health-checker/checkers/typescript-health-checker.js +0 -279
- package/esm/dev-server/health-checker/checkers/typescript-health-checker.js.map +0 -1
- package/esm/dev-server/health-checker/file-health-checker.contract.d.ts +0 -59
- package/esm/dev-server/health-checker/file-health-checker.contract.d.ts.map +0 -1
- package/esm/dev-server/health-checker/file-health-result.d.ts +0 -68
- package/esm/dev-server/health-checker/file-health-result.d.ts.map +0 -1
- package/esm/dev-server/health-checker/file-health-result.js +0 -40
- package/esm/dev-server/health-checker/file-health-result.js.map +0 -1
- package/esm/dev-server/health-checker/files-healthcare.manager.d.ts +0 -115
- package/esm/dev-server/health-checker/files-healthcare.manager.d.ts.map +0 -1
- package/esm/dev-server/health-checker/files-healthcare.manager.js +0 -422
- package/esm/dev-server/health-checker/files-healthcare.manager.js.map +0 -1
- package/esm/dev-server/health-checker/index.d.ts +0 -6
- package/esm/dev-server/health-checker/index.d.ts.map +0 -1
- package/esm/dev-server/health-checker/workers/eslint-health.worker.d.ts +0 -2
- package/esm/dev-server/health-checker/workers/eslint-health.worker.d.ts.map +0 -1
- package/esm/dev-server/health-checker/workers/eslint-health.worker.js +0 -214
- package/esm/dev-server/health-checker/workers/eslint-health.worker.js.map +0 -1
- package/esm/dev-server/health-checker/workers/ts-health.worker.d.ts +0 -2
- package/esm/dev-server/health-checker/workers/ts-health.worker.d.ts.map +0 -1
- package/esm/dev-server/health-checker/workers/ts-health.worker.js +0 -261
- package/esm/dev-server/health-checker/workers/ts-health.worker.js.map +0 -1
- package/esm/dev-server/import-deduplicator.d.ts +0 -75
- package/esm/dev-server/import-deduplicator.d.ts.map +0 -1
- package/esm/dev-server/import-deduplicator.js +0 -288
- package/esm/dev-server/import-deduplicator.js.map +0 -1
- package/esm/dev-server/import-deduplicator.test.d.ts +0 -7
- package/esm/dev-server/import-deduplicator.test.d.ts.map +0 -1
- package/esm/dev-server/import-transformer.d.ts +0 -17
- package/esm/dev-server/import-transformer.d.ts.map +0 -1
- package/esm/dev-server/import-transformer.js +0 -221
- package/esm/dev-server/import-transformer.js.map +0 -1
- package/esm/dev-server/index.d.ts +0 -1
- package/esm/dev-server/index.d.ts.map +0 -1
- package/esm/dev-server/layer-executor.d.ts +0 -64
- package/esm/dev-server/layer-executor.d.ts.map +0 -1
- package/esm/dev-server/layer-executor.js +0 -338
- package/esm/dev-server/layer-executor.js.map +0 -1
- package/esm/dev-server/manifest-manager.d.ts +0 -80
- package/esm/dev-server/manifest-manager.d.ts.map +0 -1
- package/esm/dev-server/manifest-manager.js +0 -107
- package/esm/dev-server/manifest-manager.js.map +0 -1
- package/esm/dev-server/module-loader.d.ts +0 -111
- package/esm/dev-server/module-loader.d.ts.map +0 -1
- package/esm/dev-server/module-loader.js +0 -276
- package/esm/dev-server/module-loader.js.map +0 -1
- package/esm/dev-server/package-json-manager.d.ts +0 -16
- package/esm/dev-server/package-json-manager.d.ts.map +0 -1
- package/esm/dev-server/package-json-manager.js +0 -20
- package/esm/dev-server/package-json-manager.js.map +0 -1
- package/esm/dev-server/parse-imports.d.ts +0 -34
- package/esm/dev-server/parse-imports.d.ts.map +0 -1
- package/esm/dev-server/parse-imports.js +0 -426
- package/esm/dev-server/parse-imports.js.map +0 -1
- package/esm/dev-server/path.d.ts +0 -39
- package/esm/dev-server/path.d.ts.map +0 -1
- package/esm/dev-server/path.js +0 -56
- package/esm/dev-server/path.js.map +0 -1
- package/esm/dev-server/runtime-import-helper.d.ts +0 -8
- package/esm/dev-server/runtime-import-helper.d.ts.map +0 -1
- package/esm/dev-server/runtime-import-helper.js +0 -158
- package/esm/dev-server/runtime-import-helper.js.map +0 -1
- package/esm/dev-server/special-files-collector.d.ts +0 -114
- package/esm/dev-server/special-files-collector.d.ts.map +0 -1
- package/esm/dev-server/special-files-collector.js +0 -212
- package/esm/dev-server/special-files-collector.js.map +0 -1
- package/esm/dev-server/start-development-server.d.ts +0 -7
- package/esm/dev-server/start-development-server.d.ts.map +0 -1
- package/esm/dev-server/start-development-server.js +0 -21
- package/esm/dev-server/start-development-server.js.map +0 -1
- package/esm/dev-server/transpile-file.d.ts +0 -11
- package/esm/dev-server/transpile-file.d.ts.map +0 -1
- package/esm/dev-server/transpile-file.js +0 -30
- package/esm/dev-server/transpile-file.js.map +0 -1
- package/esm/dev-server/tsconfig-manager.d.ts +0 -45
- package/esm/dev-server/tsconfig-manager.d.ts.map +0 -1
- package/esm/dev-server/tsconfig-manager.js +0 -107
- package/esm/dev-server/tsconfig-manager.js.map +0 -1
- package/esm/dev-server/type-generator.d.ts +0 -115
- package/esm/dev-server/type-generator.d.ts.map +0 -1
- package/esm/dev-server/type-generator.js +0 -566
- package/esm/dev-server/type-generator.js.map +0 -1
- package/esm/dev-server/types.d.ts +0 -30
- package/esm/dev-server/types.d.ts.map +0 -1
- package/esm/dev-server/utils.d.ts +0 -15
- package/esm/dev-server/utils.d.ts.map +0 -1
- package/esm/dev-server/utils.js +0 -41
- package/esm/dev-server/utils.js.map +0 -1
- package/esm/encryption/encrypt.d.ts +0 -23
- package/esm/encryption/encrypt.d.ts.map +0 -1
- package/esm/encryption/encrypt.js +0 -85
- package/esm/encryption/encrypt.js.map +0 -1
- package/esm/encryption/hash.d.ts +0 -17
- package/esm/encryption/hash.d.ts.map +0 -1
- package/esm/encryption/hash.js +0 -26
- package/esm/encryption/hash.js.map +0 -1
- package/esm/encryption/index.d.ts +0 -5
- package/esm/encryption/index.d.ts.map +0 -1
- package/esm/encryption/password.d.ts +0 -23
- package/esm/encryption/password.d.ts.map +0 -1
- package/esm/encryption/password.js +0 -72
- package/esm/encryption/password.js.map +0 -1
- package/esm/encryption/types.d.ts +0 -51
- package/esm/encryption/types.d.ts.map +0 -1
- package/esm/generations/add-command.action.d.ts +0 -3
- package/esm/generations/add-command.action.d.ts.map +0 -1
- package/esm/generations/add-command.action.js +0 -382
- package/esm/generations/add-command.action.js.map +0 -1
- package/esm/generations/stubs.d.ts +0 -2
- package/esm/generations/stubs.d.ts.map +0 -1
- package/esm/generations/stubs.js +0 -81
- package/esm/generations/stubs.js.map +0 -1
- package/esm/http/config.d.ts +0 -10
- package/esm/http/config.d.ts.map +0 -1
- package/esm/http/config.js +0 -22
- package/esm/http/config.js.map +0 -1
- package/esm/http/context/request-context.d.ts +0 -47
- package/esm/http/context/request-context.d.ts.map +0 -1
- package/esm/http/context/request-context.js +0 -52
- package/esm/http/context/request-context.js.map +0 -1
- package/esm/http/createHttpApplication.d.ts +0 -3
- package/esm/http/createHttpApplication.d.ts.map +0 -1
- package/esm/http/createHttpApplication.js +0 -28
- package/esm/http/createHttpApplication.js.map +0 -1
- package/esm/http/database/RequestLog.d.ts +0 -16
- package/esm/http/database/RequestLog.d.ts.map +0 -1
- package/esm/http/database/RequestLog.js +0 -26
- package/esm/http/database/RequestLog.js.map +0 -1
- package/esm/http/errors/errors.d.ts +0 -39
- package/esm/http/errors/errors.d.ts.map +0 -1
- package/esm/http/errors/errors.js +0 -76
- package/esm/http/errors/errors.js.map +0 -1
- package/esm/http/errors/index.d.ts +0 -2
- package/esm/http/errors/index.d.ts.map +0 -1
- package/esm/http/events.d.ts +0 -4
- package/esm/http/events.d.ts.map +0 -1
- package/esm/http/events.js +0 -26
- package/esm/http/events.js.map +0 -1
- package/esm/http/index.d.ts +0 -17
- package/esm/http/index.d.ts.map +0 -1
- package/esm/http/middleware/cache-response-middleware.d.ts +0 -34
- package/esm/http/middleware/cache-response-middleware.d.ts.map +0 -1
- package/esm/http/middleware/cache-response-middleware.js +0 -45
- package/esm/http/middleware/cache-response-middleware.js.map +0 -1
- package/esm/http/middleware/index.d.ts +0 -3
- package/esm/http/middleware/index.d.ts.map +0 -1
- package/esm/http/middleware/inject-request-context.d.ts +0 -21
- package/esm/http/middleware/inject-request-context.d.ts.map +0 -1
- package/esm/http/middleware/inject-request-context.js +0 -119
- package/esm/http/middleware/inject-request-context.js.map +0 -1
- package/esm/http/plugins.d.ts +0 -3
- package/esm/http/plugins.d.ts.map +0 -1
- package/esm/http/plugins.js +0 -36
- package/esm/http/plugins.js.map +0 -1
- package/esm/http/request-controller.d.ts +0 -11
- package/esm/http/request-controller.d.ts.map +0 -1
- package/esm/http/request-controller.js +0 -9
- package/esm/http/request-controller.js.map +0 -1
- package/esm/http/request.d.ts +0 -400
- package/esm/http/request.d.ts.map +0 -1
- package/esm/http/request.js +0 -768
- package/esm/http/request.js.map +0 -1
- package/esm/http/response.d.ts +0 -379
- package/esm/http/response.d.ts.map +0 -1
- package/esm/http/response.js +0 -983
- package/esm/http/response.js.map +0 -1
- package/esm/http/server.d.ts +0 -8
- package/esm/http/server.d.ts.map +0 -1
- package/esm/http/server.js +0 -15
- package/esm/http/server.js.map +0 -1
- package/esm/http/types.d.ts +0 -230
- package/esm/http/types.d.ts.map +0 -1
- package/esm/http/uploaded-file.d.ts +0 -459
- package/esm/http/uploaded-file.d.ts.map +0 -1
- package/esm/http/uploaded-file.js +0 -709
- package/esm/http/uploaded-file.js.map +0 -1
- package/esm/http/uploads-config.d.ts +0 -26
- package/esm/http/uploads-config.d.ts.map +0 -1
- package/esm/http/uploads-config.js +0 -35
- package/esm/http/uploads-config.js.map +0 -1
- package/esm/http/uploads-types.d.ts +0 -236
- package/esm/http/uploads-types.d.ts.map +0 -1
- package/esm/image/image.d.ts +0 -388
- package/esm/image/image.d.ts.map +0 -1
- package/esm/image/image.js +0 -608
- package/esm/image/image.js.map +0 -1
- package/esm/image/index.d.ts +0 -2
- package/esm/image/index.d.ts.map +0 -1
- package/esm/index.d.ts +0 -36
- package/esm/index.d.ts.map +0 -1
- package/esm/index.js +0 -1
- package/esm/index.js.map +0 -1
- package/esm/logger/index.d.ts +0 -3
- package/esm/logger/index.d.ts.map +0 -1
- package/esm/logger/logger.d.ts +0 -3
- package/esm/logger/logger.d.ts.map +0 -1
- package/esm/logger/logger.js +0 -16
- package/esm/logger/logger.js.map +0 -1
- package/esm/logger/types.d.ts +0 -39
- package/esm/logger/types.d.ts.map +0 -1
- package/esm/mail/config.d.ts +0 -80
- package/esm/mail/config.d.ts.map +0 -1
- package/esm/mail/config.js +0 -158
- package/esm/mail/config.js.map +0 -1
- package/esm/mail/events.d.ts +0 -96
- package/esm/mail/events.d.ts.map +0 -1
- package/esm/mail/events.js +0 -123
- package/esm/mail/events.js.map +0 -1
- package/esm/mail/index.d.ts +0 -10
- package/esm/mail/index.d.ts.map +0 -1
- package/esm/mail/mail.d.ts +0 -175
- package/esm/mail/mail.d.ts.map +0 -1
- package/esm/mail/mail.js +0 -286
- package/esm/mail/mail.js.map +0 -1
- package/esm/mail/mailer-pool.d.ts +0 -27
- package/esm/mail/mailer-pool.d.ts.map +0 -1
- package/esm/mail/mailer-pool.js +0 -215
- package/esm/mail/mailer-pool.js.map +0 -1
- package/esm/mail/react-mail.d.ts +0 -12
- package/esm/mail/react-mail.d.ts.map +0 -1
- package/esm/mail/react-mail.js +0 -40
- package/esm/mail/react-mail.js.map +0 -1
- package/esm/mail/send-mail.d.ts +0 -33
- package/esm/mail/send-mail.d.ts.map +0 -1
- package/esm/mail/send-mail.js +0 -313
- package/esm/mail/send-mail.js.map +0 -1
- package/esm/mail/test-mailbox.d.ts +0 -110
- package/esm/mail/test-mailbox.d.ts.map +0 -1
- package/esm/mail/test-mailbox.js +0 -143
- package/esm/mail/test-mailbox.js.map +0 -1
- package/esm/mail/types.d.ts +0 -264
- package/esm/mail/types.d.ts.map +0 -1
- package/esm/mail/types.js +0 -13
- package/esm/mail/types.js.map +0 -1
- package/esm/manifest/manifest-manager.d.ts +0 -74
- package/esm/manifest/manifest-manager.d.ts.map +0 -1
- package/esm/manifest/manifest-manager.js +0 -88
- package/esm/manifest/manifest-manager.js.map +0 -1
- package/esm/production/build-app-production.d.ts +0 -6
- package/esm/production/build-app-production.d.ts.map +0 -1
- package/esm/production/build-app-production.js +0 -8
- package/esm/production/build-app-production.js.map +0 -1
- package/esm/production/esbuild-plugins.d.ts +0 -5
- package/esm/production/esbuild-plugins.d.ts.map +0 -1
- package/esm/production/esbuild-plugins.js +0 -23
- package/esm/production/esbuild-plugins.js.map +0 -1
- package/esm/production/production-builder.d.ts +0 -76
- package/esm/production/production-builder.d.ts.map +0 -1
- package/esm/production/production-builder.js +0 -254
- package/esm/production/production-builder.js.map +0 -1
- package/esm/react/index.d.ts +0 -14
- package/esm/react/index.d.ts.map +0 -1
- package/esm/react/index.js +0 -65
- package/esm/react/index.js.map +0 -1
- package/esm/repositories/adapters/cascade/cascade-adapter.d.ts +0 -85
- package/esm/repositories/adapters/cascade/cascade-adapter.d.ts.map +0 -1
- package/esm/repositories/adapters/cascade/cascade-adapter.js +0 -179
- package/esm/repositories/adapters/cascade/cascade-adapter.js.map +0 -1
- package/esm/repositories/adapters/cascade/cascade-query-builder.d.ts +0 -141
- package/esm/repositories/adapters/cascade/cascade-query-builder.d.ts.map +0 -1
- package/esm/repositories/adapters/cascade/cascade-query-builder.js +0 -281
- package/esm/repositories/adapters/cascade/cascade-query-builder.js.map +0 -1
- package/esm/repositories/adapters/cascade/filter-applicator.d.ts +0 -126
- package/esm/repositories/adapters/cascade/filter-applicator.d.ts.map +0 -1
- package/esm/repositories/adapters/cascade/filter-applicator.js +0 -549
- package/esm/repositories/adapters/cascade/filter-applicator.js.map +0 -1
- package/esm/repositories/adapters/cascade/index.d.ts +0 -7
- package/esm/repositories/adapters/cascade/index.d.ts.map +0 -1
- package/esm/repositories/contracts/index.d.ts +0 -8
- package/esm/repositories/contracts/index.d.ts.map +0 -1
- package/esm/repositories/contracts/query-builder.contract.d.ts +0 -320
- package/esm/repositories/contracts/query-builder.contract.d.ts.map +0 -1
- package/esm/repositories/contracts/repository-adapter.contract.d.ts +0 -183
- package/esm/repositories/contracts/repository-adapter.contract.d.ts.map +0 -1
- package/esm/repositories/contracts/types.d.ts +0 -328
- package/esm/repositories/contracts/types.d.ts.map +0 -1
- package/esm/repositories/index.d.ts +0 -8
- package/esm/repositories/index.d.ts.map +0 -1
- package/esm/repositories/repository.manager.d.ts +0 -694
- package/esm/repositories/repository.manager.d.ts.map +0 -1
- package/esm/repositories/repository.manager.js +0 -1123
- package/esm/repositories/repository.manager.js.map +0 -1
- package/esm/resource/define-resource.d.ts +0 -65
- package/esm/resource/define-resource.d.ts.map +0 -1
- package/esm/resource/define-resource.js +0 -62
- package/esm/resource/define-resource.js.map +0 -1
- package/esm/resource/index.d.ts +0 -6
- package/esm/resource/index.d.ts.map +0 -1
- package/esm/resource/register-resource.d.ts +0 -21
- package/esm/resource/register-resource.d.ts.map +0 -1
- package/esm/resource/register-resource.js +0 -23
- package/esm/resource/register-resource.js.map +0 -1
- package/esm/resource/resource-field-builder.d.ts +0 -104
- package/esm/resource/resource-field-builder.d.ts.map +0 -1
- package/esm/resource/resource-field-builder.js +0 -260
- package/esm/resource/resource-field-builder.js.map +0 -1
- package/esm/resource/resource.d.ts +0 -217
- package/esm/resource/resource.d.ts.map +0 -1
- package/esm/resource/resource.js +0 -307
- package/esm/resource/resource.js.map +0 -1
- package/esm/resource/types.d.ts +0 -74
- package/esm/resource/types.d.ts.map +0 -1
- package/esm/restful/index.d.ts +0 -2
- package/esm/restful/index.d.ts.map +0 -1
- package/esm/restful/restful.d.ts +0 -110
- package/esm/restful/restful.d.ts.map +0 -1
- package/esm/restful/restful.js +0 -317
- package/esm/restful/restful.js.map +0 -1
- package/esm/retry/index.d.ts +0 -3
- package/esm/retry/index.d.ts.map +0 -1
- package/esm/retry/retry.d.ts +0 -21
- package/esm/retry/retry.d.ts.map +0 -1
- package/esm/retry/retry.js +0 -39
- package/esm/retry/retry.js.map +0 -1
- package/esm/retry/types.d.ts +0 -27
- package/esm/retry/types.d.ts.map +0 -1
- package/esm/router/index.d.ts +0 -3
- package/esm/router/index.d.ts.map +0 -1
- package/esm/router/route-builder.d.ts +0 -120
- package/esm/router/route-builder.d.ts.map +0 -1
- package/esm/router/route-builder.js +0 -201
- package/esm/router/route-builder.js.map +0 -1
- package/esm/router/route-registry.d.ts +0 -30
- package/esm/router/route-registry.d.ts.map +0 -1
- package/esm/router/route-registry.js +0 -67
- package/esm/router/route-registry.js.map +0 -1
- package/esm/router/route.d.ts +0 -34
- package/esm/router/route.d.ts.map +0 -1
- package/esm/router/router.d.ts +0 -188
- package/esm/router/router.d.ts.map +0 -1
- package/esm/router/router.js +0 -606
- package/esm/router/router.js.map +0 -1
- package/esm/router/types.d.ts +0 -254
- package/esm/router/types.d.ts.map +0 -1
- package/esm/socket/index.d.ts +0 -3
- package/esm/socket/index.d.ts.map +0 -1
- package/esm/socket/types.d.ts +0 -16
- package/esm/socket/types.d.ts.map +0 -1
- package/esm/socket/utils.d.ts +0 -6
- package/esm/socket/utils.d.ts.map +0 -1
- package/esm/socket/utils.js +0 -9
- package/esm/socket/utils.js.map +0 -1
- package/esm/storage/config.d.ts +0 -15
- package/esm/storage/config.d.ts.map +0 -1
- package/esm/storage/config.js +0 -32
- package/esm/storage/config.js.map +0 -1
- package/esm/storage/context/storage-driver-context.d.ts +0 -69
- package/esm/storage/context/storage-driver-context.d.ts.map +0 -1
- package/esm/storage/context/storage-driver-context.js +0 -80
- package/esm/storage/context/storage-driver-context.js.map +0 -1
- package/esm/storage/drivers/cloud-driver.d.ts +0 -206
- package/esm/storage/drivers/cloud-driver.d.ts.map +0 -1
- package/esm/storage/drivers/cloud-driver.js +0 -721
- package/esm/storage/drivers/cloud-driver.js.map +0 -1
- package/esm/storage/drivers/do-spaces-driver.d.ts +0 -43
- package/esm/storage/drivers/do-spaces-driver.d.ts.map +0 -1
- package/esm/storage/drivers/do-spaces-driver.js +0 -50
- package/esm/storage/drivers/do-spaces-driver.js.map +0 -1
- package/esm/storage/drivers/local-driver.d.ts +0 -155
- package/esm/storage/drivers/local-driver.d.ts.map +0 -1
- package/esm/storage/drivers/local-driver.js +0 -450
- package/esm/storage/drivers/local-driver.js.map +0 -1
- package/esm/storage/drivers/r2-driver.d.ts +0 -47
- package/esm/storage/drivers/r2-driver.d.ts.map +0 -1
- package/esm/storage/drivers/r2-driver.js +0 -60
- package/esm/storage/drivers/r2-driver.js.map +0 -1
- package/esm/storage/drivers/s3-driver.d.ts +0 -32
- package/esm/storage/drivers/s3-driver.d.ts.map +0 -1
- package/esm/storage/drivers/s3-driver.js +0 -37
- package/esm/storage/drivers/s3-driver.js.map +0 -1
- package/esm/storage/index.d.ts +0 -13
- package/esm/storage/index.d.ts.map +0 -1
- package/esm/storage/scoped-storage.d.ts +0 -547
- package/esm/storage/scoped-storage.d.ts.map +0 -1
- package/esm/storage/scoped-storage.js +0 -739
- package/esm/storage/scoped-storage.js.map +0 -1
- package/esm/storage/storage-file.d.ts +0 -250
- package/esm/storage/storage-file.d.ts.map +0 -1
- package/esm/storage/storage-file.js +0 -417
- package/esm/storage/storage-file.js.map +0 -1
- package/esm/storage/storage.d.ts +0 -576
- package/esm/storage/storage.d.ts.map +0 -1
- package/esm/storage/storage.js +0 -939
- package/esm/storage/storage.js.map +0 -1
- package/esm/storage/types.d.ts +0 -966
- package/esm/storage/types.d.ts.map +0 -1
- package/esm/storage/utils/mime.d.ts +0 -33
- package/esm/storage/utils/mime.d.ts.map +0 -1
- package/esm/storage/utils/mime.js +0 -45
- package/esm/storage/utils/mime.js.map +0 -1
- package/esm/tests/index.d.ts +0 -9
- package/esm/tests/index.d.ts.map +0 -1
- package/esm/tests/start-http-development-server.d.ts +0 -15
- package/esm/tests/start-http-development-server.d.ts.map +0 -1
- package/esm/tests/start-http-development-server.js +0 -69
- package/esm/tests/start-http-development-server.js.map +0 -1
- package/esm/tests/test-helpers.d.ts +0 -43
- package/esm/tests/test-helpers.d.ts.map +0 -1
- package/esm/tests/test-helpers.js +0 -86
- package/esm/tests/test-helpers.js.map +0 -1
- package/esm/tests/vitest-setup.d.ts +0 -10
- package/esm/tests/vitest-setup.d.ts.map +0 -1
- package/esm/tests/vitest-setup.js +0 -36
- package/esm/tests/vitest-setup.js.map +0 -1
- package/esm/use-cases/index.d.ts +0 -7
- package/esm/use-cases/index.d.ts.map +0 -1
- package/esm/use-cases/types.d.ts +0 -267
- package/esm/use-cases/types.d.ts.map +0 -1
- package/esm/use-cases/use-case-events.d.ts +0 -33
- package/esm/use-cases/use-case-events.d.ts.map +0 -1
- package/esm/use-cases/use-case-events.js +0 -65
- package/esm/use-cases/use-case-events.js.map +0 -1
- package/esm/use-cases/use-case-pipeline.d.ts +0 -29
- package/esm/use-cases/use-case-pipeline.d.ts.map +0 -1
- package/esm/use-cases/use-case-pipeline.js +0 -45
- package/esm/use-cases/use-case-pipeline.js.map +0 -1
- package/esm/use-cases/use-case.d.ts +0 -27
- package/esm/use-cases/use-case.d.ts.map +0 -1
- package/esm/use-cases/use-case.errors.d.ts +0 -6
- package/esm/use-cases/use-case.errors.d.ts.map +0 -1
- package/esm/use-cases/use-case.errors.js +0 -8
- package/esm/use-cases/use-case.errors.js.map +0 -1
- package/esm/use-cases/use-case.js +0 -138
- package/esm/use-cases/use-case.js.map +0 -1
- package/esm/use-cases/use-cases-registry.d.ts +0 -38
- package/esm/use-cases/use-cases-registry.d.ts.map +0 -1
- package/esm/use-cases/use-cases-registry.js +0 -92
- package/esm/use-cases/use-cases-registry.js.map +0 -1
- package/esm/utils/app-log.d.ts +0 -8
- package/esm/utils/app-log.d.ts.map +0 -1
- package/esm/utils/app-log.js +0 -7
- package/esm/utils/app-log.js.map +0 -1
- package/esm/utils/cleanup-temp-files.d.ts +0 -5
- package/esm/utils/cleanup-temp-files.d.ts.map +0 -1
- package/esm/utils/database-log.d.ts +0 -25
- package/esm/utils/database-log.d.ts.map +0 -1
- package/esm/utils/database-log.js +0 -43
- package/esm/utils/database-log.js.map +0 -1
- package/esm/utils/download-file.d.ts +0 -3
- package/esm/utils/download-file.d.ts.map +0 -1
- package/esm/utils/environment.d.ts +0 -4
- package/esm/utils/environment.d.ts.map +0 -1
- package/esm/utils/environment.js +0 -6
- package/esm/utils/environment.js.map +0 -1
- package/esm/utils/framework-vesion.d.ts +0 -6
- package/esm/utils/framework-vesion.d.ts.map +0 -1
- package/esm/utils/framework-vesion.js +0 -18
- package/esm/utils/framework-vesion.js.map +0 -1
- package/esm/utils/get-localized.d.ts +0 -10
- package/esm/utils/get-localized.d.ts.map +0 -1
- package/esm/utils/get-localized.js +0 -15
- package/esm/utils/get-localized.js.map +0 -1
- package/esm/utils/index.d.ts +0 -12
- package/esm/utils/index.d.ts.map +0 -1
- package/esm/utils/internal.d.ts +0 -4
- package/esm/utils/internal.d.ts.map +0 -1
- package/esm/utils/paths.d.ts +0 -55
- package/esm/utils/paths.d.ts.map +0 -1
- package/esm/utils/paths.js +0 -89
- package/esm/utils/paths.js.map +0 -1
- package/esm/utils/promise-all-object.d.ts +0 -8
- package/esm/utils/promise-all-object.d.ts.map +0 -1
- package/esm/utils/promise-all-object.js +0 -12
- package/esm/utils/promise-all-object.js.map +0 -1
- package/esm/utils/queue.d.ts +0 -49
- package/esm/utils/queue.d.ts.map +0 -1
- package/esm/utils/queue.js +0 -89
- package/esm/utils/queue.js.map +0 -1
- package/esm/utils/sleep.d.ts +0 -2
- package/esm/utils/sleep.d.ts.map +0 -1
- package/esm/utils/sleep.js +0 -3
- package/esm/utils/sleep.js.map +0 -1
- package/esm/utils/sluggable.d.ts +0 -5
- package/esm/utils/sluggable.d.ts.map +0 -1
- package/esm/utils/sluggable.js +0 -15
- package/esm/utils/sluggable.js.map +0 -1
- package/esm/utils/to-json.d.ts +0 -2
- package/esm/utils/to-json.d.ts.map +0 -1
- package/esm/utils/to-json.js +0 -26
- package/esm/utils/to-json.js.map +0 -1
- package/esm/utils/types.d.ts +0 -22
- package/esm/utils/types.d.ts.map +0 -1
- package/esm/utils/urls.d.ts +0 -21
- package/esm/utils/urls.d.ts.map +0 -1
- package/esm/utils/urls.js +0 -31
- package/esm/utils/urls.js.map +0 -1
- package/esm/validation/database/exists-except-current-id.d.ts +0 -7
- package/esm/validation/database/exists-except-current-id.d.ts.map +0 -1
- package/esm/validation/database/exists-except-current-id.js +0 -24
- package/esm/validation/database/exists-except-current-id.js.map +0 -1
- package/esm/validation/database/exists-except-current-user.d.ts +0 -7
- package/esm/validation/database/exists-except-current-user.d.ts.map +0 -1
- package/esm/validation/database/exists-except-current-user.js +0 -26
- package/esm/validation/database/exists-except-current-user.js.map +0 -1
- package/esm/validation/database/exists.d.ts +0 -7
- package/esm/validation/database/exists.d.ts.map +0 -1
- package/esm/validation/database/exists.js +0 -22
- package/esm/validation/database/exists.js.map +0 -1
- package/esm/validation/database/index.d.ts +0 -12
- package/esm/validation/database/index.d.ts.map +0 -1
- package/esm/validation/database/types.d.ts +0 -68
- package/esm/validation/database/types.d.ts.map +0 -1
- package/esm/validation/database/unique-except-current-id.d.ts +0 -7
- package/esm/validation/database/unique-except-current-id.d.ts.map +0 -1
- package/esm/validation/database/unique-except-current-id.js +0 -24
- package/esm/validation/database/unique-except-current-id.js.map +0 -1
- package/esm/validation/database/unique-except-current-user.d.ts +0 -7
- package/esm/validation/database/unique-except-current-user.d.ts.map +0 -1
- package/esm/validation/database/unique-except-current-user.js +0 -29
- package/esm/validation/database/unique-except-current-user.js.map +0 -1
- package/esm/validation/database/unique.d.ts +0 -7
- package/esm/validation/database/unique.d.ts.map +0 -1
- package/esm/validation/database/unique.js +0 -31
- package/esm/validation/database/unique.js.map +0 -1
- package/esm/validation/file/file.d.ts +0 -22
- package/esm/validation/file/file.d.ts.map +0 -1
- package/esm/validation/file/file.js +0 -60
- package/esm/validation/file/file.js.map +0 -1
- package/esm/validation/file/index.d.ts +0 -6
- package/esm/validation/file/index.d.ts.map +0 -1
- package/esm/validation/index.d.ts +0 -16
- package/esm/validation/index.d.ts.map +0 -1
- package/esm/validation/init.d.ts +0 -7
- package/esm/validation/init.d.ts.map +0 -1
- package/esm/validation/init.js +0 -36
- package/esm/validation/init.js.map +0 -1
- package/esm/validation/plugins/database-plugin.d.ts +0 -14
- package/esm/validation/plugins/database-plugin.d.ts.map +0 -1
- package/esm/validation/plugins/database-plugin.js +0 -83
- package/esm/validation/plugins/database-plugin.js.map +0 -1
- package/esm/validation/plugins/file-plugin.d.ts +0 -11
- package/esm/validation/plugins/file-plugin.d.ts.map +0 -1
- package/esm/validation/plugins/file-plugin.js +0 -17
- package/esm/validation/plugins/file-plugin.js.map +0 -1
- package/esm/validation/plugins/index.d.ts +0 -9
- package/esm/validation/plugins/index.d.ts.map +0 -1
- package/esm/validation/plugins/localized-plugin.d.ts +0 -11
- package/esm/validation/plugins/localized-plugin.d.ts.map +0 -1
- package/esm/validation/plugins/localized-plugin.js +0 -19
- package/esm/validation/plugins/localized-plugin.js.map +0 -1
- package/esm/validation/types.d.ts +0 -87
- package/esm/validation/types.d.ts.map +0 -1
- package/esm/validation/validateAll.d.ts +0 -7
- package/esm/validation/validateAll.d.ts.map +0 -1
- package/esm/validation/validateAll.js +0 -60
- package/esm/validation/validateAll.js.map +0 -1
- package/esm/validation/validators/file-validator.d.ts +0 -62
- package/esm/validation/validators/file-validator.d.ts.map +0 -1
- package/esm/validation/validators/file-validator.js +0 -136
- package/esm/validation/validators/file-validator.js.map +0 -1
- package/esm/validation/validators/index.d.ts +0 -7
- package/esm/validation/validators/index.d.ts.map +0 -1
- package/esm/warlock-config/default-configurations.d.ts +0 -3
- package/esm/warlock-config/default-configurations.d.ts.map +0 -1
- package/esm/warlock-config/default-configurations.js +0 -8
- package/esm/warlock-config/default-configurations.js.map +0 -1
- package/esm/warlock-config/define-config.d.ts +0 -3
- package/esm/warlock-config/define-config.d.ts.map +0 -1
- package/esm/warlock-config/define-config.js +0 -3
- package/esm/warlock-config/define-config.js.map +0 -1
- package/esm/warlock-config/index.d.ts +0 -4
- package/esm/warlock-config/index.d.ts.map +0 -1
- package/esm/warlock-config/types.d.ts +0 -129
- package/esm/warlock-config/types.d.ts.map +0 -1
- package/esm/warlock-config/warlock-config.manager.d.ts +0 -83
- package/esm/warlock-config/warlock-config.manager.d.ts.map +0 -1
- package/esm/warlock-config/warlock-config.manager.js +0 -141
- package/esm/warlock-config/warlock-config.manager.js.map +0 -1
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: use-model-transformers
|
|
3
|
+
description: 'Three schema-side helpers — `useHashedPassword()` (bcrypt on save) attaches via `.addTransformer(...)`; `useComputedSlug(field?, scope?)` (auto-slug from another field) and `useComputedModel(callback)` (arbitrary computed-on-save value) attach via `v.computed(...)`. Triggers: `useHashedPassword`, `useComputedSlug`, `useComputedModel`, `.addTransformer`, `v.computed`, `ComputedCallback`; "auto-hash a password field", "auto-slug from title on save", "derive a value at write time", "declarative model transformers"; typical import `import { useHashedPassword, useComputedSlug } from "@warlock.js/core"`. Skip: bcrypt setup details — `@warlock.js/core/hash-password/SKILL.md`; repository writes — `@warlock.js/core/use-repository/SKILL.md`; output filtering — `@warlock.js/core/define-resource/SKILL.md`; competing patterns: manual `await hashPassword(input)` in services, ORM lifecycle hooks.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Warlock — declare model transformers
|
|
7
|
+
|
|
8
|
+
Three helpers in `@warlock.js/core` plug into Seal schemas to compute or mutate a field at write time. They sit between "controllers + services" (the mutable-input layer) and "the database row" (the stored state) — so the value the DB sees is always derived, even if the caller didn't think about it.
|
|
9
|
+
|
|
10
|
+
| Helper | Job | Attaches via | Behavior |
|
|
11
|
+
| --- | --- | --- | --- |
|
|
12
|
+
| `useHashedPassword()` | bcrypt-hash a password field on save | `.addTransformer(useHashedPassword())` on the field | Hash on new row; hash on change; pass through on no-change |
|
|
13
|
+
| `useComputedSlug(field?, scope?)` | Derive a slug from another field | `v.computed(useComputedSlug("title"))` | Compute on every save where the source field is set |
|
|
14
|
+
| `useComputedModel(callback)` | Any custom derived value | `v.computed(useComputedModel(...))` | Runs your callback with `(data, model, context)` |
|
|
15
|
+
|
|
16
|
+
All three are imported from `@warlock.js/core` (despite living in `src/database/utils.ts` under the hood).
|
|
17
|
+
|
|
18
|
+
**Why the split:** `useHashedPassword()` returns a Seal `TransformerCallback` (built via cascade's `useModelTransformer`), so it mutates the field's own value through `.addTransformer(...)`. `useComputedSlug()` / `useComputedModel()` return a Seal `ComputedCallback` (signature `(data, context)`) — those are wired with the `v.computed(...)` field validator, **not** `.addTransformer(...)`. Passing a computed helper to `.addTransformer(...)` is wrong: the second argument shapes differ (`{ options, context }` vs bare `context`), so it misbehaves at runtime.
|
|
19
|
+
|
|
20
|
+
## The shape
|
|
21
|
+
|
|
22
|
+
```ts title="src/app/users/models/user/user.model.ts"
|
|
23
|
+
import { useHashedPassword } from "@warlock.js/core";
|
|
24
|
+
import { type Infer, v } from "@warlock.js/seal";
|
|
25
|
+
|
|
26
|
+
export const userSchema = v.object({
|
|
27
|
+
email: v.email().unique("User"),
|
|
28
|
+
password: v.string().requiredIfEmpty("id").addTransformer(useHashedPassword()),
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
export type UserSchema = Infer<typeof userSchema>;
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
```ts title="src/app/articles/models/article/article.model.ts"
|
|
35
|
+
import { useComputedSlug } from "@warlock.js/core";
|
|
36
|
+
import { type Infer, v } from "@warlock.js/seal";
|
|
37
|
+
|
|
38
|
+
export const articleSchema = v.object({
|
|
39
|
+
title: v.string(),
|
|
40
|
+
slug: v.computed(useComputedSlug("title")),
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
export type ArticleSchema = Infer<typeof articleSchema>;
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Two attachments, two completely different behaviors — `useHashedPassword()` rides on `.addTransformer(...)` (it mutates the field), while `useComputedSlug()` rides on `v.computed(...)` (it derives the field).
|
|
47
|
+
|
|
48
|
+
## `useHashedPassword()` — bcrypt on save
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
password: v.string().addTransformer(useHashedPassword()),
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
What it does at save time:
|
|
55
|
+
|
|
56
|
+
| Situation | Behavior |
|
|
57
|
+
| ------------------------------- | ------------------------------------------- |
|
|
58
|
+
| New row, password set | Hash the value before insert. |
|
|
59
|
+
| Existing row, password changed | Re-hash the new value. |
|
|
60
|
+
| Existing row, password unchanged | Pass through (no re-hashing — stored hash preserved). |
|
|
61
|
+
| Empty / undefined value | Pass through untouched. |
|
|
62
|
+
|
|
63
|
+
Calls `authService.hashPassword(String(value))` under the hood — same bcryptjs path as the standalone `hashPassword()` helper. See [`hash-password/SKILL.md`](../hash-password/SKILL.md) for full bcrypt setup (salt rounds, `yarn add bcryptjs`).
|
|
64
|
+
|
|
65
|
+
### Why declarative wins
|
|
66
|
+
|
|
67
|
+
Without the transformer, every code path that writes a password has to remember:
|
|
68
|
+
|
|
69
|
+
```ts
|
|
70
|
+
await User.create({
|
|
71
|
+
email: input.email,
|
|
72
|
+
password: await hashPassword(input.password), // easy to forget
|
|
73
|
+
});
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Forget the hash once — even in a one-off seed or admin tool — and you've stored plaintext. The transformer makes the wrong thing impossible: the field can only end up hashed, no matter who wrote it.
|
|
77
|
+
|
|
78
|
+
Pass plaintext to `User.create({ password: input.password })` and the transformer handles the rest.
|
|
79
|
+
|
|
80
|
+
## `useComputedSlug(field?, scope?)` — auto-slug from another field
|
|
81
|
+
|
|
82
|
+
```ts
|
|
83
|
+
slug: v.computed(useComputedSlug("title")),
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
- **`field`** *(default `"title"`)* — the source field name to slugify.
|
|
87
|
+
- **`scope`** — `"sibling"` *(default)* or `"global"`. `"sibling"` reads `data[field]` from the same object being saved; `"global"` reads `get(context.allValues, field)` (the root context — useful in nested schemas where the source field lives on a parent).
|
|
88
|
+
|
|
89
|
+
What it does:
|
|
90
|
+
|
|
91
|
+
| Situation | Behavior |
|
|
92
|
+
| ---------------------------------- | ------------------------------------------ |
|
|
93
|
+
| Source field has a value | Return `slugify(value)` — overwrite the slug. |
|
|
94
|
+
| Source field is empty / undefined | Return `model.get(field)` — i.e. the model's existing value for the **source** field (e.g. the stored `title`), not the existing slug. |
|
|
95
|
+
|
|
96
|
+
So if a caller sets `title: "Hello World"` without touching `slug`, the saved row has `slug: "hello-world"`. If they explicitly set `slug: "custom-handle"` AND leave `title` populated, the computed field **still overwrites** with the slugified title — because the source value is set. (Note the empty-source fallback returns `model.get(field)` keyed by the *source* field name, not the slug — a quirk of the implementation; if `title` is also empty on the model you get whatever the source field holds, which may be `undefined`.)
|
|
97
|
+
|
|
98
|
+
To allow explicit slug overrides, branch in your service before calling save, or skip the transformer for that one save (model-level mutation).
|
|
99
|
+
|
|
100
|
+
```ts title="example service — letting the transformer slug"
|
|
101
|
+
await Article.create({
|
|
102
|
+
title: "Hello World",
|
|
103
|
+
// slug auto-derived → "hello-world"
|
|
104
|
+
});
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
```ts title="example service — manual slug, bypassing"
|
|
108
|
+
const article = new Article();
|
|
109
|
+
article.set("title", "Hello World");
|
|
110
|
+
article.set("slug", "my-custom-handle");
|
|
111
|
+
// The transformer still fires and overwrites — to truly bypass,
|
|
112
|
+
// store the slug on a separate non-transformed field instead.
|
|
113
|
+
await article.save();
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
The slug uses `@mongez/slug` under the hood — sensible defaults (lowercase, hyphenated, ASCII transliteration).
|
|
117
|
+
|
|
118
|
+
## `useComputedModel(callback)` — arbitrary derived values
|
|
119
|
+
|
|
120
|
+
The general-purpose computed-value helper. Use it when the value depends on the row in non-trivial ways:
|
|
121
|
+
|
|
122
|
+
```ts
|
|
123
|
+
import { useComputedModel } from "@warlock.js/core";
|
|
124
|
+
|
|
125
|
+
slug: v.computed(useComputedModel((data, model, context) => {
|
|
126
|
+
// data — the current schema-level input object
|
|
127
|
+
// model — the Model instance being saved
|
|
128
|
+
// context — Seal's SchemaContext (allValues, rootContext, etc.)
|
|
129
|
+
|
|
130
|
+
return `${data.category}-${slugify(data.title)}`;
|
|
131
|
+
})),
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
`useComputedSlug` is implemented on top of `useComputedModel` — they share the same signature. Reach for `useComputedSlug` for the common slug case; reach for `useComputedModel` when you need to combine fields, branch on env, or call out to a service.
|
|
135
|
+
|
|
136
|
+
### Signature
|
|
137
|
+
|
|
138
|
+
```ts
|
|
139
|
+
type ComputedCallbackModel = (
|
|
140
|
+
data: any, // the schema input being saved
|
|
141
|
+
model: Model, // the Cascade model instance
|
|
142
|
+
context: SchemaContext,
|
|
143
|
+
) => any | Promise<any>;
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
The callback can be async — return a `Promise<T>` and the schema layer awaits it.
|
|
147
|
+
|
|
148
|
+
## Patterns
|
|
149
|
+
|
|
150
|
+
### Hash + computed slug on the same model
|
|
151
|
+
|
|
152
|
+
```ts
|
|
153
|
+
export const userSchema = v.object({
|
|
154
|
+
email: v.email().unique("User"),
|
|
155
|
+
password: v.string().requiredIfEmpty("id").addTransformer(useHashedPassword()),
|
|
156
|
+
display_name: v.string(),
|
|
157
|
+
handle: v.computed(useComputedSlug("display_name")),
|
|
158
|
+
});
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
The two attachment kinds coexist — `password` mutates via `.addTransformer(...)`, `handle` derives via `v.computed(...)`. Each fires at save time, independent of the other.
|
|
162
|
+
|
|
163
|
+
### Derived total from line items
|
|
164
|
+
|
|
165
|
+
```ts
|
|
166
|
+
total: v.computed(useComputedModel((data) => {
|
|
167
|
+
const items = (data.items as Array<{ price: number; quantity: number }>) ?? [];
|
|
168
|
+
return items.reduce((sum, it) => sum + it.price * it.quantity, 0);
|
|
169
|
+
})),
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
Whenever `items` is part of the save payload, `total` is overwritten with the computed sum. Callers literally can't set `total` to a wrong value.
|
|
173
|
+
|
|
174
|
+
### Conditional compute
|
|
175
|
+
|
|
176
|
+
```ts
|
|
177
|
+
status: v.computed(useComputedModel((data, model) => {
|
|
178
|
+
// First save → "draft"
|
|
179
|
+
if (!model.id) return "draft";
|
|
180
|
+
// Subsequent saves → leave the existing status alone
|
|
181
|
+
return model.get("status");
|
|
182
|
+
})),
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Use the `model` argument to branch on "is this a new row or an update."
|
|
186
|
+
|
|
187
|
+
### Multi-locale slugs
|
|
188
|
+
|
|
189
|
+
```ts
|
|
190
|
+
slug_en: v.computed(useComputedSlug("title_en")),
|
|
191
|
+
slug_ar: v.computed(useComputedSlug("title_ar")),
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
One computed field per locale. Cleaner than juggling multi-locale logic in `useComputedModel`.
|
|
195
|
+
|
|
196
|
+
## When NOT to use a transformer
|
|
197
|
+
|
|
198
|
+
Transformers live at the **schema layer** — they fire on every `create()` / `save()`. They're not the right tool when:
|
|
199
|
+
|
|
200
|
+
- **The derived value depends on side effects** (an API call, external lookup, time-bounded data). Do that in a service; service code is testable and observable. A transformer that calls an external API on every save is hard to reason about.
|
|
201
|
+
- **You need conditional skipping by caller intent.** Transformers run unconditionally based on the schema. A service-side mutation lets the caller opt in / out per call.
|
|
202
|
+
- **The "compute" requires reading other rows.** Possible (await DB lookups), but it puts query latency on the save path. Often better to compute upstream and pass the value in.
|
|
203
|
+
|
|
204
|
+
Rule of thumb: transformers are for **pure, deterministic** transforms of the row's own fields. Hashing, slugifying, summing, normalizing — yes. Cross-row lookups, network calls, audit-side effects — no.
|
|
205
|
+
|
|
206
|
+
## Gotchas
|
|
207
|
+
|
|
208
|
+
- **All three are imported from `@warlock.js/core`.** They live in `src/database/utils.ts` internally, but the public surface is the core package. `.addTransformer(...)` and `v.computed(...)` are Seal's APIs, but these helpers are Warlock's — don't reach into `@warlock.js/cascade` or `@warlock.js/seal` for them.
|
|
209
|
+
- **Match the attachment to the helper.** `useHashedPassword()` → `.addTransformer(...)` (it's a `TransformerCallback`). `useComputedSlug()` / `useComputedModel()` → `v.computed(...)` (they're `ComputedCallback`s). Cross-wiring them is a runtime bug, not just a type error.
|
|
210
|
+
- **`useHashedPassword` only re-hashes on actual change.** It returns the value unchanged when `!isNew && !isChanged`, where `isChanged` comes from the model's dirty tracking (`model.isDirty(column)`). Save an already-stored hash and the field isn't marked dirty, so it isn't re-hashed.
|
|
211
|
+
- **`useComputedSlug` overwrites unconditionally when the source field is present.** Set both `title` and `slug` in one save — the slug derived from `title` wins. When the source is empty it falls back to `model.get(field)` keyed by the **source** field name (not the slug field). To allow user-customized slugs, keep them on a separate field that isn't computed.
|
|
212
|
+
- **Computed callbacks run through the save pipeline.** A slow callback (an external API call) blocks every save. Keep them fast and deterministic. They may be async — `v.computed`'s validator awaits the result.
|
|
213
|
+
- **`v.computed(...)` is the write-time computed field.** The value is computed during validation and persisted on the row. There is no separate `.compute()` method on a field — `useComputedSlug` / `useComputedModel` produce the `ComputedCallback` you hand to `v.computed(...)`.
|
|
214
|
+
|
|
215
|
+
## See also
|
|
216
|
+
|
|
217
|
+
- [`hash-password/SKILL.md`](../hash-password/SKILL.md) — the bcrypt setup that `useHashedPassword` calls under the hood; salt rounds, `yarn add bcryptjs`.
|
|
218
|
+
- [`use-repository/SKILL.md`](../use-repository/SKILL.md) — where `create` / `save` calls happen that trigger the transformers.
|
|
219
|
+
- [`define-resource/SKILL.md`](../define-resource/SKILL.md) — filtering transformed fields (`password`) out of API responses.
|
|
220
|
+
- [`warlock-conventions/SKILL.md`](../warlock-conventions/SKILL.md) — schema files live in `src/app/<module>/models/<entity>/<entity>.model.ts`.
|
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: use-repository
|
|
3
|
+
description: 'Subclass `RepositoryManager` for data access — declare `source`, `filterBy`, `defaultOptions`, then call `list()`/`listCached()`/`find()`/`create()`/`update()`/`delete()` (and the active/cached/cursor variants). Triggers: `RepositoryManager`, `FilterRules`, `RepositoryOptions`, `.list`, `.listCached`, `.find`, `.findCached`, `.create`, `.update`, `.delete`, `simpleSelectColumns`; "create a repository", "filter rules for a list endpoint", "cursor vs page pagination", "cached vs uncached read"; typical import `import { RepositoryManager } from "@warlock.js/core"`. Skip: cache singleton — `@warlock.js/cache/cache-basics/SKILL.md`; use-case pipelines — `@warlock.js/core/write-use-case/SKILL.md`; wire mapping — `@warlock.js/core/define-resource/SKILL.md`; competing libs `typeorm` Repository, `prisma.client.<model>`, `@nestjs/typeorm`.'
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Warlock — use a repository
|
|
7
|
+
|
|
8
|
+
A repository is a thin wrapper around a Cascade model that centralizes filtering, pagination, and caching. You subclass `RepositoryManager<TModel, TFilter>`, declare `source`/`filterBy`/`defaultOptions`, export a singleton, and call its methods from services. Controllers never touch repositories directly.
|
|
9
|
+
|
|
10
|
+
## The shape
|
|
11
|
+
|
|
12
|
+
```ts title="src/app/faqs/repositories/faqs.repository.ts"
|
|
13
|
+
import type { FilterRules, RepositoryOptions } from "@warlock.js/core";
|
|
14
|
+
import { RepositoryManager } from "@warlock.js/core";
|
|
15
|
+
import { Faq } from "../models/faq";
|
|
16
|
+
|
|
17
|
+
type FaqListFilter = {
|
|
18
|
+
ids?: string[];
|
|
19
|
+
id?: string;
|
|
20
|
+
organization_id?: string;
|
|
21
|
+
project_id?: string;
|
|
22
|
+
status?: string;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export type FaqListOptions = RepositoryOptions & FaqListFilter;
|
|
26
|
+
|
|
27
|
+
class FaqsRepository extends RepositoryManager<Faq, FaqListOptions> {
|
|
28
|
+
public source = Faq;
|
|
29
|
+
|
|
30
|
+
public simpleSelectColumns: string[] = ["id"];
|
|
31
|
+
|
|
32
|
+
public filterBy: FilterRules = {
|
|
33
|
+
id: "=",
|
|
34
|
+
ids: ["in", "id"],
|
|
35
|
+
organization_id: "=",
|
|
36
|
+
project_id: "=",
|
|
37
|
+
status: "=",
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
public defaultOptions: RepositoryOptions = {
|
|
41
|
+
orderBy: { id: "desc" },
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export const faqsRepository = new FaqsRepository();
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Five lines do the heavy lifting:
|
|
49
|
+
|
|
50
|
+
1. **`source = Faq`** — Cascade model the repo wraps; auto-instantiates a `CascadeAdapter`.
|
|
51
|
+
2. **`simpleSelectColumns`** — projection used when callers pass `simpleSelect: true`.
|
|
52
|
+
3. **`filterBy`** — filter-key → operator map; powers the auto-applied WHERE clauses.
|
|
53
|
+
4. **`defaultOptions`** — applied to every call (`orderBy`, default `limit`, etc.).
|
|
54
|
+
5. **`new FaqsRepository()`** singleton — import this everywhere; never instantiate again.
|
|
55
|
+
|
|
56
|
+
The class is intentionally private — only the singleton escapes the module. Scaffold with `yarn warlock generate.repository <module>/<entity>`.
|
|
57
|
+
|
|
58
|
+
## The `filterBy` rules
|
|
59
|
+
|
|
60
|
+
A `FilterRules` map. Keys are filter input names; values are operators or `[operator, column]` tuples (when the input name differs from the column):
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
public filterBy: FilterRules = {
|
|
64
|
+
// input "id" → WHERE id = ?
|
|
65
|
+
id: "=",
|
|
66
|
+
|
|
67
|
+
// input "ids" → WHERE id IN (?)
|
|
68
|
+
ids: ["in", "id"],
|
|
69
|
+
|
|
70
|
+
// input "name" → WHERE name LIKE %?%
|
|
71
|
+
name: "like",
|
|
72
|
+
|
|
73
|
+
// input "price_min" → WHERE price >= ?
|
|
74
|
+
price_min: ["int>=", "price"],
|
|
75
|
+
|
|
76
|
+
// input "createdBetween" → WHERE created_at BETWEEN ? AND ?
|
|
77
|
+
createdBetween: ["dateBetween", "created_at"],
|
|
78
|
+
|
|
79
|
+
// custom — full control
|
|
80
|
+
search: (value, query, ctx) => {
|
|
81
|
+
query.where((qb) => {
|
|
82
|
+
qb.where("name", "like", value).orWhere("description", "like", value);
|
|
83
|
+
});
|
|
84
|
+
},
|
|
85
|
+
};
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Operators (from `@warlock.js/core/src/repositories/contracts/types.ts`, `FilterOperator`):
|
|
89
|
+
|
|
90
|
+
- SQL-style: `=`, `!=`, `<>`, `>`, `>=`, `<`, `<=`, `like`, `not like`, `in`, `not in`, `between`, `not between`
|
|
91
|
+
- Typed coercion: `int`, `int>`, `int>=`, `int<`, `int<=`, `inInt`, `!int`, `integer`, `float`, `double`, `inFloat`, `number`, `inNumber`, `bool`, `boolean`, `null`, `notNull`, `!null`
|
|
92
|
+
- Dates: `date`, `date>`, `date>=`, `date<`, `date<=`, `dateBetween`, `inDate`, `dateTime`, `dateTime>`, `dateTime>=`, `dateTime<`, `dateTime<=`, `dateTimeBetween`, `inDateTime`
|
|
93
|
+
- Special: `location`, `scope`, `with`, `joinWith`, `similarTo`
|
|
94
|
+
|
|
95
|
+
For custom logic, pass a function: `(value, query, context) => void` — mutate `query` directly with the query-builder API.
|
|
96
|
+
|
|
97
|
+
## Method surface
|
|
98
|
+
|
|
99
|
+
From `@warlock.js/core/src/repositories/repository.manager.ts`. Every method has an `…Active` counterpart that adds the active-record filter (`isActive = true`), and most have a `…Cached` counterpart that reads/writes through the cache layer.
|
|
100
|
+
|
|
101
|
+
### Finding
|
|
102
|
+
|
|
103
|
+
```ts
|
|
104
|
+
await repo.find(id); // by primary key (or model instance)
|
|
105
|
+
await repo.findBy(column, value);
|
|
106
|
+
await repo.first(options?); // first matching `options`
|
|
107
|
+
await repo.firstId(options?); // → id only
|
|
108
|
+
await repo.exists(options?); // → boolean
|
|
109
|
+
await repo.idExists(id); // → boolean
|
|
110
|
+
await repo.last(options?); // orderBy id desc
|
|
111
|
+
|
|
112
|
+
await repo.findCached(id); // alias of getCached
|
|
113
|
+
await repo.getCached(id);
|
|
114
|
+
await repo.getCachedBy(column, value);
|
|
115
|
+
await repo.firstCached(options?);
|
|
116
|
+
|
|
117
|
+
await repo.findActive(id);
|
|
118
|
+
await repo.firstActive(options?);
|
|
119
|
+
await repo.firstActiveCached(options?);
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Listing
|
|
123
|
+
|
|
124
|
+
```ts
|
|
125
|
+
// Page-based (default)
|
|
126
|
+
const { data, pagination } = await repo.list({ page: 2, limit: 10, status: "active" });
|
|
127
|
+
|
|
128
|
+
// Cursor-based
|
|
129
|
+
const { data, pagination } = await repo.list({
|
|
130
|
+
paginationMode: "cursor",
|
|
131
|
+
limit: 20,
|
|
132
|
+
cursor: lastSeenId,
|
|
133
|
+
direction: "next",
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
await repo.all(options?); // unpaginated array
|
|
137
|
+
await repo.listActive(options?);
|
|
138
|
+
await repo.listCached(options?); // page-based + cache
|
|
139
|
+
await repo.allCached(options?);
|
|
140
|
+
await repo.latest(options?); // orderBy id desc + paginate
|
|
141
|
+
await repo.oldest(options?);
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### Pagination shape
|
|
145
|
+
|
|
146
|
+
```ts
|
|
147
|
+
// page-based — repo.list({ page, limit })
|
|
148
|
+
type PaginationResult<T> = {
|
|
149
|
+
data: T[];
|
|
150
|
+
pagination: {
|
|
151
|
+
limit: number;
|
|
152
|
+
result: number; // count in this page
|
|
153
|
+
page: number; // 1-indexed
|
|
154
|
+
total: number; // total rows
|
|
155
|
+
pages: number; // total pages
|
|
156
|
+
};
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
// cursor-based — repo.list({ paginationMode: "cursor", cursor, limit })
|
|
160
|
+
type CursorPaginationResult<T> = {
|
|
161
|
+
data: T[];
|
|
162
|
+
pagination: {
|
|
163
|
+
limit: number;
|
|
164
|
+
result: number;
|
|
165
|
+
hasMore: boolean;
|
|
166
|
+
nextCursor?: string | number;
|
|
167
|
+
prevCursor?: string | number;
|
|
168
|
+
};
|
|
169
|
+
};
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### CRUD
|
|
173
|
+
|
|
174
|
+
```ts
|
|
175
|
+
await repo.create(data); // → created model
|
|
176
|
+
await repo.update(id, data); // → updated model
|
|
177
|
+
await repo.delete(id); // → void
|
|
178
|
+
|
|
179
|
+
await repo.updateMany(filter, data); // → number affected
|
|
180
|
+
await repo.deleteMany(filter); // → number affected
|
|
181
|
+
|
|
182
|
+
await repo.findOrCreate(where, data);
|
|
183
|
+
await repo.updateOrCreate(where, data);
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
### Counting
|
|
187
|
+
|
|
188
|
+
```ts
|
|
189
|
+
await repo.count(options?); // → number
|
|
190
|
+
await repo.countActive(options?);
|
|
191
|
+
await repo.countCached(options?);
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
### Chunking
|
|
195
|
+
|
|
196
|
+
```ts
|
|
197
|
+
await repo.chunk(500, async (rows, index) => {
|
|
198
|
+
// process 500 at a time; return false to stop early
|
|
199
|
+
});
|
|
200
|
+
|
|
201
|
+
await repo.chunkActive(500, async (rows, index) => {});
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
### Cache control
|
|
205
|
+
|
|
206
|
+
```ts
|
|
207
|
+
await repo.clearCache(); // wipe all repo cache
|
|
208
|
+
await repo.clearCache({ id: 5 });
|
|
209
|
+
await repo.clearModelCache(model);
|
|
210
|
+
await repo.cacheModel(model); // manual cache write
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
## Cached vs uncached
|
|
214
|
+
|
|
215
|
+
`listCached` / `firstCached` / `getCached` etc. hit the cache layer (`@warlock.js/cache`) first; on miss, they execute and cache. Cache invalidation is automatic on `create`/`update`/`delete` events that the adapter listens to.
|
|
216
|
+
|
|
217
|
+
Use cached methods by default. Drop to uncached when:
|
|
218
|
+
|
|
219
|
+
- The data changes too fast for the cache TTL to be useful.
|
|
220
|
+
- You need transactional consistency with a write you just made (cache invalidation runs after the event fires; a read in the same tick may still hit stale).
|
|
221
|
+
- Diagnosing a cache-related bug.
|
|
222
|
+
|
|
223
|
+
```ts
|
|
224
|
+
// Default — go through cache
|
|
225
|
+
await faqsRepository.listCached({ organization_id, status: "published" });
|
|
226
|
+
|
|
227
|
+
// Diagnostic / write-then-read flow — bypass cache
|
|
228
|
+
await faqsRepository.list({ organization_id, status: "published" });
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Calling from a service
|
|
232
|
+
|
|
233
|
+
```ts title="src/app/faqs/services/list-faqs.service.ts"
|
|
234
|
+
import { faqsRepository, type FaqListOptions } from "../repositories/faqs.repository";
|
|
235
|
+
|
|
236
|
+
export async function listFaqsService(filters: FaqListOptions) {
|
|
237
|
+
return faqsRepository.listCached(filters);
|
|
238
|
+
}
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
```ts title="src/app/faqs/controllers/list-faqs.controller.ts"
|
|
242
|
+
import type { RequestHandler, Response } from "@warlock.js/core";
|
|
243
|
+
import { listFaqsService } from "../services/list-faqs.service";
|
|
244
|
+
|
|
245
|
+
export const listFaqsController: RequestHandler = async (request, response: Response) => {
|
|
246
|
+
const { data, pagination } = await listFaqsService({
|
|
247
|
+
...request.all(),
|
|
248
|
+
organization_id: request.user.organizationId,
|
|
249
|
+
});
|
|
250
|
+
|
|
251
|
+
return response.success({ data, pagination });
|
|
252
|
+
};
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
## When to drop to `Model.query()`
|
|
256
|
+
|
|
257
|
+
Repositories are for the 90% case: filter, paginate, cache. For anything beyond — joins, aggregates, raw expressions, complex `OR` trees — drop to the model's query builder inside a service:
|
|
258
|
+
|
|
259
|
+
```ts title="src/app/orders/services/order-stats.service.ts"
|
|
260
|
+
import { Order } from "../models/order";
|
|
261
|
+
|
|
262
|
+
export async function orderStatsByMonth(organizationId: string) {
|
|
263
|
+
return Order.query()
|
|
264
|
+
.where("organization_id", organizationId)
|
|
265
|
+
.groupBy(Order.query().raw("DATE_TRUNC('month', created_at)"))
|
|
266
|
+
.select([
|
|
267
|
+
Order.query().raw("DATE_TRUNC('month', created_at) as month"),
|
|
268
|
+
Order.query().raw("COUNT(*) as count"),
|
|
269
|
+
Order.query().raw("SUM(total) as revenue"),
|
|
270
|
+
])
|
|
271
|
+
.get();
|
|
272
|
+
}
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
A repository method exposing `query()` is also fine for service-level shaping:
|
|
276
|
+
|
|
277
|
+
```ts
|
|
278
|
+
class OrdersRepository extends RepositoryManager<Order> {
|
|
279
|
+
public source = Order;
|
|
280
|
+
|
|
281
|
+
public async paidLastWeek(organizationId: string) {
|
|
282
|
+
return this.newQuery()
|
|
283
|
+
.where({ organization_id: organizationId, status: "paid" })
|
|
284
|
+
.where("created_at", ">", new Date(Date.now() - 7 * 86_400_000))
|
|
285
|
+
.get();
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
`this.newQuery()` returns a fresh `QueryBuilderContract` for the underlying source — no cache, no filter rules, just SQL.
|
|
291
|
+
|
|
292
|
+
## Repository lifecycle hooks
|
|
293
|
+
|
|
294
|
+
Override in the subclass for cross-cutting behavior:
|
|
295
|
+
|
|
296
|
+
```ts
|
|
297
|
+
class ProductsRepository extends RepositoryManager<Product> {
|
|
298
|
+
public source = Product;
|
|
299
|
+
|
|
300
|
+
protected async onCreate(product: Product, data: any) {
|
|
301
|
+
await searchIndex.add(product);
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
protected async onUpdate(product: Product, data: any) {
|
|
305
|
+
await searchIndex.update(product);
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
protected async onDelete(id: string | number) {
|
|
309
|
+
await searchIndex.remove(id);
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
Available hooks: `beforeListing`, `onList`, `onCreating`, `onCreate`, `onUpdating`, `onUpdate`, `onSaving`, `onSave`, `onDeleting`, `onDelete`. They run inside the repository's adapter — no need to wire events manually.
|
|
315
|
+
|
|
316
|
+
## Common patterns
|
|
317
|
+
|
|
318
|
+
### Typed list filter
|
|
319
|
+
|
|
320
|
+
The second generic on `RepositoryManager` makes `options.<filter>` autocomplete from the caller side:
|
|
321
|
+
|
|
322
|
+
```ts
|
|
323
|
+
type ProductListFilter = {
|
|
324
|
+
category_id?: string;
|
|
325
|
+
price_min?: number;
|
|
326
|
+
price_max?: number;
|
|
327
|
+
in_stock?: boolean;
|
|
328
|
+
};
|
|
329
|
+
|
|
330
|
+
export type ProductListOptions = RepositoryOptions & ProductListFilter;
|
|
331
|
+
|
|
332
|
+
class ProductsRepository extends RepositoryManager<Product, ProductListOptions> {
|
|
333
|
+
public source = Product;
|
|
334
|
+
|
|
335
|
+
public filterBy: FilterRules = {
|
|
336
|
+
category_id: "=",
|
|
337
|
+
price_min: ["int>=", "price"],
|
|
338
|
+
price_max: ["int<=", "price"],
|
|
339
|
+
in_stock: ["bool", "is_in_stock"],
|
|
340
|
+
};
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
// Caller side — typed
|
|
344
|
+
await productsRepository.list({ category_id, price_min: 10, in_stock: true });
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
### `simpleSelect` for lightweight payloads
|
|
348
|
+
|
|
349
|
+
```ts
|
|
350
|
+
class UsersRepository extends RepositoryManager<User> {
|
|
351
|
+
public source = User;
|
|
352
|
+
public simpleSelectColumns = ["id", "name", "email"];
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
await usersRepository.list({ simpleSelect: true });
|
|
356
|
+
// only id, name, email selected
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
### Custom filter function
|
|
360
|
+
|
|
361
|
+
```ts
|
|
362
|
+
public filterBy: FilterRules = {
|
|
363
|
+
search: (value, query) => {
|
|
364
|
+
query.where((qb) => {
|
|
365
|
+
qb.where("name", "like", `%${value}%`)
|
|
366
|
+
.orWhere("description", "like", `%${value}%`)
|
|
367
|
+
.orWhere("sku", "=", value);
|
|
368
|
+
});
|
|
369
|
+
},
|
|
370
|
+
};
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
The third arg is a context object — `{ allValues, dateFormat, ... }` — for filters that compose with other inputs.
|
|
374
|
+
|
|
375
|
+
## Gotchas
|
|
376
|
+
|
|
377
|
+
- **One singleton per repository.** Module-export `new FaqsRepository()` at the bottom; everyone imports that. Event listeners are wired on construction — instantiating twice double-registers them.
|
|
378
|
+
- **Don't access protected members from outside.** `defaultOptions`, `filterBy`, `cacheDriver`, `name` are `protected` for a reason. Configure via subclass; never reach in.
|
|
379
|
+
- **`cursor` pagination owns its sort key.** If you pass `paginationMode: "cursor"` _and_ an `orderBy: { id: "asc" }` that conflicts with the cursor column, the framework warns and ignores your `orderBy`. Use cursor pagination's `direction` and `cursorColumn` options instead.
|
|
380
|
+
- **`listCached` only supports page-based pagination.** Cursor mode bypasses the cache.
|
|
381
|
+
- **`findCached` is an alias of `getCached`.** Both look up by `id` through the cache. There is no `findCachedBy` — use `getCachedBy(column, value)`.
|
|
382
|
+
- **`create`/`update`/`delete` clear cache on every write.** That's why `listCached` is usually safe. If you write outside the repository (raw query, bulk insert), the cache won't invalidate — call `repo.clearCache()` manually.
|
|
383
|
+
- **The repository owns `clearCache` per repo + per model.** It doesn't reach into other repositories. If a write in one module affects another's cache, invalidate explicitly from a service.
|
|
384
|
+
- **Adapter init is `setTimeout(0)` delayed.** Don't call repository methods synchronously inside the constructor — they'll fire before the adapter is ready.
|
|
385
|
+
|
|
386
|
+
## See also
|
|
387
|
+
|
|
388
|
+
- [`create-module/SKILL.md`](../create-module/SKILL.md) — `warlock generate.repository` and where the file lives.
|
|
389
|
+
- [`@warlock.js/cache/cache-basics/SKILL.md`](../../../cache/skills/cache-basics/SKILL.md) — the cache singleton behind `listCached` / `getCached`. See sibling skills (`pick-cache-driver`, `use-swr`) for related tasks.
|
|
390
|
+
- [`write-use-case/SKILL.md`](../write-use-case/SKILL.md) — calling repositories from a use-case handler.
|
|
391
|
+
- [`define-resource/SKILL.md`](../define-resource/SKILL.md) — mapping repository output to the wire format.
|
|
392
|
+
- [`create-controller/SKILL.md`](../create-controller/SKILL.md) — services that consume repositories from the controller edge.
|
|
393
|
+
- [`warlock-conventions/SKILL.md`](../warlock-conventions/SKILL.md) — controller → service → repository → model layering.
|