@antelopejs/core 0.3.2 → 1.1.0
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/dist/core/build/build-artifact.d.ts +59 -0
- package/dist/core/build/build-artifact.js +72 -0
- package/dist/core/build/build-artifact.js.map +1 -0
- package/dist/{utils → core/cli}/cli-ui.d.ts +5 -15
- package/dist/core/cli/cli-ui.js +154 -0
- package/dist/core/cli/cli-ui.js.map +1 -0
- package/dist/{utils → core/cli}/command.d.ts +1 -1
- package/dist/core/cli/command.js +25 -0
- package/dist/core/cli/command.js.map +1 -0
- package/dist/{cli → core/cli/commands}/config/get.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/config/get.js +11 -10
- package/dist/core/cli/commands/config/get.js.map +1 -0
- package/dist/{cli → core/cli/commands}/config/index.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/config/index.js +5 -4
- package/dist/core/cli/commands/config/index.js.map +1 -0
- package/dist/{cli → core/cli/commands}/config/reset.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/config/reset.js +17 -16
- package/dist/core/cli/commands/config/reset.js.map +1 -0
- package/dist/{cli/module/exports → core/cli/commands/config}/set.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/config/set.js +15 -11
- package/dist/core/cli/commands/config/set.js.map +1 -0
- package/dist/{cli → core/cli/commands}/config/show.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/config/show.js +13 -11
- package/dist/core/cli/commands/config/show.js.map +1 -0
- package/dist/{cli/module/exports → core/cli/commands/module}/index.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/module/index.js +3 -7
- package/dist/core/cli/commands/module/index.js.map +1 -0
- package/dist/{cli → core/cli/commands}/module/init.d.ts +1 -1
- package/dist/core/cli/commands/module/init.js +208 -0
- package/dist/core/cli/commands/module/init.js.map +1 -0
- package/dist/{cli → core/cli/commands}/module/test.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/module/test.js +13 -15
- package/dist/core/cli/commands/module/test.js.map +1 -0
- package/dist/{cli/config/set.d.ts → core/cli/commands/project/build.d.ts} +1 -1
- package/dist/core/cli/commands/project/build.js +71 -0
- package/dist/core/cli/commands/project/build.js.map +1 -0
- package/dist/core/cli/commands/project/dev.d.ts +20 -0
- package/dist/core/cli/commands/project/dev.js +262 -0
- package/dist/core/cli/commands/project/dev.js.map +1 -0
- package/dist/{cli/module/imports → core/cli/commands/project}/index.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/project/index.js +10 -3
- package/dist/core/cli/commands/project/index.js.map +1 -0
- package/dist/{cli → core/cli/commands}/project/init.d.ts +1 -1
- package/dist/core/cli/commands/project/init.js +118 -0
- package/dist/core/cli/commands/project/init.js.map +1 -0
- package/dist/{cli/module → core/cli/commands/project/logging}/index.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/project/logging/index.js +4 -3
- package/dist/core/cli/commands/project/logging/index.js.map +1 -0
- package/dist/{cli → core/cli/commands}/project/logging/set.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/project/logging/set.js +99 -89
- package/dist/core/cli/commands/project/logging/set.js.map +1 -0
- package/dist/{cli → core/cli/commands}/project/logging/show.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/project/logging/show.js +37 -34
- package/dist/core/cli/commands/project/logging/show.js.map +1 -0
- package/dist/{cli → core/cli/commands}/project/modules/add.d.ts +3 -3
- package/dist/core/cli/commands/project/modules/add.js +237 -0
- package/dist/core/cli/commands/project/modules/add.js.map +1 -0
- package/dist/core/cli/commands/project/modules/index.d.ts +2 -0
- package/dist/{cli → core/cli/commands}/project/modules/index.js +5 -4
- package/dist/core/cli/commands/project/modules/index.js.map +1 -0
- package/dist/{cli/module/imports → core/cli/commands/project/modules}/install.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/project/modules/install.js +79 -85
- package/dist/core/cli/commands/project/modules/install.js.map +1 -0
- package/dist/{cli/module/imports → core/cli/commands/project/modules}/list.d.ts +1 -1
- package/dist/core/cli/commands/project/modules/list.js +123 -0
- package/dist/core/cli/commands/project/modules/list.js.map +1 -0
- package/dist/{cli → core/cli/commands}/project/modules/remove.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/project/modules/remove.js +31 -28
- package/dist/core/cli/commands/project/modules/remove.js.map +1 -0
- package/dist/{cli/module/imports → core/cli/commands/project/modules}/update.d.ts +1 -1
- package/dist/{cli → core/cli/commands}/project/modules/update.js +26 -22
- package/dist/core/cli/commands/project/modules/update.js.map +1 -0
- package/dist/core/cli/commands/project/run.d.ts +1 -0
- package/dist/core/cli/commands/project/run.js +12 -0
- package/dist/core/cli/commands/project/run.js.map +1 -0
- package/dist/core/cli/commands/project/start.d.ts +2 -0
- package/dist/core/cli/commands/project/start.js +57 -0
- package/dist/core/cli/commands/project/start.js.map +1 -0
- package/dist/core/cli/commands/shared/project-command.d.ts +8 -0
- package/dist/core/cli/commands/shared/project-command.js +32 -0
- package/dist/core/cli/commands/shared/project-command.js.map +1 -0
- package/dist/core/cli/common.d.ts +23 -0
- package/dist/core/cli/common.js +231 -0
- package/dist/core/cli/common.js.map +1 -0
- package/dist/core/cli/git-operations.d.ts +30 -0
- package/dist/core/cli/git-operations.js +159 -0
- package/dist/core/cli/git-operations.js.map +1 -0
- package/dist/core/cli/index.d.ts +4 -0
- package/dist/core/cli/index.js +81 -0
- package/dist/core/cli/index.js.map +1 -0
- package/dist/core/cli/logging-utils.d.ts +17 -0
- package/dist/{logging/utils.js → core/cli/logging-utils.js} +49 -43
- package/dist/core/cli/logging-utils.js.map +1 -0
- package/dist/{utils → core/cli}/package-manager.d.ts +4 -3
- package/dist/core/cli/package-manager.js +106 -0
- package/dist/core/cli/package-manager.js.map +1 -0
- package/dist/{logging → core/cli}/terminal-display.d.ts +1 -3
- package/dist/{logging → core/cli}/terminal-display.js +6 -7
- package/dist/core/cli/terminal-display.js.map +1 -0
- package/dist/core/cli/version-check.d.ts +2 -0
- package/dist/{cli → core/cli}/version-check.js +9 -5
- package/dist/core/cli/version-check.js.map +1 -0
- package/dist/core/config/config-loader.d.ts +20 -0
- package/dist/core/config/config-loader.js +98 -0
- package/dist/core/config/config-loader.js.map +1 -0
- package/dist/core/config/config-parser.d.ts +16 -0
- package/dist/core/config/config-parser.js +134 -0
- package/dist/core/config/config-parser.js.map +1 -0
- package/dist/core/config/config-paths.d.ts +7 -0
- package/dist/core/config/config-paths.js +32 -0
- package/dist/core/config/config-paths.js.map +1 -0
- package/dist/core/config/index.d.ts +3 -0
- package/dist/core/config/index.js +20 -0
- package/dist/core/config/index.js.map +1 -0
- package/dist/core/downloaders/git.d.ts +8 -0
- package/dist/core/downloaders/git.js +96 -0
- package/dist/core/downloaders/git.js.map +1 -0
- package/dist/core/downloaders/local-folder.d.ts +8 -0
- package/dist/core/downloaders/local-folder.js +70 -0
- package/dist/core/downloaders/local-folder.js.map +1 -0
- package/dist/core/downloaders/local.d.ts +8 -0
- package/dist/core/downloaders/local.js +59 -0
- package/dist/core/downloaders/local.js.map +1 -0
- package/dist/core/downloaders/package.d.ts +11 -0
- package/dist/core/downloaders/package.js +99 -0
- package/dist/core/downloaders/package.js.map +1 -0
- package/dist/core/downloaders/registry.d.ts +11 -0
- package/dist/core/downloaders/registry.js +85 -0
- package/dist/core/downloaders/registry.js.map +1 -0
- package/dist/core/downloaders/types.d.ts +11 -0
- package/dist/core/downloaders/types.js +3 -0
- package/dist/core/downloaders/types.js.map +1 -0
- package/dist/core/downloaders/utils.d.ts +5 -0
- package/dist/core/downloaders/utils.js +77 -0
- package/dist/core/downloaders/utils.js.map +1 -0
- package/dist/core/filesystem.d.ts +20 -0
- package/dist/core/filesystem.js +80 -0
- package/dist/core/filesystem.js.map +1 -0
- package/dist/core/interface-registry.d.ts +7 -0
- package/dist/core/interface-registry.js +23 -0
- package/dist/core/interface-registry.js.map +1 -0
- package/dist/{common/cache.d.ts → core/module-cache.d.ts} +8 -4
- package/dist/{common/cache.js → core/module-cache.js} +52 -32
- package/dist/core/module-cache.js.map +1 -0
- package/dist/core/module-lifecycle.d.ts +13 -0
- package/dist/core/module-lifecycle.js +62 -0
- package/dist/core/module-lifecycle.js.map +1 -0
- package/dist/core/module-manager.d.ts +66 -0
- package/dist/core/module-manager.js +343 -0
- package/dist/core/module-manager.js.map +1 -0
- package/dist/core/module-manifest.d.ts +45 -0
- package/dist/core/module-manifest.js +180 -0
- package/dist/core/module-manifest.js.map +1 -0
- package/dist/core/module-registry.d.ts +7 -0
- package/dist/core/module-registry.js +17 -0
- package/dist/core/module-registry.js.map +1 -0
- package/dist/core/module-tracker.d.ts +8 -0
- package/dist/core/module-tracker.js +14 -0
- package/dist/core/module-tracker.js.map +1 -0
- package/dist/core/module.d.ts +19 -0
- package/dist/core/module.js +106 -0
- package/dist/core/module.js.map +1 -0
- package/dist/core/repl/repl-session.d.ts +10 -0
- package/dist/core/repl/repl-session.js +26 -0
- package/dist/core/repl/repl-session.js.map +1 -0
- package/dist/core/resolution/interface-resolution.d.ts +14 -0
- package/dist/core/resolution/interface-resolution.js +34 -0
- package/dist/core/resolution/interface-resolution.js.map +1 -0
- package/dist/core/resolution/path-mapper.d.ts +7 -0
- package/dist/core/resolution/path-mapper.js +79 -0
- package/dist/core/resolution/path-mapper.js.map +1 -0
- package/dist/core/resolution/resolver-detour.d.ts +8 -0
- package/dist/core/resolution/resolver-detour.js +42 -0
- package/dist/core/resolution/resolver-detour.js.map +1 -0
- package/dist/core/resolution/resolver.d.ts +23 -0
- package/dist/core/resolution/resolver.js +55 -0
- package/dist/core/resolution/resolver.js.map +1 -0
- package/dist/core/runtime/build-runtime.d.ts +8 -0
- package/dist/core/runtime/build-runtime.js +129 -0
- package/dist/core/runtime/build-runtime.js.map +1 -0
- package/dist/core/runtime/module-loading.d.ts +16 -0
- package/dist/core/runtime/module-loading.js +333 -0
- package/dist/core/runtime/module-loading.js.map +1 -0
- package/dist/core/runtime/runtime-bootstrap.d.ts +9 -0
- package/dist/core/runtime/runtime-bootstrap.js +92 -0
- package/dist/core/runtime/runtime-bootstrap.js.map +1 -0
- package/dist/core/runtime/runtime-types.d.ts +34 -0
- package/dist/core/runtime/runtime-types.js +3 -0
- package/dist/core/runtime/runtime-types.js.map +1 -0
- package/dist/core/shutdown/index.d.ts +1 -0
- package/dist/core/shutdown/index.js +18 -0
- package/dist/core/shutdown/index.js.map +1 -0
- package/dist/core/shutdown/shutdown-manager.d.ts +23 -0
- package/dist/core/shutdown/shutdown-manager.js +108 -0
- package/dist/core/shutdown/shutdown-manager.js.map +1 -0
- package/dist/core/test/stub-interface.d.ts +3 -0
- package/dist/core/test/stub-interface.js +40 -0
- package/dist/core/test/stub-interface.js.map +1 -0
- package/dist/core/test/test-context.d.ts +18 -0
- package/dist/core/test/test-context.js +34 -0
- package/dist/core/test/test-context.js.map +1 -0
- package/dist/core/test/test-module.d.ts +15 -0
- package/dist/core/test/test-module.js +234 -0
- package/dist/core/test/test-module.js.map +1 -0
- package/dist/core/test/test-runner.d.ts +8 -0
- package/dist/core/test/test-runner.js +33 -0
- package/dist/core/test/test-runner.js.map +1 -0
- package/dist/core/watch/file-hasher.d.ts +6 -0
- package/dist/core/watch/file-hasher.js +16 -0
- package/dist/core/watch/file-hasher.js.map +1 -0
- package/dist/core/watch/file-watcher.d.ts +24 -0
- package/dist/core/watch/file-watcher.js +179 -0
- package/dist/core/watch/file-watcher.js.map +1 -0
- package/dist/core/watch/hot-reload.d.ts +10 -0
- package/dist/core/watch/hot-reload.js +36 -0
- package/dist/core/watch/hot-reload.js.map +1 -0
- package/dist/index.d.ts +17 -8
- package/dist/index.js +143 -150
- package/dist/index.js.map +1 -1
- package/dist/logging/index.d.ts +13 -3
- package/dist/logging/index.js +213 -9
- package/dist/logging/index.js.map +1 -1
- package/dist/logging/log-filter.d.ts +16 -0
- package/dist/logging/log-filter.js +68 -0
- package/dist/logging/log-filter.js.map +1 -0
- package/dist/logging/log-formatter.d.ts +24 -0
- package/dist/logging/log-formatter.js +76 -0
- package/dist/logging/log-formatter.js.map +1 -0
- package/dist/logging/logger.d.ts +36 -6
- package/dist/logging/logger.js +87 -113
- package/dist/logging/logger.js.map +1 -1
- package/dist/types/config.types.d.ts +7 -0
- package/dist/types/config.types.js +3 -0
- package/dist/types/config.types.js.map +1 -0
- package/dist/types/filesystem.types.d.ts +19 -0
- package/dist/types/filesystem.types.js +3 -0
- package/dist/types/filesystem.types.js.map +1 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/index.js +20 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/module.types.d.ts +11 -0
- package/dist/types/module.types.js +10 -0
- package/dist/types/module.types.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.js +20 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/lock.js +15 -10
- package/dist/utils/lock.js.map +1 -1
- package/dist/utils/object.d.ts +3 -2
- package/dist/utils/object.js +28 -13
- package/dist/utils/object.js.map +1 -1
- package/dist/utils/promise.d.ts +5 -3
- package/dist/utils/promise.js +15 -15
- package/dist/utils/promise.js.map +1 -1
- package/package.json +50 -38
- package/dist/cli/common.d.ts +0 -22
- package/dist/cli/common.js +0 -105
- package/dist/cli/common.js.map +0 -1
- package/dist/cli/config/get.js.map +0 -1
- package/dist/cli/config/index.js.map +0 -1
- package/dist/cli/config/reset.js.map +0 -1
- package/dist/cli/config/set.js.map +0 -1
- package/dist/cli/config/show.js.map +0 -1
- package/dist/cli/git.d.ts +0 -51
- package/dist/cli/git.js +0 -349
- package/dist/cli/git.js.map +0 -1
- package/dist/cli/index.d.ts +0 -2
- package/dist/cli/index.js +0 -68
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/module/exports/generate.d.ts +0 -2
- package/dist/cli/module/exports/generate.js +0 -153
- package/dist/cli/module/exports/generate.js.map +0 -1
- package/dist/cli/module/exports/index.js +0 -16
- package/dist/cli/module/exports/index.js.map +0 -1
- package/dist/cli/module/exports/set.js +0 -47
- package/dist/cli/module/exports/set.js.map +0 -1
- package/dist/cli/module/imports/add.d.ts +0 -10
- package/dist/cli/module/imports/add.js +0 -175
- package/dist/cli/module/imports/add.js.map +0 -1
- package/dist/cli/module/imports/index.js +0 -22
- package/dist/cli/module/imports/index.js.map +0 -1
- package/dist/cli/module/imports/install.js +0 -132
- package/dist/cli/module/imports/install.js.map +0 -1
- package/dist/cli/module/imports/list.js +0 -93
- package/dist/cli/module/imports/list.js.map +0 -1
- package/dist/cli/module/imports/remove.d.ts +0 -2
- package/dist/cli/module/imports/remove.js +0 -100
- package/dist/cli/module/imports/remove.js.map +0 -1
- package/dist/cli/module/imports/update.js +0 -161
- package/dist/cli/module/imports/update.js.map +0 -1
- package/dist/cli/module/index.js.map +0 -1
- package/dist/cli/module/init.js +0 -194
- package/dist/cli/module/init.js.map +0 -1
- package/dist/cli/module/test.js.map +0 -1
- package/dist/cli/project/index.d.ts +0 -2
- package/dist/cli/project/index.js.map +0 -1
- package/dist/cli/project/init.js +0 -120
- package/dist/cli/project/init.js.map +0 -1
- package/dist/cli/project/logging/index.d.ts +0 -2
- package/dist/cli/project/logging/index.js.map +0 -1
- package/dist/cli/project/logging/set.js.map +0 -1
- package/dist/cli/project/logging/show.js.map +0 -1
- package/dist/cli/project/modules/add.js +0 -239
- package/dist/cli/project/modules/add.js.map +0 -1
- package/dist/cli/project/modules/index.d.ts +0 -2
- package/dist/cli/project/modules/index.js.map +0 -1
- package/dist/cli/project/modules/install.d.ts +0 -2
- package/dist/cli/project/modules/install.js.map +0 -1
- package/dist/cli/project/modules/list.d.ts +0 -2
- package/dist/cli/project/modules/list.js +0 -92
- package/dist/cli/project/modules/list.js.map +0 -1
- package/dist/cli/project/modules/remove.js.map +0 -1
- package/dist/cli/project/modules/update.d.ts +0 -2
- package/dist/cli/project/modules/update.js.map +0 -1
- package/dist/cli/project/run.d.ts +0 -2
- package/dist/cli/project/run.js +0 -147
- package/dist/cli/project/run.js.map +0 -1
- package/dist/cli/version-check.d.ts +0 -1
- package/dist/cli/version-check.js.map +0 -1
- package/dist/common/cache.js.map +0 -1
- package/dist/common/config.d.ts +0 -55
- package/dist/common/config.js +0 -168
- package/dist/common/config.js.map +0 -1
- package/dist/common/downloader/git.d.ts +0 -8
- package/dist/common/downloader/git.js +0 -97
- package/dist/common/downloader/git.js.map +0 -1
- package/dist/common/downloader/index.d.ts +0 -13
- package/dist/common/downloader/index.js +0 -58
- package/dist/common/downloader/index.js.map +0 -1
- package/dist/common/downloader/local.d.ts +0 -12
- package/dist/common/downloader/local.js +0 -70
- package/dist/common/downloader/local.js.map +0 -1
- package/dist/common/downloader/package.d.ts +0 -6
- package/dist/common/downloader/package.js +0 -58
- package/dist/common/downloader/package.js.map +0 -1
- package/dist/common/manifest.d.ts +0 -48
- package/dist/common/manifest.js +0 -126
- package/dist/common/manifest.js.map +0 -1
- package/dist/interfaces/core/beta/decorators.d.ts +0 -29
- package/dist/interfaces/core/beta/decorators.js +0 -72
- package/dist/interfaces/core/beta/decorators.js.map +0 -1
- package/dist/interfaces/core/beta/index.d.ts +0 -58
- package/dist/interfaces/core/beta/index.js +0 -266
- package/dist/interfaces/core/beta/index.js.map +0 -1
- package/dist/interfaces/core/beta/modules.d.ts +0 -26
- package/dist/interfaces/core/beta/modules.js +0 -31
- package/dist/interfaces/core/beta/modules.js.map +0 -1
- package/dist/interfaces/logging/beta/index.d.ts +0 -27
- package/dist/interfaces/logging/beta/index.js +0 -61
- package/dist/interfaces/logging/beta/index.js.map +0 -1
- package/dist/interfaces/logging/beta/listener.d.ts +0 -9
- package/dist/interfaces/logging/beta/listener.js +0 -5
- package/dist/interfaces/logging/beta/listener.js.map +0 -1
- package/dist/loader/index.d.ts +0 -45
- package/dist/loader/index.js +0 -490
- package/dist/loader/index.js.map +0 -1
- package/dist/loader/module.d.ts +0 -29
- package/dist/loader/module.js +0 -142
- package/dist/loader/module.js.map +0 -1
- package/dist/logging/terminal-display.js.map +0 -1
- package/dist/logging/utils.d.ts +0 -21
- package/dist/logging/utils.js.map +0 -1
- package/dist/utils/cli-ui.js +0 -245
- package/dist/utils/cli-ui.js.map +0 -1
- package/dist/utils/command.js +0 -23
- package/dist/utils/command.js.map +0 -1
- package/dist/utils/package-manager.js +0 -99
- package/dist/utils/package-manager.js.map +0 -1
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.createLoaderContext = createLoaderContext;
|
|
40
|
+
exports.registerCoreModuleInterface = registerCoreModuleInterface;
|
|
41
|
+
exports.registerCoreInterfaces = registerCoreInterfaces;
|
|
42
|
+
exports.buildModuleConfigs = buildModuleConfigs;
|
|
43
|
+
exports.getWatchDirs = getWatchDirs;
|
|
44
|
+
exports.reloadWatchedModule = reloadWatchedModule;
|
|
45
|
+
exports.loadModuleEntriesForManager = loadModuleEntriesForManager;
|
|
46
|
+
exports.constructAndStartModules = constructAndStartModules;
|
|
47
|
+
exports.ensureGraphIsValid = ensureGraphIsValid;
|
|
48
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
49
|
+
const coreInterfaceBeta = __importStar(require("@antelopejs/interface-core"));
|
|
50
|
+
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
51
|
+
const moduleInterfaceBeta = __importStar(require("@antelopejs/interface-core/modules"));
|
|
52
|
+
const terminal_display_1 = require("../cli/terminal-display");
|
|
53
|
+
const git_1 = require("../downloaders/git");
|
|
54
|
+
const local_1 = require("../downloaders/local");
|
|
55
|
+
const local_folder_1 = require("../downloaders/local-folder");
|
|
56
|
+
const package_1 = require("../downloaders/package");
|
|
57
|
+
const registry_1 = require("../downloaders/registry");
|
|
58
|
+
const filesystem_1 = require("../filesystem");
|
|
59
|
+
const module_1 = require("../module");
|
|
60
|
+
const module_cache_1 = require("../module-cache");
|
|
61
|
+
const module_manifest_1 = require("../module-manifest");
|
|
62
|
+
const interface_resolution_1 = require("../resolution/interface-resolution");
|
|
63
|
+
const Logger = new logging_1.Logging.Channel("loader");
|
|
64
|
+
const MODULE_STATUS_MAP = {
|
|
65
|
+
loaded: "loaded",
|
|
66
|
+
constructed: "constructed",
|
|
67
|
+
active: "active",
|
|
68
|
+
};
|
|
69
|
+
function mapImportOverrides(overrides) {
|
|
70
|
+
const mapped = new Map();
|
|
71
|
+
if (!overrides) {
|
|
72
|
+
return mapped;
|
|
73
|
+
}
|
|
74
|
+
for (const [interfaceName, modules] of Object.entries(overrides)) {
|
|
75
|
+
const overrideEntries = modules.map((module) => ({ module }));
|
|
76
|
+
mapped.set(interfaceName, overrideEntries);
|
|
77
|
+
}
|
|
78
|
+
return mapped;
|
|
79
|
+
}
|
|
80
|
+
function exportImportOverrides(overrides) {
|
|
81
|
+
const result = {};
|
|
82
|
+
if (!overrides) {
|
|
83
|
+
return result;
|
|
84
|
+
}
|
|
85
|
+
for (const [interfaceName, modules] of overrides.entries()) {
|
|
86
|
+
result[interfaceName] = modules.map((entry) => entry.module);
|
|
87
|
+
}
|
|
88
|
+
return result;
|
|
89
|
+
}
|
|
90
|
+
function getModuleStatus(module) {
|
|
91
|
+
return MODULE_STATUS_MAP[module.state] ?? "unknown";
|
|
92
|
+
}
|
|
93
|
+
function toModuleSource(source) {
|
|
94
|
+
const type = source?.type;
|
|
95
|
+
if (type !== "local" &&
|
|
96
|
+
type !== "git" &&
|
|
97
|
+
type !== "package" &&
|
|
98
|
+
type !== "local-folder") {
|
|
99
|
+
throw new Error(`Unsupported module source type: ${String(type)}`);
|
|
100
|
+
}
|
|
101
|
+
return source;
|
|
102
|
+
}
|
|
103
|
+
async function createLoaderContext(config) {
|
|
104
|
+
const fs = new filesystem_1.NodeFileSystem();
|
|
105
|
+
const cache = new module_cache_1.ModuleCache(config.cacheFolder, fs);
|
|
106
|
+
await cache.load();
|
|
107
|
+
const registry = new registry_1.DownloaderRegistry();
|
|
108
|
+
(0, local_1.registerLocalDownloader)(registry, { fs });
|
|
109
|
+
(0, local_folder_1.registerLocalFolderDownloader)(registry, { fs });
|
|
110
|
+
(0, package_1.registerPackageDownloader)(registry, { fs });
|
|
111
|
+
(0, git_1.registerGitDownloader)(registry, { fs });
|
|
112
|
+
return {
|
|
113
|
+
fs,
|
|
114
|
+
cache,
|
|
115
|
+
registry,
|
|
116
|
+
projectFolder: config.projectFolder,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
function registerCoreModuleInterface(manager, loaderContext) {
|
|
120
|
+
void coreInterfaceBeta.ImplementInterface(moduleInterfaceBeta, {
|
|
121
|
+
ListModules: async () => manager.listModules(),
|
|
122
|
+
GetModuleInfo: async (moduleId) => {
|
|
123
|
+
const entry = manager.getModuleEntry(moduleId);
|
|
124
|
+
if (!entry) {
|
|
125
|
+
throw new Error(`Module not found: ${moduleId}`);
|
|
126
|
+
}
|
|
127
|
+
return {
|
|
128
|
+
source: entry.module.manifest.source,
|
|
129
|
+
config: entry.config.config,
|
|
130
|
+
disabledExports: [...(entry.config.disabledExports ?? new Set())],
|
|
131
|
+
importOverrides: exportImportOverrides(entry.config.importOverrides),
|
|
132
|
+
localPath: entry.module.manifest.folder,
|
|
133
|
+
status: getModuleStatus(entry.module),
|
|
134
|
+
};
|
|
135
|
+
},
|
|
136
|
+
LoadModule: async (moduleId, declaration, autostart = false) => {
|
|
137
|
+
const source = toModuleSource(declaration.source);
|
|
138
|
+
const manifests = await loaderContext.registry.load(loaderContext.projectFolder, loaderContext.cache, {
|
|
139
|
+
...source,
|
|
140
|
+
id: moduleId,
|
|
141
|
+
});
|
|
142
|
+
const moduleConfig = {
|
|
143
|
+
config: declaration.config,
|
|
144
|
+
disabledExports: new Set(declaration.disabledExports ?? []),
|
|
145
|
+
importOverrides: mapImportOverrides(declaration.importOverrides),
|
|
146
|
+
};
|
|
147
|
+
const created = manager.addModules(manifests.map((manifest) => ({ manifest, config: moduleConfig })));
|
|
148
|
+
await manager.constructModules(created);
|
|
149
|
+
if (autostart) {
|
|
150
|
+
manager.startModules(created);
|
|
151
|
+
}
|
|
152
|
+
return created.map(({ module }) => module.id);
|
|
153
|
+
},
|
|
154
|
+
StartModule: async (moduleId) => {
|
|
155
|
+
manager.getModule(moduleId)?.start();
|
|
156
|
+
},
|
|
157
|
+
StopModule: async (moduleId) => {
|
|
158
|
+
await manager.getModule(moduleId)?.stop();
|
|
159
|
+
},
|
|
160
|
+
DestroyModule: async (moduleId) => {
|
|
161
|
+
await manager.getModule(moduleId)?.destroy();
|
|
162
|
+
},
|
|
163
|
+
ReloadModule: async (moduleId) => {
|
|
164
|
+
await reloadLoadedModuleFromSource(manager, loaderContext, moduleId);
|
|
165
|
+
},
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
async function registerCoreInterfaces(manager) {
|
|
169
|
+
const coreFolder = node_path_1.default.resolve(node_path_1.default.join(__dirname, "..", "..", ".."));
|
|
170
|
+
const coreSource = { type: "local", path: coreFolder };
|
|
171
|
+
const coreManifest = await module_manifest_1.ModuleManifest.create(coreFolder, coreSource, "antelopejs");
|
|
172
|
+
manager.addStaticModule({ manifest: coreManifest });
|
|
173
|
+
return coreManifest;
|
|
174
|
+
}
|
|
175
|
+
function buildModuleOverrides(importOverrides) {
|
|
176
|
+
const overrides = new Map();
|
|
177
|
+
if (!importOverrides) {
|
|
178
|
+
return overrides;
|
|
179
|
+
}
|
|
180
|
+
importOverrides.forEach((override) => {
|
|
181
|
+
const existing = overrides.get(override.interface) ?? [];
|
|
182
|
+
existing.push({ module: override.source, id: override.id });
|
|
183
|
+
overrides.set(override.interface, existing);
|
|
184
|
+
});
|
|
185
|
+
return overrides;
|
|
186
|
+
}
|
|
187
|
+
function buildManifestEntries(manifests, moduleConfig) {
|
|
188
|
+
const overrides = buildModuleOverrides(moduleConfig.importOverrides);
|
|
189
|
+
const disabledExports = new Set(moduleConfig.disabledExports ?? []);
|
|
190
|
+
return manifests.map((manifest) => ({
|
|
191
|
+
manifest,
|
|
192
|
+
config: {
|
|
193
|
+
config: moduleConfig.config,
|
|
194
|
+
disabledExports,
|
|
195
|
+
importOverrides: overrides,
|
|
196
|
+
},
|
|
197
|
+
}));
|
|
198
|
+
}
|
|
199
|
+
async function loadModuleEntries(modules, context) {
|
|
200
|
+
const modulePromises = Object.entries(modules).map(async ([id, moduleConfig]) => {
|
|
201
|
+
const source = { ...moduleConfig.source, id };
|
|
202
|
+
Logger.Debug(`Loading module ${id}`);
|
|
203
|
+
try {
|
|
204
|
+
Logger.Trace(`Starting LoadModule for ${id}`);
|
|
205
|
+
const manifests = await context.registry.load(context.projectFolder, context.cache, source);
|
|
206
|
+
Logger.Trace(`Module manifest loaded for ${id}`);
|
|
207
|
+
return buildManifestEntries(manifests, moduleConfig);
|
|
208
|
+
}
|
|
209
|
+
catch (error) {
|
|
210
|
+
await terminal_display_1.terminalDisplay.failSpinner(`Failed to load module ${id}`);
|
|
211
|
+
await terminal_display_1.terminalDisplay.cleanSpinner();
|
|
212
|
+
Logger.Error(`Unexpected error while loading module ${id}:`);
|
|
213
|
+
Logger.Error(error);
|
|
214
|
+
throw error;
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
return (await Promise.all(modulePromises)).flat();
|
|
218
|
+
}
|
|
219
|
+
async function loadEntryExports() {
|
|
220
|
+
await terminal_display_1.terminalDisplay.startSpinner(`Loading exports`);
|
|
221
|
+
Logger.Trace(`Loading exports`);
|
|
222
|
+
await terminal_display_1.terminalDisplay.stopSpinner(`Exports loaded`);
|
|
223
|
+
}
|
|
224
|
+
function validateModuleNameCollisions(entries) {
|
|
225
|
+
const seenNames = new Set();
|
|
226
|
+
entries.forEach((entry) => {
|
|
227
|
+
if (seenNames.has(entry.manifest.name)) {
|
|
228
|
+
Logger.Error(`Detected module id collision (name in package.json): ${entry.manifest.name}`);
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
231
|
+
seenNames.add(entry.manifest.name);
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
async function buildModuleConfigs(config, loaderContext) {
|
|
235
|
+
await terminal_display_1.terminalDisplay.startSpinner(`Loading modules`);
|
|
236
|
+
const modules = await loadModuleEntries(config.modules, loaderContext);
|
|
237
|
+
await terminal_display_1.terminalDisplay.stopSpinner(`Modules loaded`);
|
|
238
|
+
await loadEntryExports();
|
|
239
|
+
validateModuleNameCollisions(modules);
|
|
240
|
+
return modules;
|
|
241
|
+
}
|
|
242
|
+
function getWatchDirs(source) {
|
|
243
|
+
if (source.type !== "local") {
|
|
244
|
+
return [""];
|
|
245
|
+
}
|
|
246
|
+
const localSource = source;
|
|
247
|
+
if (Array.isArray(localSource.watchDir)) {
|
|
248
|
+
return localSource.watchDir;
|
|
249
|
+
}
|
|
250
|
+
return localSource.watchDir ? [localSource.watchDir] : [""];
|
|
251
|
+
}
|
|
252
|
+
async function loadModuleManifestFromSource(loaderContext, source, moduleId) {
|
|
253
|
+
const manifests = await loaderContext.registry.load(loaderContext.projectFolder, loaderContext.cache, {
|
|
254
|
+
...source,
|
|
255
|
+
id: moduleId,
|
|
256
|
+
});
|
|
257
|
+
const [manifest] = manifests;
|
|
258
|
+
if (!manifest) {
|
|
259
|
+
throw new Error(`Failed to reload module ${moduleId}: no manifest returned`);
|
|
260
|
+
}
|
|
261
|
+
return manifest;
|
|
262
|
+
}
|
|
263
|
+
function ensureReloadedModuleId(module, moduleId) {
|
|
264
|
+
if (module.id !== moduleId) {
|
|
265
|
+
throw new Error(`Reloaded module id mismatch: expected ${moduleId}, got ${module.id}`);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
async function reloadLoadedModuleFromSource(manager, loaderContext, moduleId) {
|
|
269
|
+
const entry = manager.getLoadedModuleEntry(moduleId);
|
|
270
|
+
if (!entry) {
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
await entry.module.destroy();
|
|
274
|
+
manager.unrequireModuleFiles(moduleId);
|
|
275
|
+
const manifest = await loadModuleManifestFromSource(loaderContext, entry.module.manifest.source, moduleId);
|
|
276
|
+
const replacement = new module_1.Module(manifest);
|
|
277
|
+
ensureReloadedModuleId(replacement, moduleId);
|
|
278
|
+
manager.replaceLoadedModule(moduleId, replacement);
|
|
279
|
+
manager.refreshAssociations();
|
|
280
|
+
await replacement.construct(entry.config.config);
|
|
281
|
+
replacement.start();
|
|
282
|
+
}
|
|
283
|
+
async function reloadWatchedModule(manager, moduleId, loaderContext) {
|
|
284
|
+
await reloadLoadedModuleFromSource(manager, loaderContext, moduleId);
|
|
285
|
+
}
|
|
286
|
+
async function loadModuleEntriesForManager(manager, config, runtimeInterface, loaderContext) {
|
|
287
|
+
const resolvedLoaderContext = loaderContext ?? (await createLoaderContext(config));
|
|
288
|
+
if (runtimeInterface) {
|
|
289
|
+
await registerCoreModuleInterface(manager, resolvedLoaderContext);
|
|
290
|
+
}
|
|
291
|
+
await registerCoreInterfaces(manager);
|
|
292
|
+
const entries = await buildModuleConfigs(config, resolvedLoaderContext);
|
|
293
|
+
manager.addModules(entries);
|
|
294
|
+
return entries;
|
|
295
|
+
}
|
|
296
|
+
async function constructAndStartModules(manager) {
|
|
297
|
+
await terminal_display_1.terminalDisplay.startSpinner(`Constructing modules`);
|
|
298
|
+
Logger.Trace(`Constructing modules`);
|
|
299
|
+
try {
|
|
300
|
+
await manager.constructAll();
|
|
301
|
+
}
|
|
302
|
+
catch (error) {
|
|
303
|
+
await terminal_display_1.terminalDisplay.failSpinner(`Failed to construct modules`);
|
|
304
|
+
throw error;
|
|
305
|
+
}
|
|
306
|
+
await terminal_display_1.terminalDisplay.stopSpinner(`Done loading`);
|
|
307
|
+
manager.startAll();
|
|
308
|
+
}
|
|
309
|
+
function ensureGraphIsValid(manager) {
|
|
310
|
+
const allModules = manager.getAllManagedModules();
|
|
311
|
+
const loadedModules = [...manager.getLoadedModules()];
|
|
312
|
+
const loadedIds = new Set(loadedModules.map(({ module }) => module.id));
|
|
313
|
+
const providers = allModules.map(({ module, config }) => ({
|
|
314
|
+
implements: module.manifest.implements ?? [],
|
|
315
|
+
disabledExports: config.disabledExports,
|
|
316
|
+
}));
|
|
317
|
+
const staticDeps = allModules
|
|
318
|
+
.filter(({ module }) => !loadedIds.has(module.id))
|
|
319
|
+
.flatMap(({ module }) => Object.keys(module.manifest.manifest.dependencies ?? {}));
|
|
320
|
+
const consumers = loadedModules.map(({ module }) => ({
|
|
321
|
+
id: module.id,
|
|
322
|
+
folder: module.manifest.folder,
|
|
323
|
+
dependencies: module.manifest.manifest.dependencies ?? {},
|
|
324
|
+
}));
|
|
325
|
+
const unresolved = (0, interface_resolution_1.findUnresolvedInterfaces)(providers, consumers, staticDeps);
|
|
326
|
+
if (unresolved.length > 0) {
|
|
327
|
+
const details = unresolved
|
|
328
|
+
.map(({ moduleId, interfacePackage }) => ` - ${moduleId} requires ${interfacePackage}`)
|
|
329
|
+
.join("\n");
|
|
330
|
+
throw new Error(`Unresolved interface dependencies:\n${details}\n\nRun 'ajs project modules install' to resolve missing dependencies.`);
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
//# sourceMappingURL=module-loading.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-loading.js","sourceRoot":"","sources":["../../../src/core/runtime/module-loading.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { LaunchOptions } from "../../types";
|
|
2
|
+
import { type LoadedConfig } from "../config/config-loader";
|
|
3
|
+
import type { ShutdownManager } from "../shutdown";
|
|
4
|
+
import type { BuildOptions, NormalizedLoadedConfig, ProjectRuntimeConfig } from "./runtime-types";
|
|
5
|
+
export declare function setupProcessHandlers(shutdownManager?: ShutdownManager): void;
|
|
6
|
+
export declare function withRaisedMaxListeners<T>(task: () => Promise<T>): Promise<T>;
|
|
7
|
+
export declare function applyVerboseChannels(verbose?: string[]): void;
|
|
8
|
+
export declare function normalizeLoadedConfig(loadedConfig: LoadedConfig, projectFolder: string): NormalizedLoadedConfig;
|
|
9
|
+
export declare function loadProjectRuntimeConfig(projectFolder: string, env: string, options: BuildOptions | LaunchOptions, shutdownManager?: ShutdownManager): Promise<ProjectRuntimeConfig>;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.setupProcessHandlers = setupProcessHandlers;
|
|
7
|
+
exports.withRaisedMaxListeners = withRaisedMaxListeners;
|
|
8
|
+
exports.applyVerboseChannels = applyVerboseChannels;
|
|
9
|
+
exports.normalizeLoadedConfig = normalizeLoadedConfig;
|
|
10
|
+
exports.loadProjectRuntimeConfig = loadProjectRuntimeConfig;
|
|
11
|
+
const node_events_1 = __importDefault(require("node:events"));
|
|
12
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
13
|
+
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
14
|
+
const logging_2 = require("../../logging");
|
|
15
|
+
const config_loader_1 = require("../config/config-loader");
|
|
16
|
+
const filesystem_1 = require("../filesystem");
|
|
17
|
+
const EXIT_CODE_ERROR = 1;
|
|
18
|
+
const DEFAULT_MAX_EVENT_LISTENERS = 50;
|
|
19
|
+
let processHandlersReady = false;
|
|
20
|
+
let activeShutdownManager;
|
|
21
|
+
function shutdownProcess(exitCode) {
|
|
22
|
+
if (activeShutdownManager) {
|
|
23
|
+
void activeShutdownManager.shutdown(exitCode);
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
process.exit(exitCode);
|
|
27
|
+
}
|
|
28
|
+
function setupProcessHandlers(shutdownManager) {
|
|
29
|
+
if (shutdownManager) {
|
|
30
|
+
activeShutdownManager = shutdownManager;
|
|
31
|
+
}
|
|
32
|
+
if (processHandlersReady) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
processHandlersReady = true;
|
|
36
|
+
process.on("uncaughtException", (error) => {
|
|
37
|
+
logging_1.Logging.Error("Uncaught exception:", error);
|
|
38
|
+
shutdownProcess(EXIT_CODE_ERROR);
|
|
39
|
+
});
|
|
40
|
+
process.on("unhandledRejection", (reason) => {
|
|
41
|
+
logging_1.Logging.Error("Unhandled rejection:", reason);
|
|
42
|
+
if (reason instanceof AggregateError && reason.errors) {
|
|
43
|
+
for (const err of reason.errors) {
|
|
44
|
+
logging_1.Logging.Error(" -", err);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
shutdownProcess(EXIT_CODE_ERROR);
|
|
48
|
+
});
|
|
49
|
+
process.on("warning", (warning) => {
|
|
50
|
+
logging_1.Logging.Warn("Warning:", warning);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async function withRaisedMaxListeners(task) {
|
|
54
|
+
const originalMaxListeners = node_events_1.default.defaultMaxListeners;
|
|
55
|
+
node_events_1.default.defaultMaxListeners = Math.max(originalMaxListeners, DEFAULT_MAX_EVENT_LISTENERS);
|
|
56
|
+
try {
|
|
57
|
+
return await task();
|
|
58
|
+
}
|
|
59
|
+
finally {
|
|
60
|
+
node_events_1.default.defaultMaxListeners = originalMaxListeners;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
function applyVerboseChannels(verbose) {
|
|
64
|
+
if (!verbose) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
for (const channel of verbose) {
|
|
68
|
+
(0, logging_2.addChannelFilter)(channel, 0);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
function normalizeLoadedConfig(loadedConfig, projectFolder) {
|
|
72
|
+
const absoluteCache = node_path_1.default.isAbsolute(loadedConfig.cacheFolder)
|
|
73
|
+
? loadedConfig.cacheFolder
|
|
74
|
+
: node_path_1.default.join(projectFolder, loadedConfig.cacheFolder);
|
|
75
|
+
return {
|
|
76
|
+
...loadedConfig,
|
|
77
|
+
modules: loadedConfig.modules ?? {},
|
|
78
|
+
cacheFolder: absoluteCache,
|
|
79
|
+
projectFolder: node_path_1.default.resolve(projectFolder),
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
async function loadProjectRuntimeConfig(projectFolder, env, options, shutdownManager) {
|
|
83
|
+
setupProcessHandlers(shutdownManager);
|
|
84
|
+
const fs = new filesystem_1.NodeFileSystem();
|
|
85
|
+
const loader = new config_loader_1.ConfigLoader(fs);
|
|
86
|
+
const loadedConfig = await loader.load(projectFolder, env);
|
|
87
|
+
const normalizedConfig = normalizeLoadedConfig(loadedConfig, projectFolder);
|
|
88
|
+
(0, logging_2.setupAntelopeProjectLogging)(loadedConfig.logging);
|
|
89
|
+
applyVerboseChannels(options.verbose);
|
|
90
|
+
return { fs, normalizedConfig };
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=runtime-bootstrap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-bootstrap.js","sourceRoot":"","sources":["../../../src/core/runtime/runtime-bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { LoadedConfig } from "../config/config-loader";
|
|
2
|
+
import type { ExpandedModuleConfig } from "../config/config-parser";
|
|
3
|
+
import type { DownloaderRegistry } from "../downloaders/registry";
|
|
4
|
+
import type { NodeFileSystem } from "../filesystem";
|
|
5
|
+
import type { ModuleCache } from "../module-cache";
|
|
6
|
+
import type { ModuleConfig } from "../module-manager";
|
|
7
|
+
import type { ModuleManifest } from "../module-manifest";
|
|
8
|
+
export interface ModuleOverrideRef {
|
|
9
|
+
module: string;
|
|
10
|
+
id?: string;
|
|
11
|
+
}
|
|
12
|
+
export type ModuleOverrideMap = Map<string, ModuleOverrideRef[]>;
|
|
13
|
+
export interface ModuleManifestEntry {
|
|
14
|
+
manifest: ModuleManifest;
|
|
15
|
+
config: ModuleConfig;
|
|
16
|
+
}
|
|
17
|
+
export interface BuildOptions {
|
|
18
|
+
verbose?: string[];
|
|
19
|
+
}
|
|
20
|
+
export interface NormalizedLoadedConfig extends LoadedConfig {
|
|
21
|
+
cacheFolder: string;
|
|
22
|
+
projectFolder: string;
|
|
23
|
+
modules: Record<string, ExpandedModuleConfig>;
|
|
24
|
+
}
|
|
25
|
+
export interface ProjectRuntimeConfig {
|
|
26
|
+
fs: NodeFileSystem;
|
|
27
|
+
normalizedConfig: NormalizedLoadedConfig;
|
|
28
|
+
}
|
|
29
|
+
export interface LoaderContext {
|
|
30
|
+
fs: NodeFileSystem;
|
|
31
|
+
cache: ModuleCache;
|
|
32
|
+
registry: DownloaderRegistry;
|
|
33
|
+
projectFolder: string;
|
|
34
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-types.js","sourceRoot":"","sources":["../../../src/core/runtime/runtime-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./shutdown-manager";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./shutdown-manager"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/shutdown/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type ShutdownHandler = () => Promise<void> | void;
|
|
2
|
+
export declare class ShutdownManager {
|
|
3
|
+
private timeoutMs;
|
|
4
|
+
private handlers;
|
|
5
|
+
private isShuttingDown;
|
|
6
|
+
private shutdownPromise?;
|
|
7
|
+
private requestedExitCode?;
|
|
8
|
+
private sigintHandler?;
|
|
9
|
+
private sigtermHandler?;
|
|
10
|
+
constructor(timeoutMs?: number);
|
|
11
|
+
register(handler: ShutdownHandler, priority: number): void;
|
|
12
|
+
unregister(handler: ShutdownHandler): void;
|
|
13
|
+
shutdown(exitCode?: number): Promise<void>;
|
|
14
|
+
get active(): boolean;
|
|
15
|
+
setupSignalHandlers(): void;
|
|
16
|
+
removeSignalHandlers(): void;
|
|
17
|
+
private detachSignalHandler;
|
|
18
|
+
private handleSignal;
|
|
19
|
+
private updateRequestedExitCode;
|
|
20
|
+
private executeShutdown;
|
|
21
|
+
private runHandlersWithTimeout;
|
|
22
|
+
private executeHandlers;
|
|
23
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ShutdownManager = void 0;
|
|
4
|
+
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
5
|
+
const Logger = new logging_1.Logging.Channel("shutdown");
|
|
6
|
+
const DEFAULT_SHUTDOWN_TIMEOUT_MS = 10000;
|
|
7
|
+
const EXIT_CODE_SUCCESS = 0;
|
|
8
|
+
const FORCE_EXIT_CODE = 1;
|
|
9
|
+
class ShutdownManager {
|
|
10
|
+
timeoutMs;
|
|
11
|
+
handlers = [];
|
|
12
|
+
isShuttingDown = false;
|
|
13
|
+
shutdownPromise;
|
|
14
|
+
requestedExitCode;
|
|
15
|
+
sigintHandler;
|
|
16
|
+
sigtermHandler;
|
|
17
|
+
constructor(timeoutMs = DEFAULT_SHUTDOWN_TIMEOUT_MS) {
|
|
18
|
+
this.timeoutMs = timeoutMs;
|
|
19
|
+
}
|
|
20
|
+
register(handler, priority) {
|
|
21
|
+
this.handlers.push({ handler, priority });
|
|
22
|
+
}
|
|
23
|
+
unregister(handler) {
|
|
24
|
+
this.handlers = this.handlers.filter((entry) => entry.handler !== handler);
|
|
25
|
+
}
|
|
26
|
+
shutdown(exitCode) {
|
|
27
|
+
this.updateRequestedExitCode(exitCode);
|
|
28
|
+
if (this.shutdownPromise) {
|
|
29
|
+
return this.shutdownPromise;
|
|
30
|
+
}
|
|
31
|
+
this.isShuttingDown = true;
|
|
32
|
+
this.shutdownPromise = this.executeShutdown();
|
|
33
|
+
return this.shutdownPromise;
|
|
34
|
+
}
|
|
35
|
+
get active() {
|
|
36
|
+
return this.isShuttingDown;
|
|
37
|
+
}
|
|
38
|
+
setupSignalHandlers() {
|
|
39
|
+
if (this.sigintHandler || this.sigtermHandler) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
this.sigintHandler = () => this.handleSignal("SIGINT");
|
|
43
|
+
this.sigtermHandler = () => this.handleSignal("SIGTERM");
|
|
44
|
+
process.on("SIGINT", this.sigintHandler);
|
|
45
|
+
process.on("SIGTERM", this.sigtermHandler);
|
|
46
|
+
}
|
|
47
|
+
removeSignalHandlers() {
|
|
48
|
+
this.detachSignalHandler("SIGINT", this.sigintHandler);
|
|
49
|
+
this.detachSignalHandler("SIGTERM", this.sigtermHandler);
|
|
50
|
+
this.sigintHandler = undefined;
|
|
51
|
+
this.sigtermHandler = undefined;
|
|
52
|
+
}
|
|
53
|
+
detachSignalHandler(signal, handler) {
|
|
54
|
+
if (!handler) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
process.removeListener(signal, handler);
|
|
58
|
+
}
|
|
59
|
+
handleSignal(signal) {
|
|
60
|
+
if (this.isShuttingDown) {
|
|
61
|
+
Logger.Warn(`Received ${signal} during shutdown. Forcing process exit.`);
|
|
62
|
+
process.exit(FORCE_EXIT_CODE);
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
void this.shutdown(EXIT_CODE_SUCCESS);
|
|
66
|
+
}
|
|
67
|
+
updateRequestedExitCode(exitCode) {
|
|
68
|
+
if (typeof exitCode !== "number") {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
if (typeof this.requestedExitCode !== "number") {
|
|
72
|
+
this.requestedExitCode = exitCode;
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (this.requestedExitCode === EXIT_CODE_SUCCESS &&
|
|
76
|
+
exitCode !== EXIT_CODE_SUCCESS) {
|
|
77
|
+
this.requestedExitCode = exitCode;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
async executeShutdown() {
|
|
81
|
+
await this.runHandlersWithTimeout();
|
|
82
|
+
if (typeof this.requestedExitCode === "number") {
|
|
83
|
+
process.exit(this.requestedExitCode);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
runHandlersWithTimeout() {
|
|
87
|
+
const timeoutPromise = new Promise((resolve) => {
|
|
88
|
+
setTimeout(() => {
|
|
89
|
+
Logger.Error("Shutdown timed out, forcing completion");
|
|
90
|
+
resolve();
|
|
91
|
+
}, this.timeoutMs);
|
|
92
|
+
});
|
|
93
|
+
return Promise.race([this.executeHandlers(), timeoutPromise]);
|
|
94
|
+
}
|
|
95
|
+
async executeHandlers() {
|
|
96
|
+
const sortedHandlers = [...this.handlers].sort((left, right) => right.priority - left.priority);
|
|
97
|
+
for (const { handler } of sortedHandlers) {
|
|
98
|
+
try {
|
|
99
|
+
await handler();
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
Logger.Error("Shutdown handler error:", error);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
exports.ShutdownManager = ShutdownManager;
|
|
108
|
+
//# sourceMappingURL=shutdown-manager.js.map
|