fuzor 0.5.0 → 0.5.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 (291) hide show
  1. package/dist/browser.d.ts +2 -0
  2. package/dist/browser.d.ts.map +1 -1
  3. package/dist/browser.js +1 -0
  4. package/dist/browser.js.map +1 -1
  5. package/dist/cli.js +10 -0
  6. package/dist/cli.js.map +1 -1
  7. package/dist/compiler/data-document.d.ts +5 -1
  8. package/dist/compiler/data-document.d.ts.map +1 -1
  9. package/dist/compiler/data-document.js +36 -7
  10. package/dist/compiler/data-document.js.map +1 -1
  11. package/dist/compiler/docs.d.ts.map +1 -1
  12. package/dist/compiler/docs.js +49 -11
  13. package/dist/compiler/docs.js.map +1 -1
  14. package/dist/compiler/index.d.ts +2 -0
  15. package/dist/compiler/index.d.ts.map +1 -1
  16. package/dist/compiler/index.js +23 -6
  17. package/dist/compiler/index.js.map +1 -1
  18. package/dist/compiler/islands.d.ts +1 -0
  19. package/dist/compiler/islands.d.ts.map +1 -1
  20. package/dist/compiler/native-authoring.d.ts +45 -0
  21. package/dist/compiler/native-authoring.d.ts.map +1 -0
  22. package/dist/compiler/native-authoring.js +576 -0
  23. package/dist/compiler/native-authoring.js.map +1 -0
  24. package/dist/compiler/native-manifest.d.ts +33 -0
  25. package/dist/compiler/native-manifest.d.ts.map +1 -0
  26. package/dist/compiler/native-manifest.js +53 -0
  27. package/dist/compiler/native-manifest.js.map +1 -0
  28. package/dist/compiler/native-ranges.d.ts +8 -0
  29. package/dist/compiler/native-ranges.d.ts.map +1 -0
  30. package/dist/compiler/native-ranges.js +92 -0
  31. package/dist/compiler/native-ranges.js.map +1 -0
  32. package/dist/compiler/native-scripts.js +2 -2
  33. package/dist/compiler/native-scripts.js.map +1 -1
  34. package/dist/compiler/page-scripts.d.ts +6 -0
  35. package/dist/compiler/page-scripts.d.ts.map +1 -1
  36. package/dist/compiler/page-scripts.js +25 -6
  37. package/dist/compiler/page-scripts.js.map +1 -1
  38. package/dist/compiler/route-policy.d.ts +1 -0
  39. package/dist/compiler/route-policy.d.ts.map +1 -1
  40. package/dist/compiler/route-policy.js +4 -1
  41. package/dist/compiler/route-policy.js.map +1 -1
  42. package/dist/compiler/server-actions.d.ts +9 -0
  43. package/dist/compiler/server-actions.d.ts.map +1 -0
  44. package/dist/compiler/server-actions.js +65 -0
  45. package/dist/compiler/server-actions.js.map +1 -0
  46. package/dist/data-bindings.d.ts +4 -0
  47. package/dist/data-bindings.d.ts.map +1 -0
  48. package/dist/data-bindings.js +16 -0
  49. package/dist/data-bindings.js.map +1 -0
  50. package/dist/dom-ownership.d.ts +5 -0
  51. package/dist/dom-ownership.d.ts.map +1 -0
  52. package/dist/dom-ownership.js +49 -0
  53. package/dist/dom-ownership.js.map +1 -0
  54. package/dist/index.d.ts +2 -0
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +1 -0
  57. package/dist/index.js.map +1 -1
  58. package/dist/internal-specifiers.d.ts +3 -0
  59. package/dist/internal-specifiers.d.ts.map +1 -0
  60. package/dist/internal-specifiers.js +22 -0
  61. package/dist/internal-specifiers.js.map +1 -0
  62. package/dist/islands/react.d.ts +0 -6
  63. package/dist/islands/react.d.ts.map +1 -1
  64. package/dist/islands/react.js +9 -26
  65. package/dist/islands/react.js.map +1 -1
  66. package/dist/json-value.d.ts +4 -0
  67. package/dist/json-value.d.ts.map +1 -0
  68. package/dist/json-value.js +10 -0
  69. package/dist/json-value.js.map +1 -0
  70. package/dist/native-expressions.d.ts +34 -0
  71. package/dist/native-expressions.d.ts.map +1 -0
  72. package/dist/native-expressions.js +118 -0
  73. package/dist/native-expressions.js.map +1 -0
  74. package/dist/native-manifest.d.ts +7 -0
  75. package/dist/native-manifest.d.ts.map +1 -0
  76. package/dist/native-manifest.js +4 -0
  77. package/dist/native-manifest.js.map +1 -0
  78. package/dist/native-ranges.d.ts +25 -0
  79. package/dist/native-ranges.d.ts.map +1 -0
  80. package/dist/native-ranges.js +51 -0
  81. package/dist/native-ranges.js.map +1 -0
  82. package/dist/native-state.d.ts +14 -0
  83. package/dist/native-state.d.ts.map +1 -0
  84. package/dist/native-state.js +27 -0
  85. package/dist/native-state.js.map +1 -0
  86. package/dist/route-path.d.ts +2 -0
  87. package/dist/route-path.d.ts.map +1 -1
  88. package/dist/route-path.js +2 -0
  89. package/dist/route-path.js.map +1 -1
  90. package/dist/runtime/binding-updates.d.ts +11 -0
  91. package/dist/runtime/binding-updates.d.ts.map +1 -0
  92. package/dist/runtime/binding-updates.js +45 -0
  93. package/dist/runtime/binding-updates.js.map +1 -0
  94. package/dist/runtime/data.d.ts +28 -1
  95. package/dist/runtime/data.d.ts.map +1 -1
  96. package/dist/runtime/data.js +101 -25
  97. package/dist/runtime/data.js.map +1 -1
  98. package/dist/runtime/docs-search.d.ts +20 -4
  99. package/dist/runtime/docs-search.d.ts.map +1 -1
  100. package/dist/runtime/docs-search.js +135 -159
  101. package/dist/runtime/docs-search.js.map +1 -1
  102. package/dist/runtime/docs-ui.d.ts +3 -1
  103. package/dist/runtime/docs-ui.d.ts.map +1 -1
  104. package/dist/runtime/docs-ui.js +19 -29
  105. package/dist/runtime/docs-ui.js.map +1 -1
  106. package/dist/runtime/islands.d.ts.map +1 -1
  107. package/dist/runtime/islands.js +2 -1
  108. package/dist/runtime/islands.js.map +1 -1
  109. package/dist/runtime/native-graph.d.ts +15 -0
  110. package/dist/runtime/native-graph.d.ts.map +1 -0
  111. package/dist/runtime/native-graph.js +103 -0
  112. package/dist/runtime/native-graph.js.map +1 -0
  113. package/dist/runtime/native-manifest.d.ts +17 -0
  114. package/dist/runtime/native-manifest.d.ts.map +1 -0
  115. package/dist/runtime/native-manifest.js +111 -0
  116. package/dist/runtime/native-manifest.js.map +1 -0
  117. package/dist/runtime/native-ranges.d.ts +8 -0
  118. package/dist/runtime/native-ranges.d.ts.map +1 -0
  119. package/dist/runtime/native-ranges.js +100 -0
  120. package/dist/runtime/native-ranges.js.map +1 -0
  121. package/dist/runtime/native-stream-reader.d.ts +7 -0
  122. package/dist/runtime/native-stream-reader.d.ts.map +1 -0
  123. package/dist/runtime/native-stream-reader.js +79 -0
  124. package/dist/runtime/native-stream-reader.js.map +1 -0
  125. package/dist/runtime/native-stream.d.ts +5 -0
  126. package/dist/runtime/native-stream.d.ts.map +1 -0
  127. package/dist/runtime/native-stream.js +14 -0
  128. package/dist/runtime/native-stream.js.map +1 -0
  129. package/dist/runtime/native.d.ts +41 -0
  130. package/dist/runtime/native.d.ts.map +1 -1
  131. package/dist/runtime/native.js +176 -55
  132. package/dist/runtime/native.js.map +1 -1
  133. package/dist/runtime/page-scripts.d.ts.map +1 -1
  134. package/dist/runtime/page-scripts.js +8 -3
  135. package/dist/runtime/page-scripts.js.map +1 -1
  136. package/dist/runtime/router.d.ts.map +1 -1
  137. package/dist/runtime/router.js +6 -1
  138. package/dist/runtime/router.js.map +1 -1
  139. package/dist/runtime/server-actions.d.ts +5 -0
  140. package/dist/runtime/server-actions.d.ts.map +1 -0
  141. package/dist/runtime/server-actions.js +79 -0
  142. package/dist/runtime/server-actions.js.map +1 -0
  143. package/dist/server-actions.d.ts +18 -0
  144. package/dist/server-actions.d.ts.map +1 -0
  145. package/dist/server-actions.js +138 -0
  146. package/dist/server-actions.js.map +1 -0
  147. package/dist/server-components/closures.d.ts +1 -12
  148. package/dist/server-components/closures.d.ts.map +1 -1
  149. package/dist/server-components/closures.js +0 -75
  150. package/dist/server-components/closures.js.map +1 -1
  151. package/dist/server-components/continuation.d.ts +7 -0
  152. package/dist/server-components/continuation.d.ts.map +1 -0
  153. package/dist/server-components/continuation.js +17 -0
  154. package/dist/server-components/continuation.js.map +1 -0
  155. package/dist/server-components/environment.js +1 -1
  156. package/dist/server-components/environment.js.map +1 -1
  157. package/dist/server-components/protocol.d.ts +5 -1
  158. package/dist/server-components/protocol.d.ts.map +1 -1
  159. package/dist/server-components/protocol.js +9 -1
  160. package/dist/server-components/protocol.js.map +1 -1
  161. package/dist/server-components/server.d.ts +4 -7
  162. package/dist/server-components/server.d.ts.map +1 -1
  163. package/dist/server-components/server.js +2 -185
  164. package/dist/server-components/server.js.map +1 -1
  165. package/dist/server-components/stream-server.d.ts +6 -0
  166. package/dist/server-components/stream-server.d.ts.map +1 -0
  167. package/dist/server-components/stream-server.js +197 -0
  168. package/dist/server-components/stream-server.js.map +1 -0
  169. package/dist/server-components/stream.d.ts +16 -3
  170. package/dist/server-components/stream.d.ts.map +1 -1
  171. package/dist/server-components/stream.js +31 -4
  172. package/dist/server-components/stream.js.map +1 -1
  173. package/dist/server-components/transport.d.ts +20 -0
  174. package/dist/server-components/transport.d.ts.map +1 -0
  175. package/dist/server-components/transport.js +2 -0
  176. package/dist/server-components/transport.js.map +1 -0
  177. package/dist/server-components/updates.d.ts +56 -0
  178. package/dist/server-components/updates.d.ts.map +1 -0
  179. package/dist/server-components/updates.js +319 -0
  180. package/dist/server-components/updates.js.map +1 -0
  181. package/dist/server-data-protocol.d.ts +14 -0
  182. package/dist/server-data-protocol.d.ts.map +1 -0
  183. package/dist/server-data-protocol.js +15 -0
  184. package/dist/server-data-protocol.js.map +1 -0
  185. package/dist/server-data.d.ts +18 -0
  186. package/dist/server-data.d.ts.map +1 -1
  187. package/dist/server-data.js.map +1 -1
  188. package/dist/server-native-stream.d.ts +5 -0
  189. package/dist/server-native-stream.d.ts.map +1 -0
  190. package/dist/server-native-stream.js +39 -0
  191. package/dist/server-native-stream.js.map +1 -0
  192. package/dist/server-native.d.ts +24 -0
  193. package/dist/server-native.d.ts.map +1 -0
  194. package/dist/server-native.js +67 -0
  195. package/dist/server-native.js.map +1 -0
  196. package/dist/server-reactivity.d.ts +13 -0
  197. package/dist/server-reactivity.d.ts.map +1 -0
  198. package/dist/server-reactivity.js +49 -0
  199. package/dist/server-reactivity.js.map +1 -0
  200. package/dist/server.d.ts +8 -4
  201. package/dist/server.d.ts.map +1 -1
  202. package/dist/server.js +55 -16
  203. package/dist/server.js.map +1 -1
  204. package/dist/ui/behaviors/accordion.d.ts.map +1 -1
  205. package/dist/ui/behaviors/accordion.js +4 -3
  206. package/dist/ui/behaviors/accordion.js.map +1 -1
  207. package/dist/ui/behaviors/collapsible.d.ts.map +1 -1
  208. package/dist/ui/behaviors/collapsible.js +2 -1
  209. package/dist/ui/behaviors/collapsible.js.map +1 -1
  210. package/dist/ui/behaviors/dialog.d.ts.map +1 -1
  211. package/dist/ui/behaviors/dialog.js +5 -4
  212. package/dist/ui/behaviors/dialog.js.map +1 -1
  213. package/dist/ui/behaviors/menu.d.ts.map +1 -1
  214. package/dist/ui/behaviors/menu.js +4 -3
  215. package/dist/ui/behaviors/menu.js.map +1 -1
  216. package/dist/ui/behaviors/select.d.ts +23 -1
  217. package/dist/ui/behaviors/select.d.ts.map +1 -1
  218. package/dist/ui/behaviors/select.js +81 -11
  219. package/dist/ui/behaviors/select.js.map +1 -1
  220. package/dist/ui/behaviors/switch.d.ts.map +1 -1
  221. package/dist/ui/behaviors/switch.js +2 -1
  222. package/dist/ui/behaviors/switch.js.map +1 -1
  223. package/dist/ui/behaviors/toolbar.d.ts.map +1 -1
  224. package/dist/ui/behaviors/toolbar.js +2 -1
  225. package/dist/ui/behaviors/toolbar.js.map +1 -1
  226. package/dist/ui/catalogue.d.ts +1 -1
  227. package/dist/ui/components/accordion/accordion.d.ts.map +1 -1
  228. package/dist/ui/components/accordion/accordion.js +3 -2
  229. package/dist/ui/components/accordion/accordion.js.map +1 -1
  230. package/dist/ui/components/collapsible/collapsible.d.ts.map +1 -1
  231. package/dist/ui/components/collapsible/collapsible.js +2 -1
  232. package/dist/ui/components/collapsible/collapsible.js.map +1 -1
  233. package/dist/ui/components/dialog/dialog.d.ts.map +1 -1
  234. package/dist/ui/components/dialog/dialog.js +4 -3
  235. package/dist/ui/components/dialog/dialog.js.map +1 -1
  236. package/dist/ui/components/navigation/breadcrumbs.d.ts.map +1 -1
  237. package/dist/ui/components/navigation/breadcrumbs.js +2 -1
  238. package/dist/ui/components/navigation/breadcrumbs.js.map +1 -1
  239. package/dist/ui/components/select/select.d.ts +20 -0
  240. package/dist/ui/components/select/select.d.ts.map +1 -1
  241. package/dist/ui/components/select/select.js +20 -0
  242. package/dist/ui/components/select/select.js.map +1 -1
  243. package/dist/ui/components/tabs/tabs.d.ts.map +1 -1
  244. package/dist/ui/components/tabs/tabs.js +6 -5
  245. package/dist/ui/components/tabs/tabs.js.map +1 -1
  246. package/dist/ui/core/brand.d.ts +33 -0
  247. package/dist/ui/core/brand.d.ts.map +1 -0
  248. package/dist/ui/core/brand.js +96 -0
  249. package/dist/ui/core/brand.js.map +1 -0
  250. package/dist/ui/core/component-styles.d.ts.map +1 -1
  251. package/dist/ui/core/component-styles.js +14 -8
  252. package/dist/ui/core/component-styles.js.map +1 -1
  253. package/dist/ui/core/element.d.ts.map +1 -1
  254. package/dist/ui/core/element.js +2 -3
  255. package/dist/ui/core/element.js.map +1 -1
  256. package/dist/ui/core/index.d.ts +1 -0
  257. package/dist/ui/core/index.d.ts.map +1 -1
  258. package/dist/ui/core/index.js +1 -0
  259. package/dist/ui/core/index.js.map +1 -1
  260. package/dist/ui/core/layout-styles.d.ts.map +1 -1
  261. package/dist/ui/core/layout-styles.js +12 -6
  262. package/dist/ui/core/layout-styles.js.map +1 -1
  263. package/dist/ui/core/parts.d.ts.map +1 -1
  264. package/dist/ui/core/parts.js +5 -4
  265. package/dist/ui/core/parts.js.map +1 -1
  266. package/dist/ui/core/portal.d.ts.map +1 -1
  267. package/dist/ui/core/portal.js +17 -1
  268. package/dist/ui/core/portal.js.map +1 -1
  269. package/dist/ui/machine-state.d.ts +11 -11
  270. package/dist/ui/state.d.ts +1 -1
  271. package/dist/vite.d.ts +12 -10
  272. package/dist/vite.d.ts.map +1 -1
  273. package/dist/vite.js +115 -114
  274. package/dist/vite.js.map +1 -1
  275. package/package.json +2 -12
  276. package/dist/server-components/browser.d.ts +0 -75
  277. package/dist/server-components/browser.d.ts.map +0 -1
  278. package/dist/server-components/browser.js +0 -558
  279. package/dist/server-components/browser.js.map +0 -1
  280. package/dist/server-components/compiler.d.ts +0 -6
  281. package/dist/server-components/compiler.d.ts.map +0 -1
  282. package/dist/server-components/compiler.js +0 -118
  283. package/dist/server-components/compiler.js.map +0 -1
  284. package/dist/server-components/navigation.d.ts +0 -10
  285. package/dist/server-components/navigation.d.ts.map +0 -1
  286. package/dist/server-components/navigation.js +0 -105
  287. package/dist/server-components/navigation.js.map +0 -1
  288. package/dist/server-components/references.d.ts +0 -22
  289. package/dist/server-components/references.d.ts.map +0 -1
  290. package/dist/server-components/references.js +0 -94
  291. package/dist/server-components/references.js.map +0 -1
@@ -1,153 +1,154 @@
1
1
  import * as Effect from "effect/Effect";
2
2
  import * as Exit from "effect/Exit";
3
+ import * as Fiber from "effect/Fiber";
3
4
  import * as Schema from "effect/Schema";
4
5
  import * as Scope from "effect/Scope";
6
+ import { normalizeBase } from "../route-path.js";
7
+ import { ownsDom } from "../dom-ownership.js";
5
8
  const SearchIndex = Schema.Struct({ documents: Schema.Array(Schema.Struct({
6
- path: Schema.String,
7
- title: Schema.String,
8
- headings: Schema.Array(Schema.String),
9
- text: Schema.String
9
+ path: Schema.String, title: Schema.String, headings: Schema.Array(Schema.String), text: Schema.String,
10
10
  })) });
11
- class DocsSearchError extends Schema.TaggedError()("DocsSearchError", {
12
- reason: Schema.Literals(["request", "response", "decode"]),
13
- cause: Schema.Defect()
14
- }) {
11
+ const sessions = new WeakMap();
12
+ const external = (call) => Effect.tryPromise({ try: call, catch: error => error });
13
+ const listen = (target, type, handler) => Effect.acquireRelease(Effect.sync(() => target.addEventListener(type, handler)), () => Effect.sync(() => target.removeEventListener(type, handler)));
14
+ function activeInput(document) {
15
+ const dialog = document.getElementById("docs-search-dialog");
16
+ return dialog ? [...document.querySelectorAll(".docs-search-input")].find(input => ownsDom(dialog, input)) : undefined;
15
17
  }
16
- const listen = (target, event, handler) => Effect.acquireRelease(Effect.sync(() => target.addEventListener(event, handler)), () => Effect.sync(() => target.removeEventListener(event, handler)));
17
- /** Search owns its listeners and requests until the page scope closes. Each navigation replaces its dialog scope. */
18
+ /** Post-commit notification adopts text entered before the native listener loaded. */
19
+ export function refreshDocsSearch(element) {
20
+ const input = activeInput(element.ownerDocument), window = element.ownerDocument.defaultView;
21
+ if (window && input?.value.trim())
22
+ input.dispatchEvent(new window.Event("input", { bubbles: true }));
23
+ }
24
+ function localPath(path, document, base) {
25
+ if (path.length > 2048 || !path.startsWith("/") || path.startsWith("//") || /[\\\u0000-\u0020\u007f]/.test(path))
26
+ return;
27
+ try {
28
+ const url = new URL(path, document.defaultView.location.href);
29
+ if (url.origin === document.defaultView.location.origin && url.pathname.startsWith(`${base}docs/`))
30
+ return url.pathname + url.search + url.hash;
31
+ }
32
+ catch {
33
+ return;
34
+ }
35
+ }
36
+ /** A synchronous native action reads the latest input and the external index cache.
37
+ * Fetch completion sends an input notification; it never writes cells or renders DOM.
38
+ */
39
+ export function readDocsSearch(element) {
40
+ const document = element.ownerDocument, session = sessions.get(document);
41
+ if (!session)
42
+ throw new Error("Docs search source is not mounted");
43
+ const input = activeInput(document);
44
+ const query = (input?.value ?? "").slice(0, 256), needle = query.trim().toLowerCase();
45
+ if (!needle)
46
+ return { query, status: "idle", rows: [] };
47
+ session.start();
48
+ if (session.status === "loading")
49
+ return { query, status: "loading", rows: [] };
50
+ const documents = session.status === "ready" ? session.documents : Array.from(document.querySelectorAll(".docs-sidebar nav a")).slice(0, 4096).map(link => ({ path: link.getAttribute("href") ?? "", title: link.textContent ?? "", text: "", headings: [] }));
51
+ const rows = [], seen = new Set();
52
+ for (const doc of documents) {
53
+ const path = localPath(doc.path, document, session.base);
54
+ if (!path || seen.has(path) || ![doc.title, doc.text, ...doc.headings].some(text => text.toLowerCase().includes(needle)))
55
+ continue;
56
+ seen.add(path);
57
+ let id = session.ids.get(path);
58
+ if (id === undefined) {
59
+ if (session.ids.size >= 8192)
60
+ throw new Error("Docs search identity limit exceeded");
61
+ session.ids.set(path, id = session.ids.size);
62
+ }
63
+ const at = doc.text.toLowerCase().indexOf(needle);
64
+ rows.push({ id, path, title: doc.title || path, snippet: at < 0 ? "" : `${doc.text.slice(Math.max(0, at - 25), at + 75)}...` });
65
+ if (rows.length === 8)
66
+ break;
67
+ }
68
+ return { query, status: session.status === "ready" ? "ready" : "fallback", rows };
69
+ }
70
+ const readIndex = (response) => Effect.gen(function* () {
71
+ if (!response.ok || !response.body) {
72
+ yield* external(() => response.body?.cancel() ?? Promise.resolve());
73
+ return yield* Effect.fail(new Error("Docs search index unavailable"));
74
+ }
75
+ const reader = response.body.getReader(), decoder = new TextDecoder();
76
+ let bytes = 0, text = "";
77
+ return yield* Effect.gen(function* () {
78
+ while (true) {
79
+ const part = yield* external(() => reader.read());
80
+ if (part.done)
81
+ break;
82
+ if ((bytes += part.value.byteLength) > 2 * 1024 * 1024)
83
+ return yield* Effect.fail(new Error("Docs search index byte limit exceeded"));
84
+ text += decoder.decode(part.value, { stream: true });
85
+ }
86
+ text += decoder.decode();
87
+ const raw = yield* Effect.try(() => JSON.parse(text));
88
+ const index = yield* Schema.decodeUnknownEffect(SearchIndex)(raw);
89
+ if (index.documents.length > 4096)
90
+ return yield* Effect.fail(new Error("Docs search index document limit exceeded"));
91
+ return index.documents;
92
+ }).pipe(Effect.ensuring(external(() => reader.cancel()).pipe(Effect.catch(error => Effect.logWarning("Docs search reader cleanup failed", error)), Effect.ensuring(Effect.sync(() => reader.releaseLock())))));
93
+ });
94
+ /** Browser I/O/keyboard adapter. The compiled HTML owns query, result state and all DOM. */
18
95
  export const mountDocsSearchEffect = (options) => Effect.gen(function* () {
19
- const { document } = options;
20
- const window = document.defaultView;
96
+ const { document } = options, window = document.defaultView;
21
97
  if (!window)
22
98
  return;
23
- const base = options.base ?? "/";
24
- const fetch = options.fetch ?? window.fetch?.bind(window) ?? globalThis.fetch;
99
+ if (sessions.has(document))
100
+ throw new Error("Docs search already has an owner");
25
101
  const lifetime = yield* Effect.acquireRelease(Effect.sync(() => new AbortController()), controller => Effect.sync(() => controller.abort()));
26
- let cached;
27
- let pending;
28
- let dialogScope;
29
- let attachedDialog = null;
30
- const localPath = (path) => {
31
- if (!path.startsWith("/") || path.startsWith("//") || path.includes("\\"))
32
- return;
33
- try {
34
- const url = new URL(path, window.location.href);
35
- if (url.origin !== window.location.origin || !url.pathname.startsWith(`${base}docs/`))
102
+ const fetch = options.fetch ?? window.fetch?.bind(window) ?? globalThis.fetch;
103
+ let fiber, dialogScope, attachedDialog = null;
104
+ const session = { base: normalizeBase(options.base), status: "cold", documents: [], ids: new Map(), start() {
105
+ if (session.status !== "cold" || lifetime.signal.aborted)
36
106
  return;
37
- return url.pathname + url.search + url.hash;
38
- }
39
- catch {
40
- return;
41
- }
42
- };
43
- const loadIndex = () => {
44
- if (cached)
45
- return Promise.resolve(cached);
46
- if (pending)
47
- return pending;
48
- const fetchIndex = Effect.fn("Fuzor.docsSearch.loadIndex")(function* () {
49
- const response = yield* Effect.tryPromise({
50
- try: signal => fetch(`${base}search-index.json`, { signal }),
51
- catch: cause => new DocsSearchError({ reason: "request", cause })
52
- });
53
- if (!response.ok)
54
- return yield* Effect.fail(new DocsSearchError({ reason: "response", cause: response.status }));
55
- const json = yield* Effect.tryPromise({ try: () => response.json(), catch: cause => new DocsSearchError({ reason: "decode", cause }) });
56
- const index = yield* Schema.decodeUnknownEffect(SearchIndex)(json).pipe(Effect.mapError(cause => new DocsSearchError({ reason: "decode", cause })));
57
- return index.documents;
58
- });
59
- const load = fetchIndex().pipe(Effect.catchTag("DocsSearchError", () => Effect.succeed(null)));
60
- pending = Effect.runPromiseExit(load, { signal: lifetime.signal }).then(exit => {
61
- if (Exit.isFailure(exit))
62
- return null;
63
- const docs = exit.value;
64
- if (docs)
65
- cached = docs;
66
- return docs;
67
- }).finally(() => { pending = undefined; });
68
- return pending;
69
- };
107
+ session.status = "loading";
108
+ const load = Effect.scoped(Effect.gen(function* () {
109
+ const request = yield* Effect.acquireRelease(Effect.sync(() => new AbortController()), controller => Effect.sync(() => controller.abort()));
110
+ const response = yield* Effect.tryPromise({ try: signal => fetch(`${session.base}search-index.json`, { signal: AbortSignal.any([signal, request.signal, lifetime.signal]) }), catch: error => error });
111
+ return yield* readIndex(response);
112
+ })).pipe(Effect.timeout(10000), Effect.map(documents => ({ documents, status: "ready" })), Effect.catchCause(() => Effect.succeed({ documents: [], status: "fallback" })), Effect.flatMap(answer => Effect.sync(() => {
113
+ if (lifetime.signal.aborted)
114
+ return;
115
+ session.documents = answer.documents;
116
+ session.status = answer.status;
117
+ activeInput(document)?.dispatchEvent(new window.Event("input", { bubbles: true }));
118
+ })));
119
+ fiber = Effect.runFork(load, { signal: lifetime.signal });
120
+ } };
121
+ sessions.set(document, session);
122
+ yield* Effect.addFinalizer(() => Effect.gen(function* () {
123
+ lifetime.abort();
124
+ sessions.delete(document);
125
+ if (dialogScope)
126
+ yield* Scope.close(dialogScope, Exit.void);
127
+ if (fiber)
128
+ yield* Fiber.interrupt(fiber);
129
+ }));
70
130
  const attach = () => {
71
131
  if (dialogScope)
72
132
  Effect.runSync(Scope.close(dialogScope, Exit.void));
73
- dialogScope = undefined;
74
133
  const dialog = document.getElementById("docs-search-dialog");
75
134
  attachedDialog = dialog;
76
- const input = document.querySelector(".docs-search-input");
77
- const results = document.querySelector(".docs-search-results");
135
+ dialogScope = undefined;
136
+ const input = activeInput(document), results = input?.closest(".docs-search-body")?.querySelector(".docs-search-results") ?? dialog?.querySelector(".docs-search-results");
78
137
  if (!dialog || !input || !results)
79
138
  return;
80
139
  const scope = dialogScope = Scope.makeUnsafe();
81
- let disposed = false;
82
- let revision = 0;
83
- Effect.runSync(Scope.addFinalizer(scope, Effect.sync(() => { disposed = true; })));
84
- const subscribe = (target, event, handler) => Effect.runSync(listen(target, event, handler).pipe(Effect.provideService(Scope.Scope, scope)));
85
- const empty = (message) => {
86
- const node = document.createElement("div");
87
- node.className = "docs-search-empty";
88
- node.textContent = message;
89
- results.replaceChildren(node);
90
- };
91
- const render = (docs, query) => {
92
- const fragment = document.createDocumentFragment();
93
- for (const doc of docs.slice(0, 8)) {
94
- const path = localPath(doc.path);
95
- if (!path)
96
- continue;
97
- const link = document.createElement("a");
98
- link.href = path;
99
- link.className = "docs-search-result-item";
100
- const span = (className, text) => {
101
- const node = document.createElement("span");
102
- node.className = className;
103
- node.textContent = text;
104
- link.append(node);
105
- };
106
- span("result-title", doc.title || path);
107
- const at = doc.text.toLowerCase().indexOf(query);
108
- if (at >= 0)
109
- span("result-snippet", `${doc.text.slice(Math.max(0, at - 25), at + 75)}...`);
110
- span("result-path", path);
111
- fragment.append(link);
112
- }
113
- if (fragment.childNodes.length)
114
- results.replaceChildren(fragment);
115
- else
116
- empty(`No matching pages found for "${query}".`);
117
- };
118
- subscribe(input, "input", () => {
119
- const query = input.value.trim().toLowerCase();
120
- const current = ++revision;
121
- if (!query) {
122
- empty("Type a query or navigate docs links...");
123
- return;
124
- }
125
- void loadIndex().then(index => {
126
- if (disposed || lifetime.signal.aborted || revision !== current)
127
- return;
128
- const docs = index ?? Array.from(document.querySelectorAll(".docs-sidebar nav a")).map(link => ({
129
- path: link.getAttribute("href") ?? "", title: link.textContent ?? "", text: "", headings: []
130
- }));
131
- render(docs.filter(doc => localPath(doc.path) && [doc.title, doc.text, ...doc.headings].some(text => text.toLowerCase().includes(query))), query);
132
- });
133
- });
134
- subscribe(dialog, "ui:open-change", event => {
135
- if (event.detail?.open)
136
- input.focus();
137
- });
138
- subscribe(input, "keydown", event => {
139
- const key = event.key;
140
- if (key === "ArrowDown") {
141
- event.preventDefault();
142
- results.querySelector("a")?.focus();
143
- }
144
- });
140
+ const subscribe = (target, type, handler) => Effect.runSync(listen(target, type, handler).pipe(Effect.provideService(Scope.Scope, scope)));
141
+ subscribe(dialog, "ui:open-change", event => { if (event.detail?.open)
142
+ input.focus(); });
143
+ subscribe(input, "keydown", event => { if (event.key === "ArrowDown") {
144
+ event.preventDefault();
145
+ results.querySelector("a")?.focus();
146
+ } });
145
147
  subscribe(results, "keydown", event => {
146
148
  const key = event.key;
147
149
  if (key !== "ArrowDown" && key !== "ArrowUp")
148
150
  return;
149
- const links = Array.from(results.querySelectorAll("a"));
150
- const index = links.findIndex(link => link === document.activeElement);
151
+ const links = Array.from(results.querySelectorAll("a")), index = links.findIndex(link => link === document.activeElement);
151
152
  if (index < 0)
152
153
  return;
153
154
  event.preventDefault();
@@ -157,49 +158,24 @@ export const mountDocsSearchEffect = (options) => Effect.gen(function* () {
157
158
  links[index + (key === "ArrowDown" ? 1 : -1)]?.focus();
158
159
  });
159
160
  };
160
- yield* Effect.addFinalizer(() => Effect.sync(() => {
161
- if (dialogScope)
162
- Effect.runSync(Scope.close(dialogScope, Exit.void));
163
- }));
164
161
  yield* listen(window, "fuzor:navigate", attach);
165
- // The router owns page swaps through its renderer, rather than a global
166
- // navigation event. Observe actual identity changes, including its first mount.
167
162
  yield* Effect.acquireRelease(Effect.sync(() => {
168
- const observer = new window.MutationObserver(() => {
169
- if (document.getElementById("docs-search-dialog") !== attachedDialog)
170
- attach();
171
- });
163
+ const observer = new window.MutationObserver(() => { if (document.getElementById("docs-search-dialog") !== attachedDialog)
164
+ attach(); });
172
165
  observer.observe(document.documentElement, { childList: true, subtree: true });
173
166
  return observer;
174
167
  }), observer => Effect.sync(() => observer.disconnect()));
175
168
  yield* listen(window, "keydown", event => {
176
- const key = event;
177
- if (!(key.metaKey || key.ctrlKey) || key.key.toLowerCase() !== "k" || key.defaultPrevented)
178
- return;
179
- const dialog = document.getElementById("docs-search-dialog");
180
- if (!dialog)
169
+ const key = event, dialog = document.getElementById("docs-search-dialog");
170
+ if (!(key.metaKey || key.ctrlKey) || key.key.toLowerCase() !== "k" || key.defaultPrevented || !dialog || !options.openDialog)
181
171
  return;
182
- if (options.openDialog) {
183
- key.preventDefault();
184
- void options.openDialog(dialog).catch(error => window.console.error(error));
185
- }
186
- else if (typeof dialog.open === "function") {
187
- key.preventDefault();
188
- dialog.open();
189
- }
172
+ key.preventDefault();
173
+ Effect.runFork(options.openDialog(dialog).pipe(Effect.catch(error => Effect.logError("Docs search dialog failed", error))), { signal: lifetime.signal });
190
174
  });
191
175
  attach();
192
176
  });
193
- /** Imperative bridge for Vite's generated bootstrap; disposal closes all Effect-owned resources. */
194
- export async function mountDocsSearch(options) {
177
+ export function mountDocsSearch(options) {
195
178
  const scope = Scope.makeUnsafe();
196
- try {
197
- await Effect.runPromise(mountDocsSearchEffect(options).pipe(Effect.provideService(Scope.Scope, scope)));
198
- }
199
- catch (error) {
200
- Effect.runSync(Scope.close(scope, Exit.void));
201
- throw error;
202
- }
203
- return () => Effect.runSync(Scope.close(scope, Exit.void));
179
+ return Effect.runPromise(mountDocsSearchEffect(options).pipe(Effect.provideService(Scope.Scope, scope), Effect.onError(() => Scope.close(scope, Exit.void)), Effect.as(() => Effect.runPromise(Scope.close(scope, Exit.void)))));
204
180
  }
205
181
  //# sourceMappingURL=docs-search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"docs-search.js","sourceRoot":"","sources":["../../src/runtime/docs-search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docs-search.js","sourceRoot":"","sources":["../../src/runtime/docs-search.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import * as Effect from "effect/Effect";
2
2
  import * as Scope from "effect/Scope";
3
3
  import { type DocsSearchOptions } from "./docs-search.js";
4
+ /** Native actions own the checkbox cell; this adapter writes browser-wide theme preferences. */
5
+ export declare function setDocsTheme(element: HTMLElement, light: boolean): void;
4
6
  /** The shipped docs shell uses the same deferred components as application UI. */
5
7
  export declare const mountDocsUiEffect: (options: DocsSearchOptions) => Effect.Effect<void, never, Scope.Scope>;
6
- export declare function mountDocsUi(options: DocsSearchOptions): Promise<() => void>;
8
+ export declare function mountDocsUi(options: DocsSearchOptions): Promise<() => Promise<void>>;
7
9
  //# sourceMappingURL=docs-ui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"docs-ui.d.ts","sourceRoot":"","sources":["../../src/runtime/docs-ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAStC,OAAO,EAAyB,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAEjF,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,GAAI,SAAS,iBAAiB,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAiDnG,CAAC;AAEH,wBAAsB,WAAW,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAKjF"}
1
+ {"version":3,"file":"docs-ui.d.ts","sourceRoot":"","sources":["../../src/runtime/docs-ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAStC,OAAO,EAAyB,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAEjF,gGAAgG;AAChG,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAKvE;AAED,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,GAAI,SAAS,iBAAiB,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAsCnG,CAAC;AAEH,wBAAgB,WAAW,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAGpF"}
@@ -10,6 +10,17 @@ import { registerBadge } from "../ui/components/badge/index.js";
10
10
  import { registerCard } from "../ui/components/card/index.js";
11
11
  import { registerSeparator } from "../ui/components/separator/index.js";
12
12
  import { mountDocsSearchEffect } from "./docs-search.js";
13
+ /** Native actions own the checkbox cell; this adapter writes browser-wide theme preferences. */
14
+ export function setDocsTheme(element, light) {
15
+ const document = element.ownerDocument;
16
+ document.documentElement.dataset.theme = light ? "light" : "dark";
17
+ try {
18
+ document.defaultView?.localStorage.setItem("fuzor-theme", light ? "light" : "dark");
19
+ }
20
+ catch (error) {
21
+ document.defaultView?.console.warn("Fuzor theme preference could not be saved", error);
22
+ }
23
+ }
13
24
  /** The shipped docs shell uses the same deferred components as application UI. */
14
25
  export const mountDocsUiEffect = (options) => Effect.gen(function* () {
15
26
  const { document } = options;
@@ -23,10 +34,11 @@ export const mountDocsUiEffect = (options) => Effect.gen(function* () {
23
34
  const light = theme === "light";
24
35
  document.documentElement.dataset.theme = light ? "light" : "dark";
25
36
  const root = themeRoot = document.getElementById("docs-theme");
26
- root?.toggleAttribute("checked", light);
27
37
  const input = root?.querySelector('input[type="checkbox"]');
28
- if (input)
38
+ if (input && input.checked !== light) {
29
39
  input.checked = light;
40
+ input.dispatchEvent(new window.Event("change", { bubbles: true }));
41
+ }
30
42
  };
31
43
  const restoreTheme = () => {
32
44
  let theme = document.documentElement.dataset.theme ?? "dark";
@@ -36,24 +48,9 @@ export const mountDocsUiEffect = (options) => Effect.gen(function* () {
36
48
  catch { }
37
49
  applyTheme(theme);
38
50
  };
39
- const changed = (event) => {
40
- if (!(event.target instanceof window.HTMLElement) || event.target.closest("#docs-theme")?.id !== "docs-theme")
41
- return;
42
- const checked = event.target instanceof window.HTMLInputElement ? event.target.checked : event.detail?.checked;
43
- if (typeof checked !== "boolean")
44
- return;
45
- const theme = checked ? "light" : "dark";
46
- applyTheme(theme);
47
- try {
48
- window.localStorage.setItem("fuzor-theme", theme);
49
- }
50
- catch { }
51
- };
52
51
  const storage = (event) => { if (event.key === "fuzor-theme")
53
52
  restoreTheme(); };
54
53
  const listen = (target, type, handler) => Effect.acquireRelease(Effect.sync(() => target.addEventListener(type, handler)), () => Effect.sync(() => target.removeEventListener(type, handler)));
55
- yield* listen(document, "ui:checked-change", changed);
56
- yield* listen(document, "change", changed);
57
54
  yield* listen(window, "fuzor:navigate", restoreTheme);
58
55
  yield* listen(window, "storage", storage);
59
56
  yield* Effect.acquireRelease(Effect.sync(() => {
@@ -65,21 +62,14 @@ export const mountDocsUiEffect = (options) => Effect.gen(function* () {
65
62
  return observer;
66
63
  }), observer => Effect.sync(() => observer.disconnect()));
67
64
  restoreTheme();
68
- yield* mountDocsSearchEffect({ ...options, openDialog: async (root) => {
69
- const behavior = await ui.activate(root);
65
+ yield* mountDocsSearchEffect({ ...options, openDialog: root => Effect.gen(function* () {
66
+ const behavior = yield* Effect.tryPromise({ try: () => ui.activate(root), catch: error => error });
70
67
  if (behavior && "open" in behavior && typeof behavior.open === "function")
71
68
  behavior.open();
72
- } });
69
+ }) });
73
70
  });
74
- export async function mountDocsUi(options) {
71
+ export function mountDocsUi(options) {
75
72
  const scope = Scope.makeUnsafe();
76
- try {
77
- await Effect.runPromise(mountDocsUiEffect(options).pipe(Effect.provideService(Scope.Scope, scope)));
78
- }
79
- catch (error) {
80
- Effect.runSync(Scope.close(scope, Exit.void));
81
- throw error;
82
- }
83
- return () => Effect.runSync(Scope.close(scope, Exit.void));
73
+ return Effect.runPromise(mountDocsUiEffect(options).pipe(Effect.provideService(Scope.Scope, scope), Effect.onError(() => Scope.close(scope, Exit.void)), Effect.as(() => Effect.runPromise(Scope.close(scope, Exit.void)))));
84
74
  }
85
75
  //# sourceMappingURL=docs-ui.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"docs-ui.js","sourceRoot":"","sources":["../../src/runtime/docs-ui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docs-ui.js","sourceRoot":"","sources":["../../src/runtime/docs-ui.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"islands.d.ts","sourceRoot":"","sources":["../../src/runtime/islands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAA2B,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACnH,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAC5C,MAAM,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAChD,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAC9C,MAAM,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAChD,qBAAa,qBAAsB,SAAQ,eAAe;IACxD,SAAkB,IAAI,2BAA2B;gBACrC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;CACzC;AACD,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,qBAAqB,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;AAEvH,eAAO,MAAM,YAAY;;uDAAgB,CAAC;AAC1C,eAAO,MAAM,kBAAkB,6RAAsB,CAAC;AACtD,eAAO,MAAM,kBAAkB,EAAE,kBAA0G,CAAC;AAC5I,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACxF,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAG9E"}
1
+ {"version":3,"file":"islands.d.ts","sourceRoot":"","sources":["../../src/runtime/islands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAA2B,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACnH,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAC5C,MAAM,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAChD,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAC9C,MAAM,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAChD,qBAAa,qBAAsB,SAAQ,eAAe;IACxD,SAAkB,IAAI,2BAA2B;gBACrC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;CACzC;AACD,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,qBAAqB,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;AAGvH,eAAO,MAAM,YAAY;;uDAAgB,CAAC;AAC1C,eAAO,MAAM,kBAAkB,6RAAsB,CAAC;AACtD,eAAO,MAAM,kBAAkB,EAAE,kBAA0G,CAAC;AAC5I,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACxF,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAG9E"}
@@ -4,7 +4,8 @@ export class IslandActivationError extends ActivationError {
4
4
  _tag = "IslandActivationError";
5
5
  constructor(name, cause) { super(name, cause); this.message = `Cannot activate island ${name}: ${String(cause)}`; }
6
6
  }
7
- const runtime = createActivationRuntime("fuzor-island", "island", IslandActivationError);
7
+ // The factory only creates closures. Importing URL helpers must not retain island activation.
8
+ const runtime = /*#__PURE__*/ createActivationRuntime("fuzor-island", "island", IslandActivationError);
8
9
  export const mountIslands = runtime.mount;
9
10
  export const mountIslandsEffect = runtime.mountEffect;
10
11
  export const islandErrorHandler = (error, host, retry) => { console.error(error); renderActivationError(host, retry); };
@@ -1 +1 @@
1
- {"version":3,"file":"islands.js","sourceRoot":"","sources":["../../src/runtime/islands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAM3E,MAAM,OAAO,qBAAsB,SAAQ,eAAe;IACtC,IAAI,GAAG,uBAAuB,CAAC;IACjD,YAAY,IAAY,EAAE,KAAc,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,0BAA0B,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;CACrI;AAED,MAAM,OAAO,GAAG,uBAAuB,CAAC,cAAc,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC;AAC1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5I,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACxF,+EAA+E;AAC/E,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,YAAY,CAAC,mBAAmB,CAAC,CAAC;IACtF,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAA2B,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"islands.js","sourceRoot":"","sources":["../../src/runtime/islands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAM3E,MAAM,OAAO,qBAAsB,SAAQ,eAAe;IACtC,IAAI,GAAG,uBAAuB,CAAC;IACjD,YAAY,IAAY,EAAE,KAAc,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,0BAA0B,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;CACrI;AAED,8FAA8F;AAC9F,MAAM,OAAO,GAAG,aAAa,CAAC,uBAAuB,CAAC,cAAc,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;AACvG,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC;AAC1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC;AACtD,MAAM,CAAC,MAAM,kBAAkB,GAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5I,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACxF,+EAA+E;AAC/E,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,YAAY,CAAC,mBAAmB,CAAC,CAAC;IACtF,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAA2B,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9D,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type NativeComputations } from "../native-expressions.js";
2
+ import type { NativeEnhancer, NativeHandler } from "./native.js";
3
+ import type { NativeRange } from "../native-ranges.js";
4
+ import { type NativeDefinition } from "./native.js";
5
+ import type { PageScriptModule } from "./page-scripts.js";
6
+ /** Loading and mounting stay in the existing scoped page-script lifecycle. */
7
+ export declare function nativeGraphModule(definition: NativeDefinition, data: ((host: HTMLElement) => Promise<unknown>) | undefined, ...configuration: Parameters<typeof nativeGraph>): PageScriptModule;
8
+ /** Optional admitted graph code. A basic state/action component never imports this module. */
9
+ export declare function nativeGraph(computations: NativeComputations, ranges?: readonly NativeRange[], effects?: readonly {
10
+ readonly dependencies: readonly string[];
11
+ readonly load: () => Promise<{
12
+ default: NativeHandler;
13
+ }>;
14
+ }[]): NativeEnhancer;
15
+ //# sourceMappingURL=native-graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-graph.d.ts","sourceRoot":"","sources":["../../src/runtime/native-graph.ts"],"names":[],"mappings":"AAEA,OAAO,EAA4B,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE7F,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,aAAa,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,gBAAgB,CAE/L;AAED,8FAA8F;AAC9F,wBAAgB,WAAW,CAAC,YAAY,EAAE,kBAAkB,EAAE,MAAM,GAAE,SAAS,WAAW,EAAO,EAAE,OAAO,GAAE,SAAS;IAAE,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC;QAAE,OAAO,EAAE,aAAa,CAAA;KAAE,CAAC,CAAA;CAAE,EAAO,GAAG,cAAc,CAgElP"}