@absolutejs/absolute 0.19.0-beta.807 → 0.19.0-beta.809

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 (260) hide show
  1. package/dist/angular/browser.js +9801 -57
  2. package/dist/angular/browser.js.map +246 -4
  3. package/dist/angular/components/core/streamingSlotRegistrar.js +1 -1
  4. package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
  5. package/dist/angular/index.js +14877 -60
  6. package/dist/angular/index.js.map +281 -4
  7. package/dist/angular/server.js +5610 -45
  8. package/dist/angular/server.js.map +51 -3
  9. package/dist/build.js +18092 -45
  10. package/dist/build.js.map +99 -3
  11. package/dist/cli/index.js +317 -86
  12. package/dist/client/index.js +1091 -70
  13. package/dist/client/index.js.map +24 -4
  14. package/dist/core/streamingSlotRegistrar.js +108 -11
  15. package/dist/core/streamingSlotRegistrar.js.map +4 -3
  16. package/dist/core/streamingSlotRegistry.js +169 -7
  17. package/dist/core/streamingSlotRegistry.js.map +5 -3
  18. package/dist/index.js +19957 -547
  19. package/dist/index.js.map +116 -3
  20. package/dist/islands/browser.js +228 -9
  21. package/dist/islands/browser.js.map +9 -4
  22. package/dist/islands/index.js +1908 -17
  23. package/dist/islands/index.js.map +27 -3
  24. package/dist/react/browser.js +328 -12
  25. package/dist/react/browser.js.map +12 -4
  26. package/dist/react/components/index.js +167 -16
  27. package/dist/react/components/index.js.map +6 -3
  28. package/dist/react/hooks/index.js +183 -8
  29. package/dist/react/hooks/index.js.map +7 -3
  30. package/dist/react/index.js +3627 -36
  31. package/dist/react/index.js.map +45 -4
  32. package/dist/react/jsxDevRuntimeCompat.js +61 -2
  33. package/dist/react/jsxDevRuntimeCompat.js.map +2 -2
  34. package/dist/react/server.js +1789 -18
  35. package/dist/react/server.js.map +21 -3
  36. package/dist/src/angular/injectorPatch.d.ts +1 -0
  37. package/dist/src/angular/islands.d.ts +1 -0
  38. package/dist/src/client/hydrators/react.d.ts +3 -0
  39. package/dist/src/client/hydrators/svelte.d.ts +2 -0
  40. package/dist/src/client/hydrators/vue.d.ts +2 -0
  41. package/dist/src/index.d.ts +1 -0
  42. package/dist/svelte/browser.js +247 -12
  43. package/dist/svelte/browser.js.map +10 -3
  44. package/dist/svelte/index.js +3732 -37
  45. package/dist/svelte/index.js.map +47 -4
  46. package/dist/svelte/server.js +2794 -21
  47. package/dist/svelte/server.js.map +27 -3
  48. package/dist/vue/browser.js +348 -12
  49. package/dist/vue/browser.js.map +12 -4
  50. package/dist/vue/components/Image.js +240 -7
  51. package/dist/vue/components/Image.js.map +6 -3
  52. package/dist/vue/components/index.js +544 -11
  53. package/dist/vue/components/index.js.map +9 -3
  54. package/dist/vue/index.js +4212 -52
  55. package/dist/vue/index.js.map +50 -4
  56. package/dist/vue/server.js +1849 -18
  57. package/dist/vue/server.js.map +21 -3
  58. package/package.json +1 -1
  59. package/dist/chunk-0867j0r0.js +0 -136
  60. package/dist/chunk-0867j0r0.js.map +0 -10
  61. package/dist/chunk-102fp7xe.js +0 -63
  62. package/dist/chunk-102fp7xe.js.map +0 -10
  63. package/dist/chunk-11zpfqz6.js +0 -19
  64. package/dist/chunk-11zpfqz6.js.map +0 -10
  65. package/dist/chunk-1rfh7hw9.js +0 -319
  66. package/dist/chunk-1rfh7hw9.js.map +0 -11
  67. package/dist/chunk-1x4fxm57.js +0 -51
  68. package/dist/chunk-1x4fxm57.js.map +0 -9
  69. package/dist/chunk-25v9t56f.js +0 -29
  70. package/dist/chunk-25v9t56f.js.map +0 -11
  71. package/dist/chunk-2f21eenc.js +0 -21
  72. package/dist/chunk-2f21eenc.js.map +0 -10
  73. package/dist/chunk-2ga2znex.js +0 -13
  74. package/dist/chunk-2ga2znex.js.map +0 -9
  75. package/dist/chunk-30yrw0f6.js +0 -33
  76. package/dist/chunk-30yrw0f6.js.map +0 -10
  77. package/dist/chunk-3g91wb4f.js +0 -358
  78. package/dist/chunk-3g91wb4f.js.map +0 -10
  79. package/dist/chunk-3rea1gam.js +0 -4403
  80. package/dist/chunk-3rea1gam.js.map +0 -28
  81. package/dist/chunk-3yjzpcne.js +0 -34
  82. package/dist/chunk-3yjzpcne.js.map +0 -10
  83. package/dist/chunk-41bf6aqt.js +0 -17
  84. package/dist/chunk-41bf6aqt.js.map +0 -9
  85. package/dist/chunk-4d39r92n.js +0 -81
  86. package/dist/chunk-4d39r92n.js.map +0 -10
  87. package/dist/chunk-5003emhv.js +0 -17
  88. package/dist/chunk-5003emhv.js.map +0 -10
  89. package/dist/chunk-5f67rsed.js +0 -466
  90. package/dist/chunk-5f67rsed.js.map +0 -10
  91. package/dist/chunk-5fhp1jap.js +0 -9169
  92. package/dist/chunk-5fhp1jap.js.map +0 -236
  93. package/dist/chunk-629x0yh4.js +0 -20
  94. package/dist/chunk-629x0yh4.js.map +0 -9
  95. package/dist/chunk-6pdj08z3.js +0 -73
  96. package/dist/chunk-6pdj08z3.js.map +0 -12
  97. package/dist/chunk-6qjbrt0k.js +0 -13
  98. package/dist/chunk-6qjbrt0k.js.map +0 -9
  99. package/dist/chunk-6sccb4jr.js +0 -14
  100. package/dist/chunk-6sccb4jr.js.map +0 -9
  101. package/dist/chunk-798spvzv.js +0 -50
  102. package/dist/chunk-798spvzv.js.map +0 -10
  103. package/dist/chunk-7fw6x3js.js +0 -131
  104. package/dist/chunk-7fw6x3js.js.map +0 -11
  105. package/dist/chunk-7kjj42xm.js +0 -11
  106. package/dist/chunk-7kjj42xm.js.map +0 -10
  107. package/dist/chunk-7mtstdqn.js +0 -90
  108. package/dist/chunk-7mtstdqn.js.map +0 -10
  109. package/dist/chunk-851whwc7.js +0 -17
  110. package/dist/chunk-851whwc7.js.map +0 -10
  111. package/dist/chunk-85n68sy6.js +0 -103
  112. package/dist/chunk-85n68sy6.js.map +0 -10
  113. package/dist/chunk-8kcfffry.js +0 -35
  114. package/dist/chunk-8kcfffry.js.map +0 -10
  115. package/dist/chunk-92fsjfpp.js +0 -1731
  116. package/dist/chunk-92fsjfpp.js.map +0 -11
  117. package/dist/chunk-93sqk7be.js +0 -139
  118. package/dist/chunk-93sqk7be.js.map +0 -12
  119. package/dist/chunk-9c5tj4k3.js +0 -130
  120. package/dist/chunk-9c5tj4k3.js.map +0 -10
  121. package/dist/chunk-9j59emg3.js +0 -184
  122. package/dist/chunk-9j59emg3.js.map +0 -11
  123. package/dist/chunk-9ve9jq72.js +0 -203
  124. package/dist/chunk-9ve9jq72.js.map +0 -10
  125. package/dist/chunk-9xrsjeem.js +0 -12
  126. package/dist/chunk-9xrsjeem.js.map +0 -9
  127. package/dist/chunk-a9mvyp04.js +0 -87
  128. package/dist/chunk-a9mvyp04.js.map +0 -10
  129. package/dist/chunk-b3gbnrwe.js +0 -21
  130. package/dist/chunk-b3gbnrwe.js.map +0 -10
  131. package/dist/chunk-bgb8k1qs.js +0 -672
  132. package/dist/chunk-bgb8k1qs.js.map +0 -15
  133. package/dist/chunk-bmgqm774.js +0 -65
  134. package/dist/chunk-bmgqm774.js.map +0 -9
  135. package/dist/chunk-bxfghpma.js +0 -69
  136. package/dist/chunk-bxfghpma.js.map +0 -10
  137. package/dist/chunk-c1jfjnka.js +0 -74
  138. package/dist/chunk-c1jfjnka.js.map +0 -10
  139. package/dist/chunk-cbkrwmvh.js +0 -80
  140. package/dist/chunk-cbkrwmvh.js.map +0 -10
  141. package/dist/chunk-cdxd7sy2.js +0 -71
  142. package/dist/chunk-cdxd7sy2.js.map +0 -10
  143. package/dist/chunk-cg95827x.js +0 -21
  144. package/dist/chunk-cg95827x.js.map +0 -10
  145. package/dist/chunk-cm0g4q6w.js +0 -149
  146. package/dist/chunk-cm0g4q6w.js.map +0 -10
  147. package/dist/chunk-d7mwkzry.js +0 -261
  148. package/dist/chunk-d7mwkzry.js.map +0 -10
  149. package/dist/chunk-d9c0am65.js +0 -12
  150. package/dist/chunk-d9c0am65.js.map +0 -10
  151. package/dist/chunk-daqghmg8.js +0 -12
  152. package/dist/chunk-daqghmg8.js.map +0 -9
  153. package/dist/chunk-e3r9fxaa.js +0 -149
  154. package/dist/chunk-e3r9fxaa.js.map +0 -10
  155. package/dist/chunk-e8eecyrq.js +0 -244
  156. package/dist/chunk-e8eecyrq.js.map +0 -10
  157. package/dist/chunk-ex2hxe0v.js +0 -160
  158. package/dist/chunk-ex2hxe0v.js.map +0 -11
  159. package/dist/chunk-fak944et.js +0 -91
  160. package/dist/chunk-fak944et.js.map +0 -10
  161. package/dist/chunk-fygx2ymm.js +0 -118
  162. package/dist/chunk-fygx2ymm.js.map +0 -12
  163. package/dist/chunk-g15qj669.js +0 -271
  164. package/dist/chunk-g15qj669.js.map +0 -11
  165. package/dist/chunk-gd6wmknh.js +0 -121
  166. package/dist/chunk-gd6wmknh.js.map +0 -11
  167. package/dist/chunk-gf0ygptk.js +0 -85
  168. package/dist/chunk-gf0ygptk.js.map +0 -11
  169. package/dist/chunk-gytkmthr.js +0 -220
  170. package/dist/chunk-gytkmthr.js.map +0 -10
  171. package/dist/chunk-h5bbfn3n.js +0 -28
  172. package/dist/chunk-h5bbfn3n.js.map +0 -11
  173. package/dist/chunk-h6mye9r3.js +0 -93
  174. package/dist/chunk-h6mye9r3.js.map +0 -10
  175. package/dist/chunk-hcsmxw1v.js +0 -85
  176. package/dist/chunk-hcsmxw1v.js.map +0 -10
  177. package/dist/chunk-hyjs4bqs.js +0 -8
  178. package/dist/chunk-hyjs4bqs.js.map +0 -10
  179. package/dist/chunk-jn91vzkh.js +0 -66
  180. package/dist/chunk-jn91vzkh.js.map +0 -10
  181. package/dist/chunk-jpkjdgsk.js +0 -167
  182. package/dist/chunk-jpkjdgsk.js.map +0 -11
  183. package/dist/chunk-jwxt8gnp.js +0 -13
  184. package/dist/chunk-jwxt8gnp.js.map +0 -9
  185. package/dist/chunk-kk8w9rh5.js +0 -195
  186. package/dist/chunk-kk8w9rh5.js.map +0 -10
  187. package/dist/chunk-kwgh8rmg.js +0 -426
  188. package/dist/chunk-kwgh8rmg.js.map +0 -14
  189. package/dist/chunk-m97ze5hz.js +0 -46
  190. package/dist/chunk-m97ze5hz.js.map +0 -10
  191. package/dist/chunk-mbazhahf.js +0 -60
  192. package/dist/chunk-mbazhahf.js.map +0 -10
  193. package/dist/chunk-mgfwq18r.js +0 -15
  194. package/dist/chunk-mgfwq18r.js.map +0 -9
  195. package/dist/chunk-mtgf69xn.js +0 -88
  196. package/dist/chunk-mtgf69xn.js.map +0 -10
  197. package/dist/chunk-mtxzyxpg.js +0 -102
  198. package/dist/chunk-mtxzyxpg.js.map +0 -10
  199. package/dist/chunk-nehhtthw.js +0 -225
  200. package/dist/chunk-nehhtthw.js.map +0 -10
  201. package/dist/chunk-p5504p14.js +0 -16
  202. package/dist/chunk-p5504p14.js.map +0 -10
  203. package/dist/chunk-p5zgj77m.js +0 -184
  204. package/dist/chunk-p5zgj77m.js.map +0 -10
  205. package/dist/chunk-pnscgw95.js +0 -90
  206. package/dist/chunk-pnscgw95.js.map +0 -10
  207. package/dist/chunk-pvpp4pvs.js +0 -17
  208. package/dist/chunk-pvpp4pvs.js.map +0 -10
  209. package/dist/chunk-qh75agse.js +0 -95
  210. package/dist/chunk-qh75agse.js.map +0 -10
  211. package/dist/chunk-qxq2zcty.js +0 -52
  212. package/dist/chunk-qxq2zcty.js.map +0 -10
  213. package/dist/chunk-r6e8pytx.js +0 -22
  214. package/dist/chunk-r6e8pytx.js.map +0 -9
  215. package/dist/chunk-r7jmgqnw.js +0 -114
  216. package/dist/chunk-r7jmgqnw.js.map +0 -10
  217. package/dist/chunk-s6defjk2.js +0 -116
  218. package/dist/chunk-s6defjk2.js.map +0 -10
  219. package/dist/chunk-sd39p726.js +0 -619
  220. package/dist/chunk-sd39p726.js.map +0 -10
  221. package/dist/chunk-swrnzs4c.js +0 -63
  222. package/dist/chunk-swrnzs4c.js.map +0 -10
  223. package/dist/chunk-tfe3sb44.js +0 -33
  224. package/dist/chunk-tfe3sb44.js.map +0 -10
  225. package/dist/chunk-tjr0kcev.js +0 -41
  226. package/dist/chunk-tjr0kcev.js.map +0 -9
  227. package/dist/chunk-tx9edm1x.js +0 -34
  228. package/dist/chunk-tx9edm1x.js.map +0 -10
  229. package/dist/chunk-txhm2vb5.js +0 -18
  230. package/dist/chunk-txhm2vb5.js.map +0 -9
  231. package/dist/chunk-v5vmsxmy.js +0 -526
  232. package/dist/chunk-v5vmsxmy.js.map +0 -12
  233. package/dist/chunk-vjhxm8n2.js +0 -29
  234. package/dist/chunk-vjhxm8n2.js.map +0 -9
  235. package/dist/chunk-vkrpm7kc.js +0 -247
  236. package/dist/chunk-vkrpm7kc.js.map +0 -12
  237. package/dist/chunk-w3m4m5we.js +0 -4925
  238. package/dist/chunk-w3m4m5we.js.map +0 -12
  239. package/dist/chunk-wrxtn9ve.js +0 -18
  240. package/dist/chunk-wrxtn9ve.js.map +0 -10
  241. package/dist/chunk-x09cskqd.js +0 -377
  242. package/dist/chunk-x09cskqd.js.map +0 -10
  243. package/dist/chunk-xnt8c6h2.js +0 -576
  244. package/dist/chunk-xnt8c6h2.js.map +0 -10
  245. package/dist/chunk-xw0tx842.js +0 -13
  246. package/dist/chunk-xw0tx842.js.map +0 -9
  247. package/dist/chunk-xx5b6b9m.js +0 -69
  248. package/dist/chunk-xx5b6b9m.js.map +0 -10
  249. package/dist/chunk-xz1kdswj.js +0 -21
  250. package/dist/chunk-xz1kdswj.js.map +0 -9
  251. package/dist/chunk-y84qnsd3.js +0 -32
  252. package/dist/chunk-y84qnsd3.js.map +0 -10
  253. package/dist/chunk-ywjn0rad.js +0 -14
  254. package/dist/chunk-ywjn0rad.js.map +0 -9
  255. package/dist/chunk-z9nvhm6r.js +0 -13
  256. package/dist/chunk-z9nvhm6r.js.map +0 -9
  257. package/dist/chunk-zhmvdpk6.js +0 -15
  258. package/dist/chunk-zhmvdpk6.js.map +0 -9
  259. package/dist/chunk-zrg9d4zw.js +0 -784
  260. package/dist/chunk-zrg9d4zw.js.map +0 -10
@@ -1,34 +0,0 @@
1
- // @bun
2
- // src/core/islandManifest.ts
3
- var toIslandFrameworkSegment = (framework) => framework[0]?.toUpperCase() + framework.slice(1);
4
- var collectFrameworkIslands = (manifest, prefix) => {
5
- const entries = {};
6
- let found = false;
7
- for (const [key, value] of Object.entries(manifest)) {
8
- if (!key.startsWith(prefix))
9
- continue;
10
- const component = key.slice(prefix.length);
11
- if (!component)
12
- continue;
13
- entries[component] = value;
14
- found = true;
15
- }
16
- return found ? entries : undefined;
17
- };
18
- var getIslandManifestEntries = (manifest) => {
19
- const islands = {};
20
- const frameworks = ["react", "svelte", "vue", "angular"];
21
- for (const framework of frameworks) {
22
- const prefix = `Island${toIslandFrameworkSegment(framework)}`;
23
- const entries = collectFrameworkIslands(manifest, prefix);
24
- if (entries)
25
- islands[framework] = entries;
26
- }
27
- return islands;
28
- };
29
- var getIslandManifestKey = (framework, component) => `Island${toIslandFrameworkSegment(framework)}${component}`;
30
-
31
- export { getIslandManifestEntries, getIslandManifestKey };
32
-
33
- //# debugId=A4777F528EEB5C9A64756E2164756E21
34
- //# sourceMappingURL=chunk-3yjzpcne.js.map
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/core/islandManifest.ts"],
4
- "sourcesContent": [
5
- "import type { IslandFramework } from '../../types/island';\n\nconst toIslandFrameworkSegment = (framework: IslandFramework) =>\n\tframework[0]?.toUpperCase() + framework.slice(1);\n\nconst collectFrameworkIslands = (\n\tmanifest: Record<string, string>,\n\tprefix: string\n) => {\n\tconst entries: Record<string, string> = {};\n\tlet found = false;\n\n\tfor (const [key, value] of Object.entries(manifest)) {\n\t\tif (!key.startsWith(prefix)) continue;\n\n\t\tconst component = key.slice(prefix.length);\n\t\tif (!component) continue;\n\n\t\tentries[component] = value;\n\t\tfound = true;\n\t}\n\n\treturn found ? entries : undefined;\n};\n\nexport const getIslandManifestEntries = (manifest: Record<string, string>) => {\n\tconst islands: Partial<Record<IslandFramework, Record<string, string>>> =\n\t\t{};\n\tconst frameworks: IslandFramework[] = ['react', 'svelte', 'vue', 'angular'];\n\n\tfor (const framework of frameworks) {\n\t\tconst prefix = `Island${toIslandFrameworkSegment(framework)}`;\n\t\tconst entries = collectFrameworkIslands(manifest, prefix);\n\t\tif (entries) islands[framework] = entries;\n\t}\n\n\treturn islands;\n};\nexport const getIslandManifestKey = (\n\tframework: IslandFramework,\n\tcomponent: string\n) => `Island${toIslandFrameworkSegment(framework)}${component}`;\n"
6
- ],
7
- "mappings": ";;AAEA,IAAM,2BAA2B,CAAC,cACjC,UAAU,IAAI,YAAY,IAAI,UAAU,MAAM,CAAC;AAEhD,IAAM,0BAA0B,CAC/B,UACA,WACI;AAAA,EACJ,MAAM,UAAkC,CAAC;AAAA,EACzC,IAAI,QAAQ;AAAA,EAEZ,YAAY,KAAK,UAAU,OAAO,QAAQ,QAAQ,GAAG;AAAA,IACpD,IAAI,CAAC,IAAI,WAAW,MAAM;AAAA,MAAG;AAAA,IAE7B,MAAM,YAAY,IAAI,MAAM,OAAO,MAAM;AAAA,IACzC,IAAI,CAAC;AAAA,MAAW;AAAA,IAEhB,QAAQ,aAAa;AAAA,IACrB,QAAQ;AAAA,EACT;AAAA,EAEA,OAAO,QAAQ,UAAU;AAAA;AAGnB,IAAM,2BAA2B,CAAC,aAAqC;AAAA,EAC7E,MAAM,UACL,CAAC;AAAA,EACF,MAAM,aAAgC,CAAC,SAAS,UAAU,OAAO,SAAS;AAAA,EAE1E,WAAW,aAAa,YAAY;AAAA,IACnC,MAAM,SAAS,SAAS,yBAAyB,SAAS;AAAA,IAC1D,MAAM,UAAU,wBAAwB,UAAU,MAAM;AAAA,IACxD,IAAI;AAAA,MAAS,QAAQ,aAAa;AAAA,EACnC;AAAA,EAEA,OAAO;AAAA;AAED,IAAM,uBAAuB,CACnC,WACA,cACI,SAAS,yBAAyB,SAAS,IAAI;",
8
- "debugId": "A4777F528EEB5C9A64756E2164756E21",
9
- "names": []
10
- }
@@ -1,17 +0,0 @@
1
- // @bun
2
- import {
3
- generateManifest
4
- } from "./chunk-mtxzyxpg.js";
5
- import"./chunk-hyjs4bqs.js";
6
- import"./chunk-cbkrwmvh.js";
7
- import"./chunk-gf0ygptk.js";
8
- import"./chunk-p5504p14.js";
9
- import"./chunk-qh75agse.js";
10
- import"./chunk-3yjzpcne.js";
11
- import"./chunk-bmgqm774.js";
12
- export {
13
- generateManifest
14
- };
15
-
16
- //# debugId=C379B9CF434B0B1A64756E2164756E21
17
- //# sourceMappingURL=chunk-41bf6aqt.js.map
@@ -1,9 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "sourcesContent": [
5
- ],
6
- "mappings": "",
7
- "debugId": "C379B9CF434B0B1A64756E2164756E21",
8
- "names": []
9
- }
@@ -1,81 +0,0 @@
1
- // @bun
2
- import {
3
- scanEntryPoints
4
- } from "./chunk-11zpfqz6.js";
5
- import {
6
- DEFAULT_QUALITY,
7
- OPTIMIZATION_ENDPOINT,
8
- buildOptimizedUrl,
9
- getAllSizes
10
- } from "./chunk-kk8w9rh5.js";
11
- import {
12
- IMAGE_DEFAULT_DEVICE_SIZES
13
- } from "./chunk-qh75agse.js";
14
-
15
- // src/build/optimizeHtmlImages.ts
16
- import { readFile, writeFile } from "fs/promises";
17
- var IMG_REGEX = /<img\s+([^>]*?)data-optimized([^>]*?)\/?>/gi;
18
- var getAttr = (attrs, name) => {
19
- const regex = new RegExp(`${name}\\s*=\\s*["']([^"']*)["']`, "i");
20
- const match = regex.exec(attrs);
21
- return match ? match[1] : undefined;
22
- };
23
- var removeAttr = (attrs, name) => attrs.replace(new RegExp(`\\s*${name}\\s*=\\s*["'][^"']*["']`, "gi"), "");
24
- var transformImgTag = (fullMatch, before, after, config) => {
25
- const attrs = before + after;
26
- const src = getAttr(attrs, "src");
27
- if (!src)
28
- return fullMatch;
29
- const widthStr = getAttr(attrs, "width");
30
- const sizes = getAttr(attrs, "sizes");
31
- const quality = config?.quality ?? DEFAULT_QUALITY;
32
- const basePath = config?.path ?? OPTIMIZATION_ENDPOINT;
33
- const width = widthStr ? parseInt(widthStr, 10) : undefined;
34
- const optimizedSrc = buildOptimizedUrl(src, width ?? 0, quality, basePath);
35
- let srcset;
36
- if (sizes) {
37
- const allSizes = getAllSizes(config);
38
- srcset = allSizes.map((sizeWidth) => `${buildOptimizedUrl(src, sizeWidth, quality, basePath)} ${sizeWidth}w`).join(", ");
39
- } else if (width) {
40
- const allSizes = getAllSizes(config);
41
- const w1x = snapUp(width, allSizes);
42
- const w2x = snapUp(width * 2, allSizes);
43
- srcset = `${buildOptimizedUrl(src, w1x, quality, basePath)} 1x, ${buildOptimizedUrl(src, w2x, quality, basePath)} 2x`;
44
- } else {
45
- const deviceSizes = config?.deviceSizes ?? IMAGE_DEFAULT_DEVICE_SIZES;
46
- srcset = deviceSizes.map((sizeWidth) => `${buildOptimizedUrl(src, sizeWidth, quality, basePath)} ${sizeWidth}w`).join(", ");
47
- }
48
- let cleanAttrs = removeAttr(attrs, "data-optimized");
49
- cleanAttrs = removeAttr(cleanAttrs, "src");
50
- cleanAttrs = removeAttr(cleanAttrs, "loading");
51
- cleanAttrs = removeAttr(cleanAttrs, "decoding");
52
- cleanAttrs = cleanAttrs.trim();
53
- const resolvedSizes = sizes ?? (width ? undefined : "100vw");
54
- const sizesAttr = resolvedSizes ? ` sizes="${resolvedSizes}"` : "";
55
- return `<img src="${optimizedSrc}" srcset="${srcset}"${sizesAttr} ${cleanAttrs} loading="lazy" decoding="async">`;
56
- };
57
- var snapUp = (target, sizes) => {
58
- for (const size of sizes) {
59
- if (size >= target)
60
- return size;
61
- }
62
- return sizes[sizes.length - 1] ?? target;
63
- };
64
- var optimizeHtmlImages = async (directory, config) => {
65
- const htmlFiles = await scanEntryPoints(directory, "*.html");
66
- const tasks = htmlFiles.map(async (filePath) => {
67
- const original = await readFile(filePath, "utf8");
68
- if (!original.includes("data-optimized"))
69
- return;
70
- const updated = original.replace(IMG_REGEX, (match, before, after) => transformImgTag(match, before, after, config));
71
- if (updated !== original) {
72
- await writeFile(filePath, updated, "utf8");
73
- }
74
- });
75
- await Promise.all(tasks);
76
- };
77
-
78
- export { optimizeHtmlImages };
79
-
80
- //# debugId=C7780E76D47EF80B64756E2164756E21
81
- //# sourceMappingURL=chunk-4d39r92n.js.map
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/build/optimizeHtmlImages.ts"],
4
- "sourcesContent": [
5
- "import { readFile, writeFile } from 'node:fs/promises';\nimport {\n\tDEFAULT_QUALITY,\n\tOPTIMIZATION_ENDPOINT,\n\tbuildOptimizedUrl,\n\tgetAllSizes\n} from '../utils/imageProcessing';\nimport { scanEntryPoints } from './scanEntryPoints';\nimport type { ImageConfig } from '../../types/image';\nimport { IMAGE_DEFAULT_DEVICE_SIZES } from '../constants';\n\n/**\n * Build-time transform for HTML files: finds `<img data-optimized ...>` tags\n * and rewrites them to use the optimization endpoint with responsive srcset.\n *\n * Example input:\n * <img data-optimized src=\"/photos/hero.jpg\" width=\"1200\" height=\"800\"\n * sizes=\"(max-width: 768px) 100vw, 50vw\" alt=\"Hero\">\n *\n * Output:\n * <img src=\"/_absolute/image?url=...&w=1200&q=75\"\n * srcset=\"/_absolute/image?url=...&w=640&q=75 640w, ...\"\n * sizes=\"(max-width: 768px) 100vw, 50vw\"\n * width=\"1200\" height=\"800\" alt=\"Hero\"\n * loading=\"lazy\" decoding=\"async\">\n */\n\nconst IMG_REGEX = /<img\\s+([^>]*?)data-optimized([^>]*?)\\/?>/gi;\n\nconst getAttr = (attrs: string, name: string) => {\n\tconst regex = new RegExp(`${name}\\\\s*=\\\\s*[\"']([^\"']*)[\"']`, 'i');\n\n\tconst match = regex.exec(attrs);\n\n\treturn match ? match[1] : undefined;\n};\n\nconst removeAttr = (attrs: string, name: string) =>\n\tattrs.replace(new RegExp(`\\\\s*${name}\\\\s*=\\\\s*[\"'][^\"']*[\"']`, 'gi'), '');\n\nconst transformImgTag = (fullMatch: string, before: string, after: string, config?: ImageConfig) => {\n\tconst attrs = before + after;\n\n\tconst src = getAttr(attrs, 'src');\n\n\tif (!src) return fullMatch;\n\n\tconst widthStr = getAttr(attrs, 'width');\n\n\tconst sizes = getAttr(attrs, 'sizes');\n\n\tconst quality = config?.quality ?? DEFAULT_QUALITY;\n\n\tconst basePath = config?.path ?? OPTIMIZATION_ENDPOINT;\n\n\tconst width = widthStr ? parseInt(widthStr, 10) : undefined;\n\n\t// Build optimized src\n\tconst optimizedSrc = buildOptimizedUrl(src, width ?? 0, quality, basePath);\n\n\t// Build srcset\n\tlet srcset: string;\n\n\tif (sizes) {\n\t\tconst allSizes = getAllSizes(config);\n\n\t\tsrcset = allSizes\n\t\t\t.map((sizeWidth) => `${buildOptimizedUrl(src, sizeWidth, quality, basePath)} ${sizeWidth}w`)\n\t\t\t.join(', ');\n\t} else if (width) {\n\t\t// 1x and 2x density descriptors\n\t\tconst allSizes = getAllSizes(config);\n\n\t\tconst w1x = snapUp(width, allSizes);\n\n\t\tconst w2x = snapUp(width * 2, allSizes);\n\n\t\tsrcset = `${buildOptimizedUrl(src, w1x, quality, basePath)} 1x, ${buildOptimizedUrl(src, w2x, quality, basePath)} 2x`;\n\t} else {\n\t\tconst deviceSizes = config?.deviceSizes ?? IMAGE_DEFAULT_DEVICE_SIZES;\n\n\t\tsrcset = deviceSizes\n\t\t\t.map((sizeWidth) => `${buildOptimizedUrl(src, sizeWidth, quality, basePath)} ${sizeWidth}w`)\n\t\t\t.join(', ');\n\t}\n\n\t// Clean original attributes — remove data-optimized and src (we'll re-add them)\n\tlet cleanAttrs = removeAttr(attrs, 'data-optimized');\n\n\tcleanAttrs = removeAttr(cleanAttrs, 'src');\n\n\t// Remove loading/decoding if present (we'll set our own)\n\tcleanAttrs = removeAttr(cleanAttrs, 'loading');\n\n\tcleanAttrs = removeAttr(cleanAttrs, 'decoding');\n\n\tcleanAttrs = cleanAttrs.trim();\n\n\tconst resolvedSizes = sizes ?? (width ? undefined : '100vw');\n\n\tconst sizesAttr = resolvedSizes ? ` sizes=\"${resolvedSizes}\"` : '';\n\n\treturn `<img src=\"${optimizedSrc}\" srcset=\"${srcset}\"${sizesAttr} ${cleanAttrs} loading=\"lazy\" decoding=\"async\">`;\n};\n\nconst snapUp = (target: number, sizes: number[]) => {\n\tfor (const size of sizes) {\n\t\tif (size >= target) return size;\n\t}\n\n\treturn sizes[sizes.length - 1] ?? target;\n};\n\nexport const optimizeHtmlImages = async (\n\tdirectory: string,\n\tconfig?: ImageConfig\n) => {\n\tconst htmlFiles = await scanEntryPoints(directory, '*.html');\n\n\tconst tasks = htmlFiles.map(async (filePath) => {\n\t\tconst original = await readFile(filePath, 'utf8');\n\n\t\tif (!original.includes('data-optimized')) return;\n\n\t\tconst updated = original.replace(\n\t\t\tIMG_REGEX,\n\t\t\t(match, before, after) => transformImgTag(match, before, after, config)\n\t\t);\n\n\t\tif (updated !== original) {\n\t\t\tawait writeFile(filePath, updated, 'utf8');\n\t\t}\n\t});\n\n\tawait Promise.all(tasks);\n};\n"
6
- ],
7
- "mappings": ";;;;;;;;;;;;;;;AAAA;AA2BA,IAAM,YAAY;AAElB,IAAM,UAAU,CAAC,OAAe,SAAiB;AAAA,EAChD,MAAM,QAAQ,IAAI,OAAO,GAAG,iCAAiC,GAAG;AAAA,EAEhE,MAAM,QAAQ,MAAM,KAAK,KAAK;AAAA,EAE9B,OAAO,QAAQ,MAAM,KAAK;AAAA;AAG3B,IAAM,aAAa,CAAC,OAAe,SAClC,MAAM,QAAQ,IAAI,OAAO,OAAO,+BAA+B,IAAI,GAAG,EAAE;AAEzE,IAAM,kBAAkB,CAAC,WAAmB,QAAgB,OAAe,WAAyB;AAAA,EACnG,MAAM,QAAQ,SAAS;AAAA,EAEvB,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,EAEhC,IAAI,CAAC;AAAA,IAAK,OAAO;AAAA,EAEjB,MAAM,WAAW,QAAQ,OAAO,OAAO;AAAA,EAEvC,MAAM,QAAQ,QAAQ,OAAO,OAAO;AAAA,EAEpC,MAAM,UAAU,QAAQ,WAAW;AAAA,EAEnC,MAAM,WAAW,QAAQ,QAAQ;AAAA,EAEjC,MAAM,QAAQ,WAAW,SAAS,UAAU,EAAE,IAAI;AAAA,EAGlD,MAAM,eAAe,kBAAkB,KAAK,SAAS,GAAG,SAAS,QAAQ;AAAA,EAGzE,IAAI;AAAA,EAEJ,IAAI,OAAO;AAAA,IACV,MAAM,WAAW,YAAY,MAAM;AAAA,IAEnC,SAAS,SACP,IAAI,CAAC,cAAc,GAAG,kBAAkB,KAAK,WAAW,SAAS,QAAQ,KAAK,YAAY,EAC1F,KAAK,IAAI;AAAA,EACZ,EAAO,SAAI,OAAO;AAAA,IAEjB,MAAM,WAAW,YAAY,MAAM;AAAA,IAEnC,MAAM,MAAM,OAAO,OAAO,QAAQ;AAAA,IAElC,MAAM,MAAM,OAAO,QAAQ,GAAG,QAAQ;AAAA,IAEtC,SAAS,GAAG,kBAAkB,KAAK,KAAK,SAAS,QAAQ,SAAS,kBAAkB,KAAK,KAAK,SAAS,QAAQ;AAAA,EAChH,EAAO;AAAA,IACN,MAAM,cAAc,QAAQ,eAAe;AAAA,IAE3C,SAAS,YACP,IAAI,CAAC,cAAc,GAAG,kBAAkB,KAAK,WAAW,SAAS,QAAQ,KAAK,YAAY,EAC1F,KAAK,IAAI;AAAA;AAAA,EAIZ,IAAI,aAAa,WAAW,OAAO,gBAAgB;AAAA,EAEnD,aAAa,WAAW,YAAY,KAAK;AAAA,EAGzC,aAAa,WAAW,YAAY,SAAS;AAAA,EAE7C,aAAa,WAAW,YAAY,UAAU;AAAA,EAE9C,aAAa,WAAW,KAAK;AAAA,EAE7B,MAAM,gBAAgB,UAAU,QAAQ,YAAY;AAAA,EAEpD,MAAM,YAAY,gBAAgB,WAAW,mBAAmB;AAAA,EAEhE,OAAO,aAAa,yBAAyB,UAAU,aAAa;AAAA;AAGrE,IAAM,SAAS,CAAC,QAAgB,UAAoB;AAAA,EACnD,WAAW,QAAQ,OAAO;AAAA,IACzB,IAAI,QAAQ;AAAA,MAAQ,OAAO;AAAA,EAC5B;AAAA,EAEA,OAAO,MAAM,MAAM,SAAS,MAAM;AAAA;AAG5B,IAAM,qBAAqB,OACjC,WACA,WACI;AAAA,EACJ,MAAM,YAAY,MAAM,gBAAgB,WAAW,QAAQ;AAAA,EAE3D,MAAM,QAAQ,UAAU,IAAI,OAAO,aAAa;AAAA,IAC/C,MAAM,WAAW,MAAM,SAAS,UAAU,MAAM;AAAA,IAEhD,IAAI,CAAC,SAAS,SAAS,gBAAgB;AAAA,MAAG;AAAA,IAE1C,MAAM,UAAU,SAAS,QACxB,WACA,CAAC,OAAO,QAAQ,UAAU,gBAAgB,OAAO,QAAQ,OAAO,MAAM,CACvE;AAAA,IAEA,IAAI,YAAY,UAAU;AAAA,MACzB,MAAM,UAAU,UAAU,SAAS,MAAM;AAAA,IAC1C;AAAA,GACA;AAAA,EAED,MAAM,QAAQ,IAAI,KAAK;AAAA;",
8
- "debugId": "C7780E76D47EF80B64756E2164756E21",
9
- "names": []
10
- }
@@ -1,17 +0,0 @@
1
- // @bun
2
- // src/core/currentIslandRegistry.ts
3
- var requireCurrentIslandRegistry = () => {
4
- const registry = globalThis.__absoluteIslandRegistry;
5
- if (!registry) {
6
- throw new Error("No island registry is active. Configure `islands.registry` in absolute.config.ts before rendering <Island />.");
7
- }
8
- return registry;
9
- };
10
- var setCurrentIslandRegistry = (registry) => {
11
- globalThis.__absoluteIslandRegistry = registry;
12
- };
13
-
14
- export { requireCurrentIslandRegistry, setCurrentIslandRegistry };
15
-
16
- //# debugId=97E6069773F416CD64756E2164756E21
17
- //# sourceMappingURL=chunk-5003emhv.js.map
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/core/currentIslandRegistry.ts"],
4
- "sourcesContent": [
5
- "import type { IslandRegistryInput } from '../../types/island';\n\ndeclare global {\n\tvar __absoluteIslandRegistry: IslandRegistryInput | undefined;\n}\n\nexport const getCurrentIslandRegistry = () =>\n\tglobalThis.__absoluteIslandRegistry;\nexport const requireCurrentIslandRegistry = () => {\n\tconst registry = globalThis.__absoluteIslandRegistry;\n\tif (!registry) {\n\t\tthrow new Error(\n\t\t\t'No island registry is active. Configure `islands.registry` in absolute.config.ts before rendering <Island />.'\n\t\t);\n\t}\n\n\treturn registry;\n};\nexport const setCurrentIslandRegistry = (\n\tregistry: IslandRegistryInput | undefined\n) => {\n\tglobalThis.__absoluteIslandRegistry = registry;\n};\n"
6
- ],
7
- "mappings": ";;AAQO,IAAM,+BAA+B,MAAM;AAAA,EACjD,MAAM,WAAW,WAAW;AAAA,EAC5B,IAAI,CAAC,UAAU;AAAA,IACd,MAAM,IAAI,MACT,+GACD;AAAA,EACD;AAAA,EAEA,OAAO;AAAA;AAED,IAAM,2BAA2B,CACvC,aACI;AAAA,EACJ,WAAW,2BAA2B;AAAA;",
8
- "debugId": "97E6069773F416CD64756E2164756E21",
9
- "names": []
10
- }