@warlock.js/core 4.0.10 → 4.0.15
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/esm/cli/cli-commands.manager.js +344 -0
- package/esm/cli/cli-commands.manager.js.map +1 -0
- package/esm/cli/cli-commands.utils.js +182 -0
- package/esm/cli/cli-commands.utils.js.map +1 -0
- package/esm/cli/commands/build.command.js +8 -0
- package/esm/cli/commands/build.command.js.map +1 -0
- package/esm/cli/commands/dev-server.command.js +17 -0
- package/esm/cli/commands/dev-server.command.js.map +1 -0
- package/esm/cli/commands/start-production.command.js +65 -0
- package/esm/cli/commands/start-production.command.js.map +1 -0
- package/esm/cli/commands/typings-generator.command.js +40 -0
- package/esm/cli/commands/typings-generator.command.js.map +1 -0
- package/esm/cli/commands-loader.js +45 -0
- package/esm/cli/commands-loader.js.map +1 -0
- package/esm/cli/framework-cli-commands.js +6 -0
- package/esm/cli/framework-cli-commands.js.map +1 -0
- package/esm/cli/parse-cli-args.js +82 -0
- package/esm/cli/parse-cli-args.js.map +1 -0
- package/esm/cli/start.js +2 -0
- package/esm/cli/start.js.map +1 -0
- package/esm/cli/string-similarity.js +57 -0
- package/esm/cli/string-similarity.js.map +1 -0
- package/esm/config/config-loader.js +82 -0
- package/esm/config/config-loader.js.map +1 -0
- package/esm/config/config-manager.js +25 -0
- package/esm/config/config-manager.js.map +1 -0
- package/esm/config/load-config-files.js +19 -0
- package/esm/config/load-config-files.js.map +1 -0
- package/esm/dev2-server/create-worker.js +37 -0
- package/esm/dev2-server/create-worker.js.map +1 -0
- package/esm/dev2-server/dependency-graph.js +266 -0
- package/esm/dev2-server/dependency-graph.js.map +1 -0
- package/esm/dev2-server/dev-logger.js +63 -1
- package/esm/dev2-server/dev-logger.js.map +1 -1
- package/esm/dev2-server/development-server.js +138 -0
- package/esm/dev2-server/development-server.js.map +1 -0
- package/esm/dev2-server/events.js +4 -0
- package/esm/dev2-server/events.js.map +1 -0
- package/esm/dev2-server/file-event-handler.js +186 -0
- package/esm/dev2-server/file-event-handler.js.map +1 -0
- package/esm/dev2-server/file-manager.js +374 -0
- package/esm/dev2-server/file-manager.js.map +1 -0
- package/esm/dev2-server/file-operations.js +228 -0
- package/esm/dev2-server/file-operations.js.map +1 -0
- package/esm/dev2-server/files-orchestrator.js +326 -0
- package/esm/dev2-server/files-orchestrator.js.map +1 -0
- package/esm/dev2-server/files-watcher.js +95 -0
- package/esm/dev2-server/files-watcher.js.map +1 -0
- package/esm/dev2-server/flags.js +9 -0
- package/esm/dev2-server/flags.js.map +1 -0
- package/esm/dev2-server/health-checker/checkers/base-health-checker.js +71 -0
- package/esm/dev2-server/health-checker/checkers/base-health-checker.js.map +1 -0
- package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js +217 -0
- package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js.map +1 -0
- package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js +279 -0
- package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js.map +1 -0
- package/esm/dev2-server/health-checker/file-health-result.js +40 -0
- package/esm/dev2-server/health-checker/file-health-result.js.map +1 -0
- package/esm/dev2-server/health-checker/files-healthcare.manager.js +422 -0
- package/esm/dev2-server/health-checker/files-healthcare.manager.js.map +1 -0
- package/esm/dev2-server/import-transformer.js +248 -0
- package/esm/dev2-server/import-transformer.js.map +1 -0
- package/esm/dev2-server/layer-executor.js +309 -0
- package/esm/dev2-server/layer-executor.js.map +1 -0
- package/esm/dev2-server/manifest-manager.js +107 -0
- package/esm/dev2-server/manifest-manager.js.map +1 -0
- package/esm/dev2-server/module-loader.js +251 -0
- package/esm/dev2-server/module-loader.js.map +1 -0
- package/esm/dev2-server/package-json-manager.js +20 -0
- package/esm/dev2-server/package-json-manager.js.map +1 -0
- package/esm/dev2-server/parse-imports.js +328 -0
- package/esm/dev2-server/parse-imports.js.map +1 -0
- package/esm/dev2-server/runtime-import-helper.js +150 -0
- package/esm/dev2-server/runtime-import-helper.js.map +1 -0
- package/esm/dev2-server/special-files-collector.js +212 -0
- package/esm/dev2-server/special-files-collector.js.map +1 -0
- package/esm/dev2-server/transpile-file.js +12 -2
- package/esm/dev2-server/transpile-file.js.map +1 -1
- package/esm/dev2-server/type-generator.js +557 -0
- package/esm/dev2-server/type-generator.js.map +1 -0
- package/esm/dev2-server/utils.js +40 -0
- package/esm/dev2-server/utils.js.map +1 -0
- package/esm/manifest/manifest-manager.js +88 -0
- package/esm/manifest/manifest-manager.js.map +1 -0
- package/esm/production/build-app-production.js +8 -0
- package/esm/production/build-app-production.js.map +1 -0
- package/esm/production/esbuild-plugins.js +23 -0
- package/esm/production/esbuild-plugins.js.map +1 -0
- package/esm/production/production-builder.js +245 -0
- package/esm/production/production-builder.js.map +1 -0
- package/package.json +1 -1
- package/cjs/application.d.ts +0 -27
- package/cjs/application.d.ts.map +0 -1
- package/cjs/bootstrap/setup.d.ts +0 -7
- package/cjs/bootstrap/setup.d.ts.map +0 -1
- package/cjs/bootstrap/setup.js +0 -38
- package/cjs/bootstrap/setup.js.map +0 -1
- package/cjs/bootstrap.d.ts +0 -2
- package/cjs/bootstrap.d.ts.map +0 -1
- package/cjs/bootstrap.js +0 -5
- package/cjs/bootstrap.js.map +0 -1
- package/cjs/cache/database-cache-driver.d.ts +0 -56
- package/cjs/cache/database-cache-driver.d.ts.map +0 -1
- package/cjs/cache/database-cache-driver.js +0 -96
- package/cjs/cache/database-cache-driver.js.map +0 -1
- package/cjs/cache/index.d.ts +0 -3
- package/cjs/cache/index.d.ts.map +0 -1
- package/cjs/cache/index.js +0 -1
- package/cjs/cache/index.js.map +0 -1
- package/cjs/cli/cli-command.d.ts +0 -115
- package/cjs/cli/cli-command.d.ts.map +0 -1
- package/cjs/cli/cli-command.js +0 -224
- package/cjs/cli/cli-command.js.map +0 -1
- package/cjs/cli/cli-commands.manager.d.ts +0 -71
- package/cjs/cli/cli-commands.manager.d.ts.map +0 -1
- package/cjs/cli/cli-commands.utils.d.ts +0 -68
- package/cjs/cli/cli-commands.utils.d.ts.map +0 -1
- package/cjs/cli/commands/build.command.d.ts +0 -2
- package/cjs/cli/commands/build.command.d.ts.map +0 -1
- package/cjs/cli/commands/dev-server.command.d.ts +0 -2
- package/cjs/cli/commands/dev-server.command.d.ts.map +0 -1
- package/cjs/cli/commands/start-production.command.d.ts +0 -2
- package/cjs/cli/commands/start-production.command.d.ts.map +0 -1
- package/cjs/cli/commands/typings-generator.command.d.ts +0 -2
- package/cjs/cli/commands/typings-generator.command.d.ts.map +0 -1
- package/cjs/cli/commands-loader.d.ts +0 -18
- package/cjs/cli/commands-loader.d.ts.map +0 -1
- package/cjs/cli/framework-cli-commands.d.ts +0 -2
- package/cjs/cli/framework-cli-commands.d.ts.map +0 -1
- package/cjs/cli/index.d.ts +0 -3
- package/cjs/cli/index.d.ts.map +0 -1
- package/cjs/cli/index.js +0 -1
- package/cjs/cli/index.js.map +0 -1
- package/cjs/cli/parse-cli-args.d.ts +0 -18
- package/cjs/cli/parse-cli-args.d.ts.map +0 -1
- package/cjs/cli/start.d.ts +0 -2
- package/cjs/cli/start.d.ts.map +0 -1
- package/cjs/cli/string-similarity.d.ts +0 -44
- package/cjs/cli/string-similarity.d.ts.map +0 -1
- package/cjs/cli/types.d.ts +0 -201
- package/cjs/cli/types.d.ts.map +0 -1
- package/cjs/config/config-getter.d.ts +0 -35
- package/cjs/config/config-getter.d.ts.map +0 -1
- package/cjs/config/config-getter.js +0 -21
- package/cjs/config/config-getter.js.map +0 -1
- package/cjs/config/config-handlers.d.ts +0 -19
- package/cjs/config/config-handlers.d.ts.map +0 -1
- package/cjs/config/config-handlers.js +0 -47
- package/cjs/config/config-handlers.js.map +0 -1
- package/cjs/config/config-loader.d.ts +0 -37
- package/cjs/config/config-loader.d.ts.map +0 -1
- package/cjs/config/config-manager.d.ts +0 -22
- package/cjs/config/config-manager.d.ts.map +0 -1
- package/cjs/config/config-special-handlers.d.ts +0 -17
- package/cjs/config/config-special-handlers.d.ts.map +0 -1
- package/cjs/config/config-special-handlers.js +0 -23
- package/cjs/config/config-special-handlers.js.map +0 -1
- package/cjs/config/index.d.ts +0 -5
- package/cjs/config/index.d.ts.map +0 -1
- package/cjs/config/load-config-files.d.ts +0 -6
- package/cjs/config/load-config-files.d.ts.map +0 -1
- package/cjs/config/types.d.ts +0 -52
- package/cjs/config/types.d.ts.map +0 -1
- package/cjs/database/decorators/index.d.ts +0 -2
- package/cjs/database/decorators/index.d.ts.map +0 -1
- package/cjs/database/decorators/sluggable.d.ts +0 -2
- package/cjs/database/decorators/sluggable.d.ts.map +0 -1
- package/cjs/database/decorators/sluggable.js +0 -8
- package/cjs/database/decorators/sluggable.js.map +0 -1
- package/cjs/database/index.d.ts +0 -3
- package/cjs/database/index.d.ts.map +0 -1
- package/cjs/database/models/database-log/database-log.d.ts +0 -13
- package/cjs/database/models/database-log/database-log.d.ts.map +0 -1
- package/cjs/database/models/database-log/database-log.js +0 -16
- package/cjs/database/models/database-log/database-log.js.map +0 -1
- package/cjs/database/models/database-log/index.d.ts +0 -2
- package/cjs/database/models/database-log/index.d.ts.map +0 -1
- package/cjs/dev2-server/config-handlers.d.ts +0 -8
- package/cjs/dev2-server/config-handlers.d.ts.map +0 -1
- package/cjs/dev2-server/config-loader.d.ts +0 -61
- package/cjs/dev2-server/config-loader.d.ts.map +0 -1
- package/cjs/dev2-server/connectors/base-connector.d.ts +0 -49
- package/cjs/dev2-server/connectors/base-connector.d.ts.map +0 -1
- package/cjs/dev2-server/connectors/base-connector.js +0 -48
- package/cjs/dev2-server/connectors/base-connector.js.map +0 -1
- package/cjs/dev2-server/connectors/cache-connector.d.ts +0 -23
- package/cjs/dev2-server/connectors/cache-connector.d.ts.map +0 -1
- package/cjs/dev2-server/connectors/cache-connector.js +0 -35
- package/cjs/dev2-server/connectors/cache-connector.js.map +0 -1
- package/cjs/dev2-server/connectors/connectors-manager.d.ts +0 -38
- package/cjs/dev2-server/connectors/connectors-manager.d.ts.map +0 -1
- package/cjs/dev2-server/connectors/connectors-manager.js +0 -80
- package/cjs/dev2-server/connectors/connectors-manager.js.map +0 -1
- package/cjs/dev2-server/connectors/database-connector.d.ts +0 -23
- package/cjs/dev2-server/connectors/database-connector.d.ts.map +0 -1
- package/cjs/dev2-server/connectors/database-connector.js +0 -42
- package/cjs/dev2-server/connectors/database-connector.js.map +0 -1
- package/cjs/dev2-server/connectors/http-connector.d.ts +0 -29
- package/cjs/dev2-server/connectors/http-connector.d.ts.map +0 -1
- package/cjs/dev2-server/connectors/http-connector.js +0 -69
- package/cjs/dev2-server/connectors/http-connector.js.map +0 -1
- package/cjs/dev2-server/connectors/index.d.ts +0 -11
- package/cjs/dev2-server/connectors/index.d.ts.map +0 -1
- package/cjs/dev2-server/connectors/types.d.ts +0 -49
- package/cjs/dev2-server/connectors/types.d.ts.map +0 -1
- package/cjs/dev2-server/connectors/types.js +0 -9
- package/cjs/dev2-server/connectors/types.js.map +0 -1
- package/cjs/dev2-server/create-worker.d.ts +0 -34
- package/cjs/dev2-server/create-worker.d.ts.map +0 -1
- package/cjs/dev2-server/dependency-graph.d.ts +0 -93
- package/cjs/dev2-server/dependency-graph.d.ts.map +0 -1
- package/cjs/dev2-server/dev-logger.d.ts +0 -14
- package/cjs/dev2-server/dev-logger.d.ts.map +0 -1
- package/cjs/dev2-server/dev-logger.js +0 -68
- package/cjs/dev2-server/dev-logger.js.map +0 -1
- package/cjs/dev2-server/development-server.d.ts +0 -47
- package/cjs/dev2-server/development-server.d.ts.map +0 -1
- package/cjs/dev2-server/events.d.ts +0 -5
- package/cjs/dev2-server/events.d.ts.map +0 -1
- package/cjs/dev2-server/file-event-handler.d.ts +0 -59
- package/cjs/dev2-server/file-event-handler.d.ts.map +0 -1
- package/cjs/dev2-server/file-manager.d.ts +0 -136
- package/cjs/dev2-server/file-manager.d.ts.map +0 -1
- package/cjs/dev2-server/file-operations.d.ts +0 -65
- package/cjs/dev2-server/file-operations.d.ts.map +0 -1
- package/cjs/dev2-server/files-orchestrator.d.ts +0 -122
- package/cjs/dev2-server/files-orchestrator.d.ts.map +0 -1
- package/cjs/dev2-server/files-watcher.d.ts +0 -67
- package/cjs/dev2-server/files-watcher.d.ts.map +0 -1
- package/cjs/dev2-server/flags.d.ts +0 -10
- package/cjs/dev2-server/flags.d.ts.map +0 -1
- package/cjs/dev2-server/health-checker/checkers/base-health-checker.d.ts +0 -52
- package/cjs/dev2-server/health-checker/checkers/base-health-checker.d.ts.map +0 -1
- package/cjs/dev2-server/health-checker/checkers/eslint-health-checker.d.ts +0 -40
- package/cjs/dev2-server/health-checker/checkers/eslint-health-checker.d.ts.map +0 -1
- package/cjs/dev2-server/health-checker/checkers/typescript-health-checker.d.ts +0 -56
- package/cjs/dev2-server/health-checker/checkers/typescript-health-checker.d.ts.map +0 -1
- package/cjs/dev2-server/health-checker/file-health-checker.contract.d.ts +0 -59
- package/cjs/dev2-server/health-checker/file-health-checker.contract.d.ts.map +0 -1
- package/cjs/dev2-server/health-checker/file-health-result.d.ts +0 -68
- package/cjs/dev2-server/health-checker/file-health-result.d.ts.map +0 -1
- package/cjs/dev2-server/health-checker/files-healthcare.manager.d.ts +0 -115
- package/cjs/dev2-server/health-checker/files-healthcare.manager.d.ts.map +0 -1
- package/cjs/dev2-server/health-checker/workers/eslint-health.worker.d.ts +0 -2
- package/cjs/dev2-server/health-checker/workers/eslint-health.worker.d.ts.map +0 -1
- package/cjs/dev2-server/health-checker/workers/ts-health.worker.d.ts +0 -2
- package/cjs/dev2-server/health-checker/workers/ts-health.worker.d.ts.map +0 -1
- package/cjs/dev2-server/import-transformer.d.ts +0 -16
- package/cjs/dev2-server/import-transformer.d.ts.map +0 -1
- package/cjs/dev2-server/index.d.ts +0 -1
- package/cjs/dev2-server/index.d.ts.map +0 -1
- package/cjs/dev2-server/layer-executor.d.ts +0 -60
- package/cjs/dev2-server/layer-executor.d.ts.map +0 -1
- package/cjs/dev2-server/manifest-manager.d.ts +0 -80
- package/cjs/dev2-server/manifest-manager.d.ts.map +0 -1
- package/cjs/dev2-server/module-loader.d.ts +0 -104
- package/cjs/dev2-server/module-loader.d.ts.map +0 -1
- package/cjs/dev2-server/package-json-manager.d.ts +0 -16
- package/cjs/dev2-server/package-json-manager.d.ts.map +0 -1
- package/cjs/dev2-server/parse-imports.d.ts +0 -13
- package/cjs/dev2-server/parse-imports.d.ts.map +0 -1
- package/cjs/dev2-server/path.d.ts +0 -39
- package/cjs/dev2-server/path.d.ts.map +0 -1
- package/cjs/dev2-server/path.js +0 -56
- package/cjs/dev2-server/path.js.map +0 -1
- package/cjs/dev2-server/runtime-import-helper.d.ts +0 -9
- package/cjs/dev2-server/runtime-import-helper.d.ts.map +0 -1
- package/cjs/dev2-server/special-files-collector.d.ts +0 -114
- package/cjs/dev2-server/special-files-collector.d.ts.map +0 -1
- package/cjs/dev2-server/start-development-server.d.ts +0 -7
- package/cjs/dev2-server/start-development-server.d.ts.map +0 -1
- package/cjs/dev2-server/transpile-file.d.ts +0 -11
- package/cjs/dev2-server/transpile-file.d.ts.map +0 -1
- package/cjs/dev2-server/transpile-file.js +0 -11
- package/cjs/dev2-server/transpile-file.js.map +0 -1
- package/cjs/dev2-server/tsconfig-manager.d.ts +0 -45
- package/cjs/dev2-server/tsconfig-manager.d.ts.map +0 -1
- package/cjs/dev2-server/tsconfig-manager.js +0 -102
- package/cjs/dev2-server/tsconfig-manager.js.map +0 -1
- package/cjs/dev2-server/type-generator.d.ts +0 -111
- package/cjs/dev2-server/type-generator.d.ts.map +0 -1
- package/cjs/dev2-server/types.d.ts +0 -16
- package/cjs/dev2-server/types.d.ts.map +0 -1
- package/cjs/dev2-server/utils.d.ts +0 -15
- package/cjs/dev2-server/utils.d.ts.map +0 -1
- package/cjs/http/config.d.ts +0 -10
- package/cjs/http/config.d.ts.map +0 -1
- package/cjs/http/config.js +0 -22
- package/cjs/http/config.js.map +0 -1
- package/cjs/http/createHttpApplication.d.ts +0 -3
- package/cjs/http/createHttpApplication.d.ts.map +0 -1
- package/cjs/http/createHttpApplication.js +0 -28
- package/cjs/http/createHttpApplication.js.map +0 -1
- package/cjs/http/database/RequestLog.d.ts +0 -13
- package/cjs/http/database/RequestLog.d.ts.map +0 -1
- package/cjs/http/database/RequestLog.js +0 -25
- package/cjs/http/database/RequestLog.js.map +0 -1
- package/cjs/http/errors/index.d.ts +0 -2
- package/cjs/http/errors/index.d.ts.map +0 -1
- package/cjs/http/errors/resource-not-found.error.d.ts +0 -17
- package/cjs/http/errors/resource-not-found.error.d.ts.map +0 -1
- package/cjs/http/errors/resource-not-found.error.js +0 -32
- package/cjs/http/errors/resource-not-found.error.js.map +0 -1
- package/cjs/http/events.d.ts +0 -4
- package/cjs/http/events.d.ts.map +0 -1
- package/cjs/http/events.js +0 -26
- package/cjs/http/events.js.map +0 -1
- package/cjs/http/index.d.ts +0 -16
- package/cjs/http/index.d.ts.map +0 -1
- package/cjs/http/middleware/cache-response-middleware.d.ts +0 -34
- package/cjs/http/middleware/cache-response-middleware.d.ts.map +0 -1
- package/cjs/http/middleware/cache-response-middleware.js +0 -45
- package/cjs/http/middleware/cache-response-middleware.js.map +0 -1
- package/cjs/http/middleware/index.d.ts +0 -3
- package/cjs/http/middleware/index.d.ts.map +0 -1
- package/cjs/http/middleware/inject-request-context.d.ts +0 -35
- package/cjs/http/middleware/inject-request-context.d.ts.map +0 -1
- package/cjs/http/middleware/inject-request-context.js +0 -104
- package/cjs/http/middleware/inject-request-context.js.map +0 -1
- package/cjs/http/plugins/index.d.ts +0 -3
- package/cjs/http/plugins/index.d.ts.map +0 -1
- package/cjs/http/plugins.d.ts +0 -3
- package/cjs/http/plugins.d.ts.map +0 -1
- package/cjs/http/plugins.js +0 -39
- package/cjs/http/plugins.js.map +0 -1
- package/cjs/http/request-controller.d.ts +0 -11
- package/cjs/http/request-controller.d.ts.map +0 -1
- package/cjs/http/request-controller.js +0 -9
- package/cjs/http/request-controller.js.map +0 -1
- package/cjs/http/request.d.ts +0 -376
- package/cjs/http/request.d.ts.map +0 -1
- package/cjs/http/request.js +0 -729
- package/cjs/http/request.js.map +0 -1
- package/cjs/http/response.d.ts +0 -271
- package/cjs/http/response.d.ts.map +0 -1
- package/cjs/http/response.js +0 -574
- package/cjs/http/response.js.map +0 -1
- package/cjs/http/server.d.ts +0 -8
- package/cjs/http/server.d.ts.map +0 -1
- package/cjs/http/server.js +0 -15
- package/cjs/http/server.js.map +0 -1
- package/cjs/http/types.d.ts +0 -174
- package/cjs/http/types.d.ts.map +0 -1
- package/cjs/http/uploaded-file.d.ts +0 -445
- package/cjs/http/uploaded-file.d.ts.map +0 -1
- package/cjs/http/uploaded-file.js +0 -694
- package/cjs/http/uploaded-file.js.map +0 -1
- package/cjs/http/uploads-config.d.ts +0 -26
- package/cjs/http/uploads-config.d.ts.map +0 -1
- package/cjs/http/uploads-config.js +0 -35
- package/cjs/http/uploads-config.js.map +0 -1
- package/cjs/http/uploads-types.d.ts +0 -236
- package/cjs/http/uploads-types.d.ts.map +0 -1
- package/cjs/image/image.d.ts +0 -382
- package/cjs/image/image.d.ts.map +0 -1
- package/cjs/image/image.js +0 -552
- package/cjs/image/image.js.map +0 -1
- package/cjs/image/index.d.ts +0 -2
- package/cjs/image/index.d.ts.map +0 -1
- package/cjs/index.d.ts +0 -27
- package/cjs/index.d.ts.map +0 -1
- package/cjs/index.js +0 -1
- package/cjs/index.js.map +0 -1
- package/cjs/logger/index.d.ts +0 -3
- package/cjs/logger/index.d.ts.map +0 -1
- package/cjs/logger/logger.d.ts +0 -3
- package/cjs/logger/logger.d.ts.map +0 -1
- package/cjs/logger/logger.js +0 -16
- package/cjs/logger/logger.js.map +0 -1
- package/cjs/logger/types.d.ts +0 -39
- package/cjs/logger/types.d.ts.map +0 -1
- package/cjs/mail/config.d.ts +0 -83
- package/cjs/mail/config.d.ts.map +0 -1
- package/cjs/mail/config.js +0 -152
- package/cjs/mail/config.js.map +0 -1
- package/cjs/mail/events.d.ts +0 -96
- package/cjs/mail/events.d.ts.map +0 -1
- package/cjs/mail/events.js +0 -123
- package/cjs/mail/events.js.map +0 -1
- package/cjs/mail/index.d.ts +0 -10
- package/cjs/mail/index.d.ts.map +0 -1
- package/cjs/mail/mail.d.ts +0 -175
- package/cjs/mail/mail.d.ts.map +0 -1
- package/cjs/mail/mail.js +0 -286
- package/cjs/mail/mail.js.map +0 -1
- package/cjs/mail/mailer-pool.d.ts +0 -26
- package/cjs/mail/mailer-pool.d.ts.map +0 -1
- package/cjs/mail/mailer-pool.js +0 -95
- package/cjs/mail/mailer-pool.js.map +0 -1
- package/cjs/mail/react-mail.d.ts +0 -6
- package/cjs/mail/react-mail.d.ts.map +0 -1
- package/cjs/mail/react-mail.js +0 -25
- package/cjs/mail/react-mail.js.map +0 -1
- package/cjs/mail/send-mail.d.ts +0 -33
- package/cjs/mail/send-mail.d.ts.map +0 -1
- package/cjs/mail/send-mail.js +0 -309
- package/cjs/mail/send-mail.js.map +0 -1
- package/cjs/mail/test-mailbox.d.ts +0 -110
- package/cjs/mail/test-mailbox.d.ts.map +0 -1
- package/cjs/mail/test-mailbox.js +0 -143
- package/cjs/mail/test-mailbox.js.map +0 -1
- package/cjs/mail/types.d.ts +0 -245
- package/cjs/mail/types.d.ts.map +0 -1
- package/cjs/mail/types.js +0 -13
- package/cjs/mail/types.js.map +0 -1
- package/cjs/manifest/manifest-manager.d.ts +0 -74
- package/cjs/manifest/manifest-manager.d.ts.map +0 -1
- package/cjs/output/index.d.ts +0 -3
- package/cjs/output/index.d.ts.map +0 -1
- package/cjs/output/output.d.ts +0 -193
- package/cjs/output/output.d.ts.map +0 -1
- package/cjs/output/output.js +0 -599
- package/cjs/output/output.js.map +0 -1
- package/cjs/output/types.d.ts +0 -23
- package/cjs/output/types.d.ts.map +0 -1
- package/cjs/production/build-app-production.d.ts +0 -6
- package/cjs/production/build-app-production.d.ts.map +0 -1
- package/cjs/production/esbuild-plugins.d.ts +0 -5
- package/cjs/production/esbuild-plugins.d.ts.map +0 -1
- package/cjs/production/production-builder.d.ts +0 -76
- package/cjs/production/production-builder.d.ts.map +0 -1
- package/cjs/react/index.d.ts +0 -3
- package/cjs/react/index.d.ts.map +0 -1
- package/cjs/react/index.js +0 -7
- package/cjs/react/index.js.map +0 -1
- package/cjs/repositories/base-repository-manager.d.ts +0 -47
- package/cjs/repositories/base-repository-manager.d.ts.map +0 -1
- package/cjs/repositories/base-repository-manager.js +0 -63
- package/cjs/repositories/base-repository-manager.js.map +0 -1
- package/cjs/repositories/index.d.ts +0 -8
- package/cjs/repositories/index.d.ts.map +0 -1
- package/cjs/repositories/repository-destroyer-manager.d.ts +0 -21
- package/cjs/repositories/repository-destroyer-manager.d.ts.map +0 -1
- package/cjs/repositories/repository-destroyer-manager.js +0 -38
- package/cjs/repositories/repository-destroyer-manager.js.map +0 -1
- package/cjs/repositories/repository-filler-manager.d.ts +0 -60
- package/cjs/repositories/repository-filler-manager.d.ts.map +0 -1
- package/cjs/repositories/repository-filler-manager.js +0 -102
- package/cjs/repositories/repository-filler-manager.js.map +0 -1
- package/cjs/repositories/repository-filler.d.ts +0 -26
- package/cjs/repositories/repository-filler.d.ts.map +0 -1
- package/cjs/repositories/repository-filler.js +0 -63
- package/cjs/repositories/repository-filler.js.map +0 -1
- package/cjs/repositories/repository-list-manager.d.ts +0 -385
- package/cjs/repositories/repository-list-manager.d.ts.map +0 -1
- package/cjs/repositories/repository-list-manager.js +0 -812
- package/cjs/repositories/repository-list-manager.js.map +0 -1
- package/cjs/repositories/repository-listing.d.ts +0 -82
- package/cjs/repositories/repository-listing.d.ts.map +0 -1
- package/cjs/repositories/repository-listing.js +0 -177
- package/cjs/repositories/repository-listing.js.map +0 -1
- package/cjs/repositories/repository-manager.d.ts +0 -5
- package/cjs/repositories/repository-manager.d.ts.map +0 -1
- package/cjs/repositories/repository-manager.js +0 -2
- package/cjs/repositories/repository-manager.js.map +0 -1
- package/cjs/repositories/types.d.ts +0 -114
- package/cjs/repositories/types.d.ts.map +0 -1
- package/cjs/repositories/utils.d.ts +0 -3
- package/cjs/repositories/utils.d.ts.map +0 -1
- package/cjs/repositories/utils.js +0 -7
- package/cjs/repositories/utils.js.map +0 -1
- package/cjs/restful/index.d.ts +0 -2
- package/cjs/restful/index.d.ts.map +0 -1
- package/cjs/restful/restful.d.ts +0 -110
- package/cjs/restful/restful.d.ts.map +0 -1
- package/cjs/restful/restful.js +0 -317
- package/cjs/restful/restful.js.map +0 -1
- package/cjs/router/index.d.ts +0 -4
- package/cjs/router/index.d.ts.map +0 -1
- package/cjs/router/route-registry.d.ts +0 -30
- package/cjs/router/route-registry.d.ts.map +0 -1
- package/cjs/router/route-registry.js +0 -67
- package/cjs/router/route-registry.js.map +0 -1
- package/cjs/router/route.d.ts +0 -34
- package/cjs/router/route.d.ts.map +0 -1
- package/cjs/router/router.d.ts +0 -169
- package/cjs/router/router.d.ts.map +0 -1
- package/cjs/router/router.js +0 -564
- package/cjs/router/router.js.map +0 -1
- package/cjs/router/types.d.ts +0 -258
- package/cjs/router/types.d.ts.map +0 -1
- package/cjs/router/utils.d.ts +0 -5
- package/cjs/router/utils.d.ts.map +0 -1
- package/cjs/router/utils.js +0 -6
- package/cjs/router/utils.js.map +0 -1
- package/cjs/storage/config.d.ts +0 -8
- package/cjs/storage/config.d.ts.map +0 -1
- package/cjs/storage/config.js +0 -6
- package/cjs/storage/config.js.map +0 -1
- package/cjs/storage/drivers/cloud-driver.d.ts +0 -127
- package/cjs/storage/drivers/cloud-driver.d.ts.map +0 -1
- package/cjs/storage/drivers/cloud-driver.js +0 -406
- package/cjs/storage/drivers/cloud-driver.js.map +0 -1
- package/cjs/storage/drivers/do-spaces-driver.d.ts +0 -47
- package/cjs/storage/drivers/do-spaces-driver.d.ts.map +0 -1
- package/cjs/storage/drivers/do-spaces-driver.js +0 -52
- package/cjs/storage/drivers/do-spaces-driver.js.map +0 -1
- package/cjs/storage/drivers/local-driver.d.ts +0 -136
- package/cjs/storage/drivers/local-driver.d.ts.map +0 -1
- package/cjs/storage/drivers/local-driver.js +0 -409
- package/cjs/storage/drivers/local-driver.js.map +0 -1
- package/cjs/storage/drivers/r2-driver.d.ts +0 -50
- package/cjs/storage/drivers/r2-driver.d.ts.map +0 -1
- package/cjs/storage/drivers/r2-driver.js +0 -59
- package/cjs/storage/drivers/r2-driver.js.map +0 -1
- package/cjs/storage/drivers/s3-driver.d.ts +0 -32
- package/cjs/storage/drivers/s3-driver.d.ts.map +0 -1
- package/cjs/storage/drivers/s3-driver.js +0 -34
- package/cjs/storage/drivers/s3-driver.js.map +0 -1
- package/cjs/storage/index.d.ts +0 -12
- package/cjs/storage/index.d.ts.map +0 -1
- package/cjs/storage/scoped-storage.d.ts +0 -402
- package/cjs/storage/scoped-storage.d.ts.map +0 -1
- package/cjs/storage/scoped-storage.js +0 -488
- package/cjs/storage/scoped-storage.js.map +0 -1
- package/cjs/storage/storage-file.d.ts +0 -216
- package/cjs/storage/storage-file.d.ts.map +0 -1
- package/cjs/storage/storage-file.js +0 -358
- package/cjs/storage/storage-file.js.map +0 -1
- package/cjs/storage/storage.d.ts +0 -582
- package/cjs/storage/storage.d.ts.map +0 -1
- package/cjs/storage/storage.js +0 -941
- package/cjs/storage/storage.js.map +0 -1
- package/cjs/storage/types.d.ts +0 -728
- package/cjs/storage/types.d.ts.map +0 -1
- package/cjs/storage/utils/mime.d.ts +0 -33
- package/cjs/storage/utils/mime.d.ts.map +0 -1
- package/cjs/storage/utils/mime.js +0 -45
- package/cjs/storage/utils/mime.js.map +0 -1
- package/cjs/store/index.d.ts +0 -25
- package/cjs/store/index.d.ts.map +0 -1
- package/cjs/store/index.js +0 -52
- package/cjs/store/index.js.map +0 -1
- package/cjs/tests/boot-testing.d.ts +0 -7
- package/cjs/tests/boot-testing.d.ts.map +0 -1
- package/cjs/tests/boot-testing.js +0 -23
- package/cjs/tests/boot-testing.js.map +0 -1
- package/cjs/tests/create-http-test-application.d.ts +0 -25
- package/cjs/tests/create-http-test-application.d.ts.map +0 -1
- package/cjs/tests/create-http-test-application.js +0 -76
- package/cjs/tests/create-http-test-application.js.map +0 -1
- package/cjs/tests/http-response-output-test.d.ts +0 -42
- package/cjs/tests/http-response-output-test.d.ts.map +0 -1
- package/cjs/tests/http-response-output-test.js +0 -53
- package/cjs/tests/http-response-output-test.js.map +0 -1
- package/cjs/tests/http-test-response.d.ts +0 -75
- package/cjs/tests/http-test-response.d.ts.map +0 -1
- package/cjs/tests/index.d.ts +0 -4
- package/cjs/tests/index.d.ts.map +0 -1
- package/cjs/tests/init-testing.d.ts +0 -7
- package/cjs/tests/init-testing.d.ts.map +0 -1
- package/cjs/tests/types.d.ts +0 -10
- package/cjs/tests/types.d.ts.map +0 -1
- package/cjs/utils/app-log.d.ts +0 -8
- package/cjs/utils/app-log.d.ts.map +0 -1
- package/cjs/utils/app-log.js +0 -7
- package/cjs/utils/app-log.js.map +0 -1
- package/cjs/utils/cleanup-temp-files.d.ts +0 -5
- package/cjs/utils/cleanup-temp-files.d.ts.map +0 -1
- package/cjs/utils/database-log.d.ts +0 -25
- package/cjs/utils/database-log.d.ts.map +0 -1
- package/cjs/utils/database-log.js +0 -44
- package/cjs/utils/database-log.js.map +0 -1
- package/cjs/utils/date-output.d.ts +0 -69
- package/cjs/utils/date-output.d.ts.map +0 -1
- package/cjs/utils/date-output.js +0 -62
- package/cjs/utils/date-output.js.map +0 -1
- package/cjs/utils/date-output.test.d.ts +0 -2
- package/cjs/utils/date-output.test.d.ts.map +0 -1
- package/cjs/utils/download-file.d.ts +0 -3
- package/cjs/utils/download-file.d.ts.map +0 -1
- package/cjs/utils/environment.d.ts +0 -4
- package/cjs/utils/environment.d.ts.map +0 -1
- package/cjs/utils/environment.js +0 -6
- package/cjs/utils/environment.js.map +0 -1
- package/cjs/utils/get-localized.d.ts +0 -10
- package/cjs/utils/get-localized.d.ts.map +0 -1
- package/cjs/utils/get-localized.js +0 -15
- package/cjs/utils/get-localized.js.map +0 -1
- package/cjs/utils/get-localized.test.d.ts +0 -2
- package/cjs/utils/get-localized.test.d.ts.map +0 -1
- package/cjs/utils/index.d.ts +0 -13
- package/cjs/utils/index.d.ts.map +0 -1
- package/cjs/utils/internal.d.ts +0 -4
- package/cjs/utils/internal.d.ts.map +0 -1
- package/cjs/utils/paths.d.ts +0 -55
- package/cjs/utils/paths.d.ts.map +0 -1
- package/cjs/utils/paths.js +0 -89
- package/cjs/utils/paths.js.map +0 -1
- package/cjs/utils/promise-all-object.d.ts +0 -8
- package/cjs/utils/promise-all-object.d.ts.map +0 -1
- package/cjs/utils/promise-all-object.js +0 -12
- package/cjs/utils/promise-all-object.js.map +0 -1
- package/cjs/utils/queue.d.ts +0 -49
- package/cjs/utils/queue.d.ts.map +0 -1
- package/cjs/utils/queue.js +0 -89
- package/cjs/utils/queue.js.map +0 -1
- package/cjs/utils/sleep.d.ts +0 -2
- package/cjs/utils/sleep.d.ts.map +0 -1
- package/cjs/utils/sleep.js +0 -3
- package/cjs/utils/sleep.js.map +0 -1
- package/cjs/utils/sluggable.d.ts +0 -5
- package/cjs/utils/sluggable.d.ts.map +0 -1
- package/cjs/utils/sluggable.js +0 -15
- package/cjs/utils/sluggable.js.map +0 -1
- package/cjs/utils/sluggable.test.d.ts +0 -2
- package/cjs/utils/sluggable.test.d.ts.map +0 -1
- package/cjs/utils/to-json.d.ts +0 -2
- package/cjs/utils/to-json.d.ts.map +0 -1
- package/cjs/utils/to-json.js +0 -26
- package/cjs/utils/to-json.js.map +0 -1
- package/cjs/utils/types.d.ts +0 -22
- package/cjs/utils/types.d.ts.map +0 -1
- package/cjs/utils/urls.d.ts +0 -21
- package/cjs/utils/urls.d.ts.map +0 -1
- package/cjs/utils/urls.js +0 -31
- package/cjs/utils/urls.js.map +0 -1
- package/cjs/validation/database/exists-except-current-id.d.ts +0 -7
- package/cjs/validation/database/exists-except-current-id.d.ts.map +0 -1
- package/cjs/validation/database/exists-except-current-id.js +0 -23
- package/cjs/validation/database/exists-except-current-id.js.map +0 -1
- package/cjs/validation/database/exists-except-current-user.d.ts +0 -7
- package/cjs/validation/database/exists-except-current-user.d.ts.map +0 -1
- package/cjs/validation/database/exists-except-current-user.js +0 -25
- package/cjs/validation/database/exists-except-current-user.js.map +0 -1
- package/cjs/validation/database/exists.d.ts +0 -7
- package/cjs/validation/database/exists.d.ts.map +0 -1
- package/cjs/validation/database/exists.js +0 -21
- package/cjs/validation/database/exists.js.map +0 -1
- package/cjs/validation/database/index.d.ts +0 -12
- package/cjs/validation/database/index.d.ts.map +0 -1
- package/cjs/validation/database/types.d.ts +0 -68
- package/cjs/validation/database/types.d.ts.map +0 -1
- package/cjs/validation/database/unique-except-current-id.d.ts +0 -7
- package/cjs/validation/database/unique-except-current-id.d.ts.map +0 -1
- package/cjs/validation/database/unique-except-current-id.js +0 -23
- package/cjs/validation/database/unique-except-current-id.js.map +0 -1
- package/cjs/validation/database/unique-except-current-user.d.ts +0 -7
- package/cjs/validation/database/unique-except-current-user.d.ts.map +0 -1
- package/cjs/validation/database/unique-except-current-user.js +0 -25
- package/cjs/validation/database/unique-except-current-user.js.map +0 -1
- package/cjs/validation/database/unique.d.ts +0 -7
- package/cjs/validation/database/unique.d.ts.map +0 -1
- package/cjs/validation/database/unique.js +0 -30
- package/cjs/validation/database/unique.js.map +0 -1
- package/cjs/validation/file/file.d.ts +0 -22
- package/cjs/validation/file/file.d.ts.map +0 -1
- package/cjs/validation/file/file.js +0 -60
- package/cjs/validation/file/file.js.map +0 -1
- package/cjs/validation/file/index.d.ts +0 -6
- package/cjs/validation/file/index.d.ts.map +0 -1
- package/cjs/validation/index.d.ts +0 -16
- package/cjs/validation/index.d.ts.map +0 -1
- package/cjs/validation/init.d.ts +0 -7
- package/cjs/validation/init.d.ts.map +0 -1
- package/cjs/validation/init.js +0 -34
- package/cjs/validation/init.js.map +0 -1
- package/cjs/validation/plugins/database-plugin.d.ts +0 -14
- package/cjs/validation/plugins/database-plugin.d.ts.map +0 -1
- package/cjs/validation/plugins/database-plugin.js +0 -95
- package/cjs/validation/plugins/database-plugin.js.map +0 -1
- package/cjs/validation/plugins/file-plugin.d.ts +0 -11
- package/cjs/validation/plugins/file-plugin.d.ts.map +0 -1
- package/cjs/validation/plugins/file-plugin.js +0 -17
- package/cjs/validation/plugins/file-plugin.js.map +0 -1
- package/cjs/validation/plugins/index.d.ts +0 -9
- package/cjs/validation/plugins/index.d.ts.map +0 -1
- package/cjs/validation/plugins/localized-plugin.d.ts +0 -11
- package/cjs/validation/plugins/localized-plugin.d.ts.map +0 -1
- package/cjs/validation/plugins/localized-plugin.js +0 -19
- package/cjs/validation/plugins/localized-plugin.js.map +0 -1
- package/cjs/validation/types.d.ts +0 -87
- package/cjs/validation/types.d.ts.map +0 -1
- package/cjs/validation/validateAll.d.ts +0 -7
- package/cjs/validation/validateAll.d.ts.map +0 -1
- package/cjs/validation/validateAll.js +0 -39
- package/cjs/validation/validateAll.js.map +0 -1
- package/cjs/validation/validators/file-validator.d.ts +0 -40
- package/cjs/validation/validators/file-validator.d.ts.map +0 -1
- package/cjs/validation/validators/file-validator.js +0 -94
- package/cjs/validation/validators/file-validator.js.map +0 -1
- package/cjs/validation/validators/index.d.ts +0 -7
- package/cjs/validation/validators/index.d.ts.map +0 -1
- package/cjs/warlock-config/default-configurations.d.ts +0 -3
- package/cjs/warlock-config/default-configurations.d.ts.map +0 -1
- package/cjs/warlock-config/default-configurations.js +0 -8
- package/cjs/warlock-config/default-configurations.js.map +0 -1
- package/cjs/warlock-config/define-config.d.ts +0 -3
- package/cjs/warlock-config/define-config.d.ts.map +0 -1
- package/cjs/warlock-config/define-config.js +0 -3
- package/cjs/warlock-config/define-config.js.map +0 -1
- package/cjs/warlock-config/index.d.ts +0 -4
- package/cjs/warlock-config/index.d.ts.map +0 -1
- package/cjs/warlock-config/types.d.ts +0 -79
- package/cjs/warlock-config/types.d.ts.map +0 -1
- package/cjs/warlock-config/warlock-config.manager.d.ts +0 -83
- package/cjs/warlock-config/warlock-config.manager.d.ts.map +0 -1
- package/cjs/warlock-config/warlock-config.manager.js +0 -141
- package/cjs/warlock-config/warlock-config.manager.js.map +0 -1
|
@@ -0,0 +1,328 @@
|
|
|
1
|
+
import {isDirectoryAsync,fileExistsAsync}from'@mongez/fs';import {parse}from'es-module-lexer';import path from'node:path';import {Path}from'./path.js';import {tsconfigManager}from'./tsconfig-manager.js';/**
|
|
2
|
+
* Extract import paths using regex (more reliable for TypeScript)
|
|
3
|
+
* This is a fallback when es-module-lexer fails
|
|
4
|
+
*/
|
|
5
|
+
function extractImportPathsWithRegex(source) {
|
|
6
|
+
const imports = [];
|
|
7
|
+
const seenPaths = new Set();
|
|
8
|
+
/**
|
|
9
|
+
* Check if an import line is type-only
|
|
10
|
+
* Handles:
|
|
11
|
+
* - import type { Foo } from "module"
|
|
12
|
+
* - import type Foo from "module"
|
|
13
|
+
* - import type * as Foo from "module"
|
|
14
|
+
*/
|
|
15
|
+
const isTypeOnlyImport = (line) => {
|
|
16
|
+
const trimmed = line.trim();
|
|
17
|
+
return trimmed.startsWith("import type ") || !!trimmed.match(/^import\s+type\s+[\{\*]/);
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Check if an import has any runtime (non-type) imports
|
|
21
|
+
* Handles mixed imports: import { type Foo, runtimeBar } from "module"
|
|
22
|
+
* Returns true if there are runtime imports (should be tracked)
|
|
23
|
+
*/
|
|
24
|
+
const hasRuntimeImports = (line) => {
|
|
25
|
+
const trimmed = line.trim();
|
|
26
|
+
// If it's a pure type-only import, no runtime imports
|
|
27
|
+
if (isTypeOnlyImport(trimmed)) {
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
// Extract the import specifiers part: import { ... } from "module"
|
|
31
|
+
const specifiersMatch = trimmed.match(/import\s+\{([^}]+)\}/);
|
|
32
|
+
if (!specifiersMatch) {
|
|
33
|
+
// Not a destructured import, or it's a default/namespace import
|
|
34
|
+
// These are runtime imports unless marked with "import type"
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
const specifiers = specifiersMatch[1];
|
|
38
|
+
// Split by comma and check each specifier
|
|
39
|
+
const items = specifiers.split(",").map((s) => s.trim());
|
|
40
|
+
// Check if ALL items are type-only (prefixed with "type ")
|
|
41
|
+
const allTypeOnly = items.every((item) => {
|
|
42
|
+
// Match: "type Foo" or "type Foo as Bar"
|
|
43
|
+
return /^type\s+\w+/.test(item);
|
|
44
|
+
});
|
|
45
|
+
// If all are type-only, this import has no runtime imports
|
|
46
|
+
// Otherwise, it has at least one runtime import
|
|
47
|
+
return !allTypeOnly;
|
|
48
|
+
};
|
|
49
|
+
// Pattern 1: Standard ES module imports (handles multiline)
|
|
50
|
+
// Matches: import { ... } from "path", import Foo from "path", import Foo, { ... } from "path"
|
|
51
|
+
const importRegex = /import\s+(?:type\s+)?(\{[\s\S]*?\}|\*\s+as\s+\w+|\w+(?:\s*,\s*\{[\s\S]*?\})?)\s+from\s+['"]([^'"]+)['"]/g;
|
|
52
|
+
let match;
|
|
53
|
+
while ((match = importRegex.exec(source)) !== null) {
|
|
54
|
+
const fullMatch = match[0];
|
|
55
|
+
match[1];
|
|
56
|
+
const importPath = match[2];
|
|
57
|
+
// Skip type-only imports
|
|
58
|
+
if (fullMatch.match(/^import\s+type\s+/)) {
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
// Skip if it's a mixed import with only types
|
|
62
|
+
if (!hasRuntimeImports(fullMatch)) {
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
if (importPath && !seenPaths.has(importPath)) {
|
|
66
|
+
seenPaths.add(importPath);
|
|
67
|
+
imports.push({
|
|
68
|
+
path: importPath,
|
|
69
|
+
originalLine: fullMatch,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
// Pattern 1b: Side-effect imports - import "path"
|
|
74
|
+
const sideEffectRegex = /import\s+['"]([^'"]+)['"]/g;
|
|
75
|
+
while ((match = sideEffectRegex.exec(source)) !== null) {
|
|
76
|
+
const importPath = match[1];
|
|
77
|
+
if (importPath && !seenPaths.has(importPath)) {
|
|
78
|
+
seenPaths.add(importPath);
|
|
79
|
+
imports.push({
|
|
80
|
+
path: importPath,
|
|
81
|
+
originalLine: match[0],
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
// Pattern 2: Dynamic imports - import("path")
|
|
86
|
+
const dynamicImportPattern = /import\s*\(\s*['"]([^'"]+)['"]\s*\)/g;
|
|
87
|
+
while ((match = dynamicImportPattern.exec(source)) !== null) {
|
|
88
|
+
const importPath = match[1];
|
|
89
|
+
if (importPath && !seenPaths.has(importPath)) {
|
|
90
|
+
seenPaths.add(importPath);
|
|
91
|
+
imports.push({
|
|
92
|
+
path: importPath,
|
|
93
|
+
originalLine: match[0],
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
// Pattern 3: Export from - export ... from "path"
|
|
98
|
+
// Skip export type statements (e.g., export type { Foo } from "module")
|
|
99
|
+
const exportFromPattern = /export\s+(?:\{[^}]*\}|\*|\w+)\s+from\s+['"]([^'"]+)['"]/g;
|
|
100
|
+
while ((match = exportFromPattern.exec(source)) !== null) {
|
|
101
|
+
const fullMatch = match[0];
|
|
102
|
+
// Skip type-only exports: export type ... from "module"
|
|
103
|
+
if (/^export\s+type\s+/.test(fullMatch)) {
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
const importPath = match[1];
|
|
107
|
+
if (importPath && !seenPaths.has(importPath)) {
|
|
108
|
+
seenPaths.add(importPath);
|
|
109
|
+
imports.push({
|
|
110
|
+
path: importPath,
|
|
111
|
+
originalLine: fullMatch,
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return imports;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* This function will transpile the given ts/tsx code to js code
|
|
119
|
+
* // also it will return the dependencies of the file
|
|
120
|
+
*
|
|
121
|
+
* @returns Map of originalImportPath -> resolvedAbsolutePath
|
|
122
|
+
*/
|
|
123
|
+
async function parseImports(source, filePath) {
|
|
124
|
+
try {
|
|
125
|
+
// Skip .d.ts files - they're type declarations, not runtime code
|
|
126
|
+
if (filePath.endsWith(".d.ts")) {
|
|
127
|
+
return new Map();
|
|
128
|
+
}
|
|
129
|
+
// Try es-module-lexer first (faster and more accurate for simple cases)
|
|
130
|
+
try {
|
|
131
|
+
const [imports] = await parse(source);
|
|
132
|
+
if (imports && imports.length > 0) {
|
|
133
|
+
return await resolveImports(imports, filePath);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
catch (lexerError) {
|
|
137
|
+
// es-module-lexer failed, fall back to regex-based extraction
|
|
138
|
+
// This is common with TypeScript files that have complex syntax
|
|
139
|
+
}
|
|
140
|
+
// Fallback: Use regex-based extraction (more forgiving with TypeScript)
|
|
141
|
+
const regexImports = extractImportPathsWithRegex(source);
|
|
142
|
+
const resolvedImports = new Map();
|
|
143
|
+
for (const { path: importPath } of regexImports) {
|
|
144
|
+
// Skip node built-ins and external packages
|
|
145
|
+
if (isNodeBuiltin(importPath)) {
|
|
146
|
+
continue;
|
|
147
|
+
}
|
|
148
|
+
// Skip external node_modules packages (not starting with . or alias)
|
|
149
|
+
if (!importPath.startsWith(".") && !tsconfigManager.isAlias(importPath)) {
|
|
150
|
+
continue;
|
|
151
|
+
}
|
|
152
|
+
let resolvedPath = null;
|
|
153
|
+
// Handle alias imports
|
|
154
|
+
if (tsconfigManager.isAlias(importPath)) {
|
|
155
|
+
resolvedPath = await resolveAliasImport(importPath);
|
|
156
|
+
}
|
|
157
|
+
else if (importPath.startsWith(".")) {
|
|
158
|
+
// Handle relative imports
|
|
159
|
+
resolvedPath = await resolveRelativeImport(importPath, filePath);
|
|
160
|
+
}
|
|
161
|
+
if (resolvedPath) {
|
|
162
|
+
resolvedImports.set(importPath, resolvedPath);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
return resolvedImports;
|
|
166
|
+
}
|
|
167
|
+
catch (error) {
|
|
168
|
+
console.error(`Error parsing imports for ${filePath}:`, error);
|
|
169
|
+
return new Map();
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
async function resolveImports(imports, filePath) {
|
|
173
|
+
const resolvedImports = new Map();
|
|
174
|
+
for (const imp of imports) {
|
|
175
|
+
const importPath = imp.n;
|
|
176
|
+
if (!importPath)
|
|
177
|
+
continue;
|
|
178
|
+
// Skip node built-ins and external packages
|
|
179
|
+
if (isNodeBuiltin(importPath)) {
|
|
180
|
+
continue;
|
|
181
|
+
}
|
|
182
|
+
// Skip external node_modules packages (not starting with . or alias)
|
|
183
|
+
if (!importPath.startsWith(".") && !tsconfigManager.isAlias(importPath)) {
|
|
184
|
+
continue;
|
|
185
|
+
}
|
|
186
|
+
let resolvedPath = null;
|
|
187
|
+
// Handle alias imports (e.g., app/users/services/get-users.service)
|
|
188
|
+
if (tsconfigManager.isAlias(importPath)) {
|
|
189
|
+
resolvedPath = await resolveAliasImport(importPath);
|
|
190
|
+
}
|
|
191
|
+
else if (importPath.startsWith(".")) {
|
|
192
|
+
// Handle relative imports (e.g., ./../services/get-user.service)
|
|
193
|
+
resolvedPath = await resolveRelativeImport(importPath, filePath);
|
|
194
|
+
}
|
|
195
|
+
if (resolvedPath) {
|
|
196
|
+
// Store mapping: original import path -> resolved absolute path
|
|
197
|
+
resolvedImports.set(importPath, resolvedPath);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
return resolvedImports;
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Resolve alias imports to actual file paths with extensions
|
|
204
|
+
* Example: app/users/services/get-users.service -> /absolute/path/to/src/app/users/services/get-users.service.ts
|
|
205
|
+
*/
|
|
206
|
+
async function resolveAliasImport(importPath) {
|
|
207
|
+
// Use tsconfig manager to resolve the alias to an absolute path
|
|
208
|
+
const resolvedBase = tsconfigManager.resolveAliasToAbsolute(importPath);
|
|
209
|
+
if (!resolvedBase)
|
|
210
|
+
return null;
|
|
211
|
+
// Try to resolve with extensions
|
|
212
|
+
const resolvedPath = await tryResolveWithExtensions(resolvedBase);
|
|
213
|
+
return resolvedPath;
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Resolve relative imports to actual file paths
|
|
217
|
+
* Example: ./../services/get-user.service -> /absolute/path/to/services/get-user.service.ts
|
|
218
|
+
*/
|
|
219
|
+
async function resolveRelativeImport(importPath, currentFilePath) {
|
|
220
|
+
const dir = path.dirname(currentFilePath);
|
|
221
|
+
// Use path.resolve to handle .. and . properly, then normalize to forward slashes
|
|
222
|
+
const resolvedBase = Path.normalize(path.resolve(dir, importPath));
|
|
223
|
+
// Try to resolve with extensions
|
|
224
|
+
const resolvedPath = await tryResolveWithExtensions(resolvedBase);
|
|
225
|
+
return resolvedPath;
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Try to resolve a file path by checking different extensions
|
|
229
|
+
* TypeScript/JavaScript files can be imported without extensions
|
|
230
|
+
*
|
|
231
|
+
* @TODO: For better performance, we need to check the files in files orchestrator
|
|
232
|
+
* instead of using the file system as we will be fetching all project files anyway.
|
|
233
|
+
*/
|
|
234
|
+
// Cache for file existence checks to avoid redundant filesystem calls
|
|
235
|
+
const fileExistsCache = new Map();
|
|
236
|
+
/**
|
|
237
|
+
* Clear the file exists cache
|
|
238
|
+
* Should be called when new files are created to ensure fresh lookups
|
|
239
|
+
*/
|
|
240
|
+
function clearFileExistsCache() {
|
|
241
|
+
fileExistsCache.clear();
|
|
242
|
+
}
|
|
243
|
+
async function cachedFileExists(filePath) {
|
|
244
|
+
if (fileExistsCache.has(filePath)) {
|
|
245
|
+
return fileExistsCache.get(filePath);
|
|
246
|
+
}
|
|
247
|
+
const exists = (await fileExistsAsync(filePath));
|
|
248
|
+
fileExistsCache.set(filePath, exists);
|
|
249
|
+
return exists;
|
|
250
|
+
}
|
|
251
|
+
async function tryResolveWithExtensions(basePath) {
|
|
252
|
+
// Normalize the base path first (handle Windows paths)
|
|
253
|
+
const normalizedBase = Path.normalize(basePath);
|
|
254
|
+
// List of extensions to try, in order of preference
|
|
255
|
+
const extensions = [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"];
|
|
256
|
+
const validExtensions = new Set(extensions);
|
|
257
|
+
// If the path already has a VALID code file extension, check if it exists
|
|
258
|
+
const ext = path.extname(normalizedBase);
|
|
259
|
+
if (ext && validExtensions.has(ext)) {
|
|
260
|
+
if (await cachedFileExists(normalizedBase)) {
|
|
261
|
+
return normalizedBase;
|
|
262
|
+
}
|
|
263
|
+
// If explicit extension doesn't exist, return null
|
|
264
|
+
return null;
|
|
265
|
+
}
|
|
266
|
+
// Try all extensions in parallel for better performance
|
|
267
|
+
const pathsToCheck = extensions.map((extension) => normalizedBase + extension);
|
|
268
|
+
const results = await Promise.all(pathsToCheck.map(async (p) => ({ path: p, exists: await cachedFileExists(p) })));
|
|
269
|
+
// Return the first one that exists (in order of preference)
|
|
270
|
+
for (const result of results) {
|
|
271
|
+
if (result.exists) {
|
|
272
|
+
return result.path;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
// Try index files in directory
|
|
276
|
+
if (await isDirectoryAsync(normalizedBase)) {
|
|
277
|
+
const indexPaths = extensions.map((extension) => Path.join(normalizedBase, `index${extension}`));
|
|
278
|
+
const indexResults = await Promise.all(indexPaths.map(async (p) => ({ path: p, exists: await cachedFileExists(p) })));
|
|
279
|
+
for (const result of indexResults) {
|
|
280
|
+
if (result.exists) {
|
|
281
|
+
return result.path;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
return null;
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Check if import is a Node.js built-in module
|
|
289
|
+
*/
|
|
290
|
+
function isNodeBuiltin(importPath) {
|
|
291
|
+
const builtins = [
|
|
292
|
+
"fs",
|
|
293
|
+
"path",
|
|
294
|
+
"http",
|
|
295
|
+
"https",
|
|
296
|
+
"crypto",
|
|
297
|
+
"stream",
|
|
298
|
+
"util",
|
|
299
|
+
"events",
|
|
300
|
+
"buffer",
|
|
301
|
+
"child_process",
|
|
302
|
+
"os",
|
|
303
|
+
"url",
|
|
304
|
+
"querystring",
|
|
305
|
+
"zlib",
|
|
306
|
+
"net",
|
|
307
|
+
"tls",
|
|
308
|
+
"dns",
|
|
309
|
+
"dgram",
|
|
310
|
+
"cluster",
|
|
311
|
+
"worker_threads",
|
|
312
|
+
"perf_hooks",
|
|
313
|
+
"async_hooks",
|
|
314
|
+
"timers",
|
|
315
|
+
"readline",
|
|
316
|
+
"repl",
|
|
317
|
+
"vm",
|
|
318
|
+
"assert",
|
|
319
|
+
"console",
|
|
320
|
+
"process",
|
|
321
|
+
"v8",
|
|
322
|
+
];
|
|
323
|
+
// Check for node: prefix or direct builtin name
|
|
324
|
+
if (importPath.startsWith("node:"))
|
|
325
|
+
return true;
|
|
326
|
+
const moduleName = importPath.split("/")[0];
|
|
327
|
+
return builtins.includes(moduleName);
|
|
328
|
+
}export{clearFileExistsCache,parseImports};//# sourceMappingURL=parse-imports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-imports.js","sources":["../../src/dev2-server/parse-imports.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import {pathToFileURL}from'node:url';import {warlockCachePath}from'./utils.js';/**
|
|
2
|
+
* Runtime Import Helper
|
|
3
|
+
*
|
|
4
|
+
* This module provides a global __import function that handles cache busting
|
|
5
|
+
* for HMR. Instead of static imports, we transform them to use this helper
|
|
6
|
+
* which appends timestamps to force module reloads.
|
|
7
|
+
*
|
|
8
|
+
* Example transformation:
|
|
9
|
+
* FROM: import { foo } from "./bar.js"
|
|
10
|
+
* TO: const { foo } = await __import("./bar.js")
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Module version registry
|
|
14
|
+
* Maps module paths to their current version timestamp
|
|
15
|
+
*/
|
|
16
|
+
const moduleVersions = new Map();
|
|
17
|
+
/**
|
|
18
|
+
* Modules currently being loaded
|
|
19
|
+
* Used to detect and handle circular dependencies
|
|
20
|
+
*/
|
|
21
|
+
const loadingModules = new Set();
|
|
22
|
+
/**
|
|
23
|
+
* Module import promise cache
|
|
24
|
+
* Maps module paths to their import promises
|
|
25
|
+
* Prevents duplicate imports and handles circular dependencies
|
|
26
|
+
*/
|
|
27
|
+
const modulePromises = new Map();
|
|
28
|
+
function normalizePath(modulePath) {
|
|
29
|
+
return modulePath.startsWith("./") ? modulePath.slice(2) : modulePath;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Get last version of timestamp for a module
|
|
33
|
+
* if not found set it then return it
|
|
34
|
+
*/
|
|
35
|
+
function useModuleVersion(modulePath) {
|
|
36
|
+
const cleanPath = normalizePath(modulePath);
|
|
37
|
+
if (!moduleVersions.has(cleanPath)) {
|
|
38
|
+
moduleVersions.set(cleanPath, Date.now());
|
|
39
|
+
}
|
|
40
|
+
return moduleVersions.get(cleanPath);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Dynamic import with cache busting and circular dependency protection
|
|
44
|
+
*
|
|
45
|
+
* @param modulePath - The relative cache path (e.g., "./src-app-users-shared-utils.js")
|
|
46
|
+
* @returns The imported module
|
|
47
|
+
*/
|
|
48
|
+
async function __import(modulePath) {
|
|
49
|
+
const cleanPath = normalizePath(modulePath);
|
|
50
|
+
// Check if this module is already being loaded (circular dependency detected)
|
|
51
|
+
if (loadingModules.has(cleanPath)) {
|
|
52
|
+
// Return the existing promise - this prevents deadlock
|
|
53
|
+
// The promise should already be cached since we cache it before marking as loading
|
|
54
|
+
const existingPromise = modulePromises.get(cleanPath);
|
|
55
|
+
if (existingPromise) {
|
|
56
|
+
return existingPromise;
|
|
57
|
+
}
|
|
58
|
+
// This should rarely happen, but handle the edge case where promise isn't cached yet
|
|
59
|
+
// This can occur in a race condition scenario
|
|
60
|
+
throw new Error(`Circular dependency detected: Module "${cleanPath}" is being loaded but no promise is cached. This may indicate a timing issue in module loading.`);
|
|
61
|
+
}
|
|
62
|
+
// Get the current version timestamp for this module
|
|
63
|
+
const timestamp = useModuleVersion(modulePath);
|
|
64
|
+
// Resolve the module path relative to the cache directory
|
|
65
|
+
const absolutePath = warlockCachePath(cleanPath);
|
|
66
|
+
// Convert to file:// URL for cross-platform compatibility
|
|
67
|
+
const fileUrl = pathToFileURL(absolutePath).href;
|
|
68
|
+
// Append timestamp as query parameter to bust cache
|
|
69
|
+
const moduleUrl = `${fileUrl}?t=${timestamp}`;
|
|
70
|
+
// Create the import promise and cache it BEFORE marking as loading
|
|
71
|
+
// This ensures circular dependencies can always find the promise
|
|
72
|
+
const importPromise = import(moduleUrl);
|
|
73
|
+
modulePromises.set(cleanPath, importPromise);
|
|
74
|
+
// Mark module as loading AFTER caching the promise
|
|
75
|
+
// This order is critical for circular dependency handling
|
|
76
|
+
loadingModules.add(cleanPath);
|
|
77
|
+
try {
|
|
78
|
+
// Wait for the import to complete
|
|
79
|
+
const module = await importPromise;
|
|
80
|
+
return module;
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
// Remove from cache on error so it can be retried
|
|
84
|
+
modulePromises.delete(cleanPath);
|
|
85
|
+
throw error;
|
|
86
|
+
}
|
|
87
|
+
finally {
|
|
88
|
+
// Mark module as no longer loading
|
|
89
|
+
loadingModules.delete(cleanPath);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Update the version timestamp for a module
|
|
94
|
+
* This forces the next import to load a fresh version
|
|
95
|
+
*
|
|
96
|
+
* @param modulePath - The path to the module
|
|
97
|
+
* @param timestamp - Optional timestamp (defaults to current time)
|
|
98
|
+
*/
|
|
99
|
+
function __updateModuleVersion(modulePath, timestamp) {
|
|
100
|
+
const cleanPath = normalizePath(modulePath);
|
|
101
|
+
// Update the version timestamp
|
|
102
|
+
moduleVersions.set(cleanPath, timestamp || Date.now());
|
|
103
|
+
// Clear the cached promise so the new version gets loaded
|
|
104
|
+
// Only clear if the module is not currently loading (to avoid breaking circular deps)
|
|
105
|
+
if (!loadingModules.has(cleanPath)) {
|
|
106
|
+
modulePromises.delete(cleanPath);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Clear version for a module (reset to default behavior)
|
|
111
|
+
*
|
|
112
|
+
* @param modulePath - The path to the module
|
|
113
|
+
*/
|
|
114
|
+
function __clearModuleVersion(modulePath) {
|
|
115
|
+
const cleanPath = normalizePath(modulePath);
|
|
116
|
+
moduleVersions.delete(cleanPath);
|
|
117
|
+
// Clear cached promise if not currently loading
|
|
118
|
+
if (!loadingModules.has(cleanPath)) {
|
|
119
|
+
modulePromises.delete(cleanPath);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Clear all module versions and caches
|
|
124
|
+
*/
|
|
125
|
+
function __clearAllModuleVersions() {
|
|
126
|
+
moduleVersions.clear();
|
|
127
|
+
// Clear all cached promises that aren't currently loading
|
|
128
|
+
for (const [path] of modulePromises) {
|
|
129
|
+
if (!loadingModules.has(path)) {
|
|
130
|
+
modulePromises.delete(path);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Get current version timestamp for a module
|
|
136
|
+
*
|
|
137
|
+
* @param modulePath - The path to the module
|
|
138
|
+
* @returns The timestamp or undefined if not set
|
|
139
|
+
*/
|
|
140
|
+
function __getModuleVersion(modulePath) {
|
|
141
|
+
return moduleVersions.get(modulePath);
|
|
142
|
+
}
|
|
143
|
+
// Export for initialization
|
|
144
|
+
function initializeRuntimeImportHelper() {
|
|
145
|
+
global.__import = __import;
|
|
146
|
+
global.__updateModuleVersion = __updateModuleVersion;
|
|
147
|
+
global.__clearModuleVersion = __clearModuleVersion;
|
|
148
|
+
global.__clearAllModuleVersions = __clearAllModuleVersions;
|
|
149
|
+
global.__getModuleVersion = __getModuleVersion;
|
|
150
|
+
}export{initializeRuntimeImportHelper};//# sourceMappingURL=runtime-import-helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-import-helper.js","sources":["../../src/dev2-server/runtime-import-helper.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|