@rainfw/core 0.2.1 → 0.2.3
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/client/hooks.d.ts.map +1 -1
- package/dist/client/hooks.js +8 -12
- package/dist/client/hooks.js.map +1 -1
- package/dist/client/hydrate.js.map +1 -1
- package/package.json +6 -2
- package/scripts/generate.js +217 -0
- package/dist/compiler/server-action.d.ts +0 -9
- package/dist/compiler/server-action.d.ts.map +0 -1
- package/dist/compiler/server-action.js +0 -98
- package/dist/compiler/server-action.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/framework/client/hooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAY,MAAM,cAAc,CAAC;AAGzE,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,GAAG,EAAE,IAAI,CAAC;IACV,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,KAAK,EAAE,CAAC;IACrB,MAAM,EAAE,KAAK,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IACvC,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAClC,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC;CAC7B;AAED,MAAM,MAAM,SAAS,GACjB,cAAc,GACd,eAAe,GACf,YAAY,GACZ,aAAa,CAAC;AAWlB,wBAAgB,eAAe,IAAI,KAAK,GAAG,IAAI,CAE9C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI,CAKzD;AAED,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9C,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AAIvD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,CAElE;
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/framework/client/hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/client/hooks.js
CHANGED
|
@@ -15,12 +15,13 @@ let scheduleUpdateFn = null;
|
|
|
15
15
|
export function setScheduleUpdate(fn) {
|
|
16
16
|
scheduleUpdateFn = fn;
|
|
17
17
|
}
|
|
18
|
+
const ssrNoopDispatch = () => {
|
|
19
|
+
return;
|
|
20
|
+
};
|
|
18
21
|
export function useState(initial) {
|
|
19
22
|
const fiber = currentFiber;
|
|
20
23
|
if (!fiber) {
|
|
21
|
-
|
|
22
|
-
"Ensure you are not calling hooks conditionally " +
|
|
23
|
-
"or outside of a render cycle.");
|
|
24
|
+
return [initial, ssrNoopDispatch];
|
|
24
25
|
}
|
|
25
26
|
const idx = fiber.hookIndex;
|
|
26
27
|
fiber.hookIndex++;
|
|
@@ -60,14 +61,9 @@ function shallowEqual(a, b) {
|
|
|
60
61
|
}
|
|
61
62
|
return true;
|
|
62
63
|
}
|
|
63
|
-
function throwHookError(name) {
|
|
64
|
-
throw new Error(`${name} must be called inside a component. ` +
|
|
65
|
-
"Ensure you are not calling hooks conditionally " +
|
|
66
|
-
"or outside of a render cycle.");
|
|
67
|
-
}
|
|
68
64
|
export function useEffect(effect, deps) {
|
|
69
65
|
if (!currentFiber)
|
|
70
|
-
|
|
66
|
+
return;
|
|
71
67
|
const fiber = currentFiber;
|
|
72
68
|
const idx = fiber.hookIndex;
|
|
73
69
|
fiber.hookIndex++;
|
|
@@ -90,7 +86,7 @@ export function useEffect(effect, deps) {
|
|
|
90
86
|
}
|
|
91
87
|
export function useRef(initial) {
|
|
92
88
|
if (!currentFiber)
|
|
93
|
-
|
|
89
|
+
return { current: initial };
|
|
94
90
|
const fiber = currentFiber;
|
|
95
91
|
const idx = fiber.hookIndex;
|
|
96
92
|
fiber.hookIndex++;
|
|
@@ -104,7 +100,7 @@ export function useRef(initial) {
|
|
|
104
100
|
}
|
|
105
101
|
export function useMemo(factory, deps) {
|
|
106
102
|
if (!currentFiber)
|
|
107
|
-
|
|
103
|
+
return factory();
|
|
108
104
|
const fiber = currentFiber;
|
|
109
105
|
const idx = fiber.hookIndex;
|
|
110
106
|
fiber.hookIndex++;
|
|
@@ -142,7 +138,7 @@ export function createContext(defaultValue) {
|
|
|
142
138
|
}
|
|
143
139
|
export function useContext(context) {
|
|
144
140
|
if (!currentFiber)
|
|
145
|
-
|
|
141
|
+
return context._defaultValue;
|
|
146
142
|
return context._currentValue;
|
|
147
143
|
}
|
|
148
144
|
export function flushPendingEffects() {
|
package/dist/client/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/framework/client/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AA+C5C,MAAM,cAAc,GAAoB,EAAE,CAAC;AAE3C,IAAI,YAAY,GAAiB,IAAI,CAAC;AAEtC,MAAM,UAAU,eAAe;IAC7B,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAmB;IACjD,YAAY,GAAG,KAAK,CAAC;IACrB,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAKD,IAAI,gBAAgB,GAAoC,IAAI,CAAC;AAE7D,MAAM,UAAU,iBAAiB,CAAC,EAA0B;IAC1D,gBAAgB,GAAG,EAAE,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAI,OAAU;IACpC,MAAM,KAAK,GAAG,YAAY,CAAC;IAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/framework/client/hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hydrate.js","sourceRoot":"","sources":["../../src/framework/client/hydrate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"hydrate.js","sourceRoot":"","sources":["../../src/framework/client/hydrate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rainfw/core",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "A TypeScript web framework for Cloudflare Workers",
|
|
5
5
|
"bin": {
|
|
6
6
|
"rainjs": "./cli/index.js"
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"test:watch": "vitest",
|
|
21
21
|
"test:generate": "node --test tests/generate.test.js",
|
|
22
22
|
"bench": "node scripts/bench.js",
|
|
23
|
-
"build:pkg": "tsc -p tsconfig.build.json && node -e \"require('fs').writeFileSync('dist/package.json',JSON.stringify({type:'module'}))\"",
|
|
23
|
+
"build:pkg": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\" && tsc -p tsconfig.build.json && tsc -p tsconfig.client.build.json && node -e \"require('fs').writeFileSync('dist/package.json',JSON.stringify({type:'module'}))\"",
|
|
24
24
|
"prepublishOnly": "npm run build:pkg",
|
|
25
25
|
"release": "npm run ci && npm publish --access public"
|
|
26
26
|
},
|
|
@@ -58,6 +58,10 @@
|
|
|
58
58
|
"./db": {
|
|
59
59
|
"types": "./dist/db.d.ts",
|
|
60
60
|
"import": "./dist/db.js"
|
|
61
|
+
},
|
|
62
|
+
"./client": {
|
|
63
|
+
"types": "./dist/client/hooks.d.ts",
|
|
64
|
+
"import": "./dist/client/hooks.js"
|
|
61
65
|
}
|
|
62
66
|
},
|
|
63
67
|
"devDependencies": {
|
package/scripts/generate.js
CHANGED
|
@@ -587,6 +587,65 @@ function detectExportedMethods(filePath) {
|
|
|
587
587
|
return detectExportedMethodsFromContent(content);
|
|
588
588
|
}
|
|
589
589
|
|
|
590
|
+
function collectAllExportedNames(node) {
|
|
591
|
+
if (ts.isVariableStatement(node)) {
|
|
592
|
+
return node.declarationList.declarations
|
|
593
|
+
.filter((d) => ts.isIdentifier(d.name))
|
|
594
|
+
.map((d) => d.name.text);
|
|
595
|
+
}
|
|
596
|
+
if (
|
|
597
|
+
(ts.isFunctionDeclaration(node) || ts.isClassDeclaration(node)) &&
|
|
598
|
+
node.name
|
|
599
|
+
) {
|
|
600
|
+
return [node.name.text];
|
|
601
|
+
}
|
|
602
|
+
return [];
|
|
603
|
+
}
|
|
604
|
+
|
|
605
|
+
function collectAllNamedExports(node) {
|
|
606
|
+
if (
|
|
607
|
+
!(
|
|
608
|
+
ts.isExportDeclaration(node) &&
|
|
609
|
+
node.exportClause &&
|
|
610
|
+
ts.isNamedExports(node.exportClause)
|
|
611
|
+
)
|
|
612
|
+
) {
|
|
613
|
+
return [];
|
|
614
|
+
}
|
|
615
|
+
return node.exportClause.elements.map((el) => el.name.text);
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
function detectAllExportsFromContent(content) {
|
|
619
|
+
const sourceFile = ts.createSourceFile(
|
|
620
|
+
"file.tsx",
|
|
621
|
+
content,
|
|
622
|
+
ts.ScriptTarget.Latest,
|
|
623
|
+
true,
|
|
624
|
+
);
|
|
625
|
+
const named = [];
|
|
626
|
+
let hasDefault = false;
|
|
627
|
+
|
|
628
|
+
ts.forEachChild(sourceFile, (node) => {
|
|
629
|
+
if (ts.isExportAssignment(node) && !node.isExportEquals) {
|
|
630
|
+
hasDefault = true;
|
|
631
|
+
return;
|
|
632
|
+
}
|
|
633
|
+
if (hasExportKeyword(node)) {
|
|
634
|
+
const modifiers = ts.canHaveModifiers(node)
|
|
635
|
+
? ts.getModifiers(node)
|
|
636
|
+
: undefined;
|
|
637
|
+
if (modifiers?.some((m) => m.kind === ts.SyntaxKind.DefaultKeyword)) {
|
|
638
|
+
hasDefault = true;
|
|
639
|
+
} else {
|
|
640
|
+
named.push(...collectAllExportedNames(node));
|
|
641
|
+
}
|
|
642
|
+
}
|
|
643
|
+
named.push(...collectAllNamedExports(node));
|
|
644
|
+
});
|
|
645
|
+
|
|
646
|
+
return { named, hasDefault };
|
|
647
|
+
}
|
|
648
|
+
|
|
590
649
|
function detectMiddlewareExportFromContent(content) {
|
|
591
650
|
return detectExportedNamesFromContent(content, ["onRequest"]).length > 0;
|
|
592
651
|
}
|
|
@@ -773,6 +832,156 @@ function regenerateClient() {
|
|
|
773
832
|
console.log(`[gen:client] ${clientMsg} -> .rainjs/entry.ts`);
|
|
774
833
|
}
|
|
775
834
|
|
|
835
|
+
function clientFileToIslandId(relPath) {
|
|
836
|
+
return relPath
|
|
837
|
+
.replace(/\\/g, "/")
|
|
838
|
+
.replace(/\.tsx?$/, "")
|
|
839
|
+
.replace(/[^a-zA-Z0-9_/]/g, "_");
|
|
840
|
+
}
|
|
841
|
+
|
|
842
|
+
function generateIslandProxy(clientRelPath, srcDir, fwImport) {
|
|
843
|
+
const islandDir = path.join(PROJECT_ROOT, BUILD_CONFIG.outDir, "islands");
|
|
844
|
+
if (!fs.existsSync(islandDir)) {
|
|
845
|
+
fs.mkdirSync(islandDir, { recursive: true });
|
|
846
|
+
}
|
|
847
|
+
|
|
848
|
+
const fullPath = path.join(srcDir, clientRelPath);
|
|
849
|
+
const content = fs.readFileSync(fullPath, "utf-8");
|
|
850
|
+
const { named, hasDefault } = detectAllExportsFromContent(content);
|
|
851
|
+
const islandId = clientFileToIslandId(clientRelPath);
|
|
852
|
+
|
|
853
|
+
const proxyFile = path.join(
|
|
854
|
+
islandDir,
|
|
855
|
+
clientRelPath.replace(/\\/g, "/").replace(/\.tsx?$/, ".ts"),
|
|
856
|
+
);
|
|
857
|
+
const proxyDir = path.dirname(proxyFile);
|
|
858
|
+
if (!fs.existsSync(proxyDir)) {
|
|
859
|
+
fs.mkdirSync(proxyDir, { recursive: true });
|
|
860
|
+
}
|
|
861
|
+
|
|
862
|
+
const proxyEntryDir = path.dirname(proxyFile);
|
|
863
|
+
let relOriginal = path
|
|
864
|
+
.relative(
|
|
865
|
+
proxyEntryDir,
|
|
866
|
+
path.join(srcDir, clientRelPath.replace(/\.tsx?$/, "")),
|
|
867
|
+
)
|
|
868
|
+
.replace(/\\/g, "/");
|
|
869
|
+
if (!relOriginal.startsWith(".")) relOriginal = `./${relOriginal}`;
|
|
870
|
+
|
|
871
|
+
const lines = [];
|
|
872
|
+
lines.push(`import { markAsIsland } from "${fwImport}";`);
|
|
873
|
+
|
|
874
|
+
const importSpecifiers = [];
|
|
875
|
+
if (hasDefault) {
|
|
876
|
+
importSpecifiers.push("default as _default");
|
|
877
|
+
}
|
|
878
|
+
for (const name of named) {
|
|
879
|
+
importSpecifiers.push(`${name} as _${name}`);
|
|
880
|
+
}
|
|
881
|
+
if (importSpecifiers.length > 0) {
|
|
882
|
+
lines.push(
|
|
883
|
+
`import { ${importSpecifiers.join(", ")} } from "${relOriginal}";`,
|
|
884
|
+
);
|
|
885
|
+
}
|
|
886
|
+
lines.push("");
|
|
887
|
+
|
|
888
|
+
if (hasDefault) {
|
|
889
|
+
lines.push(`export default markAsIsland("${islandId}:default", _default);`);
|
|
890
|
+
}
|
|
891
|
+
for (const name of named) {
|
|
892
|
+
lines.push(
|
|
893
|
+
`export const ${name} = markAsIsland("${islandId}:${name}", _${name});`,
|
|
894
|
+
);
|
|
895
|
+
}
|
|
896
|
+
lines.push("");
|
|
897
|
+
|
|
898
|
+
fs.writeFileSync(proxyFile, lines.join("\n"));
|
|
899
|
+
return { proxyFile, islandId, named, hasDefault };
|
|
900
|
+
}
|
|
901
|
+
|
|
902
|
+
function generateAllIslandProxies(clientFiles, srcDir, fwImport) {
|
|
903
|
+
const islandDir = path.join(PROJECT_ROOT, BUILD_CONFIG.outDir, "islands");
|
|
904
|
+
if (fs.existsSync(islandDir)) {
|
|
905
|
+
fs.rmSync(islandDir, { recursive: true, force: true });
|
|
906
|
+
}
|
|
907
|
+
|
|
908
|
+
const proxies = [];
|
|
909
|
+
for (const cf of clientFiles) {
|
|
910
|
+
proxies.push(generateIslandProxy(cf, srcDir, fwImport));
|
|
911
|
+
}
|
|
912
|
+
return proxies;
|
|
913
|
+
}
|
|
914
|
+
|
|
915
|
+
function updateWranglerAliases(clientFiles, srcDir) {
|
|
916
|
+
const wranglerPath = path.join(PROJECT_ROOT, "wrangler.toml");
|
|
917
|
+
if (!fs.existsSync(wranglerPath)) return;
|
|
918
|
+
|
|
919
|
+
let content = fs.readFileSync(wranglerPath, "utf-8");
|
|
920
|
+
|
|
921
|
+
const markerStart = "# [rain:alias:start]";
|
|
922
|
+
const markerEnd = "# [rain:alias:end]";
|
|
923
|
+
|
|
924
|
+
const startIdx = content.indexOf(markerStart);
|
|
925
|
+
const endIdx = content.indexOf(markerEnd);
|
|
926
|
+
if (startIdx !== -1 && endIdx !== -1) {
|
|
927
|
+
content =
|
|
928
|
+
content.slice(0, startIdx).trimEnd() +
|
|
929
|
+
"\n" +
|
|
930
|
+
content.slice(endIdx + markerEnd.length).trimStart();
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
if (clientFiles.length === 0) {
|
|
934
|
+
const cleaned = `${content.trimEnd()}
|
|
935
|
+
`;
|
|
936
|
+
if (cleaned !== fs.readFileSync(wranglerPath, "utf-8")) {
|
|
937
|
+
fs.writeFileSync(wranglerPath, cleaned);
|
|
938
|
+
}
|
|
939
|
+
return;
|
|
940
|
+
}
|
|
941
|
+
|
|
942
|
+
const islandDir = path.join(PROJECT_ROOT, BUILD_CONFIG.outDir, "islands");
|
|
943
|
+
|
|
944
|
+
const aliasLines = [markerStart];
|
|
945
|
+
const hasExistingAlias = /^\[alias\]/m.test(content);
|
|
946
|
+
if (!hasExistingAlias) {
|
|
947
|
+
aliasLines.push("[alias]");
|
|
948
|
+
}
|
|
949
|
+
|
|
950
|
+
for (const cf of clientFiles) {
|
|
951
|
+
const originalAbs = path.join(srcDir, cf.replace(/\.tsx?$/, ""));
|
|
952
|
+
const proxyAbs = path.join(
|
|
953
|
+
islandDir,
|
|
954
|
+
cf.replace(/\\/g, "/").replace(/\.tsx?$/, ".ts"),
|
|
955
|
+
);
|
|
956
|
+
const relProxy = path.relative(PROJECT_ROOT, proxyAbs).replace(/\\/g, "/");
|
|
957
|
+
const relOriginal = path
|
|
958
|
+
.relative(PROJECT_ROOT, originalAbs)
|
|
959
|
+
.replace(/\\/g, "/");
|
|
960
|
+
aliasLines.push(`"./${relOriginal}" = "./${relProxy}"`);
|
|
961
|
+
}
|
|
962
|
+
aliasLines.push(markerEnd);
|
|
963
|
+
|
|
964
|
+
const aliasBlock = aliasLines.join("\n");
|
|
965
|
+
|
|
966
|
+
if (hasExistingAlias) {
|
|
967
|
+
const aliasIdx = content.search(/^\[alias\]/m);
|
|
968
|
+
let insertAt = content.indexOf("\n", aliasIdx);
|
|
969
|
+
if (insertAt === -1) insertAt = content.length;
|
|
970
|
+
content =
|
|
971
|
+
content.slice(0, insertAt + 1) +
|
|
972
|
+
aliasLines.filter((l) => l !== "[alias]").join("\n") +
|
|
973
|
+
"\n" +
|
|
974
|
+
content.slice(insertAt + 1);
|
|
975
|
+
} else {
|
|
976
|
+
content = `${content.trimEnd()}
|
|
977
|
+
|
|
978
|
+
${aliasBlock}
|
|
979
|
+
`;
|
|
980
|
+
}
|
|
981
|
+
|
|
982
|
+
fs.writeFileSync(wranglerPath, content);
|
|
983
|
+
}
|
|
984
|
+
|
|
776
985
|
function generate() {
|
|
777
986
|
if (!fs.existsSync(ROUTES_DIR)) {
|
|
778
987
|
console.error(
|
|
@@ -851,6 +1060,9 @@ function generate() {
|
|
|
851
1060
|
? relativeImportPath(path.join(PROJECT_ROOT, fwPkg))
|
|
852
1061
|
: fwPkg;
|
|
853
1062
|
|
|
1063
|
+
generateAllIslandProxies(clientFiles, srcDir, frameworkImport);
|
|
1064
|
+
updateWranglerAliases(clientFiles, srcDir);
|
|
1065
|
+
|
|
854
1066
|
const headerImports = [`import { Rain } from "${frameworkImport}";`];
|
|
855
1067
|
if (hasConfig) {
|
|
856
1068
|
const configPath = relativeImportPath(
|
|
@@ -906,6 +1118,11 @@ module.exports = {
|
|
|
906
1118
|
detectDefaultExport,
|
|
907
1119
|
detectDefaultExportFromContent,
|
|
908
1120
|
detectUseClientDirective,
|
|
1121
|
+
detectAllExportsFromContent,
|
|
1122
|
+
generateIslandProxy,
|
|
1123
|
+
generateAllIslandProxies,
|
|
1124
|
+
updateWranglerAliases,
|
|
1125
|
+
clientFileToIslandId,
|
|
909
1126
|
bundleClientFilesSync,
|
|
910
1127
|
validateNoPageRouteColocation,
|
|
911
1128
|
validateNoDuplicateUrls,
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export interface ServerFunction {
|
|
2
|
-
readonly name: string;
|
|
3
|
-
readonly isExported: boolean;
|
|
4
|
-
readonly isAsync: boolean;
|
|
5
|
-
}
|
|
6
|
-
export declare function extractServerFunctions(source: string): ServerFunction[];
|
|
7
|
-
export declare function generateActionId(filePath: string, functionName: string): string;
|
|
8
|
-
export declare function generateClientProxy(actionId: string): string;
|
|
9
|
-
//# sourceMappingURL=server-action.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-action.d.ts","sourceRoot":"","sources":["../../src/framework/compiler/server-action.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AA0FD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAkBvE;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,MAAM,CAQR;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAM5D"}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { createSourceFile, isArrowFunction, isBlock, isExpressionStatement, isFunctionDeclaration, isFunctionExpression, isIdentifier, isStringLiteral, isVariableStatement, ScriptTarget, SyntaxKind, } from "typescript";
|
|
2
|
-
function hasModifier(node, kind) {
|
|
3
|
-
return node.modifiers?.some((m) => m.kind === kind) ?? false;
|
|
4
|
-
}
|
|
5
|
-
function hasUseServerInBody(body) {
|
|
6
|
-
if (!body || body.statements.length === 0)
|
|
7
|
-
return false;
|
|
8
|
-
const first = body.statements[0];
|
|
9
|
-
if (!first)
|
|
10
|
-
return false;
|
|
11
|
-
return (isExpressionStatement(first) &&
|
|
12
|
-
isStringLiteral(first.expression) &&
|
|
13
|
-
first.expression.text === "use server");
|
|
14
|
-
}
|
|
15
|
-
function isFileUseServer(source) {
|
|
16
|
-
const sf = createSourceFile("check.tsx", source, ScriptTarget.Latest, true);
|
|
17
|
-
const first = sf.statements[0];
|
|
18
|
-
if (!first)
|
|
19
|
-
return false;
|
|
20
|
-
return (isExpressionStatement(first) &&
|
|
21
|
-
isStringLiteral(first.expression) &&
|
|
22
|
-
first.expression.text === "use server");
|
|
23
|
-
}
|
|
24
|
-
function isServerFunctionDecl(stmt, fileLevel) {
|
|
25
|
-
if (fileLevel && hasModifier(stmt, SyntaxKind.ExportKeyword)) {
|
|
26
|
-
return true;
|
|
27
|
-
}
|
|
28
|
-
return hasUseServerInBody(stmt.body);
|
|
29
|
-
}
|
|
30
|
-
function extractFromFunctionDecl(stmt, fileLevel) {
|
|
31
|
-
if (!stmt.name)
|
|
32
|
-
return null;
|
|
33
|
-
if (!isServerFunctionDecl(stmt, fileLevel))
|
|
34
|
-
return null;
|
|
35
|
-
return {
|
|
36
|
-
name: stmt.name.text,
|
|
37
|
-
isExported: hasModifier(stmt, SyntaxKind.ExportKeyword),
|
|
38
|
-
isAsync: hasModifier(stmt, SyntaxKind.AsyncKeyword),
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
function isServerVarInit(init, stmtExported, fileLevel) {
|
|
42
|
-
if (fileLevel && stmtExported)
|
|
43
|
-
return true;
|
|
44
|
-
const body = init.body;
|
|
45
|
-
return isBlock(body) && hasUseServerInBody(body);
|
|
46
|
-
}
|
|
47
|
-
function extractFromVariableStatement(stmt, fileLevel) {
|
|
48
|
-
const stmtExported = hasModifier(stmt, SyntaxKind.ExportKeyword);
|
|
49
|
-
const results = [];
|
|
50
|
-
for (const decl of stmt.declarationList.declarations) {
|
|
51
|
-
if (!(decl.name && isIdentifier(decl.name)))
|
|
52
|
-
continue;
|
|
53
|
-
const init = decl.initializer;
|
|
54
|
-
if (!init)
|
|
55
|
-
continue;
|
|
56
|
-
if (!(isArrowFunction(init) || isFunctionExpression(init)))
|
|
57
|
-
continue;
|
|
58
|
-
if (!isServerVarInit(init, stmtExported, fileLevel))
|
|
59
|
-
continue;
|
|
60
|
-
results.push({
|
|
61
|
-
name: decl.name.text,
|
|
62
|
-
isExported: stmtExported,
|
|
63
|
-
isAsync: hasModifier(init, SyntaxKind.AsyncKeyword),
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
return results;
|
|
67
|
-
}
|
|
68
|
-
export function extractServerFunctions(source) {
|
|
69
|
-
const sf = createSourceFile("file.tsx", source, ScriptTarget.Latest, true);
|
|
70
|
-
const fileLevel = isFileUseServer(source);
|
|
71
|
-
const results = [];
|
|
72
|
-
for (const stmt of sf.statements) {
|
|
73
|
-
if (isFunctionDeclaration(stmt)) {
|
|
74
|
-
const fn = extractFromFunctionDecl(stmt, fileLevel);
|
|
75
|
-
if (fn)
|
|
76
|
-
results.push(fn);
|
|
77
|
-
}
|
|
78
|
-
if (isVariableStatement(stmt)) {
|
|
79
|
-
results.push(...extractFromVariableStatement(stmt, fileLevel));
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
return results;
|
|
83
|
-
}
|
|
84
|
-
export function generateActionId(filePath, functionName) {
|
|
85
|
-
const input = `${filePath.replace(/\\/g, "/")}:${functionName}`;
|
|
86
|
-
let hash = 0x811c9dc5;
|
|
87
|
-
for (let i = 0; i < input.length; i++) {
|
|
88
|
-
hash ^= input.charCodeAt(i);
|
|
89
|
-
hash = Math.imul(hash, 0x01000193);
|
|
90
|
-
}
|
|
91
|
-
return (hash >>> 0).toString(36);
|
|
92
|
-
}
|
|
93
|
-
export function generateClientProxy(actionId) {
|
|
94
|
-
const escaped = actionId.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
95
|
-
return (`((formData) => fetch("/_rain/action/${escaped}",` +
|
|
96
|
-
` { method: "POST", body: formData }))`);
|
|
97
|
-
}
|
|
98
|
-
//# sourceMappingURL=server-action.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-action.js","sourceRoot":"","sources":["../../src/framework/compiler/server-action.ts"],"names":[],"mappings":"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"}
|