@antelopejs/core 0.3.2 → 1.0.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 +4 -14
- 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 +176 -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 +83 -84
- 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 +203 -0
- package/dist/core/cli/common.js.map +1 -0
- package/dist/{cli/git.d.ts → core/cli/git-operations.d.ts} +1 -20
- 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 +65 -0
- package/dist/core/module-manager.js +340 -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/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 +310 -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 +142 -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 +44 -32
- 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.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,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Resolver = void 0;
|
|
4
|
+
class Resolver {
|
|
5
|
+
pathMapper;
|
|
6
|
+
moduleByFolder = new Map();
|
|
7
|
+
modulesById = new Map();
|
|
8
|
+
interfacePackages = new Map();
|
|
9
|
+
stubModulePath;
|
|
10
|
+
constructor(pathMapper) {
|
|
11
|
+
this.pathMapper = pathMapper;
|
|
12
|
+
}
|
|
13
|
+
resolve(request, parent) {
|
|
14
|
+
const matchingModule = this.resolveLocalModule(parent?.filename);
|
|
15
|
+
if (matchingModule) {
|
|
16
|
+
const mapped = this.pathMapper.resolve(request, matchingModule.manifest);
|
|
17
|
+
if (mapped) {
|
|
18
|
+
return { resolvedPath: mapped };
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
const interfaceResult = this.resolveInterfacePackage(request);
|
|
22
|
+
if (interfaceResult) {
|
|
23
|
+
return interfaceResult;
|
|
24
|
+
}
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
resolveInterfacePackage(request) {
|
|
28
|
+
for (const [pkg, rootDir] of this.interfacePackages) {
|
|
29
|
+
if (request === pkg) {
|
|
30
|
+
return { resolvedPath: rootDir };
|
|
31
|
+
}
|
|
32
|
+
if (request.startsWith(`${pkg}/`)) {
|
|
33
|
+
return { resolvedPath: request, resolveFrom: rootDir };
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
resolveLocalModule(fileName) {
|
|
39
|
+
if (!fileName) {
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
let matchingFolder = "";
|
|
43
|
+
let matchingModule;
|
|
44
|
+
for (const [folder, module] of this.moduleByFolder) {
|
|
45
|
+
if (fileName.startsWith(folder) &&
|
|
46
|
+
folder.length > matchingFolder.length) {
|
|
47
|
+
matchingFolder = folder;
|
|
48
|
+
matchingModule = module;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return matchingModule;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.Resolver = Resolver;
|
|
55
|
+
//# sourceMappingURL=resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/core/resolution/resolver.ts"],"names":[],"mappings":";;;AAaA,MAAa,QAAQ;IAMC;IALJ,cAAc,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC9C,WAAW,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC3C,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvD,cAAc,CAAU;IAE/B,YAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAE9C,OAAO,CACL,OAAe,EACf,MAA8B;QAE9B,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACjE,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;YACzE,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,uBAAuB,CAAC,OAAe;QAC7C,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACpD,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;gBACpB,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;YACnC,CAAC;YACD,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;YACzD,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,kBAAkB,CAAC,QAAiB;QAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,cAAc,GAAG,EAAE,CAAC;QACxB,IAAI,cAAqC,CAAC;QAC1C,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACnD,IACE,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;gBAC3B,MAAM,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,EACrC,CAAC;gBACD,cAAc,GAAG,MAAM,CAAC;gBACxB,cAAc,GAAG,MAAM,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;CACF;AAzDD,4BAyDC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type BuildArtifact } from "../build/build-artifact";
|
|
2
|
+
import type { NodeFileSystem } from "../filesystem";
|
|
3
|
+
import type { ModuleManifestEntry, NormalizedLoadedConfig } from "./runtime-types";
|
|
4
|
+
export declare function mapArtifactModuleEntries(artifact: BuildArtifact): ModuleManifestEntry[];
|
|
5
|
+
export declare function readBuildArtifactOrThrow(projectFolder: string, fs: NodeFileSystem): Promise<BuildArtifact>;
|
|
6
|
+
export declare function warnIfBuildIsStale(projectFolder: string, artifact: BuildArtifact, fs: NodeFileSystem): Promise<void>;
|
|
7
|
+
export declare function ensureBuildModulesExist(artifact: BuildArtifact, fs: NodeFileSystem): Promise<void>;
|
|
8
|
+
export declare function writeProjectBuildArtifact(normalizedConfig: NormalizedLoadedConfig, env: string, entries: ModuleManifestEntry[], fs: NodeFileSystem): Promise<void>;
|
|
@@ -0,0 +1,129 @@
|
|
|
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.mapArtifactModuleEntries = mapArtifactModuleEntries;
|
|
7
|
+
exports.readBuildArtifactOrThrow = readBuildArtifactOrThrow;
|
|
8
|
+
exports.warnIfBuildIsStale = warnIfBuildIsStale;
|
|
9
|
+
exports.ensureBuildModulesExist = ensureBuildModulesExist;
|
|
10
|
+
exports.writeProjectBuildArtifact = writeProjectBuildArtifact;
|
|
11
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
12
|
+
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
13
|
+
const build_artifact_1 = require("../build/build-artifact");
|
|
14
|
+
const module_manifest_1 = require("../module-manifest");
|
|
15
|
+
const STALE_BUILD_WARNING = `Configuration has changed since last build. Run 'ajs project build' to update.`;
|
|
16
|
+
const BUILD_MISSING_REBUILD_HINT = "Run 'ajs project build --env <env>' first.";
|
|
17
|
+
function mapBuildImportOverrides(overrides) {
|
|
18
|
+
if (!overrides || overrides.size === 0) {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
const entries = [];
|
|
22
|
+
for (const [interfaceName, modules] of overrides.entries()) {
|
|
23
|
+
for (const { module, id } of modules) {
|
|
24
|
+
entries.push({ interface: interfaceName, source: module, id });
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return entries;
|
|
28
|
+
}
|
|
29
|
+
function mapArtifactImportOverrides(overrides) {
|
|
30
|
+
if (!overrides || overrides.length === 0) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
const mapped = new Map();
|
|
34
|
+
overrides.forEach((override) => {
|
|
35
|
+
const entries = mapped.get(override.interface) ?? [];
|
|
36
|
+
const entry = {
|
|
37
|
+
module: override.source,
|
|
38
|
+
id: override.id,
|
|
39
|
+
};
|
|
40
|
+
entries.push(entry);
|
|
41
|
+
mapped.set(override.interface, entries);
|
|
42
|
+
});
|
|
43
|
+
return mapped;
|
|
44
|
+
}
|
|
45
|
+
function serializeBuildModuleEntries(entries) {
|
|
46
|
+
const modules = {};
|
|
47
|
+
entries.forEach((entry) => {
|
|
48
|
+
const manifest = entry.manifest.serialize();
|
|
49
|
+
const importOverrides = mapBuildImportOverrides(entry.config.importOverrides);
|
|
50
|
+
const disabledExports = entry.config.disabledExports
|
|
51
|
+
? Array.from(entry.config.disabledExports)
|
|
52
|
+
: undefined;
|
|
53
|
+
modules[entry.manifest.name] = {
|
|
54
|
+
...manifest,
|
|
55
|
+
config: entry.config.config,
|
|
56
|
+
importOverrides,
|
|
57
|
+
disabledExports,
|
|
58
|
+
};
|
|
59
|
+
});
|
|
60
|
+
return modules;
|
|
61
|
+
}
|
|
62
|
+
function mapArtifactModuleEntries(artifact) {
|
|
63
|
+
return Object.values(artifact.modules).map((entry) => {
|
|
64
|
+
const importOverrides = mapArtifactImportOverrides(entry.importOverrides);
|
|
65
|
+
return {
|
|
66
|
+
manifest: module_manifest_1.ModuleManifest.fromBuildEntry(entry),
|
|
67
|
+
config: {
|
|
68
|
+
config: entry.config,
|
|
69
|
+
importOverrides,
|
|
70
|
+
disabledExports: new Set(entry.disabledExports ?? []),
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
function createMissingBuildError(projectFolder) {
|
|
76
|
+
const buildPath = node_path_1.default.relative(node_path_1.default.resolve(projectFolder), (0, build_artifact_1.getBuildArtifactPath)(projectFolder));
|
|
77
|
+
const messagePath = buildPath && buildPath.length > 0
|
|
78
|
+
? buildPath
|
|
79
|
+
: ".antelope/build/build.json";
|
|
80
|
+
return new Error(`No build found at ${messagePath}\n${BUILD_MISSING_REBUILD_HINT}`);
|
|
81
|
+
}
|
|
82
|
+
async function readBuildArtifactOrThrow(projectFolder, fs) {
|
|
83
|
+
try {
|
|
84
|
+
return await (0, build_artifact_1.readBuildArtifact)(projectFolder, fs);
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
throw createMissingBuildError(projectFolder);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
async function warnIfBuildIsStale(projectFolder, artifact, fs) {
|
|
91
|
+
try {
|
|
92
|
+
const latestHash = await (0, build_artifact_1.computeConfigHash)(projectFolder, artifact.env, fs);
|
|
93
|
+
if (latestHash !== artifact.configHash) {
|
|
94
|
+
logging_1.Logging.Warn(STALE_BUILD_WARNING);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
logging_1.Logging.Warn(STALE_BUILD_WARNING);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
async function ensureBuildModulesExist(artifact, fs) {
|
|
102
|
+
const checks = Object.values(artifact.modules).map(async (entry) => {
|
|
103
|
+
if (await fs.exists(entry.folder)) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
throw new Error(`Module '${entry.name}' not found at ${entry.folder}\n` +
|
|
107
|
+
`The build artifact references files that no longer exist.\n` +
|
|
108
|
+
`Run 'ajs project build' to rebuild.`);
|
|
109
|
+
});
|
|
110
|
+
await Promise.all(checks);
|
|
111
|
+
}
|
|
112
|
+
async function writeProjectBuildArtifact(normalizedConfig, env, entries, fs) {
|
|
113
|
+
const configHash = await (0, build_artifact_1.computeConfigHash)(normalizedConfig.projectFolder, env, fs);
|
|
114
|
+
const modules = serializeBuildModuleEntries(entries);
|
|
115
|
+
const artifact = (0, build_artifact_1.createBuildArtifact)({
|
|
116
|
+
configHash,
|
|
117
|
+
env,
|
|
118
|
+
config: {
|
|
119
|
+
name: normalizedConfig.name,
|
|
120
|
+
cacheFolder: normalizedConfig.cacheFolder,
|
|
121
|
+
projectFolder: normalizedConfig.projectFolder,
|
|
122
|
+
logging: normalizedConfig.logging,
|
|
123
|
+
envOverrides: normalizedConfig.envOverrides,
|
|
124
|
+
},
|
|
125
|
+
modules,
|
|
126
|
+
});
|
|
127
|
+
await (0, build_artifact_1.writeBuildArtifact)(normalizedConfig.projectFolder, artifact, fs);
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=build-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-runtime.js","sourceRoot":"","sources":["../../../src/core/runtime/build-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ModuleSource } from "@antelopejs/interface-core/config";
|
|
2
|
+
import type { ModuleManager } from "../module-manager";
|
|
3
|
+
import { ModuleManifest } from "../module-manifest";
|
|
4
|
+
import type { LoaderContext, ModuleManifestEntry, NormalizedLoadedConfig } from "./runtime-types";
|
|
5
|
+
export declare function createLoaderContext(config: {
|
|
6
|
+
cacheFolder: string;
|
|
7
|
+
projectFolder: string;
|
|
8
|
+
}): Promise<LoaderContext>;
|
|
9
|
+
export declare function registerCoreModuleInterface(manager: ModuleManager, loaderContext: LoaderContext): void;
|
|
10
|
+
export declare function registerCoreInterfaces(manager: ModuleManager): Promise<ModuleManifest>;
|
|
11
|
+
export declare function buildModuleConfigs(config: NormalizedLoadedConfig, loaderContext: LoaderContext): Promise<ModuleManifestEntry[]>;
|
|
12
|
+
export declare function getWatchDirs(source: ModuleSource): string[];
|
|
13
|
+
export declare function reloadWatchedModule(manager: ModuleManager, moduleId: string, loaderContext: LoaderContext): Promise<void>;
|
|
14
|
+
export declare function loadModuleEntriesForManager(manager: ModuleManager, config: NormalizedLoadedConfig, runtimeInterface: boolean, loaderContext?: LoaderContext): Promise<ModuleManifestEntry[]>;
|
|
15
|
+
export declare function constructAndStartModules(manager: ModuleManager): Promise<void>;
|
|
16
|
+
export declare function ensureGraphIsValid(_manager: ModuleManager): void;
|
|
@@ -0,0 +1,310 @@
|
|
|
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 Logger = new logging_1.Logging.Channel("loader");
|
|
63
|
+
const MODULE_STATUS_MAP = {
|
|
64
|
+
loaded: "loaded",
|
|
65
|
+
constructed: "constructed",
|
|
66
|
+
active: "active",
|
|
67
|
+
};
|
|
68
|
+
function mapImportOverrides(overrides) {
|
|
69
|
+
const mapped = new Map();
|
|
70
|
+
if (!overrides) {
|
|
71
|
+
return mapped;
|
|
72
|
+
}
|
|
73
|
+
for (const [interfaceName, modules] of Object.entries(overrides)) {
|
|
74
|
+
const overrideEntries = modules.map((module) => ({ module }));
|
|
75
|
+
mapped.set(interfaceName, overrideEntries);
|
|
76
|
+
}
|
|
77
|
+
return mapped;
|
|
78
|
+
}
|
|
79
|
+
function exportImportOverrides(overrides) {
|
|
80
|
+
const result = {};
|
|
81
|
+
if (!overrides) {
|
|
82
|
+
return result;
|
|
83
|
+
}
|
|
84
|
+
for (const [interfaceName, modules] of overrides.entries()) {
|
|
85
|
+
result[interfaceName] = modules.map((entry) => entry.module);
|
|
86
|
+
}
|
|
87
|
+
return result;
|
|
88
|
+
}
|
|
89
|
+
function getModuleStatus(module) {
|
|
90
|
+
return MODULE_STATUS_MAP[module.state] ?? "unknown";
|
|
91
|
+
}
|
|
92
|
+
function toModuleSource(source) {
|
|
93
|
+
const type = source?.type;
|
|
94
|
+
if (type !== "local" &&
|
|
95
|
+
type !== "git" &&
|
|
96
|
+
type !== "package" &&
|
|
97
|
+
type !== "local-folder") {
|
|
98
|
+
throw new Error(`Unsupported module source type: ${String(type)}`);
|
|
99
|
+
}
|
|
100
|
+
return source;
|
|
101
|
+
}
|
|
102
|
+
async function createLoaderContext(config) {
|
|
103
|
+
const fs = new filesystem_1.NodeFileSystem();
|
|
104
|
+
const cache = new module_cache_1.ModuleCache(config.cacheFolder, fs);
|
|
105
|
+
await cache.load();
|
|
106
|
+
const registry = new registry_1.DownloaderRegistry();
|
|
107
|
+
(0, local_1.registerLocalDownloader)(registry, { fs });
|
|
108
|
+
(0, local_folder_1.registerLocalFolderDownloader)(registry, { fs });
|
|
109
|
+
(0, package_1.registerPackageDownloader)(registry, { fs });
|
|
110
|
+
(0, git_1.registerGitDownloader)(registry, { fs });
|
|
111
|
+
return {
|
|
112
|
+
fs,
|
|
113
|
+
cache,
|
|
114
|
+
registry,
|
|
115
|
+
projectFolder: config.projectFolder,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
function registerCoreModuleInterface(manager, loaderContext) {
|
|
119
|
+
void coreInterfaceBeta.ImplementInterface(moduleInterfaceBeta, {
|
|
120
|
+
ListModules: async () => manager.listModules(),
|
|
121
|
+
GetModuleInfo: async (moduleId) => {
|
|
122
|
+
const entry = manager.getModuleEntry(moduleId);
|
|
123
|
+
if (!entry) {
|
|
124
|
+
throw new Error(`Module not found: ${moduleId}`);
|
|
125
|
+
}
|
|
126
|
+
return {
|
|
127
|
+
source: entry.module.manifest.source,
|
|
128
|
+
config: entry.config.config,
|
|
129
|
+
disabledExports: [...(entry.config.disabledExports ?? new Set())],
|
|
130
|
+
importOverrides: exportImportOverrides(entry.config.importOverrides),
|
|
131
|
+
localPath: entry.module.manifest.folder,
|
|
132
|
+
status: getModuleStatus(entry.module),
|
|
133
|
+
};
|
|
134
|
+
},
|
|
135
|
+
LoadModule: async (moduleId, declaration, autostart = false) => {
|
|
136
|
+
const source = toModuleSource(declaration.source);
|
|
137
|
+
const manifests = await loaderContext.registry.load(loaderContext.projectFolder, loaderContext.cache, {
|
|
138
|
+
...source,
|
|
139
|
+
id: moduleId,
|
|
140
|
+
});
|
|
141
|
+
const moduleConfig = {
|
|
142
|
+
config: declaration.config,
|
|
143
|
+
disabledExports: new Set(declaration.disabledExports ?? []),
|
|
144
|
+
importOverrides: mapImportOverrides(declaration.importOverrides),
|
|
145
|
+
};
|
|
146
|
+
const created = manager.addModules(manifests.map((manifest) => ({ manifest, config: moduleConfig })));
|
|
147
|
+
await manager.constructModules(created);
|
|
148
|
+
if (autostart) {
|
|
149
|
+
manager.startModules(created);
|
|
150
|
+
}
|
|
151
|
+
return created.map(({ module }) => module.id);
|
|
152
|
+
},
|
|
153
|
+
StartModule: async (moduleId) => {
|
|
154
|
+
manager.getModule(moduleId)?.start();
|
|
155
|
+
},
|
|
156
|
+
StopModule: async (moduleId) => {
|
|
157
|
+
await manager.getModule(moduleId)?.stop();
|
|
158
|
+
},
|
|
159
|
+
DestroyModule: async (moduleId) => {
|
|
160
|
+
await manager.getModule(moduleId)?.destroy();
|
|
161
|
+
},
|
|
162
|
+
ReloadModule: async (moduleId) => {
|
|
163
|
+
await reloadLoadedModuleFromSource(manager, loaderContext, moduleId);
|
|
164
|
+
},
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
async function registerCoreInterfaces(manager) {
|
|
168
|
+
const coreFolder = node_path_1.default.resolve(node_path_1.default.join(__dirname, "..", "..", ".."));
|
|
169
|
+
const coreSource = { type: "local", path: coreFolder };
|
|
170
|
+
const coreManifest = await module_manifest_1.ModuleManifest.create(coreFolder, coreSource, "antelopejs");
|
|
171
|
+
manager.addStaticModule({ manifest: coreManifest });
|
|
172
|
+
return coreManifest;
|
|
173
|
+
}
|
|
174
|
+
function buildModuleOverrides(importOverrides) {
|
|
175
|
+
const overrides = new Map();
|
|
176
|
+
if (!importOverrides) {
|
|
177
|
+
return overrides;
|
|
178
|
+
}
|
|
179
|
+
importOverrides.forEach((override) => {
|
|
180
|
+
const existing = overrides.get(override.interface) ?? [];
|
|
181
|
+
existing.push({ module: override.source, id: override.id });
|
|
182
|
+
overrides.set(override.interface, existing);
|
|
183
|
+
});
|
|
184
|
+
return overrides;
|
|
185
|
+
}
|
|
186
|
+
function buildManifestEntries(manifests, moduleConfig) {
|
|
187
|
+
const overrides = buildModuleOverrides(moduleConfig.importOverrides);
|
|
188
|
+
const disabledExports = new Set(moduleConfig.disabledExports ?? []);
|
|
189
|
+
return manifests.map((manifest) => ({
|
|
190
|
+
manifest,
|
|
191
|
+
config: {
|
|
192
|
+
config: moduleConfig.config,
|
|
193
|
+
disabledExports,
|
|
194
|
+
importOverrides: overrides,
|
|
195
|
+
},
|
|
196
|
+
}));
|
|
197
|
+
}
|
|
198
|
+
async function loadModuleEntries(modules, context) {
|
|
199
|
+
const modulePromises = Object.entries(modules).map(async ([id, moduleConfig]) => {
|
|
200
|
+
const source = { ...moduleConfig.source, id };
|
|
201
|
+
Logger.Debug(`Loading module ${id}`);
|
|
202
|
+
try {
|
|
203
|
+
Logger.Trace(`Starting LoadModule for ${id}`);
|
|
204
|
+
const manifests = await context.registry.load(context.projectFolder, context.cache, source);
|
|
205
|
+
Logger.Trace(`Module manifest loaded for ${id}`);
|
|
206
|
+
return buildManifestEntries(manifests, moduleConfig);
|
|
207
|
+
}
|
|
208
|
+
catch (error) {
|
|
209
|
+
await terminal_display_1.terminalDisplay.failSpinner(`Failed to load module ${id}`);
|
|
210
|
+
await terminal_display_1.terminalDisplay.cleanSpinner();
|
|
211
|
+
Logger.Error(`Unexpected error while loading module ${id}:`);
|
|
212
|
+
Logger.Error(error);
|
|
213
|
+
throw error;
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
return (await Promise.all(modulePromises)).flat();
|
|
217
|
+
}
|
|
218
|
+
async function loadEntryExports() {
|
|
219
|
+
await terminal_display_1.terminalDisplay.startSpinner(`Loading exports`);
|
|
220
|
+
Logger.Trace(`Loading exports`);
|
|
221
|
+
await terminal_display_1.terminalDisplay.stopSpinner(`Exports loaded`);
|
|
222
|
+
}
|
|
223
|
+
function validateModuleNameCollisions(entries) {
|
|
224
|
+
const seenNames = new Set();
|
|
225
|
+
entries.forEach((entry) => {
|
|
226
|
+
if (seenNames.has(entry.manifest.name)) {
|
|
227
|
+
Logger.Error(`Detected module id collision (name in package.json): ${entry.manifest.name}`);
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
seenNames.add(entry.manifest.name);
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
async function buildModuleConfigs(config, loaderContext) {
|
|
234
|
+
await terminal_display_1.terminalDisplay.startSpinner(`Loading modules`);
|
|
235
|
+
const modules = await loadModuleEntries(config.modules, loaderContext);
|
|
236
|
+
await terminal_display_1.terminalDisplay.stopSpinner(`Modules loaded`);
|
|
237
|
+
await loadEntryExports();
|
|
238
|
+
validateModuleNameCollisions(modules);
|
|
239
|
+
return modules;
|
|
240
|
+
}
|
|
241
|
+
function getWatchDirs(source) {
|
|
242
|
+
if (source.type !== "local") {
|
|
243
|
+
return [""];
|
|
244
|
+
}
|
|
245
|
+
const localSource = source;
|
|
246
|
+
if (Array.isArray(localSource.watchDir)) {
|
|
247
|
+
return localSource.watchDir;
|
|
248
|
+
}
|
|
249
|
+
return localSource.watchDir ? [localSource.watchDir] : [""];
|
|
250
|
+
}
|
|
251
|
+
async function loadModuleManifestFromSource(loaderContext, source, moduleId) {
|
|
252
|
+
const manifests = await loaderContext.registry.load(loaderContext.projectFolder, loaderContext.cache, {
|
|
253
|
+
...source,
|
|
254
|
+
id: moduleId,
|
|
255
|
+
});
|
|
256
|
+
const [manifest] = manifests;
|
|
257
|
+
if (!manifest) {
|
|
258
|
+
throw new Error(`Failed to reload module ${moduleId}: no manifest returned`);
|
|
259
|
+
}
|
|
260
|
+
return manifest;
|
|
261
|
+
}
|
|
262
|
+
function ensureReloadedModuleId(module, moduleId) {
|
|
263
|
+
if (module.id !== moduleId) {
|
|
264
|
+
throw new Error(`Reloaded module id mismatch: expected ${moduleId}, got ${module.id}`);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
async function reloadLoadedModuleFromSource(manager, loaderContext, moduleId) {
|
|
268
|
+
const entry = manager.getLoadedModuleEntry(moduleId);
|
|
269
|
+
if (!entry) {
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
await entry.module.destroy();
|
|
273
|
+
manager.unrequireModuleFiles(moduleId);
|
|
274
|
+
const manifest = await loadModuleManifestFromSource(loaderContext, entry.module.manifest.source, moduleId);
|
|
275
|
+
const replacement = new module_1.Module(manifest);
|
|
276
|
+
ensureReloadedModuleId(replacement, moduleId);
|
|
277
|
+
manager.replaceLoadedModule(moduleId, replacement);
|
|
278
|
+
manager.refreshAssociations();
|
|
279
|
+
await replacement.construct(entry.config.config);
|
|
280
|
+
replacement.start();
|
|
281
|
+
}
|
|
282
|
+
async function reloadWatchedModule(manager, moduleId, loaderContext) {
|
|
283
|
+
await reloadLoadedModuleFromSource(manager, loaderContext, moduleId);
|
|
284
|
+
}
|
|
285
|
+
async function loadModuleEntriesForManager(manager, config, runtimeInterface, loaderContext) {
|
|
286
|
+
const resolvedLoaderContext = loaderContext ?? (await createLoaderContext(config));
|
|
287
|
+
if (runtimeInterface) {
|
|
288
|
+
await registerCoreModuleInterface(manager, resolvedLoaderContext);
|
|
289
|
+
}
|
|
290
|
+
await registerCoreInterfaces(manager);
|
|
291
|
+
const entries = await buildModuleConfigs(config, resolvedLoaderContext);
|
|
292
|
+
manager.addModules(entries);
|
|
293
|
+
return entries;
|
|
294
|
+
}
|
|
295
|
+
async function constructAndStartModules(manager) {
|
|
296
|
+
await terminal_display_1.terminalDisplay.startSpinner(`Constructing modules`);
|
|
297
|
+
Logger.Trace(`Constructing modules`);
|
|
298
|
+
try {
|
|
299
|
+
await manager.constructAll();
|
|
300
|
+
}
|
|
301
|
+
catch (error) {
|
|
302
|
+
await terminal_display_1.terminalDisplay.failSpinner(`Failed to construct modules`);
|
|
303
|
+
throw error;
|
|
304
|
+
}
|
|
305
|
+
await terminal_display_1.terminalDisplay.stopSpinner(`Done loading`);
|
|
306
|
+
manager.startAll();
|
|
307
|
+
}
|
|
308
|
+
function ensureGraphIsValid(_manager) {
|
|
309
|
+
}
|
|
310
|
+
//# 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
|