@bleedingdev/modern-js-plugin-tanstack 3.5.0-ultramodern.3 → 3.5.0-ultramodern.31

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.
Files changed (230) hide show
  1. package/dist/cjs/cli/artifacts.js +157 -0
  2. package/dist/cjs/cli/index.js +8 -79
  3. package/dist/cjs/cli/tanstackTypes/canonicalRoutes.js +113 -0
  4. package/dist/cjs/cli/tanstackTypes/shared.js +130 -0
  5. package/dist/cjs/cli/tanstackTypes/source.js +251 -0
  6. package/dist/cjs/cli/tanstackTypes.js +4 -350
  7. package/dist/cjs/runtime/blockingSubscribe.js +64 -0
  8. package/dist/cjs/runtime/{pluginCore.js → clientBasepath.js} +12 -19
  9. package/dist/cjs/runtime/clientHydration.js +129 -0
  10. package/dist/cjs/runtime/dataMutation.js +11 -176
  11. package/dist/cjs/runtime/formData.js +116 -0
  12. package/dist/cjs/runtime/loaderBridge.js +4 -1
  13. package/dist/cjs/runtime/plugin.js +21 -125
  14. package/dist/cjs/runtime/plugin.node.js +45 -125
  15. package/dist/cjs/runtime/pluginShared.js +90 -0
  16. package/dist/cjs/runtime/prefetchLink.js +15 -2
  17. package/dist/cjs/runtime/routeTree/components.js +102 -0
  18. package/dist/cjs/runtime/routeTree/construction.js +152 -0
  19. package/dist/cjs/runtime/routeTree/index.js +47 -0
  20. package/dist/cjs/runtime/routeTree/loaders.js +158 -0
  21. package/dist/cjs/runtime/routeTree/paths.js +57 -0
  22. package/dist/cjs/runtime/routeTree/staticData.js +63 -0
  23. package/dist/cjs/runtime/routeTree/tanstackRoutes.js +57 -0
  24. package/dist/cjs/runtime/routeTree/types.js +18 -0
  25. package/dist/cjs/runtime/routeTree.js +7 -320
  26. package/dist/cjs/runtime/rsc/CompositeComponent.js +18 -13
  27. package/dist/cjs/runtime/rsc/RscNodeRenderer.js +5 -16
  28. package/dist/cjs/runtime/rsc/client.js +8 -25
  29. package/dist/cjs/runtime/rsc/flightSerialization.js +132 -0
  30. package/dist/cjs/runtime/rsc/payloadErrors.js +99 -0
  31. package/dist/cjs/runtime/rsc/payloadFetch.js +117 -0
  32. package/dist/cjs/runtime/rsc/payloadRouter.js +21 -142
  33. package/dist/cjs/runtime/rsc/payloadRoutes.js +106 -0
  34. package/dist/cjs/runtime/rsc/payloadStorage.js +58 -0
  35. package/dist/cjs/runtime/rsc/server.js +14 -18
  36. package/dist/cjs/runtime/rsc/shared.js +71 -0
  37. package/dist/cjs/runtime/rsc/treeGetter.js +72 -0
  38. package/dist/cjs/runtime/ssrManagedTags.js +103 -0
  39. package/dist/cjs/runtime/ssrPreload.js +89 -0
  40. package/dist/cjs/runtime/ssrTypes.js +18 -0
  41. package/dist/cjs/runtime/submitAction.js +161 -0
  42. package/dist/cjs/runtime/utils.js +49 -86
  43. package/dist/esm/cli/artifacts.mjs +103 -0
  44. package/dist/esm/cli/index.mjs +4 -78
  45. package/dist/esm/cli/tanstackTypes/canonicalRoutes.mjs +75 -0
  46. package/dist/esm/cli/tanstackTypes/shared.mjs +68 -0
  47. package/dist/esm/cli/tanstackTypes/source.mjs +203 -0
  48. package/dist/esm/cli/tanstackTypes.mjs +2 -339
  49. package/dist/esm/runtime/blockingSubscribe.mjs +19 -0
  50. package/dist/esm/runtime/clientBasepath.mjs +10 -0
  51. package/dist/esm/runtime/clientHydration.mjs +70 -0
  52. package/dist/esm/runtime/dataMutation.mjs +2 -167
  53. package/dist/esm/runtime/formData.mjs +63 -0
  54. package/dist/esm/runtime/loaderBridge.mjs +4 -1
  55. package/dist/esm/runtime/plugin.mjs +14 -118
  56. package/dist/esm/runtime/plugin.node.mjs +41 -121
  57. package/dist/esm/runtime/pluginShared.mjs +40 -0
  58. package/dist/esm/runtime/prefetchLink.mjs +18 -5
  59. package/dist/esm/runtime/routeTree/components.mjs +55 -0
  60. package/dist/esm/runtime/routeTree/construction.mjs +111 -0
  61. package/dist/esm/runtime/routeTree/index.mjs +2 -0
  62. package/dist/esm/runtime/routeTree/loaders.mjs +117 -0
  63. package/dist/esm/runtime/routeTree/paths.mjs +16 -0
  64. package/dist/esm/runtime/routeTree/staticData.mjs +22 -0
  65. package/dist/esm/runtime/routeTree/tanstackRoutes.mjs +13 -0
  66. package/dist/esm/runtime/routeTree/types.mjs +0 -0
  67. package/dist/esm/runtime/routeTree.mjs +1 -318
  68. package/dist/esm/runtime/rsc/CompositeComponent.mjs +18 -13
  69. package/dist/esm/runtime/rsc/RscNodeRenderer.mjs +4 -15
  70. package/dist/esm/runtime/rsc/client.mjs +6 -26
  71. package/dist/esm/runtime/rsc/flightSerialization.mjs +88 -0
  72. package/dist/esm/runtime/rsc/payloadErrors.mjs +49 -0
  73. package/dist/esm/runtime/rsc/payloadFetch.mjs +61 -0
  74. package/dist/esm/runtime/rsc/payloadRouter.mjs +12 -133
  75. package/dist/esm/runtime/rsc/payloadRoutes.mjs +50 -0
  76. package/dist/esm/runtime/rsc/payloadStorage.mjs +14 -0
  77. package/dist/esm/runtime/rsc/server.mjs +17 -21
  78. package/dist/esm/runtime/rsc/shared.mjs +21 -0
  79. package/dist/esm/runtime/rsc/treeGetter.mjs +34 -0
  80. package/dist/esm/runtime/ssrManagedTags.mjs +53 -0
  81. package/dist/esm/runtime/ssrPreload.mjs +51 -0
  82. package/dist/esm/runtime/ssrTypes.mjs +0 -0
  83. package/dist/esm/runtime/submitAction.mjs +120 -0
  84. package/dist/esm/runtime/utils.mjs +47 -75
  85. package/dist/esm-node/cli/artifacts.mjs +104 -0
  86. package/dist/esm-node/cli/index.mjs +4 -78
  87. package/dist/esm-node/cli/tanstackTypes/canonicalRoutes.mjs +76 -0
  88. package/dist/esm-node/cli/tanstackTypes/shared.mjs +69 -0
  89. package/dist/esm-node/cli/tanstackTypes/source.mjs +204 -0
  90. package/dist/esm-node/cli/tanstackTypes.mjs +2 -339
  91. package/dist/esm-node/runtime/blockingSubscribe.mjs +20 -0
  92. package/dist/esm-node/runtime/clientBasepath.mjs +11 -0
  93. package/dist/esm-node/runtime/clientHydration.mjs +71 -0
  94. package/dist/esm-node/runtime/dataMutation.mjs +2 -167
  95. package/dist/esm-node/runtime/formData.mjs +64 -0
  96. package/dist/esm-node/runtime/loaderBridge.mjs +4 -1
  97. package/dist/esm-node/runtime/plugin.mjs +14 -118
  98. package/dist/esm-node/runtime/plugin.node.mjs +41 -121
  99. package/dist/esm-node/runtime/pluginShared.mjs +41 -0
  100. package/dist/esm-node/runtime/prefetchLink.mjs +18 -5
  101. package/dist/esm-node/runtime/routeTree/components.mjs +56 -0
  102. package/dist/esm-node/runtime/routeTree/construction.mjs +112 -0
  103. package/dist/esm-node/runtime/routeTree/index.mjs +3 -0
  104. package/dist/esm-node/runtime/routeTree/loaders.mjs +118 -0
  105. package/dist/esm-node/runtime/routeTree/paths.mjs +17 -0
  106. package/dist/esm-node/runtime/routeTree/staticData.mjs +23 -0
  107. package/dist/esm-node/runtime/routeTree/tanstackRoutes.mjs +14 -0
  108. package/dist/esm-node/runtime/routeTree/types.mjs +1 -0
  109. package/dist/esm-node/runtime/routeTree.mjs +1 -318
  110. package/dist/esm-node/runtime/rsc/CompositeComponent.mjs +18 -13
  111. package/dist/esm-node/runtime/rsc/RscNodeRenderer.mjs +4 -15
  112. package/dist/esm-node/runtime/rsc/client.mjs +6 -26
  113. package/dist/esm-node/runtime/rsc/flightSerialization.mjs +89 -0
  114. package/dist/esm-node/runtime/rsc/payloadErrors.mjs +50 -0
  115. package/dist/esm-node/runtime/rsc/payloadFetch.mjs +62 -0
  116. package/dist/esm-node/runtime/rsc/payloadRouter.mjs +12 -133
  117. package/dist/esm-node/runtime/rsc/payloadRoutes.mjs +51 -0
  118. package/dist/esm-node/runtime/rsc/payloadStorage.mjs +15 -0
  119. package/dist/esm-node/runtime/rsc/server.mjs +17 -21
  120. package/dist/esm-node/runtime/rsc/shared.mjs +22 -0
  121. package/dist/esm-node/runtime/rsc/treeGetter.mjs +35 -0
  122. package/dist/esm-node/runtime/ssrManagedTags.mjs +54 -0
  123. package/dist/esm-node/runtime/ssrPreload.mjs +52 -0
  124. package/dist/esm-node/runtime/ssrTypes.mjs +1 -0
  125. package/dist/esm-node/runtime/submitAction.mjs +121 -0
  126. package/dist/esm-node/runtime/utils.mjs +47 -75
  127. package/dist/types/cli/artifacts.d.ts +33 -0
  128. package/dist/types/cli/index.d.ts +2 -22
  129. package/dist/types/cli/tanstackTypes/canonicalRoutes.d.ts +22 -0
  130. package/dist/types/cli/tanstackTypes/shared.d.ts +20 -0
  131. package/dist/types/cli/tanstackTypes/source.d.ts +10 -0
  132. package/dist/types/cli/tanstackTypes.d.ts +3 -31
  133. package/dist/types/runtime/blockingSubscribe.d.ts +3 -0
  134. package/dist/types/runtime/clientBasepath.d.ts +1 -0
  135. package/dist/types/runtime/clientHydration.d.ts +19 -0
  136. package/dist/types/runtime/dataMutation.d.ts +3 -12
  137. package/dist/types/runtime/formData.d.ts +23 -0
  138. package/dist/types/runtime/plugin.d.ts +1 -1
  139. package/dist/types/runtime/plugin.node.d.ts +1 -1
  140. package/dist/types/runtime/pluginShared.d.ts +39 -0
  141. package/dist/types/runtime/routeTree/components.d.ts +7 -0
  142. package/dist/types/runtime/routeTree/construction.d.ts +5 -0
  143. package/dist/types/runtime/routeTree/index.d.ts +2 -0
  144. package/dist/types/runtime/routeTree/loaders.d.ts +4 -0
  145. package/dist/types/runtime/routeTree/paths.d.ts +3 -0
  146. package/dist/types/runtime/routeTree/staticData.d.ts +19 -0
  147. package/dist/types/runtime/routeTree/tanstackRoutes.d.ts +4 -0
  148. package/dist/types/runtime/routeTree/types.d.ts +75 -0
  149. package/dist/types/runtime/routeTree.d.ts +1 -9
  150. package/dist/types/runtime/rsc/CompositeComponent.d.ts +1 -2
  151. package/dist/types/runtime/rsc/RscNodeRenderer.d.ts +2 -3
  152. package/dist/types/runtime/rsc/client.d.ts +2 -0
  153. package/dist/types/runtime/rsc/flightSerialization.d.ts +3 -0
  154. package/dist/types/runtime/rsc/payloadErrors.d.ts +6 -0
  155. package/dist/types/runtime/rsc/payloadFetch.d.ts +10 -0
  156. package/dist/types/runtime/rsc/payloadRouter.d.ts +2 -10
  157. package/dist/types/runtime/rsc/payloadRoutes.d.ts +43 -0
  158. package/dist/types/runtime/rsc/payloadStorage.d.ts +5 -0
  159. package/dist/types/runtime/rsc/shared.d.ts +19 -0
  160. package/dist/types/runtime/rsc/treeGetter.d.ts +1 -0
  161. package/dist/types/runtime/ssrManagedTags.d.ts +7 -0
  162. package/dist/types/runtime/ssrPreload.d.ts +2 -0
  163. package/dist/types/runtime/ssrTypes.d.ts +43 -0
  164. package/dist/types/runtime/state.d.ts +1 -1
  165. package/dist/types/runtime/submitAction.d.ts +14 -0
  166. package/dist/types/runtime/types.d.ts +4 -9
  167. package/dist/types/runtime/utils.d.ts +4 -24
  168. package/package.json +30 -8
  169. package/rstest.config.mts +3 -0
  170. package/src/cli/artifacts.ts +255 -0
  171. package/src/cli/index.ts +7 -185
  172. package/src/cli/tanstackTypes/canonicalRoutes.ts +157 -0
  173. package/src/cli/tanstackTypes/shared.ts +119 -0
  174. package/src/cli/tanstackTypes/source.ts +405 -0
  175. package/src/cli/tanstackTypes.ts +4 -647
  176. package/src/runtime/blockingSubscribe.ts +48 -0
  177. package/src/runtime/clientBasepath.ts +12 -0
  178. package/src/runtime/clientHydration.ts +151 -0
  179. package/src/runtime/dataMutation.tsx +9 -306
  180. package/src/runtime/formData.ts +153 -0
  181. package/src/runtime/loaderBridge.ts +8 -3
  182. package/src/runtime/plugin.node.tsx +76 -291
  183. package/src/runtime/plugin.tsx +21 -257
  184. package/src/runtime/pluginShared.ts +112 -0
  185. package/src/runtime/prefetchLink.tsx +78 -15
  186. package/src/runtime/routeTree/components.ts +130 -0
  187. package/src/runtime/routeTree/construction.ts +238 -0
  188. package/src/runtime/routeTree/index.ts +7 -0
  189. package/src/runtime/routeTree/loaders.ts +232 -0
  190. package/src/runtime/routeTree/paths.ts +36 -0
  191. package/src/runtime/routeTree/staticData.ts +66 -0
  192. package/src/runtime/routeTree/tanstackRoutes.ts +36 -0
  193. package/src/runtime/routeTree/types.ts +87 -0
  194. package/src/runtime/routeTree.ts +5 -750
  195. package/src/runtime/rsc/CompositeComponent.tsx +29 -20
  196. package/src/runtime/rsc/RscNodeRenderer.tsx +9 -27
  197. package/src/runtime/rsc/client.tsx +12 -40
  198. package/src/runtime/rsc/flightSerialization.ts +158 -0
  199. package/src/runtime/rsc/payloadErrors.ts +73 -0
  200. package/src/runtime/rsc/payloadFetch.ts +97 -0
  201. package/src/runtime/rsc/payloadRouter.ts +29 -234
  202. package/src/runtime/rsc/payloadRoutes.ts +122 -0
  203. package/src/runtime/rsc/payloadStorage.ts +35 -0
  204. package/src/runtime/rsc/server.tsx +20 -29
  205. package/src/runtime/rsc/shared.ts +70 -0
  206. package/src/runtime/rsc/treeGetter.tsx +52 -0
  207. package/src/runtime/ssrManagedTags.ts +107 -0
  208. package/src/runtime/ssrPreload.ts +125 -0
  209. package/src/runtime/ssrTypes.ts +51 -0
  210. package/src/runtime/state.ts +4 -2
  211. package/src/runtime/submitAction.ts +194 -0
  212. package/src/runtime/types.ts +6 -13
  213. package/src/runtime/utils.tsx +76 -110
  214. package/src/types/react-server-dom-rspack.d.ts +56 -0
  215. package/tests/castRatchet.test.ts +85 -0
  216. package/tests/router/cli.test.ts +7 -0
  217. package/tests/router/dataMutation.test.tsx +59 -0
  218. package/tests/router/fixtures/router-gen.golden.txt +72 -0
  219. package/tests/router/generateRouteArtifacts.test.ts +106 -0
  220. package/tests/router/loaderBridge.test.ts +21 -0
  221. package/tests/router/prefetchLink.test.tsx +106 -59
  222. package/tests/router/prefetchLinkPreload.test.tsx +85 -0
  223. package/tests/router/routeTree.test.ts +46 -11
  224. package/tests/router/rsc.test.tsx +189 -0
  225. package/tests/router/ssrPreload.test.ts +30 -0
  226. package/tests/router/tanstackTypes.test.ts +254 -1
  227. package/dist/esm/runtime/pluginCore.mjs +0 -14
  228. package/dist/esm-node/runtime/pluginCore.mjs +0 -15
  229. package/dist/types/runtime/pluginCore.d.ts +0 -21
  230. package/src/runtime/pluginCore.ts +0 -48
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ __webpack_require__.d(__webpack_exports__, {
31
+ EmptyFallback: ()=>EmptyFallback,
32
+ TANSTACK_RSC_FLIGHT_VALUE: ()=>TANSTACK_RSC_FLIGHT_VALUE,
33
+ isSerializedTanstackRscFlightValue: ()=>isSerializedTanstackRscFlightValue,
34
+ renderSelectedTree: ()=>renderSelectedTree,
35
+ selectTreePath: ()=>selectTreePath
36
+ });
37
+ const external_symbols_js_namespaceObject = require("./symbols.js");
38
+ const TANSTACK_RSC_FLIGHT_VALUE = '__modernTanstackRsc';
39
+ function isSerializedTanstackRscFlightValue(value) {
40
+ return Boolean(value) && 'object' == typeof value && true === value[TANSTACK_RSC_FLIGHT_VALUE] && ('renderable' === value.kind || 'composite' === value.kind) && value.stream instanceof ReadableStream;
41
+ }
42
+ function EmptyFallback() {
43
+ return null;
44
+ }
45
+ function selectTreePath(tree, path) {
46
+ let current = tree;
47
+ for (const key of path){
48
+ if (null === current || 'object' != typeof current) return null;
49
+ current = current[key];
50
+ }
51
+ return current;
52
+ }
53
+ function renderSelectedTree(src, { getTree = src[external_symbols_js_namespaceObject.RSC_PROXY_GET_TREE], missingTreeError }) {
54
+ if (!getTree) throw new Error(missingTreeError);
55
+ return selectTreePath(getTree(), src[external_symbols_js_namespaceObject.RSC_PROXY_PATH] || []);
56
+ }
57
+ exports.EmptyFallback = __webpack_exports__.EmptyFallback;
58
+ exports.TANSTACK_RSC_FLIGHT_VALUE = __webpack_exports__.TANSTACK_RSC_FLIGHT_VALUE;
59
+ exports.isSerializedTanstackRscFlightValue = __webpack_exports__.isSerializedTanstackRscFlightValue;
60
+ exports.renderSelectedTree = __webpack_exports__.renderSelectedTree;
61
+ exports.selectTreePath = __webpack_exports__.selectTreePath;
62
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
63
+ "EmptyFallback",
64
+ "TANSTACK_RSC_FLIGHT_VALUE",
65
+ "isSerializedTanstackRscFlightValue",
66
+ "renderSelectedTree",
67
+ "selectTreePath"
68
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
69
+ Object.defineProperty(exports, '__esModule', {
70
+ value: true
71
+ });
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ "use client";
3
+ var __webpack_require__ = {};
4
+ (()=>{
5
+ __webpack_require__.d = (exports1, getters, values)=>{
6
+ var define = (defs, kind)=>{
7
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
8
+ enumerable: true,
9
+ [kind]: defs[key]
10
+ });
11
+ };
12
+ define(getters, "get");
13
+ define(values, "value");
14
+ };
15
+ })();
16
+ (()=>{
17
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
18
+ })();
19
+ (()=>{
20
+ __webpack_require__.r = (exports1)=>{
21
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
22
+ value: 'Module'
23
+ });
24
+ Object.defineProperty(exports1, '__esModule', {
25
+ value: true
26
+ });
27
+ };
28
+ })();
29
+ var __webpack_exports__ = {};
30
+ __webpack_require__.r(__webpack_exports__);
31
+ __webpack_require__.d(__webpack_exports__, {
32
+ createTreeGetterFromFlightStream: ()=>createTreeGetterFromFlightStream
33
+ });
34
+ const external_react_namespaceObject = require("react");
35
+ let modernRscClientRuntimePromise;
36
+ function loadModernRscClientRuntime() {
37
+ modernRscClientRuntimePromise ??= import("@modern-js/runtime/rsc/client").then((runtime)=>{
38
+ runtime.setServerCallback(runtime.callServer);
39
+ return runtime;
40
+ });
41
+ return modernRscClientRuntimePromise;
42
+ }
43
+ async function createFromFlightStream(stream) {
44
+ if ("u" < typeof window) {
45
+ const runtime = await import("react-server-dom-rspack/client.edge");
46
+ return runtime.createFromReadableStream(stream);
47
+ }
48
+ const runtime = await loadModernRscClientRuntime();
49
+ return runtime.createFromReadableStream(stream, {
50
+ callServer: runtime.callServer
51
+ });
52
+ }
53
+ function createTreeGetterFromFlightStream(stream) {
54
+ let ready = false;
55
+ let tree;
56
+ const treePromise = createFromFlightStream(stream).then((value)=>{
57
+ tree = value;
58
+ ready = true;
59
+ return value;
60
+ });
61
+ return ()=>{
62
+ if (ready) return tree;
63
+ return (0, external_react_namespaceObject.use)(treePromise);
64
+ };
65
+ }
66
+ exports.createTreeGetterFromFlightStream = __webpack_exports__.createTreeGetterFromFlightStream;
67
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
68
+ "createTreeGetterFromFlightStream"
69
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
70
+ Object.defineProperty(exports, '__esModule', {
71
+ value: true
72
+ });
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ async function waitForRouterSerialization(tanstackRouter) {
31
+ const serverSsr = tanstackRouter.serverSsr;
32
+ if (!serverSsr || 'function' != typeof serverSsr.onSerializationFinished || serverSsr.isSerializationFinished?.()) return;
33
+ await new Promise((resolve)=>{
34
+ serverSsr.onSerializationFinished?.(resolve);
35
+ });
36
+ }
37
+ function htmlEscapeAttr(value) {
38
+ return value.replace(/&/g, '&amp;').replace(/"/g, '&quot;');
39
+ }
40
+ function routerManagedTagToHtml(tag) {
41
+ if (!tag || 'object' != typeof tag) return '';
42
+ const managedTag = tag;
43
+ if (!managedTag || "script" !== managedTag.tag) return '';
44
+ const attrs = managedTag.attrs || {};
45
+ const attrsStr = Object.entries(attrs).filter(([, v])=>null != v && false !== v).map(([k, v])=>{
46
+ const name = 'className' === k ? 'class' : k;
47
+ if (true === v) return name;
48
+ return `${name}="${htmlEscapeAttr(String(v))}"`;
49
+ }).join(' ');
50
+ const open = attrsStr.length ? `<script ${attrsStr}>` : "<script>";
51
+ const children = 'string' == typeof managedTag.children ? managedTag.children : '';
52
+ return `${open}${children}</script>`;
53
+ }
54
+ function routerManagedTagsToHtml(tags) {
55
+ const normalizedTags = Array.isArray(tags) ? tags : [
56
+ tags
57
+ ];
58
+ return normalizedTags.map(routerManagedTagToHtml).filter(Boolean);
59
+ }
60
+ function createGetSsrHref(request) {
61
+ const url = new URL(request.url);
62
+ return `${url.pathname}${url.search}${url.hash}`;
63
+ }
64
+ function collectRouterErrors(tanstackRouter) {
65
+ const state = tanstackRouter.state;
66
+ const matches = Array.isArray(state.matches) ? state.matches : [];
67
+ const errors = matches.reduce((acc, match)=>{
68
+ if (!match.error) return acc;
69
+ const routeId = 'string' == typeof match.routeId ? match.routeId : 'string' == typeof match.route?.id ? match.route.id : `match-${Object.keys(acc).length}`;
70
+ acc[routeId] = match.error;
71
+ return acc;
72
+ }, {});
73
+ return Object.keys(errors).length > 0 ? errors : void 0;
74
+ }
75
+ async function attachServerSsrUtils(router) {
76
+ const { attachRouterServerSsrUtils } = await import("@tanstack/router-core/ssr/server");
77
+ attachRouterServerSsrUtils({
78
+ router,
79
+ manifest: void 0
80
+ });
81
+ }
82
+ __webpack_require__.d(__webpack_exports__, {
83
+ attachServerSsrUtils: ()=>attachServerSsrUtils,
84
+ collectRouterErrors: ()=>collectRouterErrors,
85
+ createGetSsrHref: ()=>createGetSsrHref,
86
+ routerManagedTagsToHtml: ()=>routerManagedTagsToHtml,
87
+ waitForRouterSerialization: ()=>waitForRouterSerialization
88
+ });
89
+ exports.attachServerSsrUtils = __webpack_exports__.attachServerSsrUtils;
90
+ exports.collectRouterErrors = __webpack_exports__.collectRouterErrors;
91
+ exports.createGetSsrHref = __webpack_exports__.createGetSsrHref;
92
+ exports.routerManagedTagsToHtml = __webpack_exports__.routerManagedTagsToHtml;
93
+ exports.waitForRouterSerialization = __webpack_exports__.waitForRouterSerialization;
94
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
95
+ "attachServerSsrUtils",
96
+ "collectRouterErrors",
97
+ "createGetSsrHref",
98
+ "routerManagedTagsToHtml",
99
+ "waitForRouterSerialization"
100
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
101
+ Object.defineProperty(exports, '__esModule', {
102
+ value: true
103
+ });
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ function isPromiseLike(value) {
31
+ return Boolean(value && 'function' == typeof value.then);
32
+ }
33
+ function isPreloadableRouteComponent(component) {
34
+ if (!component || 'function' != typeof component) return false;
35
+ const preloadable = component;
36
+ return 'function' == typeof preloadable.load || 'function' == typeof preloadable.preload;
37
+ }
38
+ function isReactLazyRouteComponent(component) {
39
+ return null != component && 'object' == typeof component && 'function' == typeof component._init && '_payload' in component;
40
+ }
41
+ async function preloadReactLazyRouteComponent(component) {
42
+ try {
43
+ component._init?.(component._payload);
44
+ } catch (thrown) {
45
+ if (!isPromiseLike(thrown)) throw thrown;
46
+ await thrown;
47
+ component._init?.(component._payload);
48
+ }
49
+ }
50
+ async function preloadRouteComponent(component, preloadedComponents) {
51
+ if (isReactLazyRouteComponent(component)) {
52
+ if (preloadedComponents.has(component)) return;
53
+ preloadedComponents.add(component);
54
+ await preloadReactLazyRouteComponent(component);
55
+ return;
56
+ }
57
+ if (!isPreloadableRouteComponent(component)) return;
58
+ if (preloadedComponents.has(component)) return;
59
+ preloadedComponents.add(component);
60
+ if ('function' == typeof component.load) return void await component.load({});
61
+ await component.preload?.({});
62
+ }
63
+ async function preloadMatchedRouteComponents(tanstackRouter) {
64
+ const matches = Array.isArray(tanstackRouter.state.matches) ? tanstackRouter.state.matches : [];
65
+ const routesById = tanstackRouter.routesById || {};
66
+ const preloadedComponents = new Set();
67
+ await Promise.all(matches.map(async (match)=>{
68
+ const routeId = 'string' == typeof match.routeId ? match.routeId : 'string' == typeof match.route?.id ? match.route.id : void 0;
69
+ const route = routeId ? routesById[routeId] : match.route;
70
+ const options = route?.options;
71
+ if (!options) return;
72
+ await Promise.all([
73
+ preloadRouteComponent(options.component, preloadedComponents),
74
+ preloadRouteComponent(options.pendingComponent, preloadedComponents),
75
+ preloadRouteComponent(options.errorComponent, preloadedComponents),
76
+ preloadRouteComponent(options.notFoundComponent, preloadedComponents)
77
+ ]);
78
+ }));
79
+ }
80
+ __webpack_require__.d(__webpack_exports__, {
81
+ preloadMatchedRouteComponents: ()=>preloadMatchedRouteComponents
82
+ });
83
+ exports.preloadMatchedRouteComponents = __webpack_exports__.preloadMatchedRouteComponents;
84
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
85
+ "preloadMatchedRouteComponents"
86
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
87
+ Object.defineProperty(exports, '__esModule', {
88
+ value: true
89
+ });
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.r = (exports1)=>{
5
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
6
+ value: 'Module'
7
+ });
8
+ Object.defineProperty(exports1, '__esModule', {
9
+ value: true
10
+ });
11
+ };
12
+ })();
13
+ var __webpack_exports__ = {};
14
+ __webpack_require__.r(__webpack_exports__);
15
+ for(var __rspack_i in __webpack_exports__)exports[__rspack_i] = __webpack_exports__[__rspack_i];
16
+ Object.defineProperty(exports, '__esModule', {
17
+ value: true
18
+ });
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, getters, values)=>{
5
+ var define = (defs, kind)=>{
6
+ for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
7
+ enumerable: true,
8
+ [kind]: defs[key]
9
+ });
10
+ };
11
+ define(getters, "get");
12
+ define(values, "value");
13
+ };
14
+ })();
15
+ (()=>{
16
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
17
+ })();
18
+ (()=>{
19
+ __webpack_require__.r = (exports1)=>{
20
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
21
+ value: 'Module'
22
+ });
23
+ Object.defineProperty(exports1, '__esModule', {
24
+ value: true
25
+ });
26
+ };
27
+ })();
28
+ var __webpack_exports__ = {};
29
+ __webpack_require__.r(__webpack_exports__);
30
+ __webpack_require__.d(__webpack_exports__, {
31
+ RouteActionResponseError: ()=>RouteActionResponseError,
32
+ submitRouteAction: ()=>submitRouteAction
33
+ });
34
+ const external_formData_js_namespaceObject = require("./formData.js");
35
+ class RouteActionResponseError extends Error {
36
+ constructor(response, data){
37
+ super(`Route action failed with status ${response.status}`);
38
+ this.name = 'RouteActionResponseError';
39
+ this.response = response;
40
+ this.data = data;
41
+ }
42
+ }
43
+ function resolveRouteHandlers(router, actionTo) {
44
+ const builtLocation = router.buildLocation({
45
+ to: actionTo
46
+ });
47
+ const href = router.getParsedLocationHref(builtLocation);
48
+ const matchedRoutes = router.getMatchedRoutes(builtLocation.pathname);
49
+ const routeStaticData = matchedRoutes.foundRoute?.options?.staticData;
50
+ const action = routeStaticData?.modernRouteAction;
51
+ const loader = routeStaticData?.modernRouteLoader;
52
+ return {
53
+ action,
54
+ loader,
55
+ href,
56
+ params: matchedRoutes.routeParams || {}
57
+ };
58
+ }
59
+ function isRedirectResponse(value) {
60
+ if (!(value instanceof Response)) return false;
61
+ return [
62
+ 301,
63
+ 302,
64
+ 303,
65
+ 307,
66
+ 308
67
+ ].includes(value.status);
68
+ }
69
+ async function parseResponseData(response) {
70
+ if (204 === response.status) return null;
71
+ const contentType = response.headers.get('Content-Type') || '';
72
+ if (contentType.includes('application/json')) return response.json();
73
+ return response.text();
74
+ }
75
+ async function parseResponseResultOrThrow(response) {
76
+ const parsed = await parseResponseData(response);
77
+ if (!response.ok) throw new RouteActionResponseError(response, parsed);
78
+ return parsed;
79
+ }
80
+ async function submitRouteAction({ router, target, options = {}, isFetcher = false, onInvalidateStart }) {
81
+ const method = (options.method || 'post').toLowerCase();
82
+ const encType = options.encType || 'application/x-www-form-urlencoded';
83
+ const actionTo = options.action || '.';
84
+ const formData = (0, external_formData_js_namespaceObject.toFormData)(target);
85
+ const resolved = resolveRouteHandlers(router, actionTo);
86
+ if ('get' === method) {
87
+ const search = (0, external_formData_js_namespaceObject.formDataToUrlSearchParams)(formData).toString();
88
+ const requestUrl = new URL(resolved.href, window.location.origin);
89
+ requestUrl.search = search;
90
+ if (isFetcher && resolved.loader) {
91
+ const result = await resolved.loader({
92
+ request: new Request(requestUrl, {
93
+ method: 'GET'
94
+ }),
95
+ params: resolved.params
96
+ });
97
+ if (result instanceof Response) {
98
+ const redirectTo = result.headers.get('X-Modernjs-Redirect') || result.headers.get('Location');
99
+ if (redirectTo || isRedirectResponse(result)) {
100
+ await router.navigate({
101
+ to: redirectTo || '/'
102
+ });
103
+ return parseResponseData(result);
104
+ }
105
+ return parseResponseResultOrThrow(result);
106
+ }
107
+ return result;
108
+ }
109
+ await router.navigate({
110
+ href: `${requestUrl.pathname}${requestUrl.search}${requestUrl.hash}`
111
+ });
112
+ return;
113
+ }
114
+ if (!resolved.action) throw new Error(`No route action found for "${actionTo}"`);
115
+ const headers = new Headers();
116
+ let body = null;
117
+ if (encType.includes('application/json')) {
118
+ headers.set('Content-Type', 'application/json');
119
+ body = JSON.stringify(Object.fromEntries((0, external_formData_js_namespaceObject.formDataToUrlSearchParams)(formData).entries()));
120
+ } else if (encType.includes('text/plain')) {
121
+ headers.set('Content-Type', 'text/plain;charset=UTF-8');
122
+ body = (0, external_formData_js_namespaceObject.formDataToTextPlain)(formData);
123
+ } else if (encType.includes('application/x-www-form-urlencoded')) {
124
+ headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
125
+ body = (0, external_formData_js_namespaceObject.formDataToUrlSearchParams)(formData);
126
+ } else body = formData;
127
+ const request = new Request(new URL(resolved.href, window.location.origin), {
128
+ method: method.toUpperCase(),
129
+ headers,
130
+ body
131
+ });
132
+ const result = await resolved.action({
133
+ request,
134
+ params: resolved.params
135
+ });
136
+ if (result instanceof Response) {
137
+ const redirectTo = result.headers.get('X-Modernjs-Redirect') || result.headers.get('Location');
138
+ if (redirectTo || isRedirectResponse(result)) {
139
+ await router.navigate({
140
+ to: redirectTo || '/'
141
+ });
142
+ return parseResponseData(result);
143
+ }
144
+ const parsed = isFetcher ? await parseResponseResultOrThrow(result) : await parseResponseData(result);
145
+ onInvalidateStart?.();
146
+ await router.invalidate();
147
+ return parsed;
148
+ }
149
+ onInvalidateStart?.();
150
+ await router.invalidate();
151
+ return result;
152
+ }
153
+ exports.RouteActionResponseError = __webpack_exports__.RouteActionResponseError;
154
+ exports.submitRouteAction = __webpack_exports__.submitRouteAction;
155
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
156
+ "RouteActionResponseError",
157
+ "submitRouteAction"
158
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
159
+ Object.defineProperty(exports, '__esModule', {
160
+ value: true
161
+ });
@@ -37,103 +37,66 @@ var __webpack_require__ = {};
37
37
  var __webpack_exports__ = {};
