@windrun-huaiin/third-ui 5.13.3 → 5.13.5

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.
@@ -901,7 +901,7 @@ var require_acorn = __commonJS({
901
901
  this.privateNameStack = [];
902
902
  };
903
903
  var prototypeAccessors2 = { inFunction: { configurable: true }, inGenerator: { configurable: true }, inAsync: { configurable: true }, canAwait: { configurable: true }, allowSuper: { configurable: true }, allowDirectSuper: { configurable: true }, treatFunctionsAsVar: { configurable: true }, allowNewDotTarget: { configurable: true }, inClassStaticBlock: { configurable: true } };
904
- Parser3.prototype.parse = function parse5() {
904
+ Parser3.prototype.parse = function parse6() {
905
905
  var node2 = this.options.program || this.startNode();
906
906
  this.nextToken();
907
907
  return this.parseTopLevel(node2);
@@ -961,7 +961,7 @@ var require_acorn = __commonJS({
961
961
  }
962
962
  return cls;
963
963
  };
964
- Parser3.parse = function parse5(input, options) {
964
+ Parser3.parse = function parse6(input, options) {
965
965
  return new this(options, input).parse();
966
966
  };
967
967
  Parser3.parseExpressionAt = function parseExpressionAt3(input, pos, options) {
@@ -3761,7 +3761,7 @@ var require_acorn = __commonJS({
3761
3761
  }
3762
3762
  }
3763
3763
  };
3764
- var Node3 = function Node4(parser, pos, loc) {
3764
+ var Node4 = function Node5(parser, pos, loc) {
3765
3765
  this.type = "";
3766
3766
  this.start = pos;
3767
3767
  this.end = 0;
@@ -3777,10 +3777,10 @@ var require_acorn = __commonJS({
3777
3777
  };
3778
3778
  var pp$22 = Parser3.prototype;
3779
3779
  pp$22.startNode = function() {
3780
- return new Node3(this, this.start, this.startLoc);
3780
+ return new Node4(this, this.start, this.startLoc);
3781
3781
  };
3782
3782
  pp$22.startNodeAt = function(pos, loc) {
3783
- return new Node3(this, pos, loc);
3783
+ return new Node4(this, pos, loc);
3784
3784
  };
3785
3785
  function finishNodeAt2(node2, type, pos, loc) {
3786
3786
  node2.type = type;
@@ -3800,7 +3800,7 @@ var require_acorn = __commonJS({
3800
3800
  return finishNodeAt2.call(this, node2, type, pos, loc);
3801
3801
  };
3802
3802
  pp$22.copyNode = function(node2) {
3803
- var newNode = new Node3(this, node2.start, this.startLoc);
3803
+ var newNode = new Node4(this, node2.start, this.startLoc);
3804
3804
  for (var prop in node2) {
3805
3805
  newNode[prop] = node2[prop];
3806
3806
  }
@@ -4998,11 +4998,11 @@ var require_acorn = __commonJS({
4998
4998
  return result;
4999
4999
  };
5000
5000
  pp$12.regexp_classString = function(state) {
5001
- var count = 0;
5001
+ var count3 = 0;
5002
5002
  while (this.regexp_eatClassSetCharacter(state)) {
5003
- count++;
5003
+ count3++;
5004
5004
  }
5005
- return count === 1 ? CharSetOk2 : CharSetString2;
5005
+ return count3 === 1 ? CharSetOk2 : CharSetString2;
5006
5006
  };
5007
5007
  pp$12.regexp_eatClassSetCharacter = function(state) {
5008
5008
  var start2 = state.pos;
@@ -6009,7 +6009,7 @@ var require_acorn = __commonJS({
6009
6009
  Position: Position3,
6010
6010
  SourceLocation: SourceLocation3,
6011
6011
  getLineInfo: getLineInfo2,
6012
- Node: Node3,
6012
+ Node: Node4,
6013
6013
  TokenType: TokenType3,
6014
6014
  tokTypes: types$12,
6015
6015
  keywordTypes: keywords2,
@@ -6023,7 +6023,7 @@ var require_acorn = __commonJS({
6023
6023
  lineBreakG: lineBreakG2,
6024
6024
  nonASCIIwhitespace: nonASCIIwhitespace2
6025
6025
  };
6026
- function parse4(input, options) {
6026
+ function parse5(input, options) {
6027
6027
  return Parser3.parse(input, options);
6028
6028
  }
6029
6029
  function parseExpressionAt2(input, pos, options) {
@@ -6032,7 +6032,7 @@ var require_acorn = __commonJS({
6032
6032
  function tokenizer2(input, options) {
6033
6033
  return Parser3.tokenizer(input, options);
6034
6034
  }
6035
- exports2.Node = Node3;
6035
+ exports2.Node = Node4;
6036
6036
  exports2.Parser = Parser3;
6037
6037
  exports2.Position = Position3;
6038
6038
  exports2.SourceLocation = SourceLocation3;
@@ -6048,7 +6048,7 @@ var require_acorn = __commonJS({
6048
6048
  exports2.lineBreak = lineBreak2;
6049
6049
  exports2.lineBreakG = lineBreakG2;
6050
6050
  exports2.nonASCIIwhitespace = nonASCIIwhitespace2;
6051
- exports2.parse = parse4;
6051
+ exports2.parse = parse5;
6052
6052
  exports2.parseExpressionAt = parseExpressionAt2;
6053
6053
  exports2.tokContexts = types2;
6054
6054
  exports2.tokTypes = types$12;
@@ -6231,12 +6231,12 @@ var require_acorn_jsx = __commonJS({
6231
6231
  return this.finishToken(tt.string, out);
6232
6232
  }
6233
6233
  jsx_readEntity() {
6234
- let str = "", count = 0, entity;
6234
+ let str = "", count3 = 0, entity;
6235
6235
  let ch = this.input[this.pos];
6236
6236
  if (ch !== "&")
6237
6237
  this.raise(this.pos, "Entity must start with an ampersand");
6238
6238
  let startPos = ++this.pos;
6239
- while (this.pos < this.input.length && count++ < 10) {
6239
+ while (this.pos < this.input.length && count3++ < 10) {
6240
6240
  ch = this.input[this.pos++];
6241
6241
  if (ch === ";") {
6242
6242
  if (str[0] === "#") {
@@ -6582,7 +6582,7 @@ var require_format = __commonJS({
6582
6582
 
6583
6583
  // src/fuma/fuma-page-genarator.tsx
6584
6584
  import { DocsBody, DocsDescription, DocsPage, DocsTitle } from "fumadocs-ui/page";
6585
- import { cloneElement as cloneElement2 } from "react";
6585
+ import { cloneElement as cloneElement4 } from "react";
6586
6586
 
6587
6587
  // ../base-ui/src/assets/github.tsx
6588
6588
  import React from "react";
@@ -7821,6 +7821,7 @@ __export(limited_lucide_icons_exports, {
7821
7821
  MessageCircleMore: () => MessageCircleMore,
7822
7822
  MoreHorizontal: () => Ellipsis,
7823
7823
  MousePointerClick: () => MousePointerClick,
7824
+ Music4: () => Music4,
7824
7825
  NotepadText: () => NotepadText,
7825
7826
  Palette: () => Palette,
7826
7827
  PanelLeft: () => PanelLeft,
@@ -8756,8 +8757,17 @@ var __iconNode75 = [
8756
8757
  ];
8757
8758
  var MousePointerClick = createLucideIcon("mouse-pointer-click", __iconNode75);
8758
8759
 
8759
- // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/notepad-text.js
8760
+ // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/music-4.js
8760
8761
  var __iconNode76 = [
8762
+ ["path", { d: "M9 18V5l12-2v13", key: "1jmyc2" }],
8763
+ ["path", { d: "m9 9 12-2", key: "1e64n2" }],
8764
+ ["circle", { cx: "6", cy: "18", r: "3", key: "fqmcym" }],
8765
+ ["circle", { cx: "18", cy: "16", r: "3", key: "1hluhg" }]
8766
+ ];
8767
+ var Music4 = createLucideIcon("music-4", __iconNode76);
8768
+
8769
+ // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/notepad-text.js
8770
+ var __iconNode77 = [
8761
8771
  ["path", { d: "M8 2v4", key: "1cmpym" }],
8762
8772
  ["path", { d: "M12 2v4", key: "3427ic" }],
8763
8773
  ["path", { d: "M16 2v4", key: "4m81vk" }],
@@ -8766,10 +8776,10 @@ var __iconNode76 = [
8766
8776
  ["path", { d: "M8 14h8", key: "1fgep2" }],
8767
8777
  ["path", { d: "M8 18h5", key: "17enja" }]
8768
8778
  ];
8769
- var NotepadText = createLucideIcon("notepad-text", __iconNode76);
8779
+ var NotepadText = createLucideIcon("notepad-text", __iconNode77);
8770
8780
 
8771
8781
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/palette.js
8772
- var __iconNode77 = [
8782
+ var __iconNode78 = [
8773
8783
  [
8774
8784
  "path",
8775
8785
  {
@@ -8782,25 +8792,25 @@ var __iconNode77 = [
8782
8792
  ["circle", { cx: "6.5", cy: "12.5", r: ".5", fill: "currentColor", key: "qy21gx" }],
8783
8793
  ["circle", { cx: "8.5", cy: "7.5", r: ".5", fill: "currentColor", key: "fotxhn" }]
8784
8794
  ];
8785
- var Palette = createLucideIcon("palette", __iconNode77);
8795
+ var Palette = createLucideIcon("palette", __iconNode78);
8786
8796
 
8787
8797
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/panel-left.js
8788
- var __iconNode78 = [
8798
+ var __iconNode79 = [
8789
8799
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
8790
8800
  ["path", { d: "M9 3v18", key: "fh3hqa" }]
8791
8801
  ];
8792
- var PanelLeft = createLucideIcon("panel-left", __iconNode78);
8802
+ var PanelLeft = createLucideIcon("panel-left", __iconNode79);
8793
8803
 
8794
8804
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/panels-top-left.js
8795
- var __iconNode79 = [
8805
+ var __iconNode80 = [
8796
8806
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
8797
8807
  ["path", { d: "M3 9h18", key: "1pudct" }],
8798
8808
  ["path", { d: "M9 21V9", key: "1oto5p" }]
8799
8809
  ];
8800
- var PanelsTopLeft = createLucideIcon("panels-top-left", __iconNode79);
8810
+ var PanelsTopLeft = createLucideIcon("panels-top-left", __iconNode80);
8801
8811
 
8802
8812
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/paw-print.js
8803
- var __iconNode80 = [
8813
+ var __iconNode81 = [
8804
8814
  ["circle", { cx: "11", cy: "4", r: "2", key: "vol9p0" }],
8805
8815
  ["circle", { cx: "18", cy: "8", r: "2", key: "17gozi" }],
8806
8816
  ["circle", { cx: "20", cy: "16", r: "2", key: "1v9bxh" }],
@@ -8812,10 +8822,10 @@ var __iconNode80 = [
8812
8822
  }
8813
8823
  ]
8814
8824
  ];
8815
- var PawPrint = createLucideIcon("paw-print", __iconNode80);
8825
+ var PawPrint = createLucideIcon("paw-print", __iconNode81);
8816
8826
 
8817
8827
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/pencil.js
8818
- var __iconNode81 = [
8828
+ var __iconNode82 = [
8819
8829
  [
8820
8830
  "path",
8821
8831
  {
@@ -8825,18 +8835,18 @@ var __iconNode81 = [
8825
8835
  ],
8826
8836
  ["path", { d: "m15 5 4 4", key: "1mk7zo" }]
8827
8837
  ];
8828
- var Pencil = createLucideIcon("pencil", __iconNode81);
8838
+ var Pencil = createLucideIcon("pencil", __iconNode82);
8829
8839
 
8830
8840
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/pi.js
8831
- var __iconNode82 = [
8841
+ var __iconNode83 = [
8832
8842
  ["line", { x1: "9", x2: "9", y1: "4", y2: "20", key: "ovs5a5" }],
8833
8843
  ["path", { d: "M4 7c0-1.7 1.3-3 3-3h13", key: "10pag4" }],
8834
8844
  ["path", { d: "M18 20c-1.7 0-3-1.3-3-3V4", key: "1gaosr" }]
8835
8845
  ];
8836
- var Pi = createLucideIcon("pi", __iconNode82);
8846
+ var Pi = createLucideIcon("pi", __iconNode83);
8837
8847
 
8838
8848
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/qr-code.js
8839
- var __iconNode83 = [
8849
+ var __iconNode84 = [
8840
8850
  ["rect", { width: "5", height: "5", x: "3", y: "3", rx: "1", key: "1tu5fj" }],
8841
8851
  ["rect", { width: "5", height: "5", x: "16", y: "3", rx: "1", key: "1v8r4q" }],
8842
8852
  ["rect", { width: "5", height: "5", x: "3", y: "16", rx: "1", key: "1x03jg" }],
@@ -8850,10 +8860,10 @@ var __iconNode83 = [
8850
8860
  ["path", { d: "M21 12v.01", key: "1lwtk9" }],
8851
8861
  ["path", { d: "M12 21v-1", key: "1880an" }]
8852
8862
  ];
8853
- var QrCode = createLucideIcon("qr-code", __iconNode83);
8863
+ var QrCode = createLucideIcon("qr-code", __iconNode84);
8854
8864
 
8855
8865
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/receipt-text.js
8856
- var __iconNode84 = [
8866
+ var __iconNode85 = [
8857
8867
  [
8858
8868
  "path",
8859
8869
  { d: "M4 2v20l2-1 2 1 2-1 2 1 2-1 2 1 2-1 2 1V2l-2 1-2-1-2 1-2-1-2 1-2-1-2 1Z", key: "q3az6g" }
@@ -8862,19 +8872,19 @@ var __iconNode84 = [
8862
8872
  ["path", { d: "M16 12H8", key: "1fr5h0" }],
8863
8873
  ["path", { d: "M13 16H8", key: "wsln4y" }]
8864
8874
  ];
8865
- var ReceiptText = createLucideIcon("receipt-text", __iconNode84);
8875
+ var ReceiptText = createLucideIcon("receipt-text", __iconNode85);
8866
8876
 
8867
8877
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/refresh-ccw.js
8868
- var __iconNode85 = [
8878
+ var __iconNode86 = [
8869
8879
  ["path", { d: "M21 12a9 9 0 0 0-9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "14sxne" }],
8870
8880
  ["path", { d: "M3 3v5h5", key: "1xhq8a" }],
8871
8881
  ["path", { d: "M3 12a9 9 0 0 0 9 9 9.75 9.75 0 0 0 6.74-2.74L21 16", key: "1hlbsb" }],
8872
8882
  ["path", { d: "M16 16h5v5", key: "ccwih5" }]
8873
8883
  ];
8874
- var RefreshCcw = createLucideIcon("refresh-ccw", __iconNode85);
8884
+ var RefreshCcw = createLucideIcon("refresh-ccw", __iconNode86);
8875
8885
 
8876
8886
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/regex.js
8877
- var __iconNode86 = [
8887
+ var __iconNode87 = [
8878
8888
  ["path", { d: "M17 3v10", key: "15fgeh" }],
8879
8889
  ["path", { d: "m12.67 5.5 8.66 5", key: "1gpheq" }],
8880
8890
  ["path", { d: "m12.67 10.5 8.66-5", key: "1dkfa6" }],
@@ -8883,10 +8893,10 @@ var __iconNode86 = [
8883
8893
  { d: "M9 17a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2v-2z", key: "swwfx4" }
8884
8894
  ]
8885
8895
  ];
8886
- var Regex = createLucideIcon("regex", __iconNode86);
8896
+ var Regex = createLucideIcon("regex", __iconNode87);
8887
8897
 
8888
8898
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/replace.js
8889
- var __iconNode87 = [
8899
+ var __iconNode88 = [
8890
8900
  ["path", { d: "M14 4a2 2 0 0 1 2-2", key: "1w2hp7" }],
8891
8901
  ["path", { d: "M16 10a2 2 0 0 1-2-2", key: "shjach" }],
8892
8902
  ["path", { d: "M20 2a2 2 0 0 1 2 2", key: "188mtx" }],
@@ -8895,10 +8905,10 @@ var __iconNode87 = [
8895
8905
  ["path", { d: "M6 10V5a3 3 0 0 1 3-3h1", key: "3y3t5z" }],
8896
8906
  ["rect", { x: "2", y: "14", width: "8", height: "8", rx: "2", key: "4rksxw" }]
8897
8907
  ];
8898
- var Replace = createLucideIcon("replace", __iconNode87);
8908
+ var Replace = createLucideIcon("replace", __iconNode88);
8899
8909
 
8900
8910
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/rocket.js
8901
- var __iconNode88 = [
8911
+ var __iconNode89 = [
8902
8912
  [
8903
8913
  "path",
8904
8914
  {
@@ -8916,35 +8926,35 @@ var __iconNode88 = [
8916
8926
  ["path", { d: "M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0", key: "1f8sc4" }],
8917
8927
  ["path", { d: "M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5", key: "qeys4" }]
8918
8928
  ];
8919
- var Rocket = createLucideIcon("rocket", __iconNode88);
8929
+ var Rocket = createLucideIcon("rocket", __iconNode89);
8920
8930
 
8921
8931
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/rss.js
8922
- var __iconNode89 = [
8932
+ var __iconNode90 = [
8923
8933
  ["path", { d: "M4 11a9 9 0 0 1 9 9", key: "pv89mb" }],
8924
8934
  ["path", { d: "M4 4a16 16 0 0 1 16 16", key: "k0647b" }],
8925
8935
  ["circle", { cx: "5", cy: "19", r: "1", key: "bfqh0e" }]
8926
8936
  ];
8927
- var Rss = createLucideIcon("rss", __iconNode89);
8937
+ var Rss = createLucideIcon("rss", __iconNode90);
8928
8938
 
8929
8939
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/scale.js
8930
- var __iconNode90 = [
8940
+ var __iconNode91 = [
8931
8941
  ["path", { d: "m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z", key: "7g6ntu" }],
8932
8942
  ["path", { d: "m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z", key: "ijws7r" }],
8933
8943
  ["path", { d: "M7 21h10", key: "1b0cd5" }],
8934
8944
  ["path", { d: "M12 3v18", key: "108xh3" }],
8935
8945
  ["path", { d: "M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2", key: "3gwbw2" }]
8936
8946
  ];
8937
- var Scale = createLucideIcon("scale", __iconNode90);
8947
+ var Scale = createLucideIcon("scale", __iconNode91);
8938
8948
 
8939
8949
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/search.js
8940
- var __iconNode91 = [
8950
+ var __iconNode92 = [
8941
8951
  ["path", { d: "m21 21-4.34-4.34", key: "14j7rj" }],
8942
8952
  ["circle", { cx: "11", cy: "11", r: "8", key: "4ej97u" }]
8943
8953
  ];
8944
- var Search = createLucideIcon("search", __iconNode91);
8954
+ var Search = createLucideIcon("search", __iconNode92);
8945
8955
 
8946
8956
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/send-horizontal.js
8947
- var __iconNode92 = [
8957
+ var __iconNode93 = [
8948
8958
  [
8949
8959
  "path",
8950
8960
  {
@@ -8954,27 +8964,27 @@ var __iconNode92 = [
8954
8964
  ],
8955
8965
  ["path", { d: "M6 12h16", key: "s4cdu5" }]
8956
8966
  ];
8957
- var SendHorizontal = createLucideIcon("send-horizontal", __iconNode92);
8967
+ var SendHorizontal = createLucideIcon("send-horizontal", __iconNode93);
8958
8968
 
8959
8969
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/server.js
8960
- var __iconNode93 = [
8970
+ var __iconNode94 = [
8961
8971
  ["rect", { width: "20", height: "8", x: "2", y: "2", rx: "2", ry: "2", key: "ngkwjq" }],
8962
8972
  ["rect", { width: "20", height: "8", x: "2", y: "14", rx: "2", ry: "2", key: "iecqi9" }],
8963
8973
  ["line", { x1: "6", x2: "6.01", y1: "6", y2: "6", key: "16zg32" }],
8964
8974
  ["line", { x1: "6", x2: "6.01", y1: "18", y2: "18", key: "nzw8ys" }]
8965
8975
  ];
8966
- var Server = createLucideIcon("server", __iconNode93);
8976
+ var Server = createLucideIcon("server", __iconNode94);
8967
8977
 
8968
8978
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/share.js
8969
- var __iconNode94 = [
8979
+ var __iconNode95 = [
8970
8980
  ["path", { d: "M12 2v13", key: "1km8f5" }],
8971
8981
  ["path", { d: "m16 6-4-4-4 4", key: "13yo43" }],
8972
8982
  ["path", { d: "M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8", key: "1b2hhj" }]
8973
8983
  ];
8974
- var Share = createLucideIcon("share", __iconNode94);
8984
+ var Share = createLucideIcon("share", __iconNode95);
8975
8985
 
8976
8986
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/shield-user.js
8977
- var __iconNode95 = [
8987
+ var __iconNode96 = [
8978
8988
  [
8979
8989
  "path",
8980
8990
  {
@@ -8985,10 +8995,10 @@ var __iconNode95 = [
8985
8995
  ["path", { d: "M6.376 18.91a6 6 0 0 1 11.249.003", key: "hnjrf2" }],
8986
8996
  ["circle", { cx: "12", cy: "11", r: "4", key: "1gt34v" }]
8987
8997
  ];
8988
- var ShieldUser = createLucideIcon("shield-user", __iconNode95);
8998
+ var ShieldUser = createLucideIcon("shield-user", __iconNode96);
8989
8999
 
8990
9000
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/shield.js
8991
- var __iconNode96 = [
9001
+ var __iconNode97 = [
8992
9002
  [
8993
9003
  "path",
8994
9004
  {
@@ -8997,10 +9007,10 @@ var __iconNode96 = [
8997
9007
  }
8998
9008
  ]
8999
9009
  ];
9000
- var Shield = createLucideIcon("shield", __iconNode96);
9010
+ var Shield = createLucideIcon("shield", __iconNode97);
9001
9011
 
9002
9012
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/sigma.js
9003
- var __iconNode97 = [
9013
+ var __iconNode98 = [
9004
9014
  [
9005
9015
  "path",
9006
9016
  {
@@ -9009,10 +9019,10 @@ var __iconNode97 = [
9009
9019
  }
9010
9020
  ]
9011
9021
  ];
9012
- var Sigma = createLucideIcon("sigma", __iconNode97);
9022
+ var Sigma = createLucideIcon("sigma", __iconNode98);
9013
9023
 
9014
9024
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/sparkles.js
9015
- var __iconNode98 = [
9025
+ var __iconNode99 = [
9016
9026
  [
9017
9027
  "path",
9018
9028
  {
@@ -9025,10 +9035,10 @@ var __iconNode98 = [
9025
9035
  ["path", { d: "M4 17v2", key: "vumght" }],
9026
9036
  ["path", { d: "M5 18H3", key: "zchphs" }]
9027
9037
  ];
9028
- var Sparkles = createLucideIcon("sparkles", __iconNode98);
9038
+ var Sparkles = createLucideIcon("sparkles", __iconNode99);
9029
9039
 
9030
9040
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/spline-pointer.js
9031
- var __iconNode99 = [
9041
+ var __iconNode100 = [
9032
9042
  [
9033
9043
  "path",
9034
9044
  {
@@ -9040,10 +9050,10 @@ var __iconNode99 = [
9040
9050
  ["circle", { cx: "19", cy: "5", r: "2", key: "mhkx31" }],
9041
9051
  ["circle", { cx: "5", cy: "19", r: "2", key: "v8kfzx" }]
9042
9052
  ];
9043
- var SplinePointer = createLucideIcon("spline-pointer", __iconNode99);
9053
+ var SplinePointer = createLucideIcon("spline-pointer", __iconNode100);
9044
9054
 
9045
9055
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/sprout.js
9046
- var __iconNode100 = [
9056
+ var __iconNode101 = [
9047
9057
  ["path", { d: "M7 20h10", key: "e6iznv" }],
9048
9058
  ["path", { d: "M10 20c5.5-2.5.8-6.4 3-10", key: "161w41" }],
9049
9059
  [
@@ -9061,10 +9071,10 @@ var __iconNode100 = [
9061
9071
  }
9062
9072
  ]
9063
9073
  ];
9064
- var Sprout = createLucideIcon("sprout", __iconNode100);
9074
+ var Sprout = createLucideIcon("sprout", __iconNode101);
9065
9075
 
9066
9076
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/square-dashed-bottom-code.js
9067
- var __iconNode101 = [
9077
+ var __iconNode102 = [
9068
9078
  ["path", { d: "M10 9.5 8 12l2 2.5", key: "3mjy60" }],
9069
9079
  ["path", { d: "M14 21h1", key: "v9vybs" }],
9070
9080
  ["path", { d: "m14 9.5 2 2.5-2 2.5", key: "1bir2l" }],
@@ -9074,18 +9084,18 @@ var __iconNode101 = [
9074
9084
  ],
9075
9085
  ["path", { d: "M9 21h1", key: "15o7lz" }]
9076
9086
  ];
9077
- var SquareDashedBottomCode = createLucideIcon("square-dashed-bottom-code", __iconNode101);
9087
+ var SquareDashedBottomCode = createLucideIcon("square-dashed-bottom-code", __iconNode102);
9078
9088
 
9079
9089
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/square-terminal.js
9080
- var __iconNode102 = [
9090
+ var __iconNode103 = [
9081
9091
  ["path", { d: "m7 11 2-2-2-2", key: "1lz0vl" }],
9082
9092
  ["path", { d: "M11 13h4", key: "1p7l4v" }],
9083
9093
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", ry: "2", key: "1m3agn" }]
9084
9094
  ];
9085
- var SquareTerminal = createLucideIcon("square-terminal", __iconNode102);
9095
+ var SquareTerminal = createLucideIcon("square-terminal", __iconNode103);
9086
9096
 
9087
9097
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/star.js
9088
- var __iconNode103 = [
9098
+ var __iconNode104 = [
9089
9099
  [
9090
9100
  "path",
9091
9101
  {
@@ -9094,26 +9104,26 @@ var __iconNode103 = [
9094
9104
  }
9095
9105
  ]
9096
9106
  ];
9097
- var Star = createLucideIcon("star", __iconNode103);
9107
+ var Star = createLucideIcon("star", __iconNode104);
9098
9108
 
9099
9109
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/tablets.js
9100
- var __iconNode104 = [
9110
+ var __iconNode105 = [
9101
9111
  ["circle", { cx: "7", cy: "7", r: "5", key: "x29byf" }],
9102
9112
  ["circle", { cx: "17", cy: "17", r: "5", key: "1op1d2" }],
9103
9113
  ["path", { d: "M12 17h10", key: "ls21zv" }],
9104
9114
  ["path", { d: "m3.46 10.54 7.08-7.08", key: "1rehiu" }]
9105
9115
  ];
9106
- var Tablets = createLucideIcon("tablets", __iconNode104);
9116
+ var Tablets = createLucideIcon("tablets", __iconNode105);
9107
9117
 
9108
9118
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/terminal.js
9109
- var __iconNode105 = [
9119
+ var __iconNode106 = [
9110
9120
  ["path", { d: "M12 19h8", key: "baeox8" }],
9111
9121
  ["path", { d: "m4 17 6-6-6-6", key: "1yngyt" }]
9112
9122
  ];
9113
- var Terminal = createLucideIcon("terminal", __iconNode105);
9123
+ var Terminal = createLucideIcon("terminal", __iconNode106);
9114
9124
 
9115
9125
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/twitter.js
9116
- var __iconNode106 = [
9126
+ var __iconNode107 = [
9117
9127
  [
9118
9128
  "path",
9119
9129
  {
@@ -9122,33 +9132,33 @@ var __iconNode106 = [
9122
9132
  }
9123
9133
  ]
9124
9134
  ];
9125
- var Twitter = createLucideIcon("twitter", __iconNode106);
9135
+ var Twitter = createLucideIcon("twitter", __iconNode107);
9126
9136
 
9127
9137
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/user-round-check.js
9128
- var __iconNode107 = [
9138
+ var __iconNode108 = [
9129
9139
  ["path", { d: "M2 21a8 8 0 0 1 13.292-6", key: "bjp14o" }],
9130
9140
  ["circle", { cx: "10", cy: "8", r: "5", key: "o932ke" }],
9131
9141
  ["path", { d: "m16 19 2 2 4-4", key: "1b14m6" }]
9132
9142
  ];
9133
- var UserRoundCheck = createLucideIcon("user-round-check", __iconNode107);
9143
+ var UserRoundCheck = createLucideIcon("user-round-check", __iconNode108);
9134
9144
 
9135
9145
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/workflow.js
9136
- var __iconNode108 = [
9146
+ var __iconNode109 = [
9137
9147
  ["rect", { width: "8", height: "8", x: "3", y: "3", rx: "2", key: "by2w9f" }],
9138
9148
  ["path", { d: "M7 11v4a2 2 0 0 0 2 2h4", key: "xkn7yn" }],
9139
9149
  ["rect", { width: "8", height: "8", x: "13", y: "13", rx: "2", key: "1cgmvn" }]
9140
9150
  ];
9141
- var Workflow = createLucideIcon("workflow", __iconNode108);
9151
+ var Workflow = createLucideIcon("workflow", __iconNode109);
9142
9152
 
9143
9153
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/x.js
9144
- var __iconNode109 = [
9154
+ var __iconNode110 = [
9145
9155
  ["path", { d: "M18 6 6 18", key: "1bl5f8" }],
9146
9156
  ["path", { d: "m6 6 12 12", key: "d8bk6v" }]
9147
9157
  ];
9148
- var X = createLucideIcon("x", __iconNode109);
9158
+ var X = createLucideIcon("x", __iconNode110);
9149
9159
 
9150
9160
  // ../../node_modules/.pnpm/lucide-react@0.525.0_react@19.1.0/node_modules/lucide-react/dist/esm/icons/zap.js
9151
- var __iconNode110 = [
9161
+ var __iconNode111 = [
9152
9162
  [
9153
9163
  "path",
9154
9164
  {
@@ -9157,7 +9167,7 @@ var __iconNode110 = [
9157
9167
  }
9158
9168
  ]
9159
9169
  ];
9160
- var Zap = createLucideIcon("zap", __iconNode110);
9170
+ var Zap = createLucideIcon("zap", __iconNode111);
9161
9171
 
9162
9172
  // ../base-ui/src/components/global-icon.tsx
9163
9173
  import React32 from "react";
@@ -9215,40 +9225,95 @@ var globalLucideIcons = __spreadValues(__spreadValues({}, styledLimitedIconsPart
9215
9225
 
9216
9226
  // src/fuma/mdx/mermaid.tsx
9217
9227
  import { useTheme } from "next-themes";
9218
- import { useEffect, useId, useState } from "react";
9219
- import { jsx as jsx33, jsxs as jsxs10 } from "react/jsx-runtime";
9228
+ import { useCallback as useCallback7, useEffect as useEffect15, useId as useId2, useRef as useRef11, useState as useState10 } from "react";
9220
9229
 
9221
- // src/fuma/mdx/image-zoom.tsx
9222
- import { Image } from "fumadocs-core/framework";
9223
- import { useState as useState2 } from "react";
9224
- import Zoom from "react-medium-image-zoom";
9225
- import { jsx as jsx34 } from "react/jsx-runtime";
9226
-
9227
- // src/fuma/mdx/trophy-card.tsx
9228
- import { jsx as jsx35, jsxs as jsxs11 } from "react/jsx-runtime";
9230
+ // ../base-ui/src/ui/alert-dialog.tsx
9231
+ import * as React57 from "react";
9229
9232
 
9230
- // src/fuma/mdx/image-grid.tsx
9231
- import { jsx as jsx36 } from "react/jsx-runtime";
9233
+ // ../../node_modules/.pnpm/@radix-ui+react-alert-dialog@1.1.14_@types+react-dom@19.1.3_@types+react@19.1.2__@types_c6ff7006a888f63e36d2502e019661c3/node_modules/@radix-ui/react-alert-dialog/dist/index.mjs
9234
+ import * as React55 from "react";
9232
9235
 
9233
- // ../lib/src/utils.ts
9234
- import { clsx } from "clsx";
9235
- import { twMerge } from "tailwind-merge";
9236
- function cn(...inputs) {
9237
- return twMerge(clsx(inputs));
9236
+ // ../../node_modules/.pnpm/@radix-ui+react-context@1.1.2_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-context/dist/index.mjs
9237
+ import * as React33 from "react";
9238
+ import { jsx as jsx33 } from "react/jsx-runtime";
9239
+ function createContext2(rootComponentName, defaultContext) {
9240
+ const Context = React33.createContext(defaultContext);
9241
+ const Provider = (props) => {
9242
+ const _a = props, { children } = _a, context = __objRest(_a, ["children"]);
9243
+ const value2 = React33.useMemo(() => context, Object.values(context));
9244
+ return /* @__PURE__ */ jsx33(Context.Provider, { value: value2, children });
9245
+ };
9246
+ Provider.displayName = rootComponentName + "Provider";
9247
+ function useContext22(consumerName) {
9248
+ const context = React33.useContext(Context);
9249
+ if (context) return context;
9250
+ if (defaultContext !== void 0) return defaultContext;
9251
+ throw new Error(`\`${consumerName}\` must be used within \`${rootComponentName}\``);
9252
+ }
9253
+ return [Provider, useContext22];
9254
+ }
9255
+ function createContextScope(scopeName, createContextScopeDeps = []) {
9256
+ let defaultContexts = [];
9257
+ function createContext32(rootComponentName, defaultContext) {
9258
+ const BaseContext = React33.createContext(defaultContext);
9259
+ const index2 = defaultContexts.length;
9260
+ defaultContexts = [...defaultContexts, defaultContext];
9261
+ const Provider = (props) => {
9262
+ var _b;
9263
+ const _a = props, { scope, children } = _a, context = __objRest(_a, ["scope", "children"]);
9264
+ const Context = ((_b = scope == null ? void 0 : scope[scopeName]) == null ? void 0 : _b[index2]) || BaseContext;
9265
+ const value2 = React33.useMemo(() => context, Object.values(context));
9266
+ return /* @__PURE__ */ jsx33(Context.Provider, { value: value2, children });
9267
+ };
9268
+ Provider.displayName = rootComponentName + "Provider";
9269
+ function useContext22(consumerName, scope) {
9270
+ var _a;
9271
+ const Context = ((_a = scope == null ? void 0 : scope[scopeName]) == null ? void 0 : _a[index2]) || BaseContext;
9272
+ const context = React33.useContext(Context);
9273
+ if (context) return context;
9274
+ if (defaultContext !== void 0) return defaultContext;
9275
+ throw new Error(`\`${consumerName}\` must be used within \`${rootComponentName}\``);
9276
+ }
9277
+ return [Provider, useContext22];
9278
+ }
9279
+ const createScope = () => {
9280
+ const scopeContexts = defaultContexts.map((defaultContext) => {
9281
+ return React33.createContext(defaultContext);
9282
+ });
9283
+ return function useScope(scope) {
9284
+ const contexts = (scope == null ? void 0 : scope[scopeName]) || scopeContexts;
9285
+ return React33.useMemo(
9286
+ () => ({ [`__scope${scopeName}`]: __spreadProps(__spreadValues({}, scope), { [scopeName]: contexts }) }),
9287
+ [scope, contexts]
9288
+ );
9289
+ };
9290
+ };
9291
+ createScope.scopeName = scopeName;
9292
+ return [createContext32, composeContextScopes(createScope, ...createContextScopeDeps)];
9293
+ }
9294
+ function composeContextScopes(...scopes) {
9295
+ const baseScope = scopes[0];
9296
+ if (scopes.length === 1) return baseScope;
9297
+ const createScope = () => {
9298
+ const scopeHooks = scopes.map((createScope2) => ({
9299
+ useScope: createScope2(),
9300
+ scopeName: createScope2.scopeName
9301
+ }));
9302
+ return function useComposedScopes(overrideScopes) {
9303
+ const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {
9304
+ const scopeProps = useScope(overrideScopes);
9305
+ const currentScope = scopeProps[`__scope${scopeName}`];
9306
+ return __spreadValues(__spreadValues({}, nextScopes2), currentScope);
9307
+ }, {});
9308
+ return React33.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);
9309
+ };
9310
+ };
9311
+ createScope.scopeName = baseScope.scopeName;
9312
+ return createScope;
9238
9313
  }
9239
9314
 
9240
- // src/fuma/mdx/zia-card.tsx
9241
- import Link2 from "next/link";
9242
- import { jsx as jsx37, jsxs as jsxs12 } from "react/jsx-runtime";
9243
-
9244
- // ../base-ui/src/ui/button.tsx
9245
- import * as React35 from "react";
9246
-
9247
- // ../../node_modules/.pnpm/@radix-ui+react-slot@1.2.3_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-slot/dist/index.mjs
9248
- import * as React34 from "react";
9249
-
9250
9315
  // ../../node_modules/.pnpm/@radix-ui+react-compose-refs@1.1.2_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-compose-refs/dist/index.mjs
9251
- import * as React33 from "react";
9316
+ import * as React34 from "react";
9252
9317
  function setRef(ref2, value2) {
9253
9318
  if (typeof ref2 === "function") {
9254
9319
  return ref2(value2);
@@ -9280,54 +9345,177 @@ function composeRefs(...refs) {
9280
9345
  }
9281
9346
  };
9282
9347
  }
9348
+ function useComposedRefs(...refs) {
9349
+ return React34.useCallback(composeRefs(...refs), refs);
9350
+ }
9351
+
9352
+ // ../../node_modules/.pnpm/@radix-ui+react-dialog@1.1.14_@types+react-dom@19.1.3_@types+react@19.1.2__@types+react_848f83211ce5e4d8275fe0d3e11a9387/node_modules/@radix-ui/react-dialog/dist/index.mjs
9353
+ import * as React54 from "react";
9354
+
9355
+ // ../../node_modules/.pnpm/@radix-ui+primitive@1.1.2/node_modules/@radix-ui/primitive/dist/index.mjs
9356
+ function composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {
9357
+ return function handleEvent(event) {
9358
+ originalEventHandler == null ? void 0 : originalEventHandler(event);
9359
+ if (checkForDefaultPrevented === false || !event.defaultPrevented) {
9360
+ return ourEventHandler == null ? void 0 : ourEventHandler(event);
9361
+ }
9362
+ };
9363
+ }
9364
+
9365
+ // ../../node_modules/.pnpm/@radix-ui+react-id@1.1.1_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-id/dist/index.mjs
9366
+ import * as React36 from "react";
9367
+
9368
+ // ../../node_modules/.pnpm/@radix-ui+react-use-layout-effect@1.1.1_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs
9369
+ import * as React35 from "react";
9370
+ var useLayoutEffect2 = (globalThis == null ? void 0 : globalThis.document) ? React35.useLayoutEffect : () => {
9371
+ };
9372
+
9373
+ // ../../node_modules/.pnpm/@radix-ui+react-id@1.1.1_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-id/dist/index.mjs
9374
+ var useReactId = React36[" useId ".trim().toString()] || (() => void 0);
9375
+ var count = 0;
9376
+ function useId(deterministicId) {
9377
+ const [id, setId] = React36.useState(useReactId());
9378
+ useLayoutEffect2(() => {
9379
+ if (!deterministicId) setId((reactId) => reactId != null ? reactId : String(count++));
9380
+ }, [deterministicId]);
9381
+ return deterministicId || (id ? `radix-${id}` : "");
9382
+ }
9383
+
9384
+ // ../../node_modules/.pnpm/@radix-ui+react-use-controllable-state@1.2.2_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs
9385
+ import * as React37 from "react";
9386
+ import * as React210 from "react";
9387
+ var useInsertionEffect = React37[" useInsertionEffect ".trim().toString()] || useLayoutEffect2;
9388
+ function useControllableState({
9389
+ prop,
9390
+ defaultProp,
9391
+ onChange = () => {
9392
+ },
9393
+ caller
9394
+ }) {
9395
+ const [uncontrolledProp, setUncontrolledProp, onChangeRef] = useUncontrolledState({
9396
+ defaultProp,
9397
+ onChange
9398
+ });
9399
+ const isControlled = prop !== void 0;
9400
+ const value2 = isControlled ? prop : uncontrolledProp;
9401
+ if (true) {
9402
+ const isControlledRef = React37.useRef(prop !== void 0);
9403
+ React37.useEffect(() => {
9404
+ const wasControlled = isControlledRef.current;
9405
+ if (wasControlled !== isControlled) {
9406
+ const from = wasControlled ? "controlled" : "uncontrolled";
9407
+ const to = isControlled ? "controlled" : "uncontrolled";
9408
+ console.warn(
9409
+ `${caller} is changing from ${from} to ${to}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`
9410
+ );
9411
+ }
9412
+ isControlledRef.current = isControlled;
9413
+ }, [isControlled, caller]);
9414
+ }
9415
+ const setValue = React37.useCallback(
9416
+ (nextValue) => {
9417
+ var _a;
9418
+ if (isControlled) {
9419
+ const value22 = isFunction(nextValue) ? nextValue(prop) : nextValue;
9420
+ if (value22 !== prop) {
9421
+ (_a = onChangeRef.current) == null ? void 0 : _a.call(onChangeRef, value22);
9422
+ }
9423
+ } else {
9424
+ setUncontrolledProp(nextValue);
9425
+ }
9426
+ },
9427
+ [isControlled, prop, setUncontrolledProp, onChangeRef]
9428
+ );
9429
+ return [value2, setValue];
9430
+ }
9431
+ function useUncontrolledState({
9432
+ defaultProp,
9433
+ onChange
9434
+ }) {
9435
+ const [value2, setValue] = React37.useState(defaultProp);
9436
+ const prevValueRef = React37.useRef(value2);
9437
+ const onChangeRef = React37.useRef(onChange);
9438
+ useInsertionEffect(() => {
9439
+ onChangeRef.current = onChange;
9440
+ }, [onChange]);
9441
+ React37.useEffect(() => {
9442
+ var _a;
9443
+ if (prevValueRef.current !== value2) {
9444
+ (_a = onChangeRef.current) == null ? void 0 : _a.call(onChangeRef, value2);
9445
+ prevValueRef.current = value2;
9446
+ }
9447
+ }, [value2, prevValueRef]);
9448
+ return [value2, setValue, onChangeRef];
9449
+ }
9450
+ function isFunction(value2) {
9451
+ return typeof value2 === "function";
9452
+ }
9453
+ var SYNC_STATE = Symbol("RADIX:SYNC_STATE");
9454
+
9455
+ // ../../node_modules/.pnpm/@radix-ui+react-dismissable-layer@1.1.10_@types+react-dom@19.1.3_@types+react@19.1.2__@_048ea5800fbfacb7489e4b7d728b493c/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs
9456
+ import * as React42 from "react";
9457
+
9458
+ // ../../node_modules/.pnpm/@radix-ui+react-primitive@2.1.3_@types+react-dom@19.1.3_@types+react@19.1.2__@types+rea_43250ccbc78c27b15284efcf829a65d5/node_modules/@radix-ui/react-primitive/dist/index.mjs
9459
+ import * as React39 from "react";
9460
+ import * as ReactDOM from "react-dom";
9283
9461
 
9284
9462
  // ../../node_modules/.pnpm/@radix-ui+react-slot@1.2.3_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-slot/dist/index.mjs
9285
- import { Fragment as Fragment2, jsx as jsx38 } from "react/jsx-runtime";
9463
+ import * as React38 from "react";
9464
+ import { Fragment as Fragment2, jsx as jsx34 } from "react/jsx-runtime";
9286
9465
  // @__NO_SIDE_EFFECTS__
9287
9466
  function createSlot(ownerName) {
9288
9467
  const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);
9289
- const Slot2 = React34.forwardRef((props, forwardedRef) => {
9468
+ const Slot22 = React38.forwardRef((props, forwardedRef) => {
9290
9469
  const _a = props, { children } = _a, slotProps = __objRest(_a, ["children"]);
9291
- const childrenArray = React34.Children.toArray(children);
9470
+ const childrenArray = React38.Children.toArray(children);
9292
9471
  const slottable = childrenArray.find(isSlottable);
9293
9472
  if (slottable) {
9294
9473
  const newElement = slottable.props.children;
9295
9474
  const newChildren = childrenArray.map((child) => {
9296
9475
  if (child === slottable) {
9297
- if (React34.Children.count(newElement) > 1) return React34.Children.only(null);
9298
- return React34.isValidElement(newElement) ? newElement.props.children : null;
9476
+ if (React38.Children.count(newElement) > 1) return React38.Children.only(null);
9477
+ return React38.isValidElement(newElement) ? newElement.props.children : null;
9299
9478
  } else {
9300
9479
  return child;
9301
9480
  }
9302
9481
  });
9303
- return /* @__PURE__ */ jsx38(SlotClone, __spreadProps(__spreadValues({}, slotProps), { ref: forwardedRef, children: React34.isValidElement(newElement) ? React34.cloneElement(newElement, void 0, newChildren) : null }));
9482
+ return /* @__PURE__ */ jsx34(SlotClone, __spreadProps(__spreadValues({}, slotProps), { ref: forwardedRef, children: React38.isValidElement(newElement) ? React38.cloneElement(newElement, void 0, newChildren) : null }));
9304
9483
  }
9305
- return /* @__PURE__ */ jsx38(SlotClone, __spreadProps(__spreadValues({}, slotProps), { ref: forwardedRef, children }));
9484
+ return /* @__PURE__ */ jsx34(SlotClone, __spreadProps(__spreadValues({}, slotProps), { ref: forwardedRef, children }));
9306
9485
  });
9307
- Slot2.displayName = `${ownerName}.Slot`;
9308
- return Slot2;
9486
+ Slot22.displayName = `${ownerName}.Slot`;
9487
+ return Slot22;
9309
9488
  }
9310
9489
  var Slot = /* @__PURE__ */ createSlot("Slot");
9311
9490
  // @__NO_SIDE_EFFECTS__
9312
9491
  function createSlotClone(ownerName) {
9313
- const SlotClone = React34.forwardRef((props, forwardedRef) => {
9492
+ const SlotClone = React38.forwardRef((props, forwardedRef) => {
9314
9493
  const _a = props, { children } = _a, slotProps = __objRest(_a, ["children"]);
9315
- if (React34.isValidElement(children)) {
9494
+ if (React38.isValidElement(children)) {
9316
9495
  const childrenRef = getElementRef(children);
9317
9496
  const props2 = mergeProps(slotProps, children.props);
9318
- if (children.type !== React34.Fragment) {
9497
+ if (children.type !== React38.Fragment) {
9319
9498
  props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;
9320
9499
  }
9321
- return React34.cloneElement(children, props2);
9500
+ return React38.cloneElement(children, props2);
9322
9501
  }
9323
- return React34.Children.count(children) > 1 ? React34.Children.only(null) : null;
9502
+ return React38.Children.count(children) > 1 ? React38.Children.only(null) : null;
9324
9503
  });
9325
9504
  SlotClone.displayName = `${ownerName}.SlotClone`;
9326
9505
  return SlotClone;
9327
9506
  }
9328
9507
  var SLOTTABLE_IDENTIFIER = Symbol("radix.slottable");
9508
+ // @__NO_SIDE_EFFECTS__
9509
+ function createSlottable(ownerName) {
9510
+ const Slottable2 = ({ children }) => {
9511
+ return /* @__PURE__ */ jsx34(Fragment2, { children });
9512
+ };
9513
+ Slottable2.displayName = `${ownerName}.Slottable`;
9514
+ Slottable2.__radixId = SLOTTABLE_IDENTIFIER;
9515
+ return Slottable2;
9516
+ }
9329
9517
  function isSlottable(child) {
9330
- return React34.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
9518
+ return React38.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
9331
9519
  }
9332
9520
  function mergeProps(slotProps, childProps) {
9333
9521
  const overrideProps = __spreadValues({}, childProps);
@@ -9368,106 +9556,2189 @@ function getElementRef(element) {
9368
9556
  return element.props.ref || element.ref;
9369
9557
  }
9370
9558
 
9371
- // ../base-ui/src/ui/button.tsx
9372
- import { cva } from "class-variance-authority";
9373
- import { jsx as jsx39, jsxs as jsxs13 } from "react/jsx-runtime";
9374
- var buttonVariants = cva(
9375
- "inline-flex items-center gap-2 whitespace-nowrap rounded-md text-sm ring-offset-background transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
9376
- {
9377
- variants: {
9378
- variant: {
9379
- default: "bg-primary text-primary-foreground hover:bg-primary/90",
9380
- destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
9381
- outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground",
9382
- secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
9383
- ghost: "hover:bg-accent hover:text-accent-foreground",
9384
- link: "text-primary underline-offset-4 hover:underline"
9385
- },
9386
- size: {
9387
- default: "h-10 px-4 py-2",
9388
- sm: "h-9 rounded-md px-3",
9389
- lg: "h-11 rounded-md px-8",
9390
- icon: "h-10 w-10"
9559
+ // ../../node_modules/.pnpm/@radix-ui+react-primitive@2.1.3_@types+react-dom@19.1.3_@types+react@19.1.2__@types+rea_43250ccbc78c27b15284efcf829a65d5/node_modules/@radix-ui/react-primitive/dist/index.mjs
9560
+ import { jsx as jsx35 } from "react/jsx-runtime";
9561
+ var NODES = [
9562
+ "a",
9563
+ "button",
9564
+ "div",
9565
+ "form",
9566
+ "h2",
9567
+ "h3",
9568
+ "img",
9569
+ "input",
9570
+ "label",
9571
+ "li",
9572
+ "nav",
9573
+ "ol",
9574
+ "p",
9575
+ "select",
9576
+ "span",
9577
+ "svg",
9578
+ "ul"
9579
+ ];
9580
+ var Primitive = NODES.reduce((primitive, node2) => {
9581
+ const Slot3 = createSlot(`Primitive.${node2}`);
9582
+ const Node4 = React39.forwardRef((props, forwardedRef) => {
9583
+ const _a = props, { asChild } = _a, primitiveProps = __objRest(_a, ["asChild"]);
9584
+ const Comp = asChild ? Slot3 : node2;
9585
+ if (typeof window !== "undefined") {
9586
+ window[Symbol.for("radix-ui")] = true;
9587
+ }
9588
+ return /* @__PURE__ */ jsx35(Comp, __spreadProps(__spreadValues({}, primitiveProps), { ref: forwardedRef }));
9589
+ });
9590
+ Node4.displayName = `Primitive.${node2}`;
9591
+ return __spreadProps(__spreadValues({}, primitive), { [node2]: Node4 });
9592
+ }, {});
9593
+ function dispatchDiscreteCustomEvent(target, event) {
9594
+ if (target) ReactDOM.flushSync(() => target.dispatchEvent(event));
9595
+ }
9596
+
9597
+ // ../../node_modules/.pnpm/@radix-ui+react-use-callback-ref@1.1.1_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs
9598
+ import * as React40 from "react";
9599
+ function useCallbackRef(callback) {
9600
+ const callbackRef = React40.useRef(callback);
9601
+ React40.useEffect(() => {
9602
+ callbackRef.current = callback;
9603
+ });
9604
+ return React40.useMemo(() => (...args) => {
9605
+ var _a;
9606
+ return (_a = callbackRef.current) == null ? void 0 : _a.call(callbackRef, ...args);
9607
+ }, []);
9608
+ }
9609
+
9610
+ // ../../node_modules/.pnpm/@radix-ui+react-use-escape-keydown@1.1.1_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs
9611
+ import * as React41 from "react";
9612
+ function useEscapeKeydown(onEscapeKeyDownProp, ownerDocument = globalThis == null ? void 0 : globalThis.document) {
9613
+ const onEscapeKeyDown = useCallbackRef(onEscapeKeyDownProp);
9614
+ React41.useEffect(() => {
9615
+ const handleKeyDown = (event) => {
9616
+ if (event.key === "Escape") {
9617
+ onEscapeKeyDown(event);
9391
9618
  }
9392
- },
9393
- defaultVariants: {
9394
- variant: "default",
9395
- size: "default"
9396
- }
9397
- }
9398
- );
9399
- var Button = React35.forwardRef(
9400
- (_a, ref2) => {
9401
- var _b = _a, { className, variant, size, asChild = false, loading = false, children } = _b, props = __objRest(_b, ["className", "variant", "size", "asChild", "loading", "children"]);
9402
- const Comp = asChild ? Slot : "button";
9403
- if (asChild) {
9404
- return /* @__PURE__ */ jsx39(
9405
- Comp,
9406
- __spreadProps(__spreadValues({
9407
- className: cn(buttonVariants({ variant, size, className })),
9408
- ref: ref2,
9409
- disabled: loading || props.disabled
9410
- }, props), {
9411
- children
9412
- })
9413
- );
9414
- }
9415
- return /* @__PURE__ */ jsxs13(
9416
- Comp,
9417
- __spreadProps(__spreadValues({
9418
- className: cn(buttonVariants({ variant, size, className })),
9419
- ref: ref2,
9420
- disabled: loading || props.disabled
9421
- }, props), {
9422
- children: [
9423
- children,
9424
- loading && /* @__PURE__ */ jsx39(globalLucideIcons.Loader2, { className: "ml-2 h-4 w-4 animate-spin" })
9425
- ]
9619
+ };
9620
+ ownerDocument.addEventListener("keydown", handleKeyDown, { capture: true });
9621
+ return () => ownerDocument.removeEventListener("keydown", handleKeyDown, { capture: true });
9622
+ }, [onEscapeKeyDown, ownerDocument]);
9623
+ }
9624
+
9625
+ // ../../node_modules/.pnpm/@radix-ui+react-dismissable-layer@1.1.10_@types+react-dom@19.1.3_@types+react@19.1.2__@_048ea5800fbfacb7489e4b7d728b493c/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs
9626
+ import { jsx as jsx36 } from "react/jsx-runtime";
9627
+ var DISMISSABLE_LAYER_NAME = "DismissableLayer";
9628
+ var CONTEXT_UPDATE = "dismissableLayer.update";
9629
+ var POINTER_DOWN_OUTSIDE = "dismissableLayer.pointerDownOutside";
9630
+ var FOCUS_OUTSIDE = "dismissableLayer.focusOutside";
9631
+ var originalBodyPointerEvents;
9632
+ var DismissableLayerContext = React42.createContext({
9633
+ layers: /* @__PURE__ */ new Set(),
9634
+ layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),
9635
+ branches: /* @__PURE__ */ new Set()
9636
+ });
9637
+ var DismissableLayer = React42.forwardRef(
9638
+ (props, forwardedRef) => {
9639
+ var _b;
9640
+ const _a = props, {
9641
+ disableOutsidePointerEvents = false,
9642
+ onEscapeKeyDown,
9643
+ onPointerDownOutside,
9644
+ onFocusOutside,
9645
+ onInteractOutside,
9646
+ onDismiss
9647
+ } = _a, layerProps = __objRest(_a, [
9648
+ "disableOutsidePointerEvents",
9649
+ "onEscapeKeyDown",
9650
+ "onPointerDownOutside",
9651
+ "onFocusOutside",
9652
+ "onInteractOutside",
9653
+ "onDismiss"
9654
+ ]);
9655
+ const context = React42.useContext(DismissableLayerContext);
9656
+ const [node2, setNode] = React42.useState(null);
9657
+ const ownerDocument = (_b = node2 == null ? void 0 : node2.ownerDocument) != null ? _b : globalThis == null ? void 0 : globalThis.document;
9658
+ const [, force] = React42.useState({});
9659
+ const composedRefs = useComposedRefs(forwardedRef, (node22) => setNode(node22));
9660
+ const layers = Array.from(context.layers);
9661
+ const [highestLayerWithOutsidePointerEventsDisabled] = [...context.layersWithOutsidePointerEventsDisabled].slice(-1);
9662
+ const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled);
9663
+ const index2 = node2 ? layers.indexOf(node2) : -1;
9664
+ const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;
9665
+ const isPointerEventsEnabled = index2 >= highestLayerWithOutsidePointerEventsDisabledIndex;
9666
+ const pointerDownOutside = usePointerDownOutside((event) => {
9667
+ const target = event.target;
9668
+ const isPointerDownOnBranch = [...context.branches].some((branch) => branch.contains(target));
9669
+ if (!isPointerEventsEnabled || isPointerDownOnBranch) return;
9670
+ onPointerDownOutside == null ? void 0 : onPointerDownOutside(event);
9671
+ onInteractOutside == null ? void 0 : onInteractOutside(event);
9672
+ if (!event.defaultPrevented) onDismiss == null ? void 0 : onDismiss();
9673
+ }, ownerDocument);
9674
+ const focusOutside = useFocusOutside((event) => {
9675
+ const target = event.target;
9676
+ const isFocusInBranch = [...context.branches].some((branch) => branch.contains(target));
9677
+ if (isFocusInBranch) return;
9678
+ onFocusOutside == null ? void 0 : onFocusOutside(event);
9679
+ onInteractOutside == null ? void 0 : onInteractOutside(event);
9680
+ if (!event.defaultPrevented) onDismiss == null ? void 0 : onDismiss();
9681
+ }, ownerDocument);
9682
+ useEscapeKeydown((event) => {
9683
+ const isHighestLayer = index2 === context.layers.size - 1;
9684
+ if (!isHighestLayer) return;
9685
+ onEscapeKeyDown == null ? void 0 : onEscapeKeyDown(event);
9686
+ if (!event.defaultPrevented && onDismiss) {
9687
+ event.preventDefault();
9688
+ onDismiss();
9689
+ }
9690
+ }, ownerDocument);
9691
+ React42.useEffect(() => {
9692
+ if (!node2) return;
9693
+ if (disableOutsidePointerEvents) {
9694
+ if (context.layersWithOutsidePointerEventsDisabled.size === 0) {
9695
+ originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;
9696
+ ownerDocument.body.style.pointerEvents = "none";
9697
+ }
9698
+ context.layersWithOutsidePointerEventsDisabled.add(node2);
9699
+ }
9700
+ context.layers.add(node2);
9701
+ dispatchUpdate();
9702
+ return () => {
9703
+ if (disableOutsidePointerEvents && context.layersWithOutsidePointerEventsDisabled.size === 1) {
9704
+ ownerDocument.body.style.pointerEvents = originalBodyPointerEvents;
9705
+ }
9706
+ };
9707
+ }, [node2, ownerDocument, disableOutsidePointerEvents, context]);
9708
+ React42.useEffect(() => {
9709
+ return () => {
9710
+ if (!node2) return;
9711
+ context.layers.delete(node2);
9712
+ context.layersWithOutsidePointerEventsDisabled.delete(node2);
9713
+ dispatchUpdate();
9714
+ };
9715
+ }, [node2, context]);
9716
+ React42.useEffect(() => {
9717
+ const handleUpdate = () => force({});
9718
+ document.addEventListener(CONTEXT_UPDATE, handleUpdate);
9719
+ return () => document.removeEventListener(CONTEXT_UPDATE, handleUpdate);
9720
+ }, []);
9721
+ return /* @__PURE__ */ jsx36(
9722
+ Primitive.div,
9723
+ __spreadProps(__spreadValues({}, layerProps), {
9724
+ ref: composedRefs,
9725
+ style: __spreadValues({
9726
+ pointerEvents: isBodyPointerEventsDisabled ? isPointerEventsEnabled ? "auto" : "none" : void 0
9727
+ }, props.style),
9728
+ onFocusCapture: composeEventHandlers(props.onFocusCapture, focusOutside.onFocusCapture),
9729
+ onBlurCapture: composeEventHandlers(props.onBlurCapture, focusOutside.onBlurCapture),
9730
+ onPointerDownCapture: composeEventHandlers(
9731
+ props.onPointerDownCapture,
9732
+ pointerDownOutside.onPointerDownCapture
9733
+ )
9426
9734
  })
9427
9735
  );
9428
9736
  }
9429
9737
  );
9430
- Button.displayName = "Button";
9431
-
9432
- // src/fuma/mdx/gradient-button.tsx
9433
- import Link3 from "next/link";
9434
- import React36, { useState as useState3 } from "react";
9435
- import { Fragment as Fragment3, jsx as jsx40, jsxs as jsxs14 } from "react/jsx-runtime";
9436
-
9437
- // src/fuma/mdx/toc-base.tsx
9438
- import { useState as useState4 } from "react";
9439
- import { useParams } from "next/navigation";
9440
- import { useCopyButton } from "fumadocs-ui/utils/use-copy-button";
9441
- import Link4 from "fumadocs-core/link";
9442
- import { Fragment as Fragment4, jsx as jsx41, jsxs as jsxs15 } from "react/jsx-runtime";
9443
- function EditOnGitHub({ url }) {
9444
- return /* @__PURE__ */ jsxs15(
9445
- Link4,
9446
- {
9447
- className: "flex items-center gap-x-2 text-stone-600 hover:text-stone-500 dark:text-stone-400 dark:hover:text-stone-300 text-sm",
9448
- href: url,
9449
- children: [
9450
- /* @__PURE__ */ jsx41(globalLucideIcons.GitHub, {}),
9451
- "Edit this page on GitHub"
9452
- ]
9738
+ DismissableLayer.displayName = DISMISSABLE_LAYER_NAME;
9739
+ var BRANCH_NAME = "DismissableLayerBranch";
9740
+ var DismissableLayerBranch = React42.forwardRef((props, forwardedRef) => {
9741
+ const context = React42.useContext(DismissableLayerContext);
9742
+ const ref2 = React42.useRef(null);
9743
+ const composedRefs = useComposedRefs(forwardedRef, ref2);
9744
+ React42.useEffect(() => {
9745
+ const node2 = ref2.current;
9746
+ if (node2) {
9747
+ context.branches.add(node2);
9748
+ return () => {
9749
+ context.branches.delete(node2);
9750
+ };
9453
9751
  }
9454
- );
9752
+ }, [context.branches]);
9753
+ return /* @__PURE__ */ jsx36(Primitive.div, __spreadProps(__spreadValues({}, props), { ref: composedRefs }));
9754
+ });
9755
+ DismissableLayerBranch.displayName = BRANCH_NAME;
9756
+ function usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis == null ? void 0 : globalThis.document) {
9757
+ const handlePointerDownOutside = useCallbackRef(onPointerDownOutside);
9758
+ const isPointerInsideReactTreeRef = React42.useRef(false);
9759
+ const handleClickRef = React42.useRef(() => {
9760
+ });
9761
+ React42.useEffect(() => {
9762
+ const handlePointerDown = (event) => {
9763
+ if (event.target && !isPointerInsideReactTreeRef.current) {
9764
+ let handleAndDispatchPointerDownOutsideEvent2 = function() {
9765
+ handleAndDispatchCustomEvent(
9766
+ POINTER_DOWN_OUTSIDE,
9767
+ handlePointerDownOutside,
9768
+ eventDetail,
9769
+ { discrete: true }
9770
+ );
9771
+ };
9772
+ var handleAndDispatchPointerDownOutsideEvent = handleAndDispatchPointerDownOutsideEvent2;
9773
+ const eventDetail = { originalEvent: event };
9774
+ if (event.pointerType === "touch") {
9775
+ ownerDocument.removeEventListener("click", handleClickRef.current);
9776
+ handleClickRef.current = handleAndDispatchPointerDownOutsideEvent2;
9777
+ ownerDocument.addEventListener("click", handleClickRef.current, { once: true });
9778
+ } else {
9779
+ handleAndDispatchPointerDownOutsideEvent2();
9780
+ }
9781
+ } else {
9782
+ ownerDocument.removeEventListener("click", handleClickRef.current);
9783
+ }
9784
+ isPointerInsideReactTreeRef.current = false;
9785
+ };
9786
+ const timerId = window.setTimeout(() => {
9787
+ ownerDocument.addEventListener("pointerdown", handlePointerDown);
9788
+ }, 0);
9789
+ return () => {
9790
+ window.clearTimeout(timerId);
9791
+ ownerDocument.removeEventListener("pointerdown", handlePointerDown);
9792
+ ownerDocument.removeEventListener("click", handleClickRef.current);
9793
+ };
9794
+ }, [ownerDocument, handlePointerDownOutside]);
9795
+ return {
9796
+ // ensures we check React component tree (not just DOM tree)
9797
+ onPointerDownCapture: () => isPointerInsideReactTreeRef.current = true
9798
+ };
9455
9799
  }
9456
- function LastUpdatedDate({ date }) {
9457
- return /* @__PURE__ */ jsxs15("div", { className: "flex items-center gap-x-2 text-stone-600 dark:text-stone-400 text-sm", children: [
9458
- /* @__PURE__ */ jsx41(globalLucideIcons.LastUpdated, {}),
9459
- "Lastest on ",
9460
- date ? date : "Ages ago"
9461
- ] });
9800
+ function useFocusOutside(onFocusOutside, ownerDocument = globalThis == null ? void 0 : globalThis.document) {
9801
+ const handleFocusOutside = useCallbackRef(onFocusOutside);
9802
+ const isFocusInsideReactTreeRef = React42.useRef(false);
9803
+ React42.useEffect(() => {
9804
+ const handleFocus = (event) => {
9805
+ if (event.target && !isFocusInsideReactTreeRef.current) {
9806
+ const eventDetail = { originalEvent: event };
9807
+ handleAndDispatchCustomEvent(FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {
9808
+ discrete: false
9809
+ });
9810
+ }
9811
+ };
9812
+ ownerDocument.addEventListener("focusin", handleFocus);
9813
+ return () => ownerDocument.removeEventListener("focusin", handleFocus);
9814
+ }, [ownerDocument, handleFocusOutside]);
9815
+ return {
9816
+ onFocusCapture: () => isFocusInsideReactTreeRef.current = true,
9817
+ onBlurCapture: () => isFocusInsideReactTreeRef.current = false
9818
+ };
9462
9819
  }
9463
-
9464
- // src/fuma/mdx/fuma-banner-suit.tsx
9465
- import { useTranslations } from "next-intl";
9466
-
9467
- // src/fuma/mdx/banner.tsx
9468
- import { cva as cva2 } from "class-variance-authority";
9469
- import { useEffect as useEffect2, useState as useState5 } from "react";
9470
- import { Fragment as Fragment5, jsx as jsx42, jsxs as jsxs16 } from "react/jsx-runtime";
9820
+ function dispatchUpdate() {
9821
+ const event = new CustomEvent(CONTEXT_UPDATE);
9822
+ document.dispatchEvent(event);
9823
+ }
9824
+ function handleAndDispatchCustomEvent(name2, handler2, detail, { discrete }) {
9825
+ const target = detail.originalEvent.target;
9826
+ const event = new CustomEvent(name2, { bubbles: false, cancelable: true, detail });
9827
+ if (handler2) target.addEventListener(name2, handler2, { once: true });
9828
+ if (discrete) {
9829
+ dispatchDiscreteCustomEvent(target, event);
9830
+ } else {
9831
+ target.dispatchEvent(event);
9832
+ }
9833
+ }
9834
+
9835
+ // ../../node_modules/.pnpm/@radix-ui+react-focus-scope@1.1.7_@types+react-dom@19.1.3_@types+react@19.1.2__@types+r_1ff7b04b7c975087a2da2b1568ac976e/node_modules/@radix-ui/react-focus-scope/dist/index.mjs
9836
+ import * as React43 from "react";
9837
+ import { jsx as jsx37 } from "react/jsx-runtime";
9838
+ var AUTOFOCUS_ON_MOUNT = "focusScope.autoFocusOnMount";
9839
+ var AUTOFOCUS_ON_UNMOUNT = "focusScope.autoFocusOnUnmount";
9840
+ var EVENT_OPTIONS = { bubbles: false, cancelable: true };
9841
+ var FOCUS_SCOPE_NAME = "FocusScope";
9842
+ var FocusScope = React43.forwardRef((props, forwardedRef) => {
9843
+ const _a = props, {
9844
+ loop = false,
9845
+ trapped = false,
9846
+ onMountAutoFocus: onMountAutoFocusProp,
9847
+ onUnmountAutoFocus: onUnmountAutoFocusProp
9848
+ } = _a, scopeProps = __objRest(_a, [
9849
+ "loop",
9850
+ "trapped",
9851
+ "onMountAutoFocus",
9852
+ "onUnmountAutoFocus"
9853
+ ]);
9854
+ const [container, setContainer] = React43.useState(null);
9855
+ const onMountAutoFocus = useCallbackRef(onMountAutoFocusProp);
9856
+ const onUnmountAutoFocus = useCallbackRef(onUnmountAutoFocusProp);
9857
+ const lastFocusedElementRef = React43.useRef(null);
9858
+ const composedRefs = useComposedRefs(forwardedRef, (node2) => setContainer(node2));
9859
+ const focusScope = React43.useRef({
9860
+ paused: false,
9861
+ pause() {
9862
+ this.paused = true;
9863
+ },
9864
+ resume() {
9865
+ this.paused = false;
9866
+ }
9867
+ }).current;
9868
+ React43.useEffect(() => {
9869
+ if (trapped) {
9870
+ let handleFocusIn2 = function(event) {
9871
+ if (focusScope.paused || !container) return;
9872
+ const target = event.target;
9873
+ if (container.contains(target)) {
9874
+ lastFocusedElementRef.current = target;
9875
+ } else {
9876
+ focus(lastFocusedElementRef.current, { select: true });
9877
+ }
9878
+ }, handleFocusOut2 = function(event) {
9879
+ if (focusScope.paused || !container) return;
9880
+ const relatedTarget = event.relatedTarget;
9881
+ if (relatedTarget === null) return;
9882
+ if (!container.contains(relatedTarget)) {
9883
+ focus(lastFocusedElementRef.current, { select: true });
9884
+ }
9885
+ }, handleMutations2 = function(mutations) {
9886
+ const focusedElement = document.activeElement;
9887
+ if (focusedElement !== document.body) return;
9888
+ for (const mutation of mutations) {
9889
+ if (mutation.removedNodes.length > 0) focus(container);
9890
+ }
9891
+ };
9892
+ var handleFocusIn = handleFocusIn2, handleFocusOut = handleFocusOut2, handleMutations = handleMutations2;
9893
+ document.addEventListener("focusin", handleFocusIn2);
9894
+ document.addEventListener("focusout", handleFocusOut2);
9895
+ const mutationObserver = new MutationObserver(handleMutations2);
9896
+ if (container) mutationObserver.observe(container, { childList: true, subtree: true });
9897
+ return () => {
9898
+ document.removeEventListener("focusin", handleFocusIn2);
9899
+ document.removeEventListener("focusout", handleFocusOut2);
9900
+ mutationObserver.disconnect();
9901
+ };
9902
+ }
9903
+ }, [trapped, container, focusScope.paused]);
9904
+ React43.useEffect(() => {
9905
+ if (container) {
9906
+ focusScopesStack.add(focusScope);
9907
+ const previouslyFocusedElement = document.activeElement;
9908
+ const hasFocusedCandidate = container.contains(previouslyFocusedElement);
9909
+ if (!hasFocusedCandidate) {
9910
+ const mountEvent = new CustomEvent(AUTOFOCUS_ON_MOUNT, EVENT_OPTIONS);
9911
+ container.addEventListener(AUTOFOCUS_ON_MOUNT, onMountAutoFocus);
9912
+ container.dispatchEvent(mountEvent);
9913
+ if (!mountEvent.defaultPrevented) {
9914
+ focusFirst(removeLinks(getTabbableCandidates(container)), { select: true });
9915
+ if (document.activeElement === previouslyFocusedElement) {
9916
+ focus(container);
9917
+ }
9918
+ }
9919
+ }
9920
+ return () => {
9921
+ container.removeEventListener(AUTOFOCUS_ON_MOUNT, onMountAutoFocus);
9922
+ setTimeout(() => {
9923
+ const unmountEvent = new CustomEvent(AUTOFOCUS_ON_UNMOUNT, EVENT_OPTIONS);
9924
+ container.addEventListener(AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);
9925
+ container.dispatchEvent(unmountEvent);
9926
+ if (!unmountEvent.defaultPrevented) {
9927
+ focus(previouslyFocusedElement != null ? previouslyFocusedElement : document.body, { select: true });
9928
+ }
9929
+ container.removeEventListener(AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);
9930
+ focusScopesStack.remove(focusScope);
9931
+ }, 0);
9932
+ };
9933
+ }
9934
+ }, [container, onMountAutoFocus, onUnmountAutoFocus, focusScope]);
9935
+ const handleKeyDown = React43.useCallback(
9936
+ (event) => {
9937
+ if (!loop && !trapped) return;
9938
+ if (focusScope.paused) return;
9939
+ const isTabKey = event.key === "Tab" && !event.altKey && !event.ctrlKey && !event.metaKey;
9940
+ const focusedElement = document.activeElement;
9941
+ if (isTabKey && focusedElement) {
9942
+ const container2 = event.currentTarget;
9943
+ const [first, last] = getTabbableEdges(container2);
9944
+ const hasTabbableElementsInside = first && last;
9945
+ if (!hasTabbableElementsInside) {
9946
+ if (focusedElement === container2) event.preventDefault();
9947
+ } else {
9948
+ if (!event.shiftKey && focusedElement === last) {
9949
+ event.preventDefault();
9950
+ if (loop) focus(first, { select: true });
9951
+ } else if (event.shiftKey && focusedElement === first) {
9952
+ event.preventDefault();
9953
+ if (loop) focus(last, { select: true });
9954
+ }
9955
+ }
9956
+ }
9957
+ },
9958
+ [loop, trapped, focusScope.paused]
9959
+ );
9960
+ return /* @__PURE__ */ jsx37(Primitive.div, __spreadProps(__spreadValues({ tabIndex: -1 }, scopeProps), { ref: composedRefs, onKeyDown: handleKeyDown }));
9961
+ });
9962
+ FocusScope.displayName = FOCUS_SCOPE_NAME;
9963
+ function focusFirst(candidates, { select = false } = {}) {
9964
+ const previouslyFocusedElement = document.activeElement;
9965
+ for (const candidate of candidates) {
9966
+ focus(candidate, { select });
9967
+ if (document.activeElement !== previouslyFocusedElement) return;
9968
+ }
9969
+ }
9970
+ function getTabbableEdges(container) {
9971
+ const candidates = getTabbableCandidates(container);
9972
+ const first = findVisible(candidates, container);
9973
+ const last = findVisible(candidates.reverse(), container);
9974
+ return [first, last];
9975
+ }
9976
+ function getTabbableCandidates(container) {
9977
+ const nodes = [];
9978
+ const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {
9979
+ acceptNode: (node2) => {
9980
+ const isHiddenInput = node2.tagName === "INPUT" && node2.type === "hidden";
9981
+ if (node2.disabled || node2.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP;
9982
+ return node2.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
9983
+ }
9984
+ });
9985
+ while (walker.nextNode()) nodes.push(walker.currentNode);
9986
+ return nodes;
9987
+ }
9988
+ function findVisible(elements, container) {
9989
+ for (const element of elements) {
9990
+ if (!isHidden(element, { upTo: container })) return element;
9991
+ }
9992
+ }
9993
+ function isHidden(node2, { upTo }) {
9994
+ if (getComputedStyle(node2).visibility === "hidden") return true;
9995
+ while (node2) {
9996
+ if (upTo !== void 0 && node2 === upTo) return false;
9997
+ if (getComputedStyle(node2).display === "none") return true;
9998
+ node2 = node2.parentElement;
9999
+ }
10000
+ return false;
10001
+ }
10002
+ function isSelectableInput(element) {
10003
+ return element instanceof HTMLInputElement && "select" in element;
10004
+ }
10005
+ function focus(element, { select = false } = {}) {
10006
+ if (element && element.focus) {
10007
+ const previouslyFocusedElement = document.activeElement;
10008
+ element.focus({ preventScroll: true });
10009
+ if (element !== previouslyFocusedElement && isSelectableInput(element) && select)
10010
+ element.select();
10011
+ }
10012
+ }
10013
+ var focusScopesStack = createFocusScopesStack();
10014
+ function createFocusScopesStack() {
10015
+ let stack = [];
10016
+ return {
10017
+ add(focusScope) {
10018
+ const activeFocusScope = stack[0];
10019
+ if (focusScope !== activeFocusScope) {
10020
+ activeFocusScope == null ? void 0 : activeFocusScope.pause();
10021
+ }
10022
+ stack = arrayRemove(stack, focusScope);
10023
+ stack.unshift(focusScope);
10024
+ },
10025
+ remove(focusScope) {
10026
+ var _a;
10027
+ stack = arrayRemove(stack, focusScope);
10028
+ (_a = stack[0]) == null ? void 0 : _a.resume();
10029
+ }
10030
+ };
10031
+ }
10032
+ function arrayRemove(array, item) {
10033
+ const updatedArray = [...array];
10034
+ const index2 = updatedArray.indexOf(item);
10035
+ if (index2 !== -1) {
10036
+ updatedArray.splice(index2, 1);
10037
+ }
10038
+ return updatedArray;
10039
+ }
10040
+ function removeLinks(items) {
10041
+ return items.filter((item) => item.tagName !== "A");
10042
+ }
10043
+
10044
+ // ../../node_modules/.pnpm/@radix-ui+react-portal@1.1.9_@types+react-dom@19.1.3_@types+react@19.1.2__@types+react@_a0745de0839b0b019298ec068509a840/node_modules/@radix-ui/react-portal/dist/index.mjs
10045
+ import * as React44 from "react";
10046
+ import ReactDOM2 from "react-dom";
10047
+ import { jsx as jsx38 } from "react/jsx-runtime";
10048
+ var PORTAL_NAME = "Portal";
10049
+ var Portal = React44.forwardRef((props, forwardedRef) => {
10050
+ var _b;
10051
+ const _a = props, { container: containerProp } = _a, portalProps = __objRest(_a, ["container"]);
10052
+ const [mounted, setMounted] = React44.useState(false);
10053
+ useLayoutEffect2(() => setMounted(true), []);
10054
+ const container = containerProp || mounted && ((_b = globalThis == null ? void 0 : globalThis.document) == null ? void 0 : _b.body);
10055
+ return container ? ReactDOM2.createPortal(/* @__PURE__ */ jsx38(Primitive.div, __spreadProps(__spreadValues({}, portalProps), { ref: forwardedRef })), container) : null;
10056
+ });
10057
+ Portal.displayName = PORTAL_NAME;
10058
+
10059
+ // ../../node_modules/.pnpm/@radix-ui+react-presence@1.1.4_@types+react-dom@19.1.3_@types+react@19.1.2__@types+reac_dbbe976722e7c3e02883ea31c3bbbf14/node_modules/@radix-ui/react-presence/dist/index.mjs
10060
+ import * as React211 from "react";
10061
+ import * as React45 from "react";
10062
+ function useStateMachine(initialState, machine) {
10063
+ return React45.useReducer((state, event) => {
10064
+ const nextState = machine[state][event];
10065
+ return nextState != null ? nextState : state;
10066
+ }, initialState);
10067
+ }
10068
+ var Presence = (props) => {
10069
+ const { present, children } = props;
10070
+ const presence = usePresence(present);
10071
+ const child = typeof children === "function" ? children({ present: presence.isPresent }) : React211.Children.only(children);
10072
+ const ref2 = useComposedRefs(presence.ref, getElementRef2(child));
10073
+ const forceMount = typeof children === "function";
10074
+ return forceMount || presence.isPresent ? React211.cloneElement(child, { ref: ref2 }) : null;
10075
+ };
10076
+ Presence.displayName = "Presence";
10077
+ function usePresence(present) {
10078
+ const [node2, setNode] = React211.useState();
10079
+ const stylesRef = React211.useRef(null);
10080
+ const prevPresentRef = React211.useRef(present);
10081
+ const prevAnimationNameRef = React211.useRef("none");
10082
+ const initialState = present ? "mounted" : "unmounted";
10083
+ const [state, send] = useStateMachine(initialState, {
10084
+ mounted: {
10085
+ UNMOUNT: "unmounted",
10086
+ ANIMATION_OUT: "unmountSuspended"
10087
+ },
10088
+ unmountSuspended: {
10089
+ MOUNT: "mounted",
10090
+ ANIMATION_END: "unmounted"
10091
+ },
10092
+ unmounted: {
10093
+ MOUNT: "mounted"
10094
+ }
10095
+ });
10096
+ React211.useEffect(() => {
10097
+ const currentAnimationName = getAnimationName(stylesRef.current);
10098
+ prevAnimationNameRef.current = state === "mounted" ? currentAnimationName : "none";
10099
+ }, [state]);
10100
+ useLayoutEffect2(() => {
10101
+ const styles = stylesRef.current;
10102
+ const wasPresent = prevPresentRef.current;
10103
+ const hasPresentChanged = wasPresent !== present;
10104
+ if (hasPresentChanged) {
10105
+ const prevAnimationName = prevAnimationNameRef.current;
10106
+ const currentAnimationName = getAnimationName(styles);
10107
+ if (present) {
10108
+ send("MOUNT");
10109
+ } else if (currentAnimationName === "none" || (styles == null ? void 0 : styles.display) === "none") {
10110
+ send("UNMOUNT");
10111
+ } else {
10112
+ const isAnimating = prevAnimationName !== currentAnimationName;
10113
+ if (wasPresent && isAnimating) {
10114
+ send("ANIMATION_OUT");
10115
+ } else {
10116
+ send("UNMOUNT");
10117
+ }
10118
+ }
10119
+ prevPresentRef.current = present;
10120
+ }
10121
+ }, [present, send]);
10122
+ useLayoutEffect2(() => {
10123
+ var _a;
10124
+ if (node2) {
10125
+ let timeoutId;
10126
+ const ownerWindow = (_a = node2.ownerDocument.defaultView) != null ? _a : window;
10127
+ const handleAnimationEnd = (event) => {
10128
+ const currentAnimationName = getAnimationName(stylesRef.current);
10129
+ const isCurrentAnimation = currentAnimationName.includes(event.animationName);
10130
+ if (event.target === node2 && isCurrentAnimation) {
10131
+ send("ANIMATION_END");
10132
+ if (!prevPresentRef.current) {
10133
+ const currentFillMode = node2.style.animationFillMode;
10134
+ node2.style.animationFillMode = "forwards";
10135
+ timeoutId = ownerWindow.setTimeout(() => {
10136
+ if (node2.style.animationFillMode === "forwards") {
10137
+ node2.style.animationFillMode = currentFillMode;
10138
+ }
10139
+ });
10140
+ }
10141
+ }
10142
+ };
10143
+ const handleAnimationStart = (event) => {
10144
+ if (event.target === node2) {
10145
+ prevAnimationNameRef.current = getAnimationName(stylesRef.current);
10146
+ }
10147
+ };
10148
+ node2.addEventListener("animationstart", handleAnimationStart);
10149
+ node2.addEventListener("animationcancel", handleAnimationEnd);
10150
+ node2.addEventListener("animationend", handleAnimationEnd);
10151
+ return () => {
10152
+ ownerWindow.clearTimeout(timeoutId);
10153
+ node2.removeEventListener("animationstart", handleAnimationStart);
10154
+ node2.removeEventListener("animationcancel", handleAnimationEnd);
10155
+ node2.removeEventListener("animationend", handleAnimationEnd);
10156
+ };
10157
+ } else {
10158
+ send("ANIMATION_END");
10159
+ }
10160
+ }, [node2, send]);
10161
+ return {
10162
+ isPresent: ["mounted", "unmountSuspended"].includes(state),
10163
+ ref: React211.useCallback((node22) => {
10164
+ stylesRef.current = node22 ? getComputedStyle(node22) : null;
10165
+ setNode(node22);
10166
+ }, [])
10167
+ };
10168
+ }
10169
+ function getAnimationName(styles) {
10170
+ return (styles == null ? void 0 : styles.animationName) || "none";
10171
+ }
10172
+ function getElementRef2(element) {
10173
+ var _a, _b;
10174
+ let getter = (_a = Object.getOwnPropertyDescriptor(element.props, "ref")) == null ? void 0 : _a.get;
10175
+ let mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
10176
+ if (mayWarn) {
10177
+ return element.ref;
10178
+ }
10179
+ getter = (_b = Object.getOwnPropertyDescriptor(element, "ref")) == null ? void 0 : _b.get;
10180
+ mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
10181
+ if (mayWarn) {
10182
+ return element.props.ref;
10183
+ }
10184
+ return element.props.ref || element.ref;
10185
+ }
10186
+
10187
+ // ../../node_modules/.pnpm/@radix-ui+react-focus-guards@1.1.2_@types+react@19.1.2_react@19.1.0/node_modules/@radix-ui/react-focus-guards/dist/index.mjs
10188
+ import * as React46 from "react";
10189
+ var count2 = 0;
10190
+ function useFocusGuards() {
10191
+ React46.useEffect(() => {
10192
+ var _a, _b;
10193
+ const edgeGuards = document.querySelectorAll("[data-radix-focus-guard]");
10194
+ document.body.insertAdjacentElement("afterbegin", (_a = edgeGuards[0]) != null ? _a : createFocusGuard());
10195
+ document.body.insertAdjacentElement("beforeend", (_b = edgeGuards[1]) != null ? _b : createFocusGuard());
10196
+ count2++;
10197
+ return () => {
10198
+ if (count2 === 1) {
10199
+ document.querySelectorAll("[data-radix-focus-guard]").forEach((node2) => node2.remove());
10200
+ }
10201
+ count2--;
10202
+ };
10203
+ }, []);
10204
+ }
10205
+ function createFocusGuard() {
10206
+ const element = document.createElement("span");
10207
+ element.setAttribute("data-radix-focus-guard", "");
10208
+ element.tabIndex = 0;
10209
+ element.style.outline = "none";
10210
+ element.style.opacity = "0";
10211
+ element.style.position = "fixed";
10212
+ element.style.pointerEvents = "none";
10213
+ return element;
10214
+ }
10215
+
10216
+ // ../../node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs
10217
+ var __assign = function() {
10218
+ __assign = Object.assign || function __assign2(t) {
10219
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
10220
+ s = arguments[i];
10221
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
10222
+ }
10223
+ return t;
10224
+ };
10225
+ return __assign.apply(this, arguments);
10226
+ };
10227
+ function __rest(s, e) {
10228
+ var t = {};
10229
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
10230
+ t[p] = s[p];
10231
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
10232
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
10233
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
10234
+ t[p[i]] = s[p[i]];
10235
+ }
10236
+ return t;
10237
+ }
10238
+ function __spreadArray(to, from, pack) {
10239
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
10240
+ if (ar || !(i in from)) {
10241
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
10242
+ ar[i] = from[i];
10243
+ }
10244
+ }
10245
+ return to.concat(ar || Array.prototype.slice.call(from));
10246
+ }
10247
+
10248
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/Combination.js
10249
+ import * as React53 from "react";
10250
+
10251
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/UI.js
10252
+ import * as React49 from "react";
10253
+
10254
+ // ../../node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll-bar/dist/es2015/constants.js
10255
+ var zeroRightClassName = "right-scroll-bar-position";
10256
+ var fullWidthClassName = "width-before-scroll-bar";
10257
+ var noScrollbarsClassName = "with-scroll-bars-hidden";
10258
+ var removedBarSizeVariable = "--removed-body-scroll-bar-size";
10259
+
10260
+ // ../../node_modules/.pnpm/use-callback-ref@1.3.3_@types+react@19.1.2_react@19.1.0/node_modules/use-callback-ref/dist/es2015/assignRef.js
10261
+ function assignRef(ref2, value2) {
10262
+ if (typeof ref2 === "function") {
10263
+ ref2(value2);
10264
+ } else if (ref2) {
10265
+ ref2.current = value2;
10266
+ }
10267
+ return ref2;
10268
+ }
10269
+
10270
+ // ../../node_modules/.pnpm/use-callback-ref@1.3.3_@types+react@19.1.2_react@19.1.0/node_modules/use-callback-ref/dist/es2015/useRef.js
10271
+ import { useState as useState7 } from "react";
10272
+ function useCallbackRef2(initialValue, callback) {
10273
+ var ref2 = useState7(function() {
10274
+ return {
10275
+ // value
10276
+ value: initialValue,
10277
+ // last callback
10278
+ callback,
10279
+ // "memoized" public interface
10280
+ facade: {
10281
+ get current() {
10282
+ return ref2.value;
10283
+ },
10284
+ set current(value2) {
10285
+ var last = ref2.value;
10286
+ if (last !== value2) {
10287
+ ref2.value = value2;
10288
+ ref2.callback(value2, last);
10289
+ }
10290
+ }
10291
+ }
10292
+ };
10293
+ })[0];
10294
+ ref2.callback = callback;
10295
+ return ref2.facade;
10296
+ }
10297
+
10298
+ // ../../node_modules/.pnpm/use-callback-ref@1.3.3_@types+react@19.1.2_react@19.1.0/node_modules/use-callback-ref/dist/es2015/useMergeRef.js
10299
+ import * as React47 from "react";
10300
+ var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React47.useLayoutEffect : React47.useEffect;
10301
+ var currentValues = /* @__PURE__ */ new WeakMap();
10302
+ function useMergeRefs(refs, defaultValue) {
10303
+ var callbackRef = useCallbackRef2(defaultValue || null, function(newValue) {
10304
+ return refs.forEach(function(ref2) {
10305
+ return assignRef(ref2, newValue);
10306
+ });
10307
+ });
10308
+ useIsomorphicLayoutEffect(function() {
10309
+ var oldValue = currentValues.get(callbackRef);
10310
+ if (oldValue) {
10311
+ var prevRefs_1 = new Set(oldValue);
10312
+ var nextRefs_1 = new Set(refs);
10313
+ var current_1 = callbackRef.current;
10314
+ prevRefs_1.forEach(function(ref2) {
10315
+ if (!nextRefs_1.has(ref2)) {
10316
+ assignRef(ref2, null);
10317
+ }
10318
+ });
10319
+ nextRefs_1.forEach(function(ref2) {
10320
+ if (!prevRefs_1.has(ref2)) {
10321
+ assignRef(ref2, current_1);
10322
+ }
10323
+ });
10324
+ }
10325
+ currentValues.set(callbackRef, refs);
10326
+ }, [refs]);
10327
+ return callbackRef;
10328
+ }
10329
+
10330
+ // ../../node_modules/.pnpm/use-sidecar@1.1.3_@types+react@19.1.2_react@19.1.0/node_modules/use-sidecar/dist/es2015/medium.js
10331
+ function ItoI(a) {
10332
+ return a;
10333
+ }
10334
+ function innerCreateMedium(defaults, middleware) {
10335
+ if (middleware === void 0) {
10336
+ middleware = ItoI;
10337
+ }
10338
+ var buffer = [];
10339
+ var assigned = false;
10340
+ var medium = {
10341
+ read: function() {
10342
+ if (assigned) {
10343
+ throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");
10344
+ }
10345
+ if (buffer.length) {
10346
+ return buffer[buffer.length - 1];
10347
+ }
10348
+ return defaults;
10349
+ },
10350
+ useMedium: function(data2) {
10351
+ var item = middleware(data2, assigned);
10352
+ buffer.push(item);
10353
+ return function() {
10354
+ buffer = buffer.filter(function(x) {
10355
+ return x !== item;
10356
+ });
10357
+ };
10358
+ },
10359
+ assignSyncMedium: function(cb) {
10360
+ assigned = true;
10361
+ while (buffer.length) {
10362
+ var cbs = buffer;
10363
+ buffer = [];
10364
+ cbs.forEach(cb);
10365
+ }
10366
+ buffer = {
10367
+ push: function(x) {
10368
+ return cb(x);
10369
+ },
10370
+ filter: function() {
10371
+ return buffer;
10372
+ }
10373
+ };
10374
+ },
10375
+ assignMedium: function(cb) {
10376
+ assigned = true;
10377
+ var pendingQueue = [];
10378
+ if (buffer.length) {
10379
+ var cbs = buffer;
10380
+ buffer = [];
10381
+ cbs.forEach(cb);
10382
+ pendingQueue = buffer;
10383
+ }
10384
+ var executeQueue = function() {
10385
+ var cbs2 = pendingQueue;
10386
+ pendingQueue = [];
10387
+ cbs2.forEach(cb);
10388
+ };
10389
+ var cycle = function() {
10390
+ return Promise.resolve().then(executeQueue);
10391
+ };
10392
+ cycle();
10393
+ buffer = {
10394
+ push: function(x) {
10395
+ pendingQueue.push(x);
10396
+ cycle();
10397
+ },
10398
+ filter: function(filter) {
10399
+ pendingQueue = pendingQueue.filter(filter);
10400
+ return buffer;
10401
+ }
10402
+ };
10403
+ }
10404
+ };
10405
+ return medium;
10406
+ }
10407
+ function createSidecarMedium(options) {
10408
+ if (options === void 0) {
10409
+ options = {};
10410
+ }
10411
+ var medium = innerCreateMedium(null);
10412
+ medium.options = __assign({ async: true, ssr: false }, options);
10413
+ return medium;
10414
+ }
10415
+
10416
+ // ../../node_modules/.pnpm/use-sidecar@1.1.3_@types+react@19.1.2_react@19.1.0/node_modules/use-sidecar/dist/es2015/exports.js
10417
+ import * as React48 from "react";
10418
+ var SideCar = function(_a) {
10419
+ var sideCar = _a.sideCar, rest = __rest(_a, ["sideCar"]);
10420
+ if (!sideCar) {
10421
+ throw new Error("Sidecar: please provide `sideCar` property to import the right car");
10422
+ }
10423
+ var Target = sideCar.read();
10424
+ if (!Target) {
10425
+ throw new Error("Sidecar medium not found");
10426
+ }
10427
+ return React48.createElement(Target, __assign({}, rest));
10428
+ };
10429
+ SideCar.isSideCarExport = true;
10430
+ function exportSidecar(medium, exported) {
10431
+ medium.useMedium(exported);
10432
+ return SideCar;
10433
+ }
10434
+
10435
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/medium.js
10436
+ var effectCar = createSidecarMedium();
10437
+
10438
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/UI.js
10439
+ var nothing = function() {
10440
+ return;
10441
+ };
10442
+ var RemoveScroll = React49.forwardRef(function(props, parentRef) {
10443
+ var ref2 = React49.useRef(null);
10444
+ var _a = React49.useState({
10445
+ onScrollCapture: nothing,
10446
+ onWheelCapture: nothing,
10447
+ onTouchMoveCapture: nothing
10448
+ }), callbacks = _a[0], setCallbacks = _a[1];
10449
+ var forwardProps = props.forwardProps, children = props.children, className = props.className, removeScrollBar = props.removeScrollBar, enabled = props.enabled, shards = props.shards, sideCar = props.sideCar, noRelative = props.noRelative, noIsolation = props.noIsolation, inert = props.inert, allowPinchZoom = props.allowPinchZoom, _b = props.as, Container = _b === void 0 ? "div" : _b, gapMode = props.gapMode, rest = __rest(props, ["forwardProps", "children", "className", "removeScrollBar", "enabled", "shards", "sideCar", "noRelative", "noIsolation", "inert", "allowPinchZoom", "as", "gapMode"]);
10450
+ var SideCar2 = sideCar;
10451
+ var containerRef = useMergeRefs([ref2, parentRef]);
10452
+ var containerProps = __assign(__assign({}, rest), callbacks);
10453
+ return React49.createElement(
10454
+ React49.Fragment,
10455
+ null,
10456
+ enabled && React49.createElement(SideCar2, { sideCar: effectCar, removeScrollBar, shards, noRelative, noIsolation, inert, setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref2, gapMode }),
10457
+ forwardProps ? React49.cloneElement(React49.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef })) : React49.createElement(Container, __assign({}, containerProps, { className, ref: containerRef }), children)
10458
+ );
10459
+ });
10460
+ RemoveScroll.defaultProps = {
10461
+ enabled: true,
10462
+ removeScrollBar: true,
10463
+ inert: false
10464
+ };
10465
+ RemoveScroll.classNames = {
10466
+ fullWidth: fullWidthClassName,
10467
+ zeroRight: zeroRightClassName
10468
+ };
10469
+
10470
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/SideEffect.js
10471
+ import * as React52 from "react";
10472
+
10473
+ // ../../node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll-bar/dist/es2015/component.js
10474
+ import * as React51 from "react";
10475
+
10476
+ // ../../node_modules/.pnpm/react-style-singleton@2.2.3_@types+react@19.1.2_react@19.1.0/node_modules/react-style-singleton/dist/es2015/hook.js
10477
+ import * as React50 from "react";
10478
+
10479
+ // ../../node_modules/.pnpm/get-nonce@1.0.1/node_modules/get-nonce/dist/es2015/index.js
10480
+ var currentNonce;
10481
+ var getNonce = function() {
10482
+ if (currentNonce) {
10483
+ return currentNonce;
10484
+ }
10485
+ if (typeof __webpack_nonce__ !== "undefined") {
10486
+ return __webpack_nonce__;
10487
+ }
10488
+ return void 0;
10489
+ };
10490
+
10491
+ // ../../node_modules/.pnpm/react-style-singleton@2.2.3_@types+react@19.1.2_react@19.1.0/node_modules/react-style-singleton/dist/es2015/singleton.js
10492
+ function makeStyleTag() {
10493
+ if (!document)
10494
+ return null;
10495
+ var tag = document.createElement("style");
10496
+ tag.type = "text/css";
10497
+ var nonce = getNonce();
10498
+ if (nonce) {
10499
+ tag.setAttribute("nonce", nonce);
10500
+ }
10501
+ return tag;
10502
+ }
10503
+ function injectStyles(tag, css) {
10504
+ if (tag.styleSheet) {
10505
+ tag.styleSheet.cssText = css;
10506
+ } else {
10507
+ tag.appendChild(document.createTextNode(css));
10508
+ }
10509
+ }
10510
+ function insertStyleTag(tag) {
10511
+ var head = document.head || document.getElementsByTagName("head")[0];
10512
+ head.appendChild(tag);
10513
+ }
10514
+ var stylesheetSingleton = function() {
10515
+ var counter = 0;
10516
+ var stylesheet = null;
10517
+ return {
10518
+ add: function(style) {
10519
+ if (counter == 0) {
10520
+ if (stylesheet = makeStyleTag()) {
10521
+ injectStyles(stylesheet, style);
10522
+ insertStyleTag(stylesheet);
10523
+ }
10524
+ }
10525
+ counter++;
10526
+ },
10527
+ remove: function() {
10528
+ counter--;
10529
+ if (!counter && stylesheet) {
10530
+ stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);
10531
+ stylesheet = null;
10532
+ }
10533
+ }
10534
+ };
10535
+ };
10536
+
10537
+ // ../../node_modules/.pnpm/react-style-singleton@2.2.3_@types+react@19.1.2_react@19.1.0/node_modules/react-style-singleton/dist/es2015/hook.js
10538
+ var styleHookSingleton = function() {
10539
+ var sheet = stylesheetSingleton();
10540
+ return function(styles, isDynamic) {
10541
+ React50.useEffect(function() {
10542
+ sheet.add(styles);
10543
+ return function() {
10544
+ sheet.remove();
10545
+ };
10546
+ }, [styles && isDynamic]);
10547
+ };
10548
+ };
10549
+
10550
+ // ../../node_modules/.pnpm/react-style-singleton@2.2.3_@types+react@19.1.2_react@19.1.0/node_modules/react-style-singleton/dist/es2015/component.js
10551
+ var styleSingleton = function() {
10552
+ var useStyle = styleHookSingleton();
10553
+ var Sheet = function(_a) {
10554
+ var styles = _a.styles, dynamic = _a.dynamic;
10555
+ useStyle(styles, dynamic);
10556
+ return null;
10557
+ };
10558
+ return Sheet;
10559
+ };
10560
+
10561
+ // ../../node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll-bar/dist/es2015/utils.js
10562
+ var zeroGap = {
10563
+ left: 0,
10564
+ top: 0,
10565
+ right: 0,
10566
+ gap: 0
10567
+ };
10568
+ var parse = function(x) {
10569
+ return parseInt(x || "", 10) || 0;
10570
+ };
10571
+ var getOffset = function(gapMode) {
10572
+ var cs = window.getComputedStyle(document.body);
10573
+ var left = cs[gapMode === "padding" ? "paddingLeft" : "marginLeft"];
10574
+ var top = cs[gapMode === "padding" ? "paddingTop" : "marginTop"];
10575
+ var right = cs[gapMode === "padding" ? "paddingRight" : "marginRight"];
10576
+ return [parse(left), parse(top), parse(right)];
10577
+ };
10578
+ var getGapWidth = function(gapMode) {
10579
+ if (gapMode === void 0) {
10580
+ gapMode = "margin";
10581
+ }
10582
+ if (typeof window === "undefined") {
10583
+ return zeroGap;
10584
+ }
10585
+ var offsets = getOffset(gapMode);
10586
+ var documentWidth = document.documentElement.clientWidth;
10587
+ var windowWidth = window.innerWidth;
10588
+ return {
10589
+ left: offsets[0],
10590
+ top: offsets[1],
10591
+ right: offsets[2],
10592
+ gap: Math.max(0, windowWidth - documentWidth + offsets[2] - offsets[0])
10593
+ };
10594
+ };
10595
+
10596
+ // ../../node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll-bar/dist/es2015/component.js
10597
+ var Style = styleSingleton();
10598
+ var lockAttribute = "data-scroll-locked";
10599
+ var getStyles = function(_a, allowRelative, gapMode, important) {
10600
+ var left = _a.left, top = _a.top, right = _a.right, gap = _a.gap;
10601
+ if (gapMode === void 0) {
10602
+ gapMode = "margin";
10603
+ }
10604
+ return "\n .".concat(noScrollbarsClassName, " {\n overflow: hidden ").concat(important, ";\n padding-right: ").concat(gap, "px ").concat(important, ";\n }\n body[").concat(lockAttribute, "] {\n overflow: hidden ").concat(important, ";\n overscroll-behavior: contain;\n ").concat([
10605
+ allowRelative && "position: relative ".concat(important, ";"),
10606
+ gapMode === "margin" && "\n padding-left: ".concat(left, "px;\n padding-top: ").concat(top, "px;\n padding-right: ").concat(right, "px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(gap, "px ").concat(important, ";\n "),
10607
+ gapMode === "padding" && "padding-right: ".concat(gap, "px ").concat(important, ";")
10608
+ ].filter(Boolean).join(""), "\n }\n \n .").concat(zeroRightClassName, " {\n right: ").concat(gap, "px ").concat(important, ";\n }\n \n .").concat(fullWidthClassName, " {\n margin-right: ").concat(gap, "px ").concat(important, ";\n }\n \n .").concat(zeroRightClassName, " .").concat(zeroRightClassName, " {\n right: 0 ").concat(important, ";\n }\n \n .").concat(fullWidthClassName, " .").concat(fullWidthClassName, " {\n margin-right: 0 ").concat(important, ";\n }\n \n body[").concat(lockAttribute, "] {\n ").concat(removedBarSizeVariable, ": ").concat(gap, "px;\n }\n");
10609
+ };
10610
+ var getCurrentUseCounter = function() {
10611
+ var counter = parseInt(document.body.getAttribute(lockAttribute) || "0", 10);
10612
+ return isFinite(counter) ? counter : 0;
10613
+ };
10614
+ var useLockAttribute = function() {
10615
+ React51.useEffect(function() {
10616
+ document.body.setAttribute(lockAttribute, (getCurrentUseCounter() + 1).toString());
10617
+ return function() {
10618
+ var newCounter = getCurrentUseCounter() - 1;
10619
+ if (newCounter <= 0) {
10620
+ document.body.removeAttribute(lockAttribute);
10621
+ } else {
10622
+ document.body.setAttribute(lockAttribute, newCounter.toString());
10623
+ }
10624
+ };
10625
+ }, []);
10626
+ };
10627
+ var RemoveScrollBar = function(_a) {
10628
+ var noRelative = _a.noRelative, noImportant = _a.noImportant, _b = _a.gapMode, gapMode = _b === void 0 ? "margin" : _b;
10629
+ useLockAttribute();
10630
+ var gap = React51.useMemo(function() {
10631
+ return getGapWidth(gapMode);
10632
+ }, [gapMode]);
10633
+ return React51.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? "!important" : "") });
10634
+ };
10635
+
10636
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js
10637
+ var passiveSupported = false;
10638
+ if (typeof window !== "undefined") {
10639
+ try {
10640
+ options = Object.defineProperty({}, "passive", {
10641
+ get: function() {
10642
+ passiveSupported = true;
10643
+ return true;
10644
+ }
10645
+ });
10646
+ window.addEventListener("test", options, options);
10647
+ window.removeEventListener("test", options, options);
10648
+ } catch (err) {
10649
+ passiveSupported = false;
10650
+ }
10651
+ }
10652
+ var options;
10653
+ var nonPassive = passiveSupported ? { passive: false } : false;
10654
+
10655
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/handleScroll.js
10656
+ var alwaysContainsScroll = function(node2) {
10657
+ return node2.tagName === "TEXTAREA";
10658
+ };
10659
+ var elementCanBeScrolled = function(node2, overflow) {
10660
+ if (!(node2 instanceof Element)) {
10661
+ return false;
10662
+ }
10663
+ var styles = window.getComputedStyle(node2);
10664
+ return (
10665
+ // not-not-scrollable
10666
+ styles[overflow] !== "hidden" && // contains scroll inside self
10667
+ !(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node2) && styles[overflow] === "visible")
10668
+ );
10669
+ };
10670
+ var elementCouldBeVScrolled = function(node2) {
10671
+ return elementCanBeScrolled(node2, "overflowY");
10672
+ };
10673
+ var elementCouldBeHScrolled = function(node2) {
10674
+ return elementCanBeScrolled(node2, "overflowX");
10675
+ };
10676
+ var locationCouldBeScrolled = function(axis, node2) {
10677
+ var ownerDocument = node2.ownerDocument;
10678
+ var current2 = node2;
10679
+ do {
10680
+ if (typeof ShadowRoot !== "undefined" && current2 instanceof ShadowRoot) {
10681
+ current2 = current2.host;
10682
+ }
10683
+ var isScrollable = elementCouldBeScrolled(axis, current2);
10684
+ if (isScrollable) {
10685
+ var _a = getScrollVariables(axis, current2), scrollHeight = _a[1], clientHeight = _a[2];
10686
+ if (scrollHeight > clientHeight) {
10687
+ return true;
10688
+ }
10689
+ }
10690
+ current2 = current2.parentNode;
10691
+ } while (current2 && current2 !== ownerDocument.body);
10692
+ return false;
10693
+ };
10694
+ var getVScrollVariables = function(_a) {
10695
+ var scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;
10696
+ return [
10697
+ scrollTop,
10698
+ scrollHeight,
10699
+ clientHeight
10700
+ ];
10701
+ };
10702
+ var getHScrollVariables = function(_a) {
10703
+ var scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;
10704
+ return [
10705
+ scrollLeft,
10706
+ scrollWidth,
10707
+ clientWidth
10708
+ ];
10709
+ };
10710
+ var elementCouldBeScrolled = function(axis, node2) {
10711
+ return axis === "v" ? elementCouldBeVScrolled(node2) : elementCouldBeHScrolled(node2);
10712
+ };
10713
+ var getScrollVariables = function(axis, node2) {
10714
+ return axis === "v" ? getVScrollVariables(node2) : getHScrollVariables(node2);
10715
+ };
10716
+ var getDirectionFactor = function(axis, direction) {
10717
+ return axis === "h" && direction === "rtl" ? -1 : 1;
10718
+ };
10719
+ var handleScroll = function(axis, endTarget, event, sourceDelta, noOverscroll) {
10720
+ var directionFactor = getDirectionFactor(axis, window.getComputedStyle(endTarget).direction);
10721
+ var delta = directionFactor * sourceDelta;
10722
+ var target = event.target;
10723
+ var targetInLock = endTarget.contains(target);
10724
+ var shouldCancelScroll = false;
10725
+ var isDeltaPositive = delta > 0;
10726
+ var availableScroll = 0;
10727
+ var availableScrollTop = 0;
10728
+ do {
10729
+ if (!target) {
10730
+ break;
10731
+ }
10732
+ var _a = getScrollVariables(axis, target), position2 = _a[0], scroll_1 = _a[1], capacity = _a[2];
10733
+ var elementScroll = scroll_1 - capacity - directionFactor * position2;
10734
+ if (position2 || elementScroll) {
10735
+ if (elementCouldBeScrolled(axis, target)) {
10736
+ availableScroll += elementScroll;
10737
+ availableScrollTop += position2;
10738
+ }
10739
+ }
10740
+ var parent_1 = target.parentNode;
10741
+ target = parent_1 && parent_1.nodeType === Node.DOCUMENT_FRAGMENT_NODE ? parent_1.host : parent_1;
10742
+ } while (
10743
+ // portaled content
10744
+ !targetInLock && target !== document.body || // self content
10745
+ targetInLock && (endTarget.contains(target) || endTarget === target)
10746
+ );
10747
+ if (isDeltaPositive && (noOverscroll && Math.abs(availableScroll) < 1 || !noOverscroll && delta > availableScroll)) {
10748
+ shouldCancelScroll = true;
10749
+ } else if (!isDeltaPositive && (noOverscroll && Math.abs(availableScrollTop) < 1 || !noOverscroll && -delta > availableScrollTop)) {
10750
+ shouldCancelScroll = true;
10751
+ }
10752
+ return shouldCancelScroll;
10753
+ };
10754
+
10755
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/SideEffect.js
10756
+ var getTouchXY = function(event) {
10757
+ return "changedTouches" in event ? [event.changedTouches[0].clientX, event.changedTouches[0].clientY] : [0, 0];
10758
+ };
10759
+ var getDeltaXY = function(event) {
10760
+ return [event.deltaX, event.deltaY];
10761
+ };
10762
+ var extractRef = function(ref2) {
10763
+ return ref2 && "current" in ref2 ? ref2.current : ref2;
10764
+ };
10765
+ var deltaCompare = function(x, y) {
10766
+ return x[0] === y[0] && x[1] === y[1];
10767
+ };
10768
+ var generateStyle = function(id) {
10769
+ return "\n .block-interactivity-".concat(id, " {pointer-events: none;}\n .allow-interactivity-").concat(id, " {pointer-events: all;}\n");
10770
+ };
10771
+ var idCounter = 0;
10772
+ var lockStack = [];
10773
+ function RemoveScrollSideCar(props) {
10774
+ var shouldPreventQueue = React52.useRef([]);
10775
+ var touchStartRef = React52.useRef([0, 0]);
10776
+ var activeAxis = React52.useRef();
10777
+ var id = React52.useState(idCounter++)[0];
10778
+ var Style2 = React52.useState(styleSingleton)[0];
10779
+ var lastProps = React52.useRef(props);
10780
+ React52.useEffect(function() {
10781
+ lastProps.current = props;
10782
+ }, [props]);
10783
+ React52.useEffect(function() {
10784
+ if (props.inert) {
10785
+ document.body.classList.add("block-interactivity-".concat(id));
10786
+ var allow_1 = __spreadArray([props.lockRef.current], (props.shards || []).map(extractRef), true).filter(Boolean);
10787
+ allow_1.forEach(function(el) {
10788
+ return el.classList.add("allow-interactivity-".concat(id));
10789
+ });
10790
+ return function() {
10791
+ document.body.classList.remove("block-interactivity-".concat(id));
10792
+ allow_1.forEach(function(el) {
10793
+ return el.classList.remove("allow-interactivity-".concat(id));
10794
+ });
10795
+ };
10796
+ }
10797
+ return;
10798
+ }, [props.inert, props.lockRef.current, props.shards]);
10799
+ var shouldCancelEvent = React52.useCallback(function(event, parent) {
10800
+ if ("touches" in event && event.touches.length === 2 || event.type === "wheel" && event.ctrlKey) {
10801
+ return !lastProps.current.allowPinchZoom;
10802
+ }
10803
+ var touch = getTouchXY(event);
10804
+ var touchStart = touchStartRef.current;
10805
+ var deltaX = "deltaX" in event ? event.deltaX : touchStart[0] - touch[0];
10806
+ var deltaY = "deltaY" in event ? event.deltaY : touchStart[1] - touch[1];
10807
+ var currentAxis;
10808
+ var target = event.target;
10809
+ var moveDirection = Math.abs(deltaX) > Math.abs(deltaY) ? "h" : "v";
10810
+ if ("touches" in event && moveDirection === "h" && target.type === "range") {
10811
+ return false;
10812
+ }
10813
+ var canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);
10814
+ if (!canBeScrolledInMainDirection) {
10815
+ return true;
10816
+ }
10817
+ if (canBeScrolledInMainDirection) {
10818
+ currentAxis = moveDirection;
10819
+ } else {
10820
+ currentAxis = moveDirection === "v" ? "h" : "v";
10821
+ canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);
10822
+ }
10823
+ if (!canBeScrolledInMainDirection) {
10824
+ return false;
10825
+ }
10826
+ if (!activeAxis.current && "changedTouches" in event && (deltaX || deltaY)) {
10827
+ activeAxis.current = currentAxis;
10828
+ }
10829
+ if (!currentAxis) {
10830
+ return true;
10831
+ }
10832
+ var cancelingAxis = activeAxis.current || currentAxis;
10833
+ return handleScroll(cancelingAxis, parent, event, cancelingAxis === "h" ? deltaX : deltaY, true);
10834
+ }, []);
10835
+ var shouldPrevent = React52.useCallback(function(_event) {
10836
+ var event = _event;
10837
+ if (!lockStack.length || lockStack[lockStack.length - 1] !== Style2) {
10838
+ return;
10839
+ }
10840
+ var delta = "deltaY" in event ? getDeltaXY(event) : getTouchXY(event);
10841
+ var sourceEvent = shouldPreventQueue.current.filter(function(e) {
10842
+ return e.name === event.type && (e.target === event.target || event.target === e.shadowParent) && deltaCompare(e.delta, delta);
10843
+ })[0];
10844
+ if (sourceEvent && sourceEvent.should) {
10845
+ if (event.cancelable) {
10846
+ event.preventDefault();
10847
+ }
10848
+ return;
10849
+ }
10850
+ if (!sourceEvent) {
10851
+ var shardNodes = (lastProps.current.shards || []).map(extractRef).filter(Boolean).filter(function(node2) {
10852
+ return node2.contains(event.target);
10853
+ });
10854
+ var shouldStop = shardNodes.length > 0 ? shouldCancelEvent(event, shardNodes[0]) : !lastProps.current.noIsolation;
10855
+ if (shouldStop) {
10856
+ if (event.cancelable) {
10857
+ event.preventDefault();
10858
+ }
10859
+ }
10860
+ }
10861
+ }, []);
10862
+ var shouldCancel = React52.useCallback(function(name2, delta, target, should) {
10863
+ var event = { name: name2, delta, target, should, shadowParent: getOutermostShadowParent(target) };
10864
+ shouldPreventQueue.current.push(event);
10865
+ setTimeout(function() {
10866
+ shouldPreventQueue.current = shouldPreventQueue.current.filter(function(e) {
10867
+ return e !== event;
10868
+ });
10869
+ }, 1);
10870
+ }, []);
10871
+ var scrollTouchStart = React52.useCallback(function(event) {
10872
+ touchStartRef.current = getTouchXY(event);
10873
+ activeAxis.current = void 0;
10874
+ }, []);
10875
+ var scrollWheel = React52.useCallback(function(event) {
10876
+ shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));
10877
+ }, []);
10878
+ var scrollTouchMove = React52.useCallback(function(event) {
10879
+ shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));
10880
+ }, []);
10881
+ React52.useEffect(function() {
10882
+ lockStack.push(Style2);
10883
+ props.setCallbacks({
10884
+ onScrollCapture: scrollWheel,
10885
+ onWheelCapture: scrollWheel,
10886
+ onTouchMoveCapture: scrollTouchMove
10887
+ });
10888
+ document.addEventListener("wheel", shouldPrevent, nonPassive);
10889
+ document.addEventListener("touchmove", shouldPrevent, nonPassive);
10890
+ document.addEventListener("touchstart", scrollTouchStart, nonPassive);
10891
+ return function() {
10892
+ lockStack = lockStack.filter(function(inst) {
10893
+ return inst !== Style2;
10894
+ });
10895
+ document.removeEventListener("wheel", shouldPrevent, nonPassive);
10896
+ document.removeEventListener("touchmove", shouldPrevent, nonPassive);
10897
+ document.removeEventListener("touchstart", scrollTouchStart, nonPassive);
10898
+ };
10899
+ }, []);
10900
+ var removeScrollBar = props.removeScrollBar, inert = props.inert;
10901
+ return React52.createElement(
10902
+ React52.Fragment,
10903
+ null,
10904
+ inert ? React52.createElement(Style2, { styles: generateStyle(id) }) : null,
10905
+ removeScrollBar ? React52.createElement(RemoveScrollBar, { noRelative: props.noRelative, gapMode: props.gapMode }) : null
10906
+ );
10907
+ }
10908
+ function getOutermostShadowParent(node2) {
10909
+ var shadowParent = null;
10910
+ while (node2 !== null) {
10911
+ if (node2 instanceof ShadowRoot) {
10912
+ shadowParent = node2.host;
10913
+ node2 = node2.host;
10914
+ }
10915
+ node2 = node2.parentNode;
10916
+ }
10917
+ return shadowParent;
10918
+ }
10919
+
10920
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/sidecar.js
10921
+ var sidecar_default = exportSidecar(effectCar, RemoveScrollSideCar);
10922
+
10923
+ // ../../node_modules/.pnpm/react-remove-scroll@2.7.1_@types+react@19.1.2_react@19.1.0/node_modules/react-remove-scroll/dist/es2015/Combination.js
10924
+ var ReactRemoveScroll = React53.forwardRef(function(props, ref2) {
10925
+ return React53.createElement(RemoveScroll, __assign({}, props, { ref: ref2, sideCar: sidecar_default }));
10926
+ });
10927
+ ReactRemoveScroll.classNames = RemoveScroll.classNames;
10928
+ var Combination_default = ReactRemoveScroll;
10929
+
10930
+ // ../../node_modules/.pnpm/aria-hidden@1.2.6/node_modules/aria-hidden/dist/es2015/index.js
10931
+ var getDefaultParent = function(originalTarget) {
10932
+ if (typeof document === "undefined") {
10933
+ return null;
10934
+ }
10935
+ var sampleTarget = Array.isArray(originalTarget) ? originalTarget[0] : originalTarget;
10936
+ return sampleTarget.ownerDocument.body;
10937
+ };
10938
+ var counterMap = /* @__PURE__ */ new WeakMap();
10939
+ var uncontrolledNodes = /* @__PURE__ */ new WeakMap();
10940
+ var markerMap = {};
10941
+ var lockCount = 0;
10942
+ var unwrapHost = function(node2) {
10943
+ return node2 && (node2.host || unwrapHost(node2.parentNode));
10944
+ };
10945
+ var correctTargets = function(parent, targets) {
10946
+ return targets.map(function(target) {
10947
+ if (parent.contains(target)) {
10948
+ return target;
10949
+ }
10950
+ var correctedTarget = unwrapHost(target);
10951
+ if (correctedTarget && parent.contains(correctedTarget)) {
10952
+ return correctedTarget;
10953
+ }
10954
+ console.error("aria-hidden", target, "in not contained inside", parent, ". Doing nothing");
10955
+ return null;
10956
+ }).filter(function(x) {
10957
+ return Boolean(x);
10958
+ });
10959
+ };
10960
+ var applyAttributeToOthers = function(originalTarget, parentNode, markerName, controlAttribute) {
10961
+ var targets = correctTargets(parentNode, Array.isArray(originalTarget) ? originalTarget : [originalTarget]);
10962
+ if (!markerMap[markerName]) {
10963
+ markerMap[markerName] = /* @__PURE__ */ new WeakMap();
10964
+ }
10965
+ var markerCounter = markerMap[markerName];
10966
+ var hiddenNodes = [];
10967
+ var elementsToKeep = /* @__PURE__ */ new Set();
10968
+ var elementsToStop = new Set(targets);
10969
+ var keep = function(el) {
10970
+ if (!el || elementsToKeep.has(el)) {
10971
+ return;
10972
+ }
10973
+ elementsToKeep.add(el);
10974
+ keep(el.parentNode);
10975
+ };
10976
+ targets.forEach(keep);
10977
+ var deep = function(parent) {
10978
+ if (!parent || elementsToStop.has(parent)) {
10979
+ return;
10980
+ }
10981
+ Array.prototype.forEach.call(parent.children, function(node2) {
10982
+ if (elementsToKeep.has(node2)) {
10983
+ deep(node2);
10984
+ } else {
10985
+ try {
10986
+ var attr = node2.getAttribute(controlAttribute);
10987
+ var alreadyHidden = attr !== null && attr !== "false";
10988
+ var counterValue = (counterMap.get(node2) || 0) + 1;
10989
+ var markerValue = (markerCounter.get(node2) || 0) + 1;
10990
+ counterMap.set(node2, counterValue);
10991
+ markerCounter.set(node2, markerValue);
10992
+ hiddenNodes.push(node2);
10993
+ if (counterValue === 1 && alreadyHidden) {
10994
+ uncontrolledNodes.set(node2, true);
10995
+ }
10996
+ if (markerValue === 1) {
10997
+ node2.setAttribute(markerName, "true");
10998
+ }
10999
+ if (!alreadyHidden) {
11000
+ node2.setAttribute(controlAttribute, "true");
11001
+ }
11002
+ } catch (e) {
11003
+ console.error("aria-hidden: cannot operate on ", node2, e);
11004
+ }
11005
+ }
11006
+ });
11007
+ };
11008
+ deep(parentNode);
11009
+ elementsToKeep.clear();
11010
+ lockCount++;
11011
+ return function() {
11012
+ hiddenNodes.forEach(function(node2) {
11013
+ var counterValue = counterMap.get(node2) - 1;
11014
+ var markerValue = markerCounter.get(node2) - 1;
11015
+ counterMap.set(node2, counterValue);
11016
+ markerCounter.set(node2, markerValue);
11017
+ if (!counterValue) {
11018
+ if (!uncontrolledNodes.has(node2)) {
11019
+ node2.removeAttribute(controlAttribute);
11020
+ }
11021
+ uncontrolledNodes.delete(node2);
11022
+ }
11023
+ if (!markerValue) {
11024
+ node2.removeAttribute(markerName);
11025
+ }
11026
+ });
11027
+ lockCount--;
11028
+ if (!lockCount) {
11029
+ counterMap = /* @__PURE__ */ new WeakMap();
11030
+ counterMap = /* @__PURE__ */ new WeakMap();
11031
+ uncontrolledNodes = /* @__PURE__ */ new WeakMap();
11032
+ markerMap = {};
11033
+ }
11034
+ };
11035
+ };
11036
+ var hideOthers = function(originalTarget, parentNode, markerName) {
11037
+ if (markerName === void 0) {
11038
+ markerName = "data-aria-hidden";
11039
+ }
11040
+ var targets = Array.from(Array.isArray(originalTarget) ? originalTarget : [originalTarget]);
11041
+ var activeParentNode = parentNode || getDefaultParent(originalTarget);
11042
+ if (!activeParentNode) {
11043
+ return function() {
11044
+ return null;
11045
+ };
11046
+ }
11047
+ targets.push.apply(targets, Array.from(activeParentNode.querySelectorAll("[aria-live], script")));
11048
+ return applyAttributeToOthers(targets, activeParentNode, markerName, "aria-hidden");
11049
+ };
11050
+
11051
+ // ../../node_modules/.pnpm/@radix-ui+react-dialog@1.1.14_@types+react-dom@19.1.3_@types+react@19.1.2__@types+react_848f83211ce5e4d8275fe0d3e11a9387/node_modules/@radix-ui/react-dialog/dist/index.mjs
11052
+ import { Fragment as Fragment5, jsx as jsx39, jsxs as jsxs10 } from "react/jsx-runtime";
11053
+ var DIALOG_NAME = "Dialog";
11054
+ var [createDialogContext, createDialogScope] = createContextScope(DIALOG_NAME);
11055
+ var [DialogProvider, useDialogContext] = createDialogContext(DIALOG_NAME);
11056
+ var Dialog = (props) => {
11057
+ const {
11058
+ __scopeDialog,
11059
+ children,
11060
+ open: openProp,
11061
+ defaultOpen,
11062
+ onOpenChange,
11063
+ modal = true
11064
+ } = props;
11065
+ const triggerRef = React54.useRef(null);
11066
+ const contentRef = React54.useRef(null);
11067
+ const [open, setOpen] = useControllableState({
11068
+ prop: openProp,
11069
+ defaultProp: defaultOpen != null ? defaultOpen : false,
11070
+ onChange: onOpenChange,
11071
+ caller: DIALOG_NAME
11072
+ });
11073
+ return /* @__PURE__ */ jsx39(
11074
+ DialogProvider,
11075
+ {
11076
+ scope: __scopeDialog,
11077
+ triggerRef,
11078
+ contentRef,
11079
+ contentId: useId(),
11080
+ titleId: useId(),
11081
+ descriptionId: useId(),
11082
+ open,
11083
+ onOpenChange: setOpen,
11084
+ onOpenToggle: React54.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
11085
+ modal,
11086
+ children
11087
+ }
11088
+ );
11089
+ };
11090
+ Dialog.displayName = DIALOG_NAME;
11091
+ var TRIGGER_NAME = "DialogTrigger";
11092
+ var DialogTrigger = React54.forwardRef(
11093
+ (props, forwardedRef) => {
11094
+ const _a = props, { __scopeDialog } = _a, triggerProps = __objRest(_a, ["__scopeDialog"]);
11095
+ const context = useDialogContext(TRIGGER_NAME, __scopeDialog);
11096
+ const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);
11097
+ return /* @__PURE__ */ jsx39(
11098
+ Primitive.button,
11099
+ __spreadProps(__spreadValues({
11100
+ type: "button",
11101
+ "aria-haspopup": "dialog",
11102
+ "aria-expanded": context.open,
11103
+ "aria-controls": context.contentId,
11104
+ "data-state": getState(context.open)
11105
+ }, triggerProps), {
11106
+ ref: composedTriggerRef,
11107
+ onClick: composeEventHandlers(props.onClick, context.onOpenToggle)
11108
+ })
11109
+ );
11110
+ }
11111
+ );
11112
+ DialogTrigger.displayName = TRIGGER_NAME;
11113
+ var PORTAL_NAME2 = "DialogPortal";
11114
+ var [PortalProvider, usePortalContext] = createDialogContext(PORTAL_NAME2, {
11115
+ forceMount: void 0
11116
+ });
11117
+ var DialogPortal = (props) => {
11118
+ const { __scopeDialog, forceMount, children, container } = props;
11119
+ const context = useDialogContext(PORTAL_NAME2, __scopeDialog);
11120
+ return /* @__PURE__ */ jsx39(PortalProvider, { scope: __scopeDialog, forceMount, children: React54.Children.map(children, (child) => /* @__PURE__ */ jsx39(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx39(Portal, { asChild: true, container, children: child }) })) });
11121
+ };
11122
+ DialogPortal.displayName = PORTAL_NAME2;
11123
+ var OVERLAY_NAME = "DialogOverlay";
11124
+ var DialogOverlay = React54.forwardRef(
11125
+ (props, forwardedRef) => {
11126
+ const portalContext = usePortalContext(OVERLAY_NAME, props.__scopeDialog);
11127
+ const _a = props, { forceMount = portalContext.forceMount } = _a, overlayProps = __objRest(_a, ["forceMount"]);
11128
+ const context = useDialogContext(OVERLAY_NAME, props.__scopeDialog);
11129
+ return context.modal ? /* @__PURE__ */ jsx39(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx39(DialogOverlayImpl, __spreadProps(__spreadValues({}, overlayProps), { ref: forwardedRef })) }) : null;
11130
+ }
11131
+ );
11132
+ DialogOverlay.displayName = OVERLAY_NAME;
11133
+ var Slot2 = createSlot("DialogOverlay.RemoveScroll");
11134
+ var DialogOverlayImpl = React54.forwardRef(
11135
+ (props, forwardedRef) => {
11136
+ const _a = props, { __scopeDialog } = _a, overlayProps = __objRest(_a, ["__scopeDialog"]);
11137
+ const context = useDialogContext(OVERLAY_NAME, __scopeDialog);
11138
+ return (
11139
+ // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`
11140
+ // ie. when `Overlay` and `Content` are siblings
11141
+ /* @__PURE__ */ jsx39(Combination_default, { as: Slot2, allowPinchZoom: true, shards: [context.contentRef], children: /* @__PURE__ */ jsx39(
11142
+ Primitive.div,
11143
+ __spreadProps(__spreadValues({
11144
+ "data-state": getState(context.open)
11145
+ }, overlayProps), {
11146
+ ref: forwardedRef,
11147
+ style: __spreadValues({ pointerEvents: "auto" }, overlayProps.style)
11148
+ })
11149
+ ) })
11150
+ );
11151
+ }
11152
+ );
11153
+ var CONTENT_NAME = "DialogContent";
11154
+ var DialogContent = React54.forwardRef(
11155
+ (props, forwardedRef) => {
11156
+ const portalContext = usePortalContext(CONTENT_NAME, props.__scopeDialog);
11157
+ const _a = props, { forceMount = portalContext.forceMount } = _a, contentProps = __objRest(_a, ["forceMount"]);
11158
+ const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);
11159
+ return /* @__PURE__ */ jsx39(Presence, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx39(DialogContentModal, __spreadProps(__spreadValues({}, contentProps), { ref: forwardedRef })) : /* @__PURE__ */ jsx39(DialogContentNonModal, __spreadProps(__spreadValues({}, contentProps), { ref: forwardedRef })) });
11160
+ }
11161
+ );
11162
+ DialogContent.displayName = CONTENT_NAME;
11163
+ var DialogContentModal = React54.forwardRef(
11164
+ (props, forwardedRef) => {
11165
+ const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);
11166
+ const contentRef = React54.useRef(null);
11167
+ const composedRefs = useComposedRefs(forwardedRef, context.contentRef, contentRef);
11168
+ React54.useEffect(() => {
11169
+ const content3 = contentRef.current;
11170
+ if (content3) return hideOthers(content3);
11171
+ }, []);
11172
+ return /* @__PURE__ */ jsx39(
11173
+ DialogContentImpl,
11174
+ __spreadProps(__spreadValues({}, props), {
11175
+ ref: composedRefs,
11176
+ trapFocus: context.open,
11177
+ disableOutsidePointerEvents: true,
11178
+ onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {
11179
+ var _a;
11180
+ event.preventDefault();
11181
+ (_a = context.triggerRef.current) == null ? void 0 : _a.focus();
11182
+ }),
11183
+ onPointerDownOutside: composeEventHandlers(props.onPointerDownOutside, (event) => {
11184
+ const originalEvent = event.detail.originalEvent;
11185
+ const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;
11186
+ const isRightClick = originalEvent.button === 2 || ctrlLeftClick;
11187
+ if (isRightClick) event.preventDefault();
11188
+ }),
11189
+ onFocusOutside: composeEventHandlers(
11190
+ props.onFocusOutside,
11191
+ (event) => event.preventDefault()
11192
+ )
11193
+ })
11194
+ );
11195
+ }
11196
+ );
11197
+ var DialogContentNonModal = React54.forwardRef(
11198
+ (props, forwardedRef) => {
11199
+ const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);
11200
+ const hasInteractedOutsideRef = React54.useRef(false);
11201
+ const hasPointerDownOutsideRef = React54.useRef(false);
11202
+ return /* @__PURE__ */ jsx39(
11203
+ DialogContentImpl,
11204
+ __spreadProps(__spreadValues({}, props), {
11205
+ ref: forwardedRef,
11206
+ trapFocus: false,
11207
+ disableOutsidePointerEvents: false,
11208
+ onCloseAutoFocus: (event) => {
11209
+ var _a, _b;
11210
+ (_a = props.onCloseAutoFocus) == null ? void 0 : _a.call(props, event);
11211
+ if (!event.defaultPrevented) {
11212
+ if (!hasInteractedOutsideRef.current) (_b = context.triggerRef.current) == null ? void 0 : _b.focus();
11213
+ event.preventDefault();
11214
+ }
11215
+ hasInteractedOutsideRef.current = false;
11216
+ hasPointerDownOutsideRef.current = false;
11217
+ },
11218
+ onInteractOutside: (event) => {
11219
+ var _a, _b;
11220
+ (_a = props.onInteractOutside) == null ? void 0 : _a.call(props, event);
11221
+ if (!event.defaultPrevented) {
11222
+ hasInteractedOutsideRef.current = true;
11223
+ if (event.detail.originalEvent.type === "pointerdown") {
11224
+ hasPointerDownOutsideRef.current = true;
11225
+ }
11226
+ }
11227
+ const target = event.target;
11228
+ const targetIsTrigger = (_b = context.triggerRef.current) == null ? void 0 : _b.contains(target);
11229
+ if (targetIsTrigger) event.preventDefault();
11230
+ if (event.detail.originalEvent.type === "focusin" && hasPointerDownOutsideRef.current) {
11231
+ event.preventDefault();
11232
+ }
11233
+ }
11234
+ })
11235
+ );
11236
+ }
11237
+ );
11238
+ var DialogContentImpl = React54.forwardRef(
11239
+ (props, forwardedRef) => {
11240
+ const _a = props, { __scopeDialog, trapFocus, onOpenAutoFocus, onCloseAutoFocus } = _a, contentProps = __objRest(_a, ["__scopeDialog", "trapFocus", "onOpenAutoFocus", "onCloseAutoFocus"]);
11241
+ const context = useDialogContext(CONTENT_NAME, __scopeDialog);
11242
+ const contentRef = React54.useRef(null);
11243
+ const composedRefs = useComposedRefs(forwardedRef, contentRef);
11244
+ useFocusGuards();
11245
+ return /* @__PURE__ */ jsxs10(Fragment5, { children: [
11246
+ /* @__PURE__ */ jsx39(
11247
+ FocusScope,
11248
+ {
11249
+ asChild: true,
11250
+ loop: true,
11251
+ trapped: trapFocus,
11252
+ onMountAutoFocus: onOpenAutoFocus,
11253
+ onUnmountAutoFocus: onCloseAutoFocus,
11254
+ children: /* @__PURE__ */ jsx39(
11255
+ DismissableLayer,
11256
+ __spreadProps(__spreadValues({
11257
+ role: "dialog",
11258
+ id: context.contentId,
11259
+ "aria-describedby": context.descriptionId,
11260
+ "aria-labelledby": context.titleId,
11261
+ "data-state": getState(context.open)
11262
+ }, contentProps), {
11263
+ ref: composedRefs,
11264
+ onDismiss: () => context.onOpenChange(false)
11265
+ })
11266
+ )
11267
+ }
11268
+ ),
11269
+ /* @__PURE__ */ jsxs10(Fragment5, { children: [
11270
+ /* @__PURE__ */ jsx39(TitleWarning, { titleId: context.titleId }),
11271
+ /* @__PURE__ */ jsx39(DescriptionWarning, { contentRef, descriptionId: context.descriptionId })
11272
+ ] })
11273
+ ] });
11274
+ }
11275
+ );
11276
+ var TITLE_NAME = "DialogTitle";
11277
+ var DialogTitle = React54.forwardRef(
11278
+ (props, forwardedRef) => {
11279
+ const _a = props, { __scopeDialog } = _a, titleProps = __objRest(_a, ["__scopeDialog"]);
11280
+ const context = useDialogContext(TITLE_NAME, __scopeDialog);
11281
+ return /* @__PURE__ */ jsx39(Primitive.h2, __spreadProps(__spreadValues({ id: context.titleId }, titleProps), { ref: forwardedRef }));
11282
+ }
11283
+ );
11284
+ DialogTitle.displayName = TITLE_NAME;
11285
+ var DESCRIPTION_NAME = "DialogDescription";
11286
+ var DialogDescription = React54.forwardRef(
11287
+ (props, forwardedRef) => {
11288
+ const _a = props, { __scopeDialog } = _a, descriptionProps = __objRest(_a, ["__scopeDialog"]);
11289
+ const context = useDialogContext(DESCRIPTION_NAME, __scopeDialog);
11290
+ return /* @__PURE__ */ jsx39(Primitive.p, __spreadProps(__spreadValues({ id: context.descriptionId }, descriptionProps), { ref: forwardedRef }));
11291
+ }
11292
+ );
11293
+ DialogDescription.displayName = DESCRIPTION_NAME;
11294
+ var CLOSE_NAME = "DialogClose";
11295
+ var DialogClose = React54.forwardRef(
11296
+ (props, forwardedRef) => {
11297
+ const _a = props, { __scopeDialog } = _a, closeProps = __objRest(_a, ["__scopeDialog"]);
11298
+ const context = useDialogContext(CLOSE_NAME, __scopeDialog);
11299
+ return /* @__PURE__ */ jsx39(
11300
+ Primitive.button,
11301
+ __spreadProps(__spreadValues({
11302
+ type: "button"
11303
+ }, closeProps), {
11304
+ ref: forwardedRef,
11305
+ onClick: composeEventHandlers(props.onClick, () => context.onOpenChange(false))
11306
+ })
11307
+ );
11308
+ }
11309
+ );
11310
+ DialogClose.displayName = CLOSE_NAME;
11311
+ function getState(open) {
11312
+ return open ? "open" : "closed";
11313
+ }
11314
+ var TITLE_WARNING_NAME = "DialogTitleWarning";
11315
+ var [WarningProvider, useWarningContext] = createContext2(TITLE_WARNING_NAME, {
11316
+ contentName: CONTENT_NAME,
11317
+ titleName: TITLE_NAME,
11318
+ docsSlug: "dialog"
11319
+ });
11320
+ var TitleWarning = ({ titleId }) => {
11321
+ const titleWarningContext = useWarningContext(TITLE_WARNING_NAME);
11322
+ const MESSAGE = `\`${titleWarningContext.contentName}\` requires a \`${titleWarningContext.titleName}\` for the component to be accessible for screen reader users.
11323
+
11324
+ If you want to hide the \`${titleWarningContext.titleName}\`, you can wrap it with our VisuallyHidden component.
11325
+
11326
+ For more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;
11327
+ React54.useEffect(() => {
11328
+ if (titleId) {
11329
+ const hasTitle = document.getElementById(titleId);
11330
+ if (!hasTitle) console.error(MESSAGE);
11331
+ }
11332
+ }, [MESSAGE, titleId]);
11333
+ return null;
11334
+ };
11335
+ var DESCRIPTION_WARNING_NAME = "DialogDescriptionWarning";
11336
+ var DescriptionWarning = ({ contentRef, descriptionId }) => {
11337
+ const descriptionWarningContext = useWarningContext(DESCRIPTION_WARNING_NAME);
11338
+ const MESSAGE = `Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${descriptionWarningContext.contentName}}.`;
11339
+ React54.useEffect(() => {
11340
+ var _a;
11341
+ const describedById = (_a = contentRef.current) == null ? void 0 : _a.getAttribute("aria-describedby");
11342
+ if (descriptionId && describedById) {
11343
+ const hasDescription = document.getElementById(descriptionId);
11344
+ if (!hasDescription) console.warn(MESSAGE);
11345
+ }
11346
+ }, [MESSAGE, contentRef, descriptionId]);
11347
+ return null;
11348
+ };
11349
+ var Root = Dialog;
11350
+ var Trigger = DialogTrigger;
11351
+ var Portal2 = DialogPortal;
11352
+ var Overlay = DialogOverlay;
11353
+ var Content = DialogContent;
11354
+ var Title = DialogTitle;
11355
+ var Description = DialogDescription;
11356
+ var Close = DialogClose;
11357
+
11358
+ // ../../node_modules/.pnpm/@radix-ui+react-alert-dialog@1.1.14_@types+react-dom@19.1.3_@types+react@19.1.2__@types_c6ff7006a888f63e36d2502e019661c3/node_modules/@radix-ui/react-alert-dialog/dist/index.mjs
11359
+ import { jsx as jsx40, jsxs as jsxs11 } from "react/jsx-runtime";
11360
+ var ROOT_NAME = "AlertDialog";
11361
+ var [createAlertDialogContext, createAlertDialogScope] = createContextScope(ROOT_NAME, [
11362
+ createDialogScope
11363
+ ]);
11364
+ var useDialogScope = createDialogScope();
11365
+ var AlertDialog = (props) => {
11366
+ const _a = props, { __scopeAlertDialog } = _a, alertDialogProps = __objRest(_a, ["__scopeAlertDialog"]);
11367
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11368
+ return /* @__PURE__ */ jsx40(Root, __spreadProps(__spreadValues(__spreadValues({}, dialogScope), alertDialogProps), { modal: true }));
11369
+ };
11370
+ AlertDialog.displayName = ROOT_NAME;
11371
+ var TRIGGER_NAME2 = "AlertDialogTrigger";
11372
+ var AlertDialogTrigger = React55.forwardRef(
11373
+ (props, forwardedRef) => {
11374
+ const _a = props, { __scopeAlertDialog } = _a, triggerProps = __objRest(_a, ["__scopeAlertDialog"]);
11375
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11376
+ return /* @__PURE__ */ jsx40(Trigger, __spreadProps(__spreadValues(__spreadValues({}, dialogScope), triggerProps), { ref: forwardedRef }));
11377
+ }
11378
+ );
11379
+ AlertDialogTrigger.displayName = TRIGGER_NAME2;
11380
+ var PORTAL_NAME3 = "AlertDialogPortal";
11381
+ var AlertDialogPortal = (props) => {
11382
+ const _a = props, { __scopeAlertDialog } = _a, portalProps = __objRest(_a, ["__scopeAlertDialog"]);
11383
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11384
+ return /* @__PURE__ */ jsx40(Portal2, __spreadValues(__spreadValues({}, dialogScope), portalProps));
11385
+ };
11386
+ AlertDialogPortal.displayName = PORTAL_NAME3;
11387
+ var OVERLAY_NAME2 = "AlertDialogOverlay";
11388
+ var AlertDialogOverlay = React55.forwardRef(
11389
+ (props, forwardedRef) => {
11390
+ const _a = props, { __scopeAlertDialog } = _a, overlayProps = __objRest(_a, ["__scopeAlertDialog"]);
11391
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11392
+ return /* @__PURE__ */ jsx40(Overlay, __spreadProps(__spreadValues(__spreadValues({}, dialogScope), overlayProps), { ref: forwardedRef }));
11393
+ }
11394
+ );
11395
+ AlertDialogOverlay.displayName = OVERLAY_NAME2;
11396
+ var CONTENT_NAME2 = "AlertDialogContent";
11397
+ var [AlertDialogContentProvider, useAlertDialogContentContext] = createAlertDialogContext(CONTENT_NAME2);
11398
+ var Slottable = createSlottable("AlertDialogContent");
11399
+ var AlertDialogContent = React55.forwardRef(
11400
+ (props, forwardedRef) => {
11401
+ const _a = props, { __scopeAlertDialog, children } = _a, contentProps = __objRest(_a, ["__scopeAlertDialog", "children"]);
11402
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11403
+ const contentRef = React55.useRef(null);
11404
+ const composedRefs = useComposedRefs(forwardedRef, contentRef);
11405
+ const cancelRef = React55.useRef(null);
11406
+ return /* @__PURE__ */ jsx40(
11407
+ WarningProvider,
11408
+ {
11409
+ contentName: CONTENT_NAME2,
11410
+ titleName: TITLE_NAME2,
11411
+ docsSlug: "alert-dialog",
11412
+ children: /* @__PURE__ */ jsx40(AlertDialogContentProvider, { scope: __scopeAlertDialog, cancelRef, children: /* @__PURE__ */ jsxs11(
11413
+ Content,
11414
+ __spreadProps(__spreadValues(__spreadValues({
11415
+ role: "alertdialog"
11416
+ }, dialogScope), contentProps), {
11417
+ ref: composedRefs,
11418
+ onOpenAutoFocus: composeEventHandlers(contentProps.onOpenAutoFocus, (event) => {
11419
+ var _a2;
11420
+ event.preventDefault();
11421
+ (_a2 = cancelRef.current) == null ? void 0 : _a2.focus({ preventScroll: true });
11422
+ }),
11423
+ onPointerDownOutside: (event) => event.preventDefault(),
11424
+ onInteractOutside: (event) => event.preventDefault(),
11425
+ children: [
11426
+ /* @__PURE__ */ jsx40(Slottable, { children }),
11427
+ /* @__PURE__ */ jsx40(DescriptionWarning2, { contentRef })
11428
+ ]
11429
+ })
11430
+ ) })
11431
+ }
11432
+ );
11433
+ }
11434
+ );
11435
+ AlertDialogContent.displayName = CONTENT_NAME2;
11436
+ var TITLE_NAME2 = "AlertDialogTitle";
11437
+ var AlertDialogTitle = React55.forwardRef(
11438
+ (props, forwardedRef) => {
11439
+ const _a = props, { __scopeAlertDialog } = _a, titleProps = __objRest(_a, ["__scopeAlertDialog"]);
11440
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11441
+ return /* @__PURE__ */ jsx40(Title, __spreadProps(__spreadValues(__spreadValues({}, dialogScope), titleProps), { ref: forwardedRef }));
11442
+ }
11443
+ );
11444
+ AlertDialogTitle.displayName = TITLE_NAME2;
11445
+ var DESCRIPTION_NAME2 = "AlertDialogDescription";
11446
+ var AlertDialogDescription = React55.forwardRef((props, forwardedRef) => {
11447
+ const _a = props, { __scopeAlertDialog } = _a, descriptionProps = __objRest(_a, ["__scopeAlertDialog"]);
11448
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11449
+ return /* @__PURE__ */ jsx40(Description, __spreadProps(__spreadValues(__spreadValues({}, dialogScope), descriptionProps), { ref: forwardedRef }));
11450
+ });
11451
+ AlertDialogDescription.displayName = DESCRIPTION_NAME2;
11452
+ var ACTION_NAME = "AlertDialogAction";
11453
+ var AlertDialogAction = React55.forwardRef(
11454
+ (props, forwardedRef) => {
11455
+ const _a = props, { __scopeAlertDialog } = _a, actionProps = __objRest(_a, ["__scopeAlertDialog"]);
11456
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11457
+ return /* @__PURE__ */ jsx40(Close, __spreadProps(__spreadValues(__spreadValues({}, dialogScope), actionProps), { ref: forwardedRef }));
11458
+ }
11459
+ );
11460
+ AlertDialogAction.displayName = ACTION_NAME;
11461
+ var CANCEL_NAME = "AlertDialogCancel";
11462
+ var AlertDialogCancel = React55.forwardRef(
11463
+ (props, forwardedRef) => {
11464
+ const _a = props, { __scopeAlertDialog } = _a, cancelProps = __objRest(_a, ["__scopeAlertDialog"]);
11465
+ const { cancelRef } = useAlertDialogContentContext(CANCEL_NAME, __scopeAlertDialog);
11466
+ const dialogScope = useDialogScope(__scopeAlertDialog);
11467
+ const ref2 = useComposedRefs(forwardedRef, cancelRef);
11468
+ return /* @__PURE__ */ jsx40(Close, __spreadProps(__spreadValues(__spreadValues({}, dialogScope), cancelProps), { ref: ref2 }));
11469
+ }
11470
+ );
11471
+ AlertDialogCancel.displayName = CANCEL_NAME;
11472
+ var DescriptionWarning2 = ({ contentRef }) => {
11473
+ const MESSAGE = `\`${CONTENT_NAME2}\` requires a description for the component to be accessible for screen reader users.
11474
+
11475
+ You can add a description to the \`${CONTENT_NAME2}\` by passing a \`${DESCRIPTION_NAME2}\` component as a child, which also benefits sighted users by adding visible context to the dialog.
11476
+
11477
+ Alternatively, you can use your own component as a description by assigning it an \`id\` and passing the same value to the \`aria-describedby\` prop in \`${CONTENT_NAME2}\`. If the description is confusing or duplicative for sighted users, you can use the \`@radix-ui/react-visually-hidden\` primitive as a wrapper around your description component.
11478
+
11479
+ For more information, see https://radix-ui.com/primitives/docs/components/alert-dialog`;
11480
+ React55.useEffect(() => {
11481
+ var _a;
11482
+ const hasDescription = document.getElementById(
11483
+ (_a = contentRef.current) == null ? void 0 : _a.getAttribute("aria-describedby")
11484
+ );
11485
+ if (!hasDescription) console.warn(MESSAGE);
11486
+ }, [MESSAGE, contentRef]);
11487
+ return null;
11488
+ };
11489
+ var Portal22 = AlertDialogPortal;
11490
+ var Overlay2 = AlertDialogOverlay;
11491
+ var Content2 = AlertDialogContent;
11492
+ var Action = AlertDialogAction;
11493
+ var Cancel = AlertDialogCancel;
11494
+ var Title2 = AlertDialogTitle;
11495
+ var Description2 = AlertDialogDescription;
11496
+
11497
+ // ../lib/src/utils.ts
11498
+ import { clsx } from "clsx";
11499
+ import { twMerge } from "tailwind-merge";
11500
+ function cn(...inputs) {
11501
+ return twMerge(clsx(inputs));
11502
+ }
11503
+
11504
+ // ../base-ui/src/ui/button.tsx
11505
+ import * as React56 from "react";
11506
+ import { cva } from "class-variance-authority";
11507
+ import { jsx as jsx41, jsxs as jsxs12 } from "react/jsx-runtime";
11508
+ var buttonVariants = cva(
11509
+ "inline-flex items-center gap-2 whitespace-nowrap rounded-md text-sm ring-offset-background transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
11510
+ {
11511
+ variants: {
11512
+ variant: {
11513
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
11514
+ destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
11515
+ outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground",
11516
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
11517
+ ghost: "hover:bg-accent hover:text-accent-foreground",
11518
+ link: "text-primary underline-offset-4 hover:underline"
11519
+ },
11520
+ size: {
11521
+ default: "h-10 px-4 py-2",
11522
+ sm: "h-9 rounded-md px-3",
11523
+ lg: "h-11 rounded-md px-8",
11524
+ icon: "h-10 w-10"
11525
+ }
11526
+ },
11527
+ defaultVariants: {
11528
+ variant: "default",
11529
+ size: "default"
11530
+ }
11531
+ }
11532
+ );
11533
+ var Button = React56.forwardRef(
11534
+ (_a, ref2) => {
11535
+ var _b = _a, { className, variant, size, asChild = false, loading = false, children } = _b, props = __objRest(_b, ["className", "variant", "size", "asChild", "loading", "children"]);
11536
+ const Comp = asChild ? Slot : "button";
11537
+ if (asChild) {
11538
+ return /* @__PURE__ */ jsx41(
11539
+ Comp,
11540
+ __spreadProps(__spreadValues({
11541
+ className: cn(buttonVariants({ variant, size, className })),
11542
+ ref: ref2,
11543
+ disabled: loading || props.disabled
11544
+ }, props), {
11545
+ children
11546
+ })
11547
+ );
11548
+ }
11549
+ return /* @__PURE__ */ jsxs12(
11550
+ Comp,
11551
+ __spreadProps(__spreadValues({
11552
+ className: cn(buttonVariants({ variant, size, className })),
11553
+ ref: ref2,
11554
+ disabled: loading || props.disabled
11555
+ }, props), {
11556
+ children: [
11557
+ children,
11558
+ loading && /* @__PURE__ */ jsx41(globalLucideIcons.Loader2, { className: "ml-2 h-4 w-4 animate-spin" })
11559
+ ]
11560
+ })
11561
+ );
11562
+ }
11563
+ );
11564
+ Button.displayName = "Button";
11565
+
11566
+ // ../base-ui/src/ui/alert-dialog.tsx
11567
+ import { jsx as jsx42, jsxs as jsxs13 } from "react/jsx-runtime";
11568
+ var AlertDialogPortal2 = Portal22;
11569
+ var AlertDialogOverlay2 = React57.forwardRef((_a, ref2) => {
11570
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
11571
+ return /* @__PURE__ */ jsx42(
11572
+ Overlay2,
11573
+ __spreadProps(__spreadValues({
11574
+ className: cn(
11575
+ "fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
11576
+ className
11577
+ )
11578
+ }, props), {
11579
+ ref: ref2
11580
+ })
11581
+ );
11582
+ });
11583
+ AlertDialogOverlay2.displayName = Overlay2.displayName;
11584
+ var AlertDialogContent2 = React57.forwardRef((_a, ref2) => {
11585
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
11586
+ return /* @__PURE__ */ jsxs13(AlertDialogPortal2, { children: [
11587
+ /* @__PURE__ */ jsx42(AlertDialogOverlay2, {}),
11588
+ /* @__PURE__ */ jsx42(
11589
+ Content2,
11590
+ __spreadValues({
11591
+ ref: ref2,
11592
+ className: cn(
11593
+ "fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",
11594
+ className
11595
+ )
11596
+ }, props)
11597
+ )
11598
+ ] });
11599
+ });
11600
+ AlertDialogContent2.displayName = Content2.displayName;
11601
+ var AlertDialogHeader = (_a) => {
11602
+ var _b = _a, {
11603
+ className
11604
+ } = _b, props = __objRest(_b, [
11605
+ "className"
11606
+ ]);
11607
+ return /* @__PURE__ */ jsx42(
11608
+ "div",
11609
+ __spreadValues({
11610
+ className: cn(
11611
+ "flex flex-col space-y-2 text-center sm:text-left",
11612
+ className
11613
+ )
11614
+ }, props)
11615
+ );
11616
+ };
11617
+ AlertDialogHeader.displayName = "AlertDialogHeader";
11618
+ var AlertDialogFooter = (_a) => {
11619
+ var _b = _a, {
11620
+ className
11621
+ } = _b, props = __objRest(_b, [
11622
+ "className"
11623
+ ]);
11624
+ return /* @__PURE__ */ jsx42(
11625
+ "div",
11626
+ __spreadValues({
11627
+ className: cn(
11628
+ "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
11629
+ className
11630
+ )
11631
+ }, props)
11632
+ );
11633
+ };
11634
+ AlertDialogFooter.displayName = "AlertDialogFooter";
11635
+ var AlertDialogTitle2 = React57.forwardRef((_a, ref2) => {
11636
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
11637
+ return /* @__PURE__ */ jsx42(
11638
+ Title2,
11639
+ __spreadValues({
11640
+ ref: ref2,
11641
+ className: cn("text-lg font-semibold", className)
11642
+ }, props)
11643
+ );
11644
+ });
11645
+ AlertDialogTitle2.displayName = Title2.displayName;
11646
+ var AlertDialogDescription2 = React57.forwardRef((_a, ref2) => {
11647
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
11648
+ return /* @__PURE__ */ jsx42(
11649
+ Description2,
11650
+ __spreadValues({
11651
+ ref: ref2,
11652
+ className: cn("text-sm text-muted-foreground", className)
11653
+ }, props)
11654
+ );
11655
+ });
11656
+ AlertDialogDescription2.displayName = Description2.displayName;
11657
+ var AlertDialogAction2 = React57.forwardRef((_a, ref2) => {
11658
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
11659
+ return /* @__PURE__ */ jsx42(
11660
+ Action,
11661
+ __spreadValues({
11662
+ ref: ref2,
11663
+ className: cn(buttonVariants(), className)
11664
+ }, props)
11665
+ );
11666
+ });
11667
+ AlertDialogAction2.displayName = Action.displayName;
11668
+ var AlertDialogCancel2 = React57.forwardRef((_a, ref2) => {
11669
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
11670
+ return /* @__PURE__ */ jsx42(
11671
+ Cancel,
11672
+ __spreadValues({
11673
+ ref: ref2,
11674
+ className: cn(
11675
+ buttonVariants({ variant: "outline" }),
11676
+ "mt-2 sm:mt-0",
11677
+ className
11678
+ )
11679
+ }, props)
11680
+ );
11681
+ });
11682
+ AlertDialogCancel2.displayName = Cancel.displayName;
11683
+
11684
+ // src/fuma/mdx/mermaid.tsx
11685
+ import { jsx as jsx43, jsxs as jsxs14 } from "react/jsx-runtime";
11686
+
11687
+ // src/fuma/mdx/image-zoom.tsx
11688
+ import { Image } from "fumadocs-core/framework";
11689
+ import { useState as useState11 } from "react";
11690
+ import Zoom from "react-medium-image-zoom";
11691
+ import { jsx as jsx44 } from "react/jsx-runtime";
11692
+
11693
+ // src/fuma/mdx/trophy-card.tsx
11694
+ import { jsx as jsx45, jsxs as jsxs15 } from "react/jsx-runtime";
11695
+
11696
+ // src/fuma/mdx/image-grid.tsx
11697
+ import { jsx as jsx46 } from "react/jsx-runtime";
11698
+
11699
+ // src/fuma/mdx/zia-card.tsx
11700
+ import Link2 from "next/link";
11701
+ import { jsx as jsx47, jsxs as jsxs16 } from "react/jsx-runtime";
11702
+
11703
+ // src/fuma/mdx/gradient-button.tsx
11704
+ import Link3 from "next/link";
11705
+ import React58, { useState as useState12 } from "react";
11706
+ import { Fragment as Fragment6, jsx as jsx48, jsxs as jsxs17 } from "react/jsx-runtime";
11707
+
11708
+ // src/fuma/mdx/toc-base.tsx
11709
+ import { useState as useState13 } from "react";
11710
+ import { useParams } from "next/navigation";
11711
+ import { useCopyButton } from "fumadocs-ui/utils/use-copy-button";
11712
+ import Link4 from "fumadocs-core/link";
11713
+ import { Fragment as Fragment7, jsx as jsx49, jsxs as jsxs18 } from "react/jsx-runtime";
11714
+ function EditOnGitHub({ url }) {
11715
+ return /* @__PURE__ */ jsxs18(
11716
+ Link4,
11717
+ {
11718
+ className: "flex items-center gap-x-2 text-stone-600 hover:text-stone-500 dark:text-stone-400 dark:hover:text-stone-300 text-sm",
11719
+ href: url,
11720
+ children: [
11721
+ /* @__PURE__ */ jsx49(globalLucideIcons.GitHub, {}),
11722
+ "Edit this page on GitHub"
11723
+ ]
11724
+ }
11725
+ );
11726
+ }
11727
+ function LastUpdatedDate({ date }) {
11728
+ return /* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-x-2 text-stone-600 dark:text-stone-400 text-sm", children: [
11729
+ /* @__PURE__ */ jsx49(globalLucideIcons.LastUpdated, {}),
11730
+ "Lastest on ",
11731
+ date ? date : "Ages ago"
11732
+ ] });
11733
+ }
11734
+
11735
+ // src/fuma/mdx/fuma-banner-suit.tsx
11736
+ import { useTranslations } from "next-intl";
11737
+
11738
+ // src/fuma/mdx/banner.tsx
11739
+ import { cva as cva2 } from "class-variance-authority";
11740
+ import { useEffect as useEffect16, useState as useState14 } from "react";
11741
+ import { Fragment as Fragment8, jsx as jsx50, jsxs as jsxs19 } from "react/jsx-runtime";
9471
11742
  var buttonVariants2 = cva2(
9472
11743
  "inline-flex items-center justify-center rounded-md p-2 text-sm font-medium transition-colors duration-100 disabled:pointer-events-none disabled:opacity-50",
9473
11744
  {
@@ -9488,39 +11759,39 @@ var buttonVariants2 = cva2(
9488
11759
  );
9489
11760
 
9490
11761
  // src/fuma/mdx/fuma-banner-suit.tsx
9491
- import { Fragment as Fragment6, jsx as jsx43 } from "react/jsx-runtime";
11762
+ import { Fragment as Fragment9, jsx as jsx51 } from "react/jsx-runtime";
9492
11763
 
9493
11764
  // src/fuma/mdx/fuma-github-info.tsx
9494
- import { useEffect as useEffect3, useState as useState6 } from "react";
9495
- import { jsx as jsx44, jsxs as jsxs17 } from "react/jsx-runtime";
11765
+ import { useEffect as useEffect17, useState as useState15 } from "react";
11766
+ import { jsx as jsx52, jsxs as jsxs20 } from "react/jsx-runtime";
9496
11767
 
9497
11768
  // src/fuma/mdx/site-x.tsx
9498
11769
  import { useTranslations as useTranslations2 } from "next-intl";
9499
- import { jsx as jsx45 } from "react/jsx-runtime";
11770
+ import { jsx as jsx53 } from "react/jsx-runtime";
9500
11771
 
9501
11772
  // src/fuma/mdx/zia-file.tsx
9502
- import { useState as useState7 } from "react";
11773
+ import { useState as useState16 } from "react";
9503
11774
  import {
9504
11775
  Collapsible,
9505
11776
  CollapsibleContent,
9506
11777
  CollapsibleTrigger
9507
11778
  } from "fumadocs-ui/components/ui/collapsible";
9508
11779
  import Link5 from "next/link";
9509
- import { jsx as jsx46, jsxs as jsxs18 } from "react/jsx-runtime";
11780
+ import { jsx as jsx54, jsxs as jsxs21 } from "react/jsx-runtime";
9510
11781
 
9511
11782
  // src/fuma/mdx/toc-footer-wrapper.tsx
9512
- import { jsx as jsx47, jsxs as jsxs19 } from "react/jsx-runtime";
11783
+ import { jsx as jsx55, jsxs as jsxs22 } from "react/jsx-runtime";
9513
11784
  function TocFooterWrapper({ lastModified, editPath, githubBaseUrl, copyButtonComponent }) {
9514
11785
  const showEdit = githubBaseUrl && editPath;
9515
- return /* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-y-2 items-start m-4", children: [
9516
- /* @__PURE__ */ jsx47(LastUpdatedDate, { date: lastModified }),
11786
+ return /* @__PURE__ */ jsxs22("div", { className: "flex flex-col gap-y-2 items-start m-4", children: [
11787
+ /* @__PURE__ */ jsx55(LastUpdatedDate, { date: lastModified }),
9517
11788
  copyButtonComponent,
9518
- showEdit && /* @__PURE__ */ jsx47(EditOnGitHub, { url: `${githubBaseUrl}${editPath}` })
11789
+ showEdit && /* @__PURE__ */ jsx55(EditOnGitHub, { url: `${githubBaseUrl}${editPath}` })
9519
11790
  ] });
9520
11791
  }
9521
11792
 
9522
11793
  // src/fuma/fuma-page-genarator.tsx
9523
- import { jsx as jsx48, jsxs as jsxs20 } from "react/jsx-runtime";
11794
+ import { jsx as jsx56, jsxs as jsxs23 } from "react/jsx-runtime";
9524
11795
  function createFumaPage({
9525
11796
  sourceKey,
9526
11797
  mdxContentSource,
@@ -9537,20 +11808,20 @@ function createFumaPage({
9537
11808
  const { slug, locale } = yield params;
9538
11809
  const page = mdxContentSource.getPage(slug, locale);
9539
11810
  if (!page) {
9540
- return /* @__PURE__ */ jsx48(FallbackPage, { siteIcon });
11811
+ return /* @__PURE__ */ jsx56(FallbackPage, { siteIcon });
9541
11812
  }
9542
11813
  const path2 = githubBaseUrl ? `${mdxSourceDir}/${page.file.path}` : void 0;
9543
- const tocFooterElement = /* @__PURE__ */ jsx48(
11814
+ const tocFooterElement = /* @__PURE__ */ jsx56(
9544
11815
  TocFooterWrapper,
9545
11816
  {
9546
11817
  lastModified: page.data.date,
9547
- copyButtonComponent: copyButtonComponent ? cloneElement2(copyButtonComponent, { sourceKey }) : void 0,
11818
+ copyButtonComponent: copyButtonComponent ? cloneElement4(copyButtonComponent, { sourceKey }) : void 0,
9548
11819
  editPath: path2,
9549
11820
  githubBaseUrl
9550
11821
  }
9551
11822
  );
9552
11823
  const MDX = page.data.body;
9553
- return /* @__PURE__ */ jsxs20(
11824
+ return /* @__PURE__ */ jsxs23(
9554
11825
  DocsPage,
9555
11826
  {
9556
11827
  tableOfContent: { style: "clerk", single: false, footer: tocFooterElement },
@@ -9559,9 +11830,9 @@ function createFumaPage({
9559
11830
  full: page.data.full,
9560
11831
  article: { className: "max-sm:pb-16" },
9561
11832
  children: [
9562
- /* @__PURE__ */ jsx48(DocsTitle, { children: page.data.title }),
9563
- /* @__PURE__ */ jsx48(DocsDescription, { className: "mb-2", children: page.data.description }),
9564
- /* @__PURE__ */ jsx48(DocsBody, { className: "text-fd-foreground/80", children: /* @__PURE__ */ jsx48(MDX, { components: getMDXComponents() }) })
11833
+ /* @__PURE__ */ jsx56(DocsTitle, { children: page.data.title }),
11834
+ /* @__PURE__ */ jsx56(DocsDescription, { className: "mb-2", children: page.data.description }),
11835
+ /* @__PURE__ */ jsx56(DocsBody, { className: "text-fd-foreground/80", children: /* @__PURE__ */ jsx56(MDX, { components: getMDXComponents() }) })
9565
11836
  ]
9566
11837
  }
9567
11838
  );
@@ -9585,11 +11856,9 @@ function createFumaPage({
9585
11856
  const currentPath = slug ? slug.join("/") : "";
9586
11857
  const currentUrl = `${baseUrl}/${locale}/${baseRoute}${currentPath ? `/${currentPath}` : ""}`;
9587
11858
  const seoLanguageMap = {};
9588
- console.log("supportedLocales", supportedLocales);
9589
11859
  supportedLocales.forEach((loc) => {
9590
11860
  seoLanguageMap[loc] = `${baseUrl}/${loc}/${baseRoute}${currentPath ? `/${currentPath}` : ""}`;
9591
11861
  });
9592
- console.log("seoLanguageMap", seoLanguageMap);
9593
11862
  return {
9594
11863
  metadataBase: new URL(baseUrl),
9595
11864
  title: page.data.title,
@@ -13013,9 +15282,9 @@ var SpliceBuffer = class {
13013
15282
  * Any removed items.
13014
15283
  */
13015
15284
  splice(start2, deleteCount, items) {
13016
- const count = deleteCount || 0;
15285
+ const count3 = deleteCount || 0;
13017
15286
  this.setCursor(Math.trunc(start2));
13018
- const removed = this.right.splice(this.right.length - count, Number.POSITIVE_INFINITY);
15287
+ const removed = this.right.splice(this.right.length - count3, Number.POSITIVE_INFINITY);
13019
15288
  if (items) chunkedPush(this.left, items);
13020
15289
  return removed.reverse();
13021
15290
  }
@@ -15633,7 +17902,7 @@ function serializeChunks(chunks, expandTabs) {
15633
17902
  }
15634
17903
 
15635
17904
  // ../../node_modules/.pnpm/micromark@4.0.2/node_modules/micromark/lib/parse.js
15636
- function parse(options) {
17905
+ function parse2(options) {
15637
17906
  const settings = options || {};
15638
17907
  const constructs2 = (
15639
17908
  /** @type {FullNormalizedExtension} */
@@ -15795,7 +18064,7 @@ function fromMarkdown(value2, encoding, options) {
15795
18064
  options = encoding;
15796
18065
  encoding = void 0;
15797
18066
  }
15798
- return compiler(options)(postprocess(parse(options).document().write(preprocess()(value2, encoding, true))));
18067
+ return compiler(options)(postprocess(parse2(options).document().write(preprocess()(value2, encoding, true))));
15799
18068
  }
15800
18069
  function compiler(options) {
15801
18070
  const config = {
@@ -16634,18 +18903,18 @@ function longestStreak(value2, substring) {
16634
18903
  const source = String(value2);
16635
18904
  let index2 = source.indexOf(substring);
16636
18905
  let expected = index2;
16637
- let count = 0;
18906
+ let count3 = 0;
16638
18907
  let max = 0;
16639
18908
  if (typeof substring !== "string") {
16640
18909
  throw new TypeError("Expected substring");
16641
18910
  }
16642
18911
  while (index2 !== -1) {
16643
18912
  if (index2 === expected) {
16644
- if (++count > max) {
16645
- max = count;
18913
+ if (++count3 > max) {
18914
+ max = count3;
16646
18915
  }
16647
18916
  } else {
16648
- count = 1;
18917
+ count3 = 1;
16649
18918
  }
16650
18919
  expected = index2 + substring.length;
16651
18920
  index2 = source.indexOf(substring, expected);
@@ -18268,7 +20537,7 @@ function wrap(middleware, callback) {
18268
20537
  }
18269
20538
  }
18270
20539
 
18271
- // ../../node_modules/.pnpm/vfile-message@4.0.2/node_modules/vfile-message/lib/index.js
20540
+ // ../../node_modules/.pnpm/vfile-message@4.0.3/node_modules/vfile-message/lib/index.js
18272
20541
  var VFileMessage = class extends Error {
18273
20542
  /**
18274
20543
  * Create a message for `reason`.
@@ -18375,7 +20644,7 @@ var VFileMessage = class extends Error {
18375
20644
  this.cause = options.cause || void 0;
18376
20645
  this.column = start2 ? start2.column : void 0;
18377
20646
  this.fatal = void 0;
18378
- this.file;
20647
+ this.file = "";
18379
20648
  this.message = reason;
18380
20649
  this.line = start2 ? start2.line : void 0;
18381
20650
  this.name = stringifyPosition(options.place) || "1:1";
@@ -18384,10 +20653,10 @@ var VFileMessage = class extends Error {
18384
20653
  this.ruleId = options.ruleId || void 0;
18385
20654
  this.source = options.source || void 0;
18386
20655
  this.stack = legacyCause && options.cause && typeof options.cause.stack === "string" ? options.cause.stack : "";
18387
- this.actual;
18388
- this.expected;
18389
- this.note;
18390
- this.url;
20656
+ this.actual = void 0;
20657
+ this.expected = void 0;
20658
+ this.note = void 0;
20659
+ this.url = void 0;
18391
20660
  }
18392
20661
  };
18393
20662
  VFileMessage.prototype.file = "";
@@ -19551,13 +21820,13 @@ function ccount(value2, character) {
19551
21820
  if (typeof character !== "string") {
19552
21821
  throw new TypeError("Expected character");
19553
21822
  }
19554
- let count = 0;
21823
+ let count3 = 0;
19555
21824
  let index2 = source.indexOf(character);
19556
21825
  while (index2 !== -1) {
19557
- count++;
21826
+ count3++;
19558
21827
  index2 = source.indexOf(character, index2 + character.length);
19559
21828
  }
19560
- return count;
21829
+ return count3;
19561
21830
  }
19562
21831
 
19563
21832
  // ../../node_modules/.pnpm/escape-string-regexp@5.0.0/node_modules/escape-string-regexp/index.js
@@ -23174,7 +25443,7 @@ var Parser = function Parser2(options, input, startPos) {
23174
25443
  this.privateNameStack = [];
23175
25444
  };
23176
25445
  var prototypeAccessors = { inFunction: { configurable: true }, inGenerator: { configurable: true }, inAsync: { configurable: true }, canAwait: { configurable: true }, allowSuper: { configurable: true }, allowDirectSuper: { configurable: true }, treatFunctionsAsVar: { configurable: true }, allowNewDotTarget: { configurable: true }, inClassStaticBlock: { configurable: true } };
23177
- Parser.prototype.parse = function parse2() {
25446
+ Parser.prototype.parse = function parse3() {
23178
25447
  var node2 = this.options.program || this.startNode();
23179
25448
  this.nextToken();
23180
25449
  return this.parseTopLevel(node2);
@@ -23234,7 +25503,7 @@ Parser.extend = function extend2() {
23234
25503
  }
23235
25504
  return cls;
23236
25505
  };
23237
- Parser.parse = function parse3(input, options) {
25506
+ Parser.parse = function parse4(input, options) {
23238
25507
  return new this(options, input).parse();
23239
25508
  };
23240
25509
  Parser.parseExpressionAt = function parseExpressionAt(input, pos, options) {
@@ -26037,7 +28306,7 @@ pp$3.currentThisScope = function() {
26037
28306
  }
26038
28307
  }
26039
28308
  };
26040
- var Node = function Node2(parser, pos, loc) {
28309
+ var Node2 = function Node3(parser, pos, loc) {
26041
28310
  this.type = "";
26042
28311
  this.start = pos;
26043
28312
  this.end = 0;
@@ -26053,10 +28322,10 @@ var Node = function Node2(parser, pos, loc) {
26053
28322
  };
26054
28323
  var pp$2 = Parser.prototype;
26055
28324
  pp$2.startNode = function() {
26056
- return new Node(this, this.start, this.startLoc);
28325
+ return new Node2(this, this.start, this.startLoc);
26057
28326
  };
26058
28327
  pp$2.startNodeAt = function(pos, loc) {
26059
- return new Node(this, pos, loc);
28328
+ return new Node2(this, pos, loc);
26060
28329
  };
26061
28330
  function finishNodeAt(node2, type, pos, loc) {
26062
28331
  node2.type = type;
@@ -26076,7 +28345,7 @@ pp$2.finishNodeAt = function(node2, type, pos, loc) {
26076
28345
  return finishNodeAt.call(this, node2, type, pos, loc);
26077
28346
  };
26078
28347
  pp$2.copyNode = function(node2) {
26079
- var newNode = new Node(this, node2.start, this.startLoc);
28348
+ var newNode = new Node2(this, node2.start, this.startLoc);
26080
28349
  for (var prop in node2) {
26081
28350
  newNode[prop] = node2[prop];
26082
28351
  }
@@ -27277,11 +29546,11 @@ pp$1.regexp_classStringDisjunctionContents = function(state) {
27277
29546
  return result;
27278
29547
  };
27279
29548
  pp$1.regexp_classString = function(state) {
27280
- var count = 0;
29549
+ var count3 = 0;
27281
29550
  while (this.regexp_eatClassSetCharacter(state)) {
27282
- count++;
29551
+ count3++;
27283
29552
  }
27284
- return count === 1 ? CharSetOk : CharSetString;
29553
+ return count3 === 1 ? CharSetOk : CharSetString;
27285
29554
  };
27286
29555
  pp$1.regexp_eatClassSetCharacter = function(state) {
27287
29556
  var start2 = state.pos;
@@ -28288,7 +30557,7 @@ Parser.acorn = {
28288
30557
  Position,
28289
30558
  SourceLocation,
28290
30559
  getLineInfo,
28291
- Node,
30560
+ Node: Node2,
28292
30561
  TokenType,
28293
30562
  tokTypes: types$1,
28294
30563
  keywordTypes: keywords,
@@ -30047,6 +32316,7 @@ lucide-react/dist/esm/icons/mail.js:
30047
32316
  lucide-react/dist/esm/icons/message-circle-code.js:
30048
32317
  lucide-react/dist/esm/icons/message-circle-more.js:
30049
32318
  lucide-react/dist/esm/icons/mouse-pointer-click.js:
32319
+ lucide-react/dist/esm/icons/music-4.js:
30050
32320
  lucide-react/dist/esm/icons/notepad-text.js:
30051
32321
  lucide-react/dist/esm/icons/palette.js:
30052
32322
  lucide-react/dist/esm/icons/panel-left.js: