@x-plat/design-system 0.5.24 → 0.5.27

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.
package/dist/index.js CHANGED
@@ -6037,7 +6037,32 @@ var Calendar_default = Calendar;
6037
6037
 
6038
6038
  // src/components/ChatInput/ChatInput.tsx
6039
6039
  import React4 from "react";
6040
- import { jsx as jsx302, jsxs as jsxs194 } from "react/jsx-runtime";
6040
+
6041
+ // src/components/IconButton/IconButton.tsx
6042
+ import { jsx as jsx302 } from "react/jsx-runtime";
6043
+ var IconButton = (props) => {
6044
+ const {
6045
+ icon,
6046
+ type = "primary",
6047
+ size = "md",
6048
+ disabled,
6049
+ ...rest
6050
+ } = props;
6051
+ return /* @__PURE__ */ jsx302(
6052
+ "button",
6053
+ {
6054
+ className: clsx_default("lib-xplat-icon-button", type, size),
6055
+ disabled,
6056
+ ...rest,
6057
+ children: icon
6058
+ }
6059
+ );
6060
+ };
6061
+ IconButton.displayName = "IconButton";
6062
+ var IconButton_default = IconButton;
6063
+
6064
+ // src/components/ChatInput/ChatInput.tsx
6065
+ import { jsx as jsx303, jsxs as jsxs194 } from "react/jsx-runtime";
6041
6066
  var MAX_HEIGHT = 200;