38
38
  __webpack_require__.r(__webpack_exports__);
39
39
  __webpack_require__.d(__webpack_exports__, {
40
- createRouteObjectsFromConfig: ()=>createRouteObjectsFromConfig,
41
- getRouteObjects: ()=>getRouteObjects,
42
- standardSlash: ()=>standardSlash,
43
- urlJoin: ()=>urlJoin
40
+ createTanstackRouteObjectsFromConfig: ()=>createTanstackRouteObjectsFromConfig
44
41
  });
45
42
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
46
43
  const external_react_namespaceObject = require("react");
47
44
  var external_react_default = /*#__PURE__*/ __webpack_require__.n(external_react_namespaceObject);
48
- function getRouteObjects(routes, { globalApp, ssrMode, props }) {
49
- const createLayoutElement = (Component)=>{
50
- const GlobalLayout = globalApp;
51
- if (!GlobalLayout) return Component;
52
- const LayoutWrapper = (props)=>{
53
- const LayoutComponent = GlobalLayout;
54
- return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(LayoutComponent, {
55
- Component: Component,
56
- ...props
57
- });
58
- };
59
- return LayoutWrapper;
45
+ function withGlobalLayout(Component, globalApp) {
46
+ if (!globalApp) return Component;
47
+ const GlobalLayout = globalApp;
48
+ return function(props) {
49
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(GlobalLayout, {
50
+ Component: Component,
51
+ ...props
52
+ });
60
53
  };
61
- const routeObjects = [];
62
- for (const route of routes)if ('nested' === route.type) {
63
- const nestedRouteObject = {
64
- path: route.path,
65
- id: route.id,
66
- loader: route.loader,
67
- action: route.action,
68
- shouldRevalidate: route.shouldRevalidate,
69
- handle: {
70
- ...route.handle,
71
- ...'object' == typeof route.config ? route.config?.handle : {}
72
- },
73
- index: route.index,
74
- hasLoader: Boolean(route.loader),
75
- hasClientLoader: Boolean(route.clientData),
76
- hasAction: Boolean(route.action),
77
- ...route.isClientComponent ? {
78
- isClientComponent: true
79
- } : {},
80
- ...route.inValidSSRRoute ? {
81
- inValidSSRRoute: true
82
- } : {},
83
- lazyImport: route.lazyImport,
84
- Component: route.component ? route.component : void 0,
85
- errorElement: route.error ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(route.error, {}) : void 0,
86
- children: route.children ? route.children.map((child)=>getRouteObjects([
87
- child
88
- ], {
89
- globalApp,
90
- ssrMode,
91
- props
92
- })[0]) : void 0
93
- };
94
- routeObjects.push(nestedRouteObject);
95
- } else if ('function' == typeof route.component || 'object' == typeof route.component) {
96
- const LayoutComponent = createLayoutElement(route.component);
97
- const routeObject = {
98
- path: route.path,
99
- element: /*#__PURE__*/ external_react_default().createElement(LayoutComponent)
100
- };
101
- routeObjects.push(routeObject);
102
- }
103
- return routeObjects;
104
54
  }
105
- function createRouteObjectsFromConfig({ routesConfig, props, ssrMode }) {
55
+ function getRouteHandle(route) {
56
+ return {
57
+ ...route.handle,
58
+ ...'object' == typeof route.config ? route.config?.handle : {}
59
+ };
60
+ }
61
+ function toTanstackRouteObject(route, globalApp) {
62
+ if ('nested' === route.type) return {
63
+ path: route.path,
64
+ id: route.id,
65
+ loader: route.loader,
66
+ action: route.action,
67
+ shouldRevalidate: route.shouldRevalidate,
68
+ handle: getRouteHandle(route),
69
+ index: route.index,
70
+ hasLoader: Boolean(route.loader),
71
+ hasClientLoader: Boolean(route.clientData),
72
+ hasAction: Boolean(route.action),
73
+ ...route.isClientComponent ? {
74
+ isClientComponent: true
75
+ } : {},
76
+ ...route.inValidSSRRoute ? {
77
+ inValidSSRRoute: true
78
+ } : {},
79
+ lazyImport: route.lazyImport,
80
+ Component: route.component ? route.component : void 0,
81
+ errorElement: route.error ? /*#__PURE__*/ external_react_default().createElement(route.error) : void 0,
82
+ children: route.children ? route.children.map((child)=>toTanstackRouteObject(child, globalApp)).filter((child)=>null !== child) : void 0
83
+ };
84
+ if ('function' != typeof route.component && 'object' != typeof route.component) return null;
85
+ const LayoutComponent = withGlobalLayout(route.component, globalApp);
86
+ return {
87
+ path: route.path,
88
+ element: /*#__PURE__*/ external_react_default().createElement(LayoutComponent)
89
+ };
90
+ }
91
+ function createTanstackRouteObjectsFromConfig({ routesConfig }) {
106
92
  if (!routesConfig) return null;
107
93
  const { routes, globalApp } = routesConfig;
108
94
  if (!routes) return null;
109
- return getRouteObjects(routes, {
110
- globalApp,
111
- ssrMode,
112
- props
113
- });
114
- }
115
- const urlJoin = (...parts)=>{
116
- const separator = '/';
117
- const replace = new RegExp(`${separator}{1,}`, 'g');
118
- return standardSlash(parts.join(separator).replace(replace, separator));
119
- };
120
- function standardSlash(str) {
121
- let addr = str;
122
- if (!addr || 'string' != typeof addr) return addr;
123
- if (addr.startsWith('.')) addr = addr.slice(1);
124
- if (!addr.startsWith('/')) addr = `/${addr}`;
125
- if (addr.endsWith('/') && '/' !== addr) addr = addr.slice(0, addr.length - 1);
126
- return addr;
95
+ return routes.map((route)=>toTanstackRouteObject(route, globalApp)).filter((route)=>null !== route);
127
96
  }
128
- exports.createRouteObjectsFromConfig = __webpack_exports__.createRouteObjectsFromConfig;
129
- exports.getRouteObjects = __webpack_exports__.getRouteObjects;
130
- exports.standardSlash = __webpack_exports__.standardSlash;
131
- exports.urlJoin = __webpack_exports__.urlJoin;
97
+ exports.createTanstackRouteObjectsFromConfig = __webpack_exports__.createTanstackRouteObjectsFromConfig;
132
98
  for(var __rspack_i in __webpack_exports__)if (-1 === [
133
- "createRouteObjectsFromConfig",
134
- "getRouteObjects",
135
- "standardSlash",
136
- "urlJoin"
99
+ "createTanstackRouteObjectsFromConfig"
137
100
  ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
138
101
  Object.defineProperty(exports, '__esModule', {
139
102
  value: true