@absolutejs/absolute 0.19.0-beta.1041 → 0.19.0-beta.1043

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 (519) hide show
  1. package/package.json +1 -1
  2. package/dist/angular/browser.js +0 -10358
  3. package/dist/angular/browser.js.map +0 -260
  4. package/dist/angular/components/constants.js +0 -101
  5. package/dist/angular/components/core/streamingSlotRegistrar.js +0 -58
  6. package/dist/angular/components/core/streamingSlotRegistry.js +0 -114
  7. package/dist/angular/components/defer-slot-payload.js +0 -6
  8. package/dist/angular/components/defer-slot-templates.directive.js +0 -44
  9. package/dist/angular/components/defer-slot.component.js +0 -152
  10. package/dist/angular/components/image.component.js +0 -202
  11. package/dist/angular/components/index.js +0 -4
  12. package/dist/angular/components/stream-slot.component.js +0 -102
  13. package/dist/angular/hmrPreserveCore.ts +0 -188
  14. package/dist/angular/index.js +0 -15793
  15. package/dist/angular/index.js.map +0 -299
  16. package/dist/angular/server.js +0 -6357
  17. package/dist/angular/server.js.map +0 -61
  18. package/dist/build.js +0 -27484
  19. package/dist/build.js.map +0 -146
  20. package/dist/cli/config/client.js +0 -527
  21. package/dist/cli/config/server.js +0 -37130
  22. package/dist/cli/htmx/htmx.min.js +0 -1
  23. package/dist/cli/index.js +0 -179275
  24. package/dist/client/index.js +0 -1267
  25. package/dist/client/index.js.map +0 -31
  26. package/dist/core/streamingSlotRegistrar.js +0 -138
  27. package/dist/core/streamingSlotRegistrar.js.map +0 -10
  28. package/dist/core/streamingSlotRegistry.js +0 -194
  29. package/dist/core/streamingSlotRegistry.js.map +0 -11
  30. package/dist/dev/client/constants.ts +0 -26
  31. package/dist/dev/client/cssUtils.ts +0 -311
  32. package/dist/dev/client/domDiff.ts +0 -226
  33. package/dist/dev/client/domState.ts +0 -423
  34. package/dist/dev/client/domTracker.ts +0 -61
  35. package/dist/dev/client/errorOverlay.ts +0 -445
  36. package/dist/dev/client/frameworkDetect.ts +0 -63
  37. package/dist/dev/client/handlers/angularHmrShim.ts +0 -88
  38. package/dist/dev/client/handlers/angularRemount.ts +0 -362
  39. package/dist/dev/client/handlers/angularRemountWiring.ts +0 -52
  40. package/dist/dev/client/handlers/html.ts +0 -364
  41. package/dist/dev/client/handlers/htmx.ts +0 -278
  42. package/dist/dev/client/handlers/react.ts +0 -108
  43. package/dist/dev/client/handlers/rebuild.ts +0 -153
  44. package/dist/dev/client/handlers/svelte.ts +0 -334
  45. package/dist/dev/client/handlers/vue.ts +0 -292
  46. package/dist/dev/client/headPatch.ts +0 -233
  47. package/dist/dev/client/hmrClient.ts +0 -352
  48. package/dist/dev/client/hmrState.ts +0 -14
  49. package/dist/dev/client/hmrToast.ts +0 -150
  50. package/dist/dev/client/moduleVersions.ts +0 -62
  51. package/dist/dev/client/reactRefreshSetup.ts +0 -31
  52. package/dist/dev/client/vendor/lview/lViewOps.ts +0 -196
  53. package/dist/dev/client/vendor/lview/slotConstants.ts +0 -44
  54. package/dist/dev/client/vendor/reactRefreshRuntime.d.ts +0 -12
  55. package/dist/dev/client/vendor/reactRefreshRuntime.js +0 -313
  56. package/dist/image-client/imageClient.js +0 -69
  57. package/dist/index.js +0 -36361
  58. package/dist/index.js.map +0 -320
  59. package/dist/islands/browser.js +0 -259
  60. package/dist/islands/browser.js.map +0 -15
  61. package/dist/islands/index.js +0 -2415
  62. package/dist/islands/index.js.map +0 -37
  63. package/dist/react/browser.js +0 -374
  64. package/dist/react/browser.js.map +0 -19
  65. package/dist/react/components/browser/index.js +0 -467
  66. package/dist/react/components/index.js +0 -684
  67. package/dist/react/components/index.js.map +0 -18
  68. package/dist/react/hooks/index.js +0 -285
  69. package/dist/react/hooks/index.js.map +0 -14
  70. package/dist/react/index.js +0 -4258
  71. package/dist/react/index.js.map +0 -56
  72. package/dist/react/jsxDevRuntimeCompat.js +0 -90
  73. package/dist/react/jsxDevRuntimeCompat.js.map +0 -10
  74. package/dist/react/router/browser.js +0 -95
  75. package/dist/react/router/browser.js.map +0 -10
  76. package/dist/react/router/index.js +0 -95
  77. package/dist/react/router/index.js.map +0 -10
  78. package/dist/react/server.js +0 -1895
  79. package/dist/react/server.js.map +0 -26
  80. package/dist/src/angular/Island.browser.d.ts +0 -34
  81. package/dist/src/angular/Island.d.ts +0 -29
  82. package/dist/src/angular/angularDeps.d.ts +0 -2
  83. package/dist/src/angular/angularPatch.d.ts +0 -1
  84. package/dist/src/angular/animationProviders.d.ts +0 -2
  85. package/dist/src/angular/browser.d.ts +0 -14
  86. package/dist/src/angular/components/constants.d.ts +0 -96
  87. package/dist/src/angular/components/defer-slot-payload.d.ts +0 -7
  88. package/dist/src/angular/components/defer-slot-templates.directive.d.ts +0 -21
  89. package/dist/src/angular/components/defer-slot.component.d.ts +0 -29
  90. package/dist/src/angular/components/image.component.d.ts +0 -42
  91. package/dist/src/angular/components/index.d.ts +0 -4
  92. package/dist/src/angular/components/stream-slot.component.d.ts +0 -20
  93. package/dist/src/angular/composables/index.d.ts +0 -6
  94. package/dist/src/angular/composables/usePageContext.d.ts +0 -16
  95. package/dist/src/angular/composables/useResource.d.ts +0 -57
  96. package/dist/src/angular/composables/useSubscription.d.ts +0 -33
  97. package/dist/src/angular/composables/useTimers.d.ts +0 -18
  98. package/dist/src/angular/createIsland.browser.d.ts +0 -2
  99. package/dist/src/angular/createIsland.d.ts +0 -2
  100. package/dist/src/angular/deterministicEnv.d.ts +0 -26
  101. package/dist/src/angular/hmrPreserveCore.d.ts +0 -21
  102. package/dist/src/angular/httpTransferCache.d.ts +0 -12
  103. package/dist/src/angular/index.d.ts +0 -14
  104. package/dist/src/angular/injectorPatch.d.ts +0 -1
  105. package/dist/src/angular/islandStore.d.ts +0 -9
  106. package/dist/src/angular/islands.d.ts +0 -4
  107. package/dist/src/angular/lowerDeferSyntax.d.ts +0 -18
  108. package/dist/src/angular/lowerServerIslands.d.ts +0 -1
  109. package/dist/src/angular/pageHandler.d.ts +0 -48
  110. package/dist/src/angular/pendingTask.d.ts +0 -1
  111. package/dist/src/angular/preserveAcrossHmr.d.ts +0 -12
  112. package/dist/src/angular/renderIsland.d.ts +0 -2
  113. package/dist/src/angular/requestProviders.d.ts +0 -5
  114. package/dist/src/angular/resolveAngularPackage.d.ts +0 -19
  115. package/dist/src/angular/routerRedirectProviders.d.ts +0 -6
  116. package/dist/src/angular/server.d.ts +0 -4
  117. package/dist/src/angular/ssrRender.d.ts +0 -13
  118. package/dist/src/angular/ssrSanitizer.d.ts +0 -3
  119. package/dist/src/angular/staticAnalyzeSpaRoutes.d.ts +0 -7
  120. package/dist/src/build/angularLinkerPlugin.d.ts +0 -29
  121. package/dist/src/build/buildAngularVendor.d.ts +0 -40
  122. package/dist/src/build/buildDepVendor.d.ts +0 -2
  123. package/dist/src/build/buildEmberVendor.d.ts +0 -24
  124. package/dist/src/build/buildReactVendor.d.ts +0 -8
  125. package/dist/src/build/buildSvelteVendor.d.ts +0 -6
  126. package/dist/src/build/buildVueVendor.d.ts +0 -6
  127. package/dist/src/build/chainInlineSourcemaps.d.ts +0 -13
  128. package/dist/src/build/compileAngular.d.ts +0 -40
  129. package/dist/src/build/compileEmber.d.ts +0 -43
  130. package/dist/src/build/compileSvelte.d.ts +0 -14
  131. package/dist/src/build/compileTailwind.d.ts +0 -5
  132. package/dist/src/build/compileVue.d.ts +0 -22
  133. package/dist/src/build/externalAssetPlugin.d.ts +0 -2
  134. package/dist/src/build/generateManifest.d.ts +0 -2
  135. package/dist/src/build/generateReactIndexes.d.ts +0 -2
  136. package/dist/src/build/htmlScriptHMRPlugin.d.ts +0 -13
  137. package/dist/src/build/index.d.ts +0 -2
  138. package/dist/src/build/islandEntries.d.ts +0 -32
  139. package/dist/src/build/islandRegistryTransform.d.ts +0 -17
  140. package/dist/src/build/nativeRewrite.d.ts +0 -5
  141. package/dist/src/build/optimizeHtmlImages.d.ts +0 -2
  142. package/dist/src/build/outputLogs.d.ts +0 -1
  143. package/dist/src/build/parseAngularConfigImports.d.ts +0 -9
  144. package/dist/src/build/parseVueSpaRoutes.d.ts +0 -20
  145. package/dist/src/build/resolvePackageImport.d.ts +0 -9
  146. package/dist/src/build/rewriteImports.d.ts +0 -8
  147. package/dist/src/build/rewriteImportsPlugin.d.ts +0 -48
  148. package/dist/src/build/rewriteReactImports.d.ts +0 -7
  149. package/dist/src/build/runAngularHandlerScan.d.ts +0 -7
  150. package/dist/src/build/scanAngularHandlerCalls.d.ts +0 -13
  151. package/dist/src/build/scanAngularPageRoutes.d.ts +0 -10
  152. package/dist/src/build/scanConventions.d.ts +0 -5
  153. package/dist/src/build/scanCssEntryPoints.d.ts +0 -1
  154. package/dist/src/build/scanEntryPoints.d.ts +0 -1
  155. package/dist/src/build/scanRouteRegistrations.d.ts +0 -23
  156. package/dist/src/build/scanVueSsrOnlyPages.d.ts +0 -6
  157. package/dist/src/build/staticIslandPages.d.ts +0 -9
  158. package/dist/src/build/stylePreprocessor.d.ts +0 -26
  159. package/dist/src/build/tailwindCompiler.d.ts +0 -8
  160. package/dist/src/build/updateAssetPaths.d.ts +0 -1
  161. package/dist/src/build/vendorEntrySource.d.ts +0 -1
  162. package/dist/src/build/verifyAngularCoreUniqueness.d.ts +0 -2
  163. package/dist/src/build/vueAutoRouterTransform.d.ts +0 -1
  164. package/dist/src/build/wrapHTMLScript.d.ts +0 -17
  165. package/dist/src/build.d.ts +0 -2
  166. package/dist/src/cli/add/dependencies.d.ts +0 -12
  167. package/dist/src/cli/cache.d.ts +0 -15
  168. package/dist/src/cli/config/absolute/AbsoluteConfigPanel.d.ts +0 -6
  169. package/dist/src/cli/config/absolute/editAbsoluteConfig.d.ts +0 -5
  170. package/dist/src/cli/config/absolute/resolveAbsoluteConfig.d.ts +0 -14
  171. package/dist/src/cli/config/client.d.ts +0 -1
  172. package/dist/src/cli/config/configCert.d.ts +0 -12
  173. package/dist/src/cli/config/eslint/EslintPanel.d.ts +0 -6
  174. package/dist/src/cli/config/eslint/configAst.d.ts +0 -18
  175. package/dist/src/cli/config/eslint/editConfigRule.d.ts +0 -6
  176. package/dist/src/cli/config/eslint/eslintStyles.d.ts +0 -1
  177. package/dist/src/cli/config/eslint/resolveConfig.d.ts +0 -3
  178. package/dist/src/cli/config/eslint/serializeValue.d.ts +0 -9
  179. package/dist/src/cli/config/guards.d.ts +0 -4
  180. package/dist/src/cli/config/packageJson/PackageJsonPanel.d.ts +0 -6
  181. package/dist/src/cli/config/packageJson/editPackageJson.d.ts +0 -9
  182. package/dist/src/cli/config/packageJson/resolvePackageJson.d.ts +0 -9
  183. package/dist/src/cli/config/page/ConfigShell.d.ts +0 -6
  184. package/dist/src/cli/config/page/FieldEditor.d.ts +0 -9
  185. package/dist/src/cli/config/page/PanelHost.d.ts +0 -6
  186. package/dist/src/cli/config/page/configStyles.d.ts +0 -1
  187. package/dist/src/cli/config/panels.d.ts +0 -7
  188. package/dist/src/cli/config/prettier/PrettierPanel.d.ts +0 -6
  189. package/dist/src/cli/config/prettier/editPrettier.d.ts +0 -5
  190. package/dist/src/cli/config/prettier/resolvePrettier.d.ts +0 -11
  191. package/dist/src/cli/config/schema/fromJsonSchema.d.ts +0 -3
  192. package/dist/src/cli/config/schema/fromType.d.ts +0 -2
  193. package/dist/src/cli/config/schema/serialize.d.ts +0 -1
  194. package/dist/src/cli/config/server.d.ts +0 -298
  195. package/dist/src/cli/config/tsconfig/TsconfigPanel.d.ts +0 -6
  196. package/dist/src/cli/config/tsconfig/editTsconfig.d.ts +0 -5
  197. package/dist/src/cli/config/tsconfig/resolveTsconfig.d.ts +0 -8
  198. package/dist/src/cli/config/tsconfig/tsconfigStyles.d.ts +0 -1
  199. package/dist/src/cli/discoverInstances.d.ts +0 -5
  200. package/dist/src/cli/generate/componentTemplates.d.ts +0 -7
  201. package/dist/src/cli/generate/context.d.ts +0 -30
  202. package/dist/src/cli/generate/cssStrategy.d.ts +0 -20
  203. package/dist/src/cli/generate/frameworkKey.d.ts +0 -3
  204. package/dist/src/cli/generate/frameworks.d.ts +0 -40
  205. package/dist/src/cli/generate/generateApi.d.ts +0 -3
  206. package/dist/src/cli/generate/generateComponent.d.ts +0 -4
  207. package/dist/src/cli/generate/generatePage.d.ts +0 -4
  208. package/dist/src/cli/generate/naming.d.ts +0 -5
  209. package/dist/src/cli/generate/navData.d.ts +0 -10
  210. package/dist/src/cli/generate/outcome.d.ts +0 -17
  211. package/dist/src/cli/generate/pageTemplates.d.ts +0 -11
  212. package/dist/src/cli/generate/routeWiring.d.ts +0 -40
  213. package/dist/src/cli/generate/staticNav.d.ts +0 -5
  214. package/dist/src/cli/htmx/install.d.ts +0 -6
  215. package/dist/src/cli/index.d.ts +0 -2
  216. package/dist/src/cli/inspectData.d.ts +0 -11
  217. package/dist/src/cli/inspectTui.d.ts +0 -1
  218. package/dist/src/cli/instanceStatus.d.ts +0 -22
  219. package/dist/src/cli/interactive.d.ts +0 -2
  220. package/dist/src/cli/psTui.d.ts +0 -1
  221. package/dist/src/cli/scripts/add.d.ts +0 -1
  222. package/dist/src/cli/scripts/build.d.ts +0 -1
  223. package/dist/src/cli/scripts/compile.d.ts +0 -2
  224. package/dist/src/cli/scripts/dev.d.ts +0 -1
  225. package/dist/src/cli/scripts/doctor.d.ts +0 -1
  226. package/dist/src/cli/scripts/env.d.ts +0 -7
  227. package/dist/src/cli/scripts/eslint.d.ts +0 -16
  228. package/dist/src/cli/scripts/generate.d.ts +0 -1
  229. package/dist/src/cli/scripts/htmx.d.ts +0 -1
  230. package/dist/src/cli/scripts/info.d.ts +0 -1
  231. package/dist/src/cli/scripts/inspect.d.ts +0 -1
  232. package/dist/src/cli/scripts/logs.d.ts +0 -1
  233. package/dist/src/cli/scripts/ls.d.ts +0 -1
  234. package/dist/src/cli/scripts/mem.d.ts +0 -1
  235. package/dist/src/cli/scripts/prettier.d.ts +0 -3
  236. package/dist/src/cli/scripts/ps.d.ts +0 -1
  237. package/dist/src/cli/scripts/remove.d.ts +0 -1
  238. package/dist/src/cli/scripts/routes.d.ts +0 -1
  239. package/dist/src/cli/scripts/start.d.ts +0 -1
  240. package/dist/src/cli/scripts/telemetry.d.ts +0 -5
  241. package/dist/src/cli/scripts/tunnelRelay.d.ts +0 -9
  242. package/dist/src/cli/scripts/typecheck.d.ts +0 -1
  243. package/dist/src/cli/scripts/workspace.d.ts +0 -11
  244. package/dist/src/cli/telemetryEvent.d.ts +0 -1
  245. package/dist/src/cli/tuiPrimitives.d.ts +0 -14
  246. package/dist/src/cli/utils.d.ts +0 -15
  247. package/dist/src/cli/workspaceTui.d.ts +0 -44
  248. package/dist/src/client/hydrators/react.d.ts +0 -3
  249. package/dist/src/client/hydrators/svelte.d.ts +0 -2
  250. package/dist/src/client/hydrators/vue.d.ts +0 -2
  251. package/dist/src/client/index.d.ts +0 -4
  252. package/dist/src/client/islandResolver.d.ts +0 -2
  253. package/dist/src/client/islandRuntime.d.ts +0 -9
  254. package/dist/src/client/islandStore.d.ts +0 -22
  255. package/dist/src/client/preserveIslandMarkup.d.ts +0 -16
  256. package/dist/src/client/streamSwap.d.ts +0 -1
  257. package/dist/src/constants.d.ts +0 -96
  258. package/dist/src/core/angularServerModule.d.ts +0 -1
  259. package/dist/src/core/build.d.ts +0 -14
  260. package/dist/src/core/currentIslandRegistry.d.ts +0 -7
  261. package/dist/src/core/devBuild.d.ts +0 -23
  262. package/dist/src/core/devRouteRegistrationCallsite.d.ts +0 -4
  263. package/dist/src/core/devVendorPaths.d.ts +0 -17
  264. package/dist/src/core/index.d.ts +0 -7
  265. package/dist/src/core/islandManifest.d.ts +0 -3
  266. package/dist/src/core/islandMarkupAttributes.d.ts +0 -12
  267. package/dist/src/core/islandPageContext.d.ts +0 -12
  268. package/dist/src/core/islandSsr.d.ts +0 -6
  269. package/dist/src/core/islands.d.ts +0 -16
  270. package/dist/src/core/loadIslandRegistry.d.ts +0 -1
  271. package/dist/src/core/lookup.d.ts +0 -1
  272. package/dist/src/core/normalizeIslandProps.d.ts +0 -15
  273. package/dist/src/core/pageHandlers.d.ts +0 -5
  274. package/dist/src/core/prepare.d.ts +0 -417
  275. package/dist/src/core/prerender.d.ts +0 -31
  276. package/dist/src/core/renderIslandMarkup.d.ts +0 -13
  277. package/dist/src/core/responseEnhancers.d.ts +0 -10
  278. package/dist/src/core/staticStreaming.d.ts +0 -25
  279. package/dist/src/core/streamingSlotRegistrar.d.ts +0 -16
  280. package/dist/src/core/streamingSlotRegistry.d.ts +0 -2
  281. package/dist/src/core/streamingSlotWarningScope.d.ts +0 -4
  282. package/dist/src/core/svelteServerModule.d.ts +0 -1
  283. package/dist/src/core/vueServerModule.d.ts +0 -1
  284. package/dist/src/core/wrapPageHandlerWithStreamingSlots.d.ts +0 -2
  285. package/dist/src/dev/angular/fastHmrCompiler.d.ts +0 -58
  286. package/dist/src/dev/angular/hmrCompiler.d.ts +0 -2
  287. package/dist/src/dev/angular/hmrImportGenerator.d.ts +0 -3
  288. package/dist/src/dev/angular/hmrInjectionPlugin.d.ts +0 -8
  289. package/dist/src/dev/angular/resolveOwningComponents.d.ts +0 -16
  290. package/dist/src/dev/angular/vendor/translator/api/ast_factory.d.ts +0 -363
  291. package/dist/src/dev/angular/vendor/translator/api/import_generator.d.ts +0 -49
  292. package/dist/src/dev/angular/vendor/translator/context.d.ts +0 -18
  293. package/dist/src/dev/angular/vendor/translator/translator.d.ts +0 -75
  294. package/dist/src/dev/angular/vendor/translator/ts_util.d.ts +0 -12
  295. package/dist/src/dev/angular/vendor/translator/typescript_ast_factory.d.ts +0 -66
  296. package/dist/src/dev/angular/vendor/translator/typescript_translator.d.ts +0 -13
  297. package/dist/src/dev/assetStore.d.ts +0 -8
  298. package/dist/src/dev/buildHMRClient.d.ts +0 -1
  299. package/dist/src/dev/clientManager.d.ts +0 -33
  300. package/dist/src/dev/configResolver.d.ts +0 -16
  301. package/dist/src/dev/dependencyGraph.d.ts +0 -10
  302. package/dist/src/dev/devCert.d.ts +0 -11
  303. package/dist/src/dev/fileHashTracker.d.ts +0 -2
  304. package/dist/src/dev/fileWatcher.d.ts +0 -4
  305. package/dist/src/dev/moduleMapper.d.ts +0 -27
  306. package/dist/src/dev/moduleServer.d.ts +0 -24
  307. package/dist/src/dev/moduleVersionTracker.d.ts +0 -7
  308. package/dist/src/dev/pathUtils.d.ts +0 -8
  309. package/dist/src/dev/reactComponentClassifier.d.ts +0 -2
  310. package/dist/src/dev/rebuildTrigger.d.ts +0 -11
  311. package/dist/src/dev/requestInspector.d.ts +0 -43
  312. package/dist/src/dev/serverEntryWatcher.d.ts +0 -5
  313. package/dist/src/dev/simpleHTMLHMR.d.ts +0 -4
  314. package/dist/src/dev/simpleHTMXHMR.d.ts +0 -4
  315. package/dist/src/dev/transformCache.d.ts +0 -22
  316. package/dist/src/dev/tunnel/client.d.ts +0 -20
  317. package/dist/src/dev/tunnel/protocol.d.ts +0 -85
  318. package/dist/src/dev/tunnel/relay.d.ts +0 -28
  319. package/dist/src/dev/webSocket.d.ts +0 -9
  320. package/dist/src/ember/browser.d.ts +0 -24
  321. package/dist/src/ember/index.d.ts +0 -2
  322. package/dist/src/ember/pageHandler.d.ts +0 -35
  323. package/dist/src/ember/server.d.ts +0 -2
  324. package/dist/src/index.d.ts +0 -7
  325. package/dist/src/islands/browser.d.ts +0 -3
  326. package/dist/src/islands/index.d.ts +0 -3
  327. package/dist/src/islands/pageMetadata.d.ts +0 -13
  328. package/dist/src/islands/sourceMetadata.d.ts +0 -10
  329. package/dist/src/plugins/devtoolsJson.d.ts +0 -58
  330. package/dist/src/plugins/hmr.d.ts +0 -163
  331. package/dist/src/plugins/imageOptimizer.d.ts +0 -67
  332. package/dist/src/plugins/index.d.ts +0 -3
  333. package/dist/src/plugins/networking.d.ts +0 -2
  334. package/dist/src/plugins/pageRouter.d.ts +0 -1
  335. package/dist/src/react/Island.browser.d.ts +0 -2
  336. package/dist/src/react/Island.d.ts +0 -2
  337. package/dist/src/react/bridgeInternals.d.ts +0 -1
  338. package/dist/src/react/browser.d.ts +0 -3
  339. package/dist/src/react/components/Head.d.ts +0 -2
  340. package/dist/src/react/components/Image.d.ts +0 -2
  341. package/dist/src/react/components/JsonLd.d.ts +0 -4
  342. package/dist/src/react/components/StreamSlot.browser.d.ts +0 -10
  343. package/dist/src/react/components/StreamSlot.d.ts +0 -10
  344. package/dist/src/react/components/SuspenseSlot.browser.d.ts +0 -22
  345. package/dist/src/react/components/SuspenseSlot.d.ts +0 -37
  346. package/dist/src/react/components/browser/index.d.ts +0 -5
  347. package/dist/src/react/components/index.d.ts +0 -5
  348. package/dist/src/react/createIsland.browser.d.ts +0 -2
  349. package/dist/src/react/createIsland.d.ts +0 -2
  350. package/dist/src/react/hooks/index.d.ts +0 -3
  351. package/dist/src/react/hooks/useIslandStore.d.ts +0 -3
  352. package/dist/src/react/hooks/useMediaQuery.d.ts +0 -7
  353. package/dist/src/react/index.d.ts +0 -4
  354. package/dist/src/react/jsxDevRuntimeCompat.d.ts +0 -8
  355. package/dist/src/react/pageHandler.d.ts +0 -25
  356. package/dist/src/react/router/UniversalRouter.d.ts +0 -43
  357. package/dist/src/react/router/browser.d.ts +0 -2
  358. package/dist/src/react/router/index.d.ts +0 -2
  359. package/dist/src/react/server.d.ts +0 -1
  360. package/dist/src/react/staticAnalyzeSpaRoutes.d.ts +0 -7
  361. package/dist/src/svelte/browser.d.ts +0 -4
  362. package/dist/src/svelte/createIsland.browser.d.ts +0 -2
  363. package/dist/src/svelte/createIsland.d.ts +0 -2
  364. package/dist/src/svelte/index.d.ts +0 -6
  365. package/dist/src/svelte/islandStore.d.ts +0 -5
  366. package/dist/src/svelte/lowerAwaitSlotSyntax.d.ts +0 -4
  367. package/dist/src/svelte/lowerIslandSyntax.d.ts +0 -4
  368. package/dist/src/svelte/pageHandler.d.ts +0 -28
  369. package/dist/src/svelte/renderIsland.d.ts +0 -2
  370. package/dist/src/svelte/renderToPipeableStream.d.ts +0 -12
  371. package/dist/src/svelte/renderToReadableStream.d.ts +0 -14
  372. package/dist/src/svelte/renderToString.d.ts +0 -9
  373. package/dist/src/svelte/resolveIslandHtml.browser.d.ts +0 -2
  374. package/dist/src/svelte/resolveIslandHtml.d.ts +0 -2
  375. package/dist/src/svelte/router/browser.d.ts +0 -4
  376. package/dist/src/svelte/router/goto.d.ts +0 -15
  377. package/dist/src/svelte/router/hashMode.d.ts +0 -16
  378. package/dist/src/svelte/router/index.d.ts +0 -4
  379. package/dist/src/svelte/router/matchPath.d.ts +0 -30
  380. package/dist/src/svelte/router/page.svelte.d.ts +0 -15
  381. package/dist/src/svelte/router/prefetchCache.d.ts +0 -17
  382. package/dist/src/svelte/router/pushState.d.ts +0 -13
  383. package/dist/src/svelte/router/viewTransitions.d.ts +0 -6
  384. package/dist/src/svelte/server.d.ts +0 -1
  385. package/dist/src/svelte/staticAnalyzeSpaRoutes.d.ts +0 -7
  386. package/dist/src/utils/buildDirectoryLock.d.ts +0 -28
  387. package/dist/src/utils/cleanStaleOutputs.d.ts +0 -1
  388. package/dist/src/utils/cleanup.d.ts +0 -9
  389. package/dist/src/utils/commonAncestor.d.ts +0 -1
  390. package/dist/src/utils/defineConfig.d.ts +0 -39
  391. package/dist/src/utils/defineConvention.d.ts +0 -3
  392. package/dist/src/utils/defineEnv.d.ts +0 -10
  393. package/dist/src/utils/escapeScriptContent.d.ts +0 -1
  394. package/dist/src/utils/formatBytes.d.ts +0 -2
  395. package/dist/src/utils/generateHeadElement.d.ts +0 -4
  396. package/dist/src/utils/generateSitemap.d.ts +0 -21
  397. package/dist/src/utils/generatedDir.d.ts +0 -3
  398. package/dist/src/utils/getDurationString.d.ts +0 -1
  399. package/dist/src/utils/getEnv.d.ts +0 -1
  400. package/dist/src/utils/imageClient.d.ts +0 -13
  401. package/dist/src/utils/imageProcessing.d.ts +0 -33
  402. package/dist/src/utils/index.d.ts +0 -11
  403. package/dist/src/utils/inlinePageCss.d.ts +0 -2
  404. package/dist/src/utils/instanceRegistry.d.ts +0 -13
  405. package/dist/src/utils/jsonLd.d.ts +0 -3
  406. package/dist/src/utils/loadConfig.d.ts +0 -55
  407. package/dist/src/utils/logger.d.ts +0 -56
  408. package/dist/src/utils/networking.d.ts +0 -2
  409. package/dist/src/utils/normalizePath.d.ts +0 -9
  410. package/dist/src/utils/portScan.d.ts +0 -22
  411. package/dist/src/utils/projectRoot.d.ts +0 -17
  412. package/dist/src/utils/registerClientScript.d.ts +0 -36
  413. package/dist/src/utils/resolveConvention.d.ts +0 -10
  414. package/dist/src/utils/resolveDevPort.d.ts +0 -24
  415. package/dist/src/utils/runtimeMode.d.ts +0 -3
  416. package/dist/src/utils/spaRouteCss.d.ts +0 -4
  417. package/dist/src/utils/spaRouteTypes.d.ts +0 -25
  418. package/dist/src/utils/ssrErrorPage.d.ts +0 -1
  419. package/dist/src/utils/startupBanner.d.ts +0 -10
  420. package/dist/src/utils/startupTimings.d.ts +0 -7
  421. package/dist/src/utils/streamingSlotMetricSink.d.ts +0 -18
  422. package/dist/src/utils/streamingSlots.d.ts +0 -76
  423. package/dist/src/utils/stringModifiers.d.ts +0 -3
  424. package/dist/src/utils/userAgentFunctions.d.ts +0 -1
  425. package/dist/src/utils/validateSafePath.d.ts +0 -1
  426. package/dist/src/vue/Island.browser.d.ts +0 -37
  427. package/dist/src/vue/Island.d.ts +0 -36
  428. package/dist/src/vue/browser.d.ts +0 -6
  429. package/dist/src/vue/components/Image.d.ts +0 -74
  430. package/dist/src/vue/components/StreamSlot.d.ts +0 -22
  431. package/dist/src/vue/components/SuspenseSlot.d.ts +0 -26
  432. package/dist/src/vue/components/index.d.ts +0 -3
  433. package/dist/src/vue/createIsland.browser.d.ts +0 -13
  434. package/dist/src/vue/createIsland.d.ts +0 -13
  435. package/dist/src/vue/defineVuePage.d.ts +0 -6
  436. package/dist/src/vue/index.d.ts +0 -9
  437. package/dist/src/vue/pageHandler.d.ts +0 -45
  438. package/dist/src/vue/routerRedirectProviders.d.ts +0 -45
  439. package/dist/src/vue/server.d.ts +0 -2
  440. package/dist/src/vue/staticAnalyzeSpaRoutes.d.ts +0 -7
  441. package/dist/src/vue/useIslandStore.d.ts +0 -3
  442. package/dist/svelte/browser.js +0 -309
  443. package/dist/svelte/browser.js.map +0 -19
  444. package/dist/svelte/components/AwaitSlot.svelte +0 -39
  445. package/dist/svelte/components/AwaitSlot.svelte.d.ts +0 -2
  446. package/dist/svelte/components/Head.svelte +0 -144
  447. package/dist/svelte/components/Head.svelte.d.ts +0 -2
  448. package/dist/svelte/components/Image.svelte +0 -164
  449. package/dist/svelte/components/Image.svelte.d.ts +0 -5
  450. package/dist/svelte/components/Island.svelte +0 -71
  451. package/dist/svelte/components/Island.svelte.d.ts +0 -5
  452. package/dist/svelte/components/JsonLd.svelte +0 -21
  453. package/dist/svelte/components/JsonLd.svelte.d.ts +0 -2
  454. package/dist/svelte/components/StreamSlot.svelte +0 -41
  455. package/dist/svelte/components/StreamSlot.svelte.d.ts +0 -2
  456. package/dist/svelte/index.js +0 -4371
  457. package/dist/svelte/index.js.map +0 -60
  458. package/dist/svelte/router/Link.svelte +0 -124
  459. package/dist/svelte/router/Link.svelte.d.ts +0 -21
  460. package/dist/svelte/router/Route.svelte +0 -54
  461. package/dist/svelte/router/Route.svelte.d.ts +0 -13
  462. package/dist/svelte/router/Router.svelte +0 -189
  463. package/dist/svelte/router/Router.svelte.d.ts +0 -16
  464. package/dist/svelte/router/browser.ts +0 -14
  465. package/dist/svelte/router/goto.ts +0 -89
  466. package/dist/svelte/router/hashMode.ts +0 -31
  467. package/dist/svelte/router/index.ts +0 -23
  468. package/dist/svelte/router/matchPath.ts +0 -136
  469. package/dist/svelte/router/page.d.ts +0 -15
  470. package/dist/svelte/router/page.js +0 -27
  471. package/dist/svelte/router/prefetchCache.ts +0 -85
  472. package/dist/svelte/router/pushState.ts +0 -35
  473. package/dist/svelte/router/viewTransitions.ts +0 -35
  474. package/dist/svelte/server.js +0 -2996
  475. package/dist/svelte/server.js.map +0 -33
  476. package/dist/types/absoluteConfig.d.ts +0 -22
  477. package/dist/types/angular.d.ts +0 -43
  478. package/dist/types/build.d.ts +0 -245
  479. package/dist/types/cli.d.ts +0 -71
  480. package/dist/types/client.d.ts +0 -70
  481. package/dist/types/config.d.ts +0 -50
  482. package/dist/types/conventions.d.ts +0 -26
  483. package/dist/types/ember.d.ts +0 -39
  484. package/dist/types/env.d.ts +0 -2
  485. package/dist/types/eslintConfig.d.ts +0 -68
  486. package/dist/types/globals.d.ts +0 -163
  487. package/dist/types/image.d.ts +0 -77
  488. package/dist/types/index.d.ts +0 -17
  489. package/dist/types/island.d.ts +0 -52
  490. package/dist/types/jsonLd.d.ts +0 -300
  491. package/dist/types/mediaQuery.d.ts +0 -9
  492. package/dist/types/messages.d.ts +0 -152
  493. package/dist/types/metadata.d.ts +0 -51
  494. package/dist/types/packageJson.d.ts +0 -74
  495. package/dist/types/packageJsonPanel.d.ts +0 -29
  496. package/dist/types/prettier.d.ts +0 -26
  497. package/dist/types/react.d.ts +0 -2
  498. package/dist/types/sitemap.d.ts +0 -24
  499. package/dist/types/style-module-shim.d.ts +0 -29
  500. package/dist/types/svelte.d.ts +0 -2
  501. package/dist/types/svelteRouter.d.ts +0 -65
  502. package/dist/types/svelteRouter.ts +0 -91
  503. package/dist/types/telemetry.d.ts +0 -15
  504. package/dist/types/tool.d.ts +0 -11
  505. package/dist/types/tsconfig.d.ts +0 -31
  506. package/dist/types/typeGuards.d.ts +0 -2
  507. package/dist/types/userAgentTypes.d.ts +0 -2
  508. package/dist/types/vue.d.ts +0 -56
  509. package/dist/types/websocket.d.ts +0 -6
  510. package/dist/vue/browser.js +0 -512
  511. package/dist/vue/browser.js.map +0 -22
  512. package/dist/vue/components/Image.js +0 -264
  513. package/dist/vue/components/Image.js.map +0 -12
  514. package/dist/vue/components/index.js +0 -571
  515. package/dist/vue/components/index.js.map +0 -15
  516. package/dist/vue/index.js +0 -5238
  517. package/dist/vue/index.js.map +0 -69
  518. package/dist/vue/server.js +0 -2251
  519. package/dist/vue/server.js.map +0 -32
@@ -1,364 +0,0 @@
1
- import type {} from '../../../types/globals';
2
- /* HTML + script HMR update handlers */
3
-
4
- import { DOM_UPDATE_DELAY_MS } from '../constants';
5
- import { patchDOMInPlace } from '../domDiff';
6
- import {
7
- saveDOMState,
8
- restoreDOMState,
9
- saveFormState,
10
- restoreFormState,
11
- saveScrollState,
12
- restoreScrollState
13
- } from '../domState';
14
- import { processCSSLinks, waitForCSSAndUpdate } from '../cssUtils';
15
- import { patchHeadInPlace } from '../headPatch';
16
- import { detectCurrentFramework } from '../frameworkDetect';
17
- import type { ScriptInfo } from '../../../types/client';
18
- import { restoreDOMChanges, snapshotDOMChanges } from '../domTracker';
19
- import { hmrState } from '../hmrState';
20
-
21
- const parseHTMLMessage = (
22
- html: string | { body?: string; head?: string } | null | undefined
23
- ) => {
24
- let body: string | null = null;
25
- let head: string | null = null;
26
- if (typeof html === 'string') {
27
- body = html;
28
- } else if (html && typeof html === 'object') {
29
- body = html.body || null;
30
- head = html.head || null;
31
- }
32
-
33
- return { body, head };
34
- };
35
-
36
- const applyHeadPatch = (htmlHead: string | null) => {
37
- if (!htmlHead) {
38
- return;
39
- }
40
-
41
- const doPatchHead = () => {
42
- patchHeadInPlace(htmlHead);
43
- };
44
- if (hmrState.isFirstHMRUpdate) {
45
- setTimeout(doPatchHead, DOM_UPDATE_DELAY_MS);
46
- } else {
47
- doPatchHead();
48
- }
49
- };
50
-
51
- const handleHTMLBodyWithHead = (
52
- htmlBody: string,
53
- htmlHead: string,
54
- htmlDomState: ReturnType<typeof saveDOMState>
55
- ) => {
56
- applyHeadPatch(htmlHead);
57
-
58
- const cssResult = processCSSLinks(htmlHead);
59
-
60
- const updateBodyAfterCSS = () => {
61
- updateHTMLBody(htmlBody, htmlDomState, document.body);
62
- };
63
-
64
- waitForCSSAndUpdate(cssResult, updateBodyAfterCSS);
65
- };
66
-
67
- const handleHTMLBodyWithoutHead = (
68
- htmlBody: string,
69
- htmlDomState: ReturnType<typeof saveDOMState>
70
- ) => {
71
- const container = document.body;
72
- if (!container) {
73
- sessionStorage.removeItem('__HMR_ACTIVE__');
74
-
75
- return;
76
- }
77
-
78
- updateHTMLBodyDirect(htmlBody, htmlDomState, container);
79
- restoreDOMState(container, htmlDomState);
80
- };
81
-
82
- export const handleHTMLUpdate = (message: {
83
- data: {
84
- html?: string | { body?: string; head?: string } | null;
85
- };
86
- }) => {
87
- const htmlFrameworkCheck = detectCurrentFramework();
88
- if (htmlFrameworkCheck !== 'html') {
89
- return;
90
- }
91
-
92
- if (window.__REACT_ROOT__) {
93
- window.__REACT_ROOT__ = undefined;
94
- }
95
-
96
- sessionStorage.setItem('__HMR_ACTIVE__', 'true');
97
-
98
- const htmlDomState = saveDOMState(document.body);
99
- const { body: htmlBody, head: htmlHead } = parseHTMLMessage(
100
- message.data.html
101
- );
102
-
103
- if (!htmlBody) {
104
- sessionStorage.removeItem('__HMR_ACTIVE__');
105
-
106
- return;
107
- }
108
-
109
- if (htmlHead) {
110
- handleHTMLBodyWithHead(htmlBody, htmlHead, htmlDomState);
111
- } else {
112
- handleHTMLBodyWithoutHead(htmlBody, htmlDomState);
113
- }
114
- };
115
- export const handleScriptUpdate = (message: {
116
- data: { framework?: string; scriptPath?: string };
117
- }) => {
118
- const scriptFramework = message.data.framework;
119
- const currentFw = detectCurrentFramework();
120
-
121
- if (currentFw !== scriptFramework) {
122
- return;
123
- }
124
-
125
- const { scriptPath } = message.data;
126
- if (!scriptPath) {
127
- console.warn('[HMR] No script path in update');
128
-
129
- return;
130
- }
131
-
132
- const interactiveSelectors =
133
- 'button, [onclick], [onchange], [oninput], details, input, select, textarea';
134
- document.body.querySelectorAll(interactiveSelectors).forEach((elem) => {
135
- const cloned = elem.cloneNode(true);
136
- if (elem.parentNode) {
137
- elem.parentNode.replaceChild(cloned, elem);
138
- }
139
- });
140
-
141
- const cacheBustedPath = `${scriptPath}?t=${Date.now()}`;
142
- import(cacheBustedPath)
143
- .then(() => true)
144
- .catch((err: unknown) => {
145
- console.error(
146
- '[HMR] Script hot-reload failed, falling back to page reload:',
147
- err
148
- );
149
- window.location.reload();
150
- });
151
- };
152
-
153
- const saveHTMLState = () => {
154
- const forms = saveFormState();
155
- const scroll = saveScrollState();
156
-
157
- return { forms, scroll };
158
- };
159
-
160
- const preserveHmrScript = (
161
- container: HTMLElement,
162
- hmrScript: Element | null
163
- ) => {
164
- if (hmrScript && !container.querySelector('script[data-hmr-client]')) {
165
- container.appendChild(hmrScript);
166
- }
167
- };
168
-
169
- const updateHTMLBody = (
170
- htmlBody: string,
171
- htmlDomState: ReturnType<typeof saveDOMState>,
172
- container: HTMLElement
173
- ) => {
174
- if (!container) {
175
- return;
176
- }
177
-
178
- const savedState = saveHTMLState();
179
- const domSnapshot = snapshotDOMChanges(container);
180
-
181
- const existingScripts = collectScripts(container);
182
- const hmrScript = container.querySelector('script[data-hmr-client]');
183
- const tempDiv = document.createElement('div');
184
- tempDiv.innerHTML = htmlBody;
185
- const newScripts = collectScriptsFromElement(tempDiv);
186
-
187
- const htmlStructureChanged = didHTMLStructureChange(container, tempDiv);
188
-
189
- if (htmlStructureChanged || didScriptsChange(existingScripts, newScripts)) {
190
- patchDOMInPlace(container, htmlBody);
191
- restoreDOMChanges(container, domSnapshot, htmlBody);
192
- }
193
-
194
- preserveHmrScript(container, hmrScript);
195
-
196
- requestAnimationFrame(() => {
197
- restoreDOMState(container, htmlDomState);
198
- restoreFormState(savedState.forms);
199
- restoreScrollState(savedState.scroll);
200
-
201
- if (
202
- didScriptsChange(existingScripts, newScripts) ||
203
- htmlStructureChanged
204
- ) {
205
- cloneInteractiveElements(container);
206
- reExecuteScripts(container, newScripts);
207
- }
208
- });
209
- sessionStorage.removeItem('__HMR_ACTIVE__');
210
- };
211
-
212
- const cloneHmrListenerElements = (container: HTMLElement) => {
213
- container
214
- .querySelectorAll('[data-hmr-listeners-attached]')
215
- .forEach((elem) => {
216
- const cloned = elem.cloneNode(true);
217
- if (elem.parentNode) {
218
- elem.parentNode.replaceChild(cloned, elem);
219
- }
220
- if (cloned instanceof Element) {
221
- cloned.removeAttribute('data-hmr-listeners-attached');
222
- }
223
- });
224
- };
225
-
226
- const replaceInlineScript = (script: Element) => {
227
- if (script.hasAttribute('data-hmr-client')) {
228
- return;
229
- }
230
-
231
- const newScript = document.createElement('script');
232
- newScript.textContent = script.textContent || '';
233
- const scriptEl = script instanceof HTMLScriptElement ? script : null;
234
- newScript.type = scriptEl?.type || 'text/javascript';
235
- if (script.parentNode) {
236
- script.parentNode.replaceChild(newScript, script);
237
- }
238
- };
239
-
240
- const updateHTMLBodyDirect = (
241
- htmlBody: string,
242
- htmlDomState: ReturnType<typeof saveDOMState>,
243
- container: HTMLElement
244
- ) => {
245
- const savedState = saveHTMLState();
246
- const domSnapshot = snapshotDOMChanges(container);
247
-
248
- const tempDiv = document.createElement('div');
249
- tempDiv.innerHTML = htmlBody;
250
- const newScripts = collectScriptsFromElement(tempDiv);
251
- const hmrScript = container.querySelector('script[data-hmr-client]');
252
-
253
- patchDOMInPlace(container, htmlBody);
254
- restoreDOMChanges(container, domSnapshot, htmlBody);
255
-
256
- preserveHmrScript(container, hmrScript);
257
-
258
- requestAnimationFrame(() => {
259
- restoreDOMState(container, htmlDomState);
260
- restoreFormState(savedState.forms);
261
- restoreScrollState(savedState.scroll);
262
-
263
- cloneHmrListenerElements(container);
264
-
265
- removeOldScripts(container);
266
- newScripts.forEach((scriptInfo) => {
267
- const newScript = document.createElement('script');
268
- const separator = scriptInfo.src.includes('?') ? '&' : '?';
269
- newScript.src = `${scriptInfo.src + separator}t=${Date.now()}`;
270
- newScript.type = scriptInfo.type;
271
- container.appendChild(newScript);
272
- });
273
-
274
- const inlineScripts = container.querySelectorAll('script:not([src])');
275
- inlineScripts.forEach(replaceInlineScript);
276
- });
277
- sessionStorage.removeItem('__HMR_ACTIVE__');
278
- };
279
-
280
- /* Shared helpers for HTML body updates */
281
-
282
- const collectScripts = (container: HTMLElement) =>
283
- Array.from(container.querySelectorAll('script[src]')).map((script) => ({
284
- src: script.getAttribute('src') || '',
285
- type: script.getAttribute('type') || 'text/javascript'
286
- }));
287
-
288
- const collectScriptsFromElement = (elem: HTMLElement) =>
289
- Array.from(elem.querySelectorAll('script[src]')).map((script) => ({
290
- src: script.getAttribute('src') || '',
291
- type: script.getAttribute('type') || 'text/javascript'
292
- }));
293
-
294
- const didScriptsChange = (oldScripts: ScriptInfo[], newScripts: ScriptInfo[]) =>
295
- oldScripts.length !== newScripts.length ||
296
- oldScripts.some((oldScript, idx) => {
297
- const [oldSrcBase] = oldScript.src.split('?')[0]?.split('&') ?? [''];
298
- const newScript = newScripts[idx];
299
- if (!newScript) return true;
300
- const [newSrcBase] = newScript.src.split('?')[0]?.split('&') ?? [''];
301
-
302
- return oldSrcBase !== newSrcBase;
303
- });
304
-
305
- const normalizeHTMLForComparison = (element: HTMLElement) => {
306
- const clonedNode = element.cloneNode(true);
307
- if (!(clonedNode instanceof HTMLElement)) return '';
308
- const clone = clonedNode;
309
- const scripts = clone.querySelectorAll('script');
310
- scripts.forEach((script) => {
311
- if (script.parentNode) {
312
- script.parentNode.removeChild(script);
313
- }
314
- });
315
- const allElements = clone.querySelectorAll('*');
316
- allElements.forEach((elem) => {
317
- elem.removeAttribute('data-hmr-listeners-attached');
318
- });
319
- if (clone.removeAttribute) {
320
- clone.removeAttribute('data-hmr-listeners-attached');
321
- }
322
-
323
- return clone.innerHTML;
324
- };
325
-
326
- const didHTMLStructureChange = (container: HTMLElement, tempDiv: HTMLElement) =>
327
- normalizeHTMLForComparison(container) !==
328
- normalizeHTMLForComparison(tempDiv);
329
-
330
- const cloneInteractiveElements = (container: HTMLElement) => {
331
- const interactiveSelectors =
332
- 'button, [onclick], [onchange], [oninput], [onsubmit], ' +
333
- 'details, input[type="button"], input[type="submit"], input[type="reset"]';
334
- container.querySelectorAll(interactiveSelectors).forEach((elem) => {
335
- const cloned = elem.cloneNode(true);
336
- if (elem.parentNode) {
337
- elem.parentNode.replaceChild(cloned, elem);
338
- }
339
- });
340
- };
341
-
342
- const removeOldScripts = (container: HTMLElement) => {
343
- const scriptsInNewHTML = container.querySelectorAll('script[src]');
344
- scriptsInNewHTML.forEach((script) => {
345
- if (!script.hasAttribute('data-hmr-client')) {
346
- script.remove();
347
- }
348
- });
349
- };
350
-
351
- const reExecuteScripts = (container: HTMLElement, newScripts: ScriptInfo[]) => {
352
- removeOldScripts(container);
353
-
354
- newScripts.forEach((scriptInfo) => {
355
- const newScript = document.createElement('script');
356
- const separator = scriptInfo.src.includes('?') ? '&' : '?';
357
- newScript.src = `${scriptInfo.src + separator}t=${Date.now()}`;
358
- newScript.type = scriptInfo.type;
359
- container.appendChild(newScript);
360
- });
361
-
362
- const inlineScripts = container.querySelectorAll('script:not([src])');
363
- inlineScripts.forEach(replaceInlineScript);
364
- };
@@ -1,278 +0,0 @@
1
- import type {} from '../../../types/globals';
2
- /* HTMX HMR update handler */
3
-
4
- import { DOM_UPDATE_DELAY_MS } from '../constants';
5
- import { patchDOMInPlace } from '../domDiff';
6
- import {
7
- saveDOMState,
8
- restoreDOMState,
9
- saveFormState,
10
- restoreFormState,
11
- saveScrollState,
12
- restoreScrollState
13
- } from '../domState';
14
- import { processCSSLinks, waitForCSSAndUpdate } from '../cssUtils';
15
- import { patchHeadInPlace } from '../headPatch';
16
- import { detectCurrentFramework } from '../frameworkDetect';
17
- import { type HTMXSavedState, type ScriptInfo } from '../../../types/client';
18
- import { hmrState } from '../hmrState';
19
-
20
- const parseHTMXMessage = (
21
- html: string | { body?: string; head?: string } | null | undefined
22
- ) => {
23
- let body: string | null = null;
24
- let head: string | null = null;
25
- if (typeof html === 'string') {
26
- body = html;
27
- } else if (html && typeof html === 'object') {
28
- body = html.body || null;
29
- head = html.head || null;
30
- }
31
-
32
- return { body, head };
33
- };
34
-
35
- const applyHeadPatch = (htmxHead: string | null) => {
36
- if (!htmxHead) {
37
- return;
38
- }
39
-
40
- const doPatchHead = () => {
41
- patchHeadInPlace(htmxHead);
42
- };
43
- if (hmrState.isFirstHMRUpdate) {
44
- setTimeout(doPatchHead, DOM_UPDATE_DELAY_MS);
45
- } else {
46
- doPatchHead();
47
- }
48
- };
49
-
50
- const handleHTMXBodyUpdate = (
51
- htmxBody: string,
52
- htmxHead: string | null,
53
- htmxDomState: ReturnType<typeof saveDOMState>
54
- ) => {
55
- const updateHTMXBodyAfterCSS = () => {
56
- updateHTMXBody(htmxBody, htmxDomState, document.body);
57
- };
58
-
59
- if (htmxHead) {
60
- applyHeadPatch(htmxHead);
61
- const cssResult = processCSSLinks(htmxHead);
62
- waitForCSSAndUpdate(cssResult, updateHTMXBodyAfterCSS);
63
- } else {
64
- updateHTMXBodyAfterCSS();
65
- }
66
- };
67
-
68
- export const handleHTMXUpdate = (message: {
69
- data: {
70
- html?: string | { body?: string; head?: string } | null;
71
- };
72
- }) => {
73
- const htmxFrameworkCheck = detectCurrentFramework();
74
- if (htmxFrameworkCheck !== 'htmx') return;
75
-
76
- if (window.__REACT_ROOT__) {
77
- window.__REACT_ROOT__ = undefined;
78
- }
79
-
80
- sessionStorage.setItem('__HMR_ACTIVE__', 'true');
81
-
82
- const htmxDomState = saveDOMState(document.body);
83
- const { body: htmxBody, head: htmxHead } = parseHTMXMessage(
84
- message.data.html
85
- );
86
-
87
- if (!htmxBody) {
88
- sessionStorage.removeItem('__HMR_ACTIVE__');
89
-
90
- return;
91
- }
92
-
93
- handleHTMXBodyUpdate(htmxBody, htmxHead, htmxDomState);
94
- };
95
-
96
- const cloneHmrListenerElements = (container: HTMLElement) => {
97
- container
98
- .querySelectorAll('[data-hmr-listeners-attached]')
99
- .forEach((elem) => {
100
- const cloned = elem.cloneNode(true);
101
- if (!(cloned instanceof Element)) return;
102
- if (elem.parentNode) {
103
- elem.parentNode.replaceChild(cloned, elem);
104
- }
105
- cloned.removeAttribute('data-hmr-listeners-attached');
106
- });
107
- };
108
-
109
- const removeOldScripts = (container: HTMLElement) => {
110
- const scriptsInNewHTML = container.querySelectorAll('script[src]');
111
- scriptsInNewHTML.forEach((script) => {
112
- if (!script.hasAttribute('data-hmr-client')) {
113
- script.remove();
114
- }
115
- });
116
- };
117
-
118
- const addNewScripts = (container: HTMLElement, newScripts: ScriptInfo[]) => {
119
- newScripts.forEach((scriptInfo) => {
120
- const newScript = document.createElement('script');
121
- const separator = scriptInfo.src.includes('?') ? '&' : '?';
122
- newScript.src = `${scriptInfo.src + separator}t=${Date.now()}`;
123
- newScript.type = scriptInfo.type;
124
- container.appendChild(newScript);
125
- });
126
- };
127
-
128
- const replaceInlineScript = (script: Element) => {
129
- if (script.hasAttribute('data-hmr-client')) {
130
- return;
131
- }
132
-
133
- const newScript = document.createElement('script');
134
- newScript.textContent = script.textContent || '';
135
- newScript.type = script.getAttribute('type') || 'text/javascript';
136
- if (script.parentNode) {
137
- script.parentNode.replaceChild(newScript, script);
138
- }
139
- };
140
-
141
- const reExecuteScripts = (container: HTMLElement, newScripts: ScriptInfo[]) => {
142
- removeOldScripts(container);
143
- addNewScripts(container, newScripts);
144
-
145
- const inlineScripts = container.querySelectorAll('script:not([src])');
146
- inlineScripts.forEach(replaceInlineScript);
147
- };
148
-
149
- const handleScriptsAndStructureChange = (
150
- container: HTMLElement,
151
- newScripts: ScriptInfo[]
152
- ) => {
153
- cloneHmrListenerElements(container);
154
- reExecuteScripts(container, newScripts);
155
- };
156
-
157
- const restoreCounterSpan = (
158
- container: HTMLElement,
159
- count: number | undefined
160
- ) => {
161
- const newCountSpan = container.querySelector('#count');
162
- if (newCountSpan && count !== undefined) {
163
- newCountSpan.textContent = String(count);
164
- }
165
- };
166
-
167
- const updateHTMXBody = (
168
- htmxBody: string,
169
- htmxDomState: ReturnType<typeof saveDOMState>,
170
- container: HTMLElement
171
- ) => {
172
- if (!container) return;
173
-
174
- const countSpan = container.querySelector('#count');
175
- const countValue = countSpan
176
- ? parseInt(countSpan.textContent || '0', 10)
177
- : 0;
178
-
179
- const savedState: HTMXSavedState = {
180
- componentState: { count: countValue },
181
- forms: saveFormState(),
182
- scroll: saveScrollState()
183
- };
184
-
185
- const existingScripts = collectScripts(container);
186
-
187
- const tempDiv = document.createElement('div');
188
- tempDiv.innerHTML = htmxBody;
189
-
190
- if (savedState.componentState.count !== undefined) {
191
- restoreCounterSpan(tempDiv, savedState.componentState.count);
192
- }
193
-
194
- const patchedBody = tempDiv.innerHTML;
195
- const newScripts = collectScriptsFromElement(tempDiv);
196
- const scriptsChanged = didScriptsChange(existingScripts, newScripts);
197
-
198
- const htmlStructureChanged = didHTMLStructureChange(container, tempDiv);
199
-
200
- const hmrScript = container.querySelector('script[data-hmr-client]');
201
-
202
- patchDOMInPlace(container, patchedBody);
203
-
204
- if (hmrScript && !container.querySelector('script[data-hmr-client]')) {
205
- container.appendChild(hmrScript);
206
- }
207
-
208
- requestAnimationFrame(() => {
209
- restoreFormState(savedState.forms);
210
- restoreScrollState(savedState.scroll);
211
- restoreCounterSpan(container, savedState.componentState.count);
212
- restoreDOMState(container, htmxDomState);
213
-
214
- if (scriptsChanged || htmlStructureChanged) {
215
- handleScriptsAndStructureChange(container, newScripts);
216
- }
217
-
218
- if (window.htmx) {
219
- window.htmx.process(container);
220
- }
221
- });
222
- sessionStorage.removeItem('__HMR_ACTIVE__');
223
- };
224
-
225
- /* Shared helpers */
226
-
227
- const collectScripts = (container: HTMLElement) =>
228
- Array.from(container.querySelectorAll('script[src]')).map((script) => ({
229
- src: script.getAttribute('src') || '',
230
- type: script.getAttribute('type') || 'text/javascript'
231
- }));
232
-
233
- const collectScriptsFromElement = (elem: HTMLElement) =>
234
- Array.from(elem.querySelectorAll('script[src]')).map((script) => ({
235
- src: script.getAttribute('src') || '',
236
- type: script.getAttribute('type') || 'text/javascript'
237
- }));
238
-
239
- const didScriptsChange = (oldScripts: ScriptInfo[], newScripts: ScriptInfo[]) =>
240
- oldScripts.length !== newScripts.length ||
241
- oldScripts.some((oldScript, idx) => {
242
- const [oldBeforeQuery = ''] = oldScript.src.split('?');
243
- const [oldSrcBase] = oldBeforeQuery.split('&');
244
- const newScript = newScripts[idx];
245
- if (!newScript) return true;
246
- const [newBeforeQuery = ''] = newScript.src.split('?');
247
- const [newSrcBase] = newBeforeQuery.split('&');
248
-
249
- return oldSrcBase !== newSrcBase;
250
- });
251
-
252
- const normalizeHTMLForComparison = (element: HTMLElement) => {
253
- const clonedNode = element.cloneNode(true);
254
- if (!(clonedNode instanceof HTMLElement)) {
255
- return element.innerHTML;
256
- }
257
-
258
- const clone = clonedNode;
259
- const scripts = clone.querySelectorAll('script');
260
- scripts.forEach((script) => {
261
- if (script.parentNode) {
262
- script.parentNode.removeChild(script);
263
- }
264
- });
265
- const allElements = clone.querySelectorAll('*');
266
- allElements.forEach((elem) => {
267
- elem.removeAttribute('data-hmr-listeners-attached');
268
- });
269
- if (clone.removeAttribute) {
270
- clone.removeAttribute('data-hmr-listeners-attached');
271
- }
272
-
273
- return clone.innerHTML;
274
- };
275
-
276
- const didHTMLStructureChange = (container: HTMLElement, tempDiv: HTMLElement) =>
277
- normalizeHTMLForComparison(container) !==
278
- normalizeHTMLForComparison(tempDiv);