xanix 1.0.17 → 1.0.19

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 (356) hide show
  1. package/dist/AppRoot.d.ts +6 -0
  2. package/dist/AppRoot.js +15 -0
  3. package/dist/bin/bundler/Cache.d.ts +1 -0
  4. package/dist/bin/bundler/Cache.js +210 -0
  5. package/dist/bin/bundler/External.d.ts +3 -0
  6. package/dist/bin/bundler/External.js +6 -0
  7. package/dist/bin/bundler/buildClient.js +2 -2
  8. package/dist/bin/bundler/buildServer.js +2 -2
  9. package/dist/bin/bundler/cache/buildCache.d.ts +3 -0
  10. package/dist/bin/bundler/cache/buildCache.js +76 -0
  11. package/dist/bin/bundler/cache/index.d.ts +3 -0
  12. package/dist/bin/bundler/cache/index.js +216 -0
  13. package/dist/bin/bundler/cache/manifest.d.ts +3 -0
  14. package/dist/bin/bundler/cache/manifest.js +27 -0
  15. package/dist/bin/bundler/cache/plugin/Transformer.d.ts +3 -0
  16. package/dist/bin/bundler/cache/plugin/Transformer.js +42 -0
  17. package/dist/bin/bundler/cache/types.d.ts +8 -0
  18. package/dist/bin/bundler/cache/types.js +1 -0
  19. package/dist/bin/bundler/cache/utils.d.ts +5 -0
  20. package/dist/bin/bundler/cache/utils.js +56 -0
  21. package/dist/bin/bundler/client/build.d.ts +2 -0
  22. package/dist/bin/bundler/client/build.js +61 -0
  23. package/dist/bin/bundler/client/plugins/Transformer/TransformCache.d.ts +15 -0
  24. package/dist/bin/bundler/client/plugins/Transformer/TransformCache.js +39 -0
  25. package/dist/bin/bundler/client/plugins/Transformer/TransformCacheFunction.d.ts +3 -0
  26. package/dist/bin/bundler/client/plugins/Transformer/TransformCacheFunction.js +32 -0
  27. package/dist/bin/bundler/client/plugins/Transformer/TransformCreateSession.d.ts +3 -0
  28. package/dist/bin/bundler/client/plugins/Transformer/TransformCreateSession.js +29 -0
  29. package/dist/bin/bundler/client/plugins/Transformer/TransformExpress.d.ts +9 -0
  30. package/dist/bin/bundler/client/plugins/Transformer/TransformExpress.js +26 -0
  31. package/dist/bin/bundler/client/plugins/Transformer/TransformPage.d.ts +29 -0
  32. package/dist/bin/bundler/client/plugins/Transformer/TransformPage.js +77 -0
  33. package/dist/bin/bundler/client/plugins/Transformer/TransformReactContext.d.ts +17 -0
  34. package/dist/bin/bundler/client/plugins/Transformer/TransformReactContext.js +101 -0
  35. package/dist/bin/bundler/client/plugins/Transformer/TransformServerAction.d.ts +15 -0
  36. package/dist/bin/bundler/client/plugins/Transformer/TransformServerAction.js +42 -0
  37. package/dist/bin/bundler/client/plugins/Transformer/TransformServerFunction.d.ts +3 -0
  38. package/dist/bin/bundler/client/plugins/Transformer/TransformServerFunction.js +32 -0
  39. package/dist/bin/bundler/client/plugins/Transformer/TransformUseServer.d.ts +3 -0
  40. package/dist/bin/bundler/client/plugins/Transformer/TransformUseServer.js +31 -0
  41. package/dist/bin/bundler/client/plugins/Transformer/transformModuleCache.d.ts +15 -0
  42. package/dist/bin/bundler/client/plugins/Transformer/transformModuleCache.js +120 -0
  43. package/dist/bin/bundler/client/plugins/Transformer copy.d.ts +3 -0
  44. package/dist/bin/bundler/client/plugins/Transformer copy.js +70 -0
  45. package/dist/bin/bundler/client/plugins/Transformer.d.ts +3 -0
  46. package/dist/bin/bundler/client/plugins/Transformer.js +26 -0
  47. package/dist/bin/bundler/client/plugins/VirtualDev.d.ts +2 -0
  48. package/dist/bin/bundler/client/plugins/VirtualDev.js +34 -0
  49. package/dist/bin/bundler/client/plugins/XanixPages.d.ts +2 -0
  50. package/dist/bin/bundler/client/plugins/XanixPages.js +37 -0
  51. package/dist/bin/bundler/client/plugins/XanixReactRefresh.d.ts +2 -0
  52. package/dist/bin/bundler/client/plugins/XanixReactRefresh.js +22 -0
  53. package/dist/bin/bundler/client/plugins/replacer/cacheFunctionReplacer.d.ts +3 -0
  54. package/dist/bin/bundler/client/plugins/replacer/cacheFunctionReplacer.js +28 -0
  55. package/dist/bin/bundler/client/plugins/replacer/serverFunctionReplacer.d.ts +3 -0
  56. package/dist/bin/bundler/client/plugins/replacer/serverFunctionReplacer.js +28 -0
  57. package/dist/bin/bundler/client/plugins/replacer/useServerReplacer.d.ts +3 -0
  58. package/dist/bin/bundler/client/plugins/replacer/useServerReplacer.js +38 -0
  59. package/dist/bin/bundler/client/watch.config.d.ts +3 -0
  60. package/dist/bin/bundler/client/watch.config.js +39 -0
  61. package/dist/bin/bundler/client/watch.d.ts +13 -0
  62. package/dist/bin/bundler/client/watch.js +71 -0
  63. package/dist/bin/bundler/config/loadEnv.d.ts +20 -0
  64. package/dist/bin/bundler/config/loadEnv.js +48 -0
  65. package/dist/bin/bundler/config/output.d.ts +1 -1
  66. package/dist/bin/bundler/config/output.js +13 -12
  67. package/dist/bin/bundler/externalResolver-dep.d.ts +3 -0
  68. package/dist/bin/bundler/externalResolver-dep.js +203 -0
  69. package/dist/bin/bundler/externalResolver.d.ts +3 -0
  70. package/dist/bin/bundler/externalResolver.js +203 -0
  71. package/dist/bin/bundler/plugins/TransformServer/TransformExpress.d.ts +9 -0
  72. package/dist/bin/bundler/plugins/TransformServer/TransformExpress.js +26 -0
  73. package/dist/bin/bundler/plugins/TransformServer/TransformPage.d.ts +25 -0
  74. package/dist/bin/bundler/plugins/TransformServer/TransformPage.js +79 -0
  75. package/dist/bin/bundler/plugins/TransformServer/index.d.ts +3 -0
  76. package/dist/bin/bundler/plugins/TransformServer/index.js +103 -0
  77. package/dist/bin/bundler/plugins/XanixAssets.d.ts +5 -0
  78. package/dist/bin/bundler/plugins/XanixAssets.js +51 -0
  79. package/dist/bin/bundler/plugins/XanixCacheDeps-dep.d.ts +2 -0
  80. package/dist/bin/bundler/plugins/XanixCacheDeps-dep.js +150 -0
  81. package/dist/bin/bundler/plugins/XanixCacheDeps.d.ts +2 -0
  82. package/dist/bin/bundler/plugins/XanixCacheDeps.js +150 -0
  83. package/dist/bin/bundler/plugins/XanixDocument/index.d.ts +1 -1
  84. package/dist/bin/bundler/plugins/XanixDocument/index.js +20 -10
  85. package/dist/bin/bundler/plugins/XanixEntryFinder/finder.js +0 -6
  86. package/dist/bin/bundler/plugins/XanixEntryFinder-dep/finder.d.ts +11 -0
  87. package/dist/bin/bundler/plugins/XanixEntryFinder-dep/finder.js +149 -0
  88. package/dist/bin/bundler/plugins/XanixEntryFinder-dep/index.d.ts +6 -0
  89. package/dist/bin/bundler/plugins/XanixEntryFinder-dep/index.js +37 -0
  90. package/dist/bin/bundler/plugins/XanixPageTransform/index.d.ts +1 -1
  91. package/dist/bin/bundler/plugins/XanixPageTransform/index.js +48 -33
  92. package/dist/bin/bundler/plugins/XanixPageTransform/transformer copy.d.ts +18 -0
  93. package/dist/bin/bundler/plugins/XanixPageTransform/transformer copy.js +414 -0
  94. package/dist/bin/bundler/plugins/XanixPageTransform/transformer.d.ts +9 -4
  95. package/dist/bin/bundler/plugins/XanixPageTransform/transformer.js +477 -302
  96. package/dist/bin/bundler/plugins/XanixReactRefresh copy.d.ts +2 -0
  97. package/dist/bin/bundler/plugins/XanixReactRefresh copy.js +121 -0
  98. package/dist/bin/bundler/plugins/XanixReactRefresh.d.ts +2 -2
  99. package/dist/bin/bundler/plugins/XanixReactRefresh.js +142 -93
  100. package/dist/bin/bundler/plugins/XanixResolveCacheDeps/BuildClientCache.d.ts +11 -0
  101. package/dist/bin/bundler/plugins/XanixResolveCacheDeps/BuildClientCache.js +129 -0
  102. package/dist/bin/bundler/plugins/XanixResolveCacheDeps/index copy.d.ts +15 -0
  103. package/dist/bin/bundler/plugins/XanixResolveCacheDeps/index copy.js +228 -0
  104. package/dist/bin/bundler/plugins/XanixResolveCacheDeps/index.d.ts +7 -5
  105. package/dist/bin/bundler/plugins/XanixResolveCacheDeps/index.js +156 -21
  106. package/dist/bin/bundler/plugins/XanixResolveCacheDeps-dep/BuildClientCache.d.ts +11 -0
  107. package/dist/bin/bundler/{cacheNpmModules.js → plugins/XanixResolveCacheDeps-dep/BuildClientCache.js} +13 -9
  108. package/dist/bin/bundler/plugins/XanixResolveCacheDeps-dep/index.d.ts +5 -0
  109. package/dist/bin/bundler/plugins/XanixResolveCacheDeps-dep/index.js +26 -0
  110. package/dist/bin/bundler/plugins/XanixResolver.d.ts +11 -0
  111. package/dist/bin/bundler/plugins/XanixResolver.js +55 -0
  112. package/dist/bin/bundler/plugins/XanixServerTransform.d.ts +1 -1
  113. package/dist/bin/bundler/plugins/XanixServerTransform.js +193 -116
  114. package/dist/bin/bundler/plugins/XanixTransform.d.ts +3 -0
  115. package/dist/bin/bundler/plugins/XanixTransform.js +23 -0
  116. package/dist/bin/bundler/plugins/XanixTsconfigAlias.d.ts +1 -1
  117. package/dist/bin/bundler/plugins/XanixUseServer.d.ts +1 -1
  118. package/dist/bin/bundler/plugins/XanixUseServer.js +308 -245
  119. package/dist/bin/bundler/plugins/plugins.d.ts +1 -5
  120. package/dist/bin/bundler/plugins/plugins.js +9 -154
  121. package/dist/bin/bundler/requireCache.d.ts +3 -0
  122. package/dist/bin/bundler/requireCache.js +85 -0
  123. package/dist/bin/bundler/server/build.d.ts +6 -0
  124. package/dist/bin/bundler/server/build.js +92 -0
  125. package/dist/bin/bundler/server/plugins/ServerAction.d.ts +3 -0
  126. package/dist/bin/bundler/server/plugins/ServerAction.js +9 -0
  127. package/dist/bin/bundler/server/plugins/Transformer/ServerAction.d.ts +11 -0
  128. package/dist/bin/bundler/server/plugins/Transformer/ServerAction.js +28 -0
  129. package/dist/bin/bundler/server/plugins/Transformer/TransformCache.d.ts +15 -0
  130. package/dist/bin/bundler/server/plugins/Transformer/TransformCache.js +39 -0
  131. package/dist/bin/bundler/server/plugins/Transformer/TransformCacheFunction.d.ts +3 -0
  132. package/dist/bin/bundler/server/plugins/Transformer/TransformCacheFunction.js +32 -0
  133. package/dist/bin/bundler/server/plugins/Transformer/TransformCreateSession.d.ts +3 -0
  134. package/dist/bin/bundler/server/plugins/Transformer/TransformCreateSession.js +30 -0
  135. package/dist/bin/bundler/server/plugins/Transformer/TransformExpress copy.d.ts +11 -0
  136. package/dist/bin/bundler/server/plugins/Transformer/TransformExpress copy.js +22 -0
  137. package/dist/bin/bundler/server/plugins/Transformer/TransformExpress.d.ts +10 -0
  138. package/dist/bin/bundler/server/plugins/Transformer/TransformExpress.js +19 -0
  139. package/dist/bin/bundler/server/plugins/Transformer/TransformExpressFunction.d.ts +3 -0
  140. package/dist/bin/bundler/server/plugins/Transformer/TransformExpressFunction.js +24 -0
  141. package/dist/bin/bundler/server/plugins/Transformer/TransformPage.d.ts +4 -0
  142. package/dist/bin/bundler/server/plugins/Transformer/TransformPage.js +31 -0
  143. package/dist/bin/bundler/server/plugins/Transformer/TransformReactContext.d.ts +17 -0
  144. package/dist/bin/bundler/server/plugins/Transformer/TransformReactContext.js +101 -0
  145. package/dist/bin/bundler/server/plugins/Transformer/TransformServer.d.ts +10 -0
  146. package/dist/bin/bundler/server/plugins/Transformer/TransformServer.js +19 -0
  147. package/dist/bin/bundler/server/plugins/Transformer/TransformServerAction copy.d.ts +14 -0
  148. package/dist/bin/bundler/server/plugins/Transformer/TransformServerAction copy.js +38 -0
  149. package/dist/bin/bundler/server/plugins/Transformer/TransformServerAction.d.ts +15 -0
  150. package/dist/bin/bundler/server/plugins/Transformer/TransformServerAction.js +44 -0
  151. package/dist/bin/bundler/server/plugins/Transformer/TransformServerFunction.d.ts +3 -0
  152. package/dist/bin/bundler/server/plugins/Transformer/TransformServerFunction.js +32 -0
  153. package/dist/bin/bundler/server/plugins/Transformer/TransformUseServer.d.ts +3 -0
  154. package/dist/bin/bundler/server/plugins/Transformer/TransformUseServer.js +31 -0
  155. package/dist/bin/bundler/server/plugins/Transformer copy.d.ts +6 -0
  156. package/dist/bin/bundler/server/plugins/Transformer copy.js +99 -0
  157. package/dist/bin/bundler/server/plugins/Transformer.d.ts +7 -0
  158. package/dist/bin/bundler/server/plugins/Transformer.js +58 -0
  159. package/dist/bin/bundler/server/plugins/replacer/cacheFunctionReplacer.d.ts +3 -0
  160. package/dist/bin/bundler/server/plugins/replacer/cacheFunctionReplacer.js +28 -0
  161. package/dist/bin/bundler/server/plugins/replacer/expressFunctionReplace.d.ts +3 -0
  162. package/dist/bin/bundler/server/plugins/replacer/expressFunctionReplace.js +24 -0
  163. package/dist/bin/bundler/server/plugins/replacer/pageReplacer.d.ts +4 -0
  164. package/dist/bin/bundler/server/plugins/replacer/pageReplacer.js +31 -0
  165. package/dist/bin/bundler/server/plugins/replacer/serverFunctionReplacer.d.ts +3 -0
  166. package/dist/bin/bundler/server/plugins/replacer/serverFunctionReplacer.js +28 -0
  167. package/dist/bin/bundler/server/plugins/replacer/useServerReplacer.d.ts +3 -0
  168. package/dist/bin/bundler/server/plugins/replacer/useServerReplacer.js +38 -0
  169. package/dist/bin/bundler/server/types.d.ts +5 -0
  170. package/dist/bin/bundler/server/types.js +1 -0
  171. package/dist/bin/bundler/server/watch.config.d.ts +3 -0
  172. package/dist/bin/bundler/server/watch.config.js +71 -0
  173. package/dist/bin/bundler/server/watch.d.ts +9 -0
  174. package/dist/bin/bundler/server/watch.js +59 -0
  175. package/dist/bin/bundler/watchClient.d.ts +5 -3
  176. package/dist/bin/bundler/watchClient.js +31 -16
  177. package/dist/bin/bundler/watchServer.d.ts +2 -2
  178. package/dist/bin/bundler/watchServer.js +67 -13
  179. package/dist/bin/cli/build.js +38 -10
  180. package/dist/bin/cli/create.d.ts +2 -0
  181. package/dist/bin/cli/create.js +2 -0
  182. package/dist/bin/cli/dev/dev.d.ts +2 -0
  183. package/dist/bin/cli/dev/dev.js +178 -0
  184. package/dist/bin/cli/dev/index.d.ts +2 -0
  185. package/dist/bin/cli/dev/index.js +114 -0
  186. package/dist/bin/cli/dev/server.d.ts +1 -0
  187. package/dist/bin/cli/dev/server.js +95 -0
  188. package/dist/bin/cli/dev/ws.d.ts +2 -0
  189. package/dist/bin/cli/dev/ws.js +29 -0
  190. package/dist/bin/cli/dev.js +120 -72
  191. package/dist/bin/cli/logs.d.ts +2 -0
  192. package/dist/bin/cli/logs.js +224 -0
  193. package/dist/bin/cli/restart.d.ts +2 -0
  194. package/dist/bin/cli/restart.js +28 -0
  195. package/dist/bin/cli/resurrect.d.ts +2 -0
  196. package/dist/bin/cli/resurrect.js +79 -0
  197. package/dist/bin/cli/save.d.ts +2 -0
  198. package/dist/bin/cli/save.js +87 -0
  199. package/dist/bin/cli/start/external.d.ts +2 -0
  200. package/dist/bin/cli/start/external.js +22 -0
  201. package/dist/bin/cli/start/index.d.ts +2 -0
  202. package/dist/bin/cli/start/index.js +27 -0
  203. package/dist/bin/cli/start/start.d.ts +2 -0
  204. package/dist/bin/cli/start/start.js +27 -0
  205. package/dist/bin/cli/start/utils.d.ts +0 -0
  206. package/dist/bin/cli/start/utils.js +1 -0
  207. package/dist/bin/cli/start.js +18 -10
  208. package/dist/bin/cli/startup.d.ts +2 -0
  209. package/dist/bin/cli/startup.js +170 -0
  210. package/dist/bin/cli/status.d.ts +2 -0
  211. package/dist/bin/cli/status.js +23 -0
  212. package/dist/bin/cli/stop.d.ts +4 -0
  213. package/dist/bin/cli/stop.js +83 -0
  214. package/dist/bin/include/callbackReplacer.d.ts +2 -0
  215. package/dist/bin/include/callbackReplacer.js +91 -0
  216. package/dist/bin/include/importFinder.d.ts +9 -0
  217. package/dist/bin/include/importFinder.js +69 -0
  218. package/dist/bin/include/loadEnv.d.ts +19 -0
  219. package/dist/bin/include/loadEnv.js +47 -0
  220. package/dist/bin/include/logger.d.ts +3 -6
  221. package/dist/bin/include/logger.js +4 -7
  222. package/dist/bin/include/manifest.d.ts +2 -3
  223. package/dist/bin/include/manifest.js +7 -23
  224. package/dist/bin/include/path.d.ts +1 -0
  225. package/dist/bin/include/path.js +4 -0
  226. package/dist/bin/include/process.d.ts +12 -0
  227. package/dist/bin/include/process.js +39 -0
  228. package/dist/bin/include/sendFinder.d.ts +6 -0
  229. package/dist/bin/include/sendFinder.js +100 -0
  230. package/dist/bin/include/spinner.d.ts +9 -0
  231. package/dist/bin/include/spinner.js +27 -0
  232. package/dist/bin/include/utils.d.ts +3 -4
  233. package/dist/bin/include/utils.js +10 -12
  234. package/dist/bin/index.js +1 -1
  235. package/dist/bin/modifier/callbackReplacer.d.ts +2 -0
  236. package/dist/bin/modifier/callbackReplacer.js +97 -0
  237. package/dist/bin/modifier/importFinder.d.ts +9 -0
  238. package/dist/bin/modifier/importFinder.js +69 -0
  239. package/dist/bin/modifier/pageFinder.d.ts +9 -0
  240. package/dist/bin/modifier/pageFinder.js +135 -0
  241. package/dist/bin/modifier/sriptCommnet.d.ts +2 -0
  242. package/dist/bin/modifier/sriptCommnet.js +8 -0
  243. package/dist/bin/plugins/XanixAssets.d.ts +6 -0
  244. package/dist/bin/plugins/XanixAssets.js +43 -0
  245. package/dist/bin/plugins/XanixCss.d.ts +5 -0
  246. package/dist/bin/plugins/XanixCss.js +57 -0
  247. package/dist/bin/plugins/XanixDocument/XanixDocument.d.ts +2 -0
  248. package/dist/bin/plugins/XanixDocument/XanixDocument.js +50 -0
  249. package/dist/bin/plugins/XanixDocument/index.d.ts +2 -0
  250. package/dist/bin/plugins/XanixDocument/index.js +50 -0
  251. package/dist/bin/plugins/XanixDocument.d.ts +2 -0
  252. package/dist/bin/plugins/XanixDocument.js +39 -0
  253. package/dist/bin/plugins/XanixPageTransform-dep/index.d.ts +2 -0
  254. package/dist/bin/plugins/XanixPageTransform-dep/index.js +62 -0
  255. package/dist/bin/plugins/XanixPageTransform-dep/transformer.d.ts +23 -0
  256. package/dist/bin/plugins/XanixPageTransform-dep/transformer.js +589 -0
  257. package/dist/bin/plugins/XanixServerTransform.d.ts +5 -0
  258. package/dist/bin/plugins/XanixServerTransform.js +207 -0
  259. package/dist/bin/plugins/XanixTsconfigAlias.d.ts +19 -0
  260. package/dist/bin/plugins/XanixTsconfigAlias.js +197 -0
  261. package/dist/bin/plugins/XanixUseServer.d.ts +7 -0
  262. package/dist/bin/plugins/XanixUseServer.js +445 -0
  263. package/dist/bin/plugins/plugins.d.ts +8 -0
  264. package/dist/bin/plugins/plugins.js +31 -0
  265. package/dist/bin/types.d.ts +2 -8
  266. package/dist/client-runtime.d.ts +0 -8
  267. package/dist/client-runtime.js +45 -103
  268. package/dist/components/BaseDocument.d.ts +1 -1
  269. package/dist/components/BaseDocument.js +2 -2
  270. package/dist/components/Body.d.ts +3 -4
  271. package/dist/components/Body.js +4 -3
  272. package/dist/components/Document.d.ts +3 -4
  273. package/dist/components/Document.js +3 -4
  274. package/dist/components/DocumentContext.d.ts +5 -3
  275. package/dist/components/Head.d.ts +3 -2
  276. package/dist/components/Head.js +17 -10
  277. package/dist/components/Link.d.ts +2 -2
  278. package/dist/components/Link.js +14 -26
  279. package/dist/dev.d.ts +1 -0
  280. package/dist/dev.js +25 -0
  281. package/dist/hooks/cache.d.ts +19 -0
  282. package/dist/hooks/cache.js +53 -0
  283. package/dist/hooks/encript.d.ts +2 -0
  284. package/dist/hooks/encript.js +30 -0
  285. package/dist/hooks/server.d.ts +11 -0
  286. package/dist/hooks/server.js +129 -0
  287. package/dist/hooks/session.d.ts +18 -0
  288. package/dist/hooks/session.js +145 -0
  289. package/dist/hooks/useCookies.d.ts +1 -0
  290. package/dist/hooks/useCookies.js +9 -40
  291. package/dist/hooks/usePage.d.ts +2 -2
  292. package/dist/hooks/usePage.js +2 -5
  293. package/dist/hooks/useSearchParams.js +30 -88
  294. package/dist/hooks/useServer.d.ts +20 -0
  295. package/dist/hooks/useServer.js +91 -0
  296. package/dist/hooks/useStore.d.ts +13 -0
  297. package/dist/hooks/useStore.js +45 -0
  298. package/dist/index.d.ts +19 -6
  299. package/dist/index.js +11 -7
  300. package/dist/navigate.d.ts +4 -6
  301. package/dist/navigate.js +109 -17
  302. package/dist/outdirs.d.ts +1 -1
  303. package/dist/outdirs.js +2 -2
  304. package/dist/react/createContext.d.ts +3 -0
  305. package/dist/react/createContext.js +11 -0
  306. package/dist/react/index.d.ts +12 -0
  307. package/dist/react/index.js +3 -0
  308. package/dist/server/express/Router.d.ts +2 -0
  309. package/dist/server/express/Router.js +115 -0
  310. package/dist/server/express/Ruter.d.ts +2 -0
  311. package/dist/server/express/Ruter.js +15 -0
  312. package/dist/server/express/index.d.ts +3 -0
  313. package/dist/server/express/index.js +90 -0
  314. package/dist/server/express/page.d.ts +10 -0
  315. package/dist/server/express/page.js +133 -0
  316. package/dist/server/index.d.ts +19 -0
  317. package/dist/server/index.js +44 -0
  318. package/dist/server/runtime/createServer.js +13 -12
  319. package/dist/server/runtime/readManifest.js +1 -1
  320. package/dist/server/runtime/xanixPage.js +9 -15
  321. package/dist/server/types.d.ts +52 -0
  322. package/dist/server/types.js +1 -0
  323. package/dist/types/assets.d.ts +60 -22
  324. package/dist/types/express.d.ts +8 -4
  325. package/dist/types/globals.d.ts +0 -8
  326. package/dist/types/xanix-virtual.d.ts +16 -22
  327. package/package.json +12 -24
  328. package/dist/bin/bundler/cacheNpmModules.d.ts +0 -11
  329. package/dist/bin/bundler/dep-generateClientEntries.d.ts +0 -5
  330. package/dist/bin/bundler/dep-generateClientEntries.js +0 -25
  331. package/dist/bin/bundler/generateClientEntries.d.ts +0 -5
  332. package/dist/bin/bundler/generateClientEntries.js +0 -25
  333. package/dist/bin/bundler/plugins/xanixUseDataId.d.ts +0 -4
  334. package/dist/bin/bundler/plugins/xanixUseDataId.js +0 -93
  335. package/dist/dataLoader.d.ts +0 -11
  336. package/dist/dataLoader.js +0 -52
  337. package/dist/db/index.d.ts +0 -2
  338. package/dist/db/index.js +0 -1
  339. package/dist/db/test.d.ts +0 -2
  340. package/dist/db/test.js +0 -1
  341. package/dist/hooks/useData.d.ts +0 -14
  342. package/dist/hooks/useData.js +0 -67
  343. package/dist/hooks/useServer/context.d.ts +0 -7
  344. package/dist/hooks/useServer/context.js +0 -19
  345. package/dist/hooks/useServer/core.d.ts +0 -20
  346. package/dist/hooks/useServer/core.js +0 -72
  347. package/dist/hooks/useServer/index.d.ts +0 -20
  348. package/dist/hooks/useServer/index.js +0 -76
  349. package/dist/hooks/useServer/registerUseServer.d.ts +0 -3
  350. package/dist/hooks/useServer/registerUseServer.js +0 -5
  351. package/dist/hooks/useServer/registry.d.ts +0 -7
  352. package/dist/hooks/useServer/registry.js +0 -12
  353. package/dist/hooks/useServer/state.d.ts +0 -9
  354. package/dist/hooks/useServer/state.js +0 -33
  355. package/dist/theme.d.ts +0 -3
  356. package/dist/theme.js +0 -10
@@ -0,0 +1,56 @@
1
+ import fs from "fs";
2
+ import path from "path";
3
+ import { builtinModules } from "node:module";
4
+ export function isPackageImport(source) {
5
+ // Relative import
6
+ if (source.startsWith("./") || source.startsWith("../")) {
7
+ return false;
8
+ }
9
+ // Absolute filesystem path
10
+ if (source.startsWith("/") || /^[A-Za-z]:[\\/]/.test(source)) {
11
+ return false;
12
+ }
13
+ // URL / virtual module
14
+ if (source.startsWith("node:") ||
15
+ source.includes(":") ||
16
+ source.startsWith("\0")) {
17
+ return false;
18
+ }
19
+ // Everything else is a bare package specifier
20
+ return true;
21
+ }
22
+ export const makeFilename = (id) => {
23
+ let root = process.cwd().replace(/\\/g, "/").replace(/\/+/g, "/");
24
+ id = id
25
+ .trim()
26
+ .replace(/\\/g, "/")
27
+ .replace(/\/+/g, "-")
28
+ .replace(`${root}/`, "")
29
+ .replace("node_modules/", "")
30
+ .toLowerCase()
31
+ .split("?")[0];
32
+ return id;
33
+ };
34
+ export const writeCacheManifest = async (cached) => {
35
+ const file = path.resolve("node_modules/xanix-cache/manifest.json");
36
+ let manifest = {};
37
+ for (const [key, value] of cached.entries()) {
38
+ manifest[key] = value;
39
+ }
40
+ await fs.promises.writeFile(file, JSON.stringify(manifest, null, 2));
41
+ };
42
+ export const readCacheManifest = async () => {
43
+ const file = path.resolve("node_modules/xanix-cache/manifest.json");
44
+ if (!fs.existsSync(file)) {
45
+ return new Map();
46
+ }
47
+ const content = await fs.promises.readFile(file, "utf-8");
48
+ const parsed = JSON.parse(content);
49
+ const map = new Map(Object.entries(parsed));
50
+ return map;
51
+ };
52
+ const nodeBuiltins = new Set(builtinModules);
53
+ export function isNodeBuiltin(id) {
54
+ const normalized = id.startsWith("node:") ? id.slice(5) : id;
55
+ return nodeBuiltins.has(normalized);
56
+ }
@@ -0,0 +1,2 @@
1
+ declare const buildClient: () => Promise<import("../../types.js").XanixClientEntry[]>;
2
+ export default buildClient;
@@ -0,0 +1,61 @@
1
+ import { rolldown } from "rolldown";
2
+ import { frameworkDir } from "../../include/utils.js";
3
+ import outdirs from "../../../outdirs.js";
4
+ import XanixTransformer from "./plugins/Transformer.js";
5
+ import XanixPages from "./plugins/XanixPages.js";
6
+ import xanixAssets from "../../plugins/XanixAssets.js";
7
+ import xanixDocument from "../../plugins/XanixDocument.js";
8
+ import xanixTsconfigAlias from "../../plugins/XanixTsconfigAlias.js";
9
+ import loadEnv from "../../include/loadEnv.js";
10
+ import { getManifest } from "../../include/manifest.js";
11
+ import path from "node:path";
12
+ const buildClient = async () => {
13
+ const entries = await getManifest();
14
+ const build = await rolldown({
15
+ input: path.join(frameworkDir, "dist/client-runtime.js"),
16
+ treeshake: true,
17
+ tsconfig: true,
18
+ checks: {
19
+ moduleLevelDirective: false,
20
+ },
21
+ resolve: {
22
+ extensions: [".mjs", ".js", ".jsx", ".json", ".ts", ".tsx"],
23
+ conditionNames: ["browser", "import", "module", "default"],
24
+ },
25
+ transform: {
26
+ target: "es2022",
27
+ jsx: {
28
+ runtime: "automatic",
29
+ },
30
+ define: await loadEnv({
31
+ mode: "production",
32
+ isClient: true,
33
+ }),
34
+ },
35
+ onwarn(warning, warn) {
36
+ if (warning.code === "MODULE_LEVEL_DIRECTIVE" &&
37
+ warning.message.includes('"use client"')) {
38
+ return;
39
+ }
40
+ warn(warning);
41
+ },
42
+ plugins: [
43
+ xanixAssets(),
44
+ xanixTsconfigAlias(),
45
+ XanixPages(),
46
+ xanixDocument(),
47
+ XanixTransformer(),
48
+ ],
49
+ });
50
+ await build.write({
51
+ dir: outdirs.client,
52
+ minify: true,
53
+ format: "esm",
54
+ chunkFileNames: "chunks/[hash].js",
55
+ assetFileNames: "assets/[name][extname]",
56
+ entryFileNames: `runtime.js`,
57
+ });
58
+ await build.close();
59
+ return entries;
60
+ };
61
+ export default buildClient;
@@ -0,0 +1,15 @@
1
+ declare class TransformCache {
2
+ replacements: {
3
+ start: number;
4
+ end: number;
5
+ value: string;
6
+ }[];
7
+ code: string;
8
+ cacheImported: boolean;
9
+ importer: string;
10
+ uid: string;
11
+ count: number;
12
+ constructor(code: string, importer: string, uid: string);
13
+ transform(node: any): void;
14
+ }
15
+ export default TransformCache;
@@ -0,0 +1,39 @@
1
+ class TransformCache {
2
+ constructor(code, importer, uid) {
3
+ this.replacements = [];
4
+ this.cacheImported = false;
5
+ this.count = 0;
6
+ this.code = code;
7
+ this.importer = importer;
8
+ this.uid = uid;
9
+ }
10
+ transform(node) {
11
+ // check server imported
12
+ if (node.type === "ImportDeclaration" &&
13
+ node.source.value === "xanix" &&
14
+ node.specifiers.some((s) => s.type === "ImportSpecifier" && s.imported.name === "cache")) {
15
+ this.cacheImported = true;
16
+ }
17
+ if (node.type === "CallExpression" &&
18
+ node.callee.type === "Identifier" &&
19
+ node.callee.name === "cache" &&
20
+ (node.arguments.length === 1 || node.arguments.length === 2)) {
21
+ const id = this.uid + this.count++;
22
+ if (node.arguments.length === 1) {
23
+ this.replacements.push({
24
+ start: node.arguments[0].end,
25
+ end: node.arguments[0].end,
26
+ value: `, undefined, "${id}"`,
27
+ });
28
+ }
29
+ else {
30
+ this.replacements.push({
31
+ start: node.arguments[1].end,
32
+ end: node.arguments[1].end,
33
+ value: `, "${id}"`,
34
+ });
35
+ }
36
+ }
37
+ }
38
+ }
39
+ export default TransformCache;
@@ -0,0 +1,3 @@
1
+ import { ImportInfo } from "../../../../modifier/importFinder.js";
2
+ declare const TransformCacheFunction: (code: string, imports: ImportInfo[], uid: string, source: string) => string;
3
+ export default TransformCacheFunction;
@@ -0,0 +1,32 @@
1
+ import callbackReplacer from "../../../../modifier/callbackReplacer.js";
2
+ import { frameworkDir } from "../../../../include/utils.js";
3
+ const TransformCacheFunction = (code, imports, uid, source) => {
4
+ let count = 0;
5
+ const replacer = (code, cb) => {
6
+ const replacedCode = callbackReplacer(code, cb, (args) => {
7
+ if (args[2])
8
+ return;
9
+ const id = uid + count++;
10
+ const fn = args[0];
11
+ const options = args[1] || "undefined";
12
+ return `${cb}(${fn}, ${options}, "${id}");`;
13
+ });
14
+ code = replacedCode;
15
+ return code;
16
+ };
17
+ if (source.startsWith(frameworkDir)) {
18
+ code = replacer(code, `cache`);
19
+ }
20
+ for (let _import of imports) {
21
+ if (_import.namespace) {
22
+ code = replacer(code, `${_import.namespace}.cache`);
23
+ }
24
+ for (let sp of _import.specifiers) {
25
+ if (sp.imported === "cache") {
26
+ code = replacer(code, sp.local);
27
+ }
28
+ }
29
+ }
30
+ return code;
31
+ };
32
+ export default TransformCacheFunction;
@@ -0,0 +1,3 @@
1
+ import { ImportInfo } from "../../../../modifier/importFinder.js";
2
+ declare const TransformCreateSession: (code: string, imports: ImportInfo[], uid: string, source: string) => string;
3
+ export default TransformCreateSession;
@@ -0,0 +1,29 @@
1
+ import callbackReplacer from "../../../../modifier/callbackReplacer.js";
2
+ import { frameworkDir } from "../../../../include/utils.js";
3
+ const TransformCreateSession = (code, imports, uid, source) => {
4
+ let count = 0;
5
+ const replacer = (code, cb) => {
6
+ const replacedCode = callbackReplacer(code, cb, (args) => {
7
+ const id = uid + count++;
8
+ const _id = args[1] || `"${id}"`;
9
+ return `${cb}(undefined, ${_id});`;
10
+ });
11
+ code = replacedCode;
12
+ return code;
13
+ };
14
+ if (source.startsWith(frameworkDir)) {
15
+ code = replacer(code, `createSession`);
16
+ }
17
+ for (let _import of imports) {
18
+ if (_import.namespace) {
19
+ code = replacer(code, `${_import.namespace}.createSession`);
20
+ }
21
+ for (let sp of _import.specifiers) {
22
+ if (sp.imported === "createSession") {
23
+ code = replacer(code, sp.local);
24
+ }
25
+ }
26
+ }
27
+ return code;
28
+ };
29
+ export default TransformCreateSession;
@@ -0,0 +1,9 @@
1
+ declare class TransformExpress {
2
+ replacements: {
3
+ start: number;
4
+ end: number;
5
+ value: string;
6
+ }[];
7
+ transform(node: any): void;
8
+ }
9
+ export default TransformExpress;
@@ -0,0 +1,26 @@
1
+ class TransformExpress {
2
+ constructor() {
3
+ this.replacements = [];
4
+ }
5
+ transform(node) {
6
+ if (node.type === "ImportDeclaration" && node.source.value === "express") {
7
+ this.replacements.push({
8
+ start: node.source.start + 1,
9
+ end: node.source.end - 1,
10
+ value: "xanix/express",
11
+ });
12
+ }
13
+ // check require express
14
+ if (node.type === "CallExpression" &&
15
+ node.callee.name === "require" &&
16
+ node.arguments.length === 1 &&
17
+ node.arguments[0].value === "express") {
18
+ this.replacements.push({
19
+ start: node.arguments[0].start + 1,
20
+ end: node.arguments[0].end - 1,
21
+ value: "xanix/express",
22
+ });
23
+ }
24
+ }
25
+ }
26
+ export default TransformExpress;
@@ -0,0 +1,29 @@
1
+ import { TransformPluginContext } from "rolldown";
2
+ type Name = string;
3
+ export type Entry = {
4
+ name: string;
5
+ id: string;
6
+ source: string;
7
+ resolved: string;
8
+ };
9
+ declare class TransformPage {
10
+ _replacements: {
11
+ start: number;
12
+ end: number;
13
+ value: string;
14
+ }[];
15
+ imports: Map<Name, string>;
16
+ entries: Map<string, Entry>;
17
+ private identifiers;
18
+ private context;
19
+ private importer;
20
+ constructor(context: TransformPluginContext, importer: string, entries: Map<string, Entry>);
21
+ replacements(): Promise<{
22
+ start: number;
23
+ end: number;
24
+ value: string;
25
+ }[]>;
26
+ uid(source: string): string;
27
+ transform(node: any): void;
28
+ }
29
+ export default TransformPage;
@@ -0,0 +1,77 @@
1
+ import crypto from "node:crypto";
2
+ class TransformPage {
3
+ constructor(context, importer, entries) {
4
+ this._replacements = [];
5
+ this.imports = new Map();
6
+ this.entries = new Map();
7
+ this.identifiers = [];
8
+ this.context = context;
9
+ this.importer = importer;
10
+ this.entries = entries;
11
+ }
12
+ async replacements() {
13
+ for (const identifier of this.identifiers) {
14
+ const source = this.imports.get(identifier.name);
15
+ if (source) {
16
+ const resolved = await this.context.resolve(source, this.importer, {
17
+ skipSelf: true,
18
+ });
19
+ if (resolved) {
20
+ const id = this.uid(resolved.id);
21
+ this.entries.set(id, {
22
+ name: identifier.name,
23
+ id,
24
+ source,
25
+ resolved: resolved?.id,
26
+ });
27
+ this._replacements.push({
28
+ start: identifier.placement,
29
+ end: identifier.placement,
30
+ value: ` __xpage={{ id: "${id}", name: "${identifier.name}" }} `,
31
+ });
32
+ }
33
+ }
34
+ }
35
+ return this._replacements;
36
+ }
37
+ uid(source) {
38
+ return crypto
39
+ .createHash("sha256")
40
+ .update(source)
41
+ .digest("hex")
42
+ .slice(0, 12);
43
+ }
44
+ transform(node) {
45
+ if (node.type === "CallExpression" &&
46
+ node.callee.property?.name === "send" &&
47
+ node.arguments.length === 1 &&
48
+ node.arguments[0].type === "JSXElement") {
49
+ const element = node.arguments[0].openingElement;
50
+ const ComponentName = element.name.name;
51
+ const attrs = element.attributes;
52
+ let end = attrs.length > 0 ? attrs[attrs.length - 1].end : element.name.end;
53
+ this.identifiers.push({
54
+ placement: end,
55
+ name: ComponentName,
56
+ });
57
+ }
58
+ // find static imports and add them to this.imports array
59
+ if (node.type === "ImportDeclaration" &&
60
+ node.specifiers.length > 0 &&
61
+ node.specifiers[0].type === "ImportDefaultSpecifier") {
62
+ const source = node.source.value;
63
+ const specifier = node.specifiers[0].local.name;
64
+ this.imports.set(specifier, source);
65
+ }
66
+ // find rfom require
67
+ if (node.type === "VariableDeclaration" &&
68
+ node.declarations.length === 1 &&
69
+ node.declarations[0].init?.type === "CallExpression" &&
70
+ node.declarations[0].init.callee.name === "require") {
71
+ const source = node.declarations[0].init.arguments[0].value;
72
+ const specifier = node.declarations[0].id.name;
73
+ this.imports.set(specifier, source);
74
+ }
75
+ }
76
+ }
77
+ export default TransformPage;
@@ -0,0 +1,17 @@
1
+ type Replacement = {
2
+ start: number;
3
+ end: number;
4
+ value: string;
5
+ };
6
+ export declare class TransformReactContext {
7
+ private readonly reactNamespaces;
8
+ private readonly createContextBindings;
9
+ readonly replacements: Replacement[];
10
+ transform(node: any): void;
11
+ private detectReactImport;
12
+ private detectReactRequire;
13
+ private isReactRequire;
14
+ private detectCreateContext;
15
+ private replaceCallee;
16
+ }
17
+ export default TransformReactContext;
@@ -0,0 +1,101 @@
1
+ export class TransformReactContext {
2
+ constructor() {
3
+ this.reactNamespaces = new Set();
4
+ this.createContextBindings = new Set();
5
+ this.replacements = [];
6
+ }
7
+ transform(node) {
8
+ this.detectReactImport(node);
9
+ this.detectReactRequire(node);
10
+ this.detectCreateContext(node);
11
+ }
12
+ detectReactImport(node) {
13
+ if (node.type !== "ImportDeclaration" || node.source?.value !== "react") {
14
+ return;
15
+ }
16
+ for (const specifier of node.specifiers) {
17
+ // import React from "react"
18
+ if (specifier.type === "ImportDefaultSpecifier") {
19
+ this.reactNamespaces.add(specifier.local.name);
20
+ continue;
21
+ }
22
+ // import * as React from "react"
23
+ if (specifier.type === "ImportNamespaceSpecifier") {
24
+ this.reactNamespaces.add(specifier.local.name);
25
+ continue;
26
+ }
27
+ // import { createContext } from "react"
28
+ // import { createContext as ctx } from "react"
29
+ if (specifier.type === "ImportSpecifier" &&
30
+ specifier.imported?.name === "createContext") {
31
+ this.createContextBindings.add(specifier.local.name);
32
+ }
33
+ }
34
+ }
35
+ detectReactRequire(node) {
36
+ if (node.type !== "VariableDeclarator") {
37
+ return;
38
+ }
39
+ if (!this.isReactRequire(node.init)) {
40
+ return;
41
+ }
42
+ // const React = require("react")
43
+ if (node.id.type === "Identifier") {
44
+ this.reactNamespaces.add(node.id.name);
45
+ return;
46
+ }
47
+ // const { createContext } = require("react")
48
+ // const { createContext: ctx } = require("react")
49
+ if (node.id.type === "ObjectPattern") {
50
+ for (const property of node.id.properties) {
51
+ if (property.type !== "Property" || property.computed) {
52
+ continue;
53
+ }
54
+ if (property.key.type === "Identifier" &&
55
+ property.key.name === "createContext") {
56
+ const local = property.value.type === "Identifier" ? property.value.name : null;
57
+ if (local) {
58
+ this.createContextBindings.add(local);
59
+ }
60
+ }
61
+ }
62
+ }
63
+ }
64
+ isReactRequire(node) {
65
+ return (node?.type === "CallExpression" &&
66
+ node.callee?.type === "Identifier" &&
67
+ node.callee.name === "require" &&
68
+ node.arguments?.length === 1 &&
69
+ node.arguments[0]?.type === "Literal" &&
70
+ node.arguments[0].value === "react");
71
+ }
72
+ detectCreateContext(node) {
73
+ if (node.type !== "CallExpression") {
74
+ return;
75
+ }
76
+ // createContext(...)
77
+ // createCtx(...)
78
+ if (node.callee.type === "Identifier" &&
79
+ this.createContextBindings.has(node.callee.name)) {
80
+ this.replaceCallee(node.callee);
81
+ return;
82
+ }
83
+ // React.createContext(...)
84
+ if (node.callee.type === "MemberExpression" &&
85
+ !node.callee.computed &&
86
+ node.callee.object.type === "Identifier" &&
87
+ node.callee.property.type === "Identifier" &&
88
+ node.callee.property.name === "createContext" &&
89
+ this.reactNamespaces.has(node.callee.object.name)) {
90
+ this.replaceCallee(node.callee);
91
+ }
92
+ }
93
+ replaceCallee(callee) {
94
+ this.replacements.push({
95
+ start: callee.start,
96
+ end: callee.end,
97
+ value: "__xanix.createContext",
98
+ });
99
+ }
100
+ }
101
+ export default TransformReactContext;
@@ -0,0 +1,15 @@
1
+ declare class TransformServerAction {
2
+ replacements: {
3
+ start: number;
4
+ end: number;
5
+ value: string;
6
+ }[];
7
+ code: string;
8
+ serverImported: boolean;
9
+ importer: string;
10
+ count: number;
11
+ uid: string;
12
+ constructor(code: string, importer: string, uid: string);
13
+ transform(node: any): void;
14
+ }
15
+ export default TransformServerAction;
@@ -0,0 +1,42 @@
1
+ class TransformServerAction {
2
+ constructor(code, importer, uid) {
3
+ this.replacements = [];
4
+ this.serverImported = false;
5
+ this.count = 0;
6
+ this.code = code;
7
+ this.importer = importer;
8
+ this.uid = uid;
9
+ }
10
+ transform(node) {
11
+ // check server imported
12
+ if (node.type === "ImportDeclaration" &&
13
+ node.source.value === "xanix" &&
14
+ node.specifiers.some((s) => s.type === "ImportSpecifier" && s.imported.name === "server")) {
15
+ this.serverImported = true;
16
+ }
17
+ if (node.type === "CallExpression" &&
18
+ node.callee.type === "Identifier" &&
19
+ node.callee.name === "server" &&
20
+ (node.arguments.length === 1 || node.arguments.length === 2) &&
21
+ (node.arguments[0].type === "ArrowFunctionExpression" ||
22
+ node.arguments[0].type === "FunctionExpression")) {
23
+ const id = this.uid + this.count++;
24
+ if (node.arguments.length === 2) {
25
+ const optionNode = node.arguments[1];
26
+ const optionString = this.code.slice(optionNode.start, optionNode.end);
27
+ this.replacements.push({
28
+ start: node.start,
29
+ end: node.end,
30
+ value: `server(undefined, ${optionString}, "${id}")`,
31
+ });
32
+ return;
33
+ }
34
+ this.replacements.push({
35
+ start: node.start,
36
+ end: node.end,
37
+ value: `server(undefined, undefined, "${id}")`,
38
+ });
39
+ }
40
+ }
41
+ }
42
+ export default TransformServerAction;
@@ -0,0 +1,3 @@
1
+ import { ImportInfo } from "../../../../modifier/importFinder.js";
2
+ declare const TransformServerFunction: (code: string, imports: ImportInfo[], uid: string, source: string) => string;
3
+ export default TransformServerFunction;
@@ -0,0 +1,32 @@
1
+ import callbackReplacer from "../../../../modifier/callbackReplacer.js";
2
+ import { frameworkDir } from "../../../../include/utils.js";
3
+ const TransformServerFunction = (code, imports, uid, source) => {
4
+ let count = 0;
5
+ const replacer = (code, cb) => {
6
+ const replacedCode = callbackReplacer(code, cb, (args) => {
7
+ if (args[2])
8
+ return;
9
+ const id = uid + count++;
10
+ const fn = args[0];
11
+ const options = args[1] || "undefined";
12
+ return `${cb}(undefined, ${options}, "${id}");`;
13
+ });
14
+ code = replacedCode;
15
+ return code;
16
+ };
17
+ if (source.startsWith(frameworkDir)) {
18
+ code = replacer(code, `server`);
19
+ }
20
+ for (let _import of imports) {
21
+ if (_import.namespace) {
22
+ code = replacer(code, `${_import.namespace}.server`);
23
+ }
24
+ for (let sp of _import.specifiers) {
25
+ if (sp.imported === "server") {
26
+ code = replacer(code, sp.local);
27
+ }
28
+ }
29
+ }
30
+ return code;
31
+ };
32
+ export default TransformServerFunction;
@@ -0,0 +1,3 @@
1
+ import type { ImportInfo } from "../../../../modifier/importFinder.js";
2
+ declare const TransformUseServer: (code: string, imports: ImportInfo[], source: string) => string;
3
+ export default TransformUseServer;
@@ -0,0 +1,31 @@
1
+ import callbackReplacer from "../../../../modifier/callbackReplacer.js";
2
+ import { frameworkDir } from "../../../../include/utils.js";
3
+ const TransformUseServer = (code, imports, source) => {
4
+ let codes = [];
5
+ const replacer = (code, cb) => {
6
+ return callbackReplacer(code, cb, (args) => {
7
+ const fn = args[0];
8
+ const argString = args[1] ?? "undefined";
9
+ const options = args[2] || "undefined";
10
+ const varname = `_xserver_${Math.random().toString(36).substring(2, 7)}`;
11
+ const server_code = `const ${varname} = ${cb}.server(${fn}, ${options});`;
12
+ codes.push(server_code);
13
+ return `${cb}(${varname}, ${argString})`;
14
+ });
15
+ };
16
+ if (source.startsWith(frameworkDir)) {
17
+ code = replacer(code, `useServer`);
18
+ }
19
+ for (let _import of imports) {
20
+ if (_import.namespace) {
21
+ code = replacer(code, `${_import.namespace}.useServer`);
22
+ }
23
+ for (let sp of _import.specifiers) {
24
+ if (sp.imported === "useServer") {
25
+ code = replacer(code, sp.local);
26
+ }
27
+ }
28
+ }
29
+ return codes.join("\n") + "\n" + code;
30
+ };
31
+ export default TransformUseServer;
@@ -0,0 +1,15 @@
1
+ import { CachedModule } from "../Transformer";
2
+ type Replacement = {
3
+ start: number;
4
+ end: number;
5
+ value: string;
6
+ };
7
+ declare class TransformModuleCache {
8
+ packages: string[];
9
+ replacements: Replacement[];
10
+ cached: Map<string, CachedModule>;
11
+ cacheChanged: boolean;
12
+ constructor(cached: Map<string, CachedModule>);
13
+ transform(node: any): void;
14
+ }
15
+ export default TransformModuleCache;