effect-start 0.34.0 → 0.35.0

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 (127) hide show
  1. package/README.md +303 -36
  2. package/dist/Fetch.d.ts +1 -1
  3. package/dist/FileRouter.d.ts +1 -1
  4. package/dist/FileRouterCodegen.d.ts.map +1 -1
  5. package/dist/FileRouterCodegen.js +8 -2
  6. package/dist/FileRouterCodegen.js.map +1 -1
  7. package/dist/Job.d.ts +94 -0
  8. package/dist/Job.d.ts.map +1 -0
  9. package/dist/Job.js +157 -0
  10. package/dist/Job.js.map +1 -0
  11. package/dist/Password.d.ts +1 -1
  12. package/dist/Route.d.ts +20 -15
  13. package/dist/Route.d.ts.map +1 -1
  14. package/dist/Route.js +12 -0
  15. package/dist/Route.js.map +1 -1
  16. package/dist/RouteBody.d.ts +7 -7
  17. package/dist/RouteBody.d.ts.map +1 -1
  18. package/dist/RouteBody.js.map +1 -1
  19. package/dist/RouteHook.d.ts +1 -1
  20. package/dist/RouteHook.d.ts.map +1 -1
  21. package/dist/RouteHook.js.map +1 -1
  22. package/dist/RouteHttp.d.ts.map +1 -1
  23. package/dist/RouteHttp.js +10 -4
  24. package/dist/RouteHttp.js.map +1 -1
  25. package/dist/RouteLink.d.ts +16 -0
  26. package/dist/RouteLink.d.ts.map +1 -0
  27. package/dist/RouteLink.js +23 -0
  28. package/dist/RouteLink.js.map +1 -0
  29. package/dist/RouteMount.d.ts +29 -32
  30. package/dist/RouteMount.d.ts.map +1 -1
  31. package/dist/RouteMount.js.map +1 -1
  32. package/dist/RouteSchema.d.ts +81 -28
  33. package/dist/RouteSchema.d.ts.map +1 -1
  34. package/dist/RouteSchema.js +56 -101
  35. package/dist/RouteSchema.js.map +1 -1
  36. package/dist/RouteSse.d.ts +1 -1
  37. package/dist/RouteSse.d.ts.map +1 -1
  38. package/dist/RouteSse.js.map +1 -1
  39. package/dist/Socket.d.ts +1 -1
  40. package/dist/Start.js +1 -1
  41. package/dist/Start.js.map +1 -1
  42. package/dist/StaticFiles.d.ts +4 -10
  43. package/dist/StaticFiles.d.ts.map +1 -1
  44. package/dist/StaticFiles.js +3 -10
  45. package/dist/StaticFiles.js.map +1 -1
  46. package/dist/System.d.ts +1 -1
  47. package/dist/_Docker.d.ts +1 -1
  48. package/dist/_HtmlScanner.d.ts +42 -0
  49. package/dist/_HtmlScanner.d.ts.map +1 -0
  50. package/dist/_HtmlScanner.js +385 -0
  51. package/dist/_HtmlScanner.js.map +1 -0
  52. package/dist/_RouteLink.d.ts +16 -0
  53. package/dist/_RouteLink.d.ts.map +1 -0
  54. package/dist/_RouteLink.js +22 -0
  55. package/dist/_RouteLink.js.map +1 -0
  56. package/dist/bun/BunRoute.d.ts +4 -6
  57. package/dist/bun/BunRoute.d.ts.map +1 -1
  58. package/dist/bun/BunRoute.js +1 -1
  59. package/dist/bun/BunRoute.js.map +1 -1
  60. package/dist/bundler/Bundle.d.ts +1 -1
  61. package/dist/bundler/BundleRoute.d.ts +5 -6
  62. package/dist/bundler/BundleRoute.d.ts.map +1 -1
  63. package/dist/bundler/BundleRoute.js +5 -11
  64. package/dist/bundler/BundleRoute.js.map +1 -1
  65. package/dist/datastar/watchers/patchElements.js +1 -1
  66. package/dist/datastar/watchers/patchElements.js.map +1 -1
  67. package/dist/experimental/CsrfProtection.d.ts +67 -0
  68. package/dist/experimental/CsrfProtection.d.ts.map +1 -0
  69. package/dist/experimental/CsrfProtection.js +100 -0
  70. package/dist/experimental/CsrfProtection.js.map +1 -0
  71. package/dist/experimental/EncryptedCookies.d.ts +1 -1
  72. package/dist/experimental/KeyValueStore.d.ts +1 -1
  73. package/dist/lint/plugin.js +4 -0
  74. package/dist/lint/plugin.js.map +1 -1
  75. package/dist/sql/SqlClient.d.ts +1 -1
  76. package/dist/studio/Studio.d.ts +1 -1
  77. package/dist/studio/Studio.d.ts.map +1 -1
  78. package/dist/studio/Studio.js +4 -10
  79. package/dist/studio/Studio.js.map +1 -1
  80. package/dist/studio/routes/errors/route.d.ts +3 -3
  81. package/dist/studio/routes/errors/route.d.ts.map +1 -1
  82. package/dist/studio/routes/errors/route.js +3 -2
  83. package/dist/studio/routes/errors/route.js.map +1 -1
  84. package/dist/studio/routes/fiberDetail.d.ts +3 -7
  85. package/dist/studio/routes/fiberDetail.d.ts.map +1 -1
  86. package/dist/studio/routes/fibers/route.d.ts +3 -3
  87. package/dist/studio/routes/layout.d.ts +3 -3
  88. package/dist/studio/routes/logs/route.d.ts +3 -3
  89. package/dist/studio/routes/logs/route.d.ts.map +1 -1
  90. package/dist/studio/routes/logs/route.js +3 -2
  91. package/dist/studio/routes/logs/route.js.map +1 -1
  92. package/dist/studio/routes/metrics/route.d.ts +3 -3
  93. package/dist/studio/routes/route.d.ts +2 -2
  94. package/dist/studio/routes/routes/route.d.ts +2 -2
  95. package/dist/studio/routes/services/route.d.ts +2 -2
  96. package/dist/studio/routes/system/route.d.ts +3 -3
  97. package/dist/studio/routes/traceDetail.d.ts +3 -7
  98. package/dist/studio/routes/traceDetail.d.ts.map +1 -1
  99. package/dist/studio/routes/traces/route.d.ts +3 -3
  100. package/dist/studio/routes/traces/route.d.ts.map +1 -1
  101. package/dist/studio/routes/traces/route.js +3 -2
  102. package/dist/studio/routes/traces/route.js.map +1 -1
  103. package/dist/studio/routes/tree.d.ts +43 -51
  104. package/dist/studio/routes/tree.d.ts.map +1 -1
  105. package/package.json +4 -3
  106. package/src/FileRouterCodegen.ts +8 -2
  107. package/src/Route.ts +55 -34
  108. package/src/RouteBody.ts +15 -15
  109. package/src/RouteHook.ts +3 -3
  110. package/src/RouteHttp.ts +10 -4
  111. package/src/RouteLink.ts +56 -0
  112. package/src/RouteMount.ts +43 -48
  113. package/src/RouteSchema.ts +299 -166
  114. package/src/RouteSse.ts +3 -3
  115. package/src/Start.ts +1 -1
  116. package/src/StaticFiles.ts +10 -24
  117. package/src/_HtmlScanner.ts +415 -0
  118. package/src/bun/BunRoute.ts +11 -11
  119. package/src/bundler/BundleRoute.ts +8 -19
  120. package/src/datastar/watchers/patchElements.ts +1 -1
  121. package/src/dev.d.ts +3 -0
  122. package/src/experimental/CsrfProtection.ts +153 -0
  123. package/src/lint/plugin.js +2 -0
  124. package/src/studio/Studio.ts +4 -14
  125. package/src/studio/routes/errors/route.tsx +3 -2
  126. package/src/studio/routes/logs/route.tsx +3 -2
  127. package/src/studio/routes/traces/route.tsx +3 -2
@@ -0,0 +1,385 @@
1
+ const TEXT = 0;
2
+ const TAG_OPEN = 1;
3
+ const TAG_NAME = 2;
4
+ const BEFORE_ATTR_NAME = 3;
5
+ const ATTR_NAME = 4;
6
+ const AFTER_ATTR_NAME = 5;
7
+ const BEFORE_ATTR_VALUE = 6;
8
+ const ATTR_VALUE_DOUBLE_QUOTED = 7;
9
+ const ATTR_VALUE_SINGLE_QUOTED = 8;
10
+ const ATTR_VALUE_UNQUOTED = 9;
11
+ const SELF_CLOSING = 10;
12
+ const BOGUS_COMMENT = 11;
13
+ const RAW_TEXT_TAGS = ["script", "style", "textarea", "title"];
14
+ function* tokenize(html) {
15
+ const len = html.length;
16
+ let i = 0;
17
+ let state = TEXT;
18
+ let tag = "";
19
+ let attrName = "";
20
+ let attrNameStart = 0;
21
+ let attrValue = "";
22
+ let attrValueStart = 0;
23
+ let attrs = new Map();
24
+ let pending;
25
+ const emit = () => {
26
+ const lower = tag.toLowerCase();
27
+ pending = { tag, attrs, end: i };
28
+ tag = "";
29
+ attrs = new Map();
30
+ return RAW_TEXT_TAGS.includes(lower) ? lower : undefined;
31
+ };
32
+ const emitAndContinue = () => {
33
+ const rawTag = emit();
34
+ state = TEXT;
35
+ if (rawTag) {
36
+ const needle = `</${rawTag}`;
37
+ const idx = html.toLowerCase().indexOf(needle, i);
38
+ if (idx === -1) {
39
+ i = len;
40
+ }
41
+ else {
42
+ const end = html.indexOf(">", idx + needle.length);
43
+ i = end === -1 ? len : end + 1;
44
+ }
45
+ }
46
+ };
47
+ const commitAttr = () => {
48
+ if (attrName) {
49
+ attrs.set(attrName.toLowerCase(), {
50
+ value: attrValue,
51
+ nameSpan: { start: attrNameStart, end: attrNameStart + attrName.length },
52
+ valueSpan: attrValueStart > 0
53
+ ? { start: attrValueStart, end: attrValueStart + attrValue.length }
54
+ : undefined,
55
+ });
56
+ attrName = "";
57
+ attrValue = "";
58
+ attrValueStart = 0;
59
+ }
60
+ };
61
+ while (i < len) {
62
+ const ch = html[i];
63
+ switch (state) {
64
+ case TEXT:
65
+ if (ch === "<") {
66
+ const next = html[i + 1];
67
+ if (next === "!" && html[i + 2] === "-" && html[i + 3] === "-") {
68
+ const end = html.indexOf("-->", i + 4);
69
+ i = end === -1 ? len : end + 3;
70
+ }
71
+ else if (next === "!" || next === "?") {
72
+ state = BOGUS_COMMENT;
73
+ i++;
74
+ }
75
+ else {
76
+ state = TAG_OPEN;
77
+ i++;
78
+ }
79
+ }
80
+ else {
81
+ i++;
82
+ }
83
+ break;
84
+ case BOGUS_COMMENT: {
85
+ const end = html.indexOf(">", i);
86
+ i = end === -1 ? len : end + 1;
87
+ state = TEXT;
88
+ break;
89
+ }
90
+ case TAG_OPEN:
91
+ if (ch === "/") {
92
+ const end = html.indexOf(">", i);
93
+ i = end === -1 ? len : end + 1;
94
+ state = TEXT;
95
+ }
96
+ else if ((ch >= "a" && ch <= "z") || (ch >= "A" && ch <= "Z")) {
97
+ tag = ch;
98
+ state = TAG_NAME;
99
+ i++;
100
+ }
101
+ else {
102
+ state = TEXT;
103
+ }
104
+ break;
105
+ case TAG_NAME:
106
+ if (ch === " " || ch === "\t" || ch === "\n" || ch === "\r" || ch === "\f") {
107
+ state = BEFORE_ATTR_NAME;
108
+ i++;
109
+ }
110
+ else if (ch === "/") {
111
+ state = SELF_CLOSING;
112
+ i++;
113
+ }
114
+ else if (ch === ">") {
115
+ i++;
116
+ emitAndContinue();
117
+ }
118
+ else {
119
+ tag += ch;
120
+ i++;
121
+ }
122
+ break;
123
+ case BEFORE_ATTR_NAME:
124
+ if (ch === " " || ch === "\t" || ch === "\n" || ch === "\r" || ch === "\f") {
125
+ i++;
126
+ }
127
+ else if (ch === "/") {
128
+ state = SELF_CLOSING;
129
+ i++;
130
+ }
131
+ else if (ch === ">") {
132
+ i++;
133
+ emitAndContinue();
134
+ }
135
+ else {
136
+ attrName = ch;
137
+ attrNameStart = i;
138
+ state = ATTR_NAME;
139
+ i++;
140
+ }
141
+ break;
142
+ case ATTR_NAME:
143
+ if (ch === "=") {
144
+ state = BEFORE_ATTR_VALUE;
145
+ i++;
146
+ }
147
+ else if (ch === " " || ch === "\t" || ch === "\n" || ch === "\r" || ch === "\f") {
148
+ state = AFTER_ATTR_NAME;
149
+ i++;
150
+ }
151
+ else if (ch === "/" || ch === ">") {
152
+ commitAttr();
153
+ if (ch === "/") {
154
+ state = SELF_CLOSING;
155
+ i++;
156
+ }
157
+ else {
158
+ i++;
159
+ emitAndContinue();
160
+ }
161
+ }
162
+ else {
163
+ attrName += ch;
164
+ i++;
165
+ }
166
+ break;
167
+ case AFTER_ATTR_NAME:
168
+ if (ch === " " || ch === "\t" || ch === "\n" || ch === "\r" || ch === "\f") {
169
+ i++;
170
+ }
171
+ else if (ch === "=") {
172
+ state = BEFORE_ATTR_VALUE;
173
+ i++;
174
+ }
175
+ else if (ch === "/") {
176
+ commitAttr();
177
+ state = SELF_CLOSING;
178
+ i++;
179
+ }
180
+ else if (ch === ">") {
181
+ commitAttr();
182
+ i++;
183
+ emitAndContinue();
184
+ }
185
+ else {
186
+ commitAttr();
187
+ attrName = ch;
188
+ attrNameStart = i;
189
+ state = ATTR_NAME;
190
+ i++;
191
+ }
192
+ break;
193
+ case BEFORE_ATTR_VALUE:
194
+ if (ch === " " || ch === "\t" || ch === "\n" || ch === "\r" || ch === "\f") {
195
+ i++;
196
+ }
197
+ else if (ch === '"') {
198
+ attrValueStart = i + 1;
199
+ state = ATTR_VALUE_DOUBLE_QUOTED;
200
+ i++;
201
+ }
202
+ else if (ch === "'") {
203
+ attrValueStart = i + 1;
204
+ state = ATTR_VALUE_SINGLE_QUOTED;
205
+ i++;
206
+ }
207
+ else if (ch === ">") {
208
+ commitAttr();
209
+ i++;
210
+ emitAndContinue();
211
+ }
212
+ else {
213
+ attrValue = ch;
214
+ attrValueStart = i;
215
+ state = ATTR_VALUE_UNQUOTED;
216
+ i++;
217
+ }
218
+ break;
219
+ case ATTR_VALUE_DOUBLE_QUOTED:
220
+ if (ch === '"') {
221
+ commitAttr();
222
+ state = BEFORE_ATTR_NAME;
223
+ i++;
224
+ }
225
+ else {
226
+ attrValue += ch;
227
+ i++;
228
+ }
229
+ break;
230
+ case ATTR_VALUE_SINGLE_QUOTED:
231
+ if (ch === "'") {
232
+ commitAttr();
233
+ state = BEFORE_ATTR_NAME;
234
+ i++;
235
+ }
236
+ else {
237
+ attrValue += ch;
238
+ i++;
239
+ }
240
+ break;
241
+ case ATTR_VALUE_UNQUOTED:
242
+ if (ch === " " || ch === "\t" || ch === "\n" || ch === "\r" || ch === "\f") {
243
+ commitAttr();
244
+ state = BEFORE_ATTR_NAME;
245
+ i++;
246
+ }
247
+ else if (ch === ">") {
248
+ commitAttr();
249
+ i++;
250
+ emitAndContinue();
251
+ }
252
+ else {
253
+ attrValue += ch;
254
+ i++;
255
+ }
256
+ break;
257
+ case SELF_CLOSING:
258
+ if (ch === ">") {
259
+ i++;
260
+ emitAndContinue();
261
+ }
262
+ else {
263
+ state = BEFORE_ATTR_NAME;
264
+ }
265
+ break;
266
+ }
267
+ if (pending) {
268
+ yield pending;
269
+ pending = undefined;
270
+ }
271
+ }
272
+ }
273
+ export function* parse(html) {
274
+ for (const tok of tokenize(html)) {
275
+ const attributes = new Map();
276
+ for (const [name, attr] of tok.attrs) {
277
+ attributes.set(name, attr.value);
278
+ }
279
+ yield { tagName: tok.tag.toLowerCase(), attributes };
280
+ }
281
+ }
282
+ class MutableElement {
283
+ tagName;
284
+ _attrs;
285
+ _edits;
286
+ _html;
287
+ _end;
288
+ constructor(tok, edits, html) {
289
+ this.tagName = tok.tag.toLowerCase();
290
+ this._attrs = tok.attrs;
291
+ this._edits = edits;
292
+ this._html = html;
293
+ this._end = tok.end;
294
+ }
295
+ getAttribute(name) {
296
+ const attr = this._attrs.get(name.toLowerCase());
297
+ return attr ? attr.value : null;
298
+ }
299
+ hasAttribute(name) {
300
+ return this._attrs.has(name.toLowerCase());
301
+ }
302
+ setAttribute(name, value) {
303
+ const lower = name.toLowerCase();
304
+ const attr = this._attrs.get(lower);
305
+ if (attr && attr.valueSpan) {
306
+ this._edits.push({
307
+ offset: attr.valueSpan.start,
308
+ deleteCount: attr.valueSpan.end - attr.valueSpan.start,
309
+ insert: value,
310
+ });
311
+ attr.value = value;
312
+ }
313
+ else if (attr) {
314
+ this._edits.push({
315
+ offset: attr.nameSpan.start,
316
+ deleteCount: attr.nameSpan.end - attr.nameSpan.start,
317
+ insert: `${name}="${value}"`,
318
+ });
319
+ attr.value = value;
320
+ attr.valueSpan = { start: -1, end: -1 };
321
+ }
322
+ else {
323
+ const insertAt = this._end - 1;
324
+ this._edits.push({
325
+ offset: insertAt,
326
+ deleteCount: 0,
327
+ insert: ` ${name}="${value}"`,
328
+ });
329
+ this._attrs.set(lower, {
330
+ value,
331
+ nameSpan: { start: -1, end: -1 },
332
+ valueSpan: { start: -1, end: -1 },
333
+ });
334
+ }
335
+ return this;
336
+ }
337
+ removeAttribute(name) {
338
+ const lower = name.toLowerCase();
339
+ const attr = this._attrs.get(lower);
340
+ if (!attr || attr.nameSpan.start === -1)
341
+ return this;
342
+ let start = attr.nameSpan.start;
343
+ const end = attr.valueSpan
344
+ ? attr.valueSpan.end + 1
345
+ : attr.nameSpan.end;
346
+ while (start > 0 && " \t\n\r\f".includes(this._html[start - 1])) {
347
+ start--;
348
+ }
349
+ this._edits.push({ offset: start, deleteCount: end - start, insert: "" });
350
+ this._attrs.delete(lower);
351
+ return this;
352
+ }
353
+ get attributes() {
354
+ const entries = this._attrs.entries();
355
+ return (function* () {
356
+ for (const [name, attr] of entries) {
357
+ yield [name, attr.value];
358
+ }
359
+ })();
360
+ }
361
+ }
362
+ export const rewrite = (html) => {
363
+ const edits = [];
364
+ return {
365
+ *[Symbol.iterator]() {
366
+ for (const tok of tokenize(html)) {
367
+ yield new MutableElement(tok, edits, html);
368
+ }
369
+ },
370
+ toString() {
371
+ if (edits.length === 0)
372
+ return html;
373
+ edits.sort((a, b) => b.offset - a.offset);
374
+ let result = html;
375
+ for (const edit of edits) {
376
+ result =
377
+ result.slice(0, edit.offset) +
378
+ edit.insert +
379
+ result.slice(edit.offset + edit.deleteCount);
380
+ }
381
+ return result;
382
+ },
383
+ };
384
+ };
385
+ //# sourceMappingURL=_HtmlScanner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_HtmlScanner.js","sourceRoot":"","sources":["../src/_HtmlScanner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type * as PathPattern from "./_PathPattern.ts";
2
+ import type * as Route from "./Route.ts";
3
+ import type { Routes as DevRoutes } from "effect-start/dev";
4
+ export type LinkParams<Routes, P extends string, B = P extends keyof Routes ? Routes[P] extends [...any[], infer L] ? L extends () => Promise<{
5
+ default: infer R extends Route.RouteSet.Any;
6
+ }> ? Route.Route.Bindings<R> : {} : {} : {}> = {
7
+ [K in keyof PathPattern.Params<P>]: B extends {
8
+ pathParams: infer S;
9
+ } ? K extends keyof S ? S[K] : string | number : string | number;
10
+ } & (B extends {
11
+ searchParams: infer S;
12
+ } ? {
13
+ [K in keyof S]?: S[K];
14
+ } : {});
15
+ export declare function link<Routes = DevRoutes, P extends keyof Routes extends never ? string : keyof Routes & string = keyof Routes extends never ? string : keyof Routes & string>(...args: {} extends LinkParams<Routes, P> ? [path: P, params?: LinkParams<Routes, P>] : [path: P, params: LinkParams<Routes, P>]): string;
16
+ //# sourceMappingURL=_RouteLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_RouteLink.d.ts","sourceRoot":"","sources":["../src/_RouteLink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,WAAW,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,KAAK,KAAK,MAAM,YAAY,CAAA;AACxC,OAAO,KAAK,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAE3D,MAAM,MAAM,UAAU,CACpB,MAAM,EACN,CAAC,SAAS,MAAM,EAChB,CAAC,GAAG,CAAC,SAAS,MAAM,MAAM,GACtB,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC,GACnC,CAAC,SAAS,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC,SAAS,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAA;CAAE,CAAC,GACtE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GACvB,EAAE,GACJ,EAAE,GACJ,EAAE,IACJ;KACD,CAAC,IAAI,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS;QAAE,UAAU,EAAE,MAAM,CAAC,CAAA;KAAE,GACjE,CAAC,SAAS,MAAM,CAAC,GACf,CAAC,CAAC,CAAC,CAAC,GACJ,MAAM,GAAG,MAAM,GACjB,MAAM,GAAG,MAAM;CACpB,GAAG,CAAC,CAAC,SAAS;IAAE,YAAY,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,EAAE,CAAC,CAAA;AAE1E,wBAAgB,IAAI,CAClB,MAAM,GAAG,SAAS,EAClB,CAAC,SAAS,MAAM,MAAM,SAAS,KAAK,GAAG,MAAM,GAAG,MAAM,MAAM,GAAG,MAAM,GAAG,MAAM,MAAM,SAAS,KAAK,GAC9F,MAAM,GACN,MAAM,MAAM,GAAG,MAAM,EAEzB,GAAG,IAAI,EAAE,EAAE,SAAS,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GACrC,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GACzC,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAC3C,MAAM,CAsBR"}
@@ -0,0 +1,22 @@
1
+ export function link(...args) {
2
+ const path = args[0];
3
+ const remaining = { ...args[1] };
4
+ const result = path.replace(/\/:(\w+)([?*+])?/g, (_, name, modifier) => {
5
+ const value = remaining[name];
6
+ delete remaining[name];
7
+ if (value == null) {
8
+ if (modifier === "?" || modifier === "*")
9
+ return "";
10
+ return "/";
11
+ }
12
+ return "/" + encodeURIComponent(String(value));
13
+ });
14
+ const search = new URLSearchParams();
15
+ for (const key in remaining) {
16
+ if (remaining[key] != null)
17
+ search.set(key, String(remaining[key]));
18
+ }
19
+ const qs = search.toString();
20
+ return qs ? result + "?" + qs : result;
21
+ }
22
+ //# sourceMappingURL=_RouteLink.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_RouteLink.js","sourceRoot":"","sources":["../src/_RouteLink.ts"],"names":[],"mappings":"AAsBA,MAAM,UAAU,IAAI,CAMlB,GAAG,IAEyC;IAE5C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAW,CAAA;IAC9B,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAiD,CAAA;IAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CACzB,mBAAmB,EACnB,CAAC,CAAC,EAAE,IAAY,EAAE,QAA4B,EAAE,EAAE;QAChD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;QAC7B,OAAO,SAAS,CAAC,IAAI,CAAC,CAAA;QACtB,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG;gBAAE,OAAO,EAAE,CAAA;YACnD,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,OAAO,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAChD,CAAC,CACF,CAAA;IAED,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;IACpC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACrE,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC5B,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;AACxC,CAAC"}
@@ -2,7 +2,7 @@ import * as Bun from "bun";
2
2
  import * as Option from "effect/Option";
3
3
  import * as Route from "../Route.ts";
4
4
  import * as BunServer from "./BunServer.ts";
5
- declare const BunRouteError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
5
+ declare const BunRouteError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
6
6
  readonly _tag: "BunRouteError";
7
7
  } & Readonly<A>;
8
8
  export declare class BunRouteError extends BunRouteError_base<{
@@ -15,15 +15,13 @@ export type BunDescriptors = {
15
15
  bunPrefix: string;
16
16
  bunLoad: () => Promise<Bun.HTMLBundle>;
17
17
  };
18
- export declare function descriptors(route: Route.Route.Route<any, any, any, any, any>): BunDescriptors | undefined;
18
+ export declare function descriptors(route: Route.Route<any, any, any, any, any>): BunDescriptors | undefined;
19
19
  type HTMLBundleModule = Bun.HTMLBundle | {
20
20
  default: Bun.HTMLBundle;
21
21
  };
22
- export declare function htmlBundle(load: () => HTMLBundleModule | Promise<HTMLBundleModule>): <D extends Route.RouteDescriptor.Any, B extends {}, I extends Route.Route.Tuple>(self: Route.RouteSet.RouteSet<D, B, I>) => Route.RouteSet.RouteSet<D, B, [...I, Route.Route.Route<BunDescriptors & {
22
+ export declare function htmlBundle(load: () => HTMLBundleModule | Promise<HTMLBundleModule>): <D extends Route.RouteDescriptor.Any, B extends {}, I extends Route.Route.Tuple>(self: Route.RouteSet<D, B, I>) => Route.RouteSet<D, B, [...I, Route.Route<BunDescriptors & {
23
23
  format: "html";
24
- }, {
25
- request: Request;
26
- }, string, BunRouteError, BunServer.BunServer>]>;
24
+ }, {}, string, BunRouteError, BunServer.BunServer | Route.Request>]>;
27
25
  type BunServerFetchHandler = (request: Request, server: Bun.Server<unknown>) => Response | Promise<Response>;
28
26
  type BunServerRouteHandler = Bun.HTMLBundle | Bun.BunFile | BunServerFetchHandler | Partial<Record<Bun.Serve.HTTPMethod, BunServerFetchHandler>>;
29
27
  export type BunRoutes = Record<string, BunServerRouteHandler>;
@@ -1 +1 @@
1
- {"version":3,"file":"BunRoute.d.ts","sourceRoot":"","sources":["../../src/bun/BunRoute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAA;AAK1B,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAEpC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;;;;AAI3C,qBAAa,aAAc,SAAQ,mBAAkC;IACnE,MAAM,EAAE,YAAY,GAAG,oBAAoB,CAAA;IAC3C,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB,CAAC;CAAG;AAEL,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;CACvC,CAAA;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAChD,cAAc,GAAG,SAAS,CAM5B;AAED,KAAK,gBAAgB,GAAG,GAAG,CAAC,UAAU,GAAG;IAAE,OAAO,EAAE,GAAG,CAAC,UAAU,CAAA;CAAE,CAAA;AAIpE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAMhE,CAAC,SAAS,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,CAAC,KAAK,CAAC,KAAK,EAC7F,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KACrC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CACxB,CAAC,EACD,CAAC,EACD,CACE,GAAG,CAAC,EACJ,KAAK,CAAC,KAAK,CAAC,KAAK,CACf,cAAc,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EACnC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,EACpB,MAAM,EACN,aAAa,EACb,SAAS,CAAC,SAAS,CACpB,CACF,CACF,CA2FF;AAuHD,KAAK,qBAAqB,GAAG,CAC3B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KACxB,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEjC,KAAK,qBAAqB,GACtB,GAAG,CAAC,UAAU,GACd,GAAG,CAAC,OAAO,GACX,qBAAqB,GACrB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAA;AAEhE,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;AAE7D;;;;;;;;;;;;;;;GAeG;AAEH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAahF;AAED,eAAO,MAAM,YAAY,GAAI,QAAQ,GAAG,YAMvC,CAAA"}
1
+ {"version":3,"file":"BunRoute.d.ts","sourceRoot":"","sources":["../../src/bun/BunRoute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAA;AAK1B,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAEpC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;;;;AAI3C,qBAAa,aAAc,SAAQ,mBAAkC;IACnE,MAAM,EAAE,YAAY,GAAG,oBAAoB,CAAA;IAC3C,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB,CAAC;CAAG;AAEL,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;CACvC,CAAA;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAC1C,cAAc,GAAG,SAAS,CAM5B;AAED,KAAK,gBAAgB,GAAG,GAAG,CAAC,UAAU,GAAG;IAAE,OAAO,EAAE,GAAG,CAAC,UAAU,CAAA;CAAE,CAAA;AAIpE,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAMhE,CAAC,SAAS,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,CAAC,KAAK,CAAC,KAAK,EAC7F,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC5B,KAAK,CAAC,QAAQ,CACf,CAAC,EACD,CAAC,EACD,CACE,GAAG,CAAC,EACJ,KAAK,CAAC,KAAK,CACT,cAAc,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EACnC,EAAE,EACF,MAAM,EACN,aAAa,EACb,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CACpC,CACF,CACF,CA2FF;AAuHD,KAAK,qBAAqB,GAAG,CAC3B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,KACxB,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEjC,KAAK,qBAAqB,GACtB,GAAG,CAAC,UAAU,GACd,GAAG,CAAC,OAAO,GACX,qBAAqB,GACrB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAA;AAEhE,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;AAE7D;;;;;;;;;;;;;;;GAeG;AAEH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAahF;AAED,eAAO,MAAM,YAAY,GAAI,QAAQ,GAAG,YAMvC,CAAA"}
@@ -26,7 +26,7 @@ export function htmlBundle(load) {
26
26
  const descriptors = { bunPrefix, bunLoad, format: "html" };
27
27
  return function (self) {
28
28
  const handler = (context, next) => Effect.gen(function* () {
29
- const originalRequest = context.request;
29
+ const originalRequest = yield* Route.Request;
30
30
  const bundleDepth = yield* FiberRef.get(bundleDepthRef);
31
31
  if (originalRequest.headers.get(INTERNAL_FETCH_HEADER) === "true") {
32
32
  const url = new URL(originalRequest.url);
@@ -1 +1 @@
1
- {"version":3,"file":"BunRoute.js","sourceRoot":"","sources":["../../src/bun/BunRoute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BunRoute.js","sourceRoot":"","sources":["../../src/bun/BunRoute.ts"],"names":[],"mappings":"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"}
@@ -40,7 +40,7 @@ export type BundleContext = BundleManifest & {
40
40
  getArtifact: (path: string) => Blob | null;
41
41
  events?: PubSub.PubSub<BundleEvent>;
42
42
  };
43
- declare const BundleError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
43
+ declare const BundleError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
44
44
  readonly _tag: "BundleError";
45
45
  } & Readonly<A>;
46
46
  export declare class BundleError extends BundleError_base<{
@@ -1,5 +1,4 @@
1
1
  import type * as Context from "effect/Context";
2
- import * as Layer from "effect/Layer";
3
2
  import * as PathPattern from "../_PathPattern.ts";
4
3
  import * as Route from "../Route.ts";
5
4
  import * as Bundle from "./Bundle.ts";
@@ -13,16 +12,16 @@ import * as Bundle from "./Bundle.ts";
13
12
  * })
14
13
  * ```
15
14
  */
16
- export declare const make: <Tag extends Context.Tag<any, Bundle.BundleContext>>(tag: Tag) => Omit<import("../RouteMount.ts").RouteMount.Builder<{}, [Route.Route.Route<{
15
+ export declare const make: <Tag extends Context.Tag<any, Bundle.BundleContext>>(tag: Tag) => import("../RouteMount.ts").RouteMount.Builder<{}, [Route.Route<{
17
16
  method: "GET";
18
17
  format: "*";
19
- }, {}, Uint8Array<ArrayBuffer>, never, any>]>, "use">;
20
- export declare const client: () => Omit<import("../RouteMount.ts").RouteMount.Builder<{}, [Route.Route.Route<{
18
+ }, {}, Uint8Array<ArrayBuffer>, never, any>]>;
19
+ export declare const client: () => import("../RouteMount.ts").RouteMount.Builder<{}, [Route.Route<{
21
20
  method: "GET";
22
21
  format: "*";
23
- }, {}, Uint8Array<ArrayBuffer>, never, any>]>, "use">;
22
+ }, {}, Uint8Array<ArrayBuffer>, never, any>]>;
24
23
  export declare const layer: (options?: {
25
24
  bundle?: Context.Tag<any, Bundle.BundleContext>;
26
25
  path?: PathPattern.PathPattern;
27
- }) => Layer.Layer<Route.Routes, never, never>;
26
+ }) => import("effect/Layer").Layer<Route.Routes, never, never>;
28
27
  //# sourceMappingURL=BundleRoute.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BundleRoute.d.ts","sourceRoot":"","sources":["../../src/bundler/BundleRoute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAE9C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAGpC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;;;;;;;GASG;AACH,eAAO,MAAM,IAAI,GAAI,GAAG,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,GAAG;;;qDAuB9E,CAAA;AAEH,eAAO,MAAM,MAAM;;;qDAAkC,CAAA;AAErD,eAAO,MAAM,KAAK,GAAI,UAAU;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,CAAA;IAC/C,IAAI,CAAC,EAAE,WAAW,CAAC,WAAW,CAAA;CAC/B,4CAcE,CAAA"}
1
+ {"version":3,"file":"BundleRoute.d.ts","sourceRoot":"","sources":["../../src/bundler/BundleRoute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAG9C,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAEpC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;;;;;;;GASG;AACH,eAAO,MAAM,IAAI,GAAI,GAAG,SAAS,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,GAAG;;;6CAwB9E,CAAA;AAEH,eAAO,MAAM,MAAM;;;6CAAkC,CAAA;AAErD,eAAO,MAAM,KAAK,GAAI,UAAU;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,CAAA;IAC/C,IAAI,CAAC,EAAE,WAAW,CAAC,WAAW,CAAA;CAC/B,6DAKA,CAAA"}
@@ -1,10 +1,7 @@
1
1
  import * as Effect from "effect/Effect";
2
- import * as Layer from "effect/Layer";
3
- import * as Option from "effect/Option";
4
2
  import * as Entity from "../Entity.js";
5
3
  import * as PathPattern from "../_PathPattern.js";
6
4
  import * as Route from "../Route.js";
7
- import * as RouteTree from "../RouteTree.js";
8
5
  import * as Values from "../_Values.js";
9
6
  import * as Bundle from "./Bundle.js";
10
7
  /**
@@ -19,7 +16,8 @@ import * as Bundle from "./Bundle.js";
19
16
  */
20
17
  export const make = (tag) => Route.get(Route.render(function* (ctx) {
21
18
  const bundle = yield* tag;
22
- const url = new URL(ctx.request.url);
19
+ const request = yield* Route.Request;
20
+ const url = new URL(request.url);
23
21
  const mountPath = ctx.path ?? "/";
24
22
  const params = PathPattern.match(mountPath, url.pathname);
25
23
  const artifactPath = params ? Values.firstValue(params) : undefined;
@@ -39,14 +37,10 @@ export const make = (tag) => Route.get(Route.render(function* (ctx) {
39
37
  });
40
38
  }));
41
39
  export const client = () => make(Bundle.ClientBundle);
42
- export const layer = (options) => Layer.effect(Route.Routes, Effect.gen(function* () {
43
- const existing = yield* Effect.serviceOption(Route.Routes).pipe(Effect.andThen(Option.getOrUndefined));
40
+ export const layer = (options) => {
44
41
  const path = options?.path ?? "/_bundle/:path+";
45
- const bundleTree = Route.tree({
42
+ return Route.layerMerge({
46
43
  [path]: make(options?.bundle ?? Bundle.ClientBundle),
47
44
  });
48
- if (!existing)
49
- return bundleTree;
50
- return RouteTree.merge(existing, bundleTree);
51
- }));
45
+ };
52
46
  //# sourceMappingURL=BundleRoute.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BundleRoute.js","sourceRoot":"","sources":["../../src/bundler/BundleRoute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BundleRoute.js","sourceRoot":"","sources":["../../src/bundler/BundleRoute.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,WAAW,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AACpC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAqD,GAAQ,EAAE,EAAE,CACnF,KAAK,CAAC,GAAG,CACP,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAA;IACzB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;IACpC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAChC,MAAM,SAAS,GAAI,GAAoC,CAAC,IAAI,IAAI,GAAG,CAAA;IACnE,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAA;IACzD,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACnE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;IACxD,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;IAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;IACxD,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IAC7E,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE;QACxB,OAAO,EAAE;YACP,cAAc,EAAE,IAAI,CAAC,IAAI,IAAI,0BAA0B;YACvD,eAAe,EAAE,qCAAqC;SACvD;KACF,CAAC,CAAA;AACJ,CAAC,CAAC,CACH,CAAA;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;AAErD,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,OAGrB,EAAE,EAAE;IACH,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,iBAAiB,CAAA;IAC/C,OAAO,KAAK,CAAC,UAAU,CAAC;QACtB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC;KACrD,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -325,7 +325,7 @@ const removeNode = (node) => {
325
325
  ctxIdMap.has(node) ? moveBefore(ctxPantry, node, null) : node.parentNode?.removeChild(node);
326
326
  };
327
327
  const moveBefore = removeNode.call.bind(
328
- // @ts-expect-error
328
+ // @ts-ignore
329
329
  ctxPantry.moveBefore ?? ctxPantry.insertBefore);
330
330
  const aliasedPreserveAttr = aliasify("preserve-attr");
331
331
  const morphNode = (oldNode, newNode) => {