silgi 0.20.23 → 0.20.25
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/common.mjs +26 -34
- package/dist/meta/index.d.mts +1 -1
- package/dist/meta/index.d.ts +1 -1
- package/package.json +1 -1
package/dist/_chunks/index.mjs
CHANGED
package/dist/cli/common.mjs
CHANGED
|
@@ -914,42 +914,43 @@ async function prepareServerFiles(silgi) {
|
|
|
914
914
|
schemas: [],
|
|
915
915
|
modulesURIs: {},
|
|
916
916
|
customImports: [],
|
|
917
|
-
importItems
|
|
917
|
+
importItems: JSON.parse(JSON.stringify(importItems))
|
|
918
918
|
};
|
|
919
919
|
if (silgi.uris) {
|
|
920
|
-
|
|
920
|
+
scanned.uris = { ...silgi.uris };
|
|
921
921
|
}
|
|
922
922
|
if (silgi.modulesURIs) {
|
|
923
|
-
|
|
924
|
-
}
|
|
925
|
-
await silgi.callHook("prepare:scan.ts", scanned);
|
|
926
|
-
scanned.services = deduplicateArray(scanned.services);
|
|
927
|
-
scanned.schemas = deduplicateArray(scanned.schemas);
|
|
928
|
-
scanned.shareds = deduplicateArray(scanned.shareds);
|
|
929
|
-
scanned.customImports = deduplicateArray(scanned.customImports);
|
|
930
|
-
scanned.uris = deduplicateObjectValues(scanned.uris);
|
|
931
|
-
scanned.modulesURIs = deduplicateObjectValues(scanned.modulesURIs);
|
|
932
|
-
for (const key in scanned.importItems) {
|
|
933
|
-
scanned.importItems[key].import = deduplicateImportsByKey(scanned.importItems[key].import);
|
|
923
|
+
scanned.modulesURIs = { ...silgi.modulesURIs };
|
|
934
924
|
}
|
|
935
|
-
|
|
936
|
-
|
|
925
|
+
const prepareScanned = JSON.parse(JSON.stringify(scanned));
|
|
926
|
+
await silgi.callHook("prepare:scan.ts", prepareScanned);
|
|
927
|
+
Object.assign(scanned, prepareScanned);
|
|
928
|
+
if (scanned.importItems["#silgi/vfs"]?.import?.length === 0) {
|
|
929
|
+
delete scanned.importItems["#silgi/vfs"];
|
|
937
930
|
}
|
|
938
931
|
if (scanned.services.length > 0) {
|
|
939
|
-
importItems.silgi.import.push({ name: "mergeServices", key: "mergeServices" });
|
|
932
|
+
scanned.importItems.silgi.import.push({ name: "mergeServices", key: "mergeServices" });
|
|
940
933
|
}
|
|
941
934
|
if (scanned.shareds.length > 0) {
|
|
942
|
-
importItems.silgi.import.push({ name: "mergeShared", key: "mergeShared" });
|
|
935
|
+
scanned.importItems.silgi.import.push({ name: "mergeShared", key: "mergeShared" });
|
|
943
936
|
}
|
|
944
937
|
if (scanned.schemas.length > 0) {
|
|
945
|
-
importItems.silgi.import.push({ name: "mergeSchemas", key: "mergeSchemas" });
|
|
938
|
+
scanned.importItems.silgi.import.push({ name: "mergeSchemas", key: "mergeSchemas" });
|
|
946
939
|
}
|
|
940
|
+
for (const key in scanned.importItems) {
|
|
941
|
+
scanned.importItems[key].import = deduplicateImportsByKey(scanned.importItems[key].import);
|
|
942
|
+
}
|
|
943
|
+
scanned.services = deduplicateArray(scanned.services);
|
|
944
|
+
scanned.schemas = deduplicateArray(scanned.schemas);
|
|
945
|
+
scanned.shareds = deduplicateArray(scanned.shareds);
|
|
946
|
+
scanned.customImports = deduplicateArray(scanned.customImports);
|
|
947
947
|
const importsContent = [
|
|
948
|
-
...Object.entries(importItems).map(([_name, { from, import: imports }]) => {
|
|
948
|
+
...Object.entries(scanned.importItems).map(([_name, { from, import: imports }]) => {
|
|
949
|
+
let fromPath = from;
|
|
949
950
|
if (silgi.options.typescript.removeFileExtension) {
|
|
950
|
-
|
|
951
|
+
fromPath = from.replace(/\.(js|ts|mjs|cjs|jsx|tsx)$/, "");
|
|
951
952
|
}
|
|
952
|
-
return `import { ${imports.map(({ type, name }) => type ? `type ${name}` : name).join(", ")} } from '${
|
|
953
|
+
return `import { ${imports.map(({ type, name }) => type ? `type ${name}` : name).join(", ")} } from '${fromPath}'`;
|
|
953
954
|
}),
|
|
954
955
|
"",
|
|
955
956
|
...scanned.customImports,
|
|
@@ -979,7 +980,10 @@ async function prepareServerFiles(silgi) {
|
|
|
979
980
|
scanned.shareds.length > 0 ? "])" : "}",
|
|
980
981
|
""
|
|
981
982
|
];
|
|
982
|
-
|
|
983
|
+
const afterHookData = [...importData];
|
|
984
|
+
await silgi.callHook("after:prepare:scan.ts", afterHookData);
|
|
985
|
+
importData.length = 0;
|
|
986
|
+
importData.push(...afterHookData);
|
|
983
987
|
importData.unshift(...importsContent);
|
|
984
988
|
return importData;
|
|
985
989
|
}
|
|
@@ -996,18 +1000,6 @@ function deduplicateImportsByKey(imports) {
|
|
|
996
1000
|
function deduplicateArray(array) {
|
|
997
1001
|
return [...new Set(array)];
|
|
998
1002
|
}
|
|
999
|
-
function deduplicateObjectValues(obj) {
|
|
1000
|
-
const result = {};
|
|
1001
|
-
const seenValues = /* @__PURE__ */ new Set();
|
|
1002
|
-
for (const [key, value] of Object.entries(obj)) {
|
|
1003
|
-
const valueStr = JSON.stringify(value);
|
|
1004
|
-
if (!seenValues.has(valueStr)) {
|
|
1005
|
-
result[key] = value;
|
|
1006
|
-
seenValues.add(valueStr);
|
|
1007
|
-
}
|
|
1008
|
-
}
|
|
1009
|
-
return result;
|
|
1010
|
-
}
|
|
1011
1003
|
|
|
1012
1004
|
async function writeScanFiles(silgi) {
|
|
1013
1005
|
const data = await prepareServerFiles(silgi);
|
package/dist/meta/index.d.mts
CHANGED
package/dist/meta/index.d.ts
CHANGED