@djangocfg/ui-tools 2.1.103 → 2.1.105

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 (32) hide show
  1. package/dist/{LottiePlayer.client-WFMG2OOW.cjs → LottiePlayer.client-6WVWDO75.cjs} +6 -6
  2. package/dist/{LottiePlayer.client-WFMG2OOW.cjs.map → LottiePlayer.client-6WVWDO75.cjs.map} +1 -1
  3. package/dist/{LottiePlayer.client-LBEC2JKY.mjs → LottiePlayer.client-B4I6WNZM.mjs} +4 -4
  4. package/dist/{LottiePlayer.client-LBEC2JKY.mjs.map → LottiePlayer.client-B4I6WNZM.mjs.map} +1 -1
  5. package/dist/{Mermaid.client-4TU2TSH3.mjs → Mermaid.client-4OCKJ6QD.mjs} +3 -3
  6. package/dist/{Mermaid.client-4TU2TSH3.mjs.map → Mermaid.client-4OCKJ6QD.mjs.map} +1 -1
  7. package/dist/{Mermaid.client-SBYY364Q.cjs → Mermaid.client-ZP6OE46Z.cjs} +23 -23
  8. package/dist/{Mermaid.client-SBYY364Q.cjs.map → Mermaid.client-ZP6OE46Z.cjs.map} +1 -1
  9. package/dist/{PlaygroundLayout-4DYBORAS.mjs → PlaygroundLayout-LMQTVXSP.mjs} +4 -4
  10. package/dist/{PlaygroundLayout-4DYBORAS.mjs.map → PlaygroundLayout-LMQTVXSP.mjs.map} +1 -1
  11. package/dist/{PlaygroundLayout-3YVSAEAF.cjs → PlaygroundLayout-XXVBU4WZ.cjs} +51 -51
  12. package/dist/{PlaygroundLayout-3YVSAEAF.cjs.map → PlaygroundLayout-XXVBU4WZ.cjs.map} +1 -1
  13. package/dist/{PrettyCode.client-PNPLXRH6.cjs → PrettyCode.client-2CLSV2VD.cjs} +5 -5
  14. package/dist/{PrettyCode.client-PNPLXRH6.cjs.map → PrettyCode.client-2CLSV2VD.cjs.map} +1 -1
  15. package/dist/{PrettyCode.client-LCBPPTIX.mjs → PrettyCode.client-Y2BVON7R.mjs} +3 -3
  16. package/dist/{PrettyCode.client-LCBPPTIX.mjs.map → PrettyCode.client-Y2BVON7R.mjs.map} +1 -1
  17. package/dist/{chunk-YFRNE2IR.mjs → chunk-6JTB2X72.mjs} +3 -3
  18. package/dist/{chunk-YFRNE2IR.mjs.map → chunk-6JTB2X72.mjs.map} +1 -1
  19. package/dist/{chunk-37ZI6VD4.mjs → chunk-CGILA3WO.mjs} +2 -2
  20. package/dist/{chunk-37ZI6VD4.mjs.map → chunk-CGILA3WO.mjs.map} +1 -1
  21. package/dist/{chunk-7DGDQVQW.cjs → chunk-FB5QBSI3.cjs} +46 -46
  22. package/dist/{chunk-7DGDQVQW.cjs.map → chunk-FB5QBSI3.cjs.map} +1 -1
  23. package/dist/{chunk-M6P2FU7L.mjs → chunk-L6UHASYQ.mjs} +4 -4
  24. package/dist/{chunk-M6P2FU7L.mjs.map → chunk-L6UHASYQ.mjs.map} +1 -1
  25. package/dist/{chunk-3HK2OE62.cjs → chunk-PRPG2T2E.cjs} +6 -6
  26. package/dist/{chunk-3HK2OE62.cjs.map → chunk-PRPG2T2E.cjs.map} +1 -1
  27. package/dist/{chunk-UQ3XI5MY.cjs → chunk-WGEGR3DF.cjs} +2 -2
  28. package/dist/{chunk-UQ3XI5MY.cjs.map → chunk-WGEGR3DF.cjs.map} +1 -1
  29. package/dist/index.cjs +227 -227
  30. package/dist/index.mjs +7 -7
  31. package/package.json +3 -3
  32. package/src/index.ts +2 -0
package/dist/index.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var chunk3HK2OE62_cjs = require('./chunk-3HK2OE62.cjs');
4
- var chunk7DGDQVQW_cjs = require('./chunk-7DGDQVQW.cjs');
5
- var chunkUQ3XI5MY_cjs = require('./chunk-UQ3XI5MY.cjs');
3
+ var chunkPRPG2T2E_cjs = require('./chunk-PRPG2T2E.cjs');
4
+ var chunkFB5QBSI3_cjs = require('./chunk-FB5QBSI3.cjs');
5
+ var chunkWGEGR3DF_cjs = require('./chunk-WGEGR3DF.cjs');
6
6
  var React17 = require('react');
7
7
  var jsxRuntime = require('react/jsx-runtime');
8
8
  var consola = require('consola');
@@ -35,29 +35,29 @@ var validator__default = /*#__PURE__*/_interopDefault(validator);
35
35
  var ReactMarkdown__default = /*#__PURE__*/_interopDefault(ReactMarkdown);
36
36
  var remarkGfm__default = /*#__PURE__*/_interopDefault(remarkGfm);
37
37
 
38
- var MermaidClient = React17.lazy(() => import('./Mermaid.client-SBYY364Q.cjs'));
39
- var LoadingFallback = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative bg-card rounded-sm border border-border overflow-hidden", children: [
38
+ var MermaidClient = React17.lazy(() => import('./Mermaid.client-ZP6OE46Z.cjs'));
39
+ var LoadingFallback = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative bg-card rounded-sm border border-border overflow-hidden", children: [
40
40
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4 border-b border-border bg-muted/50", children: [
41
41
  /* @__PURE__ */ jsxRuntime.jsx("h6", { className: "text-sm font-semibold text-foreground", children: "Diagram" }),
42
42
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground mt-1", children: "Loading..." })
43
43
  ] }),
44
44
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-4", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center items-center min-h-[200px]", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "animate-spin rounded-full h-8 w-8 border-b-2 border-primary" }) }) })
45
45
  ] }), "LoadingFallback");
46
- var Mermaid = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((props) => {
46
+ var Mermaid = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((props) => {
47
47
  return /* @__PURE__ */ jsxRuntime.jsx(React17.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(LoadingFallback, {}), children: /* @__PURE__ */ jsxRuntime.jsx(MermaidClient, { ...props }) });
48
48
  }, "Mermaid");
49
49
  var Mermaid_default = Mermaid;
50
50
  var LottiePlayerClient = React17.lazy(
51
- () => import('./LottiePlayer.client-WFMG2OOW.cjs').then((mod) => ({ default: mod.LottiePlayer }))
51
+ () => import('./LottiePlayer.client-6WVWDO75.cjs').then((mod) => ({ default: mod.LottiePlayer }))
52
52
  );
53
- var LoadingFallback2 = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-2", children: [
53
+ var LoadingFallback2 = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center p-8", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-2", children: [
54
54
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-8 w-8 animate-spin rounded-full border-4 border-gray-300 border-t-gray-900" }),
55
55
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-gray-500", children: "Loading player..." })
56
56
  ] }) }), "LoadingFallback");
57
57
  function LottiePlayer(props) {
58
58
  return /* @__PURE__ */ jsxRuntime.jsx(React17.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(LoadingFallback2, {}), children: /* @__PURE__ */ jsxRuntime.jsx(LottiePlayerClient, { ...props }) });
59
59
  }
60
- chunkUQ3XI5MY_cjs.__name(LottiePlayer, "LottiePlayer");
60
+ chunkWGEGR3DF_cjs.__name(LottiePlayer, "LottiePlayer");
61
61
  function FieldTemplate(props) {
62
62
  const {
63
63
  id,
@@ -95,7 +95,7 @@ function FieldTemplate(props) {
95
95
  }
96
96
  );
97
97
  }
98
- chunkUQ3XI5MY_cjs.__name(FieldTemplate, "FieldTemplate");
98
+ chunkWGEGR3DF_cjs.__name(FieldTemplate, "FieldTemplate");
99
99
  function ObjectFieldTemplate(props) {
100
100
  const {
101
101
  title,
@@ -149,7 +149,7 @@ function ObjectFieldTemplate(props) {
149
149
  content
150
150
  ] });
151
151
  }
152
- chunkUQ3XI5MY_cjs.__name(ObjectFieldTemplate, "ObjectFieldTemplate");
152
+ chunkWGEGR3DF_cjs.__name(ObjectFieldTemplate, "ObjectFieldTemplate");
153
153
  function ArrayFieldTemplate(props) {
154
154
  const {
155
155
  title,
@@ -199,7 +199,7 @@ function ArrayFieldTemplate(props) {
199
199
  ] })
200
200
  ] });
201
201
  }
202
- chunkUQ3XI5MY_cjs.__name(ArrayFieldTemplate, "ArrayFieldTemplate");
202
+ chunkWGEGR3DF_cjs.__name(ArrayFieldTemplate, "ArrayFieldTemplate");
203
203
  function ArrayFieldItemTemplate(props) {
204
204
  const {
205
205
  children,
@@ -229,7 +229,7 @@ function ArrayFieldItemTemplate(props) {
229
229
  }
230
230
  );
231
231
  }
232
- chunkUQ3XI5MY_cjs.__name(ArrayFieldItemTemplate, "ArrayFieldItemTemplate");
232
+ chunkWGEGR3DF_cjs.__name(ArrayFieldItemTemplate, "ArrayFieldItemTemplate");
233
233
  function ErrorListTemplate(props) {
234
234
  const { errors } = props;
235
235
  if (!errors || errors.length === 0) {
@@ -241,7 +241,7 @@ function ErrorListTemplate(props) {
241
241
  /* @__PURE__ */ jsxRuntime.jsx(components.AlertDescription, { children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "list-disc list-inside space-y-1 mt-2", children: errors.map((error, index) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "text-sm", children: error.stack }, index)) }) })
242
242
  ] });
243
243
  }
244
- chunkUQ3XI5MY_cjs.__name(ErrorListTemplate, "ErrorListTemplate");
244
+ chunkWGEGR3DF_cjs.__name(ErrorListTemplate, "ErrorListTemplate");
245
245
  function BaseInputTemplate(props) {
246
246
  const {
247
247
  id,
@@ -312,7 +312,7 @@ function BaseInputTemplate(props) {
312
312
  }
313
313
  );
314
314
  }
