@warlock.js/core 3.0.40 → 4.0.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/cjs/code-quality/config.js +1 -7
- package/cjs/code-quality/config.js.map +1 -1
- package/cjs/code-quality/issue-tracker.js +1 -119
- package/cjs/code-quality/issue-tracker.js.map +1 -1
- package/cjs/dev2-server/config-handlers.d.ts +8 -0
- package/cjs/dev2-server/config-handlers.d.ts.map +1 -0
- package/cjs/dev2-server/config-handlers.js +56 -0
- package/cjs/dev2-server/config-handlers.js.map +1 -0
- package/cjs/dev2-server/config-loader.d.ts +61 -0
- package/cjs/dev2-server/config-loader.d.ts.map +1 -0
- package/cjs/dev2-server/config-loader.js +122 -0
- package/cjs/dev2-server/config-loader.js.map +1 -0
- package/cjs/dev2-server/connectors/base-connector.d.ts +49 -0
- package/cjs/dev2-server/connectors/base-connector.d.ts.map +1 -0
- package/cjs/dev2-server/connectors/base-connector.js +48 -0
- package/cjs/dev2-server/connectors/base-connector.js.map +1 -0
- package/cjs/dev2-server/connectors/cache-connector.d.ts +23 -0
- package/cjs/dev2-server/connectors/cache-connector.d.ts.map +1 -0
- package/cjs/dev2-server/connectors/cache-connector.js +35 -0
- package/cjs/dev2-server/connectors/cache-connector.js.map +1 -0
- package/cjs/dev2-server/connectors/database-connector.d.ts +23 -0
- package/cjs/dev2-server/connectors/database-connector.d.ts.map +1 -0
- package/cjs/dev2-server/connectors/database-connector.js +46 -0
- package/cjs/dev2-server/connectors/database-connector.js.map +1 -0
- package/cjs/dev2-server/connectors/http-connector.d.ts +29 -0
- package/cjs/dev2-server/connectors/http-connector.d.ts.map +1 -0
- package/cjs/dev2-server/connectors/http-connector.js +71 -0
- package/cjs/dev2-server/connectors/http-connector.js.map +1 -0
- package/cjs/dev2-server/connectors/index.d.ts +10 -0
- package/cjs/dev2-server/connectors/index.d.ts.map +1 -0
- package/cjs/dev2-server/connectors/types.d.ts +49 -0
- package/cjs/dev2-server/connectors/types.d.ts.map +1 -0
- package/cjs/dev2-server/connectors/types.js +9 -0
- package/cjs/dev2-server/connectors/types.js.map +1 -0
- package/cjs/dev2-server/dependency-graph.d.ts +93 -0
- package/cjs/dev2-server/dependency-graph.d.ts.map +1 -0
- package/cjs/dev2-server/dependency-graph.js +266 -0
- package/cjs/dev2-server/dependency-graph.js.map +1 -0
- package/cjs/dev2-server/dev-logger.d.ts +14 -0
- package/cjs/dev2-server/dev-logger.d.ts.map +1 -0
- package/cjs/dev2-server/dev-logger.js +105 -0
- package/cjs/dev2-server/dev-logger.js.map +1 -0
- package/cjs/dev2-server/development-server.d.ts +97 -0
- package/cjs/dev2-server/development-server.d.ts.map +1 -0
- package/cjs/dev2-server/development-server.js +224 -0
- package/cjs/dev2-server/development-server.js.map +1 -0
- package/cjs/dev2-server/events.d.ts +5 -0
- package/cjs/dev2-server/events.d.ts.map +1 -0
- package/cjs/dev2-server/events.js +4 -0
- package/cjs/dev2-server/events.js.map +1 -0
- package/cjs/dev2-server/file-event-handler.d.ts +58 -0
- package/cjs/dev2-server/file-event-handler.d.ts.map +1 -0
- package/cjs/dev2-server/file-event-handler.js +140 -0
- package/cjs/dev2-server/file-event-handler.js.map +1 -0
- package/cjs/dev2-server/file-manager.d.ts +115 -0
- package/cjs/dev2-server/file-manager.d.ts.map +1 -0
- package/cjs/dev2-server/file-manager.js +319 -0
- package/cjs/dev2-server/file-manager.js.map +1 -0
- package/cjs/dev2-server/file-operations.d.ts +54 -0
- package/cjs/dev2-server/file-operations.d.ts.map +1 -0
- package/cjs/dev2-server/file-operations.js +191 -0
- package/cjs/dev2-server/file-operations.js.map +1 -0
- package/cjs/dev2-server/files-orchestrator.d.ts +88 -0
- package/cjs/dev2-server/files-orchestrator.d.ts.map +1 -0
- package/cjs/dev2-server/files-orchestrator.js +273 -0
- package/cjs/dev2-server/files-orchestrator.js.map +1 -0
- package/cjs/dev2-server/files-watcher.d.ts +53 -0
- package/cjs/dev2-server/files-watcher.d.ts.map +1 -0
- package/cjs/dev2-server/files-watcher.js +88 -0
- package/cjs/dev2-server/files-watcher.js.map +1 -0
- package/cjs/dev2-server/flags.d.ts +10 -0
- package/cjs/dev2-server/flags.d.ts.map +1 -0
- package/cjs/dev2-server/flags.js +9 -0
- package/cjs/dev2-server/flags.js.map +1 -0
- package/cjs/dev2-server/health-checker.d.ts +3 -0
- package/cjs/dev2-server/health-checker.d.ts.map +1 -0
- package/cjs/dev2-server/health-checker.js +2 -0
- package/cjs/dev2-server/health-checker.js.map +1 -0
- package/cjs/dev2-server/import-transformer.d.ts +16 -0
- package/cjs/dev2-server/import-transformer.d.ts.map +1 -0
- package/cjs/dev2-server/import-transformer.js +248 -0
- package/cjs/dev2-server/import-transformer.js.map +1 -0
- package/cjs/dev2-server/index.d.ts +1 -0
- package/cjs/dev2-server/index.d.ts.map +1 -0
- package/cjs/dev2-server/layer-executor.d.ts +64 -0
- package/cjs/dev2-server/layer-executor.d.ts.map +1 -0
- package/cjs/dev2-server/layer-executor.js +292 -0
- package/cjs/dev2-server/layer-executor.js.map +1 -0
- package/cjs/dev2-server/manifest-manager.d.ts +80 -0
- package/cjs/dev2-server/manifest-manager.d.ts.map +1 -0
- package/cjs/dev2-server/manifest-manager.js +107 -0
- package/cjs/dev2-server/manifest-manager.js.map +1 -0
- package/cjs/dev2-server/module-loader.d.ts +100 -0
- package/cjs/dev2-server/module-loader.d.ts.map +1 -0
- package/cjs/dev2-server/module-loader.js +228 -0
- package/cjs/dev2-server/module-loader.js.map +1 -0
- package/cjs/dev2-server/package-json-manager.d.ts +16 -0
- package/cjs/dev2-server/package-json-manager.d.ts.map +1 -0
- package/cjs/dev2-server/package-json-manager.js +20 -0
- package/cjs/dev2-server/package-json-manager.js.map +1 -0
- package/cjs/dev2-server/parse-imports.d.ts +8 -0
- package/cjs/dev2-server/parse-imports.d.ts.map +1 -0
- package/cjs/dev2-server/parse-imports.js +322 -0
- package/cjs/dev2-server/parse-imports.js.map +1 -0
- package/cjs/dev2-server/path.d.ts +39 -0
- package/cjs/dev2-server/path.d.ts.map +1 -0
- package/cjs/dev2-server/path.js +56 -0
- package/cjs/dev2-server/path.js.map +1 -0
- package/cjs/dev2-server/runtime-import-helper.d.ts +9 -0
- package/cjs/dev2-server/runtime-import-helper.d.ts.map +1 -0
- package/cjs/dev2-server/runtime-import-helper.js +157 -0
- package/cjs/dev2-server/runtime-import-helper.js.map +1 -0
- package/cjs/dev2-server/special-files-collector.d.ts +114 -0
- package/cjs/dev2-server/special-files-collector.d.ts.map +1 -0
- package/cjs/dev2-server/special-files-collector.js +212 -0
- package/cjs/dev2-server/special-files-collector.js.map +1 -0
- package/cjs/dev2-server/start-development-server.d.ts +7 -0
- package/cjs/dev2-server/start-development-server.d.ts.map +1 -0
- package/cjs/dev2-server/start-development-server.js +21 -0
- package/cjs/dev2-server/start-development-server.js.map +1 -0
- package/cjs/dev2-server/transpile-file.d.ts +10 -0
- package/cjs/dev2-server/transpile-file.d.ts.map +1 -0
- package/cjs/dev2-server/transpile-file.js +31 -0
- package/cjs/dev2-server/transpile-file.js.map +1 -0
- package/cjs/dev2-server/tsconfig-manager.d.ts +45 -0
- package/cjs/dev2-server/tsconfig-manager.d.ts.map +1 -0
- package/cjs/dev2-server/tsconfig-manager.js +105 -0
- package/cjs/dev2-server/tsconfig-manager.js.map +1 -0
- package/cjs/dev2-server/types.d.ts +16 -0
- package/cjs/dev2-server/types.d.ts.map +1 -0
- package/cjs/dev2-server/utils.d.ts +8 -0
- package/cjs/dev2-server/utils.d.ts.map +1 -0
- package/cjs/dev2-server/utils.js +28 -0
- package/cjs/dev2-server/utils.js.map +1 -0
- package/cjs/router/route-registry.d.ts +4 -0
- package/cjs/router/route-registry.d.ts.map +1 -1
- package/cjs/router/route-registry.js +26 -7
- package/cjs/router/route-registry.js.map +1 -1
- package/cjs/router/router.d.ts +13 -8
- package/cjs/router/router.d.ts.map +1 -1
- package/cjs/router/router.js +73 -35
- package/cjs/router/router.js.map +1 -1
- package/cjs/router/types.d.ts +10 -2
- package/cjs/router/types.d.ts.map +1 -1
- package/cjs/starters/start-cli-server.js +1 -1
- package/cjs/starters/start-cli-server.js.map +1 -1
- package/cjs/starters/start-http-server.d.ts.map +1 -1
- package/cjs/starters/start-http-server.js +4 -99
- package/cjs/starters/start-http-server.js.map +1 -1
- package/esm/code-quality/config.js +1 -7
- package/esm/code-quality/config.js.map +1 -1
- package/esm/code-quality/issue-tracker.js +1 -119
- package/esm/code-quality/issue-tracker.js.map +1 -1
- package/esm/dev2-server/config-handlers.d.ts +8 -0
- package/esm/dev2-server/config-handlers.d.ts.map +1 -0
- package/esm/dev2-server/config-handlers.js +56 -0
- package/esm/dev2-server/config-handlers.js.map +1 -0
- package/esm/dev2-server/config-loader.d.ts +61 -0
- package/esm/dev2-server/config-loader.d.ts.map +1 -0
- package/esm/dev2-server/config-loader.js +122 -0
- package/esm/dev2-server/config-loader.js.map +1 -0
- package/esm/dev2-server/connectors/base-connector.d.ts +49 -0
- package/esm/dev2-server/connectors/base-connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/base-connector.js +48 -0
- package/esm/dev2-server/connectors/base-connector.js.map +1 -0
- package/esm/dev2-server/connectors/cache-connector.d.ts +23 -0
- package/esm/dev2-server/connectors/cache-connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/cache-connector.js +35 -0
- package/esm/dev2-server/connectors/cache-connector.js.map +1 -0
- package/esm/dev2-server/connectors/database-connector.d.ts +23 -0
- package/esm/dev2-server/connectors/database-connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/database-connector.js +46 -0
- package/esm/dev2-server/connectors/database-connector.js.map +1 -0
- package/esm/dev2-server/connectors/http-connector.d.ts +29 -0
- package/esm/dev2-server/connectors/http-connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/http-connector.js +71 -0
- package/esm/dev2-server/connectors/http-connector.js.map +1 -0
- package/esm/dev2-server/connectors/index.d.ts +10 -0
- package/esm/dev2-server/connectors/index.d.ts.map +1 -0
- package/esm/dev2-server/connectors/types.d.ts +49 -0
- package/esm/dev2-server/connectors/types.d.ts.map +1 -0
- package/esm/dev2-server/connectors/types.js +9 -0
- package/esm/dev2-server/connectors/types.js.map +1 -0
- package/esm/dev2-server/dependency-graph.d.ts +93 -0
- package/esm/dev2-server/dependency-graph.d.ts.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.d.ts +14 -0
- package/esm/dev2-server/dev-logger.d.ts.map +1 -0
- package/esm/dev2-server/dev-logger.js +105 -0
- package/esm/dev2-server/dev-logger.js.map +1 -0
- package/esm/dev2-server/development-server.d.ts +97 -0
- package/esm/dev2-server/development-server.d.ts.map +1 -0
- package/esm/dev2-server/development-server.js +224 -0
- package/esm/dev2-server/development-server.js.map +1 -0
- package/esm/dev2-server/events.d.ts +5 -0
- package/esm/dev2-server/events.d.ts.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.d.ts +58 -0
- package/esm/dev2-server/file-event-handler.d.ts.map +1 -0
- package/esm/dev2-server/file-event-handler.js +140 -0
- package/esm/dev2-server/file-event-handler.js.map +1 -0
- package/esm/dev2-server/file-manager.d.ts +115 -0
- package/esm/dev2-server/file-manager.d.ts.map +1 -0
- package/esm/dev2-server/file-manager.js +319 -0
- package/esm/dev2-server/file-manager.js.map +1 -0
- package/esm/dev2-server/file-operations.d.ts +54 -0
- package/esm/dev2-server/file-operations.d.ts.map +1 -0
- package/esm/dev2-server/file-operations.js +191 -0
- package/esm/dev2-server/file-operations.js.map +1 -0
- package/esm/dev2-server/files-orchestrator.d.ts +88 -0
- package/esm/dev2-server/files-orchestrator.d.ts.map +1 -0
- package/esm/dev2-server/files-orchestrator.js +273 -0
- package/esm/dev2-server/files-orchestrator.js.map +1 -0
- package/esm/dev2-server/files-watcher.d.ts +53 -0
- package/esm/dev2-server/files-watcher.d.ts.map +1 -0
- package/esm/dev2-server/files-watcher.js +88 -0
- package/esm/dev2-server/files-watcher.js.map +1 -0
- package/esm/dev2-server/flags.d.ts +10 -0
- package/esm/dev2-server/flags.d.ts.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.d.ts +3 -0
- package/esm/dev2-server/health-checker.d.ts.map +1 -0
- package/esm/dev2-server/health-checker.js +2 -0
- package/esm/dev2-server/health-checker.js.map +1 -0
- package/esm/dev2-server/import-transformer.d.ts +16 -0
- package/esm/dev2-server/import-transformer.d.ts.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/index.d.ts +1 -0
- package/esm/dev2-server/index.d.ts.map +1 -0
- package/esm/dev2-server/layer-executor.d.ts +64 -0
- package/esm/dev2-server/layer-executor.d.ts.map +1 -0
- package/esm/dev2-server/layer-executor.js +292 -0
- package/esm/dev2-server/layer-executor.js.map +1 -0
- package/esm/dev2-server/manifest-manager.d.ts +80 -0
- package/esm/dev2-server/manifest-manager.d.ts.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.d.ts +100 -0
- package/esm/dev2-server/module-loader.d.ts.map +1 -0
- package/esm/dev2-server/module-loader.js +228 -0
- package/esm/dev2-server/module-loader.js.map +1 -0
- package/esm/dev2-server/package-json-manager.d.ts +16 -0
- package/esm/dev2-server/package-json-manager.d.ts.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.d.ts +8 -0
- package/esm/dev2-server/parse-imports.d.ts.map +1 -0
- package/esm/dev2-server/parse-imports.js +322 -0
- package/esm/dev2-server/parse-imports.js.map +1 -0
- package/esm/dev2-server/path.d.ts +39 -0
- package/esm/dev2-server/path.d.ts.map +1 -0
- package/esm/dev2-server/path.js +56 -0
- package/esm/dev2-server/path.js.map +1 -0
- package/esm/dev2-server/runtime-import-helper.d.ts +9 -0
- package/esm/dev2-server/runtime-import-helper.d.ts.map +1 -0
- package/esm/dev2-server/runtime-import-helper.js +157 -0
- package/esm/dev2-server/runtime-import-helper.js.map +1 -0
- package/esm/dev2-server/special-files-collector.d.ts +114 -0
- package/esm/dev2-server/special-files-collector.d.ts.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/start-development-server.d.ts +7 -0
- package/esm/dev2-server/start-development-server.d.ts.map +1 -0
- package/esm/dev2-server/start-development-server.js +21 -0
- package/esm/dev2-server/start-development-server.js.map +1 -0
- package/esm/dev2-server/transpile-file.d.ts +10 -0
- package/esm/dev2-server/transpile-file.d.ts.map +1 -0
- package/esm/dev2-server/transpile-file.js +31 -0
- package/esm/dev2-server/transpile-file.js.map +1 -0
- package/esm/dev2-server/tsconfig-manager.d.ts +45 -0
- package/esm/dev2-server/tsconfig-manager.d.ts.map +1 -0
- package/esm/dev2-server/tsconfig-manager.js +105 -0
- package/esm/dev2-server/tsconfig-manager.js.map +1 -0
- package/esm/dev2-server/types.d.ts +16 -0
- package/esm/dev2-server/types.d.ts.map +1 -0
- package/esm/dev2-server/utils.d.ts +8 -0
- package/esm/dev2-server/utils.d.ts.map +1 -0
- package/esm/dev2-server/utils.js +28 -0
- package/esm/dev2-server/utils.js.map +1 -0
- package/esm/router/route-registry.d.ts +4 -0
- package/esm/router/route-registry.d.ts.map +1 -1
- package/esm/router/route-registry.js +26 -7
- package/esm/router/route-registry.js.map +1 -1
- package/esm/router/router.d.ts +13 -8
- package/esm/router/router.d.ts.map +1 -1
- package/esm/router/router.js +73 -35
- package/esm/router/router.js.map +1 -1
- package/esm/router/types.d.ts +10 -2
- package/esm/router/types.d.ts.map +1 -1
- package/esm/starters/start-cli-server.js +1 -1
- package/esm/starters/start-cli-server.js.map +1 -1
- package/esm/starters/start-http-server.d.ts.map +1 -1
- package/esm/starters/start-http-server.js +4 -99
- package/esm/starters/start-http-server.js.map +1 -1
- package/package.json +3 -3
- package/cjs/code-quality/checkers/eslint-checker.js +0 -39
- package/cjs/code-quality/checkers/eslint-checker.js.map +0 -1
- package/cjs/code-quality/checkers/typescript-checker.js +0 -76
- package/cjs/code-quality/checkers/typescript-checker.js.map +0 -1
- package/cjs/code-quality/formatters/eslint-formatter.js +0 -56
- package/cjs/code-quality/formatters/eslint-formatter.js.map +0 -1
- package/cjs/code-quality/formatters/summary-formatter.js +0 -102
- package/cjs/code-quality/formatters/summary-formatter.js.map +0 -1
- package/cjs/code-quality/formatters/typescript-formatter.js +0 -64
- package/cjs/code-quality/formatters/typescript-formatter.js.map +0 -1
- package/cjs/code-quality/project-scanner.js +0 -78
- package/cjs/code-quality/project-scanner.js.map +0 -1
- package/cjs/code-quality/single-file-checker.js +0 -153
- package/cjs/code-quality/single-file-checker.js.map +0 -1
- package/cjs/dev-server/file-health.d.ts +0 -9
- package/cjs/dev-server/file-health.d.ts.map +0 -1
- package/cjs/dev-server/file-manager.d.ts +0 -39
- package/cjs/dev-server/file-manager.d.ts.map +0 -1
- package/cjs/dev-server/files-orchestrator.d.ts +0 -1
- package/cjs/dev-server/files-orchestrator.d.ts.map +0 -1
- package/cjs/dev-server/types.d.ts +0 -2
- package/cjs/dev-server/types.d.ts.map +0 -1
- package/cjs/starters/http-server-starter.js +0 -34
- package/cjs/starters/http-server-starter.js.map +0 -1
- package/cjs/utils/internal.js +0 -3
- package/cjs/utils/internal.js.map +0 -1
- package/esm/code-quality/checkers/eslint-checker.js +0 -39
- package/esm/code-quality/checkers/eslint-checker.js.map +0 -1
- package/esm/code-quality/checkers/typescript-checker.js +0 -76
- package/esm/code-quality/checkers/typescript-checker.js.map +0 -1
- package/esm/code-quality/formatters/eslint-formatter.js +0 -56
- package/esm/code-quality/formatters/eslint-formatter.js.map +0 -1
- package/esm/code-quality/formatters/summary-formatter.js +0 -102
- package/esm/code-quality/formatters/summary-formatter.js.map +0 -1
- package/esm/code-quality/formatters/typescript-formatter.js +0 -64
- package/esm/code-quality/formatters/typescript-formatter.js.map +0 -1
- package/esm/code-quality/project-scanner.js +0 -78
- package/esm/code-quality/project-scanner.js.map +0 -1
- package/esm/code-quality/single-file-checker.js +0 -153
- package/esm/code-quality/single-file-checker.js.map +0 -1
- package/esm/dev-server/file-health.d.ts +0 -9
- package/esm/dev-server/file-health.d.ts.map +0 -1
- package/esm/dev-server/file-manager.d.ts +0 -39
- package/esm/dev-server/file-manager.d.ts.map +0 -1
- package/esm/dev-server/files-orchestrator.d.ts +0 -1
- package/esm/dev-server/files-orchestrator.d.ts.map +0 -1
- package/esm/dev-server/types.d.ts +0 -2
- package/esm/dev-server/types.d.ts.map +0 -1
- package/esm/starters/http-server-starter.js +0 -34
- package/esm/starters/http-server-starter.js.map +0 -1
- package/esm/utils/internal.js +0 -3
- package/esm/utils/internal.js.map +0 -1
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
'use strict';var copper=require('@mongez/copper'),dayjs=require('dayjs'),path=require('./path.js');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var dayjs__default=/*#__PURE__*/_interopDefault(dayjs);/**
|
|
2
|
+
* Dev server logger with Vite-like formatting
|
|
3
|
+
*/
|
|
4
|
+
// Timestamp formatter
|
|
5
|
+
function timestamp() {
|
|
6
|
+
return copper.colors.dim(`${dayjs__default.default().format("HH:mm:ss A")}`);
|
|
7
|
+
}
|
|
8
|
+
// Main log function
|
|
9
|
+
function devLog(message) {
|
|
10
|
+
console.log(`${timestamp()} ${message}`);
|
|
11
|
+
}
|
|
12
|
+
// Success log (green checkmark)
|
|
13
|
+
function devLogSuccess(message) {
|
|
14
|
+
console.log(`${timestamp()} ${copper.colors.green("✓")} ${copper.colors.green(message)}`);
|
|
15
|
+
}
|
|
16
|
+
// Error log (red X)
|
|
17
|
+
function devLogError(message, error) {
|
|
18
|
+
console.log(`${timestamp()} ${copper.colors.red("✗")} ${copper.colors.red(message)}`);
|
|
19
|
+
if (error && error.stack) {
|
|
20
|
+
// Clean up error stack to show relative paths
|
|
21
|
+
const cleanStack = cleanErrorStack(error.stack);
|
|
22
|
+
console.log(copper.colors.dim(cleanStack));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
// Info log (cyan)
|
|
26
|
+
function devLogInfo(message) {
|
|
27
|
+
console.log(`${timestamp()} ${copper.colors.cyan(message)}`);
|
|
28
|
+
}
|
|
29
|
+
// Dim log (for less important info)
|
|
30
|
+
function devLogDim(message) {
|
|
31
|
+
console.log(`${timestamp()} ${copper.colors.dim(message)}`);
|
|
32
|
+
}
|
|
33
|
+
// HMR update log (like Vite)
|
|
34
|
+
function devLogHMR(file, dependents) {
|
|
35
|
+
const relativePath = path.Path.toRelative(file);
|
|
36
|
+
const depInfo = dependents ? copper.colors.dim(` +${dependents} module${dependents > 1 ? "s" : ""}`) : "";
|
|
37
|
+
// console.log(`${timestamp()} ✨ ${colors.green("hmr update")}✨ ${colors.dim(relativePath)}${depInfo}`);
|
|
38
|
+
console.log(`${timestamp()} 🔥 ${copper.colors.green("hmr update")} ${copper.colors.dim(relativePath)}${depInfo}`);
|
|
39
|
+
}
|
|
40
|
+
// Ready log (like Vite's ready message)
|
|
41
|
+
function devLogReady(message) {
|
|
42
|
+
console.log(`\n${timestamp()} ${copper.colors.green("➜")} ${copper.colors.bold(message)}`);
|
|
43
|
+
}
|
|
44
|
+
// Section header
|
|
45
|
+
function devLogSection(title) {
|
|
46
|
+
console.log(`\n${timestamp()} ${copper.colors.bold(copper.colors.cyan(title))}`);
|
|
47
|
+
}
|
|
48
|
+
// Clean error stack to show relative paths instead of absolute cache paths
|
|
49
|
+
function cleanErrorStack(stack) {
|
|
50
|
+
const lines = stack.split("\n");
|
|
51
|
+
const cleaned = lines.map((line) => {
|
|
52
|
+
// Replace absolute cache paths with relative source paths
|
|
53
|
+
// Pattern: D:\...\dev-server\.warlock\cache\src-app-users-main.js
|
|
54
|
+
// Replace with: src/app/users/main.ts
|
|
55
|
+
let cleanedLine = line;
|
|
56
|
+
// Remove cache directory references
|
|
57
|
+
cleanedLine = cleanedLine.replace(/\.warlock[\\\/]cache[\\\/]/g, "");
|
|
58
|
+
// Convert cache file names back to source paths
|
|
59
|
+
// src-app-users-main.js → src/app/users/main.ts
|
|
60
|
+
cleanedLine = cleanedLine.replace(/([a-zA-Z0-9_-]+(?:-[a-zA-Z0-9_-]+)+)\.js/g, (match, p1) => {
|
|
61
|
+
const sourcePath = p1.replace(/-/g, "/") + ".ts";
|
|
62
|
+
return sourcePath;
|
|
63
|
+
});
|
|
64
|
+
// Make paths relative
|
|
65
|
+
try {
|
|
66
|
+
const absolutePathMatch = cleanedLine.match(/([A-Z]:\\[^:]+|\/[^:]+)(?=:|\))/);
|
|
67
|
+
if (absolutePathMatch) {
|
|
68
|
+
const absolutePath = absolutePathMatch[1];
|
|
69
|
+
const relativePath = path.Path.toRelative(absolutePath);
|
|
70
|
+
cleanedLine = cleanedLine.replace(absolutePath, relativePath);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
// If path conversion fails, keep original
|
|
75
|
+
}
|
|
76
|
+
return cleanedLine;
|
|
77
|
+
});
|
|
78
|
+
return cleaned.join("\n");
|
|
79
|
+
}
|
|
80
|
+
// Format module not found errors
|
|
81
|
+
function formatModuleNotFoundError(error) {
|
|
82
|
+
const message = error.message;
|
|
83
|
+
// Extract paths from error message
|
|
84
|
+
// Pattern: Cannot find module 'D:\...\cache\src-app-users-utils.js' imported from 'D:\...\main.js'
|
|
85
|
+
const match = message.match(/Cannot find module '([^']+)' imported from '([^']+)'/);
|
|
86
|
+
if (match) {
|
|
87
|
+
const [, modulePath, importerPath] = match;
|
|
88
|
+
// Convert cache paths to source paths
|
|
89
|
+
const cleanModulePath = modulePath
|
|
90
|
+
.replace(/\.warlock[\\\/]cache[\\\/]/, "")
|
|
91
|
+
.replace(/([a-zA-Z0-9_-]+(?:-[a-zA-Z0-9_-]+)+)\.js/, (m, p1) => p1.replace(/-/g, "/") + ".ts");
|
|
92
|
+
const cleanImporterPath = importerPath
|
|
93
|
+
.replace(/\.warlock[\\\/]cache[\\\/]/, "")
|
|
94
|
+
.replace(/([a-zA-Z0-9_-]+(?:-[a-zA-Z0-9_-]+)+)\.js/, (m, p1) => p1.replace(/-/g, "/") + ".ts");
|
|
95
|
+
// Make paths relative
|
|
96
|
+
const relativeModule = path.Path.toRelative(cleanModulePath);
|
|
97
|
+
const relativeImporter = path.Path.toRelative(cleanImporterPath);
|
|
98
|
+
return `[MODULE_NOT_FOUND] Cannot find module ${copper.colors.cyan(relativeModule)} imported from ${copper.colors.cyan(relativeImporter)}`;
|
|
99
|
+
}
|
|
100
|
+
return message;
|
|
101
|
+
}
|
|
102
|
+
// Legacy function for backward compatibility
|
|
103
|
+
function devServeLog(message) {
|
|
104
|
+
devLog(message);
|
|
105
|
+
}exports.devLog=devLog;exports.devLogDim=devLogDim;exports.devLogError=devLogError;exports.devLogHMR=devLogHMR;exports.devLogInfo=devLogInfo;exports.devLogReady=devLogReady;exports.devLogSection=devLogSection;exports.devLogSuccess=devLogSuccess;exports.devServeLog=devServeLog;exports.formatModuleNotFoundError=formatModuleNotFoundError;//# sourceMappingURL=dev-logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev-logger.js","sources":["../../src/dev2-server/dev-logger.ts"],"sourcesContent":[null],"names":["colors","dayjs","Path"],"mappings":"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"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { ConfigLoader } from "./config-loader";
|
|
2
|
+
import type { Connector } from "./connectors";
|
|
3
|
+
import { FilesOrchestrator } from "./files-orchestrator";
|
|
4
|
+
import { ModuleLoader } from "./module-loader";
|
|
5
|
+
import { SpecialFilesCollector } from "./special-files-collector";
|
|
6
|
+
/**
|
|
7
|
+
* Development Server
|
|
8
|
+
* Main coordinator for the dev server
|
|
9
|
+
* Manages file system, connectors, and hot reloading
|
|
10
|
+
*/
|
|
11
|
+
export declare class DevelopmentServer {
|
|
12
|
+
/**
|
|
13
|
+
* Special files collector - categorizes and provides access to special files
|
|
14
|
+
*/
|
|
15
|
+
private readonly specialFilesCollector;
|
|
16
|
+
/**
|
|
17
|
+
* Files orchestrator - manages file discovery, watching, and dependency graph
|
|
18
|
+
*/
|
|
19
|
+
private readonly filesOrchestrator;
|
|
20
|
+
/**
|
|
21
|
+
* Config loader - dynamically loads configuration files
|
|
22
|
+
*/
|
|
23
|
+
private readonly configLoader;
|
|
24
|
+
/**
|
|
25
|
+
* Module loader - dynamically loads application modules
|
|
26
|
+
*/
|
|
27
|
+
private moduleLoader?;
|
|
28
|
+
/**
|
|
29
|
+
* Layer executor - handles HMR and FSR execution
|
|
30
|
+
*/
|
|
31
|
+
private layerExecutor?;
|
|
32
|
+
/**
|
|
33
|
+
* Registered connectors (Database, HTTP, Cache, etc.)
|
|
34
|
+
* Sorted by priority
|
|
35
|
+
*/
|
|
36
|
+
private readonly connectors;
|
|
37
|
+
/**
|
|
38
|
+
* Whether the server is currently running
|
|
39
|
+
*/
|
|
40
|
+
private running;
|
|
41
|
+
constructor();
|
|
42
|
+
/**
|
|
43
|
+
* Register a connector
|
|
44
|
+
* Connectors are automatically sorted by priority
|
|
45
|
+
*/
|
|
46
|
+
registerConnector(connector: Connector): void;
|
|
47
|
+
/**
|
|
48
|
+
* Initialize and start the development server
|
|
49
|
+
*/
|
|
50
|
+
start(): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Initialize all registered connectors in priority order
|
|
53
|
+
*/
|
|
54
|
+
private initConnectors;
|
|
55
|
+
/**
|
|
56
|
+
* Setup event listeners for file changes
|
|
57
|
+
*/
|
|
58
|
+
private setupEventListeners;
|
|
59
|
+
/**
|
|
60
|
+
* Handle batch completion event
|
|
61
|
+
* Triggered when a batch of files has been processed
|
|
62
|
+
*/
|
|
63
|
+
private handleBatchComplete;
|
|
64
|
+
/**
|
|
65
|
+
* @deprecated Use LayerExecutor instead
|
|
66
|
+
*/
|
|
67
|
+
private handleFullServerRestart;
|
|
68
|
+
/**
|
|
69
|
+
* Gracefully shutdown the development server
|
|
70
|
+
*/
|
|
71
|
+
shutdown(): Promise<void>;
|
|
72
|
+
/**
|
|
73
|
+
* Check if server is running
|
|
74
|
+
*/
|
|
75
|
+
isRunning(): boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Get files orchestrator (for advanced usage)
|
|
78
|
+
*/
|
|
79
|
+
getFilesOrchestrator(): FilesOrchestrator;
|
|
80
|
+
/**
|
|
81
|
+
* Get special files collector
|
|
82
|
+
*/
|
|
83
|
+
getSpecialFilesCollector(): SpecialFilesCollector;
|
|
84
|
+
/**
|
|
85
|
+
* Get config loader
|
|
86
|
+
*/
|
|
87
|
+
getConfigLoader(): ConfigLoader;
|
|
88
|
+
/**
|
|
89
|
+
* Get module loader
|
|
90
|
+
*/
|
|
91
|
+
getModuleLoader(): ModuleLoader | undefined;
|
|
92
|
+
/**
|
|
93
|
+
* Get registered connectors
|
|
94
|
+
*/
|
|
95
|
+
getConnectors(): Connector[];
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=development-server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"development-server.d.ts","sourceRoot":"","sources":["../../src/dev2-server/development-server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAU9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE;;;;GAIG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA+B;IAErE;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAEhC;IAEF;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IAEnD;;OAEG;IACH,OAAO,CAAC,YAAY,CAAC,CAAe;IAEpC;;OAEG;IACH,OAAO,CAAC,aAAa,CAAC,CAAgB;IAEtC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAE9C;;OAEG;IACH,OAAO,CAAC,OAAO,CAAkB;;IAajC;;;OAGG;IACI,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAMpD;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgEnC;;OAEG;YACW,cAAc;IAM5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;YACW,mBAAmB;IAkCjC;;OAEG;YACW,uBAAuB;IA0BrC;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBtC;;OAEG;IACI,SAAS,IAAI,OAAO;IAI3B;;OAEG;IACI,oBAAoB,IAAI,iBAAiB;IAIhD;;OAEG;IACI,wBAAwB,IAAI,qBAAqB;IAIxD;;OAEG;IACI,eAAe,IAAI,YAAY;IAItC;;OAEG;IACI,eAAe,IAAI,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACI,aAAa,IAAI,SAAS,EAAE;CAGpC"}
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
'use strict';var copper=require('@mongez/copper'),events=require('@mongez/events'),bootstrap=require('../bootstrap.js'),configHandlers=require('./config-handlers.js'),configLoader=require('./config-loader.js'),cacheConnector=require('./connectors/cache-connector.js'),databaseConnector=require('./connectors/database-connector.js'),httpConnector=require('./connectors/http-connector.js'),devLogger=require('./dev-logger.js'),filesOrchestrator=require('./files-orchestrator.js'),layerExecutor=require('./layer-executor.js'),moduleLoader=require('./module-loader.js'),runtimeImportHelper=require('./runtime-import-helper.js'),specialFilesCollector=require('./special-files-collector.js');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var events__default=/*#__PURE__*/_interopDefault(events);/**
|
|
2
|
+
* Development Server
|
|
3
|
+
* Main coordinator for the dev server
|
|
4
|
+
* Manages file system, connectors, and hot reloading
|
|
5
|
+
*/
|
|
6
|
+
class DevelopmentServer {
|
|
7
|
+
/**
|
|
8
|
+
* Special files collector - categorizes and provides access to special files
|
|
9
|
+
*/
|
|
10
|
+
specialFilesCollector = new specialFilesCollector.SpecialFilesCollector();
|
|
11
|
+
/**
|
|
12
|
+
* Files orchestrator - manages file discovery, watching, and dependency graph
|
|
13
|
+
*/
|
|
14
|
+
filesOrchestrator = new filesOrchestrator.FilesOrchestrator(this.specialFilesCollector);
|
|
15
|
+
/**
|
|
16
|
+
* Config loader - dynamically loads configuration files
|
|
17
|
+
*/
|
|
18
|
+
configLoader = new configLoader.ConfigLoader();
|
|
19
|
+
/**
|
|
20
|
+
* Module loader - dynamically loads application modules
|
|
21
|
+
*/
|
|
22
|
+
moduleLoader;
|
|
23
|
+
/**
|
|
24
|
+
* Layer executor - handles HMR and FSR execution
|
|
25
|
+
*/
|
|
26
|
+
layerExecutor;
|
|
27
|
+
/**
|
|
28
|
+
* Registered connectors (Database, HTTP, Cache, etc.)
|
|
29
|
+
* Sorted by priority
|
|
30
|
+
*/
|
|
31
|
+
connectors = [];
|
|
32
|
+
/**
|
|
33
|
+
* Whether the server is currently running
|
|
34
|
+
*/
|
|
35
|
+
running = false;
|
|
36
|
+
constructor() {
|
|
37
|
+
devLogger.devLogSection("Starting Development Server...");
|
|
38
|
+
// Register special config handlers
|
|
39
|
+
configHandlers.registerConfigHandlers(this.configLoader);
|
|
40
|
+
// Register default connectors
|
|
41
|
+
this.registerConnector(new databaseConnector.DatabaseConnector());
|
|
42
|
+
this.registerConnector(new cacheConnector.CacheConnector());
|
|
43
|
+
this.registerConnector(new httpConnector.HttpConnector());
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Register a connector
|
|
47
|
+
* Connectors are automatically sorted by priority
|
|
48
|
+
*/
|
|
49
|
+
registerConnector(connector) {
|
|
50
|
+
this.connectors.push(connector);
|
|
51
|
+
// Sort by priority (lower numbers first)
|
|
52
|
+
this.connectors.sort((a, b) => a.priority - b.priority);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Initialize and start the development server
|
|
56
|
+
*/
|
|
57
|
+
async start() {
|
|
58
|
+
try {
|
|
59
|
+
const now = performance.now();
|
|
60
|
+
devLogger.devLogInfo("Bootstrapping...");
|
|
61
|
+
// STEP 1: Bootstrap (load environment variables)
|
|
62
|
+
await bootstrap.bootstrap();
|
|
63
|
+
// STEP 2: Initialize file system (discover and process files)
|
|
64
|
+
await this.filesOrchestrator.init();
|
|
65
|
+
devLogger.devLogInfo("Initializing special files...");
|
|
66
|
+
// STEP 3: Collect special files
|
|
67
|
+
this.specialFilesCollector.collect(this.filesOrchestrator.getFiles());
|
|
68
|
+
// STEP 4: Initialize runtime import helper (for HMR cache busting)
|
|
69
|
+
devLogger.devLogInfo("Initializing runtime import helper...");
|
|
70
|
+
runtimeImportHelper.initializeRuntimeImportHelper();
|
|
71
|
+
devLogger.devLogInfo("Loading configuration files...");
|
|
72
|
+
// STEP 5: Load configuration files
|
|
73
|
+
const configFiles = this.specialFilesCollector.getConfigFiles();
|
|
74
|
+
await this.configLoader.loadAll(configFiles);
|
|
75
|
+
devLogger.devLogInfo("Setting up event listeners...");
|
|
76
|
+
// STEP 6: Setup event listeners
|
|
77
|
+
this.setupEventListeners();
|
|
78
|
+
// STEP 7: Load application modules
|
|
79
|
+
devLogger.devLogInfo("Loading application modules...");
|
|
80
|
+
this.moduleLoader = new moduleLoader.ModuleLoader(this.specialFilesCollector);
|
|
81
|
+
await this.moduleLoader.loadAll();
|
|
82
|
+
// STEP 8: Initialize connectors
|
|
83
|
+
devLogger.devLogInfo("Initializing connectors...");
|
|
84
|
+
await this.initConnectors();
|
|
85
|
+
// STEP 9: Initialize layer executor
|
|
86
|
+
devLogger.devLogInfo("Initializing layer executor...");
|
|
87
|
+
this.layerExecutor = new layerExecutor.LayerExecutor(this.filesOrchestrator.getDependencyGraph(), this.specialFilesCollector, this.connectors, this.moduleLoader, this.configLoader);
|
|
88
|
+
// Mark as running
|
|
89
|
+
this.running = true;
|
|
90
|
+
const duration = performance.now() - now;
|
|
91
|
+
devLogger.devLogReady(`Development Server is ready in ${copper.colors.greenBright(parseDuration(duration))}`);
|
|
92
|
+
}
|
|
93
|
+
catch (error) {
|
|
94
|
+
devLogger.devServeLog(copper.colors.redBright(`❌ Failed to start Development Server: ${error}`));
|
|
95
|
+
await this.shutdown();
|
|
96
|
+
throw error;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Initialize all registered connectors in priority order
|
|
101
|
+
*/
|
|
102
|
+
async initConnectors() {
|
|
103
|
+
for (const connector of this.connectors) {
|
|
104
|
+
await connector.start();
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Setup event listeners for file changes
|
|
109
|
+
*/
|
|
110
|
+
setupEventListeners() {
|
|
111
|
+
// Listen to batch completion events from FileEventHandler
|
|
112
|
+
events__default.default.on("dev-server:batch-complete", (batch) => {
|
|
113
|
+
this.handleBatchComplete(batch);
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Handle batch completion event
|
|
118
|
+
* Triggered when a batch of files has been processed
|
|
119
|
+
*/
|
|
120
|
+
async handleBatchComplete(batch) {
|
|
121
|
+
// Only execute reload if server is running (skip during initial startup)
|
|
122
|
+
if (!this.running || !this.layerExecutor) {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
// Get all changed files (added + changed + deleted)
|
|
126
|
+
const allChangedPaths = [
|
|
127
|
+
...batch.added,
|
|
128
|
+
...batch.changed,
|
|
129
|
+
...batch.deleted,
|
|
130
|
+
];
|
|
131
|
+
if (allChangedPaths.length === 0) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
// Delegate to layer executor for batch reload
|
|
135
|
+
try {
|
|
136
|
+
await this.layerExecutor.executeBatchReload(allChangedPaths, this.filesOrchestrator.getFiles());
|
|
137
|
+
}
|
|
138
|
+
catch (error) {
|
|
139
|
+
devLogger.devServeLog(copper.colors.redBright(`❌ Failed to execute batch reload: ${error}`));
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* @deprecated Use LayerExecutor instead
|
|
144
|
+
*/
|
|
145
|
+
async handleFullServerRestart(connectorsToRestart, affectedFiles) {
|
|
146
|
+
devLogger.devServeLog(copper.colors.yellowBright(`🔄 FSR: Restarting ${connectorsToRestart.length} connector(s)...`));
|
|
147
|
+
devLogger.devServeLog(copper.colors.yellowBright(` Affected files: ${affectedFiles.length} file(s)`));
|
|
148
|
+
for (const connector of connectorsToRestart) {
|
|
149
|
+
try {
|
|
150
|
+
await connector.restart();
|
|
151
|
+
}
|
|
152
|
+
catch (error) {
|
|
153
|
+
devLogger.devServeLog(copper.colors.redBright(`❌ Failed to restart ${connector.name}: ${error}`));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
devLogger.devServeLog(copper.colors.greenBright(`✅ FSR completed`));
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Gracefully shutdown the development server
|
|
160
|
+
*/
|
|
161
|
+
async shutdown() {
|
|
162
|
+
if (!this.running) {
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
devLogger.devServeLog(copper.colors.redBright("🛑 Shutting down Development Server..."));
|
|
166
|
+
this.running = false;
|
|
167
|
+
// Shutdown connectors in reverse priority order
|
|
168
|
+
const reversedConnectors = [...this.connectors].reverse();
|
|
169
|
+
for (const connector of reversedConnectors) {
|
|
170
|
+
try {
|
|
171
|
+
await connector.shutdown();
|
|
172
|
+
}
|
|
173
|
+
catch (error) {
|
|
174
|
+
devLogger.devServeLog(copper.colors.redBright(`❌ Failed to shutdown ${connector.name}: ${error}`));
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
devLogger.devServeLog(copper.colors.greenBright("✅ Development Server stopped"));
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Check if server is running
|
|
181
|
+
*/
|
|
182
|
+
isRunning() {
|
|
183
|
+
return this.running;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Get files orchestrator (for advanced usage)
|
|
187
|
+
*/
|
|
188
|
+
getFilesOrchestrator() {
|
|
189
|
+
return this.filesOrchestrator;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Get special files collector
|
|
193
|
+
*/
|
|
194
|
+
getSpecialFilesCollector() {
|
|
195
|
+
return this.specialFilesCollector;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Get config loader
|
|
199
|
+
*/
|
|
200
|
+
getConfigLoader() {
|
|
201
|
+
return this.configLoader;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Get module loader
|
|
205
|
+
*/
|
|
206
|
+
getModuleLoader() {
|
|
207
|
+
return this.moduleLoader;
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Get registered connectors
|
|
211
|
+
*/
|
|
212
|
+
getConnectors() {
|
|
213
|
+
return [...this.connectors];
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
function parseDuration(diffInMilliseconds) {
|
|
217
|
+
if (diffInMilliseconds < 1000) {
|
|
218
|
+
return `${diffInMilliseconds.toFixed(2)}ms`;
|
|
219
|
+
}
|
|
220
|
+
if (diffInMilliseconds > 60_000) {
|
|
221
|
+
return `${(diffInMilliseconds / 60_000).toFixed(2)}m`;
|
|
222
|
+
}
|
|
223
|
+
return `${(diffInMilliseconds / 1000).toFixed(2)}s`;
|
|
224
|
+
}exports.DevelopmentServer=DevelopmentServer;//# sourceMappingURL=development-server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"development-server.js","sources":["../../src/dev2-server/development-server.ts"],"sourcesContent":[null],"names":["SpecialFilesCollector","FilesOrchestrator","ConfigLoader","devLogSection","registerConfigHandlers","DatabaseConnector","CacheConnector","HttpConnector","devLogInfo","bootstrap","initializeRuntimeImportHelper","ModuleLoader","LayerExecutor","devLogReady","colors","devServeLog","events"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/dev2-server/events.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;CAG7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sources":["../../src/dev2-server/events.ts"],"sourcesContent":[null],"names":[],"mappings":"aAAa,MAAA,iBAAiB,GAAG;AAC/B,IAAA,kBAAkB,EAAE,+BAA+B;AACnD,IAAA,UAAU,EAAE,uBAAuB;"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { FileOperations } from "./file-operations";
|
|
2
|
+
import type { ManifestManager } from "./manifest-manager";
|
|
3
|
+
/**
|
|
4
|
+
* File Event Handler
|
|
5
|
+
* Handles runtime file system events (change, add, delete)
|
|
6
|
+
* Collects events and processes them in batches for optimal performance
|
|
7
|
+
*/
|
|
8
|
+
export declare class FileEventHandler {
|
|
9
|
+
private readonly fileOperations;
|
|
10
|
+
private readonly manifest;
|
|
11
|
+
/**
|
|
12
|
+
* Pending events to process in batch
|
|
13
|
+
*/
|
|
14
|
+
private pendingChanges;
|
|
15
|
+
private pendingAdds;
|
|
16
|
+
private pendingDeletes;
|
|
17
|
+
/**
|
|
18
|
+
* Debounced batch processor
|
|
19
|
+
* Waits for events to settle, then processes all at once
|
|
20
|
+
*/
|
|
21
|
+
private readonly processPendingEvents;
|
|
22
|
+
/**
|
|
23
|
+
* Constructor
|
|
24
|
+
*/
|
|
25
|
+
constructor(fileOperations: FileOperations, manifest: ManifestManager);
|
|
26
|
+
/**
|
|
27
|
+
* Handle file change event
|
|
28
|
+
* Collects events for batch processing
|
|
29
|
+
*/
|
|
30
|
+
handleFileChange(absolutePath: string): void;
|
|
31
|
+
/**
|
|
32
|
+
* Handle new file added
|
|
33
|
+
* Collects events for batch processing
|
|
34
|
+
*/
|
|
35
|
+
handleFileAdd(absolutePath: string): void;
|
|
36
|
+
/**
|
|
37
|
+
* Handle file deleted
|
|
38
|
+
* Collects events for batch processing
|
|
39
|
+
*/
|
|
40
|
+
handleFileDelete(absolutePath: string): void;
|
|
41
|
+
/**
|
|
42
|
+
* Process all pending events in batch
|
|
43
|
+
*/
|
|
44
|
+
private processBatch;
|
|
45
|
+
/**
|
|
46
|
+
* Process batch of changed files
|
|
47
|
+
*/
|
|
48
|
+
private processBatchChanges;
|
|
49
|
+
/**
|
|
50
|
+
* Process batch of added files
|
|
51
|
+
*/
|
|
52
|
+
private processBatchAdds;
|
|
53
|
+
/**
|
|
54
|
+
* Process batch of deleted files
|
|
55
|
+
*/
|
|
56
|
+
private processBatchDeletes;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=file-event-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-event-handler.d.ts","sourceRoot":"","sources":["../../src/dev2-server/file-event-handler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG1D;;;;GAIG;AACH,qBAAa,gBAAgB;IAoBzB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IApB3B;;OAEG;IACH,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,cAAc,CAAqB;IAE3C;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAE7B;IAER;;OAEG;gBAEgB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,eAAe;IAG5C;;;OAGG;IACI,gBAAgB,CAAC,YAAY,EAAE,MAAM;IAU5C;;;OAGG;IACI,aAAa,CAAC,YAAY,EAAE,MAAM;IAUzC;;;OAGG;IACI,gBAAgB,CAAC,YAAY,EAAE,MAAM;IAU5C;;OAEG;YACW,YAAY;IAqC1B;;OAEG;YACW,mBAAmB;IAgBjC;;OAEG;YACW,gBAAgB;IAqB9B;;OAEG;YACW,mBAAmB;CAQlC"}
|