@antelopejs/core 1.1.0 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/cli/commands/project/modules/update.js +46 -81
- package/dist/core/cli/commands/project/modules/update.js.map +1 -1
- package/dist/core/version-checker.d.ts +9 -0
- package/dist/core/version-checker.js +44 -0
- package/dist/core/version-checker.js.map +1 -0
- package/dist/core/watch/hot-reload.js +8 -1
- package/dist/core/watch/hot-reload.js.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,10 +8,45 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
8
8
|
const commander_1 = require("commander");
|
|
9
9
|
const config_1 = require("../../../../config");
|
|
10
10
|
const filesystem_1 = require("../../../../filesystem");
|
|
11
|
+
const version_checker_1 = require("../../../../version-checker");
|
|
11
12
|
const cli_ui_1 = require("../../../cli-ui");
|
|
12
|
-
const command_1 = require("../../../command");
|
|
13
13
|
const common_1 = require("../../../common");
|
|
14
|
-
|
|
14
|
+
function applyUpdates(env, outdated, antelopeModules) {
|
|
15
|
+
const envModules = env.modules;
|
|
16
|
+
for (const entry of outdated) {
|
|
17
|
+
envModules[entry.name] = {
|
|
18
|
+
...antelopeModules[entry.name],
|
|
19
|
+
source: {
|
|
20
|
+
...antelopeModules[entry.name].source,
|
|
21
|
+
version: entry.latest,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
function displayResults(outdated, options, notFound) {
|
|
27
|
+
if (options.dryRun) {
|
|
28
|
+
(0, cli_ui_1.warning)(chalk_1.default.yellow `Dry run - no changes were made`);
|
|
29
|
+
}
|
|
30
|
+
if (outdated.length > 0) {
|
|
31
|
+
const label = options.dryRun ? "Would update" : "Updated";
|
|
32
|
+
(0, cli_ui_1.success)(chalk_1.default.green `${label} ${outdated.length} module(s):`);
|
|
33
|
+
for (const entry of outdated) {
|
|
34
|
+
(0, cli_ui_1.info)(` ${chalk_1.default.green("•")} ${entry.name}: ${chalk_1.default.dim(entry.current)} → ${entry.latest}`);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
(0, cli_ui_1.success)(chalk_1.default.green `All modules are up to date!`);
|
|
39
|
+
}
|
|
40
|
+
if (notFound.length > 0) {
|
|
41
|
+
(0, cli_ui_1.warning)(chalk_1.default.yellow `${notFound.length} module(s) not found in project:`);
|
|
42
|
+
for (const name of notFound) {
|
|
43
|
+
(0, cli_ui_1.info)(` ${chalk_1.default.yellow("•")} ${chalk_1.default.bold(name)}`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (outdated.length > 0 && !options.dryRun) {
|
|
47
|
+
(0, cli_ui_1.info)(`Run ${chalk_1.default.bold("ajs project run")} to use the updated modules.`);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
15
50
|
function default_1() {
|
|
16
51
|
return new commander_1.Command("update")
|
|
17
52
|
.description(`Update modules to latest versions\n` +
|
|
@@ -41,88 +76,18 @@ function default_1() {
|
|
|
41
76
|
}
|
|
42
77
|
const loader = new config_1.ConfigLoader(new filesystem_1.NodeFileSystem());
|
|
43
78
|
const antelopeConfig = await loader.load(options.project, options.env || "default");
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
(0, cli_ui_1.error)(chalk_1.default.red `No npm modules found to update`);
|
|
51
|
-
(0, cli_ui_1.info)(`Only npm modules can be automatically updated.`);
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
const updated = [];
|
|
55
|
-
const skipped = [];
|
|
56
|
-
const notFound = [];
|
|
57
|
-
for (const module of modulesToUpdate) {
|
|
58
|
-
const moduleInfo = antelopeConfig.modules[module];
|
|
59
|
-
if (!moduleInfo) {
|
|
60
|
-
(0, cli_ui_1.warning)(chalk_1.default.yellow `Module ${chalk_1.default.bold(module)} not found in project`);
|
|
61
|
-
notFound.push(module);
|
|
62
|
-
continue;
|
|
63
|
-
}
|
|
64
|
-
if (!moduleInfo.source || moduleInfo.source.type !== "package") {
|
|
65
|
-
(0, cli_ui_1.info)(`${chalk_1.default.bold(module)}: Skipped (not an npm package)`);
|
|
66
|
-
skipped.push(module);
|
|
67
|
-
continue;
|
|
68
|
-
}
|
|
69
|
-
(0, cli_ui_1.info)(`${chalk_1.default.bold(module)}: Checking for updates...`);
|
|
70
|
-
try {
|
|
71
|
-
const result = await (0, command_1.ExecuteCMD)(`npm view ${module} version`, {});
|
|
72
|
-
if (result.code !== 0) {
|
|
73
|
-
throw new Error(`Failed to fetch version: ${result.stderr}`);
|
|
74
|
-
}
|
|
75
|
-
const latestVersion = (0, package_manager_1.parsePackageInfoOutput)(result.stdout);
|
|
76
|
-
const currentVersion = moduleInfo.source
|
|
77
|
-
.version;
|
|
78
|
-
if (currentVersion === latestVersion) {
|
|
79
|
-
(0, cli_ui_1.info)(`${chalk_1.default.bold(module)}: ${chalk_1.default.green("Already up to date")} (${currentVersion})`);
|
|
80
|
-
skipped.push(module);
|
|
81
|
-
continue;
|
|
82
|
-
}
|
|
83
|
-
if (!options.dryRun) {
|
|
84
|
-
env.modules[module] = {
|
|
85
|
-
...moduleInfo,
|
|
86
|
-
source: {
|
|
87
|
-
...moduleInfo.source,
|
|
88
|
-
version: latestVersion,
|
|
89
|
-
},
|
|
90
|
-
};
|
|
91
|
-
updated.push(`${module}: ${chalk_1.default.dim(currentVersion)} → ${latestVersion}`);
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
updated.push(`${module}: ${chalk_1.default.dim(currentVersion)} → ${latestVersion}`);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
catch (err) {
|
|
98
|
-
(0, cli_ui_1.error)(err instanceof Error ? err : `${module}: Error: ${String(err)}`);
|
|
99
|
-
skipped.push(module);
|
|
100
|
-
}
|
|
79
|
+
let outdated = await (0, version_checker_1.checkOutdatedModules)(antelopeConfig.modules);
|
|
80
|
+
let notFound = [];
|
|
81
|
+
if (modules.length > 0) {
|
|
82
|
+
const requestedSet = new Set(modules);
|
|
83
|
+
notFound = modules.filter((m) => !antelopeConfig.modules[m]);
|
|
84
|
+
outdated = outdated.filter((entry) => requestedSet.has(entry.name));
|
|
101
85
|
}
|
|
102
|
-
if (
|
|
86
|
+
if (outdated.length > 0 && !options.dryRun) {
|
|
87
|
+
applyUpdates(env, outdated, antelopeConfig.modules);
|
|
103
88
|
await (0, common_1.writeConfig)(options.project, config);
|
|
104
89
|
}
|
|
105
|
-
|
|
106
|
-
(0, cli_ui_1.warning)(chalk_1.default.yellow `Dry run - no changes were made`);
|
|
107
|
-
}
|
|
108
|
-
if (updated.length > 0) {
|
|
109
|
-
(0, cli_ui_1.success)(chalk_1.default.green `${options.dryRun ? "Would update" : "Updated"} ${updated.length} module(s):`);
|
|
110
|
-
updated.forEach((msg) => {
|
|
111
|
-
(0, cli_ui_1.info)(` ${chalk_1.default.green("•")} ${msg}`);
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
(0, cli_ui_1.success)(chalk_1.default.green `All modules are up to date!`);
|
|
116
|
-
}
|
|
117
|
-
if (notFound.length > 0) {
|
|
118
|
-
(0, cli_ui_1.warning)(chalk_1.default.yellow `${notFound.length} module(s) not found in project:`);
|
|
119
|
-
notFound.forEach((name) => {
|
|
120
|
-
(0, cli_ui_1.info)(` ${chalk_1.default.yellow("•")} ${chalk_1.default.bold(name)}`);
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
if (updated.length > 0 && !options.dryRun) {
|
|
124
|
-
(0, cli_ui_1.info)(`Run ${chalk_1.default.bold("ajs project run")} to use the updated modules.`);
|
|
125
|
-
}
|
|
90
|
+
displayResults(outdated, options, notFound);
|
|
126
91
|
});
|
|
127
92
|
}
|
|
128
93
|
//# sourceMappingURL=update.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../../src/core/cli/commands/project/modules/update.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../../src/core/cli/commands/project/modules/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ExpandedModuleConfig } from "./config/config-parser";
|
|
2
|
+
export interface OutdatedModule {
|
|
3
|
+
name: string;
|
|
4
|
+
current: string;
|
|
5
|
+
latest: string;
|
|
6
|
+
}
|
|
7
|
+
export declare function fetchLatestVersion(packageName: string): Promise<string | undefined>;
|
|
8
|
+
export declare function checkOutdatedModules(modules: Record<string, ExpandedModuleConfig>): Promise<OutdatedModule[]>;
|
|
9
|
+
export declare function warnOutdatedModules(outdated: OutdatedModule[]): void;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchLatestVersion = fetchLatestVersion;
|
|
4
|
+
exports.checkOutdatedModules = checkOutdatedModules;
|
|
5
|
+
exports.warnOutdatedModules = warnOutdatedModules;
|
|
6
|
+
const cli_ui_1 = require("./cli/cli-ui");
|
|
7
|
+
const command_1 = require("./cli/command");
|
|
8
|
+
const package_manager_1 = require("./cli/package-manager");
|
|
9
|
+
const NPM_VIEW_COMMAND = "npm view";
|
|
10
|
+
const VERSION_ARGUMENT = "version";
|
|
11
|
+
const UPDATE_COMMAND = "ajs project modules update";
|
|
12
|
+
async function fetchLatestVersion(packageName) {
|
|
13
|
+
try {
|
|
14
|
+
const result = await (0, command_1.ExecuteCMD)(`${NPM_VIEW_COMMAND} ${packageName} ${VERSION_ARGUMENT}`, {});
|
|
15
|
+
return (0, package_manager_1.parsePackageInfoOutput)(result.stdout);
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
async function checkOutdatedModules(modules) {
|
|
22
|
+
const packageModules = Object.entries(modules).filter(([, info]) => info.source?.type === "package");
|
|
23
|
+
const results = await Promise.allSettled(packageModules.map(([, info]) => fetchLatestVersion(info.source.package)));
|
|
24
|
+
return packageModules.reduce((outdated, [name, info], index) => {
|
|
25
|
+
const result = results[index];
|
|
26
|
+
if (result.status !== "fulfilled" || !result.value) {
|
|
27
|
+
return outdated;
|
|
28
|
+
}
|
|
29
|
+
const current = info.source.version;
|
|
30
|
+
const latest = result.value;
|
|
31
|
+
if (current !== latest) {
|
|
32
|
+
outdated.push({ name, current, latest });
|
|
33
|
+
}
|
|
34
|
+
return outdated;
|
|
35
|
+
}, []);
|
|
36
|
+
}
|
|
37
|
+
function warnOutdatedModules(outdated) {
|
|
38
|
+
if (outdated.length === 0) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
(0, cli_ui_1.warning)(`${outdated.length} module(s) have updates available.` +
|
|
42
|
+
` Run '${UPDATE_COMMAND}' to upgrade.`);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=version-checker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-checker.js","sourceRoot":"","sources":["../../src/core/version-checker.ts"],"names":[],"mappings":";;AAgBA,gDAYC;AAED,oDA4BC;AAED,kDAQC;AAnED,yCAAuC;AACvC,2CAA2C;AAC3C,2DAA+D;AAS/D,MAAM,gBAAgB,GAAG,UAAU,CAAC;AACpC,MAAM,gBAAgB,GAAG,SAAS,CAAC;AACnC,MAAM,cAAc,GAAG,4BAA4B,CAAC;AAE7C,KAAK,UAAU,kBAAkB,CACtC,WAAmB;IAEnB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAA,oBAAU,EAC7B,GAAG,gBAAgB,IAAI,WAAW,IAAI,gBAAgB,EAAE,EACxD,EAAE,CACH,CAAC;QACF,OAAO,IAAA,wCAAsB,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,oBAAoB,CACxC,OAA6C;IAE7C,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CACnD,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,SAAS,CAC9C,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAC9B,kBAAkB,CAAE,IAAI,CAAC,MAA8B,CAAC,OAAO,CAAC,CACjE,CACF,CAAC;IAEF,OAAO,cAAc,CAAC,MAAM,CAC1B,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;QAChC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACnD,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,MAAM,OAAO,GAAI,IAAI,CAAC,MAA8B,CAAC,OAAO,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;QAC5B,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,EACD,EAAE,CACH,CAAC;AACJ,CAAC;AAED,SAAgB,mBAAmB,CAAC,QAA0B;IAC5D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;IACD,IAAA,gBAAO,EACL,GAAG,QAAQ,CAAC,MAAM,oCAAoC;QACpD,SAAS,cAAc,eAAe,CACzC,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.HotReload = void 0;
|
|
4
|
+
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
4
5
|
const DEFAULT_DEBOUNCE_MS = 500;
|
|
6
|
+
const Logger = new logging_1.Logging.Channel("loader.hot-reload");
|
|
5
7
|
class HotReload {
|
|
6
8
|
reload;
|
|
7
9
|
debounceMs;
|
|
@@ -19,7 +21,12 @@ class HotReload {
|
|
|
19
21
|
this.pending.clear();
|
|
20
22
|
this.timer = undefined;
|
|
21
23
|
for (const id of modules) {
|
|
22
|
-
|
|
24
|
+
try {
|
|
25
|
+
await this.reload(id);
|
|
26
|
+
}
|
|
27
|
+
catch (err) {
|
|
28
|
+
Logger.Error(`Failed to reload module ${id}:`, err);
|
|
29
|
+
}
|
|
23
30
|
}
|
|
24
31
|
}, this.debounceMs);
|
|
25
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hot-reload.js","sourceRoot":"","sources":["../../../src/core/watch/hot-reload.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"hot-reload.js","sourceRoot":"","sources":["../../../src/core/watch/hot-reload.ts"],"names":[],"mappings":";;;AAAA,gEAA6D;AAI7D,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAChC,MAAM,MAAM,GAAG,IAAI,iBAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAExD,MAAa,SAAS;IAKV;IACA;IALF,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5B,KAAK,CAAkB;IAE/B,YACU,MAAqB,EACrB,aAAqB,mBAAmB;QADxC,WAAM,GAAN,MAAM,CAAe;QACrB,eAAU,GAAV,UAAU,CAA8B;IAC/C,CAAC;IAEJ,KAAK,CAAC,QAAgB;QACpB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;gBACjC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACzC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACrB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;gBACvB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACxB,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;oBACtD,CAAC;gBACH,CAAC;YACH,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;CACF;AAlCD,8BAkCC"}
|
package/dist/index.js
CHANGED
|
@@ -14,6 +14,7 @@ const build_runtime_1 = require("./core/runtime/build-runtime");
|
|
|
14
14
|
const module_loading_1 = require("./core/runtime/module-loading");
|
|
15
15
|
const runtime_bootstrap_1 = require("./core/runtime/runtime-bootstrap");
|
|
16
16
|
const shutdown_1 = require("./core/shutdown");
|
|
17
|
+
const version_checker_1 = require("./core/version-checker");
|
|
17
18
|
const file_watcher_1 = require("./core/watch/file-watcher");
|
|
18
19
|
const hot_reload_1 = require("./core/watch/hot-reload");
|
|
19
20
|
const logging_2 = require("./logging");
|
|
@@ -91,6 +92,8 @@ async function setupPostLaunchFeatures(manager, fs, options, shutdownManager, lo
|
|
|
91
92
|
async function initializeCore(projectFolder, env, options) {
|
|
92
93
|
const shutdownManager = new shutdown_1.ShutdownManager();
|
|
93
94
|
const runtimeConfig = await (0, runtime_bootstrap_1.loadProjectRuntimeConfig)(projectFolder, env, options, shutdownManager);
|
|
95
|
+
const outdated = await (0, version_checker_1.checkOutdatedModules)(runtimeConfig.normalizedConfig.modules);
|
|
96
|
+
(0, version_checker_1.warnOutdatedModules)(outdated);
|
|
94
97
|
const loaderContext = await (0, module_loading_1.createLoaderContext)(runtimeConfig.normalizedConfig);
|
|
95
98
|
const manager = await (0, runtime_bootstrap_1.withRaisedMaxListeners)(async () => {
|
|
96
99
|
const moduleManager = new module_manager_1.ModuleManager();
|
|
@@ -113,6 +116,8 @@ async function launch(projectFolder = ".", env = config_paths_1.DEFAULT_ENV, opt
|
|
|
113
116
|
}
|
|
114
117
|
async function build(projectFolder = ".", env = config_paths_1.DEFAULT_ENV, options = {}) {
|
|
115
118
|
const runtimeConfig = await (0, runtime_bootstrap_1.loadProjectRuntimeConfig)(projectFolder, env, options);
|
|
119
|
+
const outdated = await (0, version_checker_1.checkOutdatedModules)(runtimeConfig.normalizedConfig.modules);
|
|
120
|
+
(0, version_checker_1.warnOutdatedModules)(outdated);
|
|
116
121
|
await (0, runtime_bootstrap_1.withRaisedMaxListeners)(async () => {
|
|
117
122
|
const manager = new module_manager_1.ModuleManager();
|
|
118
123
|
const entries = await (0, module_loading_1.loadModuleEntriesForManager)(manager, runtimeConfig.normalizedConfig, false);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|