6042
6067
  var ChatInput = React4.forwardRef(
6043
6068
  (props, ref) => {
@@ -6089,7 +6114,7 @@ var ChatInput = React4.forwardRef(
6089
6114
  updateHeight();
6090
6115
  }, [value, updateHeight]);
6091
6116
  return /* @__PURE__ */ jsxs194("div", { className: clsx_default("lib-xplat-chat-input", disabled && "disabled"), children: [
6092
- /* @__PURE__ */ jsx302(
6117
+ /* @__PURE__ */ jsx303(
6093
6118
  "textarea",
6094
6119
  {
6095
6120
  ref: setRefs,
@@ -6102,15 +6127,15 @@ var ChatInput = React4.forwardRef(
6102
6127
  onKeyDown: handleKeyDown
6103
6128
  }
6104
6129
  ),
6105
- /* @__PURE__ */ jsx302(
6106
- "button",
6130
+ /* @__PURE__ */ jsx303(
6131
+ IconButton_default,
6107
6132
  {
6108
- type: "button",
6109
- className: clsx_default("chat-input-send", `btn-${buttonType}`),
6133
+ icon: /* @__PURE__ */ jsx303(MessageSquareIcon_default, {}),
6134
+ type: buttonType,
6135
+ size: "sm",
6110
6136
  disabled: !hasText || disabled,
6111
6137
  onClick: handleSubmit,
6112
- "aria-label": "\uC804\uC1A1",
6113
- children: /* @__PURE__ */ jsx302(SendIcon_default, {})
6138
+ "aria-label": "\uC804\uC1A1"
6114
6139
  }
6115
6140
  )
6116
6141
  ] });
@@ -6120,7 +6145,7 @@ ChatInput.displayName = "ChatInput";
6120
6145
  var ChatInput_default = ChatInput;
6121
6146
 
6122
6147
  // src/components/Box/Box.tsx
6123
- import { jsx as jsx303, jsxs as jsxs195 } from "react/jsx-runtime";
6148
+ import { jsx as jsx304, jsxs as jsxs195 } from "react/jsx-runtime";
6124
6149
  var Box = ({
6125
6150
  children,
6126
6151
  title,
@@ -6128,8 +6153,8 @@ var Box = ({
6128
6153
  padding = "md"
6129
6154
  }) => {
6130
6155
  return /* @__PURE__ */ jsxs195("div", { className: clsx_default("lib-xplat-box", variant, `pad-${padding}`), children: [
6131
- title && /* @__PURE__ */ jsx303("div", { className: "box-title", children: title }),
6132
- /* @__PURE__ */ jsx303("div", { className: "box-content", children })
6156
+ title && /* @__PURE__ */ jsx304("div", { className: "box-title", children: title }),
6157
+ /* @__PURE__ */ jsx304("div", { className: "box-content", children })
6133
6158
  ] });
6134
6159
  };
6135
6160
  Box.displayName = "Box";
@@ -6139,10 +6164,10 @@ var Box_default = Box;
6139
6164
  import React5 from "react";
6140
6165
 
6141
6166
  // src/components/CardTab/CardTabPanel.tsx
6142
- import { jsx as jsx304 } from "react/jsx-runtime";
6167
+ import { jsx as jsx305 } from "react/jsx-runtime";
6143
6168
  var CardTabPanel = (props) => {
6144
6169
  const { children, columns = 3 } = props;
6145
- return /* @__PURE__ */ jsx304(
6170
+ return /* @__PURE__ */ jsx305(
6146
6171
  "div",
6147
6172
  {
6148
6173
  className: "card-tab-panel",
@@ -6155,7 +6180,7 @@ CardTabPanel.displayName = "CardTab.Panel";
6155
6180
  var CardTabPanel_default = CardTabPanel;
6156
6181
 
6157
6182
  // src/components/CardTab/CardTab.tsx
6158
- import { jsx as jsx305, jsxs as jsxs196 } from "react/jsx-runtime";
6183
+ import { jsx as jsx306, jsxs as jsxs196 } from "react/jsx-runtime";
6159
6184
  var CardTabRoot = (props) => {
6160
6185
  const {
6161
6186
  tabs,
@@ -6180,9 +6205,9 @@ var CardTabRoot = (props) => {
6180
6205
  (panel) => panel.props.value === activeValue
6181
6206
  );
6182
6207
  return /* @__PURE__ */ jsxs196("div", { className: clsx_default("lib-xplat-card-tab", size), children: [
6183
- /* @__PURE__ */ jsx305("div", { className: "card-tab-bar", children: tabs.map((tab) => {
6208
+ /* @__PURE__ */ jsx306("div", { className: "card-tab-bar", children: tabs.map((tab) => {
6184
6209
  const isActive = tab.value === activeValue;
6185
- return /* @__PURE__ */ jsx305(
6210
+ return /* @__PURE__ */ jsx306(
6186
6211
  "button",
6187
6212
  {
6188
6213
  className: clsx_default("card-tab-trigger", isActive && "active"),
@@ -6194,7 +6219,7 @@ var CardTabRoot = (props) => {
6194
6219
  tab.value
6195
6220
  );
6196
6221
  }) }),
6197
- /* @__PURE__ */ jsx305("div", { className: "card-tab-body", children: activePanel })
6222
+ /* @__PURE__ */ jsx306("div", { className: "card-tab-body", children: activePanel })
6198
6223
  ] });
6199
6224
  };
6200
6225
  CardTabRoot.displayName = "CardTab";
@@ -6205,7 +6230,7 @@ var CardTab_default = CardTab;
6205
6230
 
6206
6231
  // src/components/Chart/Chart.tsx
6207
6232
  import React6 from "react";
6208
- import { Fragment as Fragment2, jsx as jsx306, jsxs as jsxs197 } from "react/jsx-runtime";
6233
+ import { Fragment as Fragment2, jsx as jsx307, jsxs as jsxs197 } from "react/jsx-runtime";
6209
6234
  var CATEGORICAL_COUNT2 = 8;
6210
6235
  var LINE_BAR_PALETTES = Array.from({ length: CATEGORICAL_COUNT2 }, (_, i) => {
6211
6236
  const n = i + 1;
@@ -6367,12 +6392,12 @@ var useChartTooltip = (enabled) => {
6367
6392
  }, []);
6368
6393
  return { tooltip, show, hide, move, containerRef };
6369
6394
  };
6370
- var GridLines = React6.memo(({ width, height, chartH, maxVal }) => /* @__PURE__ */ jsx306(Fragment2, { children: [0, 0.25, 0.5, 0.75, 1].map((ratio) => {
6395
+ var GridLines = React6.memo(({ width, height, chartH, maxVal }) => /* @__PURE__ */ jsx307(Fragment2, { children: [0, 0.25, 0.5, 0.75, 1].map((ratio) => {
6371
6396
  const y = PADDING.top + (1 - ratio) * chartH;
6372
6397
  const val = Math.round(maxVal * ratio);
6373
6398
  return /* @__PURE__ */ jsxs197("g", { children: [
6374
- /* @__PURE__ */ jsx306("line", { x1: PADDING.left, y1: y, x2: width - PADDING.right, y2: y, className: "chart-grid" }),
6375
- /* @__PURE__ */ jsx306("text", { x: PADDING.left - 8, y: y + 4, className: "chart-axis-label", textAnchor: "end", children: val })
6399
+ /* @__PURE__ */ jsx307("line", { x1: PADDING.left, y1: y, x2: width - PADDING.right, y2: y, className: "chart-grid" }),
6400
+ /* @__PURE__ */ jsx307("text", { x: PADDING.left - 8, y: y + 4, className: "chart-axis-label", textAnchor: "end", children: val })
6376
6401
  ] }, ratio);
6377
6402
  }) }));
6378
6403
  GridLines.displayName = "GridLines";
@@ -6384,10 +6409,10 @@ var getLabelStep = (count, chartW) => {
6384
6409
  };
6385
6410
  var AxisLabels = React6.memo(({ labels, count, chartW, height }) => {
6386
6411
  const step = getLabelStep(count, chartW);
6387
- return /* @__PURE__ */ jsx306(Fragment2, { children: labels.map((label, i) => {
6412
+ return /* @__PURE__ */ jsx307(Fragment2, { children: labels.map((label, i) => {
6388
6413
  if (i % step !== 0) return null;
6389
6414
  const x = PADDING.left + i / (count - 1 || 1) * chartW;
6390
- return /* @__PURE__ */ jsx306("text", { x, y: height - 8, className: "chart-axis-label", textAnchor: "middle", children: label }, i);
6415
+ return /* @__PURE__ */ jsx307("text", { x, y: height - 8, className: "chart-axis-label", textAnchor: "middle", children: label }, i);
6391
6416
  }) });
6392
6417
  });
6393
6418
  AxisLabels.displayName = "AxisLabels";
@@ -6426,8 +6451,8 @@ var LineChart = React6.memo(({ data, labels, width, height, animate, onHover, on
6426
6451
  });
6427
6452
  }, [animate, seriesPoints]);
6428
6453
  return /* @__PURE__ */ jsxs197("svg", { viewBox: `0 0 ${width} ${height}`, className: "chart-svg", children: [
6429
- /* @__PURE__ */ jsx306(GridLines, { width, height, chartH, maxVal }),
6430
- /* @__PURE__ */ jsx306(AxisLabels, { labels, count, chartW, height }),
6454
+ /* @__PURE__ */ jsx307(GridLines, { width, height, chartH, maxVal }),
6455
+ /* @__PURE__ */ jsx307(AxisLabels, { labels, count, chartW, height }),
6431
6456
  entries.map(([key], di) => {
6432
6457
  const palette = getPalette(LINE_BAR_PALETTES, di, key);
6433
6458
  const color = palette[2];
@@ -6437,11 +6462,11 @@ var LineChart = React6.memo(({ data, labels, width, height, animate, onHover, on
6437
6462
  const polyPoints = points.map((p) => `${p.x},${p.y}`).join(" ");
6438
6463
  const areaD = `M ${points[0].x},${points[0].y} ${points.map((p) => `L ${p.x},${p.y}`).join(" ")} L ${points[points.length - 1].x},${PADDING.top + chartH} L ${points[0].x},${PADDING.top + chartH} Z`;
6439
6464
  return /* @__PURE__ */ jsxs197("g", { children: [
6440
- /* @__PURE__ */ jsx306("defs", { children: /* @__PURE__ */ jsxs197("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1", children: [
6441
- /* @__PURE__ */ jsx306("stop", { offset: "0%", stopColor: areaColor, stopOpacity: "0.2" }),
6442
- /* @__PURE__ */ jsx306("stop", { offset: "100%", stopColor: areaColor, stopOpacity: "0" })
6465
+ /* @__PURE__ */ jsx307("defs", { children: /* @__PURE__ */ jsxs197("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1", children: [
6466
+ /* @__PURE__ */ jsx307("stop", { offset: "0%", stopColor: areaColor, stopOpacity: "0.2" }),
6467
+ /* @__PURE__ */ jsx307("stop", { offset: "100%", stopColor: areaColor, stopOpacity: "0" })
6443
6468
  ] }) }),
6444
- /* @__PURE__ */ jsx306(
6469
+ /* @__PURE__ */ jsx307(
6445
6470
  "path",
6446
6471
  {
6447
6472
  d: areaD,
@@ -6450,7 +6475,7 @@ var LineChart = React6.memo(({ data, labels, width, height, animate, onHover, on
6450
6475
  style: animate ? { animationDelay: "600ms" } : { opacity: 1 }
6451
6476
  }
6452
6477
  ),
6453
- /* @__PURE__ */ jsx306(
6478
+ /* @__PURE__ */ jsx307(
6454
6479
  "polyline",
6455
6480
  {
6456
6481
  ref: (el) => {
@@ -6462,7 +6487,7 @@ var LineChart = React6.memo(({ data, labels, width, height, animate, onHover, on
6462
6487
  strokeWidth: "2"
6463
6488
  }
6464
6489
  ),
6465
- showPoints && points.map((p, i) => /* @__PURE__ */ jsx306(
6490
+ showPoints && points.map((p, i) => /* @__PURE__ */ jsx307(
6466
6491
  "circle",
6467
6492
  {
6468
6493
  cx: p.x,
@@ -6516,8 +6541,8 @@ var CurveChart = React6.memo(({ data, labels, width, height, animate, onHover, o
6516
6541
  });
6517
6542
  }, [animate, seriesPoints]);
6518
6543
  return /* @__PURE__ */ jsxs197("svg", { viewBox: `0 0 ${width} ${height}`, className: "chart-svg", children: [
6519
- /* @__PURE__ */ jsx306(GridLines, { width, height, chartH, maxVal }),
6520
- /* @__PURE__ */ jsx306(AxisLabels, { labels, count, chartW, height }),
6544
+ /* @__PURE__ */ jsx307(GridLines, { width, height, chartH, maxVal }),
6545
+ /* @__PURE__ */ jsx307(AxisLabels, { labels, count, chartW, height }),
6521
6546
  entries.map(([key], di) => {
6522
6547
  const palette = getPalette(LINE_BAR_PALETTES, di, key);
6523
6548
  const color = palette[2];
@@ -6527,11 +6552,11 @@ var CurveChart = React6.memo(({ data, labels, width, height, animate, onHover, o
6527
6552
  const linePath = toSmoothPath(points);
6528
6553
  const areaPath = linePath + ` L ${points[points.length - 1].x} ${PADDING.top + chartH} L ${points[0].x} ${PADDING.top + chartH} Z`;
6529
6554
  return /* @__PURE__ */ jsxs197("g", { children: [
6530
- /* @__PURE__ */ jsx306("defs", { children: /* @__PURE__ */ jsxs197("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1", children: [
6531
- /* @__PURE__ */ jsx306("stop", { offset: "0%", stopColor: areaColor, stopOpacity: "0.4" }),
6532
- /* @__PURE__ */ jsx306("stop", { offset: "100%", stopColor: areaColor, stopOpacity: "0.02" })
6555
+ /* @__PURE__ */ jsx307("defs", { children: /* @__PURE__ */ jsxs197("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1", children: [
6556
+ /* @__PURE__ */ jsx307("stop", { offset: "0%", stopColor: areaColor, stopOpacity: "0.4" }),
6557
+ /* @__PURE__ */ jsx307("stop", { offset: "100%", stopColor: areaColor, stopOpacity: "0.02" })
6533
6558
  ] }) }),
6534
- /* @__PURE__ */ jsx306(
6559
+ /* @__PURE__ */ jsx307(
6535
6560
  "path",
6536
6561
  {
6537
6562
  d: areaPath,
@@ -6540,7 +6565,7 @@ var CurveChart = React6.memo(({ data, labels, width, height, animate, onHover, o
6540
6565
  style: animate ? { animationDelay: "600ms" } : { opacity: 1 }
6541
6566
  }
6542
6567
  ),
6543
- /* @__PURE__ */ jsx306(
6568
+ /* @__PURE__ */ jsx307(
6544
6569
  "path",
6545
6570
  {
6546
6571
  ref: (el) => {
@@ -6552,7 +6577,7 @@ var CurveChart = React6.memo(({ data, labels, width, height, animate, onHover, o
6552
6577
  strokeWidth: "2"
6553
6578
  }
6554
6579
  ),
6555
- showPoints && points.map((p, i) => /* @__PURE__ */ jsx306(
6580
+ showPoints && points.map((p, i) => /* @__PURE__ */ jsx307(
6556
6581
  "circle",
6557
6582
  {
6558
6583
  cx: p.x,
@@ -6599,10 +6624,10 @@ var BarChart = React6.memo(({ data, labels, width, height, animate, onHover, onM
6599
6624
  );
6600
6625
  const barLabelStep = getLabelStep(count, chartW);
6601
6626
  return /* @__PURE__ */ jsxs197("svg", { viewBox: `0 0 ${width} ${height}`, className: "chart-svg", children: [
6602
- /* @__PURE__ */ jsx306(GridLines, { width, height, chartH, maxVal }),
6627
+ /* @__PURE__ */ jsx307(GridLines, { width, height, chartH, maxVal }),
6603
6628
  labels.map((label, i) => {
6604
6629
  if (i % barLabelStep !== 0) return null;
6605
- return /* @__PURE__ */ jsx306("text", { x: PADDING.left + groupW * i + groupW / 2, y: height - 8, className: "chart-axis-label", textAnchor: "middle", children: label }, i);
6630
+ return /* @__PURE__ */ jsx307("text", { x: PADDING.left + groupW * i + groupW / 2, y: height - 8, className: "chart-axis-label", textAnchor: "middle", children: label }, i);
6606
6631
  }),
6607
6632
  entries.map(([key], di) => {
6608
6633
  const palette = getPalette(LINE_BAR_PALETTES, di, key);
@@ -6611,7 +6636,7 @@ var BarChart = React6.memo(({ data, labels, width, height, animate, onHover, onM
6611
6636
  const r2 = Math.min(4, b.w / 2);
6612
6637
  const d = b.h <= r2 ? `M ${b.x} ${b.y + b.h} V ${b.y} H ${b.x + b.w} V ${b.y + b.h} Z` : `M ${b.x} ${b.y + b.h} V ${b.y + r2} Q ${b.x} ${b.y} ${b.x + r2} ${b.y} H ${b.x + b.w - r2} Q ${b.x + b.w} ${b.y} ${b.x + b.w} ${b.y + r2} V ${b.y + b.h} Z`;
6613
6638
  const delay = 100 + i * 80;
6614
- return /* @__PURE__ */ jsx306(
6639
+ return /* @__PURE__ */ jsx307(
6615
6640
  "path",
6616
6641
  {
6617
6642
  d,
@@ -6692,7 +6717,7 @@ var PieDonutChart = React6.memo(
6692
6717
  }, [values, total, cx, cy, r2, innerR, labels]);
6693
6718
  const maskId = `pie-mask-${isDoughnut ? "d" : "p"}`;
6694
6719
  return /* @__PURE__ */ jsxs197("svg", { viewBox: `0 0 ${size} ${size}`, className: "chart-svg chart-pie", children: [
6695
- animate && /* @__PURE__ */ jsx306("defs", { children: /* @__PURE__ */ jsx306("mask", { id: maskId, children: /* @__PURE__ */ jsx306(
6720
+ animate && /* @__PURE__ */ jsx307("defs", { children: /* @__PURE__ */ jsx307("mask", { id: maskId, children: /* @__PURE__ */ jsx307(
6696
6721
  "circle",
6697
6722
  {
6698
6723
  ref: maskRef,
@@ -6705,7 +6730,7 @@ var PieDonutChart = React6.memo(
6705
6730
  transform: `rotate(-90 ${cx} ${cy})`
6706
6731
  }
6707
6732
  ) }) }),
6708
- /* @__PURE__ */ jsx306("g", { mask: animate ? `url(#${maskId})` : void 0, children: sliceData.map((s, i) => /* @__PURE__ */ jsx306("g", { children: /* @__PURE__ */ jsx306(
6733
+ /* @__PURE__ */ jsx307("g", { mask: animate ? `url(#${maskId})` : void 0, children: sliceData.map((s, i) => /* @__PURE__ */ jsx307("g", { children: /* @__PURE__ */ jsx307(
6709
6734
  "path",
6710
6735
  {
6711
6736
  d: s.d,
@@ -6716,7 +6741,7 @@ var PieDonutChart = React6.memo(
6716
6741
  onMouseLeave: onLeave
6717
6742
  }
6718
6743
  ) }, i)) }),
6719
- sliceData.map((s, i) => s.angle > 0.2 && /* @__PURE__ */ jsx306(
6744
+ sliceData.map((s, i) => s.angle > 0.2 && /* @__PURE__ */ jsx307(
6720
6745
  "text",
6721
6746
  {
6722
6747
  x: s.lx,
@@ -6747,7 +6772,7 @@ var TooltipBubble = ({ x, y, containerWidth, children }) => {
6747
6772
  else if (x + half > containerWidth - margin) nx = containerWidth - half - margin;
6748
6773
  setAdjustedX(nx);
6749
6774
  }, [x, containerWidth]);
6750
- return /* @__PURE__ */ jsx306(
6775
+ return /* @__PURE__ */ jsx307(
6751
6776
  "div",
6752
6777
  {
6753
6778
  ref,
@@ -6767,12 +6792,12 @@ var Chart = React6.memo((props) => {
6767
6792
  const animate = useChartAnimation(containerRef, dataKey);
6768
6793
  const ready = width > 0 && height > 0;
6769
6794
  return /* @__PURE__ */ jsxs197("div", { className: "lib-xplat-chart", ref: containerRef, children: [
6770
- ready && type === "line" && /* @__PURE__ */ jsx306(LineChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
6771
- ready && type === "curve" && /* @__PURE__ */ jsx306(CurveChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
6772
- ready && type === "bar" && /* @__PURE__ */ jsx306(BarChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
6773
- ready && type === "pie" && /* @__PURE__ */ jsx306(PieDonutChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
6774
- ready && type === "doughnut" && /* @__PURE__ */ jsx306(PieDonutChart, { data: stableData, labels: stableLabels, width, height, animate, isDoughnut: true, onHover: show, onMove: move, onLeave: hide }),
6775
- tooltip.visible && /* @__PURE__ */ jsx306(TooltipBubble, { x: tooltip.x, y: tooltip.y, containerWidth: width, children: tooltip.content })
6795
+ ready && type === "line" && /* @__PURE__ */ jsx307(LineChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
6796
+ ready && type === "curve" && /* @__PURE__ */ jsx307(CurveChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
6797
+ ready && type === "bar" && /* @__PURE__ */ jsx307(BarChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
6798
+ ready && type === "pie" && /* @__PURE__ */ jsx307(PieDonutChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
6799
+ ready && type === "doughnut" && /* @__PURE__ */ jsx307(PieDonutChart, { data: stableData, labels: stableLabels, width, height, animate, isDoughnut: true, onHover: show, onMove: move, onLeave: hide }),
6800
+ tooltip.visible && /* @__PURE__ */ jsx307(TooltipBubble, { x: tooltip.x, y: tooltip.y, containerWidth: width, children: tooltip.content })
6776
6801
  ] });
6777
6802
  });
6778
6803
  Chart.displayName = "Chart";
@@ -6798,7 +6823,7 @@ import { primitive, semantic } from "@x-plat/tokens-core";
6798
6823
  import { cssVar } from "@x-plat/tokens-core";
6799
6824
 
6800
6825
  // src/components/CheckBox/CheckBox.tsx
6801
- import { jsx as jsx307, jsxs as jsxs198 } from "react/jsx-runtime";
6826
+ import { jsx as jsx308, jsxs as jsxs198 } from "react/jsx-runtime";
6802
6827
  var CheckBox = (props) => {
6803
6828
  const {
6804
6829
  checked,
@@ -6817,7 +6842,7 @@ var CheckBox = (props) => {
6817
6842
  const disabledClasses = "disabled";
6818
6843
  const boxClasses = disabled ? disabledClasses : checked ? checkedClasses : uncheckedClasses;
6819
6844
  return /* @__PURE__ */ jsxs198("label", { className: clsx_default("lib-xplat-checkbox", size, type), children: [
6820
- /* @__PURE__ */ jsx307(
6845
+ /* @__PURE__ */ jsx308(
6821
6846
  "input",
6822
6847
  {
6823
6848
  type: "checkbox",
@@ -6827,22 +6852,22 @@ var CheckBox = (props) => {
6827
6852
  ...rest
6828
6853
  }
6829
6854
  ),
6830
- /* @__PURE__ */ jsx307("span", { className: clsx_default("checkbox", boxClasses), children: /* @__PURE__ */ jsx307("span", { className: clsx_default("check-icon", { visible: checked }), children: /* @__PURE__ */ jsx307(CheckIcon_default, {}) }) }),
6831
- label && /* @__PURE__ */ jsx307("span", { className: "label", children: label })
6855
+ /* @__PURE__ */ jsx308("span", { className: clsx_default("checkbox", boxClasses), children: /* @__PURE__ */ jsx308("span", { className: clsx_default("check-icon", { visible: checked }), children: /* @__PURE__ */ jsx308(CheckIcon_default, {}) }) }),
6856
+ label && /* @__PURE__ */ jsx308("span", { className: "label", children: label })
6832
6857
  ] });
6833
6858
  };
6834
6859
  CheckBox.displayName = "CheckBox";
6835
6860
  var CheckBox_default = CheckBox;
6836
6861
 
6837
6862
  // src/components/Chip/Chip.tsx
6838
- import { jsx as jsx308 } from "react/jsx-runtime";
6863
+ import { jsx as jsx309 } from "react/jsx-runtime";
6839
6864
  var Chip = (props) => {
6840
6865
  const {
6841
6866
  children,
6842
6867
  type = "primary",
6843
6868
  size = "md"
6844
6869
  } = props;
6845
- return /* @__PURE__ */ jsx308("div", { className: clsx_default("lib-xplat-chip", type, size), children });
6870
+ return /* @__PURE__ */ jsx309("div", { className: clsx_default("lib-xplat-chip", type, size), children });
6846
6871
  };
6847
6872
  Chip.displayName = "Chip";
6848
6873
  var Chip_default = Chip;
@@ -6854,17 +6879,17 @@ import React12 from "react";
6854
6879
  import React7 from "react";
6855
6880
 
6856
6881
  // src/components/Input/InputValidations.tsx
6857
- import { jsx as jsx309, jsxs as jsxs199 } from "react/jsx-runtime";
6882
+ import { jsx as jsx310, jsxs as jsxs199 } from "react/jsx-runtime";
6858
6883
  var InputValidations = (props) => {
6859
6884
  const { message, status = "default" } = props;
6860
6885
  return /* @__PURE__ */ jsxs199("div", { className: clsx_default("lib-xplat-input-validation", status), children: [
6861
6886
  /* @__PURE__ */ jsxs199("div", { className: "icon", children: [
6862
- status === "default" && /* @__PURE__ */ jsx309(InfoIcon_default, {}),
6863
- status === "success" && /* @__PURE__ */ jsx309(SuccessIcon_default, {}),
6864
- status === "warning" && /* @__PURE__ */ jsx309(InfoIcon_default, {}),
6865
- status === "error" && /* @__PURE__ */ jsx309(ErrorIcon_default, {})
6887
+ status === "default" && /* @__PURE__ */ jsx310(InfoIcon_default, {}),
6888
+ status === "success" && /* @__PURE__ */ jsx310(SuccessIcon_default, {}),
6889
+ status === "warning" && /* @__PURE__ */ jsx310(InfoIcon_default, {}),
6890
+ status === "error" && /* @__PURE__ */ jsx310(ErrorIcon_default, {})
6866
6891
  ] }),
6867
- /* @__PURE__ */ jsx309("div", { className: "message", children: message })
6892
+ /* @__PURE__ */ jsx310("div", { className: "message", children: message })
6868
6893
  ] });
6869
6894
  };
6870
6895
  InputValidations.displayName = "InputValidations";
@@ -6905,7 +6930,7 @@ var handleTelBackspace = (prevValue, currValue) => {
6905
6930
  };
6906
6931
 
6907
6932
  // src/components/Input/Input.tsx
6908
- import { jsx as jsx310, jsxs as jsxs200 } from "react/jsx-runtime";
6933
+ import { jsx as jsx311, jsxs as jsxs200 } from "react/jsx-runtime";
6909
6934
  import { createElement } from "react";
6910
6935
  var formatValue = (type, value) => {
6911
6936
  if (value === null || value === void 0) return "";
@@ -6986,7 +7011,7 @@ var Input = React7.forwardRef((props, ref) => {
6986
7011
  {
6987
7012
  className: clsx_default("lib-xplat-input", size, disabled ? "disabled" : void 0),
6988
7013
  children: [
6989
- /* @__PURE__ */ jsx310(
7014
+ /* @__PURE__ */ jsx311(
6990
7015
  "input",
6991
7016
  {
6992
7017
  ...inputProps,
@@ -6997,11 +7022,11 @@ var Input = React7.forwardRef((props, ref) => {
6997
7022
  onChange: handleChange
6998
7023
  }
6999
7024
  ),
7000
- suffix && /* @__PURE__ */ jsx310("div", { className: "suffix", children: suffix })
7025
+ suffix && /* @__PURE__ */ jsx311("div", { className: "suffix", children: suffix })
7001
7026
  ]
7002
7027
  }
7003
7028
  ),
7004
- validations && /* @__PURE__ */ jsx310("div", { className: "lib-xplat-input-validation-wrap", children: validations?.map((validation, idx) => /* @__PURE__ */ createElement(
7029
+ validations && /* @__PURE__ */ jsx311("div", { className: "lib-xplat-input-validation-wrap", children: validations?.map((validation, idx) => /* @__PURE__ */ createElement(
7005
7030
  InputValidations_default,
7006
7031
  {
7007
7032
  ...validation,
@@ -7015,7 +7040,7 @@ var Input_default = Input;
7015
7040
 
7016
7041
  // src/components/Input/PasswordInput/PasswordInput.tsx
7017
7042
  import React8 from "react";
7018
- import { jsx as jsx311 } from "react/jsx-runtime";
7043
+ import { jsx as jsx312 } from "react/jsx-runtime";
7019
7044
  var PasswordInput = React8.forwardRef(
7020
7045
  (props, ref) => {
7021
7046
  const { reg: _reg, ...inputProps } = props;
@@ -7023,11 +7048,11 @@ var PasswordInput = React8.forwardRef(
7023
7048
  const handleChangeView = () => {
7024
7049
  setIsView((prev) => !prev);
7025
7050
  };
7026
- return /* @__PURE__ */ jsx311(
7051
+ return /* @__PURE__ */ jsx312(
7027
7052
  Input_default,
7028
7053
  {
7029
7054
  ...inputProps,
7030
- suffix: /* @__PURE__ */ jsx311("div", { className: "wrapper pointer", onClick: handleChangeView, children: isView ? /* @__PURE__ */ jsx311(OpenEyeIcon_default, {}) : /* @__PURE__ */ jsx311(CloseEyeIcon_default, {}) }),
7055
+ suffix: /* @__PURE__ */ jsx312("div", { className: "wrapper pointer", onClick: handleChangeView, children: isView ? /* @__PURE__ */ jsx312(OpenEyeIcon_default, {}) : /* @__PURE__ */ jsx312(CloseEyeIcon_default, {}) }),
7031
7056
  type: isView ? "text" : "password",
7032
7057
  ref
7033
7058
  }
@@ -7044,9 +7069,9 @@ import { createPortal } from "react-dom";
7044
7069
  // src/tokens/hooks/Portal.tsx
7045
7070
  import React9 from "react";
7046
7071
  import ReactDOM from "react-dom";
7047
- import { jsx as jsx312 } from "react/jsx-runtime";
7072
+ import { jsx as jsx313 } from "react/jsx-runtime";
7048
7073
  var PortalContainerContext = React9.createContext(null);
7049
- var PortalProvider = ({ container, children }) => /* @__PURE__ */ jsx312(PortalContainerContext.Provider, { value: container, children });
7074
+ var PortalProvider = ({ container, children }) => /* @__PURE__ */ jsx313(PortalContainerContext.Provider, { value: container, children });
7050
7075
  var Portal = ({ children }) => {
7051
7076
  const contextContainer = React9.useContext(PortalContainerContext);
7052
7077
  if (typeof document === "undefined") return null;
@@ -7057,7 +7082,7 @@ Portal.displayName = "Portal";
7057
7082
  var Portal_default = Portal;
7058
7083
 
7059
7084
  // src/components/Modal/Modal.tsx
7060
- import { jsx as jsx313 } from "react/jsx-runtime";
7085
+ import { jsx as jsx314 } from "react/jsx-runtime";
7061
7086
  var ANIMATION_DURATION_MS = 200;
7062
7087
  var Modal = (props) => {
7063
7088
  const { isOpen, onClose, children } = props;
@@ -7078,12 +7103,12 @@ var Modal = (props) => {
7078
7103
  if (!mounted) return null;
7079
7104
  const stateClass = visible ? "enter" : "exit";
7080
7105
  return createPortal(
7081
- /* @__PURE__ */ jsx313(
7106
+ /* @__PURE__ */ jsx314(
7082
7107
  "div",
7083
7108
  {
7084
7109
  className: clsx_default("lib-xplat-modal", "dim", stateClass),
7085
7110
  onClick: onClose,
7086
- children: /* @__PURE__ */ jsx313(
7111
+ children: /* @__PURE__ */ jsx314(
7087
7112
  "div",
7088
7113
  {
7089
7114
  ref: boxRef,
@@ -7091,7 +7116,7 @@ var Modal = (props) => {
7091
7116
  role: "dialog",
7092
7117
  "aria-modal": "true",
7093
7118
  onClick: (e) => e.stopPropagation(),
7094
- children: /* @__PURE__ */ jsx313(PortalProvider, { container: boxRef.current, children })
7119
+ children: /* @__PURE__ */ jsx314(PortalProvider, { container: boxRef.current, children })
7095
7120
  }
7096
7121
  )
7097
7122
  }
@@ -7104,7 +7129,7 @@ var Modal_default = Modal;
7104
7129
 
7105
7130
  // src/components/DatePicker/SingleDatePicker/index.tsx
7106
7131
  import React11 from "react";
7107
- import { Fragment as Fragment3, jsx as jsx314, jsxs as jsxs201 } from "react/jsx-runtime";
7132
+ import { Fragment as Fragment3, jsx as jsx315, jsxs as jsxs201 } from "react/jsx-runtime";
7108
7133
  var DayCell2 = React11.memo(
7109
7134
  ({
7110
7135
  day,
@@ -7115,7 +7140,7 @@ var DayCell2 = React11.memo(
7115
7140
  isEnd,
7116
7141
  inRange,
7117
7142
  onSelect
7118
- }) => /* @__PURE__ */ jsx314(
7143
+ }) => /* @__PURE__ */ jsx315(
7119
7144
  "button",
7120
7145
  {
7121
7146
  type: "button",
@@ -7219,14 +7244,14 @@ var SingleDatePicker = (props) => {
7219
7244
  className: clsx_default("lib-xplat-datepicker", "single"),
7220
7245
  children: [
7221
7246
  /* @__PURE__ */ jsxs201("div", { className: "datepicker-header", children: [
7222
- /* @__PURE__ */ jsx314("button", { className: "datepicker-nav", onClick: handlePrev, type: "button", children: /* @__PURE__ */ jsx314(ChevronLeftIcon_default, {}) }),
7223
- /* @__PURE__ */ jsx314("button", { className: "datepicker-title", onClick: handleTitleClick, type: "button", children: titleText }),
7224
- /* @__PURE__ */ jsx314("button", { className: "datepicker-nav", onClick: handleNext, type: "button", children: /* @__PURE__ */ jsx314(ChevronRightIcon_default, {}) })
7247
+ /* @__PURE__ */ jsx315("button", { className: "datepicker-nav", onClick: handlePrev, type: "button", children: /* @__PURE__ */ jsx315(ChevronLeftIcon_default, {}) }),
7248
+ /* @__PURE__ */ jsx315("button", { className: "datepicker-title", onClick: handleTitleClick, type: "button", children: titleText }),
7249
+ /* @__PURE__ */ jsx315("button", { className: "datepicker-nav", onClick: handleNext, type: "button", children: /* @__PURE__ */ jsx315(ChevronRightIcon_default, {}) })
7225
7250
  ] }),
7226
7251
  /* @__PURE__ */ jsxs201("div", { className: "datepicker-body", children: [
7227
- pickerMode === "years" && /* @__PURE__ */ jsx314("div", { className: "datepicker-picker-grid", children: Array.from({ length: 12 }, (_, i) => {
7252
+ pickerMode === "years" && /* @__PURE__ */ jsx315("div", { className: "datepicker-picker-grid", children: Array.from({ length: 12 }, (_, i) => {
7228
7253
  const y = yearRangeStart + i;
7229
- return /* @__PURE__ */ jsx314(
7254
+ return /* @__PURE__ */ jsx315(
7230
7255
  "button",
7231
7256
  {
7232
7257
  type: "button",
@@ -7237,7 +7262,7 @@ var SingleDatePicker = (props) => {
7237
7262
  y
7238
7263
  );
7239
7264
  }) }),
7240
- pickerMode === "months" && /* @__PURE__ */ jsx314("div", { className: "datepicker-picker-grid", children: monthLabels.map((label, i) => /* @__PURE__ */ jsx314(
7265
+ pickerMode === "months" && /* @__PURE__ */ jsx315("div", { className: "datepicker-picker-grid", children: monthLabels.map((label, i) => /* @__PURE__ */ jsx315(
7241
7266
  "button",
7242
7267
  {
7243
7268
  type: "button",
@@ -7248,7 +7273,7 @@ var SingleDatePicker = (props) => {
7248
7273
  i
7249
7274
  )) }),
7250
7275
  pickerMode === "days" && /* @__PURE__ */ jsxs201(Fragment3, { children: [
7251
- /* @__PURE__ */ jsx314("div", { className: "datepicker-weekdays", children: weekdays.map((label, i) => /* @__PURE__ */ jsx314(
7276
+ /* @__PURE__ */ jsx315("div", { className: "datepicker-weekdays", children: weekdays.map((label, i) => /* @__PURE__ */ jsx315(
7252
7277
  "div",
7253
7278
  {
7254
7279
  className: clsx_default(
@@ -7260,7 +7285,7 @@ var SingleDatePicker = (props) => {
7260
7285
  },
7261
7286
  label
7262
7287
  )) }),
7263
- /* @__PURE__ */ jsx314("div", { className: "datepicker-grid", children: days.map((day, idx) => {
7288
+ /* @__PURE__ */ jsx315("div", { className: "datepicker-grid", children: days.map((day, idx) => {
7264
7289
  const t = day.date.getTime();
7265
7290
  const disabled = t < minTime || t > maxTime;
7266
7291
  const selected = value ? isSameDay(day.date, value) : false;
@@ -7270,7 +7295,7 @@ var SingleDatePicker = (props) => {
7270
7295
  const isStart = hasRange ? isSameDay(day.date, rangeStart) : false;
7271
7296
  const isEnd = hasRange ? isSameDay(day.date, rangeEnd) : false;
7272
7297
  const inRangeVal = hasRange ? isInRange(day.date, rangeStart, rangeEnd) : false;
7273
- return /* @__PURE__ */ jsx314(
7298
+ return /* @__PURE__ */ jsx315(
7274
7299
  DayCell2,
7275
7300
  {
7276
7301
  day,
@@ -7295,7 +7320,7 @@ SingleDatePicker.displayName = "SingleDatePicker";
7295
7320
  var SingleDatePicker_default = SingleDatePicker;
7296
7321
 
7297
7322
  // src/components/DatePicker/InputDatePicker/index.tsx
7298
- import { jsx as jsx315, jsxs as jsxs202 } from "react/jsx-runtime";
7323
+ import { jsx as jsx316, jsxs as jsxs202 } from "react/jsx-runtime";
7299
7324
  var formatDate = (date) => {
7300
7325
  if (!date || !(date instanceof Date) || isNaN(date.getTime())) return "";
7301
7326
  const y = date.getFullYear();
@@ -7323,18 +7348,18 @@ var InputDatePicker = (props) => {
7323
7348
  setIsOpen(false);
7324
7349
  };
7325
7350
  return /* @__PURE__ */ jsxs202("div", { className: clsx_default("lib-xplat-datepicker input-datepicker", disabled && "disabled"), children: [
7326
- /* @__PURE__ */ jsx315("div", { className: "input-datepicker-trigger", onClick: handleOpen, children: /* @__PURE__ */ jsx315(
7351
+ /* @__PURE__ */ jsx316("div", { className: "input-datepicker-trigger", onClick: handleOpen, children: /* @__PURE__ */ jsx316(
7327
7352
  Input_default,
7328
7353
  {
7329
7354
  value: formatDate(value),
7330
7355
  placeholder,
7331
- suffix: /* @__PURE__ */ jsx315(CalenderIcon_default, {}),
7356
+ suffix: /* @__PURE__ */ jsx316(CalenderIcon_default, {}),
7332
7357
  disabled,
7333
7358
  readOnly: true
7334
7359
  }
7335
7360
  ) }),
7336
- /* @__PURE__ */ jsx315(Modal_default, { isOpen, onClose: handleClose, children: /* @__PURE__ */ jsxs202("div", { className: "lib-xplat-popup-datepicker-card", children: [
7337
- /* @__PURE__ */ jsx315("div", { className: "popup-datepicker-content", children: /* @__PURE__ */ jsx315(
7361
+ /* @__PURE__ */ jsx316(Modal_default, { isOpen, onClose: handleClose, children: /* @__PURE__ */ jsxs202("div", { className: "lib-xplat-popup-datepicker-card", children: [
7362
+ /* @__PURE__ */ jsx316("div", { className: "popup-datepicker-content", children: /* @__PURE__ */ jsx316(
7338
7363
  SingleDatePicker_default,
7339
7364
  {
7340
7365
  value: tempDate,
@@ -7345,8 +7370,8 @@ var InputDatePicker = (props) => {
7345
7370
  }
7346
7371
  ) }),
7347
7372
  /* @__PURE__ */ jsxs202("div", { className: "popup-datepicker-footer", children: [
7348
- /* @__PURE__ */ jsx315(Button_default, { type: "secondary", onClick: handleClose, children: locale === "ko" ? "\uCDE8\uC18C" : "Cancel" }),
7349
- /* @__PURE__ */ jsx315(Button_default, { type: "primary", onClick: handleApply, children: locale === "ko" ? "\uC801\uC6A9" : "Apply" })
7373
+ /* @__PURE__ */ jsx316(Button_default, { type: "secondary", onClick: handleClose, children: locale === "ko" ? "\uCDE8\uC18C" : "Cancel" }),
7374
+ /* @__PURE__ */ jsx316(Button_default, { type: "primary", onClick: handleApply, children: locale === "ko" ? "\uC801\uC6A9" : "Apply" })
7350
7375
  ] })
7351
7376
  ] }) })
7352
7377
  ] });
@@ -7365,10 +7390,10 @@ import React14 from "react";
7365
7390
 
7366
7391
  // src/components/Tab/TabItem.tsx
7367
7392
  import React13 from "react";
7368
- import { jsx as jsx316 } from "react/jsx-runtime";
7393
+ import { jsx as jsx317 } from "react/jsx-runtime";
7369
7394
  var TabItem = React13.forwardRef((props, ref) => {
7370
7395
  const { isActive, title, onClick } = props;
7371
- return /* @__PURE__ */ jsx316(
7396
+ return /* @__PURE__ */ jsx317(
7372
7397
  "div",
7373
7398
  {
7374
7399
  ref,
@@ -7382,7 +7407,7 @@ TabItem.displayName = "TabItem";
7382
7407
  var TabItem_default = TabItem;
7383
7408
 
7384
7409
  // src/components/Tab/Tab.tsx
7385
- import { jsx as jsx317, jsxs as jsxs203 } from "react/jsx-runtime";
7410
+ import { jsx as jsx318, jsxs as jsxs203 } from "react/jsx-runtime";
7386
7411
  var Tab = (props) => {
7387
7412
  const { activeIndex, onChange, tabs, type, size = "md" } = props;
7388
7413
  const [underlineStyle, setUnderlineStyle] = React14.useState({
@@ -7400,7 +7425,7 @@ var Tab = (props) => {
7400
7425
  }
7401
7426
  }, [activeIndex, tabs.length]);
7402
7427
  return /* @__PURE__ */ jsxs203("div", { className: clsx_default("lib-xplat-tab", `type-${type}`, size), children: [
7403
- tabs.map((tab, idx) => /* @__PURE__ */ jsx317(
7428
+ tabs.map((tab, idx) => /* @__PURE__ */ jsx318(
7404
7429
  TabItem_default,
7405
7430
  {
7406
7431
  onClick: () => handleChangeActiveTab(tab, idx),
@@ -7412,7 +7437,7 @@ var Tab = (props) => {
7412
7437
  },
7413
7438
  `${tab.value}_${idx}`
7414
7439
  )),
7415
- type === "toggle" && /* @__PURE__ */ jsx317(
7440
+ type === "toggle" && /* @__PURE__ */ jsx318(
7416
7441
  "div",
7417
7442
  {
7418
7443
  className: "tab-toggle-underline",
@@ -7428,7 +7453,7 @@ Tab.displayName = "Tab";
7428
7453
  var Tab_default = Tab;
7429
7454
 
7430
7455
  // src/components/DatePicker/RangePicker/index.tsx
7431
- import { jsx as jsx318, jsxs as jsxs204 } from "react/jsx-runtime";
7456
+ import { jsx as jsx319, jsxs as jsxs204 } from "react/jsx-runtime";
7432
7457
  var RangePicker = (props) => {
7433
7458
  const {
7434
7459
  startDate,
@@ -7452,7 +7477,7 @@ var RangePicker = (props) => {
7452
7477
  const startMaxDate = maxDate && endDate < maxDate ? endDate : endDate;
7453
7478
  const endMinDate = minDate && startDate > minDate ? startDate : startDate;
7454
7479
  return /* @__PURE__ */ jsxs204("div", { className: clsx_default("lib-xplat-datepicker", "range"), children: [
7455
- /* @__PURE__ */ jsx318("div", { className: "datepicker-range-tabs", children: /* @__PURE__ */ jsx318(
7480
+ /* @__PURE__ */ jsx319("div", { className: "datepicker-range-tabs", children: /* @__PURE__ */ jsx319(
7456
7481
  Tab_default,
7457
7482
  {
7458
7483
  activeIndex: activeTab === "start" ? 0 : 1,
@@ -7466,7 +7491,7 @@ var RangePicker = (props) => {
7466
7491
  }
7467
7492
  ) }),
7468
7493
  /* @__PURE__ */ jsxs204("div", { className: "datepicker-range-panels", children: [
7469
- /* @__PURE__ */ jsx318(
7494
+ /* @__PURE__ */ jsx319(
7470
7495
  SingleDatePicker_default,
7471
7496
  {
7472
7497
  value: startDate,
@@ -7478,7 +7503,7 @@ var RangePicker = (props) => {
7478
7503
  locale
7479
7504
  }
7480
7505
  ),
7481
- /* @__PURE__ */ jsx318(
7506
+ /* @__PURE__ */ jsx319(
7482
7507
  SingleDatePicker_default,
7483
7508
  {
7484
7509
  value: endDate,
@@ -7491,7 +7516,7 @@ var RangePicker = (props) => {
7491
7516
  }
7492
7517
  )
7493
7518
  ] }),
7494
- /* @__PURE__ */ jsx318("div", { className: "datepicker-range-mobile", children: activeTab === "start" ? /* @__PURE__ */ jsx318(
7519
+ /* @__PURE__ */ jsx319("div", { className: "datepicker-range-mobile", children: activeTab === "start" ? /* @__PURE__ */ jsx319(
7495
7520
  SingleDatePicker_default,
7496
7521
  {
7497
7522
  value: startDate,
@@ -7502,7 +7527,7 @@ var RangePicker = (props) => {
7502
7527
  rangeEnd: endDate,
7503
7528
  locale
7504
7529
  }
7505
- ) : /* @__PURE__ */ jsx318(
7530
+ ) : /* @__PURE__ */ jsx319(
7506
7531
  SingleDatePicker_default,
7507
7532
  {
7508
7533
  value: endDate,
@@ -7520,7 +7545,7 @@ RangePicker.displayName = "RangePicker";
7520
7545
  var RangePicker_default = RangePicker;
7521
7546
 
7522
7547
  // src/components/DatePicker/PopupPicker/index.tsx
7523
- import { jsx as jsx319, jsxs as jsxs205 } from "react/jsx-runtime";
7548
+ import { jsx as jsx320, jsxs as jsxs205 } from "react/jsx-runtime";
7524
7549
  var PopupPicker = (props) => {
7525
7550
  const { component, type, locale } = props;
7526
7551
  const [isOpen, setIsOpen] = React16.useState(false);
@@ -7533,9 +7558,9 @@ var PopupPicker = (props) => {
7533
7558
  };
7534
7559
  return /* @__PURE__ */ jsxs205("div", { className: "lib-xplat-popup-datepicker", children: [
7535
7560
  React16.cloneElement(component, { onClick: handleClick }),
7536
- /* @__PURE__ */ jsx319(Modal_default, { isOpen, onClose: handleClose, children: /* @__PURE__ */ jsxs205("div", { className: clsx_default("lib-xplat-popup-datepicker-card", type === "range" && "range-mode"), children: [
7561
+ /* @__PURE__ */ jsx320(Modal_default, { isOpen, onClose: handleClose, children: /* @__PURE__ */ jsxs205("div", { className: clsx_default("lib-xplat-popup-datepicker-card", type === "range" && "range-mode"), children: [
7537
7562
  /* @__PURE__ */ jsxs205("div", { className: "popup-datepicker-content", children: [
7538
- type === "single" && /* @__PURE__ */ jsx319(
7563
+ type === "single" && /* @__PURE__ */ jsx320(
7539
7564
  SingleDatePicker_default,
7540
7565
  {
7541
7566
  value: props.value,
@@ -7545,7 +7570,7 @@ var PopupPicker = (props) => {
7545
7570
  locale
7546
7571
  }
7547
7572
  ),
7548
- type === "range" && /* @__PURE__ */ jsx319(
7573
+ type === "range" && /* @__PURE__ */ jsx320(
7549
7574
  RangePicker_default,
7550
7575
  {
7551
7576
  startDate: props.startDate,
@@ -7558,7 +7583,7 @@ var PopupPicker = (props) => {
7558
7583
  )
7559
7584
  ] }),
7560
7585
  /* @__PURE__ */ jsxs205("div", { className: "popup-datepicker-footer", children: [
7561
- /* @__PURE__ */ jsx319(
7586
+ /* @__PURE__ */ jsx320(
7562
7587
  Button_default,
7563
7588
  {
7564
7589
  type: "secondary",
@@ -7566,7 +7591,7 @@ var PopupPicker = (props) => {
7566
7591
  children: locale === "ko" ? "\uCDE8\uC18C" : "Cancel"
7567
7592
  }
7568
7593
  ),
7569
- /* @__PURE__ */ jsx319(Button_default, { type: "primary", onClick: handleClose, children: locale === "ko" ? "\uC801\uC6A9" : "Apply" })
7594
+ /* @__PURE__ */ jsx320(Button_default, { type: "primary", onClick: handleClose, children: locale === "ko" ? "\uC801\uC6A9" : "Apply" })
7570
7595
  ] })
7571
7596
  ] }) })
7572
7597
  ] });
@@ -7575,10 +7600,10 @@ PopupPicker.displayName = "PopupPicker";
7575
7600
  var PopupPicker_default = PopupPicker;
7576
7601
 
7577
7602
  // src/components/Divider/Divider.tsx
7578
- import { jsx as jsx320 } from "react/jsx-runtime";
7603
+ import { jsx as jsx321 } from "react/jsx-runtime";
7579
7604
  var Divider = (props) => {
7580
7605
  const { orientation = "horizontal" } = props;
7581
- return /* @__PURE__ */ jsx320(
7606
+ return /* @__PURE__ */ jsx321(
7582
7607
  "div",
7583
7608
  {
7584
7609
  className: clsx_default("lib-xplat-divider", orientation),
@@ -7593,7 +7618,7 @@ var Divider_default = Divider;
7593
7618
  // src/components/Drawer/Drawer.tsx
7594
7619
  import React17 from "react";
7595
7620
  import { createPortal as createPortal2 } from "react-dom";
7596
- import { jsx as jsx321, jsxs as jsxs206 } from "react/jsx-runtime";
7621
+ import { jsx as jsx322, jsxs as jsxs206 } from "react/jsx-runtime";
7597
7622
  var ANIMATION_DURATION_MS2 = 250;
7598
7623
  var Drawer = (props) => {
7599
7624
  const { isOpen, onClose, placement = "right", size = "md", title, children } = props;
@@ -7613,7 +7638,7 @@ var Drawer = (props) => {
7613
7638
  if (!mounted) return null;
7614
7639
  const stateClass = visible ? "enter" : "exit";
7615
7640
  return createPortal2(
7616
- /* @__PURE__ */ jsx321(
7641
+ /* @__PURE__ */ jsx322(
7617
7642
  "div",
7618
7643
  {
7619
7644
  className: clsx_default("lib-xplat-drawer-overlay", stateClass),
@@ -7627,10 +7652,10 @@ var Drawer = (props) => {
7627
7652
  onClick: (e) => e.stopPropagation(),
7628
7653
  children: [
7629
7654
  title && /* @__PURE__ */ jsxs206("div", { className: "drawer-header", children: [
7630
- /* @__PURE__ */ jsx321("span", { className: "drawer-title", children: title }),
7631
- /* @__PURE__ */ jsx321("button", { className: "close-btn", onClick: onClose, "aria-label": "\uB2EB\uAE30", children: "\xD7" })
7655
+ /* @__PURE__ */ jsx322("span", { className: "drawer-title", children: title }),
7656
+ /* @__PURE__ */ jsx322("button", { className: "close-btn", onClick: onClose, "aria-label": "\uB2EB\uAE30", children: "\xD7" })
7632
7657
  ] }),
7633
- /* @__PURE__ */ jsx321("div", { className: "drawer-body", children })
7658
+ /* @__PURE__ */ jsx322("div", { className: "drawer-body", children })
7634
7659
  ]
7635
7660
  }
7636
7661
  )
@@ -7732,7 +7757,7 @@ var useClickOutside = (refs, handler, enabled = true) => {
7732
7757
  var useClickOutside_default = useClickOutside;
7733
7758
 
7734
7759
  // src/components/Dropdown/Dropdown.tsx
7735
- import { jsx as jsx322, jsxs as jsxs207 } from "react/jsx-runtime";
7760
+ import { jsx as jsx323, jsxs as jsxs207 } from "react/jsx-runtime";
7736
7761
  var Dropdown = (props) => {
7737
7762
  const { items, children } = props;
7738
7763
  const [isOpen, setIsOpen] = React20.useState(false);
@@ -7758,7 +7783,7 @@ var Dropdown = (props) => {
7758
7783
  setIsOpen(false);
7759
7784
  };
7760
7785
  return /* @__PURE__ */ jsxs207("div", { className: "lib-xplat-dropdown", children: [
7761
- /* @__PURE__ */ jsx322(
7786
+ /* @__PURE__ */ jsx323(
7762
7787
  "div",
7763
7788
  {
7764
7789
  ref: triggerRef,
@@ -7767,14 +7792,14 @@ var Dropdown = (props) => {
7767
7792
  children
7768
7793
  }
7769
7794
  ),
7770
- mounted && /* @__PURE__ */ jsx322(Portal_default, { children: /* @__PURE__ */ jsx322(
7795
+ mounted && /* @__PURE__ */ jsx323(Portal_default, { children: /* @__PURE__ */ jsx323(
7771
7796
  "div",
7772
7797
  {
7773
7798
  ref: menuRef,
7774
7799
  className: clsx_default("lib-xplat-dropdown-menu", direction, { visible }),
7775
7800
  style: { top: position.top, left: position.left },
7776
7801
  role: "menu",
7777
- children: items.map((item) => /* @__PURE__ */ jsx322(
7802
+ children: items.map((item) => /* @__PURE__ */ jsx323(
7778
7803
  "button",
7779
7804
  {
7780
7805
  className: clsx_default("dropdown-item", {
@@ -7796,15 +7821,15 @@ Dropdown.displayName = "Dropdown";
7796
7821
  var Dropdown_default = Dropdown;
7797
7822
 
7798
7823
  // src/components/EmptyState/EmptyState.tsx
7799
- import { jsx as jsx323, jsxs as jsxs208 } from "react/jsx-runtime";
7824
+ import { jsx as jsx324, jsxs as jsxs208 } from "react/jsx-runtime";
7800
7825
  var EmptyState = (props) => {
7801
7826
  const { icon, title = "\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4", description, action } = props;
7802
7827
  return /* @__PURE__ */ jsxs208("div", { className: "lib-xplat-empty-state", children: [
7803
- icon && /* @__PURE__ */ jsx323("div", { className: "empty-icon", children: icon }),
7804
- !icon && /* @__PURE__ */ jsx323("div", { className: "empty-icon", children: /* @__PURE__ */ jsx323("svg", { viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx323("path", { d: "M20 6h-8l-2-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V8h16v10z" }) }) }),
7805
- /* @__PURE__ */ jsx323("p", { className: "empty-title", children: title }),
7806
- description && /* @__PURE__ */ jsx323("p", { className: "empty-description", children: description }),
7807
- action && /* @__PURE__ */ jsx323("div", { className: "empty-action", children: action })
7828
+ icon && /* @__PURE__ */ jsx324("div", { className: "empty-icon", children: icon }),
7829
+ !icon && /* @__PURE__ */ jsx324("div", { className: "empty-icon", children: /* @__PURE__ */ jsx324("svg", { viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx324("path", { d: "M20 6h-8l-2-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V8h16v10z" }) }) }),
7830
+ /* @__PURE__ */ jsx324("p", { className: "empty-title", children: title }),
7831
+ description && /* @__PURE__ */ jsx324("p", { className: "empty-description", children: description }),
7832
+ action && /* @__PURE__ */ jsx324("div", { className: "empty-action", children: action })
7808
7833
  ] });
7809
7834
  };
7810
7835
  EmptyState.displayName = "EmptyState";
@@ -7812,7 +7837,7 @@ var EmptyState_default = EmptyState;
7812
7837
 
7813
7838
  // src/components/FileUpload/FileUpload.tsx
7814
7839
  import React21 from "react";
7815
- import { jsx as jsx324, jsxs as jsxs209 } from "react/jsx-runtime";
7840
+ import { jsx as jsx325, jsxs as jsxs209 } from "react/jsx-runtime";
7816
7841
  var FileUpload = (props) => {
7817
7842
  const {
7818
7843
  accept,
@@ -7862,7 +7887,7 @@ var FileUpload = (props) => {
7862
7887
  onDragLeave: handleDragLeave,
7863
7888
  onClick: () => inputRef.current?.click(),
7864
7889
  children: [
7865
- /* @__PURE__ */ jsx324(
7890
+ /* @__PURE__ */ jsx325(
7866
7891
  "input",
7867
7892
  {
7868
7893
  ref: inputRef,
@@ -7872,9 +7897,9 @@ var FileUpload = (props) => {
7872
7897
  onChange: handleChange
7873
7898
  }
7874
7899
  ),
7875
- /* @__PURE__ */ jsx324("div", { className: "upload-icon", children: /* @__PURE__ */ jsx324(UploadIcon_default, {}) }),
7876
- /* @__PURE__ */ jsx324("p", { className: "upload-label", children: label }),
7877
- description && /* @__PURE__ */ jsx324("p", { className: "upload-description", children: description })
7900
+ /* @__PURE__ */ jsx325("div", { className: "upload-icon", children: /* @__PURE__ */ jsx325(UploadIcon_default, {}) }),
7901
+ /* @__PURE__ */ jsx325("p", { className: "upload-label", children: label }),
7902
+ description && /* @__PURE__ */ jsx325("p", { className: "upload-description", children: description })
7878
7903
  ]
7879
7904
  }
7880
7905
  );
@@ -7968,7 +7993,7 @@ var htmlToReactProgressive = (root, typedLen, rangeMap) => {
7968
7993
  };
7969
7994
 
7970
7995
  // src/components/HtmlTypeWriter/HtmlTypeWriter.tsx
7971
- import { jsx as jsx325 } from "react/jsx-runtime";
7996
+ import { jsx as jsx326 } from "react/jsx-runtime";
7972
7997
  var HtmlTypeWriter = ({
7973
7998
  html,
7974
7999
  duration = 20,
@@ -8011,14 +8036,14 @@ var HtmlTypeWriter = ({
8011
8036
  () => doc ? htmlToReactProgressive(doc.body, typedLen, rangeMap) : null,
8012
8037
  [doc, typedLen, rangeMap]
8013
8038
  );
8014
- return /* @__PURE__ */ jsx325("div", { className: "lib-xplat-htmlTypewriter", children: parsed });
8039
+ return /* @__PURE__ */ jsx326("div", { className: "lib-xplat-htmlTypewriter", children: parsed });
8015
8040
  };
8016
8041
  HtmlTypeWriter.displayName = "HtmlTypeWriter";
8017
8042
  var HtmlTypeWriter_default = HtmlTypeWriter;
8018
8043
 
8019
8044
  // src/components/ImageSelector/ImageSelector.tsx
8020
8045
  import React24 from "react";
8021
- import { jsx as jsx326, jsxs as jsxs210 } from "react/jsx-runtime";
8046
+ import { jsx as jsx327, jsxs as jsxs210 } from "react/jsx-runtime";
8022
8047
  var ImageSelector = (props) => {
8023
8048
  const { value, label, onChange } = props;
8024
8049
  const [previewUrl, setPreviewUrl] = React24.useState();
@@ -8045,7 +8070,7 @@ var ImageSelector = (props) => {
8045
8070
  inputRef.current?.click();
8046
8071
  };
8047
8072
  return /* @__PURE__ */ jsxs210("div", { className: `lib-xplat-imageselector${value ? "" : " none-value"}`, children: [
8048
- /* @__PURE__ */ jsx326(
8073
+ /* @__PURE__ */ jsx327(
8049
8074
  "input",
8050
8075
  {
8051
8076
  type: "file",
@@ -8056,12 +8081,12 @@ var ImageSelector = (props) => {
8056
8081
  }
8057
8082
  ),
8058
8083
  value && /* @__PURE__ */ jsxs210("div", { className: "action-bar", children: [
8059
- /* @__PURE__ */ jsx326("div", { className: "icon-wrapper", onClick: handleOpenFileDialog, children: /* @__PURE__ */ jsx326(UploadIcon_default, {}) }),
8060
- /* @__PURE__ */ jsx326("div", { className: "icon-wrapper", onClick: handleDeleteFile, children: /* @__PURE__ */ jsx326(DeleteIcon_default, {}) })
8084
+ /* @__PURE__ */ jsx327("div", { className: "icon-wrapper", onClick: handleOpenFileDialog, children: /* @__PURE__ */ jsx327(UploadIcon_default, {}) }),
8085
+ /* @__PURE__ */ jsx327("div", { className: "icon-wrapper", onClick: handleDeleteFile, children: /* @__PURE__ */ jsx327(DeleteIcon_default, {}) })
8061
8086
  ] }),
8062
- /* @__PURE__ */ jsx326("div", { className: "content", children: previewUrl ? /* @__PURE__ */ jsx326("img", { src: previewUrl, alt: "preview" }) : /* @__PURE__ */ jsxs210("div", { className: "skeleton", onClick: handleOpenFileDialog, children: [
8063
- /* @__PURE__ */ jsx326("div", { className: "icon-wrapper", children: /* @__PURE__ */ jsx326(ImageIcon_default, {}) }),
8064
- /* @__PURE__ */ jsx326("div", { className: "label", children: label || "\uC774\uBBF8\uC9C0 \uCD94\uAC00\uD558\uAE30" })
8087
+ /* @__PURE__ */ jsx327("div", { className: "content", children: previewUrl ? /* @__PURE__ */ jsx327("img", { src: previewUrl, alt: "preview" }) : /* @__PURE__ */ jsxs210("div", { className: "skeleton", onClick: handleOpenFileDialog, children: [
8088
+ /* @__PURE__ */ jsx327("div", { className: "icon-wrapper", children: /* @__PURE__ */ jsx327(ImageIcon_default, {}) }),
8089
+ /* @__PURE__ */ jsx327("div", { className: "label", children: label || "\uC774\uBBF8\uC9C0 \uCD94\uAC00\uD558\uAE30" })
8065
8090
  ] }) })
8066
8091
  ] });
8067
8092
  };
@@ -8069,7 +8094,7 @@ ImageSelector.displayName = "ImageSelector";
8069
8094
  var ImageSelector_default = ImageSelector;
8070
8095
 
8071
8096
  // src/components/Pagination/Pagination.tsx
8072
- import { jsx as jsx327, jsxs as jsxs211 } from "react/jsx-runtime";
8097
+ import { jsx as jsx328, jsxs as jsxs211 } from "react/jsx-runtime";
8073
8098
  var getPageRange = (current, totalPages, siblingCount) => {
8074
8099
  const totalNumbers = siblingCount * 2 + 5;
8075
8100
  if (totalPages <= totalNumbers) {
@@ -8113,18 +8138,18 @@ var Pagination = (props) => {
8113
8138
  }
8114
8139
  };
8115
8140
  return /* @__PURE__ */ jsxs211("nav", { className: clsx_default("lib-xplat-pagination", size, type), "aria-label": "\uD398\uC774\uC9C0 \uB124\uBE44\uAC8C\uC774\uC158", children: [
8116
- /* @__PURE__ */ jsx327(
8141
+ /* @__PURE__ */ jsx328(
8117
8142
  "button",
8118
8143
  {
8119
8144
  className: "page-btn prev",
8120
8145
  disabled: current <= 1,
8121
8146
  onClick: () => handleClick(current - 1),
8122
8147
  "aria-label": "\uC774\uC804 \uD398\uC774\uC9C0",
8123
- children: /* @__PURE__ */ jsx327(ChevronLeftIcon_default, {})
8148
+ children: /* @__PURE__ */ jsx328(ChevronLeftIcon_default, {})
8124
8149
  }
8125
8150
  ),
8126
8151
  pages.map(
8127
- (page, i) => page === "..." ? /* @__PURE__ */ jsx327("span", { className: "dots", children: "..." }, `dots-${i}`) : /* @__PURE__ */ jsx327(
8152
+ (page, i) => page === "..." ? /* @__PURE__ */ jsx328("span", { className: "dots", children: "..." }, `dots-${i}`) : /* @__PURE__ */ jsx328(
8128
8153
  "button",
8129
8154
  {
8130
8155
  className: clsx_default("page-btn", { active: page === current }),
@@ -8135,14 +8160,14 @@ var Pagination = (props) => {
8135
8160
  page
8136
8161
  )
8137
8162
  ),
8138
- /* @__PURE__ */ jsx327(
8163
+ /* @__PURE__ */ jsx328(
8139
8164
  "button",
8140
8165
  {
8141
8166
  className: "page-btn next",
8142
8167
  disabled: current >= totalPages,
8143
8168
  onClick: () => handleClick(current + 1),
8144
8169
  "aria-label": "\uB2E4\uC74C \uD398\uC774\uC9C0",
8145
- children: /* @__PURE__ */ jsx327(ChevronRightIcon_default, {})
8170
+ children: /* @__PURE__ */ jsx328(ChevronRightIcon_default, {})
8146
8171
  }
8147
8172
  )
8148
8173
  ] });
@@ -8152,7 +8177,7 @@ var Pagination_default = Pagination;
8152
8177
 
8153
8178
  // src/components/PopOver/PopOver.tsx
8154
8179
  import React25 from "react";
8155
- import { jsx as jsx328, jsxs as jsxs212 } from "react/jsx-runtime";
8180
+ import { jsx as jsx329, jsxs as jsxs212 } from "react/jsx-runtime";
8156
8181
  var PopOver = (props) => {
8157
8182
  const { children, isOpen, onClose, PopOverEl } = props;
8158
8183
  const popRef = React25.useRef(null);
@@ -8184,7 +8209,7 @@ var PopOver = (props) => {
8184
8209
  },
8185
8210
  children: [
8186
8211
  children,
8187
- localOpen && /* @__PURE__ */ jsx328(Portal_default, { children: /* @__PURE__ */ jsx328(
8212
+ localOpen && /* @__PURE__ */ jsx329(Portal_default, { children: /* @__PURE__ */ jsx329(
8188
8213
  "div",
8189
8214
  {
8190
8215
  className: clsx_default(
@@ -8207,7 +8232,7 @@ PopOver.displayName = "PopOver";
8207
8232
  var PopOver_default = PopOver;
8208
8233
 
8209
8234
  // src/components/Progress/Progress.tsx
8210
- import { jsx as jsx329, jsxs as jsxs213 } from "react/jsx-runtime";
8235
+ import { jsx as jsx330, jsxs as jsxs213 } from "react/jsx-runtime";
8211
8236
  var Progress = (props) => {
8212
8237
  const {
8213
8238
  value,
@@ -8218,7 +8243,7 @@ var Progress = (props) => {
8218
8243
  } = props;
8219
8244
  const percentage = Math.min(100, Math.max(0, value / max * 100));
8220
8245
  return /* @__PURE__ */ jsxs213("div", { className: clsx_default("lib-xplat-progress", size, type), children: [
8221
- /* @__PURE__ */ jsx329(
8246
+ /* @__PURE__ */ jsx330(
8222
8247
  "div",
8223
8248
  {
8224
8249
  className: "track",
@@ -8226,7 +8251,7 @@ var Progress = (props) => {
8226
8251
  "aria-valuenow": value,
8227
8252
  "aria-valuemin": 0,
8228
8253
  "aria-valuemax": max,
8229
- children: /* @__PURE__ */ jsx329(
8254
+ children: /* @__PURE__ */ jsx330(
8230
8255
  "div",
8231
8256
  {
8232
8257
  className: "bar",
@@ -8255,7 +8280,7 @@ var useRadioGroupContext = () => {
8255
8280
  var RadioGroupContext_default = RadioGroupContext;
8256
8281
 
8257
8282
  // src/components/Radio/Radio.tsx
8258
- import { jsx as jsx330, jsxs as jsxs214 } from "react/jsx-runtime";
8283
+ import { jsx as jsx331, jsxs as jsxs214 } from "react/jsx-runtime";
8259
8284
  var Radio = (props) => {
8260
8285
  const {
8261
8286
  label,
@@ -8283,18 +8308,18 @@ var Radio = (props) => {
8283
8308
  localChecked ? "checked" : void 0
8284
8309
  ),
8285
8310
  children: [
8286
- /* @__PURE__ */ jsx330("input", { ...rest, ...inputProps, checked: localChecked, type: "radio" }),
8287
- /* @__PURE__ */ jsx330(
8311
+ /* @__PURE__ */ jsx331("input", { ...rest, ...inputProps, checked: localChecked, type: "radio" }),
8312
+ /* @__PURE__ */ jsx331(
8288
8313
  "div",
8289
8314
  {
8290
8315
  className: clsx_default(
8291
8316
  "circle",
8292
8317
  localChecked ? "checked" : void 0
8293
8318
  ),
8294
- children: localChecked && /* @__PURE__ */ jsx330("div", { className: "inner-circle" })
8319
+ children: localChecked && /* @__PURE__ */ jsx331("div", { className: "inner-circle" })
8295
8320
  }
8296
8321
  ),
8297
- label && /* @__PURE__ */ jsx330("span", { children: label })
8322
+ label && /* @__PURE__ */ jsx331("span", { children: label })
8298
8323
  ]
8299
8324
  }
8300
8325
  );
@@ -8303,10 +8328,10 @@ Radio.displayName = "Radio";
8303
8328
  var Radio_default = Radio;
8304
8329
 
8305
8330
  // src/components/Radio/RadioGroup.tsx
8306
- import { Fragment as Fragment4, jsx as jsx331 } from "react/jsx-runtime";
8331
+ import { Fragment as Fragment4, jsx as jsx332 } from "react/jsx-runtime";
8307
8332
  var RadioGroup = (props) => {
8308
8333
  const { children, ...rest } = props;
8309
- return /* @__PURE__ */ jsx331(Fragment4, { children: /* @__PURE__ */ jsx331(RadioGroupContext_default.Provider, { value: rest, children }) });
8334
+ return /* @__PURE__ */ jsx332(Fragment4, { children: /* @__PURE__ */ jsx332(RadioGroupContext_default.Provider, { value: rest, children }) });
8310
8335
  };
8311
8336
  RadioGroup.displayName = "RadioGroup";
8312
8337
  var RadioGroup_default = RadioGroup;
@@ -8321,7 +8346,7 @@ var context_default = SelectContext;
8321
8346
 
8322
8347
  // src/components/Select/SelectItem.tsx
8323
8348
  import React28 from "react";
8324
- import { jsx as jsx332 } from "react/jsx-runtime";
8349
+ import { jsx as jsx333 } from "react/jsx-runtime";
8325
8350
  var SelectItem = (props) => {
8326
8351
  const { children, value, onClick, disabled = false } = props;
8327
8352
  const ctx = React28.useContext(context_default);
@@ -8333,7 +8358,7 @@ var SelectItem = (props) => {
8333
8358
  ctx?.close();
8334
8359
  onClick?.();
8335
8360
  };
8336
- return /* @__PURE__ */ jsx332(
8361
+ return /* @__PURE__ */ jsx333(
8337
8362
  "div",
8338
8363
  {
8339
8364
  className: clsx_default("select-item", disabled && "disabled"),
@@ -8354,7 +8379,7 @@ SelectItem.displayName = "Select.Item";
8354
8379
  var SelectItem_default = SelectItem;
8355
8380
 
8356
8381
  // src/components/Select/Select.tsx
8357
- import { jsx as jsx333, jsxs as jsxs215 } from "react/jsx-runtime";
8382
+ import { jsx as jsx334, jsxs as jsxs215 } from "react/jsx-runtime";
8358
8383
  var ANIMATION_DURATION_MS3 = 200;
8359
8384
  var SelectRoot = (props) => {
8360
8385
  const {
@@ -8430,7 +8455,7 @@ var SelectRoot = (props) => {
8430
8455
  if (disabled) return;
8431
8456
  toggle();
8432
8457
  };
8433
- return /* @__PURE__ */ jsx333(context_default.Provider, { value: ctxValue, children: /* @__PURE__ */ jsxs215(
8458
+ return /* @__PURE__ */ jsx334(context_default.Provider, { value: ctxValue, children: /* @__PURE__ */ jsxs215(
8434
8459
  "div",
8435
8460
  {
8436
8461
  className: clsx_default(
@@ -8465,7 +8490,7 @@ var SelectRoot = (props) => {
8465
8490
  }
8466
8491
  },
8467
8492
  children: [
8468
- /* @__PURE__ */ jsx333(
8493
+ /* @__PURE__ */ jsx334(
8469
8494
  "span",
8470
8495
  {
8471
8496
  className: clsx_default(
@@ -8475,25 +8500,25 @@ var SelectRoot = (props) => {
8475
8500
  children: selectedLabel ?? placeholder
8476
8501
  }
8477
8502
  ),
8478
- /* @__PURE__ */ jsx333(
8503
+ /* @__PURE__ */ jsx334(
8479
8504
  "span",
8480
8505
  {
8481
8506
  className: clsx_default("select-trigger-icon", isOpen && "open"),
8482
8507
  "aria-hidden": true,
8483
- children: /* @__PURE__ */ jsx333(ChevronDownIcon_default, {})
8508
+ children: /* @__PURE__ */ jsx334(ChevronDownIcon_default, {})
8484
8509
  }
8485
8510
  )
8486
8511
  ]
8487
8512
  }
8488
8513
  ),
8489
- mounted && /* @__PURE__ */ jsx333(Portal_default, { children: /* @__PURE__ */ jsx333(
8514
+ mounted && /* @__PURE__ */ jsx334(Portal_default, { children: /* @__PURE__ */ jsx334(
8490
8515
  "div",
8491
8516
  {
8492
8517
  className: clsx_default("lib-xplat-select-content", position.direction, stateClass),
8493
8518
  ref: contentRef,
8494
8519
  style: { ...position.position, width: triggerRef.current?.offsetWidth },
8495
8520
  role: "listbox",
8496
- children: /* @__PURE__ */ jsx333(context_default.Provider, { value: ctxValue, children: itemChildren })
8521
+ children: /* @__PURE__ */ jsx334(context_default.Provider, { value: ctxValue, children: itemChildren })
8497
8522
  }
8498
8523
  ) })
8499
8524
  ]
@@ -8507,7 +8532,7 @@ var Select = Object.assign(SelectRoot, {
8507
8532
  var Select_default = Select;
8508
8533
 
8509
8534
  // src/components/Skeleton/Skeleton.tsx
8510
- import { jsx as jsx334 } from "react/jsx-runtime";
8535
+ import { jsx as jsx335 } from "react/jsx-runtime";
8511
8536
  var SIZE_MAP = {
8512
8537
  xs: "var(--spacing-size-1)",
8513
8538
  sm: "var(--spacing-size-2)",
@@ -8523,7 +8548,7 @@ var Skeleton = (props) => {
8523
8548
  ...width != null && { width: SIZE_MAP[width] },
8524
8549
  ...height != null && { height: SIZE_MAP[height] }
8525
8550
  };
8526
- return /* @__PURE__ */ jsx334(
8551
+ return /* @__PURE__ */ jsx335(
8527
8552
  "div",
8528
8553
  {
8529
8554
  className: clsx_default("lib-xplat-skeleton", variant),
@@ -8536,20 +8561,20 @@ Skeleton.displayName = "Skeleton";
8536
8561
  var Skeleton_default = Skeleton;
8537
8562
 
8538
8563
  // src/components/Spinner/Spinner.tsx
8539
- import { jsx as jsx335, jsxs as jsxs216 } from "react/jsx-runtime";
8564
+ import { jsx as jsx336, jsxs as jsxs216 } from "react/jsx-runtime";
8540
8565
  var Spinner = (props) => {
8541
8566
  const {
8542
8567
  size = "md",
8543
8568
  type = "brand"
8544
8569
  } = props;
8545
- return /* @__PURE__ */ jsx335(
8570
+ return /* @__PURE__ */ jsx336(
8546
8571
  "div",
8547
8572
  {
8548
8573
  className: clsx_default("lib-xplat-spinner", size, type),
8549
8574
  role: "status",
8550
8575
  "aria-label": "\uB85C\uB529 \uC911",
8551
8576
  children: /* @__PURE__ */ jsxs216("svg", { viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
8552
- /* @__PURE__ */ jsx335(
8577
+ /* @__PURE__ */ jsx336(
8553
8578
  "circle",
8554
8579
  {
8555
8580
  className: "track",
@@ -8559,7 +8584,7 @@ var Spinner = (props) => {
8559
8584
  strokeWidth: "3"
8560
8585
  }
8561
8586
  ),
8562
- /* @__PURE__ */ jsx335(
8587
+ /* @__PURE__ */ jsx336(
8563
8588
  "circle",
8564
8589
  {
8565
8590
  className: "indicator",
@@ -8578,20 +8603,20 @@ Spinner.displayName = "Spinner";
8578
8603
  var Spinner_default = Spinner;
8579
8604
 
8580
8605
  // src/components/Steps/Steps.tsx
8581
- import { jsx as jsx336, jsxs as jsxs217 } from "react/jsx-runtime";
8606
+ import { jsx as jsx337, jsxs as jsxs217 } from "react/jsx-runtime";
8582
8607
  var Steps = (props) => {
8583
8608
  const {
8584
8609
  items,
8585
8610
  current,
8586
8611
  type = "brand"
8587
8612
  } = props;
8588
- return /* @__PURE__ */ jsx336("div", { className: clsx_default("lib-xplat-steps", type), children: items.map((item, index) => {
8613
+ return /* @__PURE__ */ jsx337("div", { className: clsx_default("lib-xplat-steps", type), children: items.map((item, index) => {
8589
8614
  const status = index < current ? "completed" : index === current ? "active" : "pending";
8590
8615
  return /* @__PURE__ */ jsxs217("div", { className: clsx_default("step-item", status), children: [
8591
- /* @__PURE__ */ jsx336("div", { className: "step-circle", children: status === "completed" ? /* @__PURE__ */ jsx336(CheckIcon_default, {}) : /* @__PURE__ */ jsx336("span", { children: index + 1 }) }),
8616
+ /* @__PURE__ */ jsx337("div", { className: "step-circle", children: status === "completed" ? /* @__PURE__ */ jsx337(CheckIcon_default, {}) : /* @__PURE__ */ jsx337("span", { children: index + 1 }) }),
8592
8617
  /* @__PURE__ */ jsxs217("div", { className: "step-content", children: [
8593
- /* @__PURE__ */ jsx336("span", { className: "step-title", children: item.title }),
8594
- item.description && /* @__PURE__ */ jsx336("span", { className: "step-description", children: item.description })
8618
+ /* @__PURE__ */ jsx337("span", { className: "step-title", children: item.title }),
8619
+ item.description && /* @__PURE__ */ jsx337("span", { className: "step-description", children: item.description })
8595
8620
  ] })
8596
8621
  ] }, index);
8597
8622
  }) });
@@ -8601,7 +8626,7 @@ var Steps_default = Steps;
8601
8626
 
8602
8627
  // src/components/Swiper/Swiper.tsx
8603
8628
  import React30 from "react";
8604
- import { jsx as jsx337, jsxs as jsxs218 } from "react/jsx-runtime";
8629
+ import { jsx as jsx338, jsxs as jsxs218 } from "react/jsx-runtime";
8605
8630
  var Swiper = (props) => {
8606
8631
  const {
8607
8632
  auto = false,
@@ -8800,7 +8825,7 @@ var Swiper = (props) => {
8800
8825
  const slideWidthPercent = 100 / viewItemCount;
8801
8826
  const gapAdjust = spaceBetween * (viewItemCount - 1) / viewItemCount;
8802
8827
  const slideElements = React30.useMemo(
8803
- () => extendedItems.map((item, idx) => /* @__PURE__ */ jsx337(
8828
+ () => extendedItems.map((item, idx) => /* @__PURE__ */ jsx338(
8804
8829
  "div",
8805
8830
  {
8806
8831
  className: "lib-xplat-swiper__slide",
@@ -8820,13 +8845,13 @@ var Swiper = (props) => {
8820
8845
  totalSteps - 1
8821
8846
  );
8822
8847
  return /* @__PURE__ */ jsxs218("div", { className: "lib-xplat-swiper", ref: containerRef, children: [
8823
- /* @__PURE__ */ jsx337(
8848
+ /* @__PURE__ */ jsx338(
8824
8849
  "div",
8825
8850
  {
8826
8851
  className: "lib-xplat-swiper__viewport",
8827
8852
  onMouseDown: handleDragStart,
8828
8853
  onTouchStart: handleDragStart,
8829
- children: /* @__PURE__ */ jsx337(
8854
+ children: /* @__PURE__ */ jsx338(
8830
8855
  "div",
8831
8856
  {
8832
8857
  className: clsx_default(
@@ -8844,7 +8869,7 @@ var Swiper = (props) => {
8844
8869
  )
8845
8870
  }
8846
8871
  ),
8847
- showProgress && canSlide && /* @__PURE__ */ jsx337("div", { className: "lib-xplat-swiper__progress", children: /* @__PURE__ */ jsx337("div", { className: "lib-xplat-swiper__progress-track", children: /* @__PURE__ */ jsx337(
8872
+ showProgress && canSlide && /* @__PURE__ */ jsx338("div", { className: "lib-xplat-swiper__progress", children: /* @__PURE__ */ jsx338("div", { className: "lib-xplat-swiper__progress-track", children: /* @__PURE__ */ jsx338(
8848
8873
  "span",
8849
8874
  {
8850
8875
  className: "lib-xplat-swiper__progress-fill",
@@ -8854,7 +8879,7 @@ var Swiper = (props) => {
8854
8879
  }
8855
8880
  }
8856
8881
  ) }) }),
8857
- canSlide && /* @__PURE__ */ jsx337("div", { className: "lib-xplat-swiper__dots", children: Array.from({ length: totalSteps }, (_, i) => /* @__PURE__ */ jsx337(
8882
+ canSlide && /* @__PURE__ */ jsx338("div", { className: "lib-xplat-swiper__dots", children: Array.from({ length: totalSteps }, (_, i) => /* @__PURE__ */ jsx338(
8858
8883
  "button",
8859
8884
  {
8860
8885
  className: clsx_default(
@@ -8873,7 +8898,7 @@ var Swiper_default = Swiper;
8873
8898
 
8874
8899
  // src/components/Switch/Switch.tsx
8875
8900
  import React31 from "react";
8876
- import { jsx as jsx338 } from "react/jsx-runtime";
8901
+ import { jsx as jsx339 } from "react/jsx-runtime";
8877
8902
  var KNOB_TRANSITION_MS = 250;
8878
8903
  var Switch = (props) => {
8879
8904
  const {
@@ -8900,7 +8925,7 @@ var Switch = (props) => {
8900
8925
  timeoutRef.current = null;
8901
8926
  }, KNOB_TRANSITION_MS);
8902
8927
  };
8903
- return /* @__PURE__ */ jsx338(
8928
+ return /* @__PURE__ */ jsx339(
8904
8929
  "div",
8905
8930
  {
8906
8931
  className: clsx_default(
@@ -8913,7 +8938,7 @@ var Switch = (props) => {
8913
8938
  ),
8914
8939
  onClick: handleClick,
8915
8940
  "aria-disabled": disabled || isAnimating,
8916
- children: /* @__PURE__ */ jsx338("div", { className: clsx_default("knob", value ? "checked" : void 0) })
8941
+ children: /* @__PURE__ */ jsx339("div", { className: clsx_default("knob", value ? "checked" : void 0) })
8917
8942
  }
8918
8943
  );
8919
8944
  };
@@ -8931,7 +8956,7 @@ var useTableContext = () => {
8931
8956
  var TableContext_default = TableContext;
8932
8957
 
8933
8958
  // src/components/Table/Table.tsx
8934
- import { jsx as jsx339 } from "react/jsx-runtime";
8959
+ import { jsx as jsx340 } from "react/jsx-runtime";
8935
8960
  var Table = (props) => {
8936
8961
  const {
8937
8962
  children,
@@ -8941,7 +8966,7 @@ var Table = (props) => {
8941
8966
  headerSticky = false,
8942
8967
  stickyShadow = true
8943
8968
  } = props;
8944
- return /* @__PURE__ */ jsx339("div", { className: `lib-xplat-table-wrapper ${size}`, children: /* @__PURE__ */ jsx339(
8969
+ return /* @__PURE__ */ jsx340("div", { className: `lib-xplat-table-wrapper ${size}`, children: /* @__PURE__ */ jsx340(
8945
8970
  TableContext_default.Provider,
8946
8971
  {
8947
8972
  value: {
@@ -8950,7 +8975,7 @@ var Table = (props) => {
8950
8975
  headerSticky,
8951
8976
  stickyShadow
8952
8977
  },
8953
- children: /* @__PURE__ */ jsx339("table", { className: "lib-xplat-table", children })
8978
+ children: /* @__PURE__ */ jsx340("table", { className: "lib-xplat-table", children })
8954
8979
  }
8955
8980
  ) });
8956
8981
  };
@@ -8958,10 +8983,10 @@ Table.displayName = "Table";
8958
8983
  var Table_default = Table;
8959
8984
 
8960
8985
  // src/components/Table/TableBody.tsx
8961
- import { jsx as jsx340 } from "react/jsx-runtime";
8986
+ import { jsx as jsx341 } from "react/jsx-runtime";
8962
8987
  var TableBody = (props) => {
8963
8988
  const { children } = props;
8964
- return /* @__PURE__ */ jsx340("tbody", { children });
8989
+ return /* @__PURE__ */ jsx341("tbody", { children });
8965
8990
  };
8966
8991
  TableBody.displayName = "TableBody";
8967
8992
  var TableBody_default = TableBody;
@@ -8991,7 +9016,7 @@ var useTableRowContext = () => {
8991
9016
  var TableRowContext_default = TableRowContext;
8992
9017
 
8993
9018
  // src/components/Table/TableCell.tsx
8994
- import { jsx as jsx341 } from "react/jsx-runtime";
9019
+ import { jsx as jsx342 } from "react/jsx-runtime";
8995
9020
  var TableCell = React35.memo((props) => {
8996
9021
  const {
8997
9022
  children,
@@ -9033,7 +9058,7 @@ var TableCell = React35.memo((props) => {
9033
9058
  const CellTag = cellRef.current?.tagName === "TH" ? "th" : "td";
9034
9059
  const isLastSticky = isSticky && stickyCells[stickyCells.length - 1] === cellRef;
9035
9060
  const enableHover = headContext && headContext.cellHover;
9036
- return /* @__PURE__ */ jsx341(
9061
+ return /* @__PURE__ */ jsx342(
9037
9062
  CellTag,
9038
9063
  {
9039
9064
  ref: cellRef,
@@ -9058,20 +9083,20 @@ TableCell.displayName = "TableCell";
9058
9083
  var TableCell_default = TableCell;
9059
9084
 
9060
9085
  // src/components/Table/TableHead.tsx
9061
- import { jsx as jsx342 } from "react/jsx-runtime";
9086
+ import { jsx as jsx343 } from "react/jsx-runtime";
9062
9087
  var TableHead = ({
9063
9088
  children,
9064
9089
  cellHover = false
9065
9090
  }) => {
9066
9091
  const { headerSticky } = useTableContext();
9067
- return /* @__PURE__ */ jsx342(TableHeadContext_default.Provider, { value: { cellHover }, children: /* @__PURE__ */ jsx342("thead", { className: clsx_default(headerSticky ? "table-sticky" : null), children }) });
9092
+ return /* @__PURE__ */ jsx343(TableHeadContext_default.Provider, { value: { cellHover }, children: /* @__PURE__ */ jsx343("thead", { className: clsx_default(headerSticky ? "table-sticky" : null), children }) });
9068
9093
  };
9069
9094
  TableHead.displayName = "TableHead";
9070
9095
  var TableHead_default = TableHead;
9071
9096
 
9072
9097
  // src/components/Table/TableRow.tsx
9073
9098
  import React36 from "react";
9074
- import { jsx as jsx343 } from "react/jsx-runtime";
9099
+ import { jsx as jsx344 } from "react/jsx-runtime";
9075
9100
  var TableRow = React36.memo((props) => {
9076
9101
  const {
9077
9102
  children,
@@ -9087,7 +9112,7 @@ var TableRow = React36.memo((props) => {
9087
9112
  return [...prev, ref];
9088
9113
  });
9089
9114
  };
9090
- return /* @__PURE__ */ jsx343(TableRowContext_default.Provider, { value: { stickyCells, registerStickyCell }, children: /* @__PURE__ */ jsx343(
9115
+ return /* @__PURE__ */ jsx344(TableRowContext_default.Provider, { value: { stickyCells, registerStickyCell }, children: /* @__PURE__ */ jsx344(
9091
9116
  "tr",
9092
9117
  {
9093
9118
  className: clsx_default(
@@ -9105,7 +9130,7 @@ TableRow.displayName = "TableRow";
9105
9130
  var TableRow_default = TableRow;
9106
9131
 
9107
9132
  // src/components/Tag/Tag.tsx
9108
- import { jsx as jsx344, jsxs as jsxs219 } from "react/jsx-runtime";
9133
+ import { jsx as jsx345, jsxs as jsxs219 } from "react/jsx-runtime";
9109
9134
  var Tag = (props) => {
9110
9135
  const {
9111
9136
  children,
@@ -9126,8 +9151,8 @@ var Tag = (props) => {
9126
9151
  disabled && "disabled"
9127
9152
  ),
9128
9153
  children: [
9129
- /* @__PURE__ */ jsx344("span", { className: "tag-label", children }),
9130
- onClose && /* @__PURE__ */ jsx344("button", { className: "tag-close", onClick: onClose, "aria-label": "\uC0AD\uC81C", disabled, children: /* @__PURE__ */ jsx344(XIcon_default, {}) })
9154
+ /* @__PURE__ */ jsx345("span", { className: "tag-label", children }),
9155
+ onClose && /* @__PURE__ */ jsx345("button", { className: "tag-close", onClick: onClose, "aria-label": "\uC0AD\uC81C", disabled, children: /* @__PURE__ */ jsx345(XIcon_default, {}) })
9131
9156
  ]
9132
9157
  }
9133
9158
  );
@@ -9137,7 +9162,7 @@ var Tag_default = Tag;
9137
9162
 
9138
9163
  // src/components/TextArea/TextArea.tsx
9139
9164
  import React37 from "react";
9140
- import { jsx as jsx345 } from "react/jsx-runtime";
9165
+ import { jsx as jsx346 } from "react/jsx-runtime";
9141
9166
  var TextArea = React37.forwardRef(
9142
9167
  (props, ref) => {
9143
9168
  const { value, onChange, disabled, ...textareaProps } = props;
@@ -9168,14 +9193,14 @@ var TextArea = React37.forwardRef(
9168
9193
  const nextHeight = Math.min(el.scrollHeight, 400);
9169
9194
  el.style.height = `${nextHeight}px`;
9170
9195
  }, [value]);
9171
- return /* @__PURE__ */ jsx345("div", { className: "lib-xplat-textarea-wrapper", children: /* @__PURE__ */ jsx345(
9196
+ return /* @__PURE__ */ jsx346("div", { className: "lib-xplat-textarea-wrapper", children: /* @__PURE__ */ jsx346(
9172
9197
  "div",
9173
9198
  {
9174
9199
  className: clsx_default(
9175
9200
  "lib-xplat-textarea",
9176
9201
  disabled ? "disabled" : void 0
9177
9202
  ),
9178
- children: /* @__PURE__ */ jsx345(
9203
+ children: /* @__PURE__ */ jsx346(
9179
9204
  "textarea",
9180
9205
  {
9181
9206
  ...textareaProps,
@@ -9195,7 +9220,7 @@ var TextArea_default = TextArea;
9195
9220
  // src/components/Toast/Toast.tsx
9196
9221
  import React38 from "react";
9197
9222
  import { createPortal as createPortal3 } from "react-dom";
9198
- import { jsx as jsx346, jsxs as jsxs220 } from "react/jsx-runtime";
9223
+ import { jsx as jsx347, jsxs as jsxs220 } from "react/jsx-runtime";
9199
9224
  var ToastContext = React38.createContext(null);
9200
9225
  var useToast = () => {
9201
9226
  const ctx = React38.useContext(ToastContext);
@@ -9211,7 +9236,7 @@ var ToastItemComponent = ({ item, isExiting, onClose }) => {
9211
9236
  setHeight(ref.current.offsetHeight);
9212
9237
  }
9213
9238
  }, [isExiting]);
9214
- return /* @__PURE__ */ jsx346(
9239
+ return /* @__PURE__ */ jsx347(
9215
9240
  "div",
9216
9241
  {
9217
9242
  className: clsx_default("lib-xplat-toast-wrapper", { exit: isExiting }),
@@ -9226,8 +9251,8 @@ var ToastItemComponent = ({ item, isExiting, onClose }) => {
9226
9251
  className: clsx_default("lib-xplat-toast", item.type, { exit: isExiting }),
9227
9252
  role: "alert",
9228
9253
  children: [
9229
- /* @__PURE__ */ jsx346("span", { className: "message", children: item.message }),
9230
- /* @__PURE__ */ jsx346("button", { className: "close-btn", onClick: onClose, "aria-label": "\uB2EB\uAE30", children: "\xD7" })
9254
+ /* @__PURE__ */ jsx347("span", { className: "message", children: item.message }),
9255
+ /* @__PURE__ */ jsx347("button", { className: "close-btn", onClick: onClose, "aria-label": "\uB2EB\uAE30", children: "\xD7" })
9231
9256
  ]
9232
9257
  }
9233
9258
  )
@@ -9268,7 +9293,7 @@ var ToastProvider = ({
9268
9293
  return /* @__PURE__ */ jsxs220(ToastContext.Provider, { value: { toast }, children: [
9269
9294
  children,
9270
9295
  mounted && createPortal3(
9271
- /* @__PURE__ */ jsx346("div", { className: clsx_default("lib-xplat-toast-container", position), children: toasts.map((t) => /* @__PURE__ */ jsx346(
9296
+ /* @__PURE__ */ jsx347("div", { className: clsx_default("lib-xplat-toast-container", position), children: toasts.map((t) => /* @__PURE__ */ jsx347(
9272
9297
  ToastItemComponent,
9273
9298
  {
9274
9299
  item: t,
@@ -9285,7 +9310,7 @@ ToastProvider.displayName = "ToastProvider";
9285
9310
 
9286
9311
  // src/components/Tooltip/Tooltip.tsx
9287
9312
  import React39 from "react";
9288
- import { jsx as jsx347, jsxs as jsxs221 } from "react/jsx-runtime";
9313
+ import { jsx as jsx348, jsxs as jsxs221 } from "react/jsx-runtime";
9289
9314
  var Tooltip = (props) => {
9290
9315
  const {
9291
9316
  type = "primary",
@@ -9294,8 +9319,8 @@ var Tooltip = (props) => {
9294
9319
  } = props;
9295
9320
  const iconRef = React39.useRef(null);
9296
9321
  return /* @__PURE__ */ jsxs221("div", { className: "lib-xplat-tooltip", children: [
9297
- /* @__PURE__ */ jsx347("div", { className: "tooltip-content", ref: iconRef, children: children || "Tooltip" }),
9298
- /* @__PURE__ */ jsx347("div", { className: clsx_default("tooltip-wrapper", type), children: description })
9322
+ /* @__PURE__ */ jsx348("div", { className: "tooltip-content", ref: iconRef, children: children || "Tooltip" }),
9323
+ /* @__PURE__ */ jsx348("div", { className: clsx_default("tooltip-wrapper", type), children: description })
9299
9324
  ] });
9300
9325
  };
9301
9326
  Tooltip.displayName = "Tooltip";
@@ -9303,10 +9328,10 @@ var Tooltip_default = Tooltip;
9303
9328
 
9304
9329
  // src/components/Video/Video.tsx
9305
9330
  import React40 from "react";
9306
- import { jsx as jsx348, jsxs as jsxs222 } from "react/jsx-runtime";
9331
+ import { jsx as jsx349, jsxs as jsxs222 } from "react/jsx-runtime";
9307
9332
  var PipIcon = () => /* @__PURE__ */ jsxs222("svg", { viewBox: "0 0 24 24", width: "1em", height: "1em", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [
9308
- /* @__PURE__ */ jsx348("rect", { x: "3", y: "5", width: "18", height: "14", rx: "2" }),
9309
- /* @__PURE__ */ jsx348("rect", { x: "12", y: "11", width: "7", height: "6", rx: "1", fill: "currentColor" })
9333
+ /* @__PURE__ */ jsx349("rect", { x: "3", y: "5", width: "18", height: "14", rx: "2" }),
9334
+ /* @__PURE__ */ jsx349("rect", { x: "12", y: "11", width: "7", height: "6", rx: "1", fill: "currentColor" })
9310
9335
  ] });
9311
9336
  var formatTime = (sec) => {
9312
9337
  if (!Number.isFinite(sec) || sec < 0) return "0:00";
@@ -9487,7 +9512,7 @@ var Video = React40.forwardRef((props, ref) => {
9487
9512
  ref: containerRef,
9488
9513
  className: clsx_default("lib-xplat-video", showControls && "has-controls"),
9489
9514
  children: [
9490
- /* @__PURE__ */ jsx348(
9515
+ /* @__PURE__ */ jsx349(
9491
9516
  "video",
9492
9517
  {
9493
9518
  ref: setRefs,
@@ -9508,7 +9533,7 @@ var Video = React40.forwardRef((props, ref) => {
9508
9533
  children
9509
9534
  }
9510
9535
  ),
9511
- showCenterPlay && /* @__PURE__ */ jsx348(
9536
+ showCenterPlay && /* @__PURE__ */ jsx349(
9512
9537
  "button",
9513
9538
  {
9514
9539
  type: "button",
@@ -9520,11 +9545,11 @@ var Video = React40.forwardRef((props, ref) => {
9520
9545
  onClick: togglePlay,
9521
9546
  "aria-label": isPlaying ? "\uC77C\uC2DC\uC815\uC9C0" : "\uC7AC\uC0DD",
9522
9547
  tabIndex: -1,
9523
- children: /* @__PURE__ */ jsx348("span", { className: "center-play-icon", children: /* @__PURE__ */ jsx348(PlayCircleIcon_default, {}) })
9548
+ children: /* @__PURE__ */ jsx349("span", { className: "center-play-icon", children: /* @__PURE__ */ jsx349(PlayCircleIcon_default, {}) })
9524
9549
  }
9525
9550
  ),
9526
9551
  showControls && /* @__PURE__ */ jsxs222("div", { className: "controls", onClick: (e) => e.stopPropagation(), children: [
9527
- /* @__PURE__ */ jsx348(
9552
+ /* @__PURE__ */ jsx349(
9528
9553
  "input",
9529
9554
  {
9530
9555
  type: "range",
@@ -9542,28 +9567,28 @@ var Video = React40.forwardRef((props, ref) => {
9542
9567
  }
9543
9568
  ),
9544
9569
  /* @__PURE__ */ jsxs222("div", { className: "controls-row", children: [
9545
- /* @__PURE__ */ jsx348(
9570
+ /* @__PURE__ */ jsx349(
9546
9571
  "button",
9547
9572
  {
9548
9573
  type: "button",
9549
9574
  className: "control-btn",
9550
9575
  onClick: togglePlay,
9551
9576
  "aria-label": isPlaying ? "\uC77C\uC2DC\uC815\uC9C0" : "\uC7AC\uC0DD",
9552
- children: isPlaying ? /* @__PURE__ */ jsx348(PauseIcon_default, {}) : /* @__PURE__ */ jsx348(PlayIcon_default, {})
9577
+ children: isPlaying ? /* @__PURE__ */ jsx349(PauseIcon_default, {}) : /* @__PURE__ */ jsx349(PlayIcon_default, {})
9553
9578
  }
9554
9579
  ),
9555
9580
  /* @__PURE__ */ jsxs222("div", { className: "volume-group", children: [
9556
- /* @__PURE__ */ jsx348(
9581
+ /* @__PURE__ */ jsx349(
9557
9582
  "button",
9558
9583
  {
9559
9584
  type: "button",
9560
9585
  className: "control-btn",
9561
9586
  onClick: toggleMute,
9562
9587
  "aria-label": isMuted ? "\uC74C\uC18C\uAC70 \uD574\uC81C" : "\uC74C\uC18C\uAC70",
9563
- children: /* @__PURE__ */ jsx348(VolumeGlyph, {})
9588
+ children: /* @__PURE__ */ jsx349(VolumeGlyph, {})
9564
9589
  }
9565
9590
  ),
9566
- /* @__PURE__ */ jsx348(
9591
+ /* @__PURE__ */ jsx349(
9567
9592
  "input",
9568
9593
  {
9569
9594
  type: "range",
@@ -9583,7 +9608,7 @@ var Video = React40.forwardRef((props, ref) => {
9583
9608
  " / ",
9584
9609
  formatTime(duration)
9585
9610
  ] }),
9586
- /* @__PURE__ */ jsx348("div", { className: "controls-spacer" }),
9611
+ /* @__PURE__ */ jsx349("div", { className: "controls-spacer" }),
9587
9612
  playbackRates && playbackRates.length > 0 && /* @__PURE__ */ jsxs222("div", { className: clsx_default("rate-group", rateMenuOpen && "is-open"), children: [
9588
9613
  /* @__PURE__ */ jsxs222(
9589
9614
  "button",
@@ -9599,7 +9624,7 @@ var Video = React40.forwardRef((props, ref) => {
9599
9624
  ]
9600
9625
  }
9601
9626
  ),
9602
- rateMenuOpen && /* @__PURE__ */ jsx348("ul", { className: "rate-menu", role: "menu", children: playbackRates.map((r2) => /* @__PURE__ */ jsx348("li", { children: /* @__PURE__ */ jsxs222(
9627
+ rateMenuOpen && /* @__PURE__ */ jsx349("ul", { className: "rate-menu", role: "menu", children: playbackRates.map((r2) => /* @__PURE__ */ jsx349("li", { children: /* @__PURE__ */ jsxs222(
9603
9628
  "button",
9604
9629
  {
9605
9630
  type: "button",
@@ -9613,7 +9638,7 @@ var Video = React40.forwardRef((props, ref) => {
9613
9638
  }
9614
9639
  ) }, r2)) })
9615
9640
  ] }),
9616
- showCaptions && /* @__PURE__ */ jsx348(
9641
+ showCaptions && /* @__PURE__ */ jsx349(
9617
9642
  "button",
9618
9643
  {
9619
9644
  type: "button",
@@ -9621,37 +9646,37 @@ var Video = React40.forwardRef((props, ref) => {
9621
9646
  onClick: toggleCaptions,
9622
9647
  "aria-label": captionsOn ? "\uC790\uB9C9 \uB044\uAE30" : "\uC790\uB9C9 \uCF1C\uAE30",
9623
9648
  "aria-pressed": captionsOn,
9624
- children: /* @__PURE__ */ jsx348(TypeIcon_default, {})
9649
+ children: /* @__PURE__ */ jsx349(TypeIcon_default, {})
9625
9650
  }
9626
9651
  ),
9627
- showPip && pipSupported && /* @__PURE__ */ jsx348(
9652
+ showPip && pipSupported && /* @__PURE__ */ jsx349(
9628
9653
  "button",
9629
9654
  {
9630
9655
  type: "button",
9631
9656
  className: clsx_default("control-btn", isPip && "is-active"),
9632
9657
  onClick: togglePip,
9633
9658
  "aria-label": isPip ? "PIP \uC885\uB8CC" : "PIP",
9634
- children: /* @__PURE__ */ jsx348(PipIcon, {})
9659
+ children: /* @__PURE__ */ jsx349(PipIcon, {})
9635
9660
  }
9636
9661
  ),
9637
- showDownload && /* @__PURE__ */ jsx348(
9662
+ showDownload && /* @__PURE__ */ jsx349(
9638
9663
  "a",
9639
9664
  {
9640
9665
  className: "control-btn",
9641
9666
  href: src,
9642
9667
  download: downloadFileName ?? true,
9643
9668
  "aria-label": "\uB2E4\uC6B4\uB85C\uB4DC",
9644
- children: /* @__PURE__ */ jsx348(DownloadIcon_default, {})
9669
+ children: /* @__PURE__ */ jsx349(DownloadIcon_default, {})
9645
9670
  }
9646
9671
  ),
9647
- /* @__PURE__ */ jsx348(
9672
+ /* @__PURE__ */ jsx349(
9648
9673
  "button",
9649
9674
  {
9650
9675
  type: "button",
9651
9676
  className: "control-btn",
9652
9677
  onClick: toggleFullscreen,
9653
9678
  "aria-label": isFullscreen ? "\uC804\uCCB4\uD654\uBA74 \uC885\uB8CC" : "\uC804\uCCB4\uD654\uBA74",
9654
- children: isFullscreen ? /* @__PURE__ */ jsx348(MinimizeIcon_default, {}) : /* @__PURE__ */ jsx348(MaximizeIcon_default, {})
9679
+ children: isFullscreen ? /* @__PURE__ */ jsx349(MinimizeIcon_default, {}) : /* @__PURE__ */ jsx349(MaximizeIcon_default, {})
9655
9680
  }
9656
9681
  )
9657
9682
  ] })
@@ -9664,7 +9689,7 @@ Video.displayName = "Video";
9664
9689
  var Video_default = Video;
9665
9690
 
9666
9691
  // src/layout/Grid/FullGrid/FullGrid.tsx
9667
- import { jsx as jsx349 } from "react/jsx-runtime";
9692
+ import { jsx as jsx350 } from "react/jsx-runtime";
9668
9693
  var GAP_MAP = {
9669
9694
  none: "var(--spacing-space-none)",
9670
9695
  xs: "var(--spacing-space-1)",
@@ -9677,13 +9702,13 @@ var GAP_MAP = {
9677
9702
  var FullGrid = (props) => {
9678
9703
  const { children, gap } = props;
9679
9704
  const style = gap != null ? { gap: GAP_MAP[gap] } : void 0;
9680
- return /* @__PURE__ */ jsx349("div", { className: "lib-xplat-full-grid", style, children });
9705
+ return /* @__PURE__ */ jsx350("div", { className: "lib-xplat-full-grid", style, children });
9681
9706
  };
9682
9707
  FullGrid.displayName = "FullGrid";
9683
9708
  var FullGrid_default = FullGrid;
9684
9709
 
9685
9710
  // src/layout/Grid/FullScreen/FullScreen.tsx
9686
- import { jsx as jsx350 } from "react/jsx-runtime";
9711
+ import { jsx as jsx351 } from "react/jsx-runtime";
9687
9712
  var GAP_MAP2 = {
9688
9713
  none: "var(--spacing-space-none)",
9689
9714
  xs: "var(--spacing-space-1)",
@@ -9696,13 +9721,13 @@ var GAP_MAP2 = {
9696
9721
  var FullScreen = (props) => {
9697
9722
  const { children, gap } = props;
9698
9723
  const style = gap != null ? { gap: GAP_MAP2[gap] } : void 0;
9699
- return /* @__PURE__ */ jsx350("div", { className: "lib-xplat-full-screen", style, children });
9724
+ return /* @__PURE__ */ jsx351("div", { className: "lib-xplat-full-screen", style, children });
9700
9725
  };
9701
9726
  FullScreen.displayName = "FullScreen";
9702
9727
  var FullScreen_default = FullScreen;
9703
9728
 
9704
9729
  // src/layout/Grid/Item/Item.tsx
9705
- import { jsx as jsx351 } from "react/jsx-runtime";
9730
+ import { jsx as jsx352 } from "react/jsx-runtime";
9706
9731
  var calculateSpans = (column) => {
9707
9732
  const spans = {};
9708
9733
  let inherited = column.default;
@@ -9719,35 +9744,35 @@ var GridItem = ({ column, children, className }) => {
9719
9744
  Object.entries(spans).forEach(([key, value]) => {
9720
9745
  style[`--column-${key}`] = value;
9721
9746
  });
9722
- return /* @__PURE__ */ jsx351("div", { className: clsx_default("lib-xplat-grid-item", className), style, children });
9747
+ return /* @__PURE__ */ jsx352("div", { className: clsx_default("lib-xplat-grid-item", className), style, children });
9723
9748
  };
9724
9749
  GridItem.displayName = "GridItem";
9725
9750
  var Item_default = GridItem;
9726
9751
 
9727
9752
  // src/layout/Header/Header.tsx
9728
- import { jsx as jsx352, jsxs as jsxs223 } from "react/jsx-runtime";
9753
+ import { jsx as jsx353, jsxs as jsxs223 } from "react/jsx-runtime";
9729
9754
  var Header = ({
9730
9755
  logo,
9731
9756
  centerContent,
9732
9757
  rightContent
9733
9758
  }) => {
9734
9759
  return /* @__PURE__ */ jsxs223("div", { className: "lib-xplat-layout-header", children: [
9735
- /* @__PURE__ */ jsx352("div", { children: logo }),
9736
- /* @__PURE__ */ jsx352("div", { children: centerContent }),
9737
- /* @__PURE__ */ jsx352("div", { children: rightContent })
9760
+ /* @__PURE__ */ jsx353("div", { children: logo }),
9761
+ /* @__PURE__ */ jsx353("div", { children: centerContent }),
9762
+ /* @__PURE__ */ jsx353("div", { children: rightContent })
9738
9763
  ] });
9739
9764
  };
9740
9765
  Header.displayName = "Header";
9741
9766
  var Header_default = Header;
9742
9767
 
9743
9768
  // src/layout/Layout/Layout.tsx
9744
- import { Fragment as Fragment5, jsx as jsx353, jsxs as jsxs224 } from "react/jsx-runtime";
9769
+ import { Fragment as Fragment5, jsx as jsx354, jsxs as jsxs224 } from "react/jsx-runtime";
9745
9770
  var Layout = (props) => {
9746
9771
  const { header, sideBar, children } = props;
9747
- return /* @__PURE__ */ jsx353("div", { className: "lib-xplat-layout", children: /* @__PURE__ */ jsxs224("div", { className: "lib-xplat-layout-content-wrapper", children: [
9748
- sideBar && /* @__PURE__ */ jsx353(Fragment5, { children: sideBar }),
9772
+ return /* @__PURE__ */ jsx354("div", { className: "lib-xplat-layout", children: /* @__PURE__ */ jsxs224("div", { className: "lib-xplat-layout-content-wrapper", children: [
9773
+ sideBar && /* @__PURE__ */ jsx354(Fragment5, { children: sideBar }),
9749
9774
  /* @__PURE__ */ jsxs224("div", { className: "lib-xplat-layout-content", children: [
9750
- header && /* @__PURE__ */ jsx353("div", { className: "lib-xplat-layout-conent-header", children: header }),
9775
+ header && /* @__PURE__ */ jsx354("div", { className: "lib-xplat-layout-conent-header", children: header }),
9751
9776
  children
9752
9777
  ] })
9753
9778
  ] }) });
@@ -9769,18 +9794,18 @@ var useSideBarContext = () => {
9769
9794
  var SideBarContext_default = SideBarContext;
9770
9795
 
9771
9796
  // src/layout/SideBar/SideBar.tsx
9772
- import { jsx as jsx354 } from "react/jsx-runtime";
9797
+ import { jsx as jsx355 } from "react/jsx-runtime";
9773
9798
  var SideBar = (props) => {
9774
9799
  const { children, className } = props;
9775
9800
  const [isOpen, setIsOpen] = React42.useState(true);
9776
9801
  const handleSwitchSideBar = () => {
9777
9802
  setIsOpen((prev) => !prev);
9778
9803
  };
9779
- return /* @__PURE__ */ jsx354(
9804
+ return /* @__PURE__ */ jsx355(
9780
9805
  SideBarContext_default.Provider,
9781
9806
  {
9782
9807
  value: { isSidebarOpen: isOpen, handleSwitchSideBar },
9783
- children: /* @__PURE__ */ jsx354(
9808
+ children: /* @__PURE__ */ jsx355(
9784
9809
  "div",
9785
9810
  {
9786
9811
  className: clsx_default(
@@ -9966,6 +9991,7 @@ export {
9966
9991
  HexagonIcon_default as HexagonIcon,
9967
9992
  HomeIcon_default as HomeIcon,
9968
9993
  HtmlTypeWriter_default as HtmlTypewriter,
9994
+ IconButton_default as IconButton,
9969
9995
  ImageIcon_default as ImageIcon,
9970
9996
  ImageSelector_default as ImageSelector,
9971
9997
  InboxIcon_default as InboxIcon,