315
- chunkUQ3XI5MY_cjs.__name(BaseInputTemplate, "BaseInputTemplate");
315
+ chunkWGEGR3DF_cjs.__name(BaseInputTemplate, "BaseInputTemplate");
316
316
  function validateSchema(schema) {
317
317
  if (!schema || typeof schema !== "object") {
318
318
  {
@@ -337,7 +337,7 @@ function validateSchema(schema) {
337
337
  }
338
338
  return schema;
339
339
  }
340
- chunkUQ3XI5MY_cjs.__name(validateSchema, "validateSchema");
340
+ chunkWGEGR3DF_cjs.__name(validateSchema, "validateSchema");
341
341
  function normalizeFormData(formData, schema) {
342
342
  if (formData === null || formData === void 0) {
343
343
  return schema.type === "object" ? {} : schema.type === "array" ? [] : null;
@@ -345,7 +345,7 @@ function normalizeFormData(formData, schema) {
345
345
  const normalized = JSON.parse(JSON.stringify(formData));
346
346
  return removeUndefined(normalized);
347
347
  }
348
- chunkUQ3XI5MY_cjs.__name(normalizeFormData, "normalizeFormData");
348
+ chunkWGEGR3DF_cjs.__name(normalizeFormData, "normalizeFormData");
349
349
  function removeUndefined(obj) {
350
350
  if (obj === null || obj === void 0) {
351
351
  return obj;
@@ -364,7 +364,7 @@ function removeUndefined(obj) {
364
364
  }
365
365
  return obj;
366
366
  }
367
- chunkUQ3XI5MY_cjs.__name(removeUndefined, "removeUndefined");
367
+ chunkWGEGR3DF_cjs.__name(removeUndefined, "removeUndefined");
368
368
  function mergeDefaults(formData, schema) {
369
369
  if (!schema) return formData;
370
370
  const result = { ...formData };
@@ -381,7 +381,7 @@ function mergeDefaults(formData, schema) {
381
381
  }
382
382
  return result;
383
383
  }
384
- chunkUQ3XI5MY_cjs.__name(mergeDefaults, "mergeDefaults");
384
+ chunkWGEGR3DF_cjs.__name(mergeDefaults, "mergeDefaults");
385
385
  function safeJsonParse(jsonString, fallback) {
386
386
  try {
387
387
  return JSON.parse(jsonString);
@@ -390,7 +390,7 @@ function safeJsonParse(jsonString, fallback) {
390
390
  return fallback;
391
391
  }
392
392
  }
393
- chunkUQ3XI5MY_cjs.__name(safeJsonParse, "safeJsonParse");
393
+ chunkWGEGR3DF_cjs.__name(safeJsonParse, "safeJsonParse");
394
394
  function safeJsonStringify(obj, pretty = true) {
395
395
  try {
396
396
  return JSON.stringify(obj, null, pretty ? 2 : 0);
@@ -399,11 +399,11 @@ function safeJsonStringify(obj, pretty = true) {
399
399
  return "{}";
400
400
  }
401
401
  }
402
- chunkUQ3XI5MY_cjs.__name(safeJsonStringify, "safeJsonStringify");
402
+ chunkWGEGR3DF_cjs.__name(safeJsonStringify, "safeJsonStringify");
403
403
  function hasRequiredFields(schema) {
404
404
  return Array.isArray(schema.required) && schema.required.length > 0;
405
405
  }
406
- chunkUQ3XI5MY_cjs.__name(hasRequiredFields, "hasRequiredFields");
406
+ chunkWGEGR3DF_cjs.__name(hasRequiredFields, "hasRequiredFields");
407
407
  function getRequiredFields(schema, prefix = "") {
408
408
  const required = [];
409
409
  if (schema.required && Array.isArray(schema.required)) {
@@ -420,7 +420,7 @@ function getRequiredFields(schema, prefix = "") {
420
420
  }
421
421
  return required;
422
422
  }
423
- chunkUQ3XI5MY_cjs.__name(getRequiredFields, "getRequiredFields");
423
+ chunkWGEGR3DF_cjs.__name(getRequiredFields, "getRequiredFields");
424
424
  function validateRequiredFields(formData, schema) {
425
425
  const requiredFields = getRequiredFields(schema);
426
426
  const missing = [];
@@ -435,11 +435,11 @@ function validateRequiredFields(formData, schema) {
435
435
  missing
436
436
  };
437
437
  }
438
- chunkUQ3XI5MY_cjs.__name(validateRequiredFields, "validateRequiredFields");
438
+ chunkWGEGR3DF_cjs.__name(validateRequiredFields, "validateRequiredFields");
439
439
  function getNestedValue(obj, path) {
440
440
  return path.split(".").reduce((current, key) => current?.[key], obj);
441
441
  }
442
- chunkUQ3XI5MY_cjs.__name(getNestedValue, "getNestedValue");
442
+ chunkWGEGR3DF_cjs.__name(getNestedValue, "getNestedValue");
443
443
  function TextWidget(props) {
444
444
  const {
445
445
  id,
@@ -515,7 +515,7 @@ function TextWidget(props) {
515
515
  }
516
516
  );
517
517
  }
518
- chunkUQ3XI5MY_cjs.__name(TextWidget, "TextWidget");
518
+ chunkWGEGR3DF_cjs.__name(TextWidget, "TextWidget");
519
519
  function NumberWidget(props) {
520
520
  const {
521
521
  id,
@@ -583,7 +583,7 @@ function NumberWidget(props) {
583
583
  }
584
584
  );
585
585
  }
586
- chunkUQ3XI5MY_cjs.__name(NumberWidget, "NumberWidget");
586
+ chunkWGEGR3DF_cjs.__name(NumberWidget, "NumberWidget");
587
587
  function CheckboxWidget(props) {
588
588
  const {
589
589
  id,
@@ -595,7 +595,7 @@ function CheckboxWidget(props) {
595
595
  onBlur,
596
596
  onFocus
597
597
  } = props;
598
- const handleChange = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((checked) => {
598
+ const handleChange = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((checked) => {
599
599
  onChange(checked);
600
600
  }, "handleChange");
601
601
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -611,7 +611,7 @@ function CheckboxWidget(props) {
611
611
  }
612
612
  );
613
613
  }
614
- chunkUQ3XI5MY_cjs.__name(CheckboxWidget, "CheckboxWidget");
614
+ chunkWGEGR3DF_cjs.__name(CheckboxWidget, "CheckboxWidget");
615
615
  function SelectWidget(props) {
616
616
  const {
617
617
  id,
@@ -683,7 +683,7 @@ function SelectWidget(props) {
683
683
  }
684
684
  );
685
685
  }
686
- chunkUQ3XI5MY_cjs.__name(SelectWidget, "SelectWidget");
686
+ chunkWGEGR3DF_cjs.__name(SelectWidget, "SelectWidget");
687
687
  function SwitchWidget(props) {
688
688
  const {
689
689
  id,
@@ -694,7 +694,7 @@ function SwitchWidget(props) {
694
694
  onBlur,
695
695
  onFocus
696
696
  } = props;
697
- const handleChange = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((checked) => {
697
+ const handleChange = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((checked) => {
698
698
  onChange(checked);
699
699
  }, "handleChange");
700
700
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -709,7 +709,7 @@ function SwitchWidget(props) {
709
709
  }
710
710
  );
711
711
  }
712
- chunkUQ3XI5MY_cjs.__name(SwitchWidget, "SwitchWidget");
712
+ chunkWGEGR3DF_cjs.__name(SwitchWidget, "SwitchWidget");
713
713
  function ColorWidget(props) {
714
714
  const {
715
715
  id,
@@ -782,7 +782,7 @@ function ColorWidget(props) {
782
782
  const h = parseInt(parts[0]) / 360;
783
783
  const s = parseInt(parts[1].replace("%", "")) / 100;
784
784
  const l = parseInt(parts[2].replace("%", "")) / 100;
785
- const hue2rgb = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((p, q, t) => {
785
+ const hue2rgb = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((p, q, t) => {
786
786
  if (t < 0) t += 1;
787
787
  if (t > 1) t -= 1;
788
788
  if (t < 1 / 6) return p + (q - p) * 6 * t;
@@ -800,7 +800,7 @@ function ColorWidget(props) {
800
800
  g = hue2rgb(p, q, h);
801
801
  b = hue2rgb(p, q, h - 1 / 3);
802
802
  }
803
- const toHex = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((x) => {
803
+ const toHex = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((x) => {
804
804
  const hex = Math.round(x * 255).toString(16);
805
805
  return hex.length === 1 ? "0" + hex : hex;
806
806
  }, "toHex");
@@ -883,7 +883,7 @@ function ColorWidget(props) {
883
883
  )
884
884
  ] });
885
885
  }
886
- chunkUQ3XI5MY_cjs.__name(ColorWidget, "ColorWidget");
886
+ chunkWGEGR3DF_cjs.__name(ColorWidget, "ColorWidget");
887
887
  function SliderWidget(props) {
888
888
  const {
889
889
  id,
@@ -978,7 +978,7 @@ function SliderWidget(props) {
978
978
  ) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "w-16 text-right font-mono text-sm text-muted-foreground", children: displayValue })
979
979
  ] });
980
980
  }
981
- chunkUQ3XI5MY_cjs.__name(SliderWidget, "SliderWidget");
981
+ chunkWGEGR3DF_cjs.__name(SliderWidget, "SliderWidget");
982
982
  function JsonSchemaForm(props) {
983
983
  const {
984
984
  schema,
@@ -1096,13 +1096,13 @@ function JsonSchemaForm(props) {
1096
1096
  }
1097
1097
  ) });
1098
1098
  }
1099
- chunkUQ3XI5MY_cjs.__name(JsonSchemaForm, "JsonSchemaForm");
1099
+ chunkWGEGR3DF_cjs.__name(JsonSchemaForm, "JsonSchemaForm");
1100
1100
  var PlaygroundLayout = React17.lazy(
1101
- () => import('./PlaygroundLayout-3YVSAEAF.cjs').then((mod) => ({ default: mod.PlaygroundLayout }))
1101
+ () => import('./PlaygroundLayout-XXVBU4WZ.cjs').then((mod) => ({ default: mod.PlaygroundLayout }))
1102
1102
  );
1103
- var LoadingFallback3 = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center min-h-[400px]", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground", children: "Loading API Playground..." }) }), "LoadingFallback");
1104
- var Playground = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ config }) => {
1105
- return /* @__PURE__ */ jsxRuntime.jsx(chunk7DGDQVQW_cjs.PlaygroundProvider, { config, children: /* @__PURE__ */ jsxRuntime.jsx(React17.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(LoadingFallback3, {}), children: /* @__PURE__ */ jsxRuntime.jsx(PlaygroundLayout, {}) }) });
1103
+ var LoadingFallback3 = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center min-h-[400px]", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground", children: "Loading API Playground..." }) }), "LoadingFallback");
1104
+ var Playground = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ config }) => {
1105
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkFB5QBSI3_cjs.PlaygroundProvider, { config, children: /* @__PURE__ */ jsxRuntime.jsx(React17.Suspense, { fallback: /* @__PURE__ */ jsxRuntime.jsx(LoadingFallback3, {}), children: /* @__PURE__ */ jsxRuntime.jsx(PlaygroundLayout, {}) }) });
1106
1106
  }, "Playground");
1107
1107
  var OpenapiViewer_default = Playground;
1108
1108
  var cacheDebug = lib.createLogger("MediaCache");
@@ -1128,7 +1128,7 @@ var useMediaCacheStore = zustand.create()(
1128
1128
  (set, get) => ({
1129
1129
  ...initialState,
1130
1130
  // ========== Blob URL Management ==========
1131
- getOrCreateBlobUrl: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((key, content, mimeType) => {
1131
+ getOrCreateBlobUrl: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((key, content, mimeType) => {
1132
1132
  const existing = get().blobUrls.get(key);
1133
1133
  if (existing) {
1134
1134
  cacheDebug.debug(`Blob URL reused: ${key}`, { refCount: existing.refCount + 1 });
@@ -1161,7 +1161,7 @@ var useMediaCacheStore = zustand.create()(
1161
1161
  );
1162
1162
  return url;
1163
1163
  }, "getOrCreateBlobUrl"),
1164
- releaseBlobUrl: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((key) => {
1164
+ releaseBlobUrl: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((key) => {
1165
1165
  const entry = get().blobUrls.get(key);
1166
1166
  if (!entry) return;
1167
1167
  if (entry.refCount <= 1) {
@@ -1190,9 +1190,9 @@ var useMediaCacheStore = zustand.create()(
1190
1190
  );
1191
1191
  }
1192
1192
  }, "releaseBlobUrl"),
1193
- hasBlobUrl: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((key) => get().blobUrls.has(key), "hasBlobUrl"),
1193
+ hasBlobUrl: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((key) => get().blobUrls.has(key), "hasBlobUrl"),
1194
1194
  // ========== Image Cache ==========
1195
- cacheDimensions: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((src, dims) => {
1195
+ cacheDimensions: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((src, dims) => {
1196
1196
  set(
1197
1197
  (state) => ({
1198
1198
  imageDimensions: new Map(state.imageDimensions).set(src, dims)
@@ -1201,9 +1201,9 @@ var useMediaCacheStore = zustand.create()(
1201
1201
  "image/cacheDimensions"
1202
1202
  );
1203
1203
  }, "cacheDimensions"),
1204
- getDimensions: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((src) => get().imageDimensions.get(src) ?? null, "getDimensions"),
1204
+ getDimensions: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((src) => get().imageDimensions.get(src) ?? null, "getDimensions"),
1205
1205
  // ========== Audio Cache ==========
1206
- saveAudioPosition: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((uri, time) => {
1206
+ saveAudioPosition: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((uri, time) => {
1207
1207
  set(
1208
1208
  (state) => ({
1209
1209
  audioPlaybackPositions: new Map(state.audioPlaybackPositions).set(
@@ -1215,9 +1215,9 @@ var useMediaCacheStore = zustand.create()(
1215
1215
  "audio/savePosition"
1216
1216
  );
1217
1217
  }, "saveAudioPosition"),
1218
- getAudioPosition: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((uri) => get().audioPlaybackPositions.get(uri) ?? null, "getAudioPosition"),
1219
- getEffectConfig: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((key) => get().audioEffectConfigs.get(key) ?? null, "getEffectConfig"),
1220
- cacheEffectConfig: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((key, config) => {
1218
+ getAudioPosition: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((uri) => get().audioPlaybackPositions.get(uri) ?? null, "getAudioPosition"),
1219
+ getEffectConfig: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((key) => get().audioEffectConfigs.get(key) ?? null, "getEffectConfig"),
1220
+ cacheEffectConfig: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((key, config) => {
1221
1221
  set(
1222
1222
  (state) => ({
1223
1223
  audioEffectConfigs: new Map(state.audioEffectConfigs).set(
@@ -1230,7 +1230,7 @@ var useMediaCacheStore = zustand.create()(
1230
1230
  );
1231
1231
  }, "cacheEffectConfig"),
1232
1232
  // ========== Video Cache ==========
1233
- getOrCreateStreamUrl: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((sessionId, path, generator) => {
1233
+ getOrCreateStreamUrl: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((sessionId, path, generator) => {
1234
1234
  const key = `${sessionId}:${path}`;
1235
1235
  const cached = get().videoStreamUrls.get(key);
1236
1236
  if (cached && Date.now() - cached.timestamp < STREAM_URL_TTL) {
@@ -1249,8 +1249,8 @@ var useMediaCacheStore = zustand.create()(
1249
1249
  );
1250
1250
  return url;
1251
1251
  }, "getOrCreateStreamUrl"),
1252
- getPosterUrl: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((title) => get().videoPosterUrls.get(title) ?? null, "getPosterUrl"),
1253
- cachePosterUrl: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((title, url) => {
1252
+ getPosterUrl: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((title) => get().videoPosterUrls.get(title) ?? null, "getPosterUrl"),
1253
+ cachePosterUrl: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((title, url) => {
1254
1254
  set(
1255
1255
  (state) => ({
1256
1256
  videoPosterUrls: new Map(state.videoPosterUrls).set(title, url)
@@ -1259,7 +1259,7 @@ var useMediaCacheStore = zustand.create()(
1259
1259
  "video/cachePosterUrl"
1260
1260
  );
1261
1261
  }, "cachePosterUrl"),
1262
- saveVideoPosition: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((key, time) => {
1262
+ saveVideoPosition: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((key, time) => {
1263
1263
  set(
1264
1264
  (state) => ({
1265
1265
  videoPlaybackPositions: new Map(state.videoPlaybackPositions).set(
@@ -1271,8 +1271,8 @@ var useMediaCacheStore = zustand.create()(
1271
1271
  "video/savePosition"
1272
1272
  );
1273
1273
  }, "saveVideoPosition"),
1274
- getVideoPosition: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((key) => get().videoPlaybackPositions.get(key) ?? null, "getVideoPosition"),
1275
- cacheVideoMetadata: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((url, meta) => {
1274
+ getVideoPosition: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((key) => get().videoPlaybackPositions.get(key) ?? null, "getVideoPosition"),
1275
+ cacheVideoMetadata: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((url, meta) => {
1276
1276
  set(
1277
1277
  (state) => ({
1278
1278
  videoMetadata: new Map(state.videoMetadata).set(url, meta)
@@ -1281,8 +1281,8 @@ var useMediaCacheStore = zustand.create()(
1281
1281
  "video/cacheMetadata"
1282
1282
  );
1283
1283
  }, "cacheVideoMetadata"),
1284
- getVideoMetadata: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((url) => get().videoMetadata.get(url) ?? null, "getVideoMetadata"),
1285
- invalidateSession: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((sessionId) => {
1284
+ getVideoMetadata: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((url) => get().videoMetadata.get(url) ?? null, "getVideoMetadata"),
1285
+ invalidateSession: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((sessionId) => {
1286
1286
  set(
1287
1287
  (state) => {
1288
1288
  const newUrls = new Map(state.videoStreamUrls);
@@ -1297,8 +1297,8 @@ var useMediaCacheStore = zustand.create()(
1297
1297
  "video/invalidateSession"
1298
1298
  );
1299
1299
  }, "invalidateSession"),
1300
- getVideoPlayerSettings: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => get().videoPlayerSettings, "getVideoPlayerSettings"),
1301
- saveVideoPlayerSettings: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((settings) => {
1300
+ getVideoPlayerSettings: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => get().videoPlayerSettings, "getVideoPlayerSettings"),
1301
+ saveVideoPlayerSettings: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((settings) => {
1302
1302
  set(
1303
1303
  (state) => ({
1304
1304
  videoPlayerSettings: { ...state.videoPlayerSettings, ...settings }
@@ -1308,13 +1308,13 @@ var useMediaCacheStore = zustand.create()(
1308
1308
  );
1309
1309
  }, "saveVideoPlayerSettings"),
1310
1310
  // ========== Global ==========
1311
- clearCache: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1311
+ clearCache: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1312
1312
  const stats = get().getCacheStats();
1313
1313
  cacheDebug.info("Clearing cache", stats);
1314
1314
  get().blobUrls.forEach(({ url }) => URL.revokeObjectURL(url));
1315
1315
  set(initialState, false, "clearCache");
1316
1316
  }, "clearCache"),
1317
- getCacheStats: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => ({
1317
+ getCacheStats: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => ({
1318
1318
  blobUrls: get().blobUrls.size,
1319
1319
  dimensions: get().imageDimensions.size,
1320
1320
  audioPositions: get().audioPlaybackPositions.size,
@@ -1324,7 +1324,7 @@ var useMediaCacheStore = zustand.create()(
1324
1324
  {
1325
1325
  name: "media-cache-storage",
1326
1326
  // Only persist playback positions, poster URLs, and player settings
1327
- partialize: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((state) => ({
1327
+ partialize: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((state) => ({
1328
1328
  audioPlaybackPositions: Array.from(
1329
1329
  state.audioPlaybackPositions.entries()
1330
1330
  ),
@@ -1335,7 +1335,7 @@ var useMediaCacheStore = zustand.create()(
1335
1335
  videoPlayerSettings: state.videoPlayerSettings
1336
1336
  }), "partialize"),
1337
1337
  // Rehydrate Maps from arrays
1338
- onRehydrateStorage: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => (state) => {
1338
+ onRehydrateStorage: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => (state) => {
1339
1339
  if (state) {
1340
1340
  const persistedAudio = state.audioPlaybackPositions;
1341
1341
  const persistedVideo = state.videoPlaybackPositions;
@@ -1361,7 +1361,7 @@ var useMediaCacheStore = zustand.create()(
1361
1361
  { name: "MediaCacheStore" }
1362
1362
  )
1363
1363
  );
1364
- var useImageCache = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => useMediaCacheStore(
1364
+ var useImageCache = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => useMediaCacheStore(
1365
1365
  shallow.useShallow((state) => ({
1366
1366
  getOrCreateBlobUrl: state.getOrCreateBlobUrl,
1367
1367
  releaseBlobUrl: state.releaseBlobUrl,
@@ -1370,7 +1370,7 @@ var useImageCache = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => useMediaCache
1370
1370
  getDimensions: state.getDimensions
1371
1371
  }))
1372
1372
  ), "useImageCache");
1373
- var useAudioCache = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => useMediaCacheStore(
1373
+ var useAudioCache = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => useMediaCacheStore(
1374
1374
  shallow.useShallow((state) => ({
1375
1375
  getOrCreateBlobUrl: state.getOrCreateBlobUrl,
1376
1376
  releaseBlobUrl: state.releaseBlobUrl,
@@ -1381,7 +1381,7 @@ var useAudioCache = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => useMediaCache
1381
1381
  cacheEffectConfig: state.cacheEffectConfig
1382
1382
  }))
1383
1383
  ), "useAudioCache");
1384
- var useVideoCache = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => useMediaCacheStore(
1384
+ var useVideoCache = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => useMediaCacheStore(
1385
1385
  shallow.useShallow((state) => ({
1386
1386
  getOrCreateBlobUrl: state.getOrCreateBlobUrl,
1387
1387
  releaseBlobUrl: state.releaseBlobUrl,
@@ -1398,7 +1398,7 @@ var useVideoCache = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => useMediaCache
1398
1398
  saveVideoPlayerSettings: state.saveVideoPlayerSettings
1399
1399
  }))
1400
1400
  ), "useVideoCache");
1401
- var useVideoPlayerSettings = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => useMediaCacheStore(
1401
+ var useVideoPlayerSettings = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => useMediaCacheStore(
1402
1402
  shallow.useShallow((state) => ({
1403
1403
  settings: state.videoPlayerSettings,
1404
1404
  saveSettings: state.saveVideoPlayerSettings
@@ -1407,7 +1407,7 @@ var useVideoPlayerSettings = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => useM
1407
1407
  function useBlobUrlCleanup(key) {
1408
1408
  const releaseBlobUrl = useMediaCacheStore((s) => s.releaseBlobUrl);
1409
1409
  if (typeof window !== "undefined") {
1410
- const { useEffect: useEffect13 } = chunkUQ3XI5MY_cjs.__require("react");
1410
+ const { useEffect: useEffect13 } = chunkWGEGR3DF_cjs.__require("react");
1411
1411
  useEffect13(() => {
1412
1412
  return () => {
1413
1413
  if (key) {
@@ -1417,7 +1417,7 @@ function useBlobUrlCleanup(key) {
1417
1417
  }, [key, releaseBlobUrl]);
1418
1418
  }
1419
1419
  }
1420
- chunkUQ3XI5MY_cjs.__name(useBlobUrlCleanup, "useBlobUrlCleanup");
1420
+ chunkWGEGR3DF_cjs.__name(useBlobUrlCleanup, "useBlobUrlCleanup");
1421
1421
  function generateContentKey(content) {
1422
1422
  const arr = new Uint8Array(content);
1423
1423
  const len = arr.length;
@@ -1432,7 +1432,7 @@ function generateContentKey(content) {
1432
1432
  }
1433
1433
  return `blob-${len}-${hash.toString(16)}`;
1434
1434
  }
1435
- chunkUQ3XI5MY_cjs.__name(generateContentKey, "generateContentKey");
1435
+ chunkWGEGR3DF_cjs.__name(generateContentKey, "generateContentKey");
1436
1436
  var videoDebug = lib.createMediaLogger("VideoPlayer");
1437
1437
  function getVidstackSrc(source) {
1438
1438
  switch (source.type) {
@@ -1450,7 +1450,7 @@ function getVidstackSrc(source) {
1450
1450
  return "";
1451
1451
  }
1452
1452
  }
1453
- chunkUQ3XI5MY_cjs.__name(getVidstackSrc, "getVidstackSrc");
1453
+ chunkWGEGR3DF_cjs.__name(getVidstackSrc, "getVidstackSrc");
1454
1454
  function DefaultErrorFallback({ error }) {
1455
1455
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute inset-0 flex flex-col items-center justify-center gap-4 text-white bg-black", children: [
1456
1456
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1474,7 +1474,7 @@ function DefaultErrorFallback({ error }) {
1474
1474
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-lg", children: error || "Video cannot be played" })
1475
1475
  ] });
1476
1476
  }
1477
- chunkUQ3XI5MY_cjs.__name(DefaultErrorFallback, "DefaultErrorFallback");
1477
+ chunkWGEGR3DF_cjs.__name(DefaultErrorFallback, "DefaultErrorFallback");
1478
1478
  var VidstackProvider = React17.forwardRef(
1479
1479
  ({
1480
1480
  source,
@@ -1549,24 +1549,24 @@ var VidstackProvider = React17.forwardRef(
1549
1549
  () => {
1550
1550
  const player = playerRef.current;
1551
1551
  return {
1552
- play: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => player?.play(), "play"),
1553
- pause: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => player?.pause(), "pause"),
1554
- togglePlay: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1552
+ play: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => player?.play(), "play"),
1553
+ pause: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => player?.pause(), "pause"),
1554
+ togglePlay: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1555
1555
  if (player) {
1556
1556
  player.paused ? player.play() : player.pause();
1557
1557
  }
1558
1558
  }, "togglePlay"),
1559
- seekTo: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((time) => {
1559
+ seekTo: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((time) => {
1560
1560
  if (player) player.currentTime = time;
1561
1561
  }, "seekTo"),
1562
- setVolume: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((volume) => {
1562
+ setVolume: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((volume) => {
1563
1563
  if (player) player.volume = Math.max(0, Math.min(1, volume));
1564
1564
  }, "setVolume"),
1565
- toggleMute: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1565
+ toggleMute: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1566
1566
  if (player) player.muted = !player.muted;
1567
1567
  }, "toggleMute"),
1568
- enterFullscreen: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => player?.enterFullscreen(), "enterFullscreen"),
1569
- exitFullscreen: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => player?.exitFullscreen(), "exitFullscreen"),
1568
+ enterFullscreen: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => player?.enterFullscreen(), "enterFullscreen"),
1569
+ exitFullscreen: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => player?.exitFullscreen(), "exitFullscreen"),
1570
1570
  get currentTime() {
1571
1571
  return player?.currentTime ?? 0;
1572
1572
  },
@@ -1580,7 +1580,7 @@ var VidstackProvider = React17.forwardRef(
1580
1580
  },
1581
1581
  []
1582
1582
  );
1583
- const handlePlay = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => onPlay?.(), "handlePlay");
1583
+ const handlePlay = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => onPlay?.(), "handlePlay");
1584
1584
  const handlePause = React17.useCallback(() => {
1585
1585
  const player = playerRef.current;
1586
1586
  if (sourceKey && player && player.currentTime > 0) {
@@ -1589,8 +1589,8 @@ var VidstackProvider = React17.forwardRef(
1589
1589
  }
1590
1590
  onPause?.();
1591
1591
  }, [sourceKey, saveVideoPosition, onPause]);
1592
- const handleEnded = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => onEnded?.(), "handleEnded");
1593
- const handleError = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((detail) => {
1592
+ const handleEnded = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => onEnded?.(), "handleEnded");
1593
+ const handleError = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((detail) => {
1594
1594
  const error = detail;
1595
1595
  const msg = error?.message || "Video playback error";
1596
1596
  videoDebug.error("Vidstack error", { message: msg });
@@ -1598,7 +1598,7 @@ var VidstackProvider = React17.forwardRef(
1598
1598
  setErrorMessage(msg);
1599
1599
  onError?.(msg);
1600
1600
  }, "handleError");
1601
- const handleLoadStart = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => onLoadStart?.(), "handleLoadStart");
1601
+ const handleLoadStart = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => onLoadStart?.(), "handleLoadStart");
1602
1602
  const handleCanPlay = React17.useCallback(() => {
1603
1603
  const player = playerRef.current;
1604
1604
  if (player) {
@@ -1641,24 +1641,24 @@ var VidstackProvider = React17.forwardRef(
1641
1641
  React17.useEffect(() => {
1642
1642
  const player = playerRef.current;
1643
1643
  if (!player) return;
1644
- const handleSeeking = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1644
+ const handleSeeking = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1645
1645
  videoDebug.event("seeking", { currentTime: player.currentTime });
1646
1646
  }, "handleSeeking");
1647
- const handleSeeked = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1647
+ const handleSeeked = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1648
1648
  videoDebug.event("seeked", { currentTime: player.currentTime });
1649
1649
  const mediaEl = player.provider?.media;
1650
1650
  if (mediaEl?.buffered) {
1651
1651
  videoDebug.buffer(mediaEl.buffered, player.duration);
1652
1652
  }
1653
1653
  }, "handleSeeked");
1654
- const handleWaiting = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1654
+ const handleWaiting = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1655
1655
  videoDebug.warn("WAITING - buffering...");
1656
1656
  const mediaEl = player.provider?.media;
1657
1657
  if (mediaEl?.buffered) {
1658
1658
  videoDebug.buffer(mediaEl.buffered, player.duration);
1659
1659
  }
1660
1660
  }, "handleWaiting");
1661
- const handleStalled = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1661
+ const handleStalled = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1662
1662
  videoDebug.warn("STALLED - network issue");
1663
1663
  const mediaEl = player.provider?.media;
1664
1664
  if (mediaEl?.buffered) {
@@ -1678,7 +1678,7 @@ var VidstackProvider = React17.forwardRef(
1678
1678
  }, [vidstackSrc]);
1679
1679
  const isFillMode = aspectRatio === "fill";
1680
1680
  const computedAspectRatio = aspectRatio === "auto" || aspectRatio === "fill" ? void 0 : aspectRatio;
1681
- const renderErrorFallback = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1681
+ const renderErrorFallback = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1682
1682
  const fallbackProps = { error: errorMessage, retry };
1683
1683
  if (typeof errorFallback === "function") {
1684
1684
  return errorFallback(fallbackProps);
@@ -1767,7 +1767,7 @@ function useVideoPlayerSettings2() {
1767
1767
  updateSettings
1768
1768
  };
1769
1769
  }
1770
- chunkUQ3XI5MY_cjs.__name(useVideoPlayerSettings2, "useVideoPlayerSettings");
1770
+ chunkWGEGR3DF_cjs.__name(useVideoPlayerSettings2, "useVideoPlayerSettings");
1771
1771
  function getVideoUrl(source) {
1772
1772
  switch (source.type) {
1773
1773
  case "url":
@@ -1778,7 +1778,7 @@ function getVideoUrl(source) {
1778
1778
  return "";
1779
1779
  }
1780
1780
  }
1781
- chunkUQ3XI5MY_cjs.__name(getVideoUrl, "getVideoUrl");
1781
+ chunkWGEGR3DF_cjs.__name(getVideoUrl, "getVideoUrl");
1782
1782
  var NativeProvider = React17.forwardRef(
1783
1783
  ({
1784
1784
  source,
@@ -1812,25 +1812,25 @@ var NativeProvider = React17.forwardRef(
1812
1812
  React17.useImperativeHandle(
1813
1813
  ref,
1814
1814
  () => ({
1815
- play: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => videoRef.current?.play(), "play"),
1816
- pause: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => videoRef.current?.pause(), "pause"),
1817
- togglePlay: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1815
+ play: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => videoRef.current?.play(), "play"),
1816
+ pause: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => videoRef.current?.pause(), "pause"),
1817
+ togglePlay: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1818
1818
  const video = videoRef.current;
1819
1819
  if (video) {
1820
1820
  video.paused ? video.play() : video.pause();
1821
1821
  }
1822
1822
  }, "togglePlay"),
1823
- seekTo: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((time) => {
1823
+ seekTo: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((time) => {
1824
1824
  if (videoRef.current) videoRef.current.currentTime = time;
1825
1825
  }, "seekTo"),
1826
- setVolume: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((volume) => {
1826
+ setVolume: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((volume) => {
1827
1827
  if (videoRef.current) videoRef.current.volume = Math.max(0, Math.min(1, volume));
1828
1828
  }, "setVolume"),
1829
- toggleMute: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1829
+ toggleMute: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1830
1830
  if (videoRef.current) videoRef.current.muted = !videoRef.current.muted;
1831
1831
  }, "toggleMute"),
1832
- enterFullscreen: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => videoRef.current?.requestFullscreen(), "enterFullscreen"),
1833
- exitFullscreen: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => document.exitFullscreen(), "exitFullscreen"),
1832
+ enterFullscreen: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => videoRef.current?.requestFullscreen(), "enterFullscreen"),
1833
+ exitFullscreen: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => document.exitFullscreen(), "exitFullscreen"),
1834
1834
  get currentTime() {
1835
1835
  return videoRef.current?.currentTime ?? 0;
1836
1836
  },
@@ -1851,7 +1851,7 @@ var NativeProvider = React17.forwardRef(
1851
1851
  setIsLoading(false);
1852
1852
  return;
1853
1853
  }
1854
- const hideLoader = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => setIsLoading(false), "hideLoader");
1854
+ const hideLoader = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => setIsLoading(false), "hideLoader");
1855
1855
  video.addEventListener("canplay", hideLoader);
1856
1856
  video.addEventListener("loadeddata", hideLoader);
1857
1857
  video.addEventListener("playing", hideLoader);
@@ -1866,26 +1866,26 @@ var NativeProvider = React17.forwardRef(
1866
1866
  React17.useEffect(() => {
1867
1867
  const video = videoRef.current;
1868
1868
  if (!video) return;
1869
- const handleLoadedMetadata = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1869
+ const handleLoadedMetadata = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1870
1870
  videoDebug.state("loadedmetadata", { duration: video.duration });
1871
1871
  }, "handleLoadedMetadata");
1872
- const handleCanPlayDebug = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1872
+ const handleCanPlayDebug = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1873
1873
  videoDebug.state("canplay", { duration: video.duration, buffered: video.buffered.length });
1874
1874
  videoDebug.buffer(video.buffered, video.duration);
1875
1875
  video.volume = savedSettings.volume;
1876
1876
  }, "handleCanPlayDebug");
1877
- const handleSeeking = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1877
+ const handleSeeking = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1878
1878
  videoDebug.event("seeking", { currentTime: video.currentTime });
1879
1879
  }, "handleSeeking");
1880
- const handleSeeked = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1880
+ const handleSeeked = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1881
1881
  videoDebug.event("seeked", { currentTime: video.currentTime });
1882
1882
  videoDebug.buffer(video.buffered, video.duration);
1883
1883
  }, "handleSeeked");
1884
- const handleWaiting = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1884
+ const handleWaiting = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1885
1885
  videoDebug.warn("WAITING - buffering...");
1886
1886
  videoDebug.buffer(video.buffered, video.duration);
1887
1887
  }, "handleWaiting");
1888
- const handleStalled = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1888
+ const handleStalled = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1889
1889
  videoDebug.warn("STALLED - network issue");
1890
1890
  videoDebug.buffer(video.buffered, video.duration);
1891
1891
  }, "handleStalled");
@@ -1907,25 +1907,25 @@ var NativeProvider = React17.forwardRef(
1907
1907
  React17.useEffect(() => {
1908
1908
  const video = videoRef.current;
1909
1909
  if (!video) return;
1910
- const handleVolumeChange = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1910
+ const handleVolumeChange = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1911
1911
  updateVolume(video.volume);
1912
1912
  }, "handleVolumeChange");
1913
1913
  video.addEventListener("volumechange", handleVolumeChange);
1914
1914
  return () => video.removeEventListener("volumechange", handleVolumeChange);
1915
1915
  }, [updateVolume]);
1916
- const handleContextMenu = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((e) => {
1916
+ const handleContextMenu = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((e) => {
1917
1917
  if (disableContextMenu) {
1918
1918
  e.preventDefault();
1919
1919
  }
1920
1920
  }, "handleContextMenu");
1921
- const handleError = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((e) => {
1921
+ const handleError = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((e) => {
1922
1922
  const video = e.currentTarget;
1923
1923
  const errorMsg = video.error?.message || "Video playback error";
1924
1924
  videoDebug.error("Video error", { code: video.error?.code, message: errorMsg });
1925
1925
  setIsLoading(false);
1926
1926
  onError?.(errorMsg);
1927
1927
  }, "handleError");
1928
- const handleTimeUpdate = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
1928
+ const handleTimeUpdate = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
1929
1929
  const video = videoRef.current;
1930
1930
  if (video && onTimeUpdate) {
1931
1931
  onTimeUpdate(video.currentTime, video.duration);
@@ -1998,7 +1998,7 @@ function DefaultErrorFallback2({ error }) {
1998
1998
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-lg", children: error || "Video cannot be previewed" })
1999
1999
  ] });
2000
2000
  }
2001
- chunkUQ3XI5MY_cjs.__name(DefaultErrorFallback2, "DefaultErrorFallback");
2001
+ chunkWGEGR3DF_cjs.__name(DefaultErrorFallback2, "DefaultErrorFallback");
2002
2002
  var StreamProvider = React17.forwardRef(
2003
2003
  ({
2004
2004
  source,
@@ -2054,25 +2054,25 @@ var StreamProvider = React17.forwardRef(
2054
2054
  React17.useImperativeHandle(
2055
2055
  ref,
2056
2056
  () => ({
2057
- play: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => videoRef.current?.play(), "play"),
2058
- pause: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => videoRef.current?.pause(), "pause"),
2059
- togglePlay: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2057
+ play: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => videoRef.current?.play(), "play"),
2058
+ pause: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => videoRef.current?.pause(), "pause"),
2059
+ togglePlay: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2060
2060
  const video = videoRef.current;
2061
2061
  if (video) {
2062
2062
  video.paused ? video.play() : video.pause();
2063
2063
  }
2064
2064
  }, "togglePlay"),
2065
- seekTo: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((time) => {
2065
+ seekTo: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((time) => {
2066
2066
  if (videoRef.current) videoRef.current.currentTime = time;
2067
2067
  }, "seekTo"),
2068
- setVolume: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((volume) => {
2068
+ setVolume: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((volume) => {
2069
2069
  if (videoRef.current) videoRef.current.volume = Math.max(0, Math.min(1, volume));
2070
2070
  }, "setVolume"),
2071
- toggleMute: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2071
+ toggleMute: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2072
2072
  if (videoRef.current) videoRef.current.muted = !videoRef.current.muted;
2073
2073
  }, "toggleMute"),
2074
- enterFullscreen: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => videoRef.current?.requestFullscreen(), "enterFullscreen"),
2075
- exitFullscreen: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => document.exitFullscreen(), "exitFullscreen"),
2074
+ enterFullscreen: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => videoRef.current?.requestFullscreen(), "enterFullscreen"),
2075
+ exitFullscreen: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => document.exitFullscreen(), "exitFullscreen"),
2076
2076
  get currentTime() {
2077
2077
  return videoRef.current?.currentTime ?? 0;
2078
2078
  },
@@ -2217,15 +2217,15 @@ var StreamProvider = React17.forwardRef(
2217
2217
  }, preloaderTimeout);
2218
2218
  return () => clearTimeout(timeout);
2219
2219
  }, [showPreloader, isLoading, preloaderTimeout]);
2220
- const handleContextMenu = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((e) => {
2220
+ const handleContextMenu = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((e) => {
2221
2221
  if (disableContextMenu) {
2222
2222
  e.preventDefault();
2223
2223
  }
2224
2224
  }, "handleContextMenu");
2225
- const handleLoadedData = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2225
+ const handleLoadedData = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2226
2226
  setIsLoading(false);
2227
2227
  }, "handleLoadedData");
2228
- const handleError = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2228
+ const handleError = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2229
2229
  const video = videoRef.current;
2230
2230
  if (video) {
2231
2231
  videoDebug.error("Video error", { code: video.error?.code, message: video.error?.message });
@@ -2238,21 +2238,21 @@ var StreamProvider = React17.forwardRef(
2238
2238
  React17.useEffect(() => {
2239
2239
  const video = videoRef.current;
2240
2240
  if (!video) return;
2241
- const handleLoadedMetadata = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2241
+ const handleLoadedMetadata = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2242
2242
  videoDebug.state("loadedmetadata", { duration: video.duration });
2243
2243
  }, "handleLoadedMetadata");
2244
- const handleSeeking = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2244
+ const handleSeeking = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2245
2245
  videoDebug.event("seeking", { currentTime: video.currentTime });
2246
2246
  }, "handleSeeking");
2247
- const handleSeeked = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2247
+ const handleSeeked = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2248
2248
  videoDebug.event("seeked", { currentTime: video.currentTime });
2249
2249
  videoDebug.buffer(video.buffered, video.duration);
2250
2250
  }, "handleSeeked");
2251
- const handleWaiting = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2251
+ const handleWaiting = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2252
2252
  videoDebug.warn("WAITING - buffering...");
2253
2253
  videoDebug.buffer(video.buffered, video.duration);
2254
2254
  }, "handleWaiting");
2255
- const handleStalled = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2255
+ const handleStalled = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2256
2256
  videoDebug.warn("STALLED - network issue");
2257
2257
  videoDebug.buffer(video.buffered, video.duration);
2258
2258
  }, "handleStalled");
@@ -2272,7 +2272,7 @@ var StreamProvider = React17.forwardRef(
2272
2272
  React17.useEffect(() => {
2273
2273
  const video = videoRef.current;
2274
2274
  if (!video) return;
2275
- const handleVolumeChange = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2275
+ const handleVolumeChange = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2276
2276
  updateVolume(video.volume);
2277
2277
  }, "handleVolumeChange");
2278
2278
  video.addEventListener("volumechange", handleVolumeChange);
@@ -2280,7 +2280,7 @@ var StreamProvider = React17.forwardRef(
2280
2280
  }, [videoUrl, updateVolume]);
2281
2281
  const isFillMode = aspectRatio === "fill";
2282
2282
  const computedAspectRatio = aspectRatio === "auto" || aspectRatio === "fill" ? void 0 : aspectRatio;
2283
- const renderErrorFallback = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2283
+ const renderErrorFallback = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2284
2284
  const fallbackProps = { error: errorMessage, retry };
2285
2285
  if (typeof errorFallback === "function") {
2286
2286
  return errorFallback(fallbackProps);
@@ -2348,11 +2348,11 @@ function VideoPlayerProvider({
2348
2348
  );
2349
2349
  return /* @__PURE__ */ jsxRuntime.jsx(VideoPlayerContext.Provider, { value, children });
2350
2350
  }
2351
- chunkUQ3XI5MY_cjs.__name(VideoPlayerProvider, "VideoPlayerProvider");
2351
+ chunkWGEGR3DF_cjs.__name(VideoPlayerProvider, "VideoPlayerProvider");
2352
2352
  function useVideoPlayerContext() {
2353
2353
  return React17.useContext(VideoPlayerContext);
2354
2354
  }
2355
- chunkUQ3XI5MY_cjs.__name(useVideoPlayerContext, "useVideoPlayerContext");
2355
+ chunkWGEGR3DF_cjs.__name(useVideoPlayerContext, "useVideoPlayerContext");
2356
2356
 
2357
2357
  // src/tools/VideoPlayer/utils/resolvers.ts
2358
2358
  function resolvePlayerMode(source, mode = "auto") {
@@ -2374,11 +2374,11 @@ function resolvePlayerMode(source, mode = "auto") {
2374
2374
  return "native";
2375
2375
  }
2376
2376
  }
2377
- chunkUQ3XI5MY_cjs.__name(resolvePlayerMode, "resolvePlayerMode");
2377
+ chunkWGEGR3DF_cjs.__name(resolvePlayerMode, "resolvePlayerMode");
2378
2378
  function isSimpleStreamSource(source) {
2379
2379
  return source.type === "stream" && !("getStreamUrl" in source);
2380
2380
  }
2381
- chunkUQ3XI5MY_cjs.__name(isSimpleStreamSource, "isSimpleStreamSource");
2381
+ chunkWGEGR3DF_cjs.__name(isSimpleStreamSource, "isSimpleStreamSource");
2382
2382
  function resolveStreamSource(source, context) {
2383
2383
  if (!context?.getStreamUrl) {
2384
2384
  console.warn(
@@ -2401,7 +2401,7 @@ function resolveStreamSource(source, context) {
2401
2401
  poster: source.poster
2402
2402
  };
2403
2403
  }
2404
- chunkUQ3XI5MY_cjs.__name(resolveStreamSource, "resolveStreamSource");
2404
+ chunkWGEGR3DF_cjs.__name(resolveStreamSource, "resolveStreamSource");
2405
2405
 
2406
2406
  // src/tools/VideoPlayer/utils/fileSource.ts
2407
2407
  function resolveFileSource(options) {
@@ -2447,7 +2447,7 @@ function resolveFileSource(options) {
2447
2447
  }
2448
2448
  return null;
2449
2449
  }
2450
- chunkUQ3XI5MY_cjs.__name(resolveFileSource, "resolveFileSource");
2450
+ chunkWGEGR3DF_cjs.__name(resolveFileSource, "resolveFileSource");
2451
2451
  var VideoPlayer = React17.forwardRef(
2452
2452
  ({
2453
2453
  source: rawSource,
@@ -2582,13 +2582,13 @@ function VideoControls({ player, className }) {
2582
2582
  const currentTime = store.currentTime;
2583
2583
  const duration = store.duration;
2584
2584
  const volume = store.volume;
2585
- const formatTime2 = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((seconds) => {
2585
+ const formatTime2 = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((seconds) => {
2586
2586
  if (!seconds || seconds < 0) return "0:00";
2587
2587
  const minutes = Math.floor(seconds / 60);
2588
2588
  const secs = Math.floor(seconds % 60);
2589
2589
  return `${minutes}:${secs.toString().padStart(2, "0")}`;
2590
2590
  }, "formatTime");
2591
- const handleProgressClick = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((e) => {
2591
+ const handleProgressClick = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((e) => {
2592
2592
  if (!duration) return;
2593
2593
  const rect = e.currentTarget.getBoundingClientRect();
2594
2594
  const clickX = e.clientX - rect.left;
@@ -2596,7 +2596,7 @@ function VideoControls({ player, className }) {
2596
2596
  const newTime = percentage * duration;
2597
2597
  remote.seek(newTime);
2598
2598
  }, "handleProgressClick");
2599
- const handleVolumeChange = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((e) => {
2599
+ const handleVolumeChange = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((e) => {
2600
2600
  const rect = e.currentTarget.getBoundingClientRect();
2601
2601
  const clickX = e.clientX - rect.left;
2602
2602
  const percentage = Math.max(0, Math.min(1, clickX / rect.width));
@@ -2690,7 +2690,7 @@ function VideoControls({ player, className }) {
2690
2690
  }
2691
2691
  );
2692
2692
  }
2693
- chunkUQ3XI5MY_cjs.__name(VideoControls, "VideoControls");
2693
+ chunkWGEGR3DF_cjs.__name(VideoControls, "VideoControls");
2694
2694
  function VideoErrorFallback({
2695
2695
  error,
2696
2696
  retry,
@@ -2744,7 +2744,7 @@ function VideoErrorFallback({
2744
2744
  }
2745
2745
  );
2746
2746
  }
2747
- chunkUQ3XI5MY_cjs.__name(VideoErrorFallback, "VideoErrorFallback");
2747
+ chunkWGEGR3DF_cjs.__name(VideoErrorFallback, "VideoErrorFallback");
2748
2748
  function createVideoErrorFallback(options) {
2749
2749
  return (props, source) => /* @__PURE__ */ jsxRuntime.jsx(
2750
2750
  VideoErrorFallback,
@@ -2757,7 +2757,7 @@ function createVideoErrorFallback(options) {
2757
2757
  }
2758
2758
  );
2759
2759
  }
2760
- chunkUQ3XI5MY_cjs.__name(createVideoErrorFallback, "createVideoErrorFallback");
2760
+ chunkWGEGR3DF_cjs.__name(createVideoErrorFallback, "createVideoErrorFallback");
2761
2761
  function useHybridAudio(options) {
2762
2762
  const {
2763
2763
  src,
@@ -2935,7 +2935,7 @@ function useHybridAudio(options) {
2935
2935
  const audio = audioRef.current;
2936
2936
  if (!audio) return;
2937
2937
  const handlers = {
2938
- loadedmetadata: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2938
+ loadedmetadata: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2939
2939
  setState((prev) => ({
2940
2940
  ...prev,
2941
2941
  duration: audio.duration,
@@ -2943,37 +2943,37 @@ function useHybridAudio(options) {
2943
2943
  }));
2944
2944
  onReady?.();
2945
2945
  }, "loadedmetadata"),
2946
- canplay: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2946
+ canplay: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2947
2947
  setState((prev) => ({ ...prev, isReady: true }));
2948
2948
  if (autoPlay) {
2949
2949
  play();
2950
2950
  }
2951
2951
  }, "canplay"),
2952
- play: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2952
+ play: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2953
2953
  setState((prev) => ({ ...prev, isPlaying: true }));
2954
2954
  onPlay?.();
2955
2955
  }, "play"),
2956
- pause: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2956
+ pause: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2957
2957
  setState((prev) => ({ ...prev, isPlaying: false }));
2958
2958
  onPause?.();
2959
2959
  }, "pause"),
2960
- ended: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2960
+ ended: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2961
2961
  setState((prev) => ({ ...prev, isPlaying: false }));
2962
2962
  onEnded?.();
2963
2963
  }, "ended"),
2964
- timeupdate: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2964
+ timeupdate: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2965
2965
  setState((prev) => ({ ...prev, currentTime: audio.currentTime }));
2966
2966
  onTimeUpdate?.(audio.currentTime);
2967
2967
  }, "timeupdate"),
2968
- progress: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2968
+ progress: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2969
2969
  setState((prev) => ({ ...prev, buffered: audio.buffered }));
2970
2970
  }, "progress"),
2971
- error: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2971
+ error: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2972
2972
  const error = new Error(audio.error?.message || "Audio error");
2973
2973
  setState((prev) => ({ ...prev, error }));
2974
2974
  onError?.(error);
2975
2975
  }, "error"),
2976
- volumechange: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
2976
+ volumechange: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
2977
2977
  setState((prev) => ({
2978
2978
  ...prev,
2979
2979
  volume: audio.volume,
@@ -3014,7 +3014,7 @@ function useHybridAudio(options) {
3014
3014
  }
3015
3015
  };
3016
3016
  }
3017
- chunkUQ3XI5MY_cjs.__name(useHybridAudio, "useHybridAudio");
3017
+ chunkWGEGR3DF_cjs.__name(useHybridAudio, "useHybridAudio");
3018
3018
  function useHybridAudioAnalysis(analyser, isPlaying) {
3019
3019
  const [levels, setLevels] = React17.useState({ bass: 0, mid: 0, high: 0, overall: 0 });
3020
3020
  const animationRef = React17.useRef(null);
@@ -3042,7 +3042,7 @@ function useHybridAudioAnalysis(analyser, isPlaying) {
3042
3042
  return;
3043
3043
  }
3044
3044
  const dataArray = dataArrayRef.current;
3045
- const animate = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
3045
+ const animate = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
3046
3046
  analyser.getByteFrequencyData(dataArray);
3047
3047
  const binCount = dataArray.length;
3048
3048
  const bassEnd = Math.floor(binCount * 0.15);
@@ -3074,7 +3074,7 @@ function useHybridAudioAnalysis(analyser, isPlaying) {
3074
3074
  }, [analyser, isPlaying, cleanup]);
3075
3075
  return levels;
3076
3076
  }
3077
- chunkUQ3XI5MY_cjs.__name(useHybridAudioAnalysis, "useHybridAudioAnalysis");
3077
+ chunkWGEGR3DF_cjs.__name(useHybridAudioAnalysis, "useHybridAudioAnalysis");
3078
3078
  var STORAGE_KEY = "audio-player-settings";
3079
3079
  var DEFAULT_SETTINGS = {
3080
3080
  enabled: true,
@@ -3092,7 +3092,7 @@ function VisualizationProvider({ children }) {
3092
3092
  const value = useVisualizationState();
3093
3093
  return /* @__PURE__ */ jsxRuntime.jsx(VisualizationContext.Provider, { value, children });
3094
3094
  }
3095
- chunkUQ3XI5MY_cjs.__name(VisualizationProvider, "VisualizationProvider");
3095
+ chunkWGEGR3DF_cjs.__name(VisualizationProvider, "VisualizationProvider");
3096
3096
  function useVisualizationState() {
3097
3097
  const [settings, setSettings] = hooks.useLocalStorage(
3098
3098
  STORAGE_KEY,
@@ -3144,13 +3144,13 @@ function useVisualizationState() {
3144
3144
  [settings, toggle, setSetting, nextVariant, nextIntensity, nextColorScheme, reset]
3145
3145
  );
3146
3146
  }
3147
- chunkUQ3XI5MY_cjs.__name(useVisualizationState, "useVisualizationState");
3147
+ chunkWGEGR3DF_cjs.__name(useVisualizationState, "useVisualizationState");
3148
3148
  function useVisualization() {
3149
3149
  const context = React17.useContext(VisualizationContext);
3150
3150
  const fallbackState = useVisualizationState();
3151
3151
  return context ?? fallbackState;
3152
3152
  }
3153
- chunkUQ3XI5MY_cjs.__name(useVisualization, "useVisualization");
3153
+ chunkWGEGR3DF_cjs.__name(useVisualization, "useVisualization");
3154
3154
  var useAudioVisualization = useVisualization;
3155
3155
  var VARIANT_INFO = {
3156
3156
  spotlight: { label: "Spotlight", icon: "\u{1F4AB}" },
@@ -3208,7 +3208,7 @@ function HybridAudioProvider({ children, ...options }) {
3208
3208
  );
3209
3209
  return /* @__PURE__ */ jsxRuntime.jsx(HybridAudioContext.Provider, { value, children });
3210
3210
  }
3211
- chunkUQ3XI5MY_cjs.__name(HybridAudioProvider, "HybridAudioProvider");
3211
+ chunkWGEGR3DF_cjs.__name(HybridAudioProvider, "HybridAudioProvider");
3212
3212
  function useHybridAudioContext() {
3213
3213
  const context = React17.useContext(HybridAudioContext);
3214
3214
  if (!context) {
@@ -3216,28 +3216,28 @@ function useHybridAudioContext() {
3216
3216
  }
3217
3217
  return context;
3218
3218
  }
3219
- chunkUQ3XI5MY_cjs.__name(useHybridAudioContext, "useHybridAudioContext");
3219
+ chunkWGEGR3DF_cjs.__name(useHybridAudioContext, "useHybridAudioContext");
3220
3220
  function useHybridAudioState() {
3221
3221
  const { state } = useHybridAudioContext();
3222
3222
  return state;
3223
3223
  }
3224
- chunkUQ3XI5MY_cjs.__name(useHybridAudioState, "useHybridAudioState");
3224
+ chunkWGEGR3DF_cjs.__name(useHybridAudioState, "useHybridAudioState");
3225
3225
  function useHybridAudioControls() {
3226
3226
  const { controls } = useHybridAudioContext();
3227
3227
  return controls;
3228
3228
  }
3229
- chunkUQ3XI5MY_cjs.__name(useHybridAudioControls, "useHybridAudioControls");
3229
+ chunkWGEGR3DF_cjs.__name(useHybridAudioControls, "useHybridAudioControls");
3230
3230
  function useHybridAudioLevels() {
3231
3231
  const { audioLevels } = useHybridAudioContext();
3232
3232
  return audioLevels;
3233
3233
  }
3234
- chunkUQ3XI5MY_cjs.__name(useHybridAudioLevels, "useHybridAudioLevels");
3234
+ chunkWGEGR3DF_cjs.__name(useHybridAudioLevels, "useHybridAudioLevels");
3235
3235
  function useHybridWebAudio() {
3236
3236
  const { webAudio } = useHybridAudioContext();
3237
3237
  return webAudio;
3238
3238
  }
3239
- chunkUQ3XI5MY_cjs.__name(useHybridWebAudio, "useHybridWebAudio");
3240
- var HybridWaveform = React17.memo(/* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(function HybridWaveform2({
3239
+ chunkWGEGR3DF_cjs.__name(useHybridWebAudio, "useHybridWebAudio");
3240
+ var HybridWaveform = React17.memo(/* @__PURE__ */ chunkWGEGR3DF_cjs.__name(function HybridWaveform2({
3241
3241
  mode = "frequency",
3242
3242
  height = 64,
3243
3243
  barWidth = 3,
@@ -3415,9 +3415,9 @@ function formatTime(seconds) {
3415
3415
  const secs = Math.floor(seconds % 60);
3416
3416
  return `${mins}:${secs.toString().padStart(2, "0")}`;
3417
3417
  }
3418
- chunkUQ3XI5MY_cjs.__name(formatTime, "formatTime");
3418
+ chunkWGEGR3DF_cjs.__name(formatTime, "formatTime");
3419
3419
  lib.createMediaLogger("AudioPlayer");
3420
- var HybridAudioPlayer = React17.memo(/* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(function HybridAudioPlayer2({
3420
+ var HybridAudioPlayer = React17.memo(/* @__PURE__ */ chunkWGEGR3DF_cjs.__name(function HybridAudioPlayer2({
3421
3421
  showControls = true,
3422
3422
  showWaveform = true,
3423
3423
  waveformMode = "frequency",
@@ -3430,7 +3430,7 @@ var HybridAudioPlayer = React17.memo(/* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(fu
3430
3430
  }) {
3431
3431
  const { state, controls } = useHybridAudioContext();
3432
3432
  const isLoading = !state.isReady;
3433
- const handleVolumeChange = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((value) => {
3433
+ const handleVolumeChange = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((value) => {
3434
3434
  controls.setVolume(value[0] / 100);
3435
3435
  }, "handleVolumeChange");
3436
3436
  return /* @__PURE__ */ jsxRuntime.jsxs(
@@ -3570,11 +3570,11 @@ var DEFAULT_GLOW_COLORS = [
3570
3570
  function getEffectConfig(intensity) {
3571
3571
  return INTENSITY_CONFIG[intensity];
3572
3572
  }
3573
- chunkUQ3XI5MY_cjs.__name(getEffectConfig, "getEffectConfig");
3573
+ chunkWGEGR3DF_cjs.__name(getEffectConfig, "getEffectConfig");
3574
3574
  function getColors(colorScheme) {
3575
3575
  return COLOR_SCHEMES2[colorScheme];
3576
3576
  }
3577
- chunkUQ3XI5MY_cjs.__name(getColors, "getColors");
3577
+ chunkWGEGR3DF_cjs.__name(getColors, "getColors");
3578
3578
  function prepareEffectColors(colorScheme, levels) {
3579
3579
  const baseColors = COLOR_SCHEMES2[colorScheme];
3580
3580
  const colors = baseColors.length > 1 ? baseColors : DEFAULT_GLOW_COLORS;
@@ -3583,7 +3583,7 @@ function prepareEffectColors(colorScheme, levels) {
3583
3583
  );
3584
3584
  return { colors, hueShift };
3585
3585
  }
3586
- chunkUQ3XI5MY_cjs.__name(prepareEffectColors, "prepareEffectColors");
3586
+ chunkWGEGR3DF_cjs.__name(prepareEffectColors, "prepareEffectColors");
3587
3587
  function calculateGlowLayers(levels, config, colors) {
3588
3588
  const { bass, mid, high } = levels;
3589
3589
  return [
@@ -3630,7 +3630,7 @@ function calculateGlowLayers(levels, config, colors) {
3630
3630
  }
3631
3631
  ];
3632
3632
  }
3633
- chunkUQ3XI5MY_cjs.__name(calculateGlowLayers, "calculateGlowLayers");
3633
+ chunkWGEGR3DF_cjs.__name(calculateGlowLayers, "calculateGlowLayers");
3634
3634
  function calculateOrbs(levels, config, colors, baseSize = 50) {
3635
3635
  const { bass, mid, high, overall } = levels;
3636
3636
  const size = baseSize * 3;
@@ -3685,7 +3685,7 @@ function calculateOrbs(levels, config, colors, baseSize = 50) {
3685
3685
  }
3686
3686
  ];
3687
3687
  }
3688
- chunkUQ3XI5MY_cjs.__name(calculateOrbs, "calculateOrbs");
3688
+ chunkWGEGR3DF_cjs.__name(calculateOrbs, "calculateOrbs");
3689
3689
  function calculateMeshGradients(levels, config, colors) {
3690
3690
  const { bass, mid, high, overall } = levels;
3691
3691
  const bassOffset = bass * 40;
@@ -3755,7 +3755,7 @@ function calculateMeshGradients(levels, config, colors) {
3755
3755
  }
3756
3756
  ];
3757
3757
  }
3758
- chunkUQ3XI5MY_cjs.__name(calculateMeshGradients, "calculateMeshGradients");
3758
+ chunkWGEGR3DF_cjs.__name(calculateMeshGradients, "calculateMeshGradients");
3759
3759
  function calculateSpotlight(levels, config, colors, rotation) {
3760
3760
  const { bass, mid, high, overall } = levels;
3761
3761
  return {
@@ -3777,7 +3777,7 @@ function calculateSpotlight(levels, config, colors, rotation) {
3777
3777
  ringScale: 1 + overall * 0.3
3778
3778
  };
3779
3779
  }
3780
- chunkUQ3XI5MY_cjs.__name(calculateSpotlight, "calculateSpotlight");
3780
+ chunkWGEGR3DF_cjs.__name(calculateSpotlight, "calculateSpotlight");
3781
3781
  var EFFECT_ANIMATIONS = `
3782
3782
  @keyframes spotlight-spin {
3783
3783
  0% { transform: rotate(0deg); }
@@ -3932,7 +3932,7 @@ function GlowEffect({ data, colors, isPlaying }) {
3932
3932
  )
3933
3933
  ] });
3934
3934
  }
3935
- chunkUQ3XI5MY_cjs.__name(GlowEffect, "GlowEffect");
3935
+ chunkWGEGR3DF_cjs.__name(GlowEffect, "GlowEffect");
3936
3936
  function OrbsEffect({ orbs, blur, isPlaying }) {
3937
3937
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: orbs.map((orb, i) => /* @__PURE__ */ jsxRuntime.jsx(
3938
3938
  "div",
@@ -3952,7 +3952,7 @@ function OrbsEffect({ orbs, blur, isPlaying }) {
3952
3952
  i
3953
3953
  )) });
3954
3954
  }
3955
- chunkUQ3XI5MY_cjs.__name(OrbsEffect, "OrbsEffect");
3955
+ chunkWGEGR3DF_cjs.__name(OrbsEffect, "OrbsEffect");
3956
3956
  function SpotlightEffect({ data, colors, blur, isPlaying }) {
3957
3957
  const inset = "inset" in data ? data.inset : 12;
3958
3958
  const pulseInset = "pulseInset" in data ? data.pulseInset : 24;
@@ -4013,7 +4013,7 @@ function SpotlightEffect({ data, colors, blur, isPlaying }) {
4013
4013
  )
4014
4014
  ] });
4015
4015
  }
4016
- chunkUQ3XI5MY_cjs.__name(SpotlightEffect, "SpotlightEffect");
4016
+ chunkWGEGR3DF_cjs.__name(SpotlightEffect, "SpotlightEffect");
4017
4017
  function MeshEffect({ gradients, isPlaying }) {
4018
4018
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: gradients.map((g, i) => {
4019
4019
  const isCenter = "isCenter" in g && g.isCenter;
@@ -4041,7 +4041,7 @@ function MeshEffect({ gradients, isPlaying }) {
4041
4041
  );
4042
4042
  }) });
4043
4043
  }
4044
- chunkUQ3XI5MY_cjs.__name(MeshEffect, "MeshEffect");
4044
+ chunkWGEGR3DF_cjs.__name(MeshEffect, "MeshEffect");
4045
4045
  var SIZES = {
4046
4046
  sm: { container: "w-32 h-32", orbBase: 40 },
4047
4047
  md: { container: "w-40 h-40", orbBase: 50 },
@@ -4102,7 +4102,7 @@ function AudioReactiveCover({
4102
4102
  }
4103
4103
  );
4104
4104
  }
4105
- chunkUQ3XI5MY_cjs.__name(AudioReactiveCover, "AudioReactiveCover");
4105
+ chunkWGEGR3DF_cjs.__name(AudioReactiveCover, "AudioReactiveCover");
4106
4106
  var COVER_SIZES = {
4107
4107
  sm: "w-24 h-24",
4108
4108
  md: "w-32 h-32",
@@ -4111,7 +4111,7 @@ var COVER_SIZES = {
4111
4111
  function HybridSimplePlayer(props) {
4112
4112
  return /* @__PURE__ */ jsxRuntime.jsx(VisualizationProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(HybridSimplePlayerContent, { ...props }) });
4113
4113
  }
4114
- chunkUQ3XI5MY_cjs.__name(HybridSimplePlayer, "HybridSimplePlayer");
4114
+ chunkWGEGR3DF_cjs.__name(HybridSimplePlayer, "HybridSimplePlayer");
4115
4115
  function HybridSimplePlayerContent({
4116
4116
  src,
4117
4117
  title,
@@ -4143,7 +4143,7 @@ function HybridSimplePlayerContent({
4143
4143
  const effectiveIntensity = intensity ?? vizSettings.intensity;
4144
4144
  const effectiveColorScheme = colorScheme ?? vizSettings.colorScheme;
4145
4145
  const showReactiveCover = reactiveCover && effectiveVariant !== "none";
4146
- const renderCoverContent = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => {
4146
+ const renderCoverContent = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => {
4147
4147
  if (typeof coverArt === "string") {
4148
4148
  return /* @__PURE__ */ jsxRuntime.jsx("img", { src: coverArt, alt: title || "Album cover", className: "w-full h-full object-cover" });
4149
4149
  }
@@ -4231,7 +4231,7 @@ function HybridSimplePlayerContent({
4231
4231
  }
4232
4232
  );
4233
4233
  }
4234
- chunkUQ3XI5MY_cjs.__name(HybridSimplePlayerContent, "HybridSimplePlayerContent");
4234
+ chunkWGEGR3DF_cjs.__name(HybridSimplePlayerContent, "HybridSimplePlayerContent");
4235
4235
 
4236
4236
  // src/tools/ImageViewer/utils/constants.ts
4237
4237
  var MAX_IMAGE_SIZE = 50 * 1024 * 1024;
@@ -4277,7 +4277,7 @@ async function createLQIP(imageSrc) {
4277
4277
  return null;
4278
4278
  }
4279
4279
  }
4280
- chunkUQ3XI5MY_cjs.__name(createLQIP, "createLQIP");
4280
+ chunkWGEGR3DF_cjs.__name(createLQIP, "createLQIP");
4281
4281
  var imageDebug = lib.createMediaLogger("ImageViewer");
4282
4282
  function ImageToolbar({
4283
4283
  scale,
@@ -4394,7 +4394,7 @@ function ImageToolbar({
4394
4394
  ] })
4395
4395
  ] });
4396
4396
  }
4397
- chunkUQ3XI5MY_cjs.__name(ImageToolbar, "ImageToolbar");
4397
+ chunkWGEGR3DF_cjs.__name(ImageToolbar, "ImageToolbar");
4398
4398
  function ImageInfo({ src }) {
4399
4399
  const { getDimensions, cacheDimensions } = useImageCache();
4400
4400
  const [dimensions, setDimensions] = React17.useState(null);
@@ -4419,7 +4419,7 @@ function ImageInfo({ src }) {
4419
4419
  dimensions.h
4420
4420
  ] });
4421
4421
  }
4422
- chunkUQ3XI5MY_cjs.__name(ImageInfo, "ImageInfo");
4422
+ chunkWGEGR3DF_cjs.__name(ImageInfo, "ImageInfo");
4423
4423
  function useImageTransform(options = {}) {
4424
4424
  const { resetKey } = options;
4425
4425
  const [transform, setTransform] = React17.useState(DEFAULT_TRANSFORM);
@@ -4469,7 +4469,7 @@ function useImageTransform(options = {}) {
4469
4469
  transformStyle
4470
4470
  };
4471
4471
  }
4472
- chunkUQ3XI5MY_cjs.__name(useImageTransform, "useImageTransform");
4472
+ chunkWGEGR3DF_cjs.__name(useImageTransform, "useImageTransform");
4473
4473
  function useImageLoading(options) {
4474
4474
  const { content, mimeType, src: directSrc } = options;
4475
4475
  const getOrCreateBlobUrl = useMediaCacheStore.getState().getOrCreateBlobUrl;
@@ -4581,7 +4581,7 @@ function useImageLoading(options) {
4581
4581
  hasContent
4582
4582
  };
4583
4583
  }
4584
- chunkUQ3XI5MY_cjs.__name(useImageLoading, "useImageLoading");
4584
+ chunkWGEGR3DF_cjs.__name(useImageLoading, "useImageLoading");
4585
4585
  function ImageViewer({ file, content, src: directSrc, inDialog = false }) {
4586
4586
  const [scale, setScale] = React17.useState(1);
4587
4587
  const [dialogOpen, setDialogOpen] = React17.useState(false);
@@ -4614,7 +4614,7 @@ function ImageViewer({ file, content, src: directSrc, inDialog = false }) {
4614
4614
  setDialogOpen(true);
4615
4615
  }, []);
4616
4616
  React17.useEffect(() => {
4617
- const handleKeyDown = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((e) => {
4617
+ const handleKeyDown = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((e) => {
4618
4618
  if (!containerRef.current?.contains(document.activeElement) && document.activeElement !== containerRef.current) {
4619
4619
  return;
4620
4620
  }
@@ -4762,7 +4762,7 @@ function ImageViewer({ file, content, src: directSrc, inDialog = false }) {
4762
4762
  }
4763
4763
  );
4764
4764
  }
4765
- chunkUQ3XI5MY_cjs.__name(ImageViewer, "ImageViewer");
4765
+ chunkWGEGR3DF_cjs.__name(ImageViewer, "ImageViewer");
4766
4766
  function smartTruncate(content, maxLength) {
4767
4767
  if (content.length <= maxLength) {
4768
4768
  return content;
@@ -4782,7 +4782,7 @@ function smartTruncate(content, maxLength) {
4782
4782
  truncated = fixUnclosedMarkdown(truncated);
4783
4783
  return truncated;
4784
4784
  }
4785
- chunkUQ3XI5MY_cjs.__name(smartTruncate, "smartTruncate");
4785
+ chunkWGEGR3DF_cjs.__name(smartTruncate, "smartTruncate");
4786
4786
  function truncateByLines(content, maxLines) {
4787
4787
  const lines = content.split("\n");
4788
4788
  if (lines.length <= maxLines) {
@@ -4792,10 +4792,10 @@ function truncateByLines(content, maxLines) {
4792
4792
  truncated = fixUnclosedMarkdown(truncated);
4793
4793
  return truncated;
4794
4794
  }
4795
- chunkUQ3XI5MY_cjs.__name(truncateByLines, "truncateByLines");
4795
+ chunkWGEGR3DF_cjs.__name(truncateByLines, "truncateByLines");
4796
4796
  function fixUnclosedMarkdown(content) {
4797
4797
  let result = content;
4798
- const countOccurrences = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((str, marker) => {
4798
+ const countOccurrences = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((str, marker) => {
4799
4799
  const escaped = marker.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
4800
4800
  const matches = str.match(new RegExp(escaped, "g"));
4801
4801
  return matches ? matches.length : 0;
@@ -4833,7 +4833,7 @@ function fixUnclosedMarkdown(content) {
4833
4833
  }
4834
4834
  return result;
4835
4835
  }
4836
- chunkUQ3XI5MY_cjs.__name(fixUnclosedMarkdown, "fixUnclosedMarkdown");
4836
+ chunkWGEGR3DF_cjs.__name(fixUnclosedMarkdown, "fixUnclosedMarkdown");
4837
4837
  function useCollapsibleContent(content, options = {}) {
4838
4838
  const { maxLength, maxLines, defaultExpanded = false } = options;
4839
4839
  const [isCollapsed, setIsCollapsed] = React17.useState(!defaultExpanded);
@@ -4877,8 +4877,8 @@ function useCollapsibleContent(content, options = {}) {
4877
4877
  originalLineCount
4878
4878
  };
4879
4879
  }
4880
- chunkUQ3XI5MY_cjs.__name(useCollapsibleContent, "useCollapsibleContent");
4881
- var extractTextFromChildren = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((children) => {
4880
+ chunkWGEGR3DF_cjs.__name(useCollapsibleContent, "useCollapsibleContent");
4881
+ var extractTextFromChildren = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((children) => {
4882
4882
  if (typeof children === "string") {
4883
4883
  return children;
4884
4884
  }
@@ -4894,7 +4894,7 @@ var extractTextFromChildren = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((children
4894
4894
  }
4895
4895
  return "";
4896
4896
  }, "extractTextFromChildren");
4897
- var CodeBlock = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ code, language, isUser, isCompact = false }) => {
4897
+ var CodeBlock = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ code, language, isUser, isCompact = false }) => {
4898
4898
  const theme = hooks.useResolvedTheme();
4899
4899
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative group my-3", children: [
4900
4900
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -4911,7 +4911,7 @@ var CodeBlock = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ code, language, isUs
4911
4911
  }
4912
4912
  ),
4913
4913
  /* @__PURE__ */ jsxRuntime.jsx(
4914
- chunk7DGDQVQW_cjs.PrettyCode_default,
4914
+ chunkFB5QBSI3_cjs.PrettyCode_default,
4915
4915
  {
4916
4916
  data: code,
4917
4917
  language,
@@ -4923,26 +4923,26 @@ var CodeBlock = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ code, language, isUs
4923
4923
  )
4924
4924
  ] });
4925
4925
  }, "CodeBlock");
4926
- var createMarkdownComponents = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((isUser = false, isCompact = false) => {
4926
+ var createMarkdownComponents = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((isUser = false, isCompact = false) => {
4927
4927
  const textSize = isCompact ? "text-xs" : "text-sm";
4928
4928
  const headingBase = isCompact ? "text-sm" : "text-base";
4929
4929
  const headingSm = isCompact ? "text-xs" : "text-sm";
4930
4930
  return {
4931
4931
  // Headings - scaled for chat context
4932
- h1: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h1", { className: `${headingBase} font-bold mb-2 mt-3 first:mt-0`, children }), "h1"),
4933
- h2: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h2", { className: `${headingSm} font-bold mb-2 mt-3 first:mt-0`, children }), "h2"),
4934
- h3: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h3", { className: `${headingSm} font-semibold mb-1 mt-2 first:mt-0`, children }), "h3"),
4935
- h4: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h4", { className: `${headingSm} font-semibold mb-1 mt-2 first:mt-0`, children }), "h4"),
4936
- h5: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h5", { className: `${headingSm} font-medium mb-1 mt-2 first:mt-0`, children }), "h5"),
4937
- h6: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h6", { className: `${headingSm} font-medium mb-1 mt-2 first:mt-0`, children }), "h6"),
4932
+ h1: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h1", { className: `${headingBase} font-bold mb-2 mt-3 first:mt-0`, children }), "h1"),
4933
+ h2: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h2", { className: `${headingSm} font-bold mb-2 mt-3 first:mt-0`, children }), "h2"),
4934
+ h3: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h3", { className: `${headingSm} font-semibold mb-1 mt-2 first:mt-0`, children }), "h3"),
4935
+ h4: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h4", { className: `${headingSm} font-semibold mb-1 mt-2 first:mt-0`, children }), "h4"),
4936
+ h5: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h5", { className: `${headingSm} font-medium mb-1 mt-2 first:mt-0`, children }), "h5"),
4937
+ h6: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("h6", { className: `${headingSm} font-medium mb-1 mt-2 first:mt-0`, children }), "h6"),
4938
4938
  // Paragraphs - compact spacing for chat
4939
- p: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${textSize} mb-2 last:mb-0 leading-relaxed break-words`, children }), "p"),
4939
+ p: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("p", { className: `${textSize} mb-2 last:mb-0 leading-relaxed break-words`, children }), "p"),
4940
4940
  // Lists - compact
4941
- ul: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("ul", { className: `list-disc list-inside mb-2 space-y-1 ${textSize}`, children }), "ul"),
4942
- ol: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("ol", { className: `list-decimal list-inside mb-2 space-y-1 ${textSize}`, children }), "ol"),
4943
- li: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "break-words", children }), "li"),
4941
+ ul: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("ul", { className: `list-disc list-inside mb-2 space-y-1 ${textSize}`, children }), "ul"),
4942
+ ol: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("ol", { className: `list-decimal list-inside mb-2 space-y-1 ${textSize}`, children }), "ol"),
4943
+ li: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("li", { className: "break-words", children }), "li"),
4944
4944
  // Links - appropriate for chat context
4945
- a: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ href, children }) => /* @__PURE__ */ jsxRuntime.jsx(
4945
+ a: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ href, children }) => /* @__PURE__ */ jsxRuntime.jsx(
4946
4946
  "a",
4947
4947
  {
4948
4948
  href,
@@ -4953,7 +4953,7 @@ var createMarkdownComponents = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((isUser
4953
4953
  }
4954
4954
  ), "a"),
4955
4955
  // Code blocks - using CodeBlock component with copy functionality
4956
- pre: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => {
4956
+ pre: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => {
4957
4957
  let codeContent = "";
4958
4958
  let language = "plaintext";
4959
4959
  if (React17__default.default.isValidElement(children)) {
@@ -5001,7 +5001,7 @@ var createMarkdownComponents = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((isUser
5001
5001
  }
5002
5002
  }, "pre"),
5003
5003
  // Inline code
5004
- code: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children, className }) => {
5004
+ code: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children, className }) => {
5005
5005
  if (className?.includes("language-")) {
5006
5006
  return /* @__PURE__ */ jsxRuntime.jsx("code", { className, children });
5007
5007
  }
@@ -5009,22 +5009,22 @@ var createMarkdownComponents = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((isUser
5009
5009
  return /* @__PURE__ */ jsxRuntime.jsx("code", { className: "px-1.5 py-0.5 rounded text-xs font-mono bg-muted text-foreground break-all", children: codeContent });
5010
5010
  }, "code"),
5011
5011
  // Blockquotes
5012
- blockquote: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("blockquote", { className: `${textSize} border-l-2 border-border pl-3 my-2 italic text-muted-foreground break-words`, children }), "blockquote"),
5012
+ blockquote: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("blockquote", { className: `${textSize} border-l-2 border-border pl-3 my-2 italic text-muted-foreground break-words`, children }), "blockquote"),
5013
5013
  // Tables - compact for chat
5014
- table: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "overflow-x-auto my-3", children: /* @__PURE__ */ jsxRuntime.jsx("table", { className: `min-w-full ${textSize} border-collapse`, children }) }), "table"),
5015
- thead: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("thead", { className: "bg-muted/50", children }), "thead"),
5016
- tbody: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("tbody", { children }), "tbody"),
5017
- tr: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("tr", { className: "border-b border-border/50", children }), "tr"),
5018
- th: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("th", { className: "px-2 py-1 text-left font-medium break-words", children }), "th"),
5019
- td: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-2 py-1 break-words", children }), "td"),
5014
+ table: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "overflow-x-auto my-3", children: /* @__PURE__ */ jsxRuntime.jsx("table", { className: `min-w-full ${textSize} border-collapse`, children }) }), "table"),
5015
+ thead: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("thead", { className: "bg-muted/50", children }), "thead"),
5016
+ tbody: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("tbody", { children }), "tbody"),
5017
+ tr: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("tr", { className: "border-b border-border/50", children }), "tr"),
5018
+ th: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("th", { className: "px-2 py-1 text-left font-medium break-words", children }), "th"),
5019
+ td: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("td", { className: "px-2 py-1 break-words", children }), "td"),
5020
5020
  // Horizontal rule
5021
- hr: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(() => /* @__PURE__ */ jsxRuntime.jsx("hr", { className: "my-3 border-0 h-px bg-border" }), "hr"),
5021
+ hr: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(() => /* @__PURE__ */ jsxRuntime.jsx("hr", { className: "my-3 border-0 h-px bg-border" }), "hr"),
5022
5022
  // Strong and emphasis
5023
- strong: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("strong", { className: "font-semibold", children }), "strong"),
5024
- em: /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("em", { className: "italic", children }), "em")
5023
+ strong: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("strong", { className: "font-semibold", children }), "strong"),
5024
+ em: /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({ children }) => /* @__PURE__ */ jsxRuntime.jsx("em", { className: "italic", children }), "em")
5025
5025
  };
5026
5026
  }, "createMarkdownComponents");
5027
- var hasMarkdownSyntax = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((text) => {
5027
+ var hasMarkdownSyntax = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name((text) => {
5028
5028
  if (text.trim().includes("\n")) {
5029
5029
  return true;
5030
5030
  }
@@ -5062,7 +5062,7 @@ var hasMarkdownSyntax = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name((text) => {
5062
5062
  ];
5063
5063
  return markdownPatterns.some((pattern) => pattern.test(text));
5064
5064
  }, "hasMarkdownSyntax");
5065
- var CollapseToggle = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({
5065
+ var CollapseToggle = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({
5066
5066
  isCollapsed,
5067
5067
  onClick,
5068
5068
  readMoreLabel,
@@ -5127,7 +5127,7 @@ var CollapseToggle = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({
5127
5127
  }
5128
5128
  );
5129
5129
  }, "CollapseToggle");
5130
- var MarkdownMessage = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({
5130
+ var MarkdownMessage = /* @__PURE__ */ chunkWGEGR3DF_cjs.__name(({
5131
5131
  content,
5132
5132
  className = "",
5133
5133
  isUser = false,
@@ -5226,15 +5226,15 @@ var MarkdownMessage = /* @__PURE__ */ chunkUQ3XI5MY_cjs.__name(({
5226
5226
 
5227
5227
  Object.defineProperty(exports, "useLottie", {
5228
5228
  enumerable: true,
5229
- get: function () { return chunk3HK2OE62_cjs.useLottie; }
5229
+ get: function () { return chunkPRPG2T2E_cjs.useLottie; }
5230
5230
  });
5231
5231
  Object.defineProperty(exports, "JsonTree", {
5232
5232
  enumerable: true,
5233
- get: function () { return chunk7DGDQVQW_cjs.JsonTree_default; }
5233
+ get: function () { return chunkFB5QBSI3_cjs.JsonTree_default; }
5234
5234
  });
5235
5235
  Object.defineProperty(exports, "PrettyCode", {
5236
5236
  enumerable: true,
5237
- get: function () { return chunk7DGDQVQW_cjs.PrettyCode_default; }
5237
+ get: function () { return chunkFB5QBSI3_cjs.PrettyCode_default; }
5238
5238
  });
5239
5239
  exports.ArrayFieldItemTemplate = ArrayFieldItemTemplate;
5240
5240
  exports.ArrayFieldTemplate = ArrayFieldTemplate;