silgi 0.21.8 → 0.22.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/_chunks/index.mjs +1 -1
- package/dist/cli/prepare.mjs +18 -5
- package/dist/cli/types.mjs +0 -1
- package/dist/meta/index.d.mts +1 -1
- package/dist/meta/index.d.ts +1 -1
- package/dist/types/index.d.mts +3 -2
- package/dist/types/index.d.ts +3 -2
- package/package.json +1 -1
package/dist/_chunks/index.mjs
CHANGED
package/dist/cli/prepare.mjs
CHANGED
|
@@ -435,6 +435,9 @@ async function registerModuleExportScan(silgi) {
|
|
|
435
435
|
silgi.hook("prepare:schema.ts", async (options) => {
|
|
436
436
|
for (const module of silgi.scanModules) {
|
|
437
437
|
const moduleReExports = [];
|
|
438
|
+
if (!module.entryPath) {
|
|
439
|
+
continue;
|
|
440
|
+
}
|
|
438
441
|
const moduleTypes = await promises.readFile(module.entryPath.replace(/\.mjs$/, "Types.d.ts"), "utf8").catch(() => "");
|
|
439
442
|
const normalisedModuleTypes = moduleTypes.replace(/export\s*\{.*?\}/gs, (match) => match.replace(/\b(type|interface)\b/g, ""));
|
|
440
443
|
for (const e of findTypeExports(normalisedModuleTypes)) {
|
|
@@ -574,10 +577,10 @@ async function installModules(silgi, prepare = false) {
|
|
|
574
577
|
silgi.logger.info(`Module ${module.meta.configKey} installed`);
|
|
575
578
|
}
|
|
576
579
|
try {
|
|
577
|
-
const silgiModule = await jiti.import(module.entryPath, {
|
|
580
|
+
const silgiModule = module.entryPath !== void 0 ? await jiti.import(module.entryPath, {
|
|
578
581
|
default: true,
|
|
579
582
|
conditions: silgi.options.conditions
|
|
580
|
-
});
|
|
583
|
+
}) : module.module;
|
|
581
584
|
if (silgiModule.name !== "silgiNormalizedModule") {
|
|
582
585
|
silgi.scanModules = silgi.scanModules.filter((m) => m.entryPath !== module.entryPath);
|
|
583
586
|
continue;
|
|
@@ -612,7 +615,9 @@ async function _resolveSilgiModule(silgiModule, silgi) {
|
|
|
612
615
|
let resolvedModulePath;
|
|
613
616
|
let buildTimeModuleMeta = {};
|
|
614
617
|
const jiti = createJiti(silgi.options.rootDir, {
|
|
615
|
-
alias: silgi.options.alias
|
|
618
|
+
alias: silgi.options.alias,
|
|
619
|
+
fsCache: true,
|
|
620
|
+
moduleCache: true
|
|
616
621
|
});
|
|
617
622
|
if (typeof silgiModule === "string") {
|
|
618
623
|
silgiModule = resolveAlias(silgiModule, silgi.options.alias);
|
|
@@ -666,6 +671,13 @@ async function _resolveSilgiModule(silgiModule, silgi) {
|
|
|
666
671
|
throw new Error(`Module ${silgiModule} is not a valid Silgi module`);
|
|
667
672
|
}
|
|
668
673
|
if (typeof silgiModule === "function") {
|
|
674
|
+
if (!buildTimeModuleMeta.configKey) {
|
|
675
|
+
const meta = await silgiModule.getMeta?.();
|
|
676
|
+
buildTimeModuleMeta = {
|
|
677
|
+
...meta,
|
|
678
|
+
exports: []
|
|
679
|
+
};
|
|
680
|
+
}
|
|
669
681
|
if (silgi.scanModules.some((m) => m.meta?.configKey === buildTimeModuleMeta.configKey)) {
|
|
670
682
|
throw new Error(`Module with key \`${buildTimeModuleMeta.configKey}\` already exists`);
|
|
671
683
|
}
|
|
@@ -680,9 +692,10 @@ async function _resolveSilgiModule(silgiModule, silgi) {
|
|
|
680
692
|
}
|
|
681
693
|
silgi.scanModules.push({
|
|
682
694
|
meta: buildTimeModuleMeta,
|
|
683
|
-
entryPath: resolvedModulePath ||
|
|
695
|
+
entryPath: resolvedModulePath || void 0,
|
|
684
696
|
installed: false,
|
|
685
|
-
options
|
|
697
|
+
options,
|
|
698
|
+
module: silgiModule
|
|
686
699
|
});
|
|
687
700
|
}
|
|
688
701
|
}
|
package/dist/cli/types.mjs
CHANGED
package/dist/meta/index.d.mts
CHANGED
package/dist/meta/index.d.ts
CHANGED
package/dist/types/index.d.mts
CHANGED
|
@@ -6,7 +6,7 @@ import { Hookable, NestedHooks } from 'hookable';
|
|
|
6
6
|
import { Ignore, Options } from 'ignore';
|
|
7
7
|
import { TSConfig } from 'pkg-types';
|
|
8
8
|
import { PresetName, PresetOptions, PresetNameInput } from 'silgi/presets';
|
|
9
|
-
import { ResolvedServiceType as ResolvedServiceType$1, SilgiRuntimeShareds as SilgiRuntimeShareds$1, SilgiRuntimeOptions as SilgiRuntimeOptions$1, RouteRules as RouteRules$1, ModuleMeta as ModuleMeta$1, SilgiRouteRules as SilgiRouteRules$1, DotenvOptions as DotenvOptions$1, EnvOptions as EnvOptions$1, SilgiRuntimeConfig as SilgiRuntimeConfig$1, ServiceParseModule as ServiceParseModule$1, SilgiCLIHooks as SilgiCLIHooks$1, StorageMounts as StorageMounts$1, SilgiTemplate as SilgiTemplate$1, SilgiFrameworkInfo as SilgiFrameworkInfo$1 } from 'silgi/types';
|
|
9
|
+
import { ResolvedServiceType as ResolvedServiceType$1, SilgiRuntimeShareds as SilgiRuntimeShareds$1, SilgiRuntimeOptions as SilgiRuntimeOptions$1, RouteRules as RouteRules$1, ModuleMeta as ModuleMeta$1, SilgiModule as SilgiModule$1, SilgiRouteRules as SilgiRouteRules$1, DotenvOptions as DotenvOptions$1, EnvOptions as EnvOptions$1, SilgiRuntimeConfig as SilgiRuntimeConfig$1, ServiceParseModule as ServiceParseModule$1, SilgiCLIHooks as SilgiCLIHooks$1, StorageMounts as StorageMounts$1, SilgiTemplate as SilgiTemplate$1, SilgiFrameworkInfo as SilgiFrameworkInfo$1 } from 'silgi/types';
|
|
10
10
|
import { UnimportPluginOptions } from 'unimport/unplugin';
|
|
11
11
|
import { Defu } from 'defu';
|
|
12
12
|
import { Stats } from 'node:fs';
|
|
@@ -70,8 +70,9 @@ interface SilgiCLI {
|
|
|
70
70
|
updateConfig: (config: SilgiCLIDynamicConfig) => void | Promise<void>;
|
|
71
71
|
scanModules: Array<{
|
|
72
72
|
meta: ModuleMeta$1;
|
|
73
|
+
module: SilgiModule$1;
|
|
73
74
|
timings?: Record<string, number | undefined>;
|
|
74
|
-
entryPath
|
|
75
|
+
entryPath?: string;
|
|
75
76
|
installed?: boolean;
|
|
76
77
|
options: Record<string, any>;
|
|
77
78
|
}>;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import { Hookable, NestedHooks } from 'hookable';
|
|
|
6
6
|
import { Ignore, Options } from 'ignore';
|
|
7
7
|
import { TSConfig } from 'pkg-types';
|
|
8
8
|
import { PresetName, PresetOptions, PresetNameInput } from 'silgi/presets';
|
|
9
|
-
import { ResolvedServiceType as ResolvedServiceType$1, SilgiRuntimeShareds as SilgiRuntimeShareds$1, SilgiRuntimeOptions as SilgiRuntimeOptions$1, RouteRules as RouteRules$1, ModuleMeta as ModuleMeta$1, SilgiRouteRules as SilgiRouteRules$1, DotenvOptions as DotenvOptions$1, EnvOptions as EnvOptions$1, SilgiRuntimeConfig as SilgiRuntimeConfig$1, ServiceParseModule as ServiceParseModule$1, SilgiCLIHooks as SilgiCLIHooks$1, StorageMounts as StorageMounts$1, SilgiTemplate as SilgiTemplate$1, SilgiFrameworkInfo as SilgiFrameworkInfo$1 } from 'silgi/types';
|
|
9
|
+
import { ResolvedServiceType as ResolvedServiceType$1, SilgiRuntimeShareds as SilgiRuntimeShareds$1, SilgiRuntimeOptions as SilgiRuntimeOptions$1, RouteRules as RouteRules$1, ModuleMeta as ModuleMeta$1, SilgiModule as SilgiModule$1, SilgiRouteRules as SilgiRouteRules$1, DotenvOptions as DotenvOptions$1, EnvOptions as EnvOptions$1, SilgiRuntimeConfig as SilgiRuntimeConfig$1, ServiceParseModule as ServiceParseModule$1, SilgiCLIHooks as SilgiCLIHooks$1, StorageMounts as StorageMounts$1, SilgiTemplate as SilgiTemplate$1, SilgiFrameworkInfo as SilgiFrameworkInfo$1 } from 'silgi/types';
|
|
10
10
|
import { UnimportPluginOptions } from 'unimport/unplugin';
|
|
11
11
|
import { Defu } from 'defu';
|
|
12
12
|
import { Stats } from 'node:fs';
|
|
@@ -70,8 +70,9 @@ interface SilgiCLI {
|
|
|
70
70
|
updateConfig: (config: SilgiCLIDynamicConfig) => void | Promise<void>;
|
|
71
71
|
scanModules: Array<{
|
|
72
72
|
meta: ModuleMeta$1;
|
|
73
|
+
module: SilgiModule$1;
|
|
73
74
|
timings?: Record<string, number | undefined>;
|
|
74
|
-
entryPath
|
|
75
|
+
entryPath?: string;
|
|
75
76
|
installed?: boolean;
|
|
76
77
|
options: Record<string, any>;
|
|
77
78
|
}>;
|