tungsten 0.7.0 → 0.7.2

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 (687) hide show
  1. package/AGENTS.md +1246 -0
  2. package/dist/.build-complete +1 -1
  3. package/dist/FrameworkConfig.d.ts +2 -0
  4. package/dist/Instance/Instance.js +6 -33
  5. package/dist/Instance/InstanceConfig.d.ts +1 -0
  6. package/dist/Servers/DevServer.js +10 -1
  7. package/dist/Servers/ProdServer.d.ts +1 -0
  8. package/dist/Servers/ProdServer.js +18 -1
  9. package/dist/Servers/routing.js +9 -5
  10. package/dist/Servers/stubInstance.d.ts +8 -0
  11. package/dist/Servers/stubInstance.js +40 -0
  12. package/dist/build/createInstanceConfigFile.js +1 -1
  13. package/dist/componentHelpers.d.ts +2 -1
  14. package/dist/componentHelpers.js +3 -0
  15. package/dist/frameworkConfigSchema.d.ts +2 -0
  16. package/dist/frameworkConfigSchema.js +4 -1
  17. package/dist/hydrate/hydrate.js +31 -10
  18. package/dist/hydrate/stubRouting.d.ts +8 -0
  19. package/dist/hydrate/stubRouting.js +25 -0
  20. package/dist/makeFinalConfig.js +2 -0
  21. package/dist/makeInstanceConfigFromFrameworkConfig.js +1 -0
  22. package/dist/pipeline/PipelineRequestHandler.js +9 -1
  23. package/dist/pipeline/hydratePipeline.js +28 -9
  24. package/dist/pipeline/pipeline.d.ts +35 -33
  25. package/dist/pipeline/pipeline.js +10 -5
  26. package/dist/pipeline/pipelineDefinition.d.ts +20 -9
  27. package/dist/pipeline/runPipeline.d.ts +6 -8
  28. package/dist/pipeline/runPipeline.js +8 -8
  29. package/dist/pipeline/runSplitPipeline.d.ts +3 -3
  30. package/dist/pipeline/runSplitPipeline.js +12 -8
  31. package/dist/pipeline/splitPipeline.d.ts +8 -8
  32. package/dist/render/contentTreeToRenderingTree.js +4 -1
  33. package/dist/routing/MatchedRouteInfo.d.ts +2 -0
  34. package/dist/routing/MatchedRouteInfo.js +1 -1
  35. package/dist/routing/RouteContentFunction.d.ts +1 -1
  36. package/dist/routing/RouteTypes.d.ts +1 -1
  37. package/dist/routing/Routes.d.ts +9 -4
  38. package/dist/routing/builder.d.ts +2 -1
  39. package/dist/routing/builder.js +6 -0
  40. package/dist/routing/redirectOf.d.ts +11 -0
  41. package/dist/routing/redirectOf.js +32 -0
  42. package/dist/routing/routesArray.d.ts +2 -2
  43. package/dist/routing/routingBuilder.js +0 -1
  44. package/dist/testing/contentToString.d.ts +13 -0
  45. package/dist/testing/contentToString.js +105 -0
  46. package/dist/testing/display.d.ts +2 -0
  47. package/dist/testing/display.js +37 -0
  48. package/dist/testing/ensure.d.ts +52 -41
  49. package/dist/testing/ensure.js +204 -62
  50. package/dist/testing/host.d.ts +25 -25
  51. package/dist/testing/host.js +1 -3
  52. package/dist/testing/hydrateTestApp.js +4 -3
  53. package/dist/testing/index.d.ts +2 -3
  54. package/dist/testing/index.js +1 -2
  55. package/dist/testing/pipeline/createTestPacketApp.d.ts +30 -0
  56. package/dist/testing/pipeline/createTestPacketApp.js +45 -0
  57. package/dist/testing/pipeline/createTestPipelineApp.d.ts +70 -0
  58. package/dist/testing/pipeline/createTestPipelineApp.js +90 -0
  59. package/dist/testing/pipeline/hostPipeline.d.ts +25 -0
  60. package/dist/testing/pipeline/hostPipeline.js +18 -0
  61. package/dist/testing/{hydrateTestPipelineApp.d.ts → pipeline/hydrateTestPipelineApp.d.ts} +6 -6
  62. package/dist/testing/{hydrateTestPipelineApp.js → pipeline/hydrateTestPipelineApp.js} +22 -19
  63. package/dist/testing/pipeline/index.d.ts +5 -0
  64. package/dist/testing/pipeline/index.js +4 -0
  65. package/dist/testing/pipeline/pipelineTestApp.d.ts +34 -0
  66. package/dist/testing/pipeline/pipelineTestApp.js +100 -0
  67. package/dist/testing/pipeline/testPipelineRoute.d.ts +2 -0
  68. package/dist/testing/pipeline/testPipelineRoute.js +1 -0
  69. package/dist/testing/resolveContent.d.ts +2 -0
  70. package/dist/testing/resolveContent.js +9 -1
  71. package/package.json +10 -5
  72. package/vendor/css-select.js +3383 -0
  73. package/vendor/manifest.json +4 -3
  74. package/dist/AnyComponent.d.ts.map +0 -1
  75. package/dist/AnyComponentType.d.ts.map +0 -1
  76. package/dist/AppResponse.d.ts.map +0 -1
  77. package/dist/AppTypeExtraction.d.ts.map +0 -1
  78. package/dist/AssignedStyle.d.ts.map +0 -1
  79. package/dist/Brands.d.ts.map +0 -1
  80. package/dist/CjsTypes.d.ts.map +0 -1
  81. package/dist/ComponentInstance.d.ts.map +0 -1
  82. package/dist/ComponentRenderInfo.type.d.ts.map +0 -1
  83. package/dist/ComponentStyle.d.ts.map +0 -1
  84. package/dist/Components.d.ts.map +0 -1
  85. package/dist/ContentFunction.d.ts.map +0 -1
  86. package/dist/ContentNode.d.ts.map +0 -1
  87. package/dist/ContentNodeNew.d.ts.map +0 -1
  88. package/dist/CssNames.d.ts.map +0 -1
  89. package/dist/DomNodes.d.ts.map +0 -1
  90. package/dist/DomPointer.d.ts.map +0 -1
  91. package/dist/DomRegion.d.ts.map +0 -1
  92. package/dist/ExtendableHTMLElement.d.ts.map +0 -1
  93. package/dist/Framework.d.ts.map +0 -1
  94. package/dist/FrameworkConfig.d.ts.map +0 -1
  95. package/dist/FunctionComponent.d.ts.map +0 -1
  96. package/dist/FunctionComponentStandIn.d.ts.map +0 -1
  97. package/dist/GenericObject.type.d.ts.map +0 -1
  98. package/dist/HtmlElementAttributes.d.ts.map +0 -1
  99. package/dist/Instance/ClientRuntimeContext.d.ts.map +0 -1
  100. package/dist/Instance/Instance.d.ts.map +0 -1
  101. package/dist/Instance/InstanceConfig.d.ts.map +0 -1
  102. package/dist/IsDefined.d.ts.map +0 -1
  103. package/dist/IsIndexableObject.d.ts.map +0 -1
  104. package/dist/IsNumber.d.ts.map +0 -1
  105. package/dist/IsObject.d.ts.map +0 -1
  106. package/dist/Json.type.d.ts.map +0 -1
  107. package/dist/JsxContent.d.ts.map +0 -1
  108. package/dist/Key.d.ts.map +0 -1
  109. package/dist/KeyAttr.d.ts.map +0 -1
  110. package/dist/MapObject.d.ts.map +0 -1
  111. package/dist/Mode.d.ts.map +0 -1
  112. package/dist/Module.d.ts.map +0 -1
  113. package/dist/NoDeproxy.d.ts.map +0 -1
  114. package/dist/PopMessage.type.d.ts.map +0 -1
  115. package/dist/ProcessedStylesObject.d.ts.map +0 -1
  116. package/dist/RenderFunction.d.ts.map +0 -1
  117. package/dist/RenderedContentNode.d.ts.map +0 -1
  118. package/dist/RenderingNode.d.ts.map +0 -1
  119. package/dist/ReqRes.d.ts.map +0 -1
  120. package/dist/Sass.d.ts.map +0 -1
  121. package/dist/Script.d.ts.map +0 -1
  122. package/dist/ServerRpcFunction.type.d.ts.map +0 -1
  123. package/dist/Servers/DevServer.d.ts.map +0 -1
  124. package/dist/Servers/ProdServer.d.ts.map +0 -1
  125. package/dist/Servers/ServerMiddleware.d.ts.map +0 -1
  126. package/dist/Servers/StaticSiteServer.d.ts.map +0 -1
  127. package/dist/Servers/TungstenServer.d.ts.map +0 -1
  128. package/dist/Servers/cacheVersioned.d.ts.map +0 -1
  129. package/dist/Servers/devErrorPageAutoRetry.d.ts.map +0 -1
  130. package/dist/Servers/initStores.d.ts.map +0 -1
  131. package/dist/Servers/listenVerified.d.ts.map +0 -1
  132. package/dist/Servers/loadEnvsDev.d.ts.map +0 -1
  133. package/dist/Servers/portError.d.ts.map +0 -1
  134. package/dist/Servers/resetRegistrations.d.ts.map +0 -1
  135. package/dist/Servers/routing.d.ts.map +0 -1
  136. package/dist/Servers/serveStatic.d.ts.map +0 -1
  137. package/dist/Servers/tungstenCorePrivateEnvSchema.d.ts.map +0 -1
  138. package/dist/Servers/tungstenCorePublicEnvSchema.d.ts.map +0 -1
  139. package/dist/Store/BaseStoreSchema.d.ts.map +0 -1
  140. package/dist/Store/InternalStoreSchema.d.ts.map +0 -1
  141. package/dist/Store/ServerDataLoading.d.ts.map +0 -1
  142. package/dist/Store/Store.d.ts.map +0 -1
  143. package/dist/Store/StoreProxyInterface.d.ts.map +0 -1
  144. package/dist/Store/StoreSchemaClass.d.ts.map +0 -1
  145. package/dist/Store/StoreSubscriptions.types.d.ts.map +0 -1
  146. package/dist/Store/TypeSafeStore.d.ts.map +0 -1
  147. package/dist/Store/createStores.d.ts.map +0 -1
  148. package/dist/Store/exportStore.d.ts.map +0 -1
  149. package/dist/Store/getInternalStore.d.ts.map +0 -1
  150. package/dist/Store/getStore.d.ts.map +0 -1
  151. package/dist/Store/makeStore.d.ts.map +0 -1
  152. package/dist/Store/registerStore.d.ts.map +0 -1
  153. package/dist/Store/storeCreators.d.ts.map +0 -1
  154. package/dist/StoreBindVariable.d.ts.map +0 -1
  155. package/dist/StyleProcessor.d.ts.map +0 -1
  156. package/dist/TElement.d.ts.map +0 -1
  157. package/dist/TungstenApp.d.ts.map +0 -1
  158. package/dist/TungstenAppOld.d.ts.map +0 -1
  159. package/dist/TungstenElement.d.ts.map +0 -1
  160. package/dist/TungstenError.d.ts.map +0 -1
  161. package/dist/TungstenStyleObject.d.ts.map +0 -1
  162. package/dist/__deproxy.d.ts.map +0 -1
  163. package/dist/_client/RootComponent.d.ts.map +0 -1
  164. package/dist/_client/cjsHelpers.d.ts.map +0 -1
  165. package/dist/_client/client.d.ts.map +0 -1
  166. package/dist/_client/hmr.d.ts.map +0 -1
  167. package/dist/_client/liveReload.d.ts.map +0 -1
  168. package/dist/_client/liveReloadSource.d.ts.map +0 -1
  169. package/dist/_client/rootComponentRelFilePath.d.ts.map +0 -1
  170. package/dist/_client/routes.d.ts.map +0 -1
  171. package/dist/_testing/regexEquals.d.ts.map +0 -1
  172. package/dist/_testing/should.d.ts.map +0 -1
  173. package/dist/_testing/sxy-test-runner.types.d.ts.map +0 -1
  174. package/dist/alive.d.ts.map +0 -1
  175. package/dist/api/ApiEndpoint.d.ts.map +0 -1
  176. package/dist/api/ApiMethod.type.d.ts.map +0 -1
  177. package/dist/api/ApiRoute.d.ts.map +0 -1
  178. package/dist/api/ApiRoutes.d.ts.map +0 -1
  179. package/dist/api/Request.d.ts.map +0 -1
  180. package/dist/api/Response.d.ts.map +0 -1
  181. package/dist/api/getApiRoutes.d.ts.map +0 -1
  182. package/dist/api/getExport.d.ts.map +0 -1
  183. package/dist/api/getExportDev.d.ts.map +0 -1
  184. package/dist/appBuilder.d.ts.map +0 -1
  185. package/dist/appBuilder.types.test.d.ts +0 -110
  186. package/dist/appBuilder.types.test.d.ts.map +0 -1
  187. package/dist/appBuilder.types.test.js +0 -240
  188. package/dist/appOutput.d.ts.map +0 -1
  189. package/dist/assert.d.ts.map +0 -1
  190. package/dist/auth/checkPassword.d.ts.map +0 -1
  191. package/dist/auth/hashPassword.d.ts.map +0 -1
  192. package/dist/auth/index.d.ts.map +0 -1
  193. package/dist/babelPlugins/BabelAddDevCacheBust.d.ts.map +0 -1
  194. package/dist/babelPlugins/BabelExtractComponentStylesheet.d.ts.map +0 -1
  195. package/dist/babelPlugins/BabelFakeType.d.ts.map +0 -1
  196. package/dist/babelPlugins/BabelState.type.d.ts.map +0 -1
  197. package/dist/babelPlugins/BabelTransformBindDirect.d.ts.map +0 -1
  198. package/dist/babelPlugins/BabelTransformBindVar.d.ts.map +0 -1
  199. package/dist/babelPlugins/BabelTransformCjsToEsm.d.ts.map +0 -1
  200. package/dist/babelPlugins/BabelTransformCjsToFunction.d.ts.map +0 -1
  201. package/dist/babelPlugins/BabelTransformCjsToFunction2.d.ts.map +0 -1
  202. package/dist/babelPlugins/BabelTransformComponentState.d.ts.map +0 -1
  203. package/dist/babelPlugins/BabelTransformComponentStyles.d.ts.map +0 -1
  204. package/dist/babelPlugins/BabelTransformCssImports.d.ts.map +0 -1
  205. package/dist/babelPlugins/BabelTransformDependencyImportsOld.d.ts.map +0 -1
  206. package/dist/babelPlugins/BabelTransformDeproxyState.d.ts.map +0 -1
  207. package/dist/babelPlugins/BabelTransformDocInit.d.ts.map +0 -1
  208. package/dist/babelPlugins/BabelTransformJsxExtensionsToJs.d.ts.map +0 -1
  209. package/dist/babelPlugins/BabelTransformJsxSignals.d.ts.map +0 -1
  210. package/dist/babelPlugins/BabelTransformPackageImports.d.ts.map +0 -1
  211. package/dist/babelPlugins/BabelTransformReactive.d.ts.map +0 -1
  212. package/dist/babelPlugins/BabelTransformReactiveSvelteStyle.d.ts.map +0 -1
  213. package/dist/babelPlugins/BabelTransformRemoveBlocks.d.ts.map +0 -1
  214. package/dist/babelPlugins/BabelTransformRemoveDevBlocks.d.ts.map +0 -1
  215. package/dist/babelPlugins/BabelTransformRemoveServerBlocks.d.ts.map +0 -1
  216. package/dist/babelPlugins/BabelTransformRemoveServerCode.d.ts.map +0 -1
  217. package/dist/babelPlugins/BabelTransformSxyFrameworkImports.d.ts.map +0 -1
  218. package/dist/babelPlugins/BabelTransformSxyJsx.d.ts.map +0 -1
  219. package/dist/babelPlugins/BabelTransformUniqueComponents.d.ts.map +0 -1
  220. package/dist/babelPlugins/BabelTypes.d.ts.map +0 -1
  221. package/dist/babelPlugins/fixImportsInSassErrorMessage.d.ts.map +0 -1
  222. package/dist/babelPlugins/isBareImport.d.ts.map +0 -1
  223. package/dist/babelPlugins/test.d.ts.map +0 -1
  224. package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsCjs.d.ts.map +0 -1
  225. package/dist/babelPlugins/transformPackageImports/BabelTransformDependencyImportsEsm.d.ts.map +0 -1
  226. package/dist/babelPlugins/transformPackageImports/getWebLocationOfPackageFile.d.ts.map +0 -1
  227. package/dist/babelPlugins/transformPackageImports/resolveBareImport.d.ts.map +0 -1
  228. package/dist/bin/args.d.ts.map +0 -1
  229. package/dist/bin/commands/build.d.ts.map +0 -1
  230. package/dist/bin/commands/buildHelp.d.ts.map +0 -1
  231. package/dist/bin/commands/clean.d.ts.map +0 -1
  232. package/dist/bin/commands/compile.d.ts.map +0 -1
  233. package/dist/bin/commands/compileSimplePackage.d.ts.map +0 -1
  234. package/dist/bin/commands/dev.d.ts.map +0 -1
  235. package/dist/bin/commands/devmon.d.ts.map +0 -1
  236. package/dist/bin/commands/help.d.ts.map +0 -1
  237. package/dist/bin/commands/speed.d.ts.map +0 -1
  238. package/dist/bin/commands/start.d.ts.map +0 -1
  239. package/dist/bin/commands/static.d.ts.map +0 -1
  240. package/dist/bin/index.d.ts.map +0 -1
  241. package/dist/bin/moduleLoadAnalysis.d.ts.map +0 -1
  242. package/dist/bin/vendorHook.d.ts.map +0 -1
  243. package/dist/booleanAttributeValue.d.ts.map +0 -1
  244. package/dist/browserStorage.d.ts.map +0 -1
  245. package/dist/build/BabelConfig.d.ts.map +0 -1
  246. package/dist/build/CompilationInfo.d.ts.map +0 -1
  247. package/dist/build/CompilationInfoFailure.d.ts.map +0 -1
  248. package/dist/build/CompilationInfoSuccess.d.ts.map +0 -1
  249. package/dist/build/Event.type.d.ts.map +0 -1
  250. package/dist/build/ImportAliases.d.ts.map +0 -1
  251. package/dist/build/PackageList.d.ts.map +0 -1
  252. package/dist/build/PackagesCacheInfo.d.ts.map +0 -1
  253. package/dist/build/ProcessPackageResult.d.ts.map +0 -1
  254. package/dist/build/ProcessPackageResults.d.ts.map +0 -1
  255. package/dist/build/PromiseSettledResultIsPromiseRejectedResult.d.ts.map +0 -1
  256. package/dist/build/assetVersions.d.ts.map +0 -1
  257. package/dist/build/babel.user.common.config.d.ts.map +0 -1
  258. package/dist/build/bundle.d.ts.map +0 -1
  259. package/dist/build/bundleBabelOptions.d.ts.map +0 -1
  260. package/dist/build/clientModuleAliases.d.ts.map +0 -1
  261. package/dist/build/clientRoutesFile.d.ts.map +0 -1
  262. package/dist/build/combineComponentCss.d.ts.map +0 -1
  263. package/dist/build/compileJavascript.d.ts.map +0 -1
  264. package/dist/build/compileStyles.d.ts.map +0 -1
  265. package/dist/build/compileUserApp.d.ts.map +0 -1
  266. package/dist/build/componentStylesCache.d.ts.map +0 -1
  267. package/dist/build/copyAssets.d.ts.map +0 -1
  268. package/dist/build/copyPackageModulesToPackagesFolder.d.ts.map +0 -1
  269. package/dist/build/copyPublicFiles.d.ts.map +0 -1
  270. package/dist/build/createClientFiles.d.ts.map +0 -1
  271. package/dist/build/createInstanceConfigFile.d.ts.map +0 -1
  272. package/dist/build/createPackageVirtualFileSystem.d.ts.map +0 -1
  273. package/dist/build/createPackageVirtualFileSystems.d.ts.map +0 -1
  274. package/dist/build/customImportAliases.d.ts.map +0 -1
  275. package/dist/build/customPackageEntryPoints.d.ts.map +0 -1
  276. package/dist/build/devBundle.d.ts.map +0 -1
  277. package/dist/build/devBundle.rollup.config.d.ts.map +0 -1
  278. package/dist/build/findRequiredUserModules.d.ts.map +0 -1
  279. package/dist/build/frameworkDestLocation.d.ts.map +0 -1
  280. package/dist/build/frameworkStylesheets.d.ts.map +0 -1
  281. package/dist/build/getAllSxyClientModules.d.ts.map +0 -1
  282. package/dist/build/getPackageDirForFile.d.ts.map +0 -1
  283. package/dist/build/getSxyClientPackageAliases.d.ts.map +0 -1
  284. package/dist/build/getTempDirForAppCompilation.d.ts.map +0 -1
  285. package/dist/build/internalAliases.d.ts.map +0 -1
  286. package/dist/build/makeBabelRawConfig.d.ts.map +0 -1
  287. package/dist/build/makeBabelUserDevConfig.d.ts.map +0 -1
  288. package/dist/build/makeBabelUserProdConfig.d.ts.map +0 -1
  289. package/dist/build/makeEnvJavascriptContent.d.ts.map +0 -1
  290. package/dist/build/modifySassImports.d.ts.map +0 -1
  291. package/dist/build/packageIdentifier.d.ts.map +0 -1
  292. package/dist/build/processDataToLines.d.ts.map +0 -1
  293. package/dist/build/resolveSassScssImports.d.ts.map +0 -1
  294. package/dist/build/rollup.user.prod.config.d.ts.map +0 -1
  295. package/dist/build/rollupExtractComponentStylesheets.d.ts.map +0 -1
  296. package/dist/build/rollupProdConstants.d.ts.map +0 -1
  297. package/dist/build/sassImportParser.d.ts.map +0 -1
  298. package/dist/build/scssImportParserChatgpt.d.ts.map +0 -1
  299. package/dist/build/tallyBabel.d.ts.map +0 -1
  300. package/dist/cacheControl.d.ts.map +0 -1
  301. package/dist/calculateImportedStaticFileLocations.d.ts.map +0 -1
  302. package/dist/calledFrom.d.ts.map +0 -1
  303. package/dist/checkedAttributeToBoolean.d.ts.map +0 -1
  304. package/dist/checkedValueToBoolean.d.ts.map +0 -1
  305. package/dist/cliOutput.d.ts.map +0 -1
  306. package/dist/clone.d.ts.map +0 -1
  307. package/dist/compat/context.d.ts.map +0 -1
  308. package/dist/compat/forwardRef.d.ts.map +0 -1
  309. package/dist/compat/index.d.ts.map +0 -1
  310. package/dist/compat/propTypes.d.ts.map +0 -1
  311. package/dist/compat/toTungstenClassComponent.d.ts.map +0 -1
  312. package/dist/compat/toTungstenFunctionComponent.d.ts.map +0 -1
  313. package/dist/compat/types.d.ts.map +0 -1
  314. package/dist/componentClassName.d.ts.map +0 -1
  315. package/dist/componentHelpers.d.ts.map +0 -1
  316. package/dist/componentProxyHandlers.d.ts.map +0 -1
  317. package/dist/componentType.d.ts.map +0 -1
  318. package/dist/components/Await.d.ts.map +0 -1
  319. package/dist/components/Fragment.d.ts.map +0 -1
  320. package/dist/components/GoToComponent.d.ts.map +0 -1
  321. package/dist/components/Lazy.d.ts.map +0 -1
  322. package/dist/components/Link.d.ts.map +0 -1
  323. package/dist/components/NativeHtml.d.ts.map +0 -1
  324. package/dist/components/NoEscape.d.ts.map +0 -1
  325. package/dist/components/PopMessages.d.ts.map +0 -1
  326. package/dist/components/Protected.d.ts.map +0 -1
  327. package/dist/components/RawHtml.d.ts.map +0 -1
  328. package/dist/components/RouteRedirectComponent.d.ts.map +0 -1
  329. package/dist/components/Stylesheet.d.ts.map +0 -1
  330. package/dist/components/WebRedirectComponent.d.ts.map +0 -1
  331. package/dist/components/_GoToComponent.d.ts.map +0 -1
  332. package/dist/components/bindable/BindMode.d.ts.map +0 -1
  333. package/dist/components/bindable/BindVariable.d.ts.map +0 -1
  334. package/dist/components/bindable/BindableCheckbox.d.ts.map +0 -1
  335. package/dist/components/bindable/BindableInput.d.ts.map +0 -1
  336. package/dist/components/bindable/BindableInputNonString.d.ts.map +0 -1
  337. package/dist/components/bindable/BindableInputString.d.ts.map +0 -1
  338. package/dist/components/bindable/BindableInputTyped.d.ts.map +0 -1
  339. package/dist/components/bindable/BindableInputTypedLegacy.d.ts.map +0 -1
  340. package/dist/components/bindable/BindableRadio.d.ts.map +0 -1
  341. package/dist/components/bindable/BindableSelect.d.ts.map +0 -1
  342. package/dist/components/bindable/BindableSelectNaive.d.ts.map +0 -1
  343. package/dist/components/bindable/BindableTextarea.d.ts.map +0 -1
  344. package/dist/components/bindable/bindableCandidates.comparison.d.ts.map +0 -1
  345. package/dist/components/bindable/bindableHtmlElements.d.ts.map +0 -1
  346. package/dist/components/bindable/bindableProps.types.test.d.ts +0 -50
  347. package/dist/components/bindable/bindableProps.types.test.d.ts.map +0 -1
  348. package/dist/components/bindable/bindableProps.types.test.js +0 -252
  349. package/dist/components/library/RichTextEditor/RichTextEditor.d.ts.map +0 -1
  350. package/dist/components/library/RichTextEditor/StoredContentNode.d.ts.map +0 -1
  351. package/dist/components/library/RichTextEditor/activeFormats.d.ts.map +0 -1
  352. package/dist/components/library/RichTextEditor/contentTree.d.ts.map +0 -1
  353. package/dist/components/library/RichTextEditor/sanitizeAuthoredHtml.d.ts.map +0 -1
  354. package/dist/components/library/__StatefulMessage/MessageData.d.ts.map +0 -1
  355. package/dist/components/library/__StatefulMessage/StatefulMessage.d.ts.map +0 -1
  356. package/dist/components/library/index.d.ts.map +0 -1
  357. package/dist/components/makeTypedLink.d.ts.map +0 -1
  358. package/dist/concat.d.ts.map +0 -1
  359. package/dist/contentNodeSymbols.d.ts.map +0 -1
  360. package/dist/context/registerContext.d.ts.map +0 -1
  361. package/dist/copy.d.ts.map +0 -1
  362. package/dist/createElement.d.ts.map +0 -1
  363. package/dist/createRef.d.ts.map +0 -1
  364. package/dist/createRoutes.d.ts.map +0 -1
  365. package/dist/defaultConfig.d.ts.map +0 -1
  366. package/dist/deleteDirs.d.ts.map +0 -1
  367. package/dist/devBanner.d.ts.map +0 -1
  368. package/dist/docInit.d.ts.map +0 -1
  369. package/dist/domNodeChecks.d.ts.map +0 -1
  370. package/dist/env/Env.d.ts.map +0 -1
  371. package/dist/env/Interfaces.d.ts.map +0 -1
  372. package/dist/env/addToEnv.d.ts.map +0 -1
  373. package/dist/env/droppedCoreEnvKeys.d.ts.map +0 -1
  374. package/dist/env/funcs.d.ts.map +0 -1
  375. package/dist/env/getEnvSchemas.d.ts.map +0 -1
  376. package/dist/env/index.d.ts.map +0 -1
  377. package/dist/env/privateEnv.d.ts.map +0 -1
  378. package/dist/env/privateEnvOrThrow.d.ts.map +0 -1
  379. package/dist/env/publicEnv.d.ts.map +0 -1
  380. package/dist/env/publicEnvOrThrow.d.ts.map +0 -1
  381. package/dist/env/registerEnvSchemas.d.ts.map +0 -1
  382. package/dist/env/setPrivateEnvValidator.d.ts.map +0 -1
  383. package/dist/env/setPublicEnvValidator.d.ts.map +0 -1
  384. package/dist/env/test.d.ts.map +0 -1
  385. package/dist/env/types.d.ts.map +0 -1
  386. package/dist/env/windowGlobalEnvStatement.d.ts.map +0 -1
  387. package/dist/experiments.d.ts.map +0 -1
  388. package/dist/filePathFromUrl.d.ts.map +0 -1
  389. package/dist/fileVersions.d.ts.map +0 -1
  390. package/dist/findPackageDotJson.d.ts.map +0 -1
  391. package/dist/findProjectDir.d.ts.map +0 -1
  392. package/dist/findUserConfig.d.ts.map +0 -1
  393. package/dist/fixExtension.d.ts.map +0 -1
  394. package/dist/foreach.d.ts.map +0 -1
  395. package/dist/frameworkConfigSchema.d.ts.map +0 -1
  396. package/dist/getArrowFunctionBody.d.ts.map +0 -1
  397. package/dist/getComponent.d.ts.map +0 -1
  398. package/dist/getComponentDev.d.ts.map +0 -1
  399. package/dist/getConfig.d.ts.map +0 -1
  400. package/dist/getContentFromFunctionComponent.d.ts.map +0 -1
  401. package/dist/getFrameworkDir.d.ts.map +0 -1
  402. package/dist/getRoutes.d.ts.map +0 -1
  403. package/dist/getRoutesDevs.d.ts.map +0 -1
  404. package/dist/getStackTrace.d.ts.map +0 -1
  405. package/dist/getStyledContentFromFunctionComponent.d.ts.map +0 -1
  406. package/dist/getUserConfig.d.ts.map +0 -1
  407. package/dist/glob.d.ts.map +0 -1
  408. package/dist/globals.d.ts.map +0 -1
  409. package/dist/goto.d.ts.map +0 -1
  410. package/dist/hasDomain.d.ts.map +0 -1
  411. package/dist/hasValidKey.d.ts.map +0 -1
  412. package/dist/headChildren.d.ts.map +0 -1
  413. package/dist/helpers/combineClassNames.d.ts.map +0 -1
  414. package/dist/helpers/forwardingFetch.d.ts.map +0 -1
  415. package/dist/helpers/getFetchCompatibleHeaders.d.ts.map +0 -1
  416. package/dist/helpers/index.d.ts.map +0 -1
  417. package/dist/helpers/perRequest.d.ts.map +0 -1
  418. package/dist/hmr/applyHmrModule.d.ts.map +0 -1
  419. package/dist/hmr/componentIdentity.d.ts.map +0 -1
  420. package/dist/hmr/instanceRegistry.d.ts.map +0 -1
  421. package/dist/hmr/liveReloadHub.d.ts.map +0 -1
  422. package/dist/hmr/refreshStylesheets.d.ts.map +0 -1
  423. package/dist/hooks/clearCurrentComponent.d.ts.map +0 -1
  424. package/dist/hooks/getCurrentComponent.d.ts.map +0 -1
  425. package/dist/hooks/globalObj.d.ts.map +0 -1
  426. package/dist/hooks/globalType.d.ts.map +0 -1
  427. package/dist/hooks/index.d.ts.map +0 -1
  428. package/dist/hooks/setCurrentComponent.d.ts.map +0 -1
  429. package/dist/hooks/shallowCompare.d.ts.map +0 -1
  430. package/dist/hooks/useCallback.d.ts.map +0 -1
  431. package/dist/hooks/useContext.d.ts.map +0 -1
  432. package/dist/hooks/useEffect.d.ts.map +0 -1
  433. package/dist/hooks/useInstance.d.ts.map +0 -1
  434. package/dist/hooks/useMemo.d.ts.map +0 -1
  435. package/dist/hooks/useReducer.d.ts.map +0 -1
  436. package/dist/hooks/useRef.d.ts.map +0 -1
  437. package/dist/hooks/useState.d.ts.map +0 -1
  438. package/dist/htmlEntities.d.ts.map +0 -1
  439. package/dist/htmlEventHandlerKey.d.ts.map +0 -1
  440. package/dist/htmlEvents.d.ts.map +0 -1
  441. package/dist/hydrate/hydrate.d.ts.map +0 -1
  442. package/dist/hydrate/hydrateGlobalData.d.ts.map +0 -1
  443. package/dist/hydrate/reconcileHydratedAttributes.d.ts.map +0 -1
  444. package/dist/hydrate/renderHydrationMismatchBanner.d.ts.map +0 -1
  445. package/dist/importDevModuleWithRetry.d.ts.map +0 -1
  446. package/dist/importModule.d.ts.map +0 -1
  447. package/dist/index.d.ts.map +0 -1
  448. package/dist/indexInner.d.ts.map +0 -1
  449. package/dist/info.d.ts.map +0 -1
  450. package/dist/innerHtmlFromProps.d.ts.map +0 -1
  451. package/dist/isBrowser.d.ts.map +0 -1
  452. package/dist/isClient.d.ts.map +0 -1
  453. package/dist/isDev.d.ts.map +0 -1
  454. package/dist/isProd.d.ts.map +0 -1
  455. package/dist/isServer.d.ts.map +0 -1
  456. package/dist/iterationQueryString.d.ts.map +0 -1
  457. package/dist/json.d.ts.map +0 -1
  458. package/dist/jsx-runtime.d.ts.map +0 -1
  459. package/dist/jsxHelpers.d.ts.map +0 -1
  460. package/dist/jsxRuntime.d.ts.map +0 -1
  461. package/dist/jsxRuntimeSignals.d.ts.map +0 -1
  462. package/dist/loadPackageDotJsonFromDir.d.ts.map +0 -1
  463. package/dist/logAndReturn.d.ts.map +0 -1
  464. package/dist/makeFinalConfig.d.ts.map +0 -1
  465. package/dist/makeInstanceConfigFromFrameworkConfig.d.ts.map +0 -1
  466. package/dist/makeServerRpc.d.ts.map +0 -1
  467. package/dist/markOptionSelected.d.ts.map +0 -1
  468. package/dist/mergeConfigs.d.ts.map +0 -1
  469. package/dist/moduleReloader.d.ts.map +0 -1
  470. package/dist/mutatingFunctions.d.ts.map +0 -1
  471. package/dist/nbsp.d.ts.map +0 -1
  472. package/dist/objectMap.d.ts.map +0 -1
  473. package/dist/objectTypesToCopy.d.ts.map +0 -1
  474. package/dist/objectTypesToProxy.d.ts.map +0 -1
  475. package/dist/output.d.ts.map +0 -1
  476. package/dist/packageSettings.d.ts.map +0 -1
  477. package/dist/pipeLog.d.ts.map +0 -1
  478. package/dist/pipeline/PipelineRequestHandler.d.ts.map +0 -1
  479. package/dist/pipeline/contextStore.d.ts.map +0 -1
  480. package/dist/pipeline/hydratePipeline.d.ts.map +0 -1
  481. package/dist/pipeline/importRoutesModule.d.ts.map +0 -1
  482. package/dist/pipeline/networkedTransport.d.ts.map +0 -1
  483. package/dist/pipeline/pipeline.d.ts.map +0 -1
  484. package/dist/pipeline/pipeline.types.test.d.ts +0 -650
  485. package/dist/pipeline/pipeline.types.test.d.ts.map +0 -1
  486. package/dist/pipeline/pipeline.types.test.js +0 -342
  487. package/dist/pipeline/pipelineDefinition.d.ts.map +0 -1
  488. package/dist/pipeline/pipelineSplit.types.test.d.ts +0 -1971
  489. package/dist/pipeline/pipelineSplit.types.test.d.ts.map +0 -1
  490. package/dist/pipeline/pipelineSplit.types.test.js +0 -440
  491. package/dist/pipeline/runPipeline.d.ts.map +0 -1
  492. package/dist/pipeline/runSplitPipeline.d.ts.map +0 -1
  493. package/dist/pipeline/splitPipeline.d.ts.map +0 -1
  494. package/dist/pop.d.ts.map +0 -1
  495. package/dist/possibleEnvFiles.d.ts.map +0 -1
  496. package/dist/postcssPlugins/TransformCssNames.d.ts.map +0 -1
  497. package/dist/postcssPlugins/parseSelectors.d.ts.map +0 -1
  498. package/dist/postcssPlugins/parseSelectorsRich.d.ts.map +0 -1
  499. package/dist/postcssPlugins/scopeAnimationValue.d.ts.map +0 -1
  500. package/dist/postcssPlugins/splitCssValue.d.ts.map +0 -1
  501. package/dist/postcssPlugins/unwrapIgnoreMarker.d.ts.map +0 -1
  502. package/dist/promise.d.ts.map +0 -1
  503. package/dist/propsAreEqual.d.ts.map +0 -1
  504. package/dist/rawHtml/HtmlAllowList.d.ts.map +0 -1
  505. package/dist/rawHtml/decodeHtmlEntities.d.ts.map +0 -1
  506. package/dist/rawHtml/filterContentNode.d.ts.map +0 -1
  507. package/dist/rawHtml/htmlParsingTags.d.ts.map +0 -1
  508. package/dist/rawHtml/parseHtml.d.ts.map +0 -1
  509. package/dist/rawHtml/safeHtmlAllowList.d.ts.map +0 -1
  510. package/dist/rawHtml/sanitizeHtml.d.ts.map +0 -1
  511. package/dist/rawHtml/tokenizeHtml.d.ts.map +0 -1
  512. package/dist/reRouting/addRequireResolveHooks.d.ts.map +0 -1
  513. package/dist/reRouting/importLoader.d.ts.map +0 -1
  514. package/dist/ref.d.ts.map +0 -1
  515. package/dist/regexEscape.d.ts.map +0 -1
  516. package/dist/removeRecursive.d.ts.map +0 -1
  517. package/dist/render/HeadData.d.ts.map +0 -1
  518. package/dist/render/SxyFrameworkModule.d.ts.map +0 -1
  519. package/dist/render/SxyFrameworkModules.d.ts.map +0 -1
  520. package/dist/render/addImportMap.d.ts.map +0 -1
  521. package/dist/render/classComponentNodeToRenderingTree.d.ts.map +0 -1
  522. package/dist/render/componentNodeToRenderingTree.d.ts.map +0 -1
  523. package/dist/render/contentNodeToHtml.d.ts.map +0 -1
  524. package/dist/render/contentToHtml.d.ts.map +0 -1
  525. package/dist/render/contentToHtmlDev.d.ts.map +0 -1
  526. package/dist/render/contentTreeToRenderingTree.d.ts.map +0 -1
  527. package/dist/render/debug.d.ts.map +0 -1
  528. package/dist/render/functionComponentNodeToRenderingTree.d.ts.map +0 -1
  529. package/dist/render/getFunctionBodyAsString.d.ts.map +0 -1
  530. package/dist/render/htmlMonoTags.d.ts.map +0 -1
  531. package/dist/render/htmlNoSelfCloseTags.d.ts.map +0 -1
  532. package/dist/render/htmlSelfClosableTags.d.ts.map +0 -1
  533. package/dist/render/htmlSingleOnlyTags.d.ts.map +0 -1
  534. package/dist/render/htmlVoidTags.d.ts.map +0 -1
  535. package/dist/render/instantiateClassComponent.d.ts.map +0 -1
  536. package/dist/render/instantiateComponent.d.ts.map +0 -1
  537. package/dist/render/instantiateFunctionComponent.d.ts.map +0 -1
  538. package/dist/render/printComponentNameInSource.d.ts.map +0 -1
  539. package/dist/render/processBody.d.ts.map +0 -1
  540. package/dist/render/processHead.d.ts.map +0 -1
  541. package/dist/render/processHtmlNode.d.ts.map +0 -1
  542. package/dist/render/processProps.d.ts.map +0 -1
  543. package/dist/render/processRenderingNodeHtml.d.ts.map +0 -1
  544. package/dist/render/readDocInitScript.d.ts.map +0 -1
  545. package/dist/render/renderingTreeToHtml.d.ts.map +0 -1
  546. package/dist/render/rootToHtml.d.ts.map +0 -1
  547. package/dist/render/rootToHtmlDev.d.ts.map +0 -1
  548. package/dist/requests/axios/get.d.ts.map +0 -1
  549. package/dist/requests/axios/post.d.ts.map +0 -1
  550. package/dist/requests/fetch/FetchExtras.d.ts.map +0 -1
  551. package/dist/requests/fetch/_fetchPromise.d.ts.map +0 -1
  552. package/dist/requests/fetch/delete.d.ts.map +0 -1
  553. package/dist/requests/fetch/get.d.ts.map +0 -1
  554. package/dist/requests/fetch/mergeFetchInit.d.ts.map +0 -1
  555. package/dist/requests/fetch/paramsObjectToParamsString.d.ts.map +0 -1
  556. package/dist/requests/fetch/patch.d.ts.map +0 -1
  557. package/dist/requests/fetch/post.d.ts.map +0 -1
  558. package/dist/requests/fetch/put.d.ts.map +0 -1
  559. package/dist/requests/index.d.ts.map +0 -1
  560. package/dist/routesLocationParts.d.ts.map +0 -1
  561. package/dist/routing/AppRoutes.d.ts.map +0 -1
  562. package/dist/routing/Default404.d.ts.map +0 -1
  563. package/dist/routing/ErrorRouteType.d.ts.map +0 -1
  564. package/dist/routing/Group.d.ts.map +0 -1
  565. package/dist/routing/Match.type.d.ts.map +0 -1
  566. package/dist/routing/MatchedRoute.d.ts.map +0 -1
  567. package/dist/routing/MatchedRouteInfo.d.ts.map +0 -1
  568. package/dist/routing/Params.d.ts.map +0 -1
  569. package/dist/routing/ParamsFromPath.d.ts.map +0 -1
  570. package/dist/routing/RedirectCode.d.ts.map +0 -1
  571. package/dist/routing/Route.d.ts.map +0 -1
  572. package/dist/routing/RouteContent.d.ts.map +0 -1
  573. package/dist/routing/RouteContentFunction.d.ts.map +0 -1
  574. package/dist/routing/RouteData.d.ts.map +0 -1
  575. package/dist/routing/RouteDataFunction.type.d.ts.map +0 -1
  576. package/dist/routing/RouteDataReturnType.d.ts.map +0 -1
  577. package/dist/routing/RouteParams.type.d.ts.map +0 -1
  578. package/dist/routing/RoutePaths.d.ts.map +0 -1
  579. package/dist/routing/RouteProp.d.ts.map +0 -1
  580. package/dist/routing/RouteType.d.ts.map +0 -1
  581. package/dist/routing/RouteTypes.d.ts.map +0 -1
  582. package/dist/routing/Router.d.ts.map +0 -1
  583. package/dist/routing/Routes.d.ts.map +0 -1
  584. package/dist/routing/RoutesFunction.d.ts.map +0 -1
  585. package/dist/routing/RoutesWithSafeParams.d.ts.map +0 -1
  586. package/dist/routing/RoutingRedirect.d.ts.map +0 -1
  587. package/dist/routing/Serializable.d.ts.map +0 -1
  588. package/dist/routing/TungstenErrorInfo.d.ts.map +0 -1
  589. package/dist/routing/WebRedirect.d.ts.map +0 -1
  590. package/dist/routing/builder.d.ts.map +0 -1
  591. package/dist/routing/builder.trial.d.ts.map +0 -1
  592. package/dist/routing/compareRequestToRegex.d.ts.map +0 -1
  593. package/dist/routing/debug.d.ts.map +0 -1
  594. package/dist/routing/defineRoutes.d.ts.map +0 -1
  595. package/dist/routing/getPathPriority.d.ts.map +0 -1
  596. package/dist/routing/matchPath.d.ts.map +0 -1
  597. package/dist/routing/patternToRegex.d.ts.map +0 -1
  598. package/dist/routing/pyramidRouting.d.ts.map +0 -1
  599. package/dist/routing/registerGlobalData.d.ts.map +0 -1
  600. package/dist/routing/registerParts.types.test.d.ts +0 -2
  601. package/dist/routing/registerParts.types.test.d.ts.map +0 -1
  602. package/dist/routing/registerParts.types.test.js +0 -139
  603. package/dist/routing/registerRoutes.d.ts.map +0 -1
  604. package/dist/routing/registerRouting.d.ts.map +0 -1
  605. package/dist/routing/registerRouting.types.test.d.ts +0 -80
  606. package/dist/routing/registerRouting.types.test.d.ts.map +0 -1
  607. package/dist/routing/registerRouting.types.test.js +0 -120
  608. package/dist/routing/registrationTypes.d.ts.map +0 -1
  609. package/dist/routing/resolveAppRoutes.d.ts.map +0 -1
  610. package/dist/routing/routeSymbols.d.ts.map +0 -1
  611. package/dist/routing/routeUrl.d.ts.map +0 -1
  612. package/dist/routing/routesArray.d.ts.map +0 -1
  613. package/dist/routing/routesArray.types.test.d.ts +0 -2
  614. package/dist/routing/routesArray.types.test.d.ts.map +0 -1
  615. package/dist/routing/routesArray.types.test.js +0 -132
  616. package/dist/routing/routingBuilder.d.ts.map +0 -1
  617. package/dist/routing/routingBuilder.types.test.d.ts +0 -2
  618. package/dist/routing/routingBuilder.types.test.d.ts.map +0 -1
  619. package/dist/routing/routingBuilder.types.test.js +0 -171
  620. package/dist/routing/routingRegistry.d.ts.map +0 -1
  621. package/dist/routing/runContentFunction.d.ts.map +0 -1
  622. package/dist/routing/splitRequest.d.ts.map +0 -1
  623. package/dist/run.d.ts.map +0 -1
  624. package/dist/server.d.ts.map +0 -1
  625. package/dist/serverModuleLocation.d.ts.map +0 -1
  626. package/dist/serverRpc.d.ts.map +0 -1
  627. package/dist/serverRpcs.d.ts.map +0 -1
  628. package/dist/settings.d.ts.map +0 -1
  629. package/dist/signals/tracking.d.ts.map +0 -1
  630. package/dist/slash.d.ts.map +0 -1
  631. package/dist/spawnShellCommand.d.ts.map +0 -1
  632. package/dist/standardSchema.d.ts.map +0 -1
  633. package/dist/standardizeWebPath.d.ts.map +0 -1
  634. package/dist/startDevServer.d.ts.map +0 -1
  635. package/dist/stateTracking.d.ts.map +0 -1
  636. package/dist/staticGen/RouteDefinition.d.ts.map +0 -1
  637. package/dist/staticGen/getAppRoutes.d.ts.map +0 -1
  638. package/dist/staticGen/staticGen.d.ts.map +0 -1
  639. package/dist/staticGen/staticGenFunctions.d.ts.map +0 -1
  640. package/dist/style/jssToCss.d.ts.map +0 -1
  641. package/dist/style/styleContent.d.ts.map +0 -1
  642. package/dist/style/styleContentReact.d.ts.map +0 -1
  643. package/dist/style/styleContentReactClassOrClassname.d.ts.map +0 -1
  644. package/dist/style/styleContentSxy.d.ts.map +0 -1
  645. package/dist/style/styleContentSxyClassOrClassname.d.ts.map +0 -1
  646. package/dist/style/styleElementContent.d.ts.map +0 -1
  647. package/dist/style/unusedStyles.d.ts.map +0 -1
  648. package/dist/styleProcessors.d.ts.map +0 -1
  649. package/dist/symbols.d.ts.map +0 -1
  650. package/dist/sync/index.d.ts.map +0 -1
  651. package/dist/syncServer/index.d.cts.map +0 -1
  652. package/dist/syncServer/preload.d.ts.map +0 -1
  653. package/dist/testing/createTestApp.d.ts.map +0 -1
  654. package/dist/testing/createTestPipelineApp.d.ts +0 -25
  655. package/dist/testing/createTestPipelineApp.d.ts.map +0 -1
  656. package/dist/testing/createTestPipelineApp.js +0 -153
  657. package/dist/testing/ensure.d.ts.map +0 -1
  658. package/dist/testing/ensure.trial.d.ts.map +0 -1
  659. package/dist/testing/helpers/contentHtmlElements.d.ts.map +0 -1
  660. package/dist/testing/host.d.ts.map +0 -1
  661. package/dist/testing/hostPipeline.d.ts +0 -157
  662. package/dist/testing/hostPipeline.d.ts.map +0 -1
  663. package/dist/testing/hostPipeline.js +0 -341
  664. package/dist/testing/hydrateTestApp.d.ts.map +0 -1
  665. package/dist/testing/hydrateTestPipelineApp.d.ts.map +0 -1
  666. package/dist/testing/index.d.ts.map +0 -1
  667. package/dist/testing/installTestDocInit.d.ts.map +0 -1
  668. package/dist/testing/installTestStyleProcessors.d.ts.map +0 -1
  669. package/dist/testing/loadEnv.d.ts.map +0 -1
  670. package/dist/testing/normalize.d.ts.map +0 -1
  671. package/dist/testing/resolveContent.d.ts.map +0 -1
  672. package/dist/testing/testEnvIsRequested.d.ts.map +0 -1
  673. package/dist/testing/testingComponentPackage.d.ts.map +0 -1
  674. package/dist/throwError.d.ts.map +0 -1
  675. package/dist/timeProfiler.d.ts.map +0 -1
  676. package/dist/todo.d.ts.map +0 -1
  677. package/dist/update/UpdateResult.d.ts.map +0 -1
  678. package/dist/update/UpdateScheduler.d.ts.map +0 -1
  679. package/dist/update/guardedUpdate.d.ts.map +0 -1
  680. package/dist/update/integrateUpdateVdom.d.ts.map +0 -1
  681. package/dist/update/integrateUpdateVdomPrebuild.d.ts.map +0 -1
  682. package/dist/update/pendingMounts.d.ts.map +0 -1
  683. package/dist/validChildren.d.ts.map +0 -1
  684. package/dist/warnOnFrameworkChange.d.ts.map +0 -1
  685. package/dist/watch.d.ts.map +0 -1
  686. package/dist/when.d.ts.map +0 -1
  687. package/dist/zones/react.d.ts.map +0 -1
@@ -1 +1 @@
1
- 1790592400641
1
+ 1791130589286
@@ -43,6 +43,7 @@ export type FrameworkConfigBase = {
43
43
  suppressEnvOverwriteWarnings?: boolean;
44
44
  hmr?: boolean | 'reload';
45
45
  csr?: boolean;
46
+ serverSideRouting?: boolean;
46
47
  defaultCacheControl?: CacheControl;
47
48
  registration?: Registration;
48
49
  };
@@ -96,6 +97,7 @@ export type FrameworkConfigCompleteBase = {
96
97
  warnOnFrameworkChange: boolean;
97
98
  hmr: boolean | 'reload';
98
99
  csr: boolean;
100
+ serverSideRouting?: boolean;
99
101
  defaultCacheControl?: CacheControl;
100
102
  registration?: Registration;
101
103
  };
@@ -3,15 +3,10 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  import { isClient } from '../isClient.js';
5
5
  import { routing } from "../Servers/routing.js";
6
- import { RoutingRedirect } from '../routing/RoutingRedirect.js';
6
+ import { redirectOf } from '../routing/redirectOf.js';
7
7
  import { routeKeyToUrl, urlToLocation } from '../routing/routeUrl.js';
8
8
  import { isProd } from '../isProd.js';
9
- import { WebRedirect } from '../routing/WebRedirect.js';
10
- import { RouteRedirectComponent } from "../components/RouteRedirectComponent.js";
11
- import { WebRedirectComponent } from "../components/WebRedirectComponent.js";
12
9
  import { isServer } from '../isServer.js';
13
- import { ContentNodeIsClassComponent } from '../ContentNode.js';
14
- import { $props, $type } from '../contentNodeSymbols.js';
15
10
  import { errorOut } from '../appOutput.js';
16
11
  import { makeTungstenErrorInfo } from '../routing/TungstenErrorInfo.js';
17
12
  import { toRoutes } from '../routing/routesArray.js';
@@ -131,35 +126,13 @@ export class Instance {
131
126
  //console.log('matchedRouteInfo', location, matchedRouteInfo)
132
127
  //console.log('matched route info', this.matchedRouteInfo)
133
128
  if (i !== navigationIndex.get()) return; // another nav has taken over
134
- // data here is the result of the route data function
135
- if (matchedRouteInfo.data instanceof RoutingRedirect) {
136
- const redirect = matchedRouteInfo.data;
129
+ // A redirect to a URL leaves the app: on the server redirect() writes an HTTP redirect;
130
+ // in the browser it replaces the location
131
+ const redirection = redirectOf(matchedRouteInfo);
132
+ if (redirection !== undefined) {
137
133
  // awaited, so goto() settles when the navigation it started has
138
- await this.goto(redirect.to);
134
+ if ('route' in redirection) await this.goto(redirection.route);else this.redirect(redirection.url, redirection.code);
139
135
  return;
140
- } else if (matchedRouteInfo.data instanceof WebRedirect) {
141
- // A WebRedirect names a URL rather than a route, so it leaves the
142
- // application — exactly as a WebRedirectComponent returned as
143
- // content does below. On the server redirect() writes an HTTP
144
- // redirect; in the browser it replaces the location.
145
- const redirect = matchedRouteInfo.data;
146
- this.redirect(redirect.to, redirect.code);
147
- return;
148
- }
149
- // handle Redirect components
150
- // if (
151
- // matchedRouteInfo.content instanceof RedirectComponent
152
- // //&& matchedRouteInfo.content.__tungstenComponentType === 'redirect'
153
- // ) {
154
- if (typeof matchedRouteInfo.content !== 'function' && ContentNodeIsClassComponent(matchedRouteInfo.content)) {
155
- if (matchedRouteInfo.content[$type] === RouteRedirectComponent || matchedRouteInfo.content[$type].prototype instanceof RouteRedirectComponent) {
156
- await this.goto(matchedRouteInfo.content[$props].to);
157
- return;
158
- } else if (matchedRouteInfo.content[$type] === WebRedirectComponent || matchedRouteInfo.content[$type].prototype instanceof WebRedirectComponent) {
159
- //console.log('Content is a WebRedirectComponent - perform a hard redirect')
160
- this.redirect(matchedRouteInfo.content[$props].to);
161
- return;
162
- }
163
136
  }
164
137
  // after routing, before the render: the components' context for the new route
165
138
  const afterRouting = pipeline?.afterRouting;
@@ -8,5 +8,6 @@ export type InstanceConfig = {
8
8
  csr: boolean;
9
9
  sourceDir?: string;
10
10
  registration?: 'pipeline';
11
+ serverSideRouting?: false;
11
12
  };
12
13
  //# sourceMappingURL=InstanceConfig.d.ts.map
@@ -31,9 +31,11 @@ import { TungstenServer } from "./TungstenServer.js";
31
31
  import { portError } from './portError.js';
32
32
  import { loadEnvsDev } from './loadEnvsDev.js';
33
33
  import { initStores } from './initStores.js';
34
+ import { sendStub, stubInstance } from './stubInstance.js';
34
35
  import { createContext } from '../context/registerContext.js';
35
36
  import { makeTungstenErrorInfo } from '../routing/TungstenErrorInfo.js';
36
37
  import { MatchedRoute } from '../routing/MatchedRoute.js';
38
+ import { responseStatus } from '../routing/MatchedRouteInfo.js';
37
39
  import { toRoutes } from '../routing/routesArray.js';
38
40
  import { resetRegistrations } from './resetRegistrations.js';
39
41
  import { PipelineRequestHandler } from '../pipeline/PipelineRequestHandler.js';
@@ -303,6 +305,13 @@ export class DevServer extends TungstenServer {
303
305
  const serverDataLoading = {
304
306
  value: false
305
307
  };
308
+ // the app's modules load, which registers its stores; none of its functions run
309
+ if (this.config.serverSideRouting === false && this.config.useRootComponent) {
310
+ const [appRoutes, Root] = await Promise.all([getRoutesDev(this.compilationInfo, this.config, iteration), getComponentDev(join(this.compilationInfo.buildCodeLocation, this.config.rootComponent), this.config.rootComponent, iteration)]);
311
+ const instance = stubInstance(location, instanceConfig, reqRes, appRoutes);
312
+ sendStub(reqRes, undefined, await renderRootToHtmlDev(this.compilationInfo, this.framework.clientImportAliases, Root, instance, this.config, global.tungstenPublicEnv, ''));
313
+ return;
314
+ }
306
315
  //const routingPromise = getRoutesDev(this.compilationInfo, this.config, load).then(
307
316
  const routingPromise = getRoutesDev(this.compilationInfo, this.config, iteration).then(async appRoutes => {
308
317
  capturedContext = createContext('server', reqRes);
@@ -425,7 +434,7 @@ export class DevServer extends TungstenServer {
425
434
  if (instance.redirected !== undefined) return;
426
435
  //debug('html', html)
427
436
  res.setHeader('Content-Type', 'text/html');
428
- res.status(instance.matchedRouteInfo.key === '404' ? 404 : 200);
437
+ res.status(responseStatus(instance.matchedRouteInfo));
429
438
  res.send(html);
430
439
  } catch (e) {
431
440
  cliLog('error in TungstenServer handleRequest', e);
@@ -27,6 +27,7 @@ export declare class ProdServer extends TungstenServer {
27
27
  private handleRequestApi;
28
28
  handleRequest: (req: express.Request, res: express.Response) => Promise<void>;
29
29
  private tryRenderErrorRoute;
30
+ private stubRoot;
30
31
  errorPage: () => string;
31
32
  start(portOverride?: number | null, mute?: boolean): Promise<string>;
32
33
  stop(): Promise<void>;
@@ -25,9 +25,11 @@ import { initStores } from './initStores.js';
25
25
  import { createContext } from '../context/registerContext.js';
26
26
  import { createNetworkedData } from '../routing/routingRegistry.js';
27
27
  import { makeTungstenErrorInfo } from '../routing/TungstenErrorInfo.js';
28
+ import { responseStatus } from '../routing/MatchedRouteInfo.js';
28
29
  import { toRoutes } from '../routing/routesArray.js';
29
30
  import { listenVerified, newBootId, registerBootProbe } from './listenVerified.js';
30
31
  import { PipelineRequestHandler } from '../pipeline/PipelineRequestHandler.js';
32
+ import { sendStub, stubInstance } from './stubInstance.js';
31
33
  function debug(...texts) {
32
34
  // console.log(...texts)
33
35
  }
@@ -122,6 +124,15 @@ export class ProdServer extends TungstenServer {
122
124
  if (this.framework.clientImportAliases === undefined) {
123
125
  throwError('ProdServer.handleRequest()', 'framework.clientImportAliases is undefined');
124
126
  }
127
+ if (this.config.serverSideRouting === false) {
128
+ const reqRes = {
129
+ req,
130
+ res
131
+ };
132
+ const instance = stubInstance(location, instanceConfig, reqRes, this.appRoutes);
133
+ sendStub(reqRes, this.config.defaultCacheControl, await renderRootToHtml(this.compilationInfo, this.framework.clientImportAliases, this.stubRoot(), instance, this.config, this.config.siteBasePath));
134
+ return;
135
+ }
125
136
  // const appRoutes: AppRoutes = await getRoutes(this.compilationInfo, this.config)
126
137
  // let RootComponentClass: AnyComponentType
127
138
  // if (this.config.useRootComponent) {
@@ -209,7 +220,7 @@ export class ProdServer extends TungstenServer {
209
220
  const cacheControl = pageCacheControl(key !== null && Object.hasOwn(routes, key) ? byKey[key] : undefined, routes[$cacheControl], this.config.defaultCacheControl, reqRes);
210
221
  if (cacheControl !== undefined) res.setHeader('Cache-Control', cacheControlHeader(cacheControl));
211
222
  }
212
- res.status(instance.matchedRouteInfo.key === '404' ? 404 : 200);
223
+ res.status(responseStatus(instance.matchedRouteInfo));
213
224
  res.send(html);
214
225
  } catch (e) {
215
226
  cliLog('handleRequest() error', e);
@@ -285,6 +296,12 @@ export class ProdServer extends TungstenServer {
285
296
  return null;
286
297
  }
287
298
  });
299
+ _defineProperty(this, "stubRoot", () => {
300
+ if (this.RootComponentOrNull === null) {
301
+ throwError('ProdServer', 'config.serverSideRouting is false, which needs a root component');
302
+ }
303
+ return this.RootComponentOrNull;
304
+ });
288
305
  _defineProperty(this, "errorPage", () => {
289
306
  return `<!DOCTYPE html>
290
307
  <html>
@@ -46,11 +46,15 @@ export async function routing(location, routes, context, networkedData, serverDa
46
46
  params: {},
47
47
  content: defaultRoute.content
48
48
  };
49
- if (_404Route) return {
50
- key: '404',
51
- params: {},
52
- content: _404Route.content
53
- };
49
+ if (_404Route) {
50
+ const matched = {
51
+ key: '404',
52
+ params: {},
53
+ content: _404Route.content
54
+ };
55
+ if ('code' in _404Route && typeof _404Route.code === 'number') matched.code = _404Route.code;
56
+ return matched;
57
+ }
54
58
  if (errorRoute) {
55
59
  return {
56
60
  key: 'error',
@@ -0,0 +1,8 @@
1
+ import type { CacheControl } from '../cacheControl.js';
2
+ import type { InstanceConfig } from '../Instance/InstanceConfig.js';
3
+ import type { ReqRes } from '../ReqRes.js';
4
+ import type { AppRoutes } from '../routing/AppRoutes.js';
5
+ import { Instance } from '../Instance/Instance.js';
6
+ export declare function stubInstance(location: string, instanceConfig: InstanceConfig, reqRes: ReqRes, appRoutes: AppRoutes<any>): Instance;
7
+ export declare function sendStub(reqRes: ReqRes, cacheControl: CacheControl | undefined, html: string): void;
8
+ //# sourceMappingURL=stubInstance.d.ts.map
@@ -0,0 +1,40 @@
1
+ import { cacheControlHeader, pageCacheControl } from '../cacheControl.js';
2
+ import { Instance } from '../Instance/Instance.js';
3
+ import { initStores } from './initStores.js';
4
+ // config.serverSideRouting false: the instance for a page the server makes no data for and does not
5
+ // route. The render stops at the root's head and body (contentTreeToRenderingTree)
6
+ export function stubInstance(location, instanceConfig, reqRes, appRoutes) {
7
+ const matchedRouteInfo = {
8
+ key: null,
9
+ params: {},
10
+ content: null
11
+ };
12
+ const globalData = {};
13
+ const context = {};
14
+ const networkedData = {};
15
+ const {
16
+ internalStore,
17
+ stores,
18
+ storeSubscriptions
19
+ } = initStores(location, reqRes, globalData, matchedRouteInfo, {
20
+ value: false
21
+ }, context, networkedData);
22
+ const noRoutes = {}; // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion -- never routed
23
+ const instance = new Instance(location, instanceConfig, reqRes, appRoutes, noRoutes, internalStore, stores, storeSubscriptions, globalData, matchedRouteInfo);
24
+ instance.context = context;
25
+ instance.networkedData = networkedData;
26
+ return instance;
27
+ }
28
+ // the same page for every location: no route, so no 404. cacheControl: the config's, in prod
29
+ export function sendStub(reqRes, cacheControl, html) {
30
+ const {
31
+ res
32
+ } = reqRes;
33
+ res.setHeader('Content-Type', 'text/html');
34
+ if (res.getHeader('Cache-Control') === undefined) {
35
+ const chosen = pageCacheControl(undefined, undefined, cacheControl, reqRes);
36
+ if (chosen !== undefined) res.setHeader('Cache-Control', cacheControlHeader(chosen));
37
+ }
38
+ res.status(200);
39
+ res.send(html);
40
+ }
@@ -23,7 +23,7 @@ export async function createInstanceConfigFile(config, mode, buildLocation, file
23
23
  // to
24
24
  `export default { prod: ${(mode === 'prod').toString()}, useRootComponent: ${config.useRootComponent.toString()}, siteBasePath: "${siteBasePath}", clientSideNav: ${config.clientSideNav.toString()}, staticSite: ${config.staticSite.toString()}, csr: ${config.csr.toString()}` // eslint-disable-line @stylistic/max-len
25
25
  // client.ts hydrates by it
26
- + (config.registration === 'pipeline' ? ', registration: "pipeline"' : '') + ' };\n'
26
+ + (config.registration === 'pipeline' ? ', registration: "pipeline"' : '') + (config.serverSideRouting === false ? ', serverSideRouting: false' : '') + ' };\n'
27
27
  // not config: the instance holds it. Always exported, as client.ts imports it by name
28
28
  + `export const fileVersions = ${JSONstringify(fileVersions) ?? 'undefined'};\n`
29
29
  // a constant rollup folds, so the prod bundle holds one of client.ts's hydrate paths
@@ -8,8 +8,9 @@ export type ComponentHelpers = {
8
8
  readonly routes: Routes;
9
9
  readonly context: Context;
10
10
  readonly globalData: GlobalData;
11
- readonly allRoutesData: GlobalData;
11
+ readonly allRoutesData: GlobalData | undefined;
12
12
  readonly networkedData: NetworkedData;
13
+ readonly networked: object;
13
14
  readonly instance: Instance;
14
15
  };
15
16
  export declare function makeComponentHelpers(component: {
@@ -20,6 +20,9 @@ export function makeComponentHelpers(component) {
20
20
  get networkedData() {
21
21
  return component.__instance.networkedData;
22
22
  },
23
+ get networked() {
24
+ return component.__instance.pipelineNetworked;
25
+ },
23
26
  // a getter, not a captured value: the helpers are made once, on first use
24
27
  get instance() {
25
28
  return component.__instance;
@@ -45,6 +45,7 @@ export declare const frameworkConfigValidator: v.VariantSchema<"useRootComponent
45
45
  readonly warnOnFrameworkChange: v.ExactOptionalSchema<v.BooleanSchema<undefined>, undefined>;
46
46
  readonly hmr: v.ExactOptionalSchema<v.UnionSchema<[v.BooleanSchema<undefined>, v.LiteralSchema<"reload", undefined>], undefined>, undefined>;
47
47
  readonly csr: v.ExactOptionalSchema<v.BooleanSchema<undefined>, undefined>;
48
+ readonly serverSideRouting: v.ExactOptionalSchema<v.BooleanSchema<undefined>, undefined>;
48
49
  readonly defaultCacheControl: v.ExactOptionalSchema<v.UnionSchema<[v.PicklistSchema<["no-store", "private-check", "public-check"], undefined>, v.ObjectSchema<{
49
50
  readonly privacy: v.PicklistSchema<["private", "public"], undefined>;
50
51
  readonly maxAge: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
@@ -53,6 +54,7 @@ export declare const frameworkConfigValidator: v.VariantSchema<"useRootComponent
53
54
  readonly registration: v.ExactOptionalSchema<v.PicklistSchema<["register", "pipeline"], undefined>, undefined>;
54
55
  }, undefined>, v.ObjectSchema<{
55
56
  readonly useRootComponent: v.LiteralSchema<false, undefined>;
57
+ readonly serverSideRouting: v.ExactOptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
56
58
  readonly codeDir: v.ExactOptionalSchema<v.StringSchema<undefined>, undefined>;
57
59
  readonly copy: v.ExactOptionalSchema<v.StringSchema<undefined>, undefined>;
58
60
  readonly copyExclude: v.ExactOptionalSchema<v.StringSchema<undefined>, undefined>;
@@ -62,6 +62,7 @@ const frameworkConfigBaseEntries = {
62
62
  warnOnFrameworkChange: v.exactOptional(v.boolean()),
63
63
  hmr: v.exactOptional(v.union([v.boolean(), v.literal('reload')])),
64
64
  csr: v.exactOptional(v.boolean()),
65
+ serverSideRouting: v.exactOptional(v.boolean()),
65
66
  defaultCacheControl: v.exactOptional(cacheControlSchema),
66
67
  registration: v.exactOptional(v.picklist(['register', 'pipeline']))
67
68
  };
@@ -72,7 +73,9 @@ const frameworkConfigWithRootComponentSchema = v.object({
72
73
  });
73
74
  const frameworkConfigWithoutRootComponentSchema = v.object({
74
75
  ...frameworkConfigBaseEntries,
75
- useRootComponent: v.literal(false)
76
+ useRootComponent: v.literal(false),
77
+ // the stub page's html/head/body come from the root component
78
+ serverSideRouting: v.exactOptional(v.literal(true))
76
79
  });
77
80
  // variant, not union: a plain union reports one issue at the union itself ("Expected Object but
78
81
  // received Object"), where this picks the branch by useRootComponent and reports its actual fields
@@ -38,6 +38,10 @@ import { renderHydrationMismatchBanner } from './renderHydrationMismatchBanner.j
38
38
  import { setCurrentInstance } from '../hmr/instanceRegistry.js';
39
39
  import { createContext } from '../context/registerContext.js';
40
40
  import { renderDocInitErrorBanner } from '../docInit.js';
41
+ import { globalDataFunc } from '../routing/registerGlobalData.js';
42
+ import { createNetworkedData } from '../routing/routingRegistry.js';
43
+ import { routing } from "../Servers/routing.js";
44
+ import { stubRouting } from './stubRouting.js';
41
45
  // side-effect only: pulls applyHmrModule.js (and its clean, non-dynamic-import dependencies)
42
46
  // into the framework's traced dependency graph so it gets copied to .packages/ and is servable
43
47
  // to the browser. It is invoked from a raw, untraced inline script (processHead.ts) instead of
@@ -63,14 +67,29 @@ export async function hydrate(appRoutes, RootComponent, instanceConfig, fileVers
63
67
  // happens next (a read of its value throws below). Rendered again at the end, for the count.
64
68
  if (isDev) renderDocInitErrorBanner();
65
69
  //console.log('hydration global data ', __tungsten_global_data__)
66
- const location = urlToLocation(window.location, instanceConfig.siteBasePath, isProd && instanceConfig.staticSite);
70
+ let location = urlToLocation(window.location, instanceConfig.siteBasePath, isProd && instanceConfig.staticSite);
67
71
  // one for the page: navigation keeps this instance, and so this context
68
72
  const context = createContext('client', null);
69
- // carried over from the server's render, not rebuilt: the client has no request to build from
70
- const networkedData = __tungsten_networked_data__;
73
+ const stub = instanceConfig.serverSideRouting === false;
74
+ // carried over from the server's render, not rebuilt: the client has no request to build from.
75
+ // A stub page carries none, so the client makes its own
76
+ const networkedData = stub ? createNetworkedData(null, context) : __tungsten_networked_data__;
71
77
  const routes = toRoutes(typeof appRoutes === 'function' ? appRoutes(null, context, networkedData) : appRoutes, isDev);
72
- const matchedRouteInfo = hydrationRouting(__tungsten_matched_route_info__, routes);
73
- const globalData = __tungsten_global_data__;
78
+ let matchedRouteInfo;
79
+ let globalData;
80
+ if (stub) {
81
+ // as a client navigation fetches: the global data beside routing
82
+ const [fetched, routed] = await Promise.all([globalDataFunc.value?.(null, context, networkedData) ?? {}, stubRouting(location, to => routing(to, routes, context, networkedData), instanceConfig)]);
83
+ if (routed === null) return;
84
+ ({
85
+ location,
86
+ matchedRouteInfo
87
+ } = routed);
88
+ globalData = fetched;
89
+ } else {
90
+ matchedRouteInfo = hydrationRouting(__tungsten_matched_route_info__, routes);
91
+ globalData = __tungsten_global_data__;
92
+ }
74
93
  const {
75
94
  internalStore,
76
95
  stores,
@@ -87,7 +106,7 @@ export async function hydrate(appRoutes, RootComponent, instanceConfig, fileVers
87
106
  // instance.routerData = __tungsten_router_data__
88
107
  // }
89
108
  // save the route data
90
- if (typeof __tungsten_route_data__ !== 'undefined') {
109
+ if (!stub && typeof __tungsten_route_data__ !== 'undefined') {
91
110
  instance.routeData = __tungsten_route_data__;
92
111
  }
93
112
  const domPointer = new DomPointer(document, 1);
@@ -530,12 +549,14 @@ parentElement, domPointer, instance, meta) {
530
549
  const outerSelectValue = meta.selectValue;
531
550
  if (node[$type] === 'select') meta.selectValue = node[$props].value;
532
551
  let renderedChildren = $contentNull;
533
- if (node[$type] === 'body' && instance.config.csr) {
534
- // CSR: body shipped empty on purpose, nothing to hydrate against - create fresh.
552
+ // CSR: body shipped empty on purpose, nothing to hydrate against - create fresh. A stub
553
+ // page (serverSideRouting false) ships the head without the app's children too
554
+ const fresh = node[$type] === 'body' && instance.config.csr || node[$type] === 'head' && instance.config.serverSideRouting === false;
555
+ if (fresh) {
535
556
  if (parentElement === null) {
536
- throwError('hydrateNodeSingle', 'CSR hydration reached <body> with no owning component');
557
+ throwError('hydrateNodeSingle', `CSR hydration reached <${node[$type]}> with no owning component`);
537
558
  }
538
- const childDomPointer = new DomPointer(domNode);
559
+ const childDomPointer = new DomPointer(domNode, node[$type] === 'head' ? appHeadChildrenStart(domNode) : 0);
539
560
  renderedChildren = await applyUpdate({
540
561
  tungstenElement: parentElement,
541
562
  instance,
@@ -0,0 +1,8 @@
1
+ import type { InstanceConfig } from '../Instance/InstanceConfig.js';
2
+ import type { MatchedRouteInfo } from '../routing/MatchedRouteInfo.js';
3
+ export type StubRouted = {
4
+ location: string;
5
+ matchedRouteInfo: MatchedRouteInfo;
6
+ };
7
+ export declare function stubRouting(location: string, route: (location: string) => Promise<MatchedRouteInfo>, instanceConfig: InstanceConfig): Promise<StubRouted | null>;
8
+ //# sourceMappingURL=stubRouting.d.ts.map
@@ -0,0 +1,25 @@
1
+ import { isProd } from '../isProd.js';
2
+ import { redirectOf } from '../routing/redirectOf.js';
3
+ import { routeKeyToUrl } from '../routing/routeUrl.js';
4
+ import { TungstenError } from '../TungstenError.js';
5
+ // config.serverSideRouting false: the page's first routing is the client's, with its route data. A
6
+ // redirect to a route routes again, the address bar replaced, before anything is built; one to a
7
+ // URL leaves the page, and gives null
8
+ export async function stubRouting(location, route, instanceConfig) {
9
+ for (let hops = 0; hops <= 10; hops++) {
10
+ const matchedRouteInfo = await route(location);
11
+ const redirection = redirectOf(matchedRouteInfo);
12
+ if (redirection === undefined) return {
13
+ location,
14
+ matchedRouteInfo
15
+ };
16
+ if ('url' in redirection) {
17
+ window.location.replace(redirection.url);
18
+ return null;
19
+ }
20
+ location = redirection.route;
21
+ const url = routeKeyToUrl(redirection.route, instanceConfig.siteBasePath, isProd && instanceConfig.staticSite);
22
+ window.history.replaceState(null, '', url);
23
+ }
24
+ throw new TungstenError(`Routing '${location}' redirected more than 10 times`);
25
+ }
@@ -12,5 +12,7 @@ export function makeFinalConfig(userConfig, overrides = null) {
12
12
  if (value === undefined) continue;
13
13
  finalConfig[key] = value; // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion
14
14
  }
15
+ // no server data means nothing for the body: the client builds it
16
+ if (finalConfig.serverSideRouting === false) finalConfig.csr = true;
15
17
  return finalConfig;
16
18
  }
@@ -10,5 +10,6 @@ export function makeInstanceConfigFromFrameworkConfig(frameworkConfig, dev = fal
10
10
  };
11
11
  if ('sourceDir' in frameworkConfig) c.sourceDir = frameworkConfig.sourceDir;
12
12
  if (frameworkConfig.registration === 'pipeline') c.registration = 'pipeline';
13
+ if (frameworkConfig.serverSideRouting === false) c.serverSideRouting = false;
13
14
  return c;
14
15
  }
@@ -5,7 +5,9 @@ import { $cacheControl, cacheControlHeader, pageCacheControl } from '../cacheCon
5
5
  import { cliLog } from '../cliOutput.js';
6
6
  import { Instance } from '../Instance/Instance.js';
7
7
  import { MatchedRoute } from '../routing/MatchedRoute.js';
8
+ import { responseStatus } from '../routing/MatchedRouteInfo.js';
8
9
  import { initStores } from '../Servers/initStores.js';
10
+ import { sendStub, stubInstance } from '../Servers/stubInstance.js';
9
11
  import { TungstenServer } from "../Servers/TungstenServer.js";
10
12
  import { NetworkedTransport } from './networkedTransport.js';
11
13
  import { pipelineRoutes, symmetricServer } from './runPipeline.js';
@@ -40,6 +42,12 @@ export class PipelineRequestHandler extends TungstenServer {
40
42
  const serverDataLoading = {
41
43
  value: false
42
44
  };
45
+ if (config.serverSideRouting === false) {
46
+ const instance = stubInstance(location, this.options.instanceConfig(), reqRes, appRoutesFor(app, undefined, dev));
47
+ const html = await this.options.render(Root ?? MatchedRoute, instance);
48
+ sendStub(reqRes, dev ? undefined : config.defaultCacheControl, html);
49
+ return;
50
+ }
43
51
  const runner = app.split === true ? splitServer : symmetricServer;
44
52
  const {
45
53
  init,
@@ -78,7 +86,7 @@ export class PipelineRequestHandler extends TungstenServer {
78
86
  const cacheControl = pageCacheControl(key !== null && Object.hasOwn(routes, key) ? byKey[key] : undefined, routes[$cacheControl], config.defaultCacheControl, reqRes);
79
87
  if (cacheControl !== undefined) res.setHeader('Cache-Control', cacheControlHeader(cacheControl));
80
88
  }
81
- res.status(instance.matchedRouteInfo.key === '404' ? 404 : 200);
89
+ res.status(responseStatus(instance.matchedRouteInfo));
82
90
  res.send(html);
83
91
  } catch (e) {
84
92
  cliLog('pipeline handleRequest() error', e);
@@ -1,4 +1,6 @@
1
1
  import { DomPointer } from '../DomPointer.js';
2
+ import { stubRouting } from '../hydrate/stubRouting.js';
3
+ import { routing } from "../Servers/routing.js";
2
4
  import { renderDocInitErrorBanner } from '../docInit.js';
3
5
  import { setCurrentInstance } from '../hmr/instanceRegistry.js';
4
6
  import { hydrateRootComponent, hydrationRouting, makeDefaultHydrateMeta } from "../hydrate/hydrate.js";
@@ -21,16 +23,31 @@ export async function hydratePipeline(app, RootComponent, instanceConfig, fileVe
21
23
  if (!isPipelineApp(app)) {
22
24
  throw new TungstenError(`config.registration is 'pipeline', but the routes module exports no pipeline app under` + ` config.routesLocation's name: export the result of the pipeline's .routes().`);
23
25
  }
24
- const location = urlToLocation(window.location, instanceConfig.siteBasePath, isProd && instanceConfig.staticSite);
25
- const allRoutesData = __tungsten_global_data__;
26
- const ran = await app.client(app, allRoutesData, __tungsten_networked_data__);
26
+ let location = urlToLocation(window.location, instanceConfig.siteBasePath, isProd && instanceConfig.staticSite);
27
+ const ran = await app.client(app, __tungsten_networked_data__);
27
28
  const init = ran.init;
28
29
  const routes = pipelineRoutes(app, null, init, isDev);
29
- const matchedRouteInfo = hydrationRouting(__tungsten_matched_route_info__, routes);
30
- const afterRouting = afterRoutingFor(ran.afterRouting);
31
- const brandedContext = afterRouting === undefined ? ran.context // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion -- the framework brands what it builds
32
- : await afterRouting(clientRoute(matchedRouteInfo, location), allRoutesData);
30
+ const routeContext = routingContext(ran.routingContext);
33
31
  const networkedData = routingNetworkedData(ran.routingNetworkedData);
32
+ let allRoutesData;
33
+ let matchedRouteInfo;
34
+ if (instanceConfig.serverSideRouting === false) {
35
+ // a stub page: the client's own all-routes data, beside its first routing, as a navigation's
36
+ const [fetched, routed] = await Promise.all([ran.allRoutesData?.(), stubRouting(location, to => routing(to, routes, routeContext, networkedData), instanceConfig)]);
37
+ if (routed === null) return;
38
+ ({
39
+ location,
40
+ matchedRouteInfo
41
+ } = routed);
42
+ allRoutesData = fetched; // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion -- the framework brands what it builds
43
+ } else {
44
+ allRoutesData = __tungsten_global_data__;
45
+ matchedRouteInfo = hydrationRouting(__tungsten_matched_route_info__, routes);
46
+ }
47
+ const posted = await ran.post(allRoutesData);
48
+ const afterRouting = afterRoutingFor(posted.afterRouting);
49
+ const brandedContext = afterRouting === undefined ? posted.context // eslint-disable-line @typescript-eslint/no-unsafe-type-assertion -- the framework brands what it builds
50
+ : await afterRouting(clientRoute(matchedRouteInfo, location), allRoutesData);
34
51
  const {
35
52
  internalStore,
36
53
  stores,
@@ -42,13 +59,15 @@ export async function hydratePipeline(app, RootComponent, instanceConfig, fileVe
42
59
  instance.networkedData = networkedData;
43
60
  instance.pipelineNetworked = ran.networked;
44
61
  instance.pipeline = {
45
- routingContext: routingContext(ran.routingContext),
62
+ routingContext: routeContext,
46
63
  routingNetworkedData: networkedData,
47
64
  allRoutesData: allRoutesDataFor(ran.allRoutesData),
48
65
  afterRouting
49
66
  };
50
67
  if (isDev) setCurrentInstance(instance);
51
- if (typeof __tungsten_route_data__ !== 'undefined') instance.routeData = __tungsten_route_data__;
68
+ if (instanceConfig.serverSideRouting !== false && typeof __tungsten_route_data__ !== 'undefined') {
69
+ instance.routeData = __tungsten_route_data__;
70
+ }
52
71
  const meta = makeDefaultHydrateMeta();
53
72
  await hydrateRootComponent(instance, RootComponent ?? MatchedRoute, new DomPointer(document, 1), meta);
54
73
  instance.hydrationComplete = true;