@elmethis/qwik 1.0.0-alpha.27 → 1.0.0-alpha.29

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.
@@ -44,7 +44,7 @@ const autoAnimate = require("@formkit/auto-animate");
44
44
  const esToolkit = require("es-toolkit");
45
45
  const tab = "_tab_1fco0_14";
46
46
  const active$3 = "_active_1fco0_37";
47
- const styles$R = {
47
+ const styles$S = {
48
48
  "elm-tabs": "_elm-tabs_1fco0_1",
49
49
  "tab-container": "_tab-container_1fco0_14",
50
50
  tab,
@@ -57,7 +57,7 @@ const open$1 = "_open_12wiu_11";
57
57
  const column$1 = "_column_12wiu_16";
58
58
  const both = "_both_12wiu_27";
59
59
  const inner = "_inner_12wiu_44";
60
- const styles$Q = {
60
+ const styles$R = {
61
61
  "elm-collapse": "_elm-collapse_12wiu_1",
62
62
  row: row$2,
63
63
  open: open$1,
@@ -65,7 +65,7 @@ const styles$Q = {
65
65
  both,
66
66
  inner
67
67
  };
68
- const _hf0$A = (p0) => ({
68
+ const _hf0$B = (p0) => ({
69
69
  "--elmethis-scoped-transition-timing-function": p0.transitionTimingFunction ?? "ease-in-out"
70
70
  });
71
71
  const ElmCollapse = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((_rawProps) => {
@@ -77,28 +77,28 @@ const ElmCollapse = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.i
77
77
  ]);
78
78
  return /* @__PURE__ */ core$1._jsxSplit("div", {
79
79
  class: [
80
- styles$Q["elm-collapse"],
80
+ styles$R["elm-collapse"],
81
81
  {
82
- [styles$Q["open"]]: _rawProps.isOpen,
83
- [styles$Q["row"]]: (_rawProps.direction ?? "row") === "row",
84
- [styles$Q["column"]]: (_rawProps.direction ?? "row") === "column",
85
- [styles$Q["both"]]: (_rawProps.direction ?? "row") === "both"
82
+ [styles$R["open"]]: _rawProps.isOpen,
83
+ [styles$R["row"]]: (_rawProps.direction ?? "row") === "row",
84
+ [styles$R["column"]]: (_rawProps.direction ?? "row") === "column",
85
+ [styles$R["both"]]: (_rawProps.direction ?? "row") === "both"
86
86
  },
87
87
  _rawProps.class
88
88
  ],
89
- style: core$1._fnSignal(_hf0$A, [
89
+ style: core$1._fnSignal(_hf0$B, [
90
90
  _rawProps
91
91
  ]),
92
92
  ...core$1._getVarProps(props)
93
93
  }, core$1._getConstProps(props), /* @__PURE__ */ core$1._jsxSorted("div", null, {
94
- class: styles$Q["inner"]
94
+ class: styles$R["inner"]
95
95
  }, /* @__PURE__ */ core$1._jsxSorted(core$1.Slot, null, null, null, 3, "iE_0"), 1, null), 0, "iE_1");
96
96
  }, "ElmCollapse_component_P0XF5bWlJxw"));
97
97
  function useBindableSignal({ signal, defaultValue }) {
98
98
  const internal = core$1.useSignal(defaultValue);
99
99
  return signal ?? internal;
100
100
  }
101
- const _hf0$z = (p0, p1) => p0.selectedValue.value === p1.value;
101
+ const _hf0$A = (p0, p1) => p0.selectedValue.value === p1.value;
102
102
  const ElmTabsContext = core$1.createContextId("elmethis.tabs");
103
103
  const ElmTabs = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((props) => {
104
104
  const rest = core$1._restProps(props, [
@@ -117,7 +117,7 @@ const ElmTabs = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlin
117
117
  });
118
118
  return /* @__PURE__ */ core$1._jsxSplit("div", {
119
119
  class: [
120
- styles$R["elm-tabs"],
120
+ styles$S["elm-tabs"],
121
121
  props.class
122
122
  ],
123
123
  ...core$1._getVarProps(rest)
@@ -129,7 +129,7 @@ const ElmTabList = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.in
129
129
  ]);
130
130
  return /* @__PURE__ */ core$1._jsxSplit("div", {
131
131
  class: [
132
- styles$R["tab-container"],
132
+ styles$S["tab-container"],
133
133
  _rawProps.class
134
134
  ],
135
135
  ...core$1._getVarProps(rest)
@@ -150,9 +150,9 @@ const ElmTab = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inline
150
150
  ]);
151
151
  return /* @__PURE__ */ core$1._jsxSplit("div", {
152
152
  class: [
153
- styles$R["tab"],
153
+ styles$S["tab"],
154
154
  {
155
- [styles$R["active"]]: ctx.selectedValue.value === props.value
155
+ [styles$S["active"]]: ctx.selectedValue.value === props.value
156
156
  },
157
157
  props.class
158
158
  ],
@@ -168,19 +168,19 @@ const ElmTabPanel = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.i
168
168
  const ctx = core$1.useContext(ElmTabsContext);
169
169
  return /* @__PURE__ */ core$1._jsxSplit("div", {
170
170
  class: [
171
- styles$R["tab-content"],
171
+ styles$S["tab-content"],
172
172
  props.class
173
173
  ],
174
174
  ...core$1._getVarProps(rest)
175
175
  }, core$1._getConstProps(rest), /* @__PURE__ */ core$1._jsxSorted(ElmCollapse, null, {
176
176
  direction: "row",
177
- isOpen: core$1._fnSignal(_hf0$z, [
177
+ isOpen: core$1._fnSignal(_hf0$A, [
178
178
  ctx,
179
179
  props
180
180
  ]),
181
181
  transitionTimingFunction: core$1._wrapProp(ctx, "transitionTimingFunction")
182
182
  }, /* @__PURE__ */ core$1._jsxSorted("div", null, {
183
- class: styles$R["tab-content-inner"]
183
+ class: styles$S["tab-content-inner"]
184
184
  }, /* @__PURE__ */ core$1._jsxSorted(core$1.Slot, null, null, null, 3, "lK_6"), 1, null), 1, "lK_7"), 0, "lK_8");
185
185
  }, "ElmTabPanel_component_4GhH207NkRY"));
186
186
  const h1 = "_h1_9vw8y_13";
@@ -189,7 +189,7 @@ const h3 = "_h3_9vw8y_72";
189
189
  const h4 = "_h4_9vw8y_87";
190
190
  const h5 = "_h5_9vw8y_91";
191
191
  const h6 = "_h6_9vw8y_95";
192
- const styles$P = {
192
+ const styles$Q = {
193
193
  "elm-heading": "_elm-heading_9vw8y_1",
194
194
  h1,
195
195
  h2,
@@ -203,7 +203,7 @@ const text$2 = "_text_zme4t_1";
203
203
  const textStyles = {
204
204
  text: text$2
205
205
  };
206
- const styles$O = {
206
+ const styles$P = {
207
207
  "elm-fragment-identifier": "_elm-fragment-identifier_xb2v4_1"
208
208
  };
209
209
  const ElmFragmentIdentifier = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((_rawProps) => {
@@ -224,7 +224,7 @@ const ElmFragmentIdentifier = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ *
224
224
  }, "ElmFragmentIdentifier_component_handleHashClick_0I1su3qeCsY");
225
225
  return /* @__PURE__ */ core$1._jsxSplit("span", {
226
226
  class: [
227
- styles$O["elm-fragment-identifier"],
227
+ styles$P["elm-fragment-identifier"],
228
228
  _rawProps.class
229
229
  ],
230
230
  "q-e:click": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _rawProps2, handleHashClick2) => handleHashClick2(_rawProps2.id), "ElmFragmentIdentifier_component_span_q_e_click_acZZ1kAS1Ek"),
@@ -254,9 +254,9 @@ const ElmHeading = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.in
254
254
  const Tag = `h${_rawProps.level}`;
255
255
  return /* @__PURE__ */ core$1._jsxSplit(Tag, {
256
256
  class: [
257
- styles$P["elm-heading"],
257
+ styles$Q["elm-heading"],
258
258
  textStyles.text,
259
- styles$P[`h${_rawProps.level}`],
259
+ styles$Q[`h${_rawProps.level}`],
260
260
  _rawProps.class
261
261
  ],
262
262
  style: {
@@ -276,7 +276,7 @@ const ElmHeading = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.in
276
276
  id: core$1._wrapProp(_rawProps, "id")
277
277
  }, null, 3, "sL_1"), 1, "sL_2"),
278
278
  _rawProps.level === 2 && /* @__PURE__ */ core$1._jsxSorted("span", null, {
279
- class: styles$P["h2-underline"],
279
+ class: styles$Q["h2-underline"],
280
280
  "aria-hidden": "true"
281
281
  }, null, 3, "sL_3")
282
282
  ], 0, "sL_4");
@@ -284,17 +284,17 @@ const ElmHeading = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.in
284
284
  const code$1 = "_code_uf3sg_13";
285
285
  const kbd = "_kbd_uf3sg_25";
286
286
  const link$1 = "_link_uf3sg_58";
287
- const styles$N = {
287
+ const styles$O = {
288
288
  "elm-inline-text": "_elm-inline-text_uf3sg_1",
289
289
  code: code$1,
290
290
  kbd,
291
291
  link: link$1
292
292
  };
293
- const styles$M = {
293
+ const styles$N = {
294
294
  "elm-inline-icon": "_elm-inline-icon_1qs0i_1"
295
295
  };
296
- const _hf0$y = (p0) => p0.width ?? p0.size ?? 16;
297
- const _hf1$i = (p0) => p0.height ?? p0.size ?? 16;
296
+ const _hf0$z = (p0) => p0.width ?? p0.size ?? 16;
297
+ const _hf1$j = (p0) => p0.height ?? p0.size ?? 16;
298
298
  const ElmInlineIcon = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((_rawProps) => {
299
299
  const props = core$1._restProps(_rawProps, [
300
300
  "class",
@@ -306,24 +306,24 @@ const ElmInlineIcon = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1
306
306
  ]);
307
307
  return /* @__PURE__ */ core$1._jsxSplit("span", {
308
308
  class: [
309
- styles$M["elm-inline-icon"],
309
+ styles$N["elm-inline-icon"],
310
310
  _rawProps.class
311
311
  ],
312
312
  ...core$1._getVarProps(props)
313
313
  }, core$1._getConstProps(props), /* @__PURE__ */ core$1._jsxSorted("img", {
314
314
  alt: core$1._wrapProp(_rawProps, "alt"),
315
- height: core$1._fnSignal(_hf1$i, [
315
+ height: core$1._fnSignal(_hf1$j, [
316
316
  _rawProps
317
317
  ]),
318
318
  src: core$1._wrapProp(_rawProps, "src"),
319
- width: core$1._fnSignal(_hf0$y, [
319
+ width: core$1._fnSignal(_hf0$z, [
320
320
  _rawProps
321
321
  ])
322
322
  }, {
323
- class: styles$M["elm-inline-icon"]
323
+ class: styles$N["elm-inline-icon"]
324
324
  }, null, 3, null), 0, "D4_0");
325
325
  }, "ElmInlineIcon_component_9LkENpSGozA"));
326
- const _hf0$x = (p0) => ({
326
+ const _hf0$y = (p0) => ({
327
327
  ...p0.style,
328
328
  "--elmethis-scoped-color": p0.color,
329
329
  "--elmethis-scoped-font-size": p0.size ?? "1em",
@@ -351,7 +351,7 @@ const ElmInlineText = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1
351
351
  vnode = /* @__PURE__ */ core$1._jsxSorted("a", {
352
352
  href: core$1._wrapProp(_rawProps, "href")
353
353
  }, {
354
- class: styles$N.link,
354
+ class: styles$O.link,
355
355
  target: "_blank",
356
356
  rel: "noopener noreferrer"
357
357
  }, [
@@ -363,18 +363,18 @@ const ElmInlineText = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1
363
363
  ], 1, "7t_2");
364
364
  }
365
365
  if (_rawProps.kbd ?? false) vnode = /* @__PURE__ */ core$1._jsxSorted("kbd", null, {
366
- class: styles$N.kbd
366
+ class: styles$O.kbd
367
367
  }, vnode, 1, "7t_3");
368
368
  if (_rawProps.strikethrough ?? false) vnode = /* @__PURE__ */ core$1._jsxSorted("del", null, null, vnode, 1, "7t_4");
369
369
  if (_rawProps.italic ?? false) vnode = /* @__PURE__ */ core$1._jsxSorted("em", null, null, vnode, 1, "7t_5");
370
370
  if (_rawProps.underline ?? false) vnode = /* @__PURE__ */ core$1._jsxSorted("ins", null, null, vnode, 1, "7t_6");
371
371
  if (_rawProps.bold ?? false) vnode = /* @__PURE__ */ core$1._jsxSorted("strong", null, null, vnode, 1, "7t_7");
372
372
  if (_rawProps.code ?? false) vnode = /* @__PURE__ */ core$1._jsxSorted("code", null, {
373
- class: styles$N.code
373
+ class: styles$O.code
374
374
  }, vnode, 1, "7t_8");
375
375
  if (_rawProps.ruby) {
376
376
  vnode = /* @__PURE__ */ core$1._jsxSorted("ruby", null, {
377
- class: styles$N["elm-inline-text"]
377
+ class: styles$O["elm-inline-text"]
378
378
  }, [
379
379
  /* @__PURE__ */ core$1._jsxSorted("span", null, null, vnode, 1, null),
380
380
  /* @__PURE__ */ core$1._jsxSorted("rt", null, null, core$1._wrapProp(_rawProps, "ruby"), 1, null)
@@ -382,20 +382,20 @@ const ElmInlineText = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1
382
382
  }
383
383
  return /* @__PURE__ */ core$1._jsxSplit("span", {
384
384
  class: [
385
- styles$N["elm-inline-text"],
385
+ styles$O["elm-inline-text"],
386
386
  textStyles.text,
387
387
  _rawProps.class
388
388
  ],
389
- style: core$1._fnSignal(_hf0$x, [
389
+ style: core$1._fnSignal(_hf0$y, [
390
390
  _rawProps
391
391
  ]),
392
392
  ...core$1._getVarProps(rest)
393
393
  }, core$1._getConstProps(rest), vnode, 0, "7t_10");
394
394
  }, "ElmInlineText_component_MdjKbLJ3SR0"));
395
- const styles$L = {
395
+ const styles$M = {
396
396
  "elm-paragraph": "_elm-paragraph_rbsk5_1"
397
397
  };
398
- const _hf0$w = (p0) => ({
398
+ const _hf0$x = (p0) => ({
399
399
  ...p0.style,
400
400
  "--elmethis-scoped-color": p0.color,
401
401
  "--elmethis-scoped-background-color": p0.backgroundColor
@@ -409,11 +409,11 @@ const ElmParagraph = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.
409
409
  ]);
410
410
  return /* @__PURE__ */ core$1._jsxSplit("p", {
411
411
  class: [
412
- styles$L["elm-paragraph"],
412
+ styles$M["elm-paragraph"],
413
413
  textStyles.text,
414
414
  _rawProps.class
415
415
  ],
416
- style: core$1._fnSignal(_hf0$w, [
416
+ style: core$1._fnSignal(_hf0$x, [
417
417
  _rawProps
418
418
  ]),
419
419
  ...core$1._getVarProps(props)
@@ -435,7 +435,7 @@ const slider = "_slider_4ps3c_192";
435
435
  const modal = "_modal_4ps3c_199";
436
436
  const video = "_video_4ps3c_209";
437
437
  const audio = "_audio_4ps3c_210";
438
- const styles$K = {
438
+ const styles$L = {
439
439
  "elm-a2ui": "_elm-a2ui_4ps3c_1",
440
440
  surface: surface$1,
441
441
  row: row$1,
@@ -533,8 +533,8 @@ function firstChildMargin(index) {
533
533
  marginBlockStart: 0
534
534
  } : void 0;
535
535
  }
536
- const _hf0$v = (p0) => p0.props.min ?? 0;
537
- const _hf1$h = (p0) => p0.props.max;
536
+ const _hf0$w = (p0) => p0.props.min ?? 0;
537
+ const _hf1$i = (p0) => p0.props.max;
538
538
  const textFieldInputType = {
539
539
  shortText: "text",
540
540
  number: "number",
@@ -572,28 +572,28 @@ const basicCatalog = new CatalogRenderer([
572
572
  alignItems: alignItemsMap[_rawProps.props.align ?? "center"]
573
573
  }
574
574
  }, {
575
- class: styles$K.row
575
+ class: styles$L.row
576
576
  }, _rawProps.childRefs(_rawProps.props.children).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted("span", null, {
577
- class: styles$K["child-wrap"]
577
+ class: styles$L["child-wrap"]
578
578
  }, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Lh_3")),
579
579
  defineRenderer(basic_catalog.ColumnApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted("div", null, {
580
- class: styles$K.column,
580
+ class: styles$L.column,
581
581
  style: {
582
582
  "--margin-block": "2rem"
583
583
  }
584
584
  }, _rawProps.childRefs(_rawProps.props.children).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted("span", null, {
585
- class: styles$K["child-wrap"]
585
+ class: styles$L["child-wrap"]
586
586
  }, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Lh_4")),
587
587
  defineRenderer(basic_catalog.ListApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted("div", {
588
588
  class: [
589
- styles$K.list,
590
- _rawProps.props.direction === "horizontal" && styles$K["list-horizontal"]
589
+ styles$L.list,
590
+ _rawProps.props.direction === "horizontal" && styles$L["list-horizontal"]
591
591
  ]
592
592
  }, null, _rawProps.childRefs(_rawProps.props.children).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted("div", null, {
593
- class: styles$K["list-item"]
593
+ class: styles$L["list-item"]
594
594
  }, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Lh_5")),
595
595
  defineRenderer(basic_catalog.CardApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted("div", null, {
596
- class: styles$K.card
596
+ class: styles$L.card
597
597
  }, _rawProps.renderChild(_rawProps.props.child), 1, "Lh_6")),
598
598
  // Rendered as a div-with-role rather than a native <button> because the
599
599
  // A2UI `child` can be any component (Row, Column, Card, etc.), and those
@@ -601,8 +601,8 @@ const basicCatalog = new CatalogRenderer([
601
601
  // SSR validator (Q12).
602
602
  defineRenderer(basic_catalog.ButtonApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted("div", {
603
603
  class: [
604
- styles$K.button,
605
- _rawProps.props.variant === "primary" && styles$K["button-primary"]
604
+ styles$L.button,
605
+ _rawProps.props.variant === "primary" && styles$L["button-primary"]
606
606
  ],
607
607
  "q-e:click": _rawProps.props.action ? () => _rawProps.dispatchAction$("action") : void 0,
608
608
  "q-e:keydown": _rawProps.props.action ? (e) => {
@@ -624,7 +624,7 @@ const basicCatalog = new CatalogRenderer([
624
624
  objectFit: objectFitMap[_rawProps.props.fit ?? "cover"]
625
625
  }
626
626
  }, {
627
- class: styles$K.image
627
+ class: styles$L.image
628
628
  }, null, 3, "Lh_8")
629
629
  )),
630
630
  defineRenderer(basic_catalog.IconApi, (_rawProps) => {
@@ -633,13 +633,13 @@ const basicCatalog = new CatalogRenderer([
633
633
  "aria-label": name,
634
634
  "data-icon": name
635
635
  }, {
636
- class: styles$K.icon
636
+ class: styles$L.icon
637
637
  }, null, 3, "Lh_9");
638
638
  }),
639
639
  defineRenderer(basic_catalog.DividerApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted("div", {
640
640
  class: [
641
- styles$K.divider,
642
- _rawProps.props.axis === "vertical" && styles$K["divider-vertical"]
641
+ styles$L.divider,
642
+ _rawProps.props.axis === "vertical" && styles$L["divider-vertical"]
643
643
  ]
644
644
  }, {
645
645
  role: "separator"
@@ -648,10 +648,10 @@ const basicCatalog = new CatalogRenderer([
648
648
  const variant = _rawProps.props.variant ?? "shortText";
649
649
  const value = _rawProps.props.value ? _rawProps.resolve(_rawProps.props.value) : "";
650
650
  return /* @__PURE__ */ core$1._jsxSorted("div", null, {
651
- class: styles$K["text-field"]
651
+ class: styles$L["text-field"]
652
652
  }, [
653
653
  /* @__PURE__ */ core$1._jsxSorted("label", null, {
654
- class: styles$K.label
654
+ class: styles$L.label
655
655
  }, _rawProps.resolve(_rawProps.props.label), 1, null),
656
656
  variant === "longText" ? /* @__PURE__ */ core$1._jsxSorted("textarea", {
657
657
  "q-e:change": /* @__PURE__ */ core$1.inlinedQrl((_e, el, _rawProps2) => _rawProps2.setBinding$("value", el.value), "basicCatalog_defineRenderer_div_textarea_q_e_change_AvRxzHDOuzE"),
@@ -659,7 +659,7 @@ const basicCatalog = new CatalogRenderer([
659
659
  "q:p": _rawProps,
660
660
  value
661
661
  }, {
662
- class: styles$K.input
662
+ class: styles$L.input
663
663
  }, null, 6, "Lh_11") : /* @__PURE__ */ core$1._jsxSorted("input", {
664
664
  "q-e:change": /* @__PURE__ */ core$1.inlinedQrl((_e, el, _rawProps2) => _rawProps2.setBinding$("value", el.value), "basicCatalog_defineRenderer_div_input_q_e_change_d4MNBikoI0c"),
665
665
  "q-e:input": /* @__PURE__ */ core$1.inlinedQrl((_e, el, _rawProps2) => _rawProps2.setBinding$("value", el.value), "basicCatalog_defineRenderer_div_input_q_e_input_XTp8fL9T8eo"),
@@ -667,14 +667,14 @@ const basicCatalog = new CatalogRenderer([
667
667
  type: textFieldInputType[variant] ?? "text",
668
668
  value
669
669
  }, {
670
- class: styles$K.input
670
+ class: styles$L.input
671
671
  }, null, 6, "Lh_12")
672
672
  ], 1, "Lh_13");
673
673
  }),
674
674
  defineRenderer(basic_catalog.CheckBoxApi, (_rawProps) => {
675
675
  const checked2 = typeof _rawProps.props.value === "boolean" ? _rawProps.props.value : Boolean(_rawProps.ctx.dataContext.resolveDynamicValue(_rawProps.props.value) ?? false);
676
676
  return /* @__PURE__ */ core$1._jsxSorted("label", null, {
677
- class: styles$K.checkbox
677
+ class: styles$L.checkbox
678
678
  }, [
679
679
  /* @__PURE__ */ core$1._jsxSorted("input", {
680
680
  checked: checked2,
@@ -684,17 +684,17 @@ const basicCatalog = new CatalogRenderer([
684
684
  type: "checkbox"
685
685
  }, null, 6, null),
686
686
  /* @__PURE__ */ core$1._jsxSorted("span", null, {
687
- class: styles$K["checkbox-label"]
687
+ class: styles$L["checkbox-label"]
688
688
  }, _rawProps.resolve(_rawProps.props.label), 1, null)
689
689
  ], 1, "Lh_14");
690
690
  }),
691
691
  defineRenderer(basic_catalog.SliderApi, (_rawProps) => {
692
692
  const value = typeof _rawProps.props.value === "number" ? _rawProps.props.value : Number(_rawProps.ctx.dataContext.resolveDynamicValue(_rawProps.props.value) ?? 0);
693
693
  return /* @__PURE__ */ core$1._jsxSorted("input", {
694
- max: core$1._fnSignal(_hf1$h, [
694
+ max: core$1._fnSignal(_hf1$i, [
695
695
  _rawProps
696
696
  ]),
697
- min: core$1._fnSignal(_hf0$v, [
697
+ min: core$1._fnSignal(_hf0$w, [
698
698
  _rawProps
699
699
  ]),
700
700
  "q-e:change": /* @__PURE__ */ core$1.inlinedQrl((_e, el, _rawProps2) => _rawProps2.setBinding$("value", Number(el.value)), "basicCatalog_defineRenderer_input_q_e_change_U0Dwvjz0O9o"),
@@ -702,7 +702,7 @@ const basicCatalog = new CatalogRenderer([
702
702
  "q:p": _rawProps,
703
703
  value
704
704
  }, {
705
- class: styles$K.slider,
705
+ class: styles$L.slider,
706
706
  type: "range"
707
707
  }, null, 6, "Lh_15");
708
708
  }),
@@ -717,23 +717,23 @@ const basicCatalog = new CatalogRenderer([
717
717
  }, null, _rawProps.renderChild(tab2.child), 1, idx))
718
718
  ], 1, "Lh_17")),
719
719
  defineRenderer(basic_catalog.ModalApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted("div", null, {
720
- class: styles$K.modal
720
+ class: styles$L.modal
721
721
  }, [
722
722
  _rawProps.renderChild(_rawProps.props.trigger),
723
723
  /* @__PURE__ */ core$1._jsxSorted("div", null, {
724
- class: styles$K["modal-content"]
724
+ class: styles$L["modal-content"]
725
725
  }, _rawProps.renderChild(_rawProps.props.content), 1, null)
726
726
  ], 1, "Lh_18")),
727
727
  defineRenderer(basic_catalog.VideoApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted("video", {
728
728
  src: _rawProps.resolve(_rawProps.props.url)
729
729
  }, {
730
- class: styles$K.video,
730
+ class: styles$L.video,
731
731
  controls: true
732
732
  }, null, 3, "Lh_19")),
733
733
  defineRenderer(basic_catalog.AudioPlayerApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted("audio", {
734
734
  src: _rawProps.resolve(_rawProps.props.url)
735
735
  }, {
736
- class: styles$K.audio,
736
+ class: styles$L.audio,
737
737
  controls: true
738
738
  }, null, 3, "Lh_20")),
739
739
  defineRenderer(basic_catalog.ChoicePickerApi, (_rawProps) => {
@@ -750,15 +750,15 @@ const basicCatalog = new CatalogRenderer([
750
750
  }, "basicCatalog_defineRenderer_div_q_e_change_HaNxxdy0Z1g"),
751
751
  "q:p": _rawProps
752
752
  }, {
753
- class: styles$K["choice-picker"]
753
+ class: styles$L["choice-picker"]
754
754
  }, [
755
755
  _rawProps.props.label ? /* @__PURE__ */ core$1._jsxSorted("span", null, {
756
- class: styles$K["choice-picker-label"]
756
+ class: styles$L["choice-picker-label"]
757
757
  }, _rawProps.resolve(_rawProps.props.label), 1, "Lh_21") : null,
758
758
  /* @__PURE__ */ core$1._jsxSorted("div", null, {
759
- class: styles$K["choice-picker-options"]
759
+ class: styles$L["choice-picker-options"]
760
760
  }, _rawProps.props.options.map((opt) => /* @__PURE__ */ core$1._jsxSorted("label", null, {
761
- class: styles$K["choice-picker-option"]
761
+ class: styles$L["choice-picker-option"]
762
762
  }, [
763
763
  /* @__PURE__ */ core$1._jsxSorted("input", {
764
764
  checked: selected.includes(opt.value),
@@ -775,10 +775,10 @@ const basicCatalog = new CatalogRenderer([
775
775
  const enableTime = _rawProps.props.enableTime ?? false;
776
776
  const inputType = enableDate && enableTime ? "datetime-local" : enableDate ? "date" : enableTime ? "time" : "text";
777
777
  return /* @__PURE__ */ core$1._jsxSorted("div", null, {
778
- class: styles$K["datetime-input"]
778
+ class: styles$L["datetime-input"]
779
779
  }, [
780
780
  _rawProps.props.label ? /* @__PURE__ */ core$1._jsxSorted("label", null, {
781
- class: styles$K.label
781
+ class: styles$L.label
782
782
  }, _rawProps.resolve(_rawProps.props.label), 1, "Lh_23") : null,
783
783
  /* @__PURE__ */ core$1._jsxSorted("input", {
784
784
  max: _rawProps.props.max != null ? String(_rawProps.props.max) : void 0,
@@ -789,7 +789,7 @@ const basicCatalog = new CatalogRenderer([
789
789
  type: inputType,
790
790
  value: _rawProps.props.value ? _rawProps.resolve(_rawProps.props.value) : ""
791
791
  }, {
792
- class: styles$K.input
792
+ class: styles$L.input
793
793
  }, null, 6, null)
794
794
  ], 1, "Lh_24");
795
795
  })
@@ -1022,7 +1022,7 @@ const A2uiSurface = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.i
1022
1022
  core$1.useContextProvider(A2uiSurfaceContext, props.surface);
1023
1023
  core$1.useContextProvider(A2uiAncestorContext, []);
1024
1024
  return /* @__PURE__ */ core$1._jsxSorted("div", null, {
1025
- class: styles$K.surface,
1025
+ class: styles$L.surface,
1026
1026
  style: {
1027
1027
  "--elmethis-margin-block-start": "2rem"
1028
1028
  }
@@ -1035,7 +1035,7 @@ const SurfaceView = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.i
1035
1035
  core$1.useContextProvider(A2uiSurfaceContext, props.surface);
1036
1036
  core$1.useContextProvider(A2uiAncestorContext, []);
1037
1037
  return /* @__PURE__ */ core$1._jsxSorted("div", null, {
1038
- class: styles$K.surface,
1038
+ class: styles$L.surface,
1039
1039
  style: {
1040
1040
  "--elmethis-margin-block-start": "2rem"
1041
1041
  }
@@ -1064,11 +1064,11 @@ const ElmA2ui = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlin
1064
1064
  }, "ElmA2ui_component_useTask_xwXB3CpZoHI", [
1065
1065
  processorRef
1066
1066
  ]));
1067
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(async ({ track }) => {
1067
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(async ({ track: track2 }) => {
1068
1068
  const processorRef2 = core$1._captures[0], props2 = core$1._captures[1], streamStore2 = core$1._captures[2], surfaceMapSig2 = core$1._captures[3], tick2 = core$1._captures[4];
1069
- const propsMessages = track(() => props2.messages);
1070
- const propsCatalogId = track(() => props2.catalogId);
1071
- track(() => streamStore2.list.length);
1069
+ const propsMessages = track2(() => props2.messages);
1070
+ const propsCatalogId = track2(() => props2.catalogId);
1071
+ track2(() => streamStore2.list.length);
1072
1072
  const effective = propsMessages ? [
1073
1073
  ...propsMessages
1074
1074
  ] : [
@@ -1179,7 +1179,7 @@ const ElmA2ui = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlin
1179
1179
  ]));
1180
1180
  return /* @__PURE__ */ core$1._jsxSorted("div", {
1181
1181
  class: [
1182
- styles$K["elm-a2ui"],
1182
+ styles$L["elm-a2ui"],
1183
1183
  props.class
1184
1184
  ],
1185
1185
  style: core$1._wrapProp(props, "style")
@@ -1187,10 +1187,10 @@ const ElmA2ui = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlin
1187
1187
  surface: core$1.noSerialize(surface2)
1188
1188
  }, null, null, 3, surface2.id)), 1, "pJ_4");
1189
1189
  }, "ElmA2ui_component_JeVykabE5oE"));
1190
- const styles$J = {
1190
+ const styles$K = {
1191
1191
  "elm-katex": "_elm-katex_189xe_1"
1192
1192
  };
1193
- const _hf0$u = (p0) => p0.value ?? "";
1193
+ const _hf0$v = (p0) => p0.value ?? "";
1194
1194
  const ElmKatex = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((props) => {
1195
1195
  const rest = core$1._restProps(props, [
1196
1196
  "class",
@@ -1209,10 +1209,10 @@ const ElmKatex = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inli
1209
1209
  return /* @__PURE__ */ core$1._jsxSplit("div", {
1210
1210
  class: [
1211
1211
  textStyles.text,
1212
- props.block ? styles$J["elm-katex"] : void 0,
1212
+ props.block ? styles$K["elm-katex"] : void 0,
1213
1213
  props.class
1214
1214
  ],
1215
- dangerouslySetInnerHTML: core$1._fnSignal(_hf0$u, [
1215
+ dangerouslySetInnerHTML: core$1._fnSignal(_hf0$v, [
1216
1216
  html
1217
1217
  ]),
1218
1218
  ...core$1._getVarProps(rest)
@@ -1221,7 +1221,7 @@ const ElmKatex = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inli
1221
1221
  const caption$1 = "_caption_xdmlc_22";
1222
1222
  const divider$1 = "_divider_xdmlc_33";
1223
1223
  const code = "_code_xdmlc_40";
1224
- const styles$I = {
1224
+ const styles$J = {
1225
1225
  "elm-code-block": "_elm-code-block_xdmlc_1",
1226
1226
  "language-icon": "_language-icon_xdmlc_17",
1227
1227
  caption: caption$1,
@@ -1229,8 +1229,8 @@ const styles$I = {
1229
1229
  divider: divider$1,
1230
1230
  code
1231
1231
  };
1232
- const _hf0$t = (p0) => p0.icon.viewBox;
1233
- const _hf1$g = (p0) => p0.size ?? 24;
1232
+ const _hf0$u = (p0) => p0.icon.viewBox;
1233
+ const _hf1$h = (p0) => p0.size ?? 24;
1234
1234
  const scopeId = (value, key2, suffix) => key2 === "id" ? `${value}-${suffix}` : value.replace(/url\(#([^)]+)\)/g, `url(#$1-${suffix})`);
1235
1235
  const renderNode = (node, suffix, key2) => {
1236
1236
  const attrs = {};
@@ -1249,13 +1249,13 @@ const LanguageGlyph = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1
1249
1249
  const suffix = core$1.useId();
1250
1250
  return /* @__PURE__ */ core$1._jsxSplit("svg", {
1251
1251
  xmlns: "http://www.w3.org/2000/svg",
1252
- viewBox: core$1._fnSignal(_hf0$t, [
1252
+ viewBox: core$1._fnSignal(_hf0$u, [
1253
1253
  _rawProps
1254
1254
  ]),
1255
- width: core$1._fnSignal(_hf1$g, [
1255
+ width: core$1._fnSignal(_hf1$h, [
1256
1256
  _rawProps
1257
1257
  ]),
1258
- height: core$1._fnSignal(_hf1$g, [
1258
+ height: core$1._fnSignal(_hf1$h, [
1259
1259
  _rawProps
1260
1260
  ]),
1261
1261
  class: core$1._wrapProp(_rawProps, "class"),
@@ -1263,16 +1263,16 @@ const LanguageGlyph = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1
1263
1263
  ..._rawProps.icon.attrs
1264
1264
  }, null, _rawProps.icon.children.map((child, i) => renderNode(child, suffix, i)), 0, "d4_0");
1265
1265
  }, "LanguageGlyph_component_8wkMyHdmoRo"));
1266
- const styles$H = {
1266
+ const styles$I = {
1267
1267
  "elm-mdi-icon": "_elm-mdi-icon_ihskx_1"
1268
1268
  };
1269
- const _hf0$s = (p0) => ({
1269
+ const _hf0$t = (p0) => ({
1270
1270
  "--elmethis-scoped-color": p0.lightColor ?? p0.color ?? "currentColor",
1271
1271
  "--dark-color": p0.darkColor ?? p0.color ?? "currentColor",
1272
1272
  ...p0.style
1273
1273
  });
1274
- const _hf1$f = (p0) => p0.size ?? "1em";
1275
- const _hf2$a = (p0) => p0.color ?? "currentColor";
1274
+ const _hf1$g = (p0) => p0.size ?? "1em";
1275
+ const _hf2$b = (p0) => p0.color ?? "currentColor";
1276
1276
  const ElmMdiIcon = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((_rawProps) => {
1277
1277
  const props = core$1._restProps(_rawProps, [
1278
1278
  "class",
@@ -1285,20 +1285,20 @@ const ElmMdiIcon = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.in
1285
1285
  ]);
1286
1286
  return /* @__PURE__ */ core$1._jsxSplit("svg", {
1287
1287
  class: [
1288
- styles$H["elm-mdi-icon"],
1288
+ styles$I["elm-mdi-icon"],
1289
1289
  _rawProps.class
1290
1290
  ],
1291
- style: core$1._fnSignal(_hf0$s, [
1291
+ style: core$1._fnSignal(_hf0$t, [
1292
1292
  _rawProps
1293
1293
  ]),
1294
- width: core$1._fnSignal(_hf1$f, [
1294
+ width: core$1._fnSignal(_hf1$g, [
1295
1295
  _rawProps
1296
1296
  ]),
1297
- height: core$1._fnSignal(_hf1$f, [
1297
+ height: core$1._fnSignal(_hf1$g, [
1298
1298
  _rawProps
1299
1299
  ]),
1300
1300
  viewBox: "0 0 24 24",
1301
- fill: core$1._fnSignal(_hf2$a, [
1301
+ fill: core$1._fnSignal(_hf2$b, [
1302
1302
  _rawProps
1303
1303
  ]),
1304
1304
  xmlns: "http://www.w3.org/2000/svg",
@@ -1309,7 +1309,7 @@ const ElmMdiIcon = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.in
1309
1309
  d: core$1._wrapProp(_rawProps, "d")
1310
1310
  }, null, null, 3, null), 0, "IA_0");
1311
1311
  }, "ElmMdiIcon_component_AUxPCIu3tI0"));
1312
- const _hf0$r = (p0) => p0.size ?? 24;
1312
+ const _hf0$s = (p0) => p0.size ?? 24;
1313
1313
  const ElmLanguageIcon = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((_rawProps) => {
1314
1314
  const normalized = core.normalizeLanguage(_rawProps.language);
1315
1315
  if (normalized === "file") {
@@ -1322,14 +1322,14 @@ const ElmLanguageIcon = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core
1322
1322
  return /* @__PURE__ */ core$1._jsxSorted(LanguageGlyph, {
1323
1323
  icon: core.languageIcons[normalized]
1324
1324
  }, {
1325
- size: core$1._fnSignal(_hf0$r, [
1325
+ size: core$1._fnSignal(_hf0$s, [
1326
1326
  _rawProps
1327
1327
  ]),
1328
1328
  class: core$1._wrapProp(_rawProps, "class"),
1329
1329
  style: core$1._wrapProp(_rawProps, "style")
1330
1330
  }, null, 3, "bu_1");
1331
1331
  }, "ElmLanguageIcon_component_nXOhYnvIKLk"));
1332
- const styles$G = {
1332
+ const styles$H = {
1333
1333
  "elm-shiki-highlighter": "_elm-shiki-highlighter_j5tas_1"
1334
1334
  };
1335
1335
  const ElmShikiHighlighter = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((_rawProps) => {
@@ -1339,10 +1339,10 @@ const ElmShikiHighlighter = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */
1339
1339
  "language"
1340
1340
  ]);
1341
1341
  const rawHtml = core$1.useSignal("");
1342
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(async ({ track }) => {
1342
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(async ({ track: track2 }) => {
1343
1343
  const _rawProps2 = core$1._captures[0], rawHtml2 = core$1._captures[1];
1344
- track(() => _rawProps2.code);
1345
- track(() => _rawProps2.language ?? "txt");
1344
+ track2(() => _rawProps2.code);
1345
+ track2(() => _rawProps2.language ?? "txt");
1346
1346
  if (!_rawProps2.code) return;
1347
1347
  try {
1348
1348
  rawHtml2.value = await shiki.codeToHtml(_rawProps2.code, {
@@ -1369,14 +1369,14 @@ const ElmShikiHighlighter = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */
1369
1369
  ]));
1370
1370
  return /* @__PURE__ */ core$1._jsxSplit("pre", {
1371
1371
  class: [
1372
- styles$G["elm-shiki-highlighter"],
1372
+ styles$H["elm-shiki-highlighter"],
1373
1373
  _rawProps.class
1374
1374
  ],
1375
1375
  dangerouslySetInnerHTML: core$1._wrapProp(rawHtml),
1376
1376
  ...core$1._getVarProps(props)
1377
1377
  }, core$1._getConstProps(props), null, 0, "ZN_0");
1378
1378
  }, "ElmShikiHighlighter_component_vKuHJZdaUdo"));
1379
- const styles$F = {
1379
+ const styles$G = {
1380
1380
  "use-clipboard": "_use-clipboard_mb0qt_1",
1381
1381
  "use-clipboard-icon-copied": "_use-clipboard-icon-copied_mb0qt_15"
1382
1382
  };
@@ -1415,7 +1415,7 @@ const useClipboard = (options) => {
1415
1415
  const copied2 = core$1._captures[0], copy2 = core$1._captures[1], options2 = core$1._captures[2];
1416
1416
  return /* @__PURE__ */ core$1._jsxSorted("span", {
1417
1417
  class: [
1418
- styles$F["use-clipboard"],
1418
+ styles$G["use-clipboard"],
1419
1419
  options2.class
1420
1420
  ],
1421
1421
  style: core$1._wrapProp(options2, "style")
@@ -1424,7 +1424,7 @@ const useClipboard = (options) => {
1424
1424
  }, /* @__PURE__ */ core$1._jsxSorted(ElmMdiIcon, {
1425
1425
  class: [
1426
1426
  {
1427
- [styles$F["use-clipboard-icon-copied"]]: copied2.value
1427
+ [styles$G["use-clipboard-icon-copied"]]: copied2.value
1428
1428
  }
1429
1429
  ],
1430
1430
  d: copied2.value ? js.mdiClipboardCheckOutline : js.mdiClipboardOutline
@@ -1441,8 +1441,8 @@ const useClipboard = (options) => {
1441
1441
  copy
1442
1442
  };
1443
1443
  };
1444
- const _hf0$q = (p0) => p0.language ?? "txt";
1445
- const _hf1$e = (p0) => p0.caption || (p0.language ?? "txt");
1444
+ const _hf0$r = (p0) => p0.language ?? "txt";
1445
+ const _hf1$f = (p0) => p0.caption || (p0.language ?? "txt");
1446
1446
  const ElmCodeBlock = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((_rawProps) => {
1447
1447
  const props = core$1._restProps(_rawProps, [
1448
1448
  "class",
@@ -1455,42 +1455,526 @@ const ElmCodeBlock = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.
1455
1455
  });
1456
1456
  return /* @__PURE__ */ core$1._jsxSplit("figure", {
1457
1457
  class: [
1458
- styles$I["elm-code-block"],
1458
+ styles$J["elm-code-block"],
1459
1459
  _rawProps.class
1460
1460
  ],
1461
1461
  ...core$1._getVarProps(props)
1462
1462
  }, core$1._getConstProps(props), [
1463
1463
  /* @__PURE__ */ core$1._jsxSorted("span", null, {
1464
- class: styles$I["language-icon"]
1464
+ class: styles$J["language-icon"]
1465
1465
  }, /* @__PURE__ */ core$1._jsxSorted(ElmLanguageIcon, null, {
1466
- language: core$1._fnSignal(_hf0$q, [
1466
+ language: core$1._fnSignal(_hf0$r, [
1467
1467
  _rawProps
1468
1468
  ])
1469
1469
  }, null, 3, "sK_0"), 1, null),
1470
1470
  /* @__PURE__ */ core$1._jsxSorted("span", null, {
1471
- class: styles$I.caption
1471
+ class: styles$J.caption
1472
1472
  }, /* @__PURE__ */ core$1._jsxSorted(ElmInlineText, null, null, [
1473
- core$1._fnSignal(_hf1$e, [
1473
+ core$1._fnSignal(_hf1$f, [
1474
1474
  _rawProps
1475
1475
  ]),
1476
1476
  /* @__PURE__ */ core$1._jsxSorted(core$1.Slot, null, null, null, 3, "sK_1")
1477
1477
  ], 1, "sK_2"), 1, null),
1478
1478
  /* @__PURE__ */ core$1._jsxSorted("div", null, {
1479
- class: styles$I["copy-icon"]
1479
+ class: styles$J["copy-icon"]
1480
1480
  }, /* @__PURE__ */ core$1._jsxSorted(clipboard.CopyButton, null, null, null, 3, "sK_3"), 1, null),
1481
1481
  /* @__PURE__ */ core$1._jsxSorted("hr", null, {
1482
- class: styles$I.divider
1482
+ class: styles$J.divider
1483
1483
  }, null, 3, null),
1484
1484
  /* @__PURE__ */ core$1._jsxSorted("div", null, {
1485
- class: styles$I.code
1485
+ class: styles$J.code
1486
1486
  }, /* @__PURE__ */ core$1._jsxSorted(ElmShikiHighlighter, null, {
1487
1487
  code: core$1._wrapProp(_rawProps, "code"),
1488
- language: core$1._fnSignal(_hf0$q, [
1488
+ language: core$1._fnSignal(_hf0$r, [
1489
1489
  _rawProps
1490
1490
  ])
1491
1491
  }, null, 3, "sK_4"), 1, null)
1492
1492
  ], 0, "sK_5");
1493
1493
  }, "ElmCodeBlock_component_rH8kn9Tvguw"));
1494
+ const loading$3 = "_loading_p7xym_34";
1495
+ const header$4 = "_header_p7xym_40";
1496
+ const artwork = "_artwork_p7xym_46";
1497
+ const meta = "_meta_p7xym_69";
1498
+ const title$1 = "_title_p7xym_77";
1499
+ const artist = "_artist_p7xym_87";
1500
+ const equalizer = "_equalizer_p7xym_99";
1501
+ const playing = "_playing_p7xym_116";
1502
+ const seekbar = "_seekbar_p7xym_151";
1503
+ const track = "_track_p7xym_167";
1504
+ const fill = "_fill_p7xym_176";
1505
+ const thumb = "_thumb_p7xym_189";
1506
+ const controls = "_controls_p7xym_248";
1507
+ const time = "_time_p7xym_254";
1508
+ const transport = "_transport_p7xym_273";
1509
+ const volume = "_volume_p7xym_359";
1510
+ const errored = "_errored_p7xym_412";
1511
+ const styles$F = {
1512
+ "elm-audio-player": "_elm-audio-player_p7xym_1",
1513
+ loading: loading$3,
1514
+ header: header$4,
1515
+ artwork,
1516
+ "artwork-error": "_artwork-error_p7xym_63",
1517
+ meta,
1518
+ title: title$1,
1519
+ artist,
1520
+ equalizer,
1521
+ playing,
1522
+ seekbar,
1523
+ track,
1524
+ fill,
1525
+ thumb,
1526
+ "hover-thumb": "_hover-thumb_p7xym_209",
1527
+ controls,
1528
+ time,
1529
+ "time-current": "_time-current_p7xym_264",
1530
+ "time-total": "_time-total_p7xym_269",
1531
+ transport,
1532
+ "icon-button": "_icon-button_p7xym_281",
1533
+ "play-button": "_play-button_p7xym_312",
1534
+ volume,
1535
+ "volume-slider": "_volume-slider_p7xym_366",
1536
+ errored,
1537
+ "error-notice": "_error-notice_p7xym_421",
1538
+ "error-message": "_error-message_p7xym_431"
1539
+ };
1540
+ const _hf0$q = (p0, p1) => ({
1541
+ "--elmethis-scoped-progress": p1.value,
1542
+ "--elmethis-scoped-hover": p0.value ?? 0
1543
+ });
1544
+ const _hf1$e = (p0) => p0.errorMessage ?? "This audio couldn't be loaded.";
1545
+ const _hf2$a = (p0) => p0.value ? "Pause" : "Play";
1546
+ const _hf3$9 = (p0) => p0.value ? "Unmute" : "Mute";
1547
+ const _hf4$5 = (p0, p1) => p0.value ? 0 : p1.value;
1548
+ const _hf5$3 = (p0, p1) => ({
1549
+ "--elmethis-scoped-volume": p0.value ? 0 : p1.value
1550
+ });
1551
+ const formatTime = (seconds) => {
1552
+ if (!Number.isFinite(seconds) || seconds < 0) seconds = 0;
1553
+ const total = Math.floor(seconds);
1554
+ const h = Math.floor(total / 3600);
1555
+ const m = Math.floor(total % 3600 / 60);
1556
+ const s = total % 60;
1557
+ const mm = h > 0 ? String(m).padStart(2, "0") : String(m);
1558
+ const out = `${mm}:${String(s).padStart(2, "0")}`;
1559
+ return h > 0 ? `${h}:${out}` : out;
1560
+ };
1561
+ const fileNameFromSrc = (src) => {
1562
+ const clean = src.split(/[?#]/)[0];
1563
+ const seg = clean.split("/").filter(Boolean).pop() ?? src;
1564
+ try {
1565
+ return decodeURIComponent(seg);
1566
+ } catch {
1567
+ return seg;
1568
+ }
1569
+ };
1570
+ const ElmAudioPlayer = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((props) => {
1571
+ const rest = core$1._restProps(props, [
1572
+ "class",
1573
+ "src",
1574
+ "title",
1575
+ "artist",
1576
+ "errorMessage",
1577
+ "seekStep",
1578
+ "loop",
1579
+ "autoPlay"
1580
+ ]);
1581
+ const audioRef = core$1.useSignal();
1582
+ const rafId = core$1.useSignal(null);
1583
+ const isPlaying = core$1.useSignal(false);
1584
+ const isLoading = core$1.useSignal(true);
1585
+ const hasError = core$1.useSignal(false);
1586
+ const duration = core$1.useSignal(0);
1587
+ const currentTime = core$1.useSignal(0);
1588
+ const volume2 = core$1.useSignal(1);
1589
+ const isMuted = core$1.useSignal(false);
1590
+ const hoverRatio = core$1.useSignal(null);
1591
+ const progress = core$1.useComputedQrl(/* @__PURE__ */ core$1.inlinedQrl(() => {
1592
+ const currentTime2 = core$1._captures[0], duration2 = core$1._captures[1];
1593
+ return duration2.value > 0 ? Math.min(1, currentTime2.value / duration2.value) : 0;
1594
+ }, "ElmAudioPlayer_component_progress_useComputed_UmcsvccDM9g", [
1595
+ currentTime,
1596
+ duration
1597
+ ]));
1598
+ const volumeIcon = core$1.useComputedQrl(/* @__PURE__ */ core$1.inlinedQrl(() => {
1599
+ const isMuted2 = core$1._captures[0], volume22 = core$1._captures[1];
1600
+ if (isMuted2.value || volume22.value === 0) return js.mdiVolumeOff;
1601
+ if (volume22.value < 0.34) return js.mdiVolumeLow;
1602
+ if (volume22.value < 0.67) return js.mdiVolumeMedium;
1603
+ return js.mdiVolumeHigh;
1604
+ }, "ElmAudioPlayer_component_volumeIcon_useComputed_PPOFACXYryU", [
1605
+ isMuted,
1606
+ volume2
1607
+ ]));
1608
+ const resolvedTitle = core$1.useComputedQrl(/* @__PURE__ */ core$1.inlinedQrl(() => {
1609
+ const props2 = core$1._captures[0];
1610
+ return props2.title ?? fileNameFromSrc(props2.src);
1611
+ }, "ElmAudioPlayer_component_resolvedTitle_useComputed_n7BecSAD0Ho", [
1612
+ props
1613
+ ]));
1614
+ const startRaf = /* @__PURE__ */ core$1.inlinedQrl(() => {
1615
+ const audioRef2 = core$1._captures[0], currentTime2 = core$1._captures[1], rafId2 = core$1._captures[2];
1616
+ if (rafId2.value != null) return;
1617
+ const tick = () => {
1618
+ if (audioRef2.value) currentTime2.value = audioRef2.value.currentTime;
1619
+ rafId2.value = requestAnimationFrame(tick);
1620
+ };
1621
+ rafId2.value = requestAnimationFrame(tick);
1622
+ }, "ElmAudioPlayer_component_startRaf_uyzIbOd8edc", [
1623
+ audioRef,
1624
+ currentTime,
1625
+ rafId
1626
+ ]);
1627
+ const stopRaf = /* @__PURE__ */ core$1.inlinedQrl(() => {
1628
+ const rafId2 = core$1._captures[0];
1629
+ if (rafId2.value != null) {
1630
+ cancelAnimationFrame(rafId2.value);
1631
+ rafId2.value = null;
1632
+ }
1633
+ }, "ElmAudioPlayer_component_stopRaf_iSlA4zwTszs", [
1634
+ rafId
1635
+ ]);
1636
+ core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ cleanup }) => {
1637
+ const rafId2 = core$1._captures[0];
1638
+ cleanup(() => {
1639
+ if (rafId2.value != null) cancelAnimationFrame(rafId2.value);
1640
+ });
1641
+ }, "ElmAudioPlayer_component_useVisibleTask_yjHYVV53qtg", [
1642
+ rafId
1643
+ ]));
1644
+ const togglePlay = /* @__PURE__ */ core$1.inlinedQrl(() => {
1645
+ const audioRef2 = core$1._captures[0], isPlaying2 = core$1._captures[1];
1646
+ const audio2 = audioRef2.value;
1647
+ if (!audio2) return;
1648
+ if (audio2.paused) {
1649
+ void audio2.play().catch(() => isPlaying2.value = false);
1650
+ } else {
1651
+ audio2.pause();
1652
+ }
1653
+ }, "ElmAudioPlayer_component_togglePlay_sMx00mG9yLs", [
1654
+ audioRef,
1655
+ isPlaying
1656
+ ]);
1657
+ const seekTo = /* @__PURE__ */ core$1.inlinedQrl((seconds) => {
1658
+ const audioRef2 = core$1._captures[0], currentTime2 = core$1._captures[1], duration2 = core$1._captures[2];
1659
+ const audio2 = audioRef2.value;
1660
+ if (!audio2 || !Number.isFinite(duration2.value) || duration2.value <= 0) {
1661
+ return;
1662
+ }
1663
+ const clamped = Math.max(0, Math.min(duration2.value, seconds));
1664
+ audio2.currentTime = clamped;
1665
+ currentTime2.value = clamped;
1666
+ }, "ElmAudioPlayer_component_seekTo_IAobgQJxsaY", [
1667
+ audioRef,
1668
+ currentTime,
1669
+ duration
1670
+ ]);
1671
+ const changeVolume = /* @__PURE__ */ core$1.inlinedQrl((next) => {
1672
+ const audioRef2 = core$1._captures[0], isMuted2 = core$1._captures[1], volume22 = core$1._captures[2];
1673
+ const audio2 = audioRef2.value;
1674
+ const clamped = Math.max(0, Math.min(1, next));
1675
+ if (audio2) {
1676
+ audio2.volume = clamped;
1677
+ audio2.muted = clamped === 0;
1678
+ }
1679
+ volume22.value = clamped;
1680
+ isMuted2.value = clamped === 0;
1681
+ }, "ElmAudioPlayer_component_changeVolume_FE02J81CE7g", [
1682
+ audioRef,
1683
+ isMuted,
1684
+ volume2
1685
+ ]);
1686
+ const toggleMute = /* @__PURE__ */ core$1.inlinedQrl(() => {
1687
+ const audioRef2 = core$1._captures[0], isMuted2 = core$1._captures[1];
1688
+ const audio2 = audioRef2.value;
1689
+ if (!audio2) return;
1690
+ const next = !audio2.muted;
1691
+ audio2.muted = next;
1692
+ isMuted2.value = next;
1693
+ }, "ElmAudioPlayer_component_toggleMute_GwaccfmcDuM", [
1694
+ audioRef,
1695
+ isMuted
1696
+ ]);
1697
+ return /* @__PURE__ */ core$1._jsxSplit("div", {
1698
+ class: [
1699
+ styles$F["elm-audio-player"],
1700
+ isPlaying.value && styles$F.playing,
1701
+ isLoading.value && styles$F.loading,
1702
+ hasError.value && styles$F.errored,
1703
+ props.class
1704
+ ],
1705
+ style: core$1._fnSignal(_hf0$q, [
1706
+ hoverRatio,
1707
+ progress
1708
+ ]),
1709
+ ...core$1._getVarProps(rest)
1710
+ }, core$1._getConstProps(rest), [
1711
+ /* @__PURE__ */ core$1._jsxSorted("audio", {
1712
+ autoplay: core$1._wrapProp(props, "autoPlay"),
1713
+ loop: core$1._wrapProp(props, "loop"),
1714
+ "q-e:canplay": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _2, _3, _4, isLoading2) => isLoading2.value = false, "ElmAudioPlayer_component_div_audio_q_e_canplay_9wP9DQ5FnZw"),
1715
+ "q-e:durationchange": /* @__PURE__ */ core$1.inlinedQrl((_, el, _2, duration2) => duration2.value = el.duration, "ElmAudioPlayer_component_div_audio_q_e_durationchange_1Qldw8NrJFs"),
1716
+ "q-e:ended": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _2, _3, _4, _5, _6, isPlaying2, _8, _9, stopRaf2) => {
1717
+ isPlaying2.value = false;
1718
+ stopRaf2();
1719
+ }, "ElmAudioPlayer_component_div_audio_q_e_ended_6V0pmk1XTv4"),
1720
+ "q-e:error": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _2, _3, hasError2, isLoading2) => {
1721
+ hasError2.value = true;
1722
+ isLoading2.value = false;
1723
+ }, "ElmAudioPlayer_component_div_audio_q_e_error_iWobgs8gRR0"),
1724
+ "q-e:loadedmetadata": /* @__PURE__ */ core$1.inlinedQrl((_, el, _2, duration2, _4, isLoading2, isMuted2, _7, _8, _9, _10, volume22) => {
1725
+ duration2.value = el.duration;
1726
+ volume22.value = el.volume;
1727
+ isMuted2.value = el.muted;
1728
+ isLoading2.value = false;
1729
+ }, "ElmAudioPlayer_component_div_audio_q_e_loadedmetadata_u6lLcP8Pk4A"),
1730
+ "q-e:pause": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _2, _3, _4, _5, _6, isPlaying2, _8, _9, stopRaf2) => {
1731
+ isPlaying2.value = false;
1732
+ stopRaf2();
1733
+ }, "ElmAudioPlayer_component_div_audio_q_e_pause_RC60H909VsM"),
1734
+ "q-e:play": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _2, _3, _4, _5, _6, isPlaying2, _8, startRaf2) => {
1735
+ isPlaying2.value = true;
1736
+ startRaf2();
1737
+ }, "ElmAudioPlayer_component_div_audio_q_e_play_nhVqTik63OM"),
1738
+ "q-e:playing": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _2, _3, _4, isLoading2) => isLoading2.value = false, "ElmAudioPlayer_component_div_audio_q_e_playing_y7NnWkObWHI"),
1739
+ "q-e:timeupdate": /* @__PURE__ */ core$1.inlinedQrl((_, el, currentTime2, _3, _4, _5, _6, _7, rafId2) => {
1740
+ if (rafId2.value == null) currentTime2.value = el.currentTime;
1741
+ }, "ElmAudioPlayer_component_div_audio_q_e_timeupdate_q5IfjlJ1OeU"),
1742
+ "q-e:volumechange": /* @__PURE__ */ core$1.inlinedQrl((_, el, _2, _3, _4, _5, isMuted2, _7, _8, _9, _10, volume22) => {
1743
+ volume22.value = el.volume;
1744
+ isMuted2.value = el.muted;
1745
+ }, "ElmAudioPlayer_component_div_audio_q_e_volumechange_ItVSO66jfwo"),
1746
+ "q-e:waiting": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _2, _3, _4, isLoading2) => isLoading2.value = true, "ElmAudioPlayer_component_div_audio_q_e_waiting_iiUap70uy9g"),
1747
+ "q:ps": [
1748
+ currentTime,
1749
+ duration,
1750
+ hasError,
1751
+ isLoading,
1752
+ isMuted,
1753
+ isPlaying,
1754
+ rafId,
1755
+ startRaf,
1756
+ stopRaf,
1757
+ volume2
1758
+ ],
1759
+ ref: audioRef,
1760
+ src: core$1._wrapProp(props, "src")
1761
+ }, {
1762
+ preload: "metadata"
1763
+ }, null, 6, null),
1764
+ /* @__PURE__ */ core$1._jsxSorted("div", null, {
1765
+ class: styles$F.header
1766
+ }, [
1767
+ /* @__PURE__ */ core$1._jsxSorted("span", {
1768
+ class: [
1769
+ styles$F.artwork,
1770
+ hasError.value && styles$F["artwork-error"]
1771
+ ]
1772
+ }, {
1773
+ "aria-hidden": "true"
1774
+ }, /* @__PURE__ */ core$1._jsxSorted(ElmMdiIcon, {
1775
+ d: hasError.value ? js.mdiAlertCircleOutline : js.mdiMusicNote
1776
+ }, {
1777
+ size: "1.25rem"
1778
+ }, null, 3, "CY_0"), 1, null),
1779
+ /* @__PURE__ */ core$1._jsxSorted("div", null, {
1780
+ class: styles$F.meta
1781
+ }, [
1782
+ /* @__PURE__ */ core$1._jsxSorted("span", null, {
1783
+ class: styles$F.title,
1784
+ title: core$1._wrapProp(resolvedTitle)
1785
+ }, core$1._wrapProp(resolvedTitle), 3, null),
1786
+ props.artist && /* @__PURE__ */ core$1._jsxSorted("span", null, {
1787
+ class: styles$F.artist
1788
+ }, core$1._wrapProp(props, "artist"), 1, "CY_1")
1789
+ ], 1, null),
1790
+ /* @__PURE__ */ core$1._jsxSorted("span", null, {
1791
+ class: styles$F.equalizer,
1792
+ "aria-hidden": "true"
1793
+ }, [
1794
+ /* @__PURE__ */ core$1._jsxSorted("i", null, null, null, 3, null),
1795
+ /* @__PURE__ */ core$1._jsxSorted("i", null, null, null, 3, null),
1796
+ /* @__PURE__ */ core$1._jsxSorted("i", null, null, null, 3, null),
1797
+ /* @__PURE__ */ core$1._jsxSorted("i", null, null, null, 3, null)
1798
+ ], 3, null)
1799
+ ], 1, null),
1800
+ hasError.value ? /* @__PURE__ */ core$1._jsxSorted("div", null, {
1801
+ class: styles$F["error-notice"],
1802
+ role: "alert"
1803
+ }, [
1804
+ /* @__PURE__ */ core$1._jsxSorted(ElmMdiIcon, null, {
1805
+ d: js.mdiAlertCircleOutline,
1806
+ size: "1.25rem"
1807
+ }, null, 3, "CY_2"),
1808
+ /* @__PURE__ */ core$1._jsxSorted("span", null, {
1809
+ class: styles$F["error-message"]
1810
+ }, core$1._fnSignal(_hf1$e, [
1811
+ props
1812
+ ]), 1, null)
1813
+ ], 1, "CY_3") : /* @__PURE__ */ core$1._jsxSorted(jsxRuntime.Fragment, null, null, [
1814
+ /* @__PURE__ */ core$1._jsxSorted("div", {
1815
+ "aria-valuemax": Math.round(duration.value) || 0,
1816
+ "aria-valuenow": Math.round(currentTime.value),
1817
+ "aria-valuetext": `${formatTime(currentTime.value)} of ${formatTime(duration.value)}`,
1818
+ "q-e:keydown": /* @__PURE__ */ core$1.inlinedQrl((event, _1, currentTime2, duration2, _4, props2, seekTo2) => {
1819
+ if (event.key === "ArrowRight") {
1820
+ event.preventDefault();
1821
+ seekTo2(currentTime2.value + (props2.seekStep ?? 10));
1822
+ } else if (event.key === "ArrowLeft") {
1823
+ event.preventDefault();
1824
+ seekTo2(currentTime2.value - (props2.seekStep ?? 10));
1825
+ } else if (event.key === "Home") {
1826
+ event.preventDefault();
1827
+ seekTo2(0);
1828
+ } else if (event.key === "End") {
1829
+ event.preventDefault();
1830
+ seekTo2(duration2.value);
1831
+ }
1832
+ }, "ElmAudioPlayer_component_div_Fragment_div_q_e_keydown_J0ebQ9Yvu08"),
1833
+ "q-e:pointerdown": /* @__PURE__ */ core$1.inlinedQrl((event, el, _2, duration2, _4, _5, seekTo2) => {
1834
+ el.setPointerCapture(event.pointerId);
1835
+ const rect2 = el.getBoundingClientRect();
1836
+ const ratio = rect2.width === 0 ? 0 : Math.max(0, Math.min(1, (event.clientX - rect2.left) / rect2.width));
1837
+ seekTo2(ratio * duration2.value);
1838
+ }, "ElmAudioPlayer_component_div_Fragment_div_q_e_pointerdown_780WVX50v1Y"),
1839
+ "q-e:pointerleave": /* @__PURE__ */ core$1.inlinedQrl((_, _1, _2, _3, hoverRatio2) => hoverRatio2.value = null, "ElmAudioPlayer_component_div_Fragment_div_q_e_pointerleave_K0r0ltqd1Ak"),
1840
+ "q-e:pointermove": /* @__PURE__ */ core$1.inlinedQrl((event, el, _2, duration2, hoverRatio2, _5, seekTo2) => {
1841
+ const rect2 = el.getBoundingClientRect();
1842
+ const ratio = rect2.width === 0 ? 0 : Math.max(0, Math.min(1, (event.clientX - rect2.left) / rect2.width));
1843
+ hoverRatio2.value = ratio;
1844
+ if (el.hasPointerCapture(event.pointerId)) {
1845
+ seekTo2(ratio * duration2.value);
1846
+ }
1847
+ }, "ElmAudioPlayer_component_div_Fragment_div_q_e_pointermove_aXJtCYXlCkc"),
1848
+ "q:ps": [
1849
+ currentTime,
1850
+ duration,
1851
+ hoverRatio,
1852
+ props,
1853
+ seekTo
1854
+ ]
1855
+ }, {
1856
+ class: styles$F.seekbar,
1857
+ role: "slider",
1858
+ tabIndex: 0,
1859
+ "aria-label": "Seek",
1860
+ "aria-valuemin": 0
1861
+ }, [
1862
+ /* @__PURE__ */ core$1._jsxSorted("div", null, {
1863
+ class: styles$F.track,
1864
+ "aria-hidden": "true"
1865
+ }, /* @__PURE__ */ core$1._jsxSorted("div", null, {
1866
+ class: styles$F.fill
1867
+ }, null, 3, null), 3, null),
1868
+ /* @__PURE__ */ core$1._jsxSorted("span", null, {
1869
+ class: styles$F["hover-thumb"],
1870
+ "aria-hidden": "true"
1871
+ }, null, 3, null),
1872
+ /* @__PURE__ */ core$1._jsxSorted("span", null, {
1873
+ class: styles$F.thumb,
1874
+ "aria-hidden": "true"
1875
+ }, null, 3, null)
1876
+ ], 6, null),
1877
+ /* @__PURE__ */ core$1._jsxSorted("div", null, {
1878
+ class: styles$F.controls
1879
+ }, [
1880
+ /* @__PURE__ */ core$1._jsxSorted("span", null, {
1881
+ class: [
1882
+ styles$F.time,
1883
+ styles$F["time-current"]
1884
+ ]
1885
+ }, formatTime(currentTime.value), 1, null),
1886
+ /* @__PURE__ */ core$1._jsxSorted("div", null, {
1887
+ class: styles$F["transport"]
1888
+ }, [
1889
+ /* @__PURE__ */ core$1._jsxSorted("button", {
1890
+ "aria-label": `Back ${props.seekStep ?? 10} seconds`,
1891
+ "q-e:click": /* @__PURE__ */ core$1.inlinedQrl((_, _1, currentTime2, props2, seekTo2) => seekTo2(currentTime2.value - (props2.seekStep ?? 10)), "ElmAudioPlayer_component_div_Fragment_div_div_button_q_e_click_dyAWFy4PvTs"),
1892
+ "q:ps": [
1893
+ currentTime,
1894
+ props,
1895
+ seekTo
1896
+ ]
1897
+ }, {
1898
+ type: "button",
1899
+ class: styles$F["icon-button"]
1900
+ }, /* @__PURE__ */ core$1._jsxSorted(ElmMdiIcon, null, {
1901
+ d: js.mdiRewind10,
1902
+ size: "1.25rem"
1903
+ }, null, 3, "CY_4"), 4, null),
1904
+ /* @__PURE__ */ core$1._jsxSorted("button", null, {
1905
+ type: "button",
1906
+ class: styles$F["play-button"],
1907
+ "q-e:click": togglePlay,
1908
+ "aria-label": core$1._fnSignal(_hf2$a, [
1909
+ isPlaying
1910
+ ]),
1911
+ "aria-pressed": core$1._wrapProp(isPlaying)
1912
+ }, /* @__PURE__ */ core$1._jsxSorted(ElmMdiIcon, {
1913
+ d: isPlaying.value ? js.mdiPause : js.mdiPlay
1914
+ }, {
1915
+ size: "1.5rem"
1916
+ }, null, 3, "CY_5"), 1, null),
1917
+ /* @__PURE__ */ core$1._jsxSorted("button", {
1918
+ "aria-label": `Forward ${props.seekStep ?? 10} seconds`,
1919
+ "q-e:click": /* @__PURE__ */ core$1.inlinedQrl((_, _1, currentTime2, props2, seekTo2) => seekTo2(currentTime2.value + (props2.seekStep ?? 10)), "ElmAudioPlayer_component_div_Fragment_div_div_button_q_e_click_1_8X73FmeqLbY"),
1920
+ "q:ps": [
1921
+ currentTime,
1922
+ props,
1923
+ seekTo
1924
+ ]
1925
+ }, {
1926
+ type: "button",
1927
+ class: styles$F["icon-button"]
1928
+ }, /* @__PURE__ */ core$1._jsxSorted(ElmMdiIcon, null, {
1929
+ d: js.mdiFastForward10,
1930
+ size: "1.25rem"
1931
+ }, null, 3, "CY_6"), 4, null)
1932
+ ], 1, null),
1933
+ /* @__PURE__ */ core$1._jsxSorted("div", null, {
1934
+ class: styles$F.volume
1935
+ }, [
1936
+ /* @__PURE__ */ core$1._jsxSorted("button", null, {
1937
+ type: "button",
1938
+ class: styles$F["icon-button"],
1939
+ "q-e:click": toggleMute,
1940
+ "aria-label": core$1._fnSignal(_hf3$9, [
1941
+ isMuted
1942
+ ]),
1943
+ "aria-pressed": core$1._wrapProp(isMuted)
1944
+ }, /* @__PURE__ */ core$1._jsxSorted(ElmMdiIcon, null, {
1945
+ d: core$1._wrapProp(volumeIcon),
1946
+ size: "1.25rem"
1947
+ }, null, 3, "CY_7"), 1, null),
1948
+ /* @__PURE__ */ core$1._jsxSorted("input", {
1949
+ "q-e:input": /* @__PURE__ */ core$1.inlinedQrl((_, el, changeVolume2) => changeVolume2(el.valueAsNumber), "ElmAudioPlayer_component_div_Fragment_div_div_input_q_e_input_wgZ524DJ28g"),
1950
+ "q:p": changeVolume
1951
+ }, {
1952
+ class: styles$F["volume-slider"],
1953
+ type: "range",
1954
+ min: 0,
1955
+ max: 1,
1956
+ step: 0.01,
1957
+ value: core$1._fnSignal(_hf4$5, [
1958
+ isMuted,
1959
+ volume2
1960
+ ]),
1961
+ "aria-label": "Volume",
1962
+ style: core$1._fnSignal(_hf5$3, [
1963
+ isMuted,
1964
+ volume2
1965
+ ])
1966
+ }, null, 6, null)
1967
+ ], 1, null),
1968
+ /* @__PURE__ */ core$1._jsxSorted("span", null, {
1969
+ class: [
1970
+ styles$F.time,
1971
+ styles$F["time-total"]
1972
+ ]
1973
+ }, formatTime(duration.value), 1, null)
1974
+ ], 1, null)
1975
+ ], 1, "CY_8")
1976
+ ], 0, "CY_9");
1977
+ }, "ElmAudioPlayer_component_yG6lZHeffu8"));
1494
1978
  const image$2 = "_image_kwjx3_12";
1495
1979
  const fallback$1 = "_fallback_kwjx3_36";
1496
1980
  const styles$E = {
@@ -1532,9 +2016,9 @@ const ElmModal = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inli
1532
2016
  ]);
1533
2017
  const dialogRef = core$1.useSignal();
1534
2018
  const isShown = core$1.useSignal(false);
1535
- core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track, cleanup }) => {
2019
+ core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2, cleanup }) => {
1536
2020
  const dialogRef2 = core$1._captures[0], isShown2 = core$1._captures[1], props2 = core$1._captures[2];
1537
- track(() => props2.isOpen);
2021
+ track2(() => props2.isOpen);
1538
2022
  if (!dialogRef2.value) return;
1539
2023
  if (props2.isOpen) {
1540
2024
  dialogRef2.value.showModal();
@@ -2178,9 +2662,9 @@ const ElmTable = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inli
2178
2662
  "hasRowHeader"
2179
2663
  ]);
2180
2664
  const hasRowHeader = core$1.useSignal(props.hasRowHeader ?? false);
2181
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
2665
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
2182
2666
  const hasRowHeader2 = core$1._captures[0], props2 = core$1._captures[1];
2183
- hasRowHeader2.value = track(() => props2.hasRowHeader) ?? false;
2667
+ hasRowHeader2.value = track2(() => props2.hasRowHeader) ?? false;
2184
2668
  }, "ElmTable_component_useTask_TZl40E0lLa8", [
2185
2669
  hasRowHeader,
2186
2670
  props
@@ -2335,10 +2819,14 @@ const ElmUnsupportedBlock = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */
2335
2819
  }, "ElmUnsupportedBlock_component_yKqwfnlPSP4"));
2336
2820
  const _hf0$l = (p0) => p0.props.color;
2337
2821
  const _hf1$b = (p0) => p0.props.ruby;
2338
- const _hf10 = (p0) => p0.props.width;
2339
- const _hf11 = (p0) => p0.props.height;
2340
- const _hf12 = (p0) => p0.props.hasRowHeader;
2341
- const _hf13 = (p0) => p0.props.isHeader;
2822
+ const _hf10 = (p0) => p0.props.seekStep;
2823
+ const _hf11 = (p0) => p0.props.loop;
2824
+ const _hf12 = (p0) => p0.props.autoPlay;
2825
+ const _hf13 = (p0) => p0.props.width;
2826
+ const _hf14 = (p0) => p0.props.height;
2827
+ const _hf15 = (p0) => p0.props.muted;
2828
+ const _hf16 = (p0) => p0.props.hasRowHeader;
2829
+ const _hf17 = (p0) => p0.props.isHeader;
2342
2830
  const _hf2$8 = (p0) => p0.props.href;
2343
2831
  const _hf3$7 = (p0) => p0.props.favicon;
2344
2832
  const _hf4$3 = (p0) => p0.props.alt;
@@ -2492,6 +2980,59 @@ const blockCatalog = basicCatalog.extend(
2492
2980
  src: _rawProps.resolve(_rawProps.props.src),
2493
2981
  style: firstChildMargin(_rawProps.index)
2494
2982
  }, null, null, 3, "Fl_15")),
2983
+ defineRenderer(core.AudioApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted(ElmAudioPlayer, {
2984
+ artist: _rawProps.props.artist ? _rawProps.resolve(_rawProps.props.artist) : void 0,
2985
+ src: _rawProps.resolve(_rawProps.props.src),
2986
+ style: firstChildMargin(_rawProps.index),
2987
+ title: _rawProps.props.title ? _rawProps.resolve(_rawProps.props.title) : void 0
2988
+ }, {
2989
+ seekStep: core$1._fnSignal(_hf10, [
2990
+ _rawProps
2991
+ ]),
2992
+ loop: core$1._fnSignal(_hf11, [
2993
+ _rawProps
2994
+ ]),
2995
+ autoPlay: core$1._fnSignal(_hf12, [
2996
+ _rawProps
2997
+ ])
2998
+ }, null, 3, "Fl_16")),
2999
+ defineRenderer(core.VideoApi, (_rawProps) => {
3000
+ const caption2 = _rawProps.props.caption ? _rawProps.resolve(_rawProps.props.caption) : void 0;
3001
+ return /* @__PURE__ */ core$1._jsxSorted("figure", {
3002
+ style: {
3003
+ ...firstChildMargin(_rawProps.index),
3004
+ margin: 0
3005
+ }
3006
+ }, null, [
3007
+ /* @__PURE__ */ core$1._jsxSorted("video", {
3008
+ autoplay: core$1._fnSignal(_hf12, [
3009
+ _rawProps
3010
+ ]),
3011
+ height: core$1._fnSignal(_hf14, [
3012
+ _rawProps
3013
+ ]),
3014
+ loop: core$1._fnSignal(_hf11, [
3015
+ _rawProps
3016
+ ]),
3017
+ muted: core$1._fnSignal(_hf15, [
3018
+ _rawProps
3019
+ ]),
3020
+ poster: _rawProps.props.poster ? _rawProps.resolve(_rawProps.props.poster) : void 0,
3021
+ src: _rawProps.resolve(_rawProps.props.src),
3022
+ title: _rawProps.props.title ? _rawProps.resolve(_rawProps.props.title) : void 0,
3023
+ width: core$1._fnSignal(_hf13, [
3024
+ _rawProps
3025
+ ])
3026
+ }, {
3027
+ controls: true,
3028
+ style: {
3029
+ maxWidth: "100%",
3030
+ height: "auto"
3031
+ }
3032
+ }, null, 3, null),
3033
+ caption2 ? /* @__PURE__ */ core$1._jsxSorted("figcaption", null, null, caption2, 1, "Fl_17") : null
3034
+ ], 1, "Fl_18");
3035
+ }),
2495
3036
  defineRenderer(core.BlockImageApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted(ElmBlockImage, {
2496
3037
  alt: _rawProps.props.alt ? _rawProps.resolve(_rawProps.props.alt) : void 0,
2497
3038
  caption: _rawProps.props.caption ? _rawProps.resolve(_rawProps.props.caption) : void 0,
@@ -2500,14 +3041,14 @@ const blockCatalog = basicCatalog.extend(
2500
3041
  srcset: _rawProps.props.srcset ? _rawProps.resolve(_rawProps.props.srcset) : void 0,
2501
3042
  style: firstChildMargin(_rawProps.index)
2502
3043
  }, {
2503
- width: core$1._fnSignal(_hf10, [
3044
+ width: core$1._fnSignal(_hf13, [
2504
3045
  _rawProps
2505
3046
  ]),
2506
- height: core$1._fnSignal(_hf11, [
3047
+ height: core$1._fnSignal(_hf14, [
2507
3048
  _rawProps
2508
3049
  ]),
2509
3050
  enableModal: true
2510
- }, null, 3, "Fl_16")),
3051
+ }, null, 3, "Fl_19")),
2511
3052
  // -------------------------------------------------------------------------
2512
3053
  // Code / math / diagram
2513
3054
  // -------------------------------------------------------------------------
@@ -2516,13 +3057,13 @@ const blockCatalog = basicCatalog.extend(
2516
3057
  code: _rawProps.resolve(_rawProps.props.code),
2517
3058
  language: _rawProps.props.language ? _rawProps.resolve(_rawProps.props.language) : void 0,
2518
3059
  style: firstChildMargin(_rawProps.index)
2519
- }, null, null, 3, "Fl_17")),
3060
+ }, null, null, 3, "Fl_20")),
2520
3061
  defineRenderer(core.KatexApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted(ElmKatex, {
2521
3062
  expression: _rawProps.resolve(_rawProps.props.expression),
2522
3063
  style: firstChildMargin(_rawProps.index)
2523
3064
  }, {
2524
3065
  block: true
2525
- }, null, 3, "Fl_18")),
3066
+ }, null, 3, "Fl_21")),
2526
3067
  // Mermaid is rendered as a syntax-highlighted code block — no dedicated
2527
3068
  // Mermaid renderer in this package. The diagram source is preserved so a
2528
3069
  // host application can post-process if needed.
@@ -2531,7 +3072,7 @@ const blockCatalog = basicCatalog.extend(
2531
3072
  style: firstChildMargin(_rawProps.index)
2532
3073
  }, {
2533
3074
  language: "mermaid"
2534
- }, null, 3, "Fl_19")),
3075
+ }, null, 3, "Fl_22")),
2535
3076
  // -------------------------------------------------------------------------
2536
3077
  // Tabs — ContentTab is data-only (its parent ContentTabs walks the surface
2537
3078
  // model to read each tab's label and content ChildList directly).
@@ -2554,11 +3095,11 @@ const blockCatalog = basicCatalog.extend(
2554
3095
  }, [
2555
3096
  /* @__PURE__ */ core$1._jsxSorted(ElmTabList, null, null, tabs.map(({ tabId, labelIds }, idx) => /* @__PURE__ */ core$1._jsxSorted(ElmTab, {
2556
3097
  value: String(idx)
2557
- }, null, labelIds.map((lid, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(lid, "/", i), 1, `${lid}:${i}`)), 1, tabId)), 1, "Fl_20"),
3098
+ }, null, labelIds.map((lid, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(lid, "/", i), 1, `${lid}:${i}`)), 1, tabId)), 1, "Fl_23"),
2558
3099
  tabs.map(({ tabId, contentIds }, idx) => /* @__PURE__ */ core$1._jsxSorted(ElmTabPanel, {
2559
3100
  value: String(idx)
2560
3101
  }, null, contentIds.map((cid, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(cid, "/", i), 1, `${cid}:${i}`)), 1, tabId))
2561
- ], 1, "Fl_21");
3102
+ ], 1, "Fl_24");
2562
3103
  }),
2563
3104
  // -------------------------------------------------------------------------
2564
3105
  // Table
@@ -2567,27 +3108,27 @@ const blockCatalog = basicCatalog.extend(
2567
3108
  caption: _rawProps.props.caption ? String(_rawProps.props.caption) : void 0,
2568
3109
  style: firstChildMargin(_rawProps.index)
2569
3110
  }, {
2570
- hasRowHeader: core$1._fnSignal(_hf12, [
3111
+ hasRowHeader: core$1._fnSignal(_hf16, [
2571
3112
  _rawProps
2572
3113
  ])
2573
3114
  }, [
2574
- _rawProps.props.header && _rawProps.props.header.length > 0 && /* @__PURE__ */ core$1._jsxSorted(ElmTableHeader, null, null, _rawProps.childRefs(_rawProps.props.header).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Fl_22"),
2575
- /* @__PURE__ */ core$1._jsxSorted(ElmTableBody, null, null, _rawProps.childRefs(_rawProps.props.body).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Fl_23")
2576
- ], 1, "Fl_24")),
2577
- defineRenderer(core.TableRowApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted(ElmTableRow, null, null, _rawProps.childRefs(_rawProps.props.children).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Fl_25")),
3115
+ _rawProps.props.header && _rawProps.props.header.length > 0 && /* @__PURE__ */ core$1._jsxSorted(ElmTableHeader, null, null, _rawProps.childRefs(_rawProps.props.header).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Fl_25"),
3116
+ /* @__PURE__ */ core$1._jsxSorted(ElmTableBody, null, null, _rawProps.childRefs(_rawProps.props.body).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Fl_26")
3117
+ ], 1, "Fl_27")),
3118
+ defineRenderer(core.TableRowApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted(ElmTableRow, null, null, _rawProps.childRefs(_rawProps.props.children).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted(core$1.Fragment, null, null, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Fl_28")),
2578
3119
  defineRenderer(core.TableCellApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted(ElmTableCell, null, {
2579
- isHeader: core$1._fnSignal(_hf13, [
3120
+ isHeader: core$1._fnSignal(_hf17, [
2580
3121
  _rawProps
2581
3122
  ]),
2582
3123
  columnIndex: core$1._wrapProp(_rawProps, "index")
2583
- }, _rawProps.childRefs(_rawProps.props.children).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted("span", null, null, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Fl_26")),
3124
+ }, _rawProps.childRefs(_rawProps.props.children).map(({ id, path }, i) => /* @__PURE__ */ core$1._jsxSorted("span", null, null, _rawProps.renderChild(id, path, i), 1, `${id}:${i}`)), 1, "Fl_29")),
2584
3125
  // -------------------------------------------------------------------------
2585
3126
  // Fallback
2586
3127
  // -------------------------------------------------------------------------
2587
3128
  defineRenderer(core.UnsupportedApi, (_rawProps) => /* @__PURE__ */ core$1._jsxSorted(ElmUnsupportedBlock, {
2588
3129
  details: _rawProps.props.details ? `Unsupported component type: ${String(_rawProps.props.details)}` : "Unsupported component type",
2589
3130
  style: firstChildMargin(_rawProps.index)
2590
- }, null, null, 3, "Fl_27"))
3131
+ }, null, null, 3, "Fl_30"))
2591
3132
  );
2592
3133
  function findCompleteReasoningGroups(events) {
2593
3134
  const started = /* @__PURE__ */ new Set();
@@ -2810,9 +3351,9 @@ const ElmAgUiPromptPicker = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */
2810
3351
  error: null
2811
3352
  });
2812
3353
  const firstFieldRef = core$1.useSignal();
2813
- core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
3354
+ core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
2814
3355
  const active22 = core$1._captures[0], firstFieldRef2 = core$1._captures[1];
2815
- const desc = track(() => active22.descriptor);
3356
+ const desc = track2(() => active22.descriptor);
2816
3357
  if (!desc) return;
2817
3358
  requestAnimationFrame(() => firstFieldRef2.value?.focus());
2818
3359
  }, "ElmAgUiPromptPicker_component_useVisibleTask_feapXj33s9k", [
@@ -2842,10 +3383,10 @@ const ElmAgUiPromptPicker = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */
2842
3383
  active2,
2843
3384
  modal2
2844
3385
  ]);
2845
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(async ({ track }) => {
3386
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(async ({ track: track2 }) => {
2846
3387
  const _rawProps2 = core$1._captures[0], onRowClick$2 = core$1._captures[1];
2847
3388
  if (!_rawProps2.triggerDescriptor) return;
2848
- const desc = track(() => _rawProps2.triggerDescriptor.value);
3389
+ const desc = track2(() => _rawProps2.triggerDescriptor.value);
2849
3390
  if (desc === null) return;
2850
3391
  _rawProps2.triggerDescriptor.value = null;
2851
3392
  await onRowClick$2(desc);
@@ -3422,9 +3963,9 @@ const ElmMarkdown = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.i
3422
3963
  ]);
3423
3964
  const stableTokens = core$1.useSignal([]);
3424
3965
  const tailTokens = core$1.useSignal([]);
3425
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
3966
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
3426
3967
  const props2 = core$1._captures[0], stableTokens2 = core$1._captures[1], tailTokens2 = core$1._captures[2];
3427
- const md = track(() => props2.markdown);
3968
+ const md = track2(() => props2.markdown);
3428
3969
  const allTokens = marked.marked.setOptions({
3429
3970
  gfm: true
3430
3971
  }).lexer(md);
@@ -3550,9 +4091,9 @@ const ElmAgUiToolExecution = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */
3550
4091
  const isResultShown = core$1.useSignal(false);
3551
4092
  const isResultOpen = core$1.useSignal(false);
3552
4093
  const queue = useThrottledQueue(200);
3553
- core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
4094
+ core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
3554
4095
  const _rawProps2 = core$1._captures[0], isArgsOpen2 = core$1._captures[1], isArgsShown2 = core$1._captures[2], isOpen2 = core$1._captures[3], isResultOpen2 = core$1._captures[4], isResultShown2 = core$1._captures[5], queue2 = core$1._captures[6];
3555
- const eventType = track(() => _rawProps2.toolEventType);
4096
+ const eventType = track2(() => _rawProps2.toolEventType);
3556
4097
  switch (eventType) {
3557
4098
  case core$2.EventType.TOOL_CALL_START:
3558
4099
  queue2.value?.push(async () => {
@@ -3893,16 +4434,16 @@ const ElmAgUiMessageRenderer = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__
3893
4434
  const reasoningRef = core$1.useSignal();
3894
4435
  const lastScrollTime = core$1.useSignal(0);
3895
4436
  const isOpen = core$1.useSignal(props.isReasoningRunning);
3896
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
4437
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
3897
4438
  const isOpen2 = core$1._captures[0], props2 = core$1._captures[1];
3898
- isOpen2.value = track(() => props2.isReasoningRunning);
4439
+ isOpen2.value = track2(() => props2.isReasoningRunning);
3899
4440
  }, "ElmAgUiMessageRenderer_component_render_Reasoning_component_useTask_60ln3xg09dQ", [
3900
4441
  isOpen,
3901
4442
  props
3902
4443
  ]));
3903
- core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
4444
+ core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
3904
4445
  const lastScrollTime2 = core$1._captures[0], props2 = core$1._captures[1], reasoningRef2 = core$1._captures[2];
3905
- track(() => props2.markdown);
4446
+ track2(() => props2.markdown);
3906
4447
  const now = Date.now();
3907
4448
  if (now - lastScrollTime2.value < 500) return;
3908
4449
  lastScrollTime2.value = now;
@@ -4041,9 +4582,9 @@ const ElmAgUiAgent = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.
4041
4582
  const input2 = core$1.useSignal("");
4042
4583
  const containerRef = core$1.useSignal();
4043
4584
  const lastScrollTime = core$1.useSignal(0);
4044
- core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
4585
+ core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
4045
4586
  const containerRef2 = core$1._captures[0], lastScrollTime2 = core$1._captures[1], props2 = core$1._captures[2];
4046
- track(() => props2.state.messages.length);
4587
+ track2(() => props2.state.messages.length);
4047
4588
  if (props2.enableAutoScroll) {
4048
4589
  const now = Date.now();
4049
4590
  if (now - lastScrollTime2.value < 500) return;
@@ -4315,10 +4856,10 @@ function useAgent({ url, tools, context, headers, initialMessages, agentFactory
4315
4856
  toolsRef,
4316
4857
  toolsSignal
4317
4858
  ]);
4318
- core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ cleanup, track }) => {
4859
+ core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ cleanup, track: track2 }) => {
4319
4860
  const agentRef2 = core$1._captures[0], executeRun2 = core$1._captures[1], factoryRef2 = core$1._captures[2], headers2 = core$1._captures[3], state2 = core$1._captures[4], toolsRef2 = core$1._captures[5], toolsSignal2 = core$1._captures[6], url2 = core$1._captures[7];
4320
- const trackedUrl = track(() => url2);
4321
- const trackedHeaders = track(() => headers2 ? {
4861
+ const trackedUrl = track2(() => url2);
4862
+ const trackedHeaders = track2(() => headers2 ? {
4322
4863
  ...headers2
4323
4864
  } : void 0);
4324
4865
  const factory = factoryRef2.value ?? ((opts) => new client.HttpAgent(opts));
@@ -4460,12 +5001,12 @@ async function createMcpClient(cfg) {
4460
5001
  const client2 = new Client(CLIENT_INFO, {
4461
5002
  capabilities: {}
4462
5003
  });
4463
- const transport = new StreamableHTTPClientTransport(new URL(cfg.url), {
5004
+ const transport2 = new StreamableHTTPClientTransport(new URL(cfg.url), {
4464
5005
  requestInit: cfg.headers ? {
4465
5006
  headers: cfg.headers
4466
5007
  } : void 0
4467
5008
  });
4468
- await client2.connect(transport);
5009
+ await client2.connect(transport2);
4469
5010
  return {
4470
5011
  listTools: async () => {
4471
5012
  const { tools } = await client2.listTools();
@@ -4926,6 +5467,7 @@ const styles$d = {
4926
5467
  };
4927
5468
  const ElmButton = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inlinedQrl((props) => {
4928
5469
  const clicked = core$1.useSignal(false);
5470
+ const timer = core$1.useSignal();
4929
5471
  const rest = core$1._restProps(props, [
4930
5472
  "class",
4931
5473
  "onClick$",
@@ -4935,18 +5477,26 @@ const ElmButton = /* @__PURE__ */ core$1.componentQrl(/* @__PURE__ */ core$1.inl
4935
5477
  "color",
4936
5478
  "primary"
4937
5479
  ]);
5480
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ cleanup }) => {
5481
+ const timer2 = core$1._captures[0];
5482
+ cleanup(() => clearTimeout(timer2.value));
5483
+ }, "ElmButton_component_useTask_CIR92bUomvY", [
5484
+ timer
5485
+ ]));
4938
5486
  const handleClick = /* @__PURE__ */ core$1.inlinedQrl(async () => {
4939
- const clicked2 = core$1._captures[0], props2 = core$1._captures[1];
5487
+ const clicked2 = core$1._captures[0], props2 = core$1._captures[1], timer2 = core$1._captures[2];
4940
5488
  if (!props2.isLoading && !props2.disabled) {
4941
5489
  if (props2.onClick$) {
4942
5490
  clicked2.value = true;
4943
- setTimeout(() => clicked2.value = false, 300);
5491
+ clearTimeout(timer2.value);
5492
+ timer2.value = setTimeout(() => clicked2.value = false, 300);
4944
5493
  await props2.onClick$();
4945
5494
  }
4946
5495
  }
4947
5496
  }, "ElmButton_component_handleClick_TjZWd0Dz3m8", [
4948
5497
  clicked,
4949
- props
5498
+ props,
5499
+ timer
4950
5500
  ]);
4951
5501
  return /* @__PURE__ */ core$1._jsxSplit("button", {
4952
5502
  "q-e:click": handleClick,
@@ -5846,9 +6396,9 @@ const useDebouncedSignal = (initialValue, delay) => {
5846
6396
  const signal = core$1.useSignal(resolved);
5847
6397
  const debouncedSignal = core$1.useSignal(resolved);
5848
6398
  const isPending = core$1.useSignal(false);
5849
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track, cleanup }) => {
6399
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2, cleanup }) => {
5850
6400
  const debouncedSignal2 = core$1._captures[0], delay2 = core$1._captures[1], isPending2 = core$1._captures[2], signal2 = core$1._captures[3];
5851
- const value = track(() => signal2.value);
6401
+ const value = track2(() => signal2.value);
5852
6402
  if (delay2 <= 0) {
5853
6403
  debouncedSignal2.value = value;
5854
6404
  isPending2.value = false;
@@ -5886,9 +6436,9 @@ const useDebouncedStore = (initialValue, delay) => {
5886
6436
  const store = core$1.useStore(esToolkit.cloneDeep(initialValue));
5887
6437
  const debouncedStore = core$1.useStore(esToolkit.cloneDeep(initialValue));
5888
6438
  const isPending = core$1.useSignal(false);
5889
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track, cleanup }) => {
6439
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2, cleanup }) => {
5890
6440
  const debouncedStore2 = core$1._captures[0], delay2 = core$1._captures[1], isPending2 = core$1._captures[2], store2 = core$1._captures[3];
5891
- const snapshot = track(() => esToolkit.cloneDeep(store2));
6441
+ const snapshot = track2(() => esToolkit.cloneDeep(store2));
5892
6442
  if (delay2 <= 0) {
5893
6443
  syncStore$1(debouncedStore2, snapshot);
5894
6444
  isPending2.value = false;
@@ -5968,9 +6518,9 @@ const useThrottledSignal = (initialValue, interval) => {
5968
6518
  }, "useThrottledSignal_useTask_guB8zmf2bYc", [
5969
6519
  cooldownId
5970
6520
  ]));
5971
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
6521
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
5972
6522
  const cooldownId2 = core$1._captures[0], interval2 = core$1._captures[1], isCooling2 = core$1._captures[2], signal2 = core$1._captures[3], throttledSignal2 = core$1._captures[4];
5973
- const value = track(() => signal2.value);
6523
+ const value = track2(() => signal2.value);
5974
6524
  if (interval2 <= 0) {
5975
6525
  throttledSignal2.value = value;
5976
6526
  return;
@@ -6023,9 +6573,9 @@ const useThrottledStore = (initialValue, interval) => {
6023
6573
  }, "useThrottledStore_useTask_3uGijs762ho", [
6024
6574
  cooldownId
6025
6575
  ]));
6026
- core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
6576
+ core$1.useTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
6027
6577
  const cooldownId2 = core$1._captures[0], interval2 = core$1._captures[1], isCooling2 = core$1._captures[2], store2 = core$1._captures[3], throttledStore2 = core$1._captures[4];
6028
- const snapshot = track(() => esToolkit.cloneDeep(store2));
6578
+ const snapshot = track2(() => esToolkit.cloneDeep(store2));
6029
6579
  if (interval2 <= 0) {
6030
6580
  syncStore(throttledStore2, snapshot);
6031
6581
  return;
@@ -6188,9 +6738,9 @@ const useStorage = (_rawProps) => {
6188
6738
  ]), {
6189
6739
  strategy: "document-ready"
6190
6740
  });
6191
- core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track }) => {
6741
+ core$1.useVisibleTaskQrl(/* @__PURE__ */ core$1.inlinedQrl(({ track: track2 }) => {
6192
6742
  const _rawProps2 = core$1._captures[0], bcRef2 = core$1._captures[1], state2 = core$1._captures[2], storageRef2 = core$1._captures[3];
6193
- const newState = track(state2);
6743
+ const newState = track2(state2);
6194
6744
  const storage = storageRef2.value;
6195
6745
  if (!storage) return;
6196
6746
  try {
@@ -24269,6 +24819,7 @@ exports.ElmAgUiInputContent = ElmAgUiInputContent;
24269
24819
  exports.ElmAgUiMessageRenderer = ElmAgUiMessageRenderer;
24270
24820
  exports.ElmAgUiPromptPicker = ElmAgUiPromptPicker;
24271
24821
  exports.ElmAgUiToolExecution = ElmAgUiToolExecution;
24822
+ exports.ElmAudioPlayer = ElmAudioPlayer;
24272
24823
  exports.ElmBlockFallback = ElmBlockFallback;
24273
24824
  exports.ElmBlockImage = ElmBlockImage;
24274
24825
  exports.ElmBlockQuote = ElmBlockQuote;