@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/components/ChatInput/index.cjs +59 -39
- package/dist/components/ChatInput/index.css +81 -45
- package/dist/components/ChatInput/index.d.cts +1 -1
- package/dist/components/ChatInput/index.d.ts +1 -1
- package/dist/components/ChatInput/index.js +59 -39
- package/dist/components/IconButton/index.cjs +68 -0
- package/dist/components/IconButton/index.css +77 -0
- package/dist/components/IconButton/index.d.cts +18 -0
- package/dist/components/IconButton/index.d.ts +18 -0
- package/dist/components/IconButton/index.js +41 -0
- package/dist/components/index.cjs +329 -305
- package/dist/components/index.css +81 -45
- package/dist/components/index.d.cts +1 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +272 -249
- package/dist/index.cjs +339 -312
- package/dist/index.css +81 -45
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +280 -254
- package/package.json +1 -1
package/dist/components/index.js
CHANGED
|
@@ -381,13 +381,7 @@ import { jsx as jsx86 } from "react/jsx-runtime";
|
|
|
381
381
|
|
|
382
382
|
// src/tokens/svg/communication/MessageSquareIcon.tsx
|
|
383
383
|
import { jsx as jsx87 } from "react/jsx-runtime";
|
|
384
|
-
|
|
385
|
-
// src/tokens/svg/communication/PaperclipIcon.tsx
|
|
386
|
-
import { jsx as jsx88 } from "react/jsx-runtime";
|
|
387
|
-
|
|
388
|
-
// src/tokens/svg/communication/SendIcon.tsx
|
|
389
|
-
import { jsx as jsx89, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
390
|
-
var SendIcon = () => /* @__PURE__ */ jsxs47(
|
|
384
|
+
var MessageSquareIcon = () => /* @__PURE__ */ jsx87(
|
|
391
385
|
"svg",
|
|
392
386
|
{
|
|
393
387
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -395,13 +389,16 @@ var SendIcon = () => /* @__PURE__ */ jsxs47(
|
|
|
395
389
|
height: "1em",
|
|
396
390
|
viewBox: "0 0 20 20",
|
|
397
391
|
fill: "none",
|
|
398
|
-
children:
|
|
399
|
-
/* @__PURE__ */ jsx89("g", { clipPath: "url(#send-clip)", children: /* @__PURE__ */ jsx89("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M18.3558 0.918873C18.3887 0.919879 18.4212 0.9224 18.4535 0.927663C18.4642 0.929393 18.4751 0.930348 18.4857 0.932545C18.527 0.941123 18.5675 0.953269 18.6068 0.968678C18.6178 0.972968 18.6282 0.978499 18.639 0.983327C18.6672 0.995914 18.6945 1.01021 18.7211 1.0263C18.7403 1.03794 18.7594 1.04988 18.7777 1.0634C18.7803 1.06534 18.7829 1.0673 18.7855 1.06926C18.8126 1.08979 18.839 1.11195 18.8637 1.13665C18.8872 1.16018 18.9084 1.18517 18.9281 1.21087C18.9322 1.21625 18.9359 1.22198 18.9398 1.22747C18.9501 1.24168 18.959 1.25667 18.9681 1.27141C18.9866 1.30108 19.0029 1.33154 19.017 1.36321C19.0214 1.37309 19.0267 1.38248 19.0306 1.39251C19.0461 1.43186 19.0581 1.47231 19.0668 1.5136C19.069 1.52426 19.0699 1.5351 19.0717 1.54583C19.077 1.57815 19.0794 1.61062 19.0805 1.64348C19.0808 1.65621 19.0817 1.66884 19.0814 1.68157C19.0799 1.75981 19.0681 1.83872 19.0414 1.91497L13.2074 18.581C13.1058 18.871 12.8377 19.0703 12.5306 19.0829C12.2237 19.0954 11.9398 18.9192 11.8148 18.6386L8.59706 11.4003L1.3617 8.18547C1.08085 8.06057 0.90492 7.77678 0.917368 7.46965C0.929915 7.16252 1.12827 6.89358 1.41834 6.79192L18.0853 0.958913C18.1613 0.932334 18.2398 0.919479 18.3178 0.917897C18.3305 0.91763 18.3431 0.918498 18.3558 0.918873ZM10.0609 10.999L12.4164 16.2997L16.5375 4.52239L10.0609 10.999ZM3.69862 7.58294L9.00038 9.93841L15.4808 3.45794L3.69862 7.58294Z", fill: "currentColor" }) }),
|
|
400
|
-
/* @__PURE__ */ jsx89("defs", { children: /* @__PURE__ */ jsx89("clipPath", { id: "send-clip", children: /* @__PURE__ */ jsx89("rect", { width: "20", height: "20", fill: "currentColor" }) }) })
|
|
401
|
-
]
|
|
392
|
+
children: /* @__PURE__ */ jsx87("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M15.833 1.75C16.4739 1.75 17.0888 2.00479 17.542 2.45801C17.9952 2.91122 18.25 3.52605 18.25 4.16699V12.5C18.25 13.1409 17.9952 13.7558 17.542 14.209C17.0888 14.6621 16.4739 14.917 15.833 14.917H6.14355L3.03027 18.0303C2.81579 18.2448 2.49313 18.3094 2.21289 18.1934C1.93263 18.0773 1.75 17.8033 1.75 17.5V4.16699C1.75 3.52605 2.00479 2.91122 2.45801 2.45801C2.91122 2.00479 3.52605 1.75 4.16699 1.75H15.833ZM4.16699 3.25C3.92388 3.25 3.69046 3.34665 3.51855 3.51855C3.34665 3.69046 3.25 3.92388 3.25 4.16699V15.6895L5.30273 13.6367L5.41699 13.543C5.53928 13.4613 5.68382 13.4171 5.83301 13.417H15.833C16.076 13.417 16.3096 13.3202 16.4814 13.1484C16.6534 12.9765 16.75 12.7431 16.75 12.5V4.16699C16.75 3.92388 16.6534 3.69046 16.4814 3.51855C16.3095 3.34665 16.0761 3.25 15.833 3.25H4.16699Z", fill: "currentColor" })
|
|
402
393
|
}
|
|
403
394
|
);
|
|
404
|
-
var
|
|
395
|
+
var MessageSquareIcon_default = MessageSquareIcon;
|
|
396
|
+
|
|
397
|
+
// src/tokens/svg/communication/PaperclipIcon.tsx
|
|
398
|
+
import { jsx as jsx88 } from "react/jsx-runtime";
|
|
399
|
+
|
|
400
|
+
// src/tokens/svg/communication/SendIcon.tsx
|
|
401
|
+
import { jsx as jsx89, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
405
402
|
|
|
406
403
|
// src/tokens/svg/date/CalendarIcon.tsx
|
|
407
404
|
import { jsx as jsx90 } from "react/jsx-runtime";
|
|
@@ -1950,7 +1947,32 @@ var Calendar_default = Calendar;
|
|
|
1950
1947
|
|
|
1951
1948
|
// src/components/ChatInput/ChatInput.tsx
|
|
1952
1949
|
import React4 from "react";
|
|
1953
|
-
|
|
1950
|
+
|
|
1951
|
+
// src/components/IconButton/IconButton.tsx
|
|
1952
|
+
import { jsx as jsx302 } from "react/jsx-runtime";
|
|
1953
|
+
var IconButton = (props) => {
|
|
1954
|
+
const {
|
|
1955
|
+
icon,
|
|
1956
|
+
type = "primary",
|
|
1957
|
+
size = "md",
|
|
1958
|
+
disabled,
|
|
1959
|
+
...rest
|
|
1960
|
+
} = props;
|
|
1961
|
+
return /* @__PURE__ */ jsx302(
|
|
1962
|
+
"button",
|
|
1963
|
+
{
|
|
1964
|
+
className: clsx_default("lib-xplat-icon-button", type, size),
|
|
1965
|
+
disabled,
|
|
1966
|
+
...rest,
|
|
1967
|
+
children: icon
|
|
1968
|
+
}
|
|
1969
|
+
);
|
|
1970
|
+
};
|
|
1971
|
+
IconButton.displayName = "IconButton";
|
|
1972
|
+
var IconButton_default = IconButton;
|
|
1973
|
+
|
|
1974
|
+
// src/components/ChatInput/ChatInput.tsx
|
|
1975
|
+
import { jsx as jsx303, jsxs as jsxs194 } from "react/jsx-runtime";
|
|
1954
1976
|
var MAX_HEIGHT = 200;
|
|
1955
1977
|
var ChatInput = React4.forwardRef(
|
|
1956
1978
|
(props, ref) => {
|
|
@@ -2002,7 +2024,7 @@ var ChatInput = React4.forwardRef(
|
|
|
2002
2024
|
updateHeight();
|
|
2003
2025
|
}, [value, updateHeight]);
|
|
2004
2026
|
return /* @__PURE__ */ jsxs194("div", { className: clsx_default("lib-xplat-chat-input", disabled && "disabled"), children: [
|
|
2005
|
-
/* @__PURE__ */
|
|
2027
|
+
/* @__PURE__ */ jsx303(
|
|
2006
2028
|
"textarea",
|
|
2007
2029
|
{
|
|
2008
2030
|
ref: setRefs,
|
|
@@ -2015,15 +2037,15 @@ var ChatInput = React4.forwardRef(
|
|
|
2015
2037
|
onKeyDown: handleKeyDown
|
|
2016
2038
|
}
|
|
2017
2039
|
),
|
|
2018
|
-
/* @__PURE__ */
|
|
2019
|
-
|
|
2040
|
+
/* @__PURE__ */ jsx303(
|
|
2041
|
+
IconButton_default,
|
|
2020
2042
|
{
|
|
2021
|
-
|
|
2022
|
-
|
|
2043
|
+
icon: /* @__PURE__ */ jsx303(MessageSquareIcon_default, {}),
|
|
2044
|
+
type: buttonType,
|
|
2045
|
+
size: "sm",
|
|
2023
2046
|
disabled: !hasText || disabled,
|
|
2024
2047
|
onClick: handleSubmit,
|
|
2025
|
-
"aria-label": "\uC804\uC1A1"
|
|
2026
|
-
children: /* @__PURE__ */ jsx302(SendIcon_default, {})
|
|
2048
|
+
"aria-label": "\uC804\uC1A1"
|
|
2027
2049
|
}
|
|
2028
2050
|
)
|
|
2029
2051
|
] });
|
|
@@ -2033,7 +2055,7 @@ ChatInput.displayName = "ChatInput";
|
|
|
2033
2055
|
var ChatInput_default = ChatInput;
|
|
2034
2056
|
|
|
2035
2057
|
// src/components/Box/Box.tsx
|
|
2036
|
-
import { jsx as
|
|
2058
|
+
import { jsx as jsx304, jsxs as jsxs195 } from "react/jsx-runtime";
|
|
2037
2059
|
var Box = ({
|
|
2038
2060
|
children,
|
|
2039
2061
|
title,
|
|
@@ -2041,8 +2063,8 @@ var Box = ({
|
|
|
2041
2063
|
padding = "md"
|
|
2042
2064
|
}) => {
|
|
2043
2065
|
return /* @__PURE__ */ jsxs195("div", { className: clsx_default("lib-xplat-box", variant, `pad-${padding}`), children: [
|
|
2044
|
-
title && /* @__PURE__ */
|
|
2045
|
-
/* @__PURE__ */
|
|
2066
|
+
title && /* @__PURE__ */ jsx304("div", { className: "box-title", children: title }),
|
|
2067
|
+
/* @__PURE__ */ jsx304("div", { className: "box-content", children })
|
|
2046
2068
|
] });
|
|
2047
2069
|
};
|
|
2048
2070
|
Box.displayName = "Box";
|
|
@@ -2052,10 +2074,10 @@ var Box_default = Box;
|
|
|
2052
2074
|
import React5 from "react";
|
|
2053
2075
|
|
|
2054
2076
|
// src/components/CardTab/CardTabPanel.tsx
|
|
2055
|
-
import { jsx as
|
|
2077
|
+
import { jsx as jsx305 } from "react/jsx-runtime";
|
|
2056
2078
|
var CardTabPanel = (props) => {
|
|
2057
2079
|
const { children, columns = 3 } = props;
|
|
2058
|
-
return /* @__PURE__ */
|
|
2080
|
+
return /* @__PURE__ */ jsx305(
|
|
2059
2081
|
"div",
|
|
2060
2082
|
{
|
|
2061
2083
|
className: "card-tab-panel",
|
|
@@ -2068,7 +2090,7 @@ CardTabPanel.displayName = "CardTab.Panel";
|
|
|
2068
2090
|
var CardTabPanel_default = CardTabPanel;
|
|
2069
2091
|
|
|
2070
2092
|
// src/components/CardTab/CardTab.tsx
|
|
2071
|
-
import { jsx as
|
|
2093
|
+
import { jsx as jsx306, jsxs as jsxs196 } from "react/jsx-runtime";
|
|
2072
2094
|
var CardTabRoot = (props) => {
|
|
2073
2095
|
const {
|
|
2074
2096
|
tabs,
|
|
@@ -2093,9 +2115,9 @@ var CardTabRoot = (props) => {
|
|
|
2093
2115
|
(panel) => panel.props.value === activeValue
|
|
2094
2116
|
);
|
|
2095
2117
|
return /* @__PURE__ */ jsxs196("div", { className: clsx_default("lib-xplat-card-tab", size), children: [
|
|
2096
|
-
/* @__PURE__ */
|
|
2118
|
+
/* @__PURE__ */ jsx306("div", { className: "card-tab-bar", children: tabs.map((tab) => {
|
|
2097
2119
|
const isActive = tab.value === activeValue;
|
|
2098
|
-
return /* @__PURE__ */
|
|
2120
|
+
return /* @__PURE__ */ jsx306(
|
|
2099
2121
|
"button",
|
|
2100
2122
|
{
|
|
2101
2123
|
className: clsx_default("card-tab-trigger", isActive && "active"),
|
|
@@ -2107,7 +2129,7 @@ var CardTabRoot = (props) => {
|
|
|
2107
2129
|
tab.value
|
|
2108
2130
|
);
|
|
2109
2131
|
}) }),
|
|
2110
|
-
/* @__PURE__ */
|
|
2132
|
+
/* @__PURE__ */ jsx306("div", { className: "card-tab-body", children: activePanel })
|
|
2111
2133
|
] });
|
|
2112
2134
|
};
|
|
2113
2135
|
CardTabRoot.displayName = "CardTab";
|
|
@@ -2118,7 +2140,7 @@ var CardTab_default = CardTab;
|
|
|
2118
2140
|
|
|
2119
2141
|
// src/components/Chart/Chart.tsx
|
|
2120
2142
|
import React6 from "react";
|
|
2121
|
-
import { Fragment as Fragment2, jsx as
|
|
2143
|
+
import { Fragment as Fragment2, jsx as jsx307, jsxs as jsxs197 } from "react/jsx-runtime";
|
|
2122
2144
|
var CATEGORICAL_COUNT2 = 8;
|
|
2123
2145
|
var LINE_BAR_PALETTES = Array.from({ length: CATEGORICAL_COUNT2 }, (_, i) => {
|
|
2124
2146
|
const n = i + 1;
|
|
@@ -2280,12 +2302,12 @@ var useChartTooltip = (enabled) => {
|
|
|
2280
2302
|
}, []);
|
|
2281
2303
|
return { tooltip, show, hide, move, containerRef };
|
|
2282
2304
|
};
|
|
2283
|
-
var GridLines = React6.memo(({ width, height, chartH, maxVal }) => /* @__PURE__ */
|
|
2305
|
+
var GridLines = React6.memo(({ width, height, chartH, maxVal }) => /* @__PURE__ */ jsx307(Fragment2, { children: [0, 0.25, 0.5, 0.75, 1].map((ratio) => {
|
|
2284
2306
|
const y = PADDING.top + (1 - ratio) * chartH;
|
|
2285
2307
|
const val = Math.round(maxVal * ratio);
|
|
2286
2308
|
return /* @__PURE__ */ jsxs197("g", { children: [
|
|
2287
|
-
/* @__PURE__ */
|
|
2288
|
-
/* @__PURE__ */
|
|
2309
|
+
/* @__PURE__ */ jsx307("line", { x1: PADDING.left, y1: y, x2: width - PADDING.right, y2: y, className: "chart-grid" }),
|
|
2310
|
+
/* @__PURE__ */ jsx307("text", { x: PADDING.left - 8, y: y + 4, className: "chart-axis-label", textAnchor: "end", children: val })
|
|
2289
2311
|
] }, ratio);
|
|
2290
2312
|
}) }));
|
|
2291
2313
|
GridLines.displayName = "GridLines";
|
|
@@ -2297,10 +2319,10 @@ var getLabelStep = (count, chartW) => {
|
|
|
2297
2319
|
};
|
|
2298
2320
|
var AxisLabels = React6.memo(({ labels, count, chartW, height }) => {
|
|
2299
2321
|
const step = getLabelStep(count, chartW);
|
|
2300
|
-
return /* @__PURE__ */
|
|
2322
|
+
return /* @__PURE__ */ jsx307(Fragment2, { children: labels.map((label, i) => {
|
|
2301
2323
|
if (i % step !== 0) return null;
|
|
2302
2324
|
const x = PADDING.left + i / (count - 1 || 1) * chartW;
|
|
2303
|
-
return /* @__PURE__ */
|
|
2325
|
+
return /* @__PURE__ */ jsx307("text", { x, y: height - 8, className: "chart-axis-label", textAnchor: "middle", children: label }, i);
|
|
2304
2326
|
}) });
|
|
2305
2327
|
});
|
|
2306
2328
|
AxisLabels.displayName = "AxisLabels";
|
|
@@ -2339,8 +2361,8 @@ var LineChart = React6.memo(({ data, labels, width, height, animate, onHover, on
|
|
|
2339
2361
|
});
|
|
2340
2362
|
}, [animate, seriesPoints]);
|
|
2341
2363
|
return /* @__PURE__ */ jsxs197("svg", { viewBox: `0 0 ${width} ${height}`, className: "chart-svg", children: [
|
|
2342
|
-
/* @__PURE__ */
|
|
2343
|
-
/* @__PURE__ */
|
|
2364
|
+
/* @__PURE__ */ jsx307(GridLines, { width, height, chartH, maxVal }),
|
|
2365
|
+
/* @__PURE__ */ jsx307(AxisLabels, { labels, count, chartW, height }),
|
|
2344
2366
|
entries.map(([key], di) => {
|
|
2345
2367
|
const palette = getPalette(LINE_BAR_PALETTES, di, key);
|
|
2346
2368
|
const color = palette[2];
|
|
@@ -2350,11 +2372,11 @@ var LineChart = React6.memo(({ data, labels, width, height, animate, onHover, on
|
|
|
2350
2372
|
const polyPoints = points.map((p) => `${p.x},${p.y}`).join(" ");
|
|
2351
2373
|
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`;
|
|
2352
2374
|
return /* @__PURE__ */ jsxs197("g", { children: [
|
|
2353
|
-
/* @__PURE__ */
|
|
2354
|
-
/* @__PURE__ */
|
|
2355
|
-
/* @__PURE__ */
|
|
2375
|
+
/* @__PURE__ */ jsx307("defs", { children: /* @__PURE__ */ jsxs197("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1", children: [
|
|
2376
|
+
/* @__PURE__ */ jsx307("stop", { offset: "0%", stopColor: areaColor, stopOpacity: "0.2" }),
|
|
2377
|
+
/* @__PURE__ */ jsx307("stop", { offset: "100%", stopColor: areaColor, stopOpacity: "0" })
|
|
2356
2378
|
] }) }),
|
|
2357
|
-
/* @__PURE__ */
|
|
2379
|
+
/* @__PURE__ */ jsx307(
|
|
2358
2380
|
"path",
|
|
2359
2381
|
{
|
|
2360
2382
|
d: areaD,
|
|
@@ -2363,7 +2385,7 @@ var LineChart = React6.memo(({ data, labels, width, height, animate, onHover, on
|
|
|
2363
2385
|
style: animate ? { animationDelay: "600ms" } : { opacity: 1 }
|
|
2364
2386
|
}
|
|
2365
2387
|
),
|
|
2366
|
-
/* @__PURE__ */
|
|
2388
|
+
/* @__PURE__ */ jsx307(
|
|
2367
2389
|
"polyline",
|
|
2368
2390
|
{
|
|
2369
2391
|
ref: (el) => {
|
|
@@ -2375,7 +2397,7 @@ var LineChart = React6.memo(({ data, labels, width, height, animate, onHover, on
|
|
|
2375
2397
|
strokeWidth: "2"
|
|
2376
2398
|
}
|
|
2377
2399
|
),
|
|
2378
|
-
showPoints && points.map((p, i) => /* @__PURE__ */
|
|
2400
|
+
showPoints && points.map((p, i) => /* @__PURE__ */ jsx307(
|
|
2379
2401
|
"circle",
|
|
2380
2402
|
{
|
|
2381
2403
|
cx: p.x,
|
|
@@ -2429,8 +2451,8 @@ var CurveChart = React6.memo(({ data, labels, width, height, animate, onHover, o
|
|
|
2429
2451
|
});
|
|
2430
2452
|
}, [animate, seriesPoints]);
|
|
2431
2453
|
return /* @__PURE__ */ jsxs197("svg", { viewBox: `0 0 ${width} ${height}`, className: "chart-svg", children: [
|
|
2432
|
-
/* @__PURE__ */
|
|
2433
|
-
/* @__PURE__ */
|
|
2454
|
+
/* @__PURE__ */ jsx307(GridLines, { width, height, chartH, maxVal }),
|
|
2455
|
+
/* @__PURE__ */ jsx307(AxisLabels, { labels, count, chartW, height }),
|
|
2434
2456
|
entries.map(([key], di) => {
|
|
2435
2457
|
const palette = getPalette(LINE_BAR_PALETTES, di, key);
|
|
2436
2458
|
const color = palette[2];
|
|
@@ -2440,11 +2462,11 @@ var CurveChart = React6.memo(({ data, labels, width, height, animate, onHover, o
|
|
|
2440
2462
|
const linePath = toSmoothPath(points);
|
|
2441
2463
|
const areaPath = linePath + ` L ${points[points.length - 1].x} ${PADDING.top + chartH} L ${points[0].x} ${PADDING.top + chartH} Z`;
|
|
2442
2464
|
return /* @__PURE__ */ jsxs197("g", { children: [
|
|
2443
|
-
/* @__PURE__ */
|
|
2444
|
-
/* @__PURE__ */
|
|
2445
|
-
/* @__PURE__ */
|
|
2465
|
+
/* @__PURE__ */ jsx307("defs", { children: /* @__PURE__ */ jsxs197("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1", children: [
|
|
2466
|
+
/* @__PURE__ */ jsx307("stop", { offset: "0%", stopColor: areaColor, stopOpacity: "0.4" }),
|
|
2467
|
+
/* @__PURE__ */ jsx307("stop", { offset: "100%", stopColor: areaColor, stopOpacity: "0.02" })
|
|
2446
2468
|
] }) }),
|
|
2447
|
-
/* @__PURE__ */
|
|
2469
|
+
/* @__PURE__ */ jsx307(
|
|
2448
2470
|
"path",
|
|
2449
2471
|
{
|
|
2450
2472
|
d: areaPath,
|
|
@@ -2453,7 +2475,7 @@ var CurveChart = React6.memo(({ data, labels, width, height, animate, onHover, o
|
|
|
2453
2475
|
style: animate ? { animationDelay: "600ms" } : { opacity: 1 }
|
|
2454
2476
|
}
|
|
2455
2477
|
),
|
|
2456
|
-
/* @__PURE__ */
|
|
2478
|
+
/* @__PURE__ */ jsx307(
|
|
2457
2479
|
"path",
|
|
2458
2480
|
{
|
|
2459
2481
|
ref: (el) => {
|
|
@@ -2465,7 +2487,7 @@ var CurveChart = React6.memo(({ data, labels, width, height, animate, onHover, o
|
|
|
2465
2487
|
strokeWidth: "2"
|
|
2466
2488
|
}
|
|
2467
2489
|
),
|
|
2468
|
-
showPoints && points.map((p, i) => /* @__PURE__ */
|
|
2490
|
+
showPoints && points.map((p, i) => /* @__PURE__ */ jsx307(
|
|
2469
2491
|
"circle",
|
|
2470
2492
|
{
|
|
2471
2493
|
cx: p.x,
|
|
@@ -2512,10 +2534,10 @@ var BarChart = React6.memo(({ data, labels, width, height, animate, onHover, onM
|
|
|
2512
2534
|
);
|
|
2513
2535
|
const barLabelStep = getLabelStep(count, chartW);
|
|
2514
2536
|
return /* @__PURE__ */ jsxs197("svg", { viewBox: `0 0 ${width} ${height}`, className: "chart-svg", children: [
|
|
2515
|
-
/* @__PURE__ */
|
|
2537
|
+
/* @__PURE__ */ jsx307(GridLines, { width, height, chartH, maxVal }),
|
|
2516
2538
|
labels.map((label, i) => {
|
|
2517
2539
|
if (i % barLabelStep !== 0) return null;
|
|
2518
|
-
return /* @__PURE__ */
|
|
2540
|
+
return /* @__PURE__ */ jsx307("text", { x: PADDING.left + groupW * i + groupW / 2, y: height - 8, className: "chart-axis-label", textAnchor: "middle", children: label }, i);
|
|
2519
2541
|
}),
|
|
2520
2542
|
entries.map(([key], di) => {
|
|
2521
2543
|
const palette = getPalette(LINE_BAR_PALETTES, di, key);
|
|
@@ -2524,7 +2546,7 @@ var BarChart = React6.memo(({ data, labels, width, height, animate, onHover, onM
|
|
|
2524
2546
|
const r2 = Math.min(4, b.w / 2);
|
|
2525
2547
|
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`;
|
|
2526
2548
|
const delay = 100 + i * 80;
|
|
2527
|
-
return /* @__PURE__ */
|
|
2549
|
+
return /* @__PURE__ */ jsx307(
|
|
2528
2550
|
"path",
|
|
2529
2551
|
{
|
|
2530
2552
|
d,
|
|
@@ -2605,7 +2627,7 @@ var PieDonutChart = React6.memo(
|
|
|
2605
2627
|
}, [values, total, cx, cy, r2, innerR, labels]);
|
|
2606
2628
|
const maskId = `pie-mask-${isDoughnut ? "d" : "p"}`;
|
|
2607
2629
|
return /* @__PURE__ */ jsxs197("svg", { viewBox: `0 0 ${size} ${size}`, className: "chart-svg chart-pie", children: [
|
|
2608
|
-
animate && /* @__PURE__ */
|
|
2630
|
+
animate && /* @__PURE__ */ jsx307("defs", { children: /* @__PURE__ */ jsx307("mask", { id: maskId, children: /* @__PURE__ */ jsx307(
|
|
2609
2631
|
"circle",
|
|
2610
2632
|
{
|
|
2611
2633
|
ref: maskRef,
|
|
@@ -2618,7 +2640,7 @@ var PieDonutChart = React6.memo(
|
|
|
2618
2640
|
transform: `rotate(-90 ${cx} ${cy})`
|
|
2619
2641
|
}
|
|
2620
2642
|
) }) }),
|
|
2621
|
-
/* @__PURE__ */
|
|
2643
|
+
/* @__PURE__ */ jsx307("g", { mask: animate ? `url(#${maskId})` : void 0, children: sliceData.map((s, i) => /* @__PURE__ */ jsx307("g", { children: /* @__PURE__ */ jsx307(
|
|
2622
2644
|
"path",
|
|
2623
2645
|
{
|
|
2624
2646
|
d: s.d,
|
|
@@ -2629,7 +2651,7 @@ var PieDonutChart = React6.memo(
|
|
|
2629
2651
|
onMouseLeave: onLeave
|
|
2630
2652
|
}
|
|
2631
2653
|
) }, i)) }),
|
|
2632
|
-
sliceData.map((s, i) => s.angle > 0.2 && /* @__PURE__ */
|
|
2654
|
+
sliceData.map((s, i) => s.angle > 0.2 && /* @__PURE__ */ jsx307(
|
|
2633
2655
|
"text",
|
|
2634
2656
|
{
|
|
2635
2657
|
x: s.lx,
|
|
@@ -2660,7 +2682,7 @@ var TooltipBubble = ({ x, y, containerWidth, children }) => {
|
|
|
2660
2682
|
else if (x + half > containerWidth - margin) nx = containerWidth - half - margin;
|
|
2661
2683
|
setAdjustedX(nx);
|
|
2662
2684
|
}, [x, containerWidth]);
|
|
2663
|
-
return /* @__PURE__ */
|
|
2685
|
+
return /* @__PURE__ */ jsx307(
|
|
2664
2686
|
"div",
|
|
2665
2687
|
{
|
|
2666
2688
|
ref,
|
|
@@ -2680,12 +2702,12 @@ var Chart = React6.memo((props) => {
|
|
|
2680
2702
|
const animate = useChartAnimation(containerRef, dataKey);
|
|
2681
2703
|
const ready = width > 0 && height > 0;
|
|
2682
2704
|
return /* @__PURE__ */ jsxs197("div", { className: "lib-xplat-chart", ref: containerRef, children: [
|
|
2683
|
-
ready && type === "line" && /* @__PURE__ */
|
|
2684
|
-
ready && type === "curve" && /* @__PURE__ */
|
|
2685
|
-
ready && type === "bar" && /* @__PURE__ */
|
|
2686
|
-
ready && type === "pie" && /* @__PURE__ */
|
|
2687
|
-
ready && type === "doughnut" && /* @__PURE__ */
|
|
2688
|
-
tooltip.visible && /* @__PURE__ */
|
|
2705
|
+
ready && type === "line" && /* @__PURE__ */ jsx307(LineChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
|
|
2706
|
+
ready && type === "curve" && /* @__PURE__ */ jsx307(CurveChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
|
|
2707
|
+
ready && type === "bar" && /* @__PURE__ */ jsx307(BarChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
|
|
2708
|
+
ready && type === "pie" && /* @__PURE__ */ jsx307(PieDonutChart, { data: stableData, labels: stableLabels, width, height, animate, onHover: show, onMove: move, onLeave: hide }),
|
|
2709
|
+
ready && type === "doughnut" && /* @__PURE__ */ jsx307(PieDonutChart, { data: stableData, labels: stableLabels, width, height, animate, isDoughnut: true, onHover: show, onMove: move, onLeave: hide }),
|
|
2710
|
+
tooltip.visible && /* @__PURE__ */ jsx307(TooltipBubble, { x: tooltip.x, y: tooltip.y, containerWidth: width, children: tooltip.content })
|
|
2689
2711
|
] });
|
|
2690
2712
|
});
|
|
2691
2713
|
Chart.displayName = "Chart";
|
|
@@ -2698,7 +2720,7 @@ import { primitive, semantic } from "@x-plat/tokens-core";
|
|
|
2698
2720
|
import { cssVar } from "@x-plat/tokens-core";
|
|
2699
2721
|
|
|
2700
2722
|
// src/components/CheckBox/CheckBox.tsx
|
|
2701
|
-
import { jsx as
|
|
2723
|
+
import { jsx as jsx308, jsxs as jsxs198 } from "react/jsx-runtime";
|
|
2702
2724
|
var CheckBox = (props) => {
|
|
2703
2725
|
const {
|
|
2704
2726
|
checked,
|
|
@@ -2717,7 +2739,7 @@ var CheckBox = (props) => {
|
|
|
2717
2739
|
const disabledClasses = "disabled";
|
|
2718
2740
|
const boxClasses = disabled ? disabledClasses : checked ? checkedClasses : uncheckedClasses;
|
|
2719
2741
|
return /* @__PURE__ */ jsxs198("label", { className: clsx_default("lib-xplat-checkbox", size, type), children: [
|
|
2720
|
-
/* @__PURE__ */
|
|
2742
|
+
/* @__PURE__ */ jsx308(
|
|
2721
2743
|
"input",
|
|
2722
2744
|
{
|
|
2723
2745
|
type: "checkbox",
|
|
@@ -2727,22 +2749,22 @@ var CheckBox = (props) => {
|
|
|
2727
2749
|
...rest
|
|
2728
2750
|
}
|
|
2729
2751
|
),
|
|
2730
|
-
/* @__PURE__ */
|
|
2731
|
-
label && /* @__PURE__ */
|
|
2752
|
+
/* @__PURE__ */ jsx308("span", { className: clsx_default("checkbox", boxClasses), children: /* @__PURE__ */ jsx308("span", { className: clsx_default("check-icon", { visible: checked }), children: /* @__PURE__ */ jsx308(CheckIcon_default, {}) }) }),
|
|
2753
|
+
label && /* @__PURE__ */ jsx308("span", { className: "label", children: label })
|
|
2732
2754
|
] });
|
|
2733
2755
|
};
|
|
2734
2756
|
CheckBox.displayName = "CheckBox";
|
|
2735
2757
|
var CheckBox_default = CheckBox;
|
|
2736
2758
|
|
|
2737
2759
|
// src/components/Chip/Chip.tsx
|
|
2738
|
-
import { jsx as
|
|
2760
|
+
import { jsx as jsx309 } from "react/jsx-runtime";
|
|
2739
2761
|
var Chip = (props) => {
|
|
2740
2762
|
const {
|
|
2741
2763
|
children,
|
|
2742
2764
|
type = "primary",
|
|
2743
2765
|
size = "md"
|
|
2744
2766
|
} = props;
|
|
2745
|
-
return /* @__PURE__ */
|
|
2767
|
+
return /* @__PURE__ */ jsx309("div", { className: clsx_default("lib-xplat-chip", type, size), children });
|
|
2746
2768
|
};
|
|
2747
2769
|
Chip.displayName = "Chip";
|
|
2748
2770
|
var Chip_default = Chip;
|
|
@@ -2754,17 +2776,17 @@ import React12 from "react";
|
|
|
2754
2776
|
import React7 from "react";
|
|
2755
2777
|
|
|
2756
2778
|
// src/components/Input/InputValidations.tsx
|
|
2757
|
-
import { jsx as
|
|
2779
|
+
import { jsx as jsx310, jsxs as jsxs199 } from "react/jsx-runtime";
|
|
2758
2780
|
var InputValidations = (props) => {
|
|
2759
2781
|
const { message, status = "default" } = props;
|
|
2760
2782
|
return /* @__PURE__ */ jsxs199("div", { className: clsx_default("lib-xplat-input-validation", status), children: [
|
|
2761
2783
|
/* @__PURE__ */ jsxs199("div", { className: "icon", children: [
|
|
2762
|
-
status === "default" && /* @__PURE__ */
|
|
2763
|
-
status === "success" && /* @__PURE__ */
|
|
2764
|
-
status === "warning" && /* @__PURE__ */
|
|
2765
|
-
status === "error" && /* @__PURE__ */
|
|
2784
|
+
status === "default" && /* @__PURE__ */ jsx310(InfoIcon_default, {}),
|
|
2785
|
+
status === "success" && /* @__PURE__ */ jsx310(SuccessIcon_default, {}),
|
|
2786
|
+
status === "warning" && /* @__PURE__ */ jsx310(InfoIcon_default, {}),
|
|
2787
|
+
status === "error" && /* @__PURE__ */ jsx310(ErrorIcon_default, {})
|
|
2766
2788
|
] }),
|
|
2767
|
-
/* @__PURE__ */
|
|
2789
|
+
/* @__PURE__ */ jsx310("div", { className: "message", children: message })
|
|
2768
2790
|
] });
|
|
2769
2791
|
};
|
|
2770
2792
|
InputValidations.displayName = "InputValidations";
|
|
@@ -2805,7 +2827,7 @@ var handleTelBackspace = (prevValue, currValue) => {
|
|
|
2805
2827
|
};
|
|
2806
2828
|
|
|
2807
2829
|
// src/components/Input/Input.tsx
|
|
2808
|
-
import { jsx as
|
|
2830
|
+
import { jsx as jsx311, jsxs as jsxs200 } from "react/jsx-runtime";
|
|
2809
2831
|
import { createElement } from "react";
|
|
2810
2832
|
var formatValue = (type, value) => {
|
|
2811
2833
|
if (value === null || value === void 0) return "";
|
|
@@ -2886,7 +2908,7 @@ var Input = React7.forwardRef((props, ref) => {
|
|
|
2886
2908
|
{
|
|
2887
2909
|
className: clsx_default("lib-xplat-input", size, disabled ? "disabled" : void 0),
|
|
2888
2910
|
children: [
|
|
2889
|
-
/* @__PURE__ */
|
|
2911
|
+
/* @__PURE__ */ jsx311(
|
|
2890
2912
|
"input",
|
|
2891
2913
|
{
|
|
2892
2914
|
...inputProps,
|
|
@@ -2897,11 +2919,11 @@ var Input = React7.forwardRef((props, ref) => {
|
|
|
2897
2919
|
onChange: handleChange
|
|
2898
2920
|
}
|
|
2899
2921
|
),
|
|
2900
|
-
suffix && /* @__PURE__ */
|
|
2922
|
+
suffix && /* @__PURE__ */ jsx311("div", { className: "suffix", children: suffix })
|
|
2901
2923
|
]
|
|
2902
2924
|
}
|
|
2903
2925
|
),
|
|
2904
|
-
validations && /* @__PURE__ */
|
|
2926
|
+
validations && /* @__PURE__ */ jsx311("div", { className: "lib-xplat-input-validation-wrap", children: validations?.map((validation, idx) => /* @__PURE__ */ createElement(
|
|
2905
2927
|
InputValidations_default,
|
|
2906
2928
|
{
|
|
2907
2929
|
...validation,
|
|
@@ -2915,7 +2937,7 @@ var Input_default = Input;
|
|
|
2915
2937
|
|
|
2916
2938
|
// src/components/Input/PasswordInput/PasswordInput.tsx
|
|
2917
2939
|
import React8 from "react";
|
|
2918
|
-
import { jsx as
|
|
2940
|
+
import { jsx as jsx312 } from "react/jsx-runtime";
|
|
2919
2941
|
var PasswordInput = React8.forwardRef(
|
|
2920
2942
|
(props, ref) => {
|
|
2921
2943
|
const { reg: _reg, ...inputProps } = props;
|
|
@@ -2923,11 +2945,11 @@ var PasswordInput = React8.forwardRef(
|
|
|
2923
2945
|
const handleChangeView = () => {
|
|
2924
2946
|
setIsView((prev) => !prev);
|
|
2925
2947
|
};
|
|
2926
|
-
return /* @__PURE__ */
|
|
2948
|
+
return /* @__PURE__ */ jsx312(
|
|
2927
2949
|
Input_default,
|
|
2928
2950
|
{
|
|
2929
2951
|
...inputProps,
|
|
2930
|
-
suffix: /* @__PURE__ */
|
|
2952
|
+
suffix: /* @__PURE__ */ jsx312("div", { className: "wrapper pointer", onClick: handleChangeView, children: isView ? /* @__PURE__ */ jsx312(OpenEyeIcon_default, {}) : /* @__PURE__ */ jsx312(CloseEyeIcon_default, {}) }),
|
|
2931
2953
|
type: isView ? "text" : "password",
|
|
2932
2954
|
ref
|
|
2933
2955
|
}
|
|
@@ -2944,9 +2966,9 @@ import { createPortal } from "react-dom";
|
|
|
2944
2966
|
// src/tokens/hooks/Portal.tsx
|
|
2945
2967
|
import React9 from "react";
|
|
2946
2968
|
import ReactDOM from "react-dom";
|
|
2947
|
-
import { jsx as
|
|
2969
|
+
import { jsx as jsx313 } from "react/jsx-runtime";
|
|
2948
2970
|
var PortalContainerContext = React9.createContext(null);
|
|
2949
|
-
var PortalProvider = ({ container, children }) => /* @__PURE__ */
|
|
2971
|
+
var PortalProvider = ({ container, children }) => /* @__PURE__ */ jsx313(PortalContainerContext.Provider, { value: container, children });
|
|
2950
2972
|
var Portal = ({ children }) => {
|
|
2951
2973
|
const contextContainer = React9.useContext(PortalContainerContext);
|
|
2952
2974
|
if (typeof document === "undefined") return null;
|
|
@@ -2957,7 +2979,7 @@ Portal.displayName = "Portal";
|
|
|
2957
2979
|
var Portal_default = Portal;
|
|
2958
2980
|
|
|
2959
2981
|
// src/components/Modal/Modal.tsx
|
|
2960
|
-
import { jsx as
|
|
2982
|
+
import { jsx as jsx314 } from "react/jsx-runtime";
|
|
2961
2983
|
var ANIMATION_DURATION_MS = 200;
|
|
2962
2984
|
var Modal = (props) => {
|
|
2963
2985
|
const { isOpen, onClose, children } = props;
|
|
@@ -2978,12 +3000,12 @@ var Modal = (props) => {
|
|
|
2978
3000
|
if (!mounted) return null;
|
|
2979
3001
|
const stateClass = visible ? "enter" : "exit";
|
|
2980
3002
|
return createPortal(
|
|
2981
|
-
/* @__PURE__ */
|
|
3003
|
+
/* @__PURE__ */ jsx314(
|
|
2982
3004
|
"div",
|
|
2983
3005
|
{
|
|
2984
3006
|
className: clsx_default("lib-xplat-modal", "dim", stateClass),
|
|
2985
3007
|
onClick: onClose,
|
|
2986
|
-
children: /* @__PURE__ */
|
|
3008
|
+
children: /* @__PURE__ */ jsx314(
|
|
2987
3009
|
"div",
|
|
2988
3010
|
{
|
|
2989
3011
|
ref: boxRef,
|
|
@@ -2991,7 +3013,7 @@ var Modal = (props) => {
|
|
|
2991
3013
|
role: "dialog",
|
|
2992
3014
|
"aria-modal": "true",
|
|
2993
3015
|
onClick: (e) => e.stopPropagation(),
|
|
2994
|
-
children: /* @__PURE__ */
|
|
3016
|
+
children: /* @__PURE__ */ jsx314(PortalProvider, { container: boxRef.current, children })
|
|
2995
3017
|
}
|
|
2996
3018
|
)
|
|
2997
3019
|
}
|
|
@@ -3004,7 +3026,7 @@ var Modal_default = Modal;
|
|
|
3004
3026
|
|
|
3005
3027
|
// src/components/DatePicker/SingleDatePicker/index.tsx
|
|
3006
3028
|
import React11 from "react";
|
|
3007
|
-
import { Fragment as Fragment3, jsx as
|
|
3029
|
+
import { Fragment as Fragment3, jsx as jsx315, jsxs as jsxs201 } from "react/jsx-runtime";
|
|
3008
3030
|
var DayCell2 = React11.memo(
|
|
3009
3031
|
({
|
|
3010
3032
|
day,
|
|
@@ -3015,7 +3037,7 @@ var DayCell2 = React11.memo(
|
|
|
3015
3037
|
isEnd,
|
|
3016
3038
|
inRange,
|
|
3017
3039
|
onSelect
|
|
3018
|
-
}) => /* @__PURE__ */
|
|
3040
|
+
}) => /* @__PURE__ */ jsx315(
|
|
3019
3041
|
"button",
|
|
3020
3042
|
{
|
|
3021
3043
|
type: "button",
|
|
@@ -3119,14 +3141,14 @@ var SingleDatePicker = (props) => {
|
|
|
3119
3141
|
className: clsx_default("lib-xplat-datepicker", "single"),
|
|
3120
3142
|
children: [
|
|
3121
3143
|
/* @__PURE__ */ jsxs201("div", { className: "datepicker-header", children: [
|
|
3122
|
-
/* @__PURE__ */
|
|
3123
|
-
/* @__PURE__ */
|
|
3124
|
-
/* @__PURE__ */
|
|
3144
|
+
/* @__PURE__ */ jsx315("button", { className: "datepicker-nav", onClick: handlePrev, type: "button", children: /* @__PURE__ */ jsx315(ChevronLeftIcon_default, {}) }),
|
|
3145
|
+
/* @__PURE__ */ jsx315("button", { className: "datepicker-title", onClick: handleTitleClick, type: "button", children: titleText }),
|
|
3146
|
+
/* @__PURE__ */ jsx315("button", { className: "datepicker-nav", onClick: handleNext, type: "button", children: /* @__PURE__ */ jsx315(ChevronRightIcon_default, {}) })
|
|
3125
3147
|
] }),
|
|
3126
3148
|
/* @__PURE__ */ jsxs201("div", { className: "datepicker-body", children: [
|
|
3127
|
-
pickerMode === "years" && /* @__PURE__ */
|
|
3149
|
+
pickerMode === "years" && /* @__PURE__ */ jsx315("div", { className: "datepicker-picker-grid", children: Array.from({ length: 12 }, (_, i) => {
|
|
3128
3150
|
const y = yearRangeStart + i;
|
|
3129
|
-
return /* @__PURE__ */
|
|
3151
|
+
return /* @__PURE__ */ jsx315(
|
|
3130
3152
|
"button",
|
|
3131
3153
|
{
|
|
3132
3154
|
type: "button",
|
|
@@ -3137,7 +3159,7 @@ var SingleDatePicker = (props) => {
|
|
|
3137
3159
|
y
|
|
3138
3160
|
);
|
|
3139
3161
|
}) }),
|
|
3140
|
-
pickerMode === "months" && /* @__PURE__ */
|
|
3162
|
+
pickerMode === "months" && /* @__PURE__ */ jsx315("div", { className: "datepicker-picker-grid", children: monthLabels.map((label, i) => /* @__PURE__ */ jsx315(
|
|
3141
3163
|
"button",
|
|
3142
3164
|
{
|
|
3143
3165
|
type: "button",
|
|
@@ -3148,7 +3170,7 @@ var SingleDatePicker = (props) => {
|
|
|
3148
3170
|
i
|
|
3149
3171
|
)) }),
|
|
3150
3172
|
pickerMode === "days" && /* @__PURE__ */ jsxs201(Fragment3, { children: [
|
|
3151
|
-
/* @__PURE__ */
|
|
3173
|
+
/* @__PURE__ */ jsx315("div", { className: "datepicker-weekdays", children: weekdays.map((label, i) => /* @__PURE__ */ jsx315(
|
|
3152
3174
|
"div",
|
|
3153
3175
|
{
|
|
3154
3176
|
className: clsx_default(
|
|
@@ -3160,7 +3182,7 @@ var SingleDatePicker = (props) => {
|
|
|
3160
3182
|
},
|
|
3161
3183
|
label
|
|
3162
3184
|
)) }),
|
|
3163
|
-
/* @__PURE__ */
|
|
3185
|
+
/* @__PURE__ */ jsx315("div", { className: "datepicker-grid", children: days.map((day, idx) => {
|
|
3164
3186
|
const t = day.date.getTime();
|
|
3165
3187
|
const disabled = t < minTime || t > maxTime;
|
|
3166
3188
|
const selected = value ? isSameDay(day.date, value) : false;
|
|
@@ -3170,7 +3192,7 @@ var SingleDatePicker = (props) => {
|
|
|
3170
3192
|
const isStart = hasRange ? isSameDay(day.date, rangeStart) : false;
|
|
3171
3193
|
const isEnd = hasRange ? isSameDay(day.date, rangeEnd) : false;
|
|
3172
3194
|
const inRangeVal = hasRange ? isInRange(day.date, rangeStart, rangeEnd) : false;
|
|
3173
|
-
return /* @__PURE__ */
|
|
3195
|
+
return /* @__PURE__ */ jsx315(
|
|
3174
3196
|
DayCell2,
|
|
3175
3197
|
{
|
|
3176
3198
|
day,
|
|
@@ -3195,7 +3217,7 @@ SingleDatePicker.displayName = "SingleDatePicker";
|
|
|
3195
3217
|
var SingleDatePicker_default = SingleDatePicker;
|
|
3196
3218
|
|
|
3197
3219
|
// src/components/DatePicker/InputDatePicker/index.tsx
|
|
3198
|
-
import { jsx as
|
|
3220
|
+
import { jsx as jsx316, jsxs as jsxs202 } from "react/jsx-runtime";
|
|
3199
3221
|
var formatDate = (date) => {
|
|
3200
3222
|
if (!date || !(date instanceof Date) || isNaN(date.getTime())) return "";
|
|
3201
3223
|
const y = date.getFullYear();
|
|
@@ -3223,18 +3245,18 @@ var InputDatePicker = (props) => {
|
|
|
3223
3245
|
setIsOpen(false);
|
|
3224
3246
|
};
|
|
3225
3247
|
return /* @__PURE__ */ jsxs202("div", { className: clsx_default("lib-xplat-datepicker input-datepicker", disabled && "disabled"), children: [
|
|
3226
|
-
/* @__PURE__ */
|
|
3248
|
+
/* @__PURE__ */ jsx316("div", { className: "input-datepicker-trigger", onClick: handleOpen, children: /* @__PURE__ */ jsx316(
|
|
3227
3249
|
Input_default,
|
|
3228
3250
|
{
|
|
3229
3251
|
value: formatDate(value),
|
|
3230
3252
|
placeholder,
|
|
3231
|
-
suffix: /* @__PURE__ */
|
|
3253
|
+
suffix: /* @__PURE__ */ jsx316(CalenderIcon_default, {}),
|
|
3232
3254
|
disabled,
|
|
3233
3255
|
readOnly: true
|
|
3234
3256
|
}
|
|
3235
3257
|
) }),
|
|
3236
|
-
/* @__PURE__ */
|
|
3237
|
-
/* @__PURE__ */
|
|
3258
|
+
/* @__PURE__ */ jsx316(Modal_default, { isOpen, onClose: handleClose, children: /* @__PURE__ */ jsxs202("div", { className: "lib-xplat-popup-datepicker-card", children: [
|
|
3259
|
+
/* @__PURE__ */ jsx316("div", { className: "popup-datepicker-content", children: /* @__PURE__ */ jsx316(
|
|
3238
3260
|
SingleDatePicker_default,
|
|
3239
3261
|
{
|
|
3240
3262
|
value: tempDate,
|
|
@@ -3245,8 +3267,8 @@ var InputDatePicker = (props) => {
|
|
|
3245
3267
|
}
|
|
3246
3268
|
) }),
|
|
3247
3269
|
/* @__PURE__ */ jsxs202("div", { className: "popup-datepicker-footer", children: [
|
|
3248
|
-
/* @__PURE__ */
|
|
3249
|
-
/* @__PURE__ */
|
|
3270
|
+
/* @__PURE__ */ jsx316(Button_default, { type: "secondary", onClick: handleClose, children: locale === "ko" ? "\uCDE8\uC18C" : "Cancel" }),
|
|
3271
|
+
/* @__PURE__ */ jsx316(Button_default, { type: "primary", onClick: handleApply, children: locale === "ko" ? "\uC801\uC6A9" : "Apply" })
|
|
3250
3272
|
] })
|
|
3251
3273
|
] }) })
|
|
3252
3274
|
] });
|
|
@@ -3265,10 +3287,10 @@ import React14 from "react";
|
|
|
3265
3287
|
|
|
3266
3288
|
// src/components/Tab/TabItem.tsx
|
|
3267
3289
|
import React13 from "react";
|
|
3268
|
-
import { jsx as
|
|
3290
|
+
import { jsx as jsx317 } from "react/jsx-runtime";
|
|
3269
3291
|
var TabItem = React13.forwardRef((props, ref) => {
|
|
3270
3292
|
const { isActive, title, onClick } = props;
|
|
3271
|
-
return /* @__PURE__ */
|
|
3293
|
+
return /* @__PURE__ */ jsx317(
|
|
3272
3294
|
"div",
|
|
3273
3295
|
{
|
|
3274
3296
|
ref,
|
|
@@ -3282,7 +3304,7 @@ TabItem.displayName = "TabItem";
|
|
|
3282
3304
|
var TabItem_default = TabItem;
|
|
3283
3305
|
|
|
3284
3306
|
// src/components/Tab/Tab.tsx
|
|
3285
|
-
import { jsx as
|
|
3307
|
+
import { jsx as jsx318, jsxs as jsxs203 } from "react/jsx-runtime";
|
|
3286
3308
|
var Tab = (props) => {
|
|
3287
3309
|
const { activeIndex, onChange, tabs, type, size = "md" } = props;
|
|
3288
3310
|
const [underlineStyle, setUnderlineStyle] = React14.useState({
|
|
@@ -3300,7 +3322,7 @@ var Tab = (props) => {
|
|
|
3300
3322
|
}
|
|
3301
3323
|
}, [activeIndex, tabs.length]);
|
|
3302
3324
|
return /* @__PURE__ */ jsxs203("div", { className: clsx_default("lib-xplat-tab", `type-${type}`, size), children: [
|
|
3303
|
-
tabs.map((tab, idx) => /* @__PURE__ */
|
|
3325
|
+
tabs.map((tab, idx) => /* @__PURE__ */ jsx318(
|
|
3304
3326
|
TabItem_default,
|
|
3305
3327
|
{
|
|
3306
3328
|
onClick: () => handleChangeActiveTab(tab, idx),
|
|
@@ -3312,7 +3334,7 @@ var Tab = (props) => {
|
|
|
3312
3334
|
},
|
|
3313
3335
|
`${tab.value}_${idx}`
|
|
3314
3336
|
)),
|
|
3315
|
-
type === "toggle" && /* @__PURE__ */
|
|
3337
|
+
type === "toggle" && /* @__PURE__ */ jsx318(
|
|
3316
3338
|
"div",
|
|
3317
3339
|
{
|
|
3318
3340
|
className: "tab-toggle-underline",
|
|
@@ -3328,7 +3350,7 @@ Tab.displayName = "Tab";
|
|
|
3328
3350
|
var Tab_default = Tab;
|
|
3329
3351
|
|
|
3330
3352
|
// src/components/DatePicker/RangePicker/index.tsx
|
|
3331
|
-
import { jsx as
|
|
3353
|
+
import { jsx as jsx319, jsxs as jsxs204 } from "react/jsx-runtime";
|
|
3332
3354
|
var RangePicker = (props) => {
|
|
3333
3355
|
const {
|
|
3334
3356
|
startDate,
|
|
@@ -3352,7 +3374,7 @@ var RangePicker = (props) => {
|
|
|
3352
3374
|
const startMaxDate = maxDate && endDate < maxDate ? endDate : endDate;
|
|
3353
3375
|
const endMinDate = minDate && startDate > minDate ? startDate : startDate;
|
|
3354
3376
|
return /* @__PURE__ */ jsxs204("div", { className: clsx_default("lib-xplat-datepicker", "range"), children: [
|
|
3355
|
-
/* @__PURE__ */
|
|
3377
|
+
/* @__PURE__ */ jsx319("div", { className: "datepicker-range-tabs", children: /* @__PURE__ */ jsx319(
|
|
3356
3378
|
Tab_default,
|
|
3357
3379
|
{
|
|
3358
3380
|
activeIndex: activeTab === "start" ? 0 : 1,
|
|
@@ -3366,7 +3388,7 @@ var RangePicker = (props) => {
|
|
|
3366
3388
|
}
|
|
3367
3389
|
) }),
|
|
3368
3390
|
/* @__PURE__ */ jsxs204("div", { className: "datepicker-range-panels", children: [
|
|
3369
|
-
/* @__PURE__ */
|
|
3391
|
+
/* @__PURE__ */ jsx319(
|
|
3370
3392
|
SingleDatePicker_default,
|
|
3371
3393
|
{
|
|
3372
3394
|
value: startDate,
|
|
@@ -3378,7 +3400,7 @@ var RangePicker = (props) => {
|
|
|
3378
3400
|
locale
|
|
3379
3401
|
}
|
|
3380
3402
|
),
|
|
3381
|
-
/* @__PURE__ */
|
|
3403
|
+
/* @__PURE__ */ jsx319(
|
|
3382
3404
|
SingleDatePicker_default,
|
|
3383
3405
|
{
|
|
3384
3406
|
value: endDate,
|
|
@@ -3391,7 +3413,7 @@ var RangePicker = (props) => {
|
|
|
3391
3413
|
}
|
|
3392
3414
|
)
|
|
3393
3415
|
] }),
|
|
3394
|
-
/* @__PURE__ */
|
|
3416
|
+
/* @__PURE__ */ jsx319("div", { className: "datepicker-range-mobile", children: activeTab === "start" ? /* @__PURE__ */ jsx319(
|
|
3395
3417
|
SingleDatePicker_default,
|
|
3396
3418
|
{
|
|
3397
3419
|
value: startDate,
|
|
@@ -3402,7 +3424,7 @@ var RangePicker = (props) => {
|
|
|
3402
3424
|
rangeEnd: endDate,
|
|
3403
3425
|
locale
|
|
3404
3426
|
}
|
|
3405
|
-
) : /* @__PURE__ */
|
|
3427
|
+
) : /* @__PURE__ */ jsx319(
|
|
3406
3428
|
SingleDatePicker_default,
|
|
3407
3429
|
{
|
|
3408
3430
|
value: endDate,
|
|
@@ -3420,7 +3442,7 @@ RangePicker.displayName = "RangePicker";
|
|
|
3420
3442
|
var RangePicker_default = RangePicker;
|
|
3421
3443
|
|
|
3422
3444
|
// src/components/DatePicker/PopupPicker/index.tsx
|
|
3423
|
-
import { jsx as
|
|
3445
|
+
import { jsx as jsx320, jsxs as jsxs205 } from "react/jsx-runtime";
|
|
3424
3446
|
var PopupPicker = (props) => {
|
|
3425
3447
|
const { component, type, locale } = props;
|
|
3426
3448
|
const [isOpen, setIsOpen] = React16.useState(false);
|
|
@@ -3433,9 +3455,9 @@ var PopupPicker = (props) => {
|
|
|
3433
3455
|
};
|
|
3434
3456
|
return /* @__PURE__ */ jsxs205("div", { className: "lib-xplat-popup-datepicker", children: [
|
|
3435
3457
|
React16.cloneElement(component, { onClick: handleClick }),
|
|
3436
|
-
/* @__PURE__ */
|
|
3458
|
+
/* @__PURE__ */ jsx320(Modal_default, { isOpen, onClose: handleClose, children: /* @__PURE__ */ jsxs205("div", { className: clsx_default("lib-xplat-popup-datepicker-card", type === "range" && "range-mode"), children: [
|
|
3437
3459
|
/* @__PURE__ */ jsxs205("div", { className: "popup-datepicker-content", children: [
|
|
3438
|
-
type === "single" && /* @__PURE__ */
|
|
3460
|
+
type === "single" && /* @__PURE__ */ jsx320(
|
|
3439
3461
|
SingleDatePicker_default,
|
|
3440
3462
|
{
|
|
3441
3463
|
value: props.value,
|
|
@@ -3445,7 +3467,7 @@ var PopupPicker = (props) => {
|
|
|
3445
3467
|
locale
|
|
3446
3468
|
}
|
|
3447
3469
|
),
|
|
3448
|
-
type === "range" && /* @__PURE__ */
|
|
3470
|
+
type === "range" && /* @__PURE__ */ jsx320(
|
|
3449
3471
|
RangePicker_default,
|
|
3450
3472
|
{
|
|
3451
3473
|
startDate: props.startDate,
|
|
@@ -3458,7 +3480,7 @@ var PopupPicker = (props) => {
|
|
|
3458
3480
|
)
|
|
3459
3481
|
] }),
|
|
3460
3482
|
/* @__PURE__ */ jsxs205("div", { className: "popup-datepicker-footer", children: [
|
|
3461
|
-
/* @__PURE__ */
|
|
3483
|
+
/* @__PURE__ */ jsx320(
|
|
3462
3484
|
Button_default,
|
|
3463
3485
|
{
|
|
3464
3486
|
type: "secondary",
|
|
@@ -3466,7 +3488,7 @@ var PopupPicker = (props) => {
|
|
|
3466
3488
|
children: locale === "ko" ? "\uCDE8\uC18C" : "Cancel"
|
|
3467
3489
|
}
|
|
3468
3490
|
),
|
|
3469
|
-
/* @__PURE__ */
|
|
3491
|
+
/* @__PURE__ */ jsx320(Button_default, { type: "primary", onClick: handleClose, children: locale === "ko" ? "\uC801\uC6A9" : "Apply" })
|
|
3470
3492
|
] })
|
|
3471
3493
|
] }) })
|
|
3472
3494
|
] });
|
|
@@ -3475,10 +3497,10 @@ PopupPicker.displayName = "PopupPicker";
|
|
|
3475
3497
|
var PopupPicker_default = PopupPicker;
|
|
3476
3498
|
|
|
3477
3499
|
// src/components/Divider/Divider.tsx
|
|
3478
|
-
import { jsx as
|
|
3500
|
+
import { jsx as jsx321 } from "react/jsx-runtime";
|
|
3479
3501
|
var Divider = (props) => {
|
|
3480
3502
|
const { orientation = "horizontal" } = props;
|
|
3481
|
-
return /* @__PURE__ */
|
|
3503
|
+
return /* @__PURE__ */ jsx321(
|
|
3482
3504
|
"div",
|
|
3483
3505
|
{
|
|
3484
3506
|
className: clsx_default("lib-xplat-divider", orientation),
|
|
@@ -3493,7 +3515,7 @@ var Divider_default = Divider;
|
|
|
3493
3515
|
// src/components/Drawer/Drawer.tsx
|
|
3494
3516
|
import React17 from "react";
|
|
3495
3517
|
import { createPortal as createPortal2 } from "react-dom";
|
|
3496
|
-
import { jsx as
|
|
3518
|
+
import { jsx as jsx322, jsxs as jsxs206 } from "react/jsx-runtime";
|
|
3497
3519
|
var ANIMATION_DURATION_MS2 = 250;
|
|
3498
3520
|
var Drawer = (props) => {
|
|
3499
3521
|
const { isOpen, onClose, placement = "right", size = "md", title, children } = props;
|
|
@@ -3513,7 +3535,7 @@ var Drawer = (props) => {
|
|
|
3513
3535
|
if (!mounted) return null;
|
|
3514
3536
|
const stateClass = visible ? "enter" : "exit";
|
|
3515
3537
|
return createPortal2(
|
|
3516
|
-
/* @__PURE__ */
|
|
3538
|
+
/* @__PURE__ */ jsx322(
|
|
3517
3539
|
"div",
|
|
3518
3540
|
{
|
|
3519
3541
|
className: clsx_default("lib-xplat-drawer-overlay", stateClass),
|
|
@@ -3527,10 +3549,10 @@ var Drawer = (props) => {
|
|
|
3527
3549
|
onClick: (e) => e.stopPropagation(),
|
|
3528
3550
|
children: [
|
|
3529
3551
|
title && /* @__PURE__ */ jsxs206("div", { className: "drawer-header", children: [
|
|
3530
|
-
/* @__PURE__ */
|
|
3531
|
-
/* @__PURE__ */
|
|
3552
|
+
/* @__PURE__ */ jsx322("span", { className: "drawer-title", children: title }),
|
|
3553
|
+
/* @__PURE__ */ jsx322("button", { className: "close-btn", onClick: onClose, "aria-label": "\uB2EB\uAE30", children: "\xD7" })
|
|
3532
3554
|
] }),
|
|
3533
|
-
/* @__PURE__ */
|
|
3555
|
+
/* @__PURE__ */ jsx322("div", { className: "drawer-body", children })
|
|
3534
3556
|
]
|
|
3535
3557
|
}
|
|
3536
3558
|
)
|
|
@@ -3632,7 +3654,7 @@ var useClickOutside = (refs, handler, enabled = true) => {
|
|
|
3632
3654
|
var useClickOutside_default = useClickOutside;
|
|
3633
3655
|
|
|
3634
3656
|
// src/components/Dropdown/Dropdown.tsx
|
|
3635
|
-
import { jsx as
|
|
3657
|
+
import { jsx as jsx323, jsxs as jsxs207 } from "react/jsx-runtime";
|
|
3636
3658
|
var Dropdown = (props) => {
|
|
3637
3659
|
const { items, children } = props;
|
|
3638
3660
|
const [isOpen, setIsOpen] = React20.useState(false);
|
|
@@ -3658,7 +3680,7 @@ var Dropdown = (props) => {
|
|
|
3658
3680
|
setIsOpen(false);
|
|
3659
3681
|
};
|
|
3660
3682
|
return /* @__PURE__ */ jsxs207("div", { className: "lib-xplat-dropdown", children: [
|
|
3661
|
-
/* @__PURE__ */
|
|
3683
|
+
/* @__PURE__ */ jsx323(
|
|
3662
3684
|
"div",
|
|
3663
3685
|
{
|
|
3664
3686
|
ref: triggerRef,
|
|
@@ -3667,14 +3689,14 @@ var Dropdown = (props) => {
|
|
|
3667
3689
|
children
|
|
3668
3690
|
}
|
|
3669
3691
|
),
|
|
3670
|
-
mounted && /* @__PURE__ */
|
|
3692
|
+
mounted && /* @__PURE__ */ jsx323(Portal_default, { children: /* @__PURE__ */ jsx323(
|
|
3671
3693
|
"div",
|
|
3672
3694
|
{
|
|
3673
3695
|
ref: menuRef,
|
|
3674
3696
|
className: clsx_default("lib-xplat-dropdown-menu", direction, { visible }),
|
|
3675
3697
|
style: { top: position.top, left: position.left },
|
|
3676
3698
|
role: "menu",
|
|
3677
|
-
children: items.map((item) => /* @__PURE__ */
|
|
3699
|
+
children: items.map((item) => /* @__PURE__ */ jsx323(
|
|
3678
3700
|
"button",
|
|
3679
3701
|
{
|
|
3680
3702
|
className: clsx_default("dropdown-item", {
|
|
@@ -3696,15 +3718,15 @@ Dropdown.displayName = "Dropdown";
|
|
|
3696
3718
|
var Dropdown_default = Dropdown;
|
|
3697
3719
|
|
|
3698
3720
|
// src/components/EmptyState/EmptyState.tsx
|
|
3699
|
-
import { jsx as
|
|
3721
|
+
import { jsx as jsx324, jsxs as jsxs208 } from "react/jsx-runtime";
|
|
3700
3722
|
var EmptyState = (props) => {
|
|
3701
3723
|
const { icon, title = "\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4", description, action } = props;
|
|
3702
3724
|
return /* @__PURE__ */ jsxs208("div", { className: "lib-xplat-empty-state", children: [
|
|
3703
|
-
icon && /* @__PURE__ */
|
|
3704
|
-
!icon && /* @__PURE__ */
|
|
3705
|
-
/* @__PURE__ */
|
|
3706
|
-
description && /* @__PURE__ */
|
|
3707
|
-
action && /* @__PURE__ */
|
|
3725
|
+
icon && /* @__PURE__ */ jsx324("div", { className: "empty-icon", children: icon }),
|
|
3726
|
+
!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" }) }) }),
|
|
3727
|
+
/* @__PURE__ */ jsx324("p", { className: "empty-title", children: title }),
|
|
3728
|
+
description && /* @__PURE__ */ jsx324("p", { className: "empty-description", children: description }),
|
|
3729
|
+
action && /* @__PURE__ */ jsx324("div", { className: "empty-action", children: action })
|
|
3708
3730
|
] });
|
|
3709
3731
|
};
|
|
3710
3732
|
EmptyState.displayName = "EmptyState";
|
|
@@ -3712,7 +3734,7 @@ var EmptyState_default = EmptyState;
|
|
|
3712
3734
|
|
|
3713
3735
|
// src/components/FileUpload/FileUpload.tsx
|
|
3714
3736
|
import React21 from "react";
|
|
3715
|
-
import { jsx as
|
|
3737
|
+
import { jsx as jsx325, jsxs as jsxs209 } from "react/jsx-runtime";
|
|
3716
3738
|
var FileUpload = (props) => {
|
|
3717
3739
|
const {
|
|
3718
3740
|
accept,
|
|
@@ -3762,7 +3784,7 @@ var FileUpload = (props) => {
|
|
|
3762
3784
|
onDragLeave: handleDragLeave,
|
|
3763
3785
|
onClick: () => inputRef.current?.click(),
|
|
3764
3786
|
children: [
|
|
3765
|
-
/* @__PURE__ */
|
|
3787
|
+
/* @__PURE__ */ jsx325(
|
|
3766
3788
|
"input",
|
|
3767
3789
|
{
|
|
3768
3790
|
ref: inputRef,
|
|
@@ -3772,9 +3794,9 @@ var FileUpload = (props) => {
|
|
|
3772
3794
|
onChange: handleChange
|
|
3773
3795
|
}
|
|
3774
3796
|
),
|
|
3775
|
-
/* @__PURE__ */
|
|
3776
|
-
/* @__PURE__ */
|
|
3777
|
-
description && /* @__PURE__ */
|
|
3797
|
+
/* @__PURE__ */ jsx325("div", { className: "upload-icon", children: /* @__PURE__ */ jsx325(UploadIcon_default, {}) }),
|
|
3798
|
+
/* @__PURE__ */ jsx325("p", { className: "upload-label", children: label }),
|
|
3799
|
+
description && /* @__PURE__ */ jsx325("p", { className: "upload-description", children: description })
|
|
3778
3800
|
]
|
|
3779
3801
|
}
|
|
3780
3802
|
);
|
|
@@ -3868,7 +3890,7 @@ var htmlToReactProgressive = (root, typedLen, rangeMap) => {
|
|
|
3868
3890
|
};
|
|
3869
3891
|
|
|
3870
3892
|
// src/components/HtmlTypeWriter/HtmlTypeWriter.tsx
|
|
3871
|
-
import { jsx as
|
|
3893
|
+
import { jsx as jsx326 } from "react/jsx-runtime";
|
|
3872
3894
|
var HtmlTypeWriter = ({
|
|
3873
3895
|
html,
|
|
3874
3896
|
duration = 20,
|
|
@@ -3911,14 +3933,14 @@ var HtmlTypeWriter = ({
|
|
|
3911
3933
|
() => doc ? htmlToReactProgressive(doc.body, typedLen, rangeMap) : null,
|
|
3912
3934
|
[doc, typedLen, rangeMap]
|
|
3913
3935
|
);
|
|
3914
|
-
return /* @__PURE__ */
|
|
3936
|
+
return /* @__PURE__ */ jsx326("div", { className: "lib-xplat-htmlTypewriter", children: parsed });
|
|
3915
3937
|
};
|
|
3916
3938
|
HtmlTypeWriter.displayName = "HtmlTypeWriter";
|
|
3917
3939
|
var HtmlTypeWriter_default = HtmlTypeWriter;
|
|
3918
3940
|
|
|
3919
3941
|
// src/components/ImageSelector/ImageSelector.tsx
|
|
3920
3942
|
import React24 from "react";
|
|
3921
|
-
import { jsx as
|
|
3943
|
+
import { jsx as jsx327, jsxs as jsxs210 } from "react/jsx-runtime";
|
|
3922
3944
|
var ImageSelector = (props) => {
|
|
3923
3945
|
const { value, label, onChange } = props;
|
|
3924
3946
|
const [previewUrl, setPreviewUrl] = React24.useState();
|
|
@@ -3945,7 +3967,7 @@ var ImageSelector = (props) => {
|
|
|
3945
3967
|
inputRef.current?.click();
|
|
3946
3968
|
};
|
|
3947
3969
|
return /* @__PURE__ */ jsxs210("div", { className: `lib-xplat-imageselector${value ? "" : " none-value"}`, children: [
|
|
3948
|
-
/* @__PURE__ */
|
|
3970
|
+
/* @__PURE__ */ jsx327(
|
|
3949
3971
|
"input",
|
|
3950
3972
|
{
|
|
3951
3973
|
type: "file",
|
|
@@ -3956,12 +3978,12 @@ var ImageSelector = (props) => {
|
|
|
3956
3978
|
}
|
|
3957
3979
|
),
|
|
3958
3980
|
value && /* @__PURE__ */ jsxs210("div", { className: "action-bar", children: [
|
|
3959
|
-
/* @__PURE__ */
|
|
3960
|
-
/* @__PURE__ */
|
|
3981
|
+
/* @__PURE__ */ jsx327("div", { className: "icon-wrapper", onClick: handleOpenFileDialog, children: /* @__PURE__ */ jsx327(UploadIcon_default, {}) }),
|
|
3982
|
+
/* @__PURE__ */ jsx327("div", { className: "icon-wrapper", onClick: handleDeleteFile, children: /* @__PURE__ */ jsx327(DeleteIcon_default, {}) })
|
|
3961
3983
|
] }),
|
|
3962
|
-
/* @__PURE__ */
|
|
3963
|
-
/* @__PURE__ */
|
|
3964
|
-
/* @__PURE__ */
|
|
3984
|
+
/* @__PURE__ */ jsx327("div", { className: "content", children: previewUrl ? /* @__PURE__ */ jsx327("img", { src: previewUrl, alt: "preview" }) : /* @__PURE__ */ jsxs210("div", { className: "skeleton", onClick: handleOpenFileDialog, children: [
|
|
3985
|
+
/* @__PURE__ */ jsx327("div", { className: "icon-wrapper", children: /* @__PURE__ */ jsx327(ImageIcon_default, {}) }),
|
|
3986
|
+
/* @__PURE__ */ jsx327("div", { className: "label", children: label || "\uC774\uBBF8\uC9C0 \uCD94\uAC00\uD558\uAE30" })
|
|
3965
3987
|
] }) })
|
|
3966
3988
|
] });
|
|
3967
3989
|
};
|
|
@@ -3969,7 +3991,7 @@ ImageSelector.displayName = "ImageSelector";
|
|
|
3969
3991
|
var ImageSelector_default = ImageSelector;
|
|
3970
3992
|
|
|
3971
3993
|
// src/components/Pagination/Pagination.tsx
|
|
3972
|
-
import { jsx as
|
|
3994
|
+
import { jsx as jsx328, jsxs as jsxs211 } from "react/jsx-runtime";
|
|
3973
3995
|
var getPageRange = (current, totalPages, siblingCount) => {
|
|
3974
3996
|
const totalNumbers = siblingCount * 2 + 5;
|
|
3975
3997
|
if (totalPages <= totalNumbers) {
|
|
@@ -4013,18 +4035,18 @@ var Pagination = (props) => {
|
|
|
4013
4035
|
}
|
|
4014
4036
|
};
|
|
4015
4037
|
return /* @__PURE__ */ jsxs211("nav", { className: clsx_default("lib-xplat-pagination", size, type), "aria-label": "\uD398\uC774\uC9C0 \uB124\uBE44\uAC8C\uC774\uC158", children: [
|
|
4016
|
-
/* @__PURE__ */
|
|
4038
|
+
/* @__PURE__ */ jsx328(
|
|
4017
4039
|
"button",
|
|
4018
4040
|
{
|
|
4019
4041
|
className: "page-btn prev",
|
|
4020
4042
|
disabled: current <= 1,
|
|
4021
4043
|
onClick: () => handleClick(current - 1),
|
|
4022
4044
|
"aria-label": "\uC774\uC804 \uD398\uC774\uC9C0",
|
|
4023
|
-
children: /* @__PURE__ */
|
|
4045
|
+
children: /* @__PURE__ */ jsx328(ChevronLeftIcon_default, {})
|
|
4024
4046
|
}
|
|
4025
4047
|
),
|
|
4026
4048
|
pages.map(
|
|
4027
|
-
(page, i) => page === "..." ? /* @__PURE__ */
|
|
4049
|
+
(page, i) => page === "..." ? /* @__PURE__ */ jsx328("span", { className: "dots", children: "..." }, `dots-${i}`) : /* @__PURE__ */ jsx328(
|
|
4028
4050
|
"button",
|
|
4029
4051
|
{
|
|
4030
4052
|
className: clsx_default("page-btn", { active: page === current }),
|
|
@@ -4035,14 +4057,14 @@ var Pagination = (props) => {
|
|
|
4035
4057
|
page
|
|
4036
4058
|
)
|
|
4037
4059
|
),
|
|
4038
|
-
/* @__PURE__ */
|
|
4060
|
+
/* @__PURE__ */ jsx328(
|
|
4039
4061
|
"button",
|
|
4040
4062
|
{
|
|
4041
4063
|
className: "page-btn next",
|
|
4042
4064
|
disabled: current >= totalPages,
|
|
4043
4065
|
onClick: () => handleClick(current + 1),
|
|
4044
4066
|
"aria-label": "\uB2E4\uC74C \uD398\uC774\uC9C0",
|
|
4045
|
-
children: /* @__PURE__ */
|
|
4067
|
+
children: /* @__PURE__ */ jsx328(ChevronRightIcon_default, {})
|
|
4046
4068
|
}
|
|
4047
4069
|
)
|
|
4048
4070
|
] });
|
|
@@ -4052,7 +4074,7 @@ var Pagination_default = Pagination;
|
|
|
4052
4074
|
|
|
4053
4075
|
// src/components/PopOver/PopOver.tsx
|
|
4054
4076
|
import React25 from "react";
|
|
4055
|
-
import { jsx as
|
|
4077
|
+
import { jsx as jsx329, jsxs as jsxs212 } from "react/jsx-runtime";
|
|
4056
4078
|
var PopOver = (props) => {
|
|
4057
4079
|
const { children, isOpen, onClose, PopOverEl } = props;
|
|
4058
4080
|
const popRef = React25.useRef(null);
|
|
@@ -4084,7 +4106,7 @@ var PopOver = (props) => {
|
|
|
4084
4106
|
},
|
|
4085
4107
|
children: [
|
|
4086
4108
|
children,
|
|
4087
|
-
localOpen && /* @__PURE__ */
|
|
4109
|
+
localOpen && /* @__PURE__ */ jsx329(Portal_default, { children: /* @__PURE__ */ jsx329(
|
|
4088
4110
|
"div",
|
|
4089
4111
|
{
|
|
4090
4112
|
className: clsx_default(
|
|
@@ -4107,7 +4129,7 @@ PopOver.displayName = "PopOver";
|
|
|
4107
4129
|
var PopOver_default = PopOver;
|
|
4108
4130
|
|
|
4109
4131
|
// src/components/Progress/Progress.tsx
|
|
4110
|
-
import { jsx as
|
|
4132
|
+
import { jsx as jsx330, jsxs as jsxs213 } from "react/jsx-runtime";
|
|
4111
4133
|
var Progress = (props) => {
|
|
4112
4134
|
const {
|
|
4113
4135
|
value,
|
|
@@ -4118,7 +4140,7 @@ var Progress = (props) => {
|
|
|
4118
4140
|
} = props;
|
|
4119
4141
|
const percentage = Math.min(100, Math.max(0, value / max * 100));
|
|
4120
4142
|
return /* @__PURE__ */ jsxs213("div", { className: clsx_default("lib-xplat-progress", size, type), children: [
|
|
4121
|
-
/* @__PURE__ */
|
|
4143
|
+
/* @__PURE__ */ jsx330(
|
|
4122
4144
|
"div",
|
|
4123
4145
|
{
|
|
4124
4146
|
className: "track",
|
|
@@ -4126,7 +4148,7 @@ var Progress = (props) => {
|
|
|
4126
4148
|
"aria-valuenow": value,
|
|
4127
4149
|
"aria-valuemin": 0,
|
|
4128
4150
|
"aria-valuemax": max,
|
|
4129
|
-
children: /* @__PURE__ */
|
|
4151
|
+
children: /* @__PURE__ */ jsx330(
|
|
4130
4152
|
"div",
|
|
4131
4153
|
{
|
|
4132
4154
|
className: "bar",
|
|
@@ -4155,7 +4177,7 @@ var useRadioGroupContext = () => {
|
|
|
4155
4177
|
var RadioGroupContext_default = RadioGroupContext;
|
|
4156
4178
|
|
|
4157
4179
|
// src/components/Radio/Radio.tsx
|
|
4158
|
-
import { jsx as
|
|
4180
|
+
import { jsx as jsx331, jsxs as jsxs214 } from "react/jsx-runtime";
|
|
4159
4181
|
var Radio = (props) => {
|
|
4160
4182
|
const {
|
|
4161
4183
|
label,
|
|
@@ -4183,18 +4205,18 @@ var Radio = (props) => {
|
|
|
4183
4205
|
localChecked ? "checked" : void 0
|
|
4184
4206
|
),
|
|
4185
4207
|
children: [
|
|
4186
|
-
/* @__PURE__ */
|
|
4187
|
-
/* @__PURE__ */
|
|
4208
|
+
/* @__PURE__ */ jsx331("input", { ...rest, ...inputProps, checked: localChecked, type: "radio" }),
|
|
4209
|
+
/* @__PURE__ */ jsx331(
|
|
4188
4210
|
"div",
|
|
4189
4211
|
{
|
|
4190
4212
|
className: clsx_default(
|
|
4191
4213
|
"circle",
|
|
4192
4214
|
localChecked ? "checked" : void 0
|
|
4193
4215
|
),
|
|
4194
|
-
children: localChecked && /* @__PURE__ */
|
|
4216
|
+
children: localChecked && /* @__PURE__ */ jsx331("div", { className: "inner-circle" })
|
|
4195
4217
|
}
|
|
4196
4218
|
),
|
|
4197
|
-
label && /* @__PURE__ */
|
|
4219
|
+
label && /* @__PURE__ */ jsx331("span", { children: label })
|
|
4198
4220
|
]
|
|
4199
4221
|
}
|
|
4200
4222
|
);
|
|
@@ -4203,10 +4225,10 @@ Radio.displayName = "Radio";
|
|
|
4203
4225
|
var Radio_default = Radio;
|
|
4204
4226
|
|
|
4205
4227
|
// src/components/Radio/RadioGroup.tsx
|
|
4206
|
-
import { Fragment as Fragment4, jsx as
|
|
4228
|
+
import { Fragment as Fragment4, jsx as jsx332 } from "react/jsx-runtime";
|
|
4207
4229
|
var RadioGroup = (props) => {
|
|
4208
4230
|
const { children, ...rest } = props;
|
|
4209
|
-
return /* @__PURE__ */
|
|
4231
|
+
return /* @__PURE__ */ jsx332(Fragment4, { children: /* @__PURE__ */ jsx332(RadioGroupContext_default.Provider, { value: rest, children }) });
|
|
4210
4232
|
};
|
|
4211
4233
|
RadioGroup.displayName = "RadioGroup";
|
|
4212
4234
|
var RadioGroup_default = RadioGroup;
|
|
@@ -4221,7 +4243,7 @@ var context_default = SelectContext;
|
|
|
4221
4243
|
|
|
4222
4244
|
// src/components/Select/SelectItem.tsx
|
|
4223
4245
|
import React28 from "react";
|
|
4224
|
-
import { jsx as
|
|
4246
|
+
import { jsx as jsx333 } from "react/jsx-runtime";
|
|
4225
4247
|
var SelectItem = (props) => {
|
|
4226
4248
|
const { children, value, onClick, disabled = false } = props;
|
|
4227
4249
|
const ctx = React28.useContext(context_default);
|
|
@@ -4233,7 +4255,7 @@ var SelectItem = (props) => {
|
|
|
4233
4255
|
ctx?.close();
|
|
4234
4256
|
onClick?.();
|
|
4235
4257
|
};
|
|
4236
|
-
return /* @__PURE__ */
|
|
4258
|
+
return /* @__PURE__ */ jsx333(
|
|
4237
4259
|
"div",
|
|
4238
4260
|
{
|
|
4239
4261
|
className: clsx_default("select-item", disabled && "disabled"),
|
|
@@ -4254,7 +4276,7 @@ SelectItem.displayName = "Select.Item";
|
|
|
4254
4276
|
var SelectItem_default = SelectItem;
|
|
4255
4277
|
|
|
4256
4278
|
// src/components/Select/Select.tsx
|
|
4257
|
-
import { jsx as
|
|
4279
|
+
import { jsx as jsx334, jsxs as jsxs215 } from "react/jsx-runtime";
|
|
4258
4280
|
var ANIMATION_DURATION_MS3 = 200;
|
|
4259
4281
|
var SelectRoot = (props) => {
|
|
4260
4282
|
const {
|
|
@@ -4330,7 +4352,7 @@ var SelectRoot = (props) => {
|
|
|
4330
4352
|
if (disabled) return;
|
|
4331
4353
|
toggle();
|
|
4332
4354
|
};
|
|
4333
|
-
return /* @__PURE__ */
|
|
4355
|
+
return /* @__PURE__ */ jsx334(context_default.Provider, { value: ctxValue, children: /* @__PURE__ */ jsxs215(
|
|
4334
4356
|
"div",
|
|
4335
4357
|
{
|
|
4336
4358
|
className: clsx_default(
|
|
@@ -4365,7 +4387,7 @@ var SelectRoot = (props) => {
|
|
|
4365
4387
|
}
|
|
4366
4388
|
},
|
|
4367
4389
|
children: [
|
|
4368
|
-
/* @__PURE__ */
|
|
4390
|
+
/* @__PURE__ */ jsx334(
|
|
4369
4391
|
"span",
|
|
4370
4392
|
{
|
|
4371
4393
|
className: clsx_default(
|
|
@@ -4375,25 +4397,25 @@ var SelectRoot = (props) => {
|
|
|
4375
4397
|
children: selectedLabel ?? placeholder
|
|
4376
4398
|
}
|
|
4377
4399
|
),
|
|
4378
|
-
/* @__PURE__ */
|
|
4400
|
+
/* @__PURE__ */ jsx334(
|
|
4379
4401
|
"span",
|
|
4380
4402
|
{
|
|
4381
4403
|
className: clsx_default("select-trigger-icon", isOpen && "open"),
|
|
4382
4404
|
"aria-hidden": true,
|
|
4383
|
-
children: /* @__PURE__ */
|
|
4405
|
+
children: /* @__PURE__ */ jsx334(ChevronDownIcon_default, {})
|
|
4384
4406
|
}
|
|
4385
4407
|
)
|
|
4386
4408
|
]
|
|
4387
4409
|
}
|
|
4388
4410
|
),
|
|
4389
|
-
mounted && /* @__PURE__ */
|
|
4411
|
+
mounted && /* @__PURE__ */ jsx334(Portal_default, { children: /* @__PURE__ */ jsx334(
|
|
4390
4412
|
"div",
|
|
4391
4413
|
{
|
|
4392
4414
|
className: clsx_default("lib-xplat-select-content", position.direction, stateClass),
|
|
4393
4415
|
ref: contentRef,
|
|
4394
4416
|
style: { ...position.position, width: triggerRef.current?.offsetWidth },
|
|
4395
4417
|
role: "listbox",
|
|
4396
|
-
children: /* @__PURE__ */
|
|
4418
|
+
children: /* @__PURE__ */ jsx334(context_default.Provider, { value: ctxValue, children: itemChildren })
|
|
4397
4419
|
}
|
|
4398
4420
|
) })
|
|
4399
4421
|
]
|
|
@@ -4407,7 +4429,7 @@ var Select = Object.assign(SelectRoot, {
|
|
|
4407
4429
|
var Select_default = Select;
|
|
4408
4430
|
|
|
4409
4431
|
// src/components/Skeleton/Skeleton.tsx
|
|
4410
|
-
import { jsx as
|
|
4432
|
+
import { jsx as jsx335 } from "react/jsx-runtime";
|
|
4411
4433
|
var SIZE_MAP = {
|
|
4412
4434
|
xs: "var(--spacing-size-1)",
|
|
4413
4435
|
sm: "var(--spacing-size-2)",
|
|
@@ -4423,7 +4445,7 @@ var Skeleton = (props) => {
|
|
|
4423
4445
|
...width != null && { width: SIZE_MAP[width] },
|
|
4424
4446
|
...height != null && { height: SIZE_MAP[height] }
|
|
4425
4447
|
};
|
|
4426
|
-
return /* @__PURE__ */
|
|
4448
|
+
return /* @__PURE__ */ jsx335(
|
|
4427
4449
|
"div",
|
|
4428
4450
|
{
|
|
4429
4451
|
className: clsx_default("lib-xplat-skeleton", variant),
|
|
@@ -4436,20 +4458,20 @@ Skeleton.displayName = "Skeleton";
|
|
|
4436
4458
|
var Skeleton_default = Skeleton;
|
|
4437
4459
|
|
|
4438
4460
|
// src/components/Spinner/Spinner.tsx
|
|
4439
|
-
import { jsx as
|
|
4461
|
+
import { jsx as jsx336, jsxs as jsxs216 } from "react/jsx-runtime";
|
|
4440
4462
|
var Spinner = (props) => {
|
|
4441
4463
|
const {
|
|
4442
4464
|
size = "md",
|
|
4443
4465
|
type = "brand"
|
|
4444
4466
|
} = props;
|
|
4445
|
-
return /* @__PURE__ */
|
|
4467
|
+
return /* @__PURE__ */ jsx336(
|
|
4446
4468
|
"div",
|
|
4447
4469
|
{
|
|
4448
4470
|
className: clsx_default("lib-xplat-spinner", size, type),
|
|
4449
4471
|
role: "status",
|
|
4450
4472
|
"aria-label": "\uB85C\uB529 \uC911",
|
|
4451
4473
|
children: /* @__PURE__ */ jsxs216("svg", { viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
|
|
4452
|
-
/* @__PURE__ */
|
|
4474
|
+
/* @__PURE__ */ jsx336(
|
|
4453
4475
|
"circle",
|
|
4454
4476
|
{
|
|
4455
4477
|
className: "track",
|
|
@@ -4459,7 +4481,7 @@ var Spinner = (props) => {
|
|
|
4459
4481
|
strokeWidth: "3"
|
|
4460
4482
|
}
|
|
4461
4483
|
),
|
|
4462
|
-
/* @__PURE__ */
|
|
4484
|
+
/* @__PURE__ */ jsx336(
|
|
4463
4485
|
"circle",
|
|
4464
4486
|
{
|
|
4465
4487
|
className: "indicator",
|
|
@@ -4478,20 +4500,20 @@ Spinner.displayName = "Spinner";
|
|
|
4478
4500
|
var Spinner_default = Spinner;
|
|
4479
4501
|
|
|
4480
4502
|
// src/components/Steps/Steps.tsx
|
|
4481
|
-
import { jsx as
|
|
4503
|
+
import { jsx as jsx337, jsxs as jsxs217 } from "react/jsx-runtime";
|
|
4482
4504
|
var Steps = (props) => {
|
|
4483
4505
|
const {
|
|
4484
4506
|
items,
|
|
4485
4507
|
current,
|
|
4486
4508
|
type = "brand"
|
|
4487
4509
|
} = props;
|
|
4488
|
-
return /* @__PURE__ */
|
|
4510
|
+
return /* @__PURE__ */ jsx337("div", { className: clsx_default("lib-xplat-steps", type), children: items.map((item, index) => {
|
|
4489
4511
|
const status = index < current ? "completed" : index === current ? "active" : "pending";
|
|
4490
4512
|
return /* @__PURE__ */ jsxs217("div", { className: clsx_default("step-item", status), children: [
|
|
4491
|
-
/* @__PURE__ */
|
|
4513
|
+
/* @__PURE__ */ jsx337("div", { className: "step-circle", children: status === "completed" ? /* @__PURE__ */ jsx337(CheckIcon_default, {}) : /* @__PURE__ */ jsx337("span", { children: index + 1 }) }),
|
|
4492
4514
|
/* @__PURE__ */ jsxs217("div", { className: "step-content", children: [
|
|
4493
|
-
/* @__PURE__ */
|
|
4494
|
-
item.description && /* @__PURE__ */
|
|
4515
|
+
/* @__PURE__ */ jsx337("span", { className: "step-title", children: item.title }),
|
|
4516
|
+
item.description && /* @__PURE__ */ jsx337("span", { className: "step-description", children: item.description })
|
|
4495
4517
|
] })
|
|
4496
4518
|
] }, index);
|
|
4497
4519
|
}) });
|
|
@@ -4501,7 +4523,7 @@ var Steps_default = Steps;
|
|
|
4501
4523
|
|
|
4502
4524
|
// src/components/Swiper/Swiper.tsx
|
|
4503
4525
|
import React30 from "react";
|
|
4504
|
-
import { jsx as
|
|
4526
|
+
import { jsx as jsx338, jsxs as jsxs218 } from "react/jsx-runtime";
|
|
4505
4527
|
var Swiper = (props) => {
|
|
4506
4528
|
const {
|
|
4507
4529
|
auto = false,
|
|
@@ -4700,7 +4722,7 @@ var Swiper = (props) => {
|
|
|
4700
4722
|
const slideWidthPercent = 100 / viewItemCount;
|
|
4701
4723
|
const gapAdjust = spaceBetween * (viewItemCount - 1) / viewItemCount;
|
|
4702
4724
|
const slideElements = React30.useMemo(
|
|
4703
|
-
() => extendedItems.map((item, idx) => /* @__PURE__ */
|
|
4725
|
+
() => extendedItems.map((item, idx) => /* @__PURE__ */ jsx338(
|
|
4704
4726
|
"div",
|
|
4705
4727
|
{
|
|
4706
4728
|
className: "lib-xplat-swiper__slide",
|
|
@@ -4720,13 +4742,13 @@ var Swiper = (props) => {
|
|
|
4720
4742
|
totalSteps - 1
|
|
4721
4743
|
);
|
|
4722
4744
|
return /* @__PURE__ */ jsxs218("div", { className: "lib-xplat-swiper", ref: containerRef, children: [
|
|
4723
|
-
/* @__PURE__ */
|
|
4745
|
+
/* @__PURE__ */ jsx338(
|
|
4724
4746
|
"div",
|
|
4725
4747
|
{
|
|
4726
4748
|
className: "lib-xplat-swiper__viewport",
|
|
4727
4749
|
onMouseDown: handleDragStart,
|
|
4728
4750
|
onTouchStart: handleDragStart,
|
|
4729
|
-
children: /* @__PURE__ */
|
|
4751
|
+
children: /* @__PURE__ */ jsx338(
|
|
4730
4752
|
"div",
|
|
4731
4753
|
{
|
|
4732
4754
|
className: clsx_default(
|
|
@@ -4744,7 +4766,7 @@ var Swiper = (props) => {
|
|
|
4744
4766
|
)
|
|
4745
4767
|
}
|
|
4746
4768
|
),
|
|
4747
|
-
showProgress && canSlide && /* @__PURE__ */
|
|
4769
|
+
showProgress && canSlide && /* @__PURE__ */ jsx338("div", { className: "lib-xplat-swiper__progress", children: /* @__PURE__ */ jsx338("div", { className: "lib-xplat-swiper__progress-track", children: /* @__PURE__ */ jsx338(
|
|
4748
4770
|
"span",
|
|
4749
4771
|
{
|
|
4750
4772
|
className: "lib-xplat-swiper__progress-fill",
|
|
@@ -4754,7 +4776,7 @@ var Swiper = (props) => {
|
|
|
4754
4776
|
}
|
|
4755
4777
|
}
|
|
4756
4778
|
) }) }),
|
|
4757
|
-
canSlide && /* @__PURE__ */
|
|
4779
|
+
canSlide && /* @__PURE__ */ jsx338("div", { className: "lib-xplat-swiper__dots", children: Array.from({ length: totalSteps }, (_, i) => /* @__PURE__ */ jsx338(
|
|
4758
4780
|
"button",
|
|
4759
4781
|
{
|
|
4760
4782
|
className: clsx_default(
|
|
@@ -4773,7 +4795,7 @@ var Swiper_default = Swiper;
|
|
|
4773
4795
|
|
|
4774
4796
|
// src/components/Switch/Switch.tsx
|
|
4775
4797
|
import React31 from "react";
|
|
4776
|
-
import { jsx as
|
|
4798
|
+
import { jsx as jsx339 } from "react/jsx-runtime";
|
|
4777
4799
|
var KNOB_TRANSITION_MS = 250;
|
|
4778
4800
|
var Switch = (props) => {
|
|
4779
4801
|
const {
|
|
@@ -4800,7 +4822,7 @@ var Switch = (props) => {
|
|
|
4800
4822
|
timeoutRef.current = null;
|
|
4801
4823
|
}, KNOB_TRANSITION_MS);
|
|
4802
4824
|
};
|
|
4803
|
-
return /* @__PURE__ */
|
|
4825
|
+
return /* @__PURE__ */ jsx339(
|
|
4804
4826
|
"div",
|
|
4805
4827
|
{
|
|
4806
4828
|
className: clsx_default(
|
|
@@ -4813,7 +4835,7 @@ var Switch = (props) => {
|
|
|
4813
4835
|
),
|
|
4814
4836
|
onClick: handleClick,
|
|
4815
4837
|
"aria-disabled": disabled || isAnimating,
|
|
4816
|
-
children: /* @__PURE__ */
|
|
4838
|
+
children: /* @__PURE__ */ jsx339("div", { className: clsx_default("knob", value ? "checked" : void 0) })
|
|
4817
4839
|
}
|
|
4818
4840
|
);
|
|
4819
4841
|
};
|
|
@@ -4831,7 +4853,7 @@ var useTableContext = () => {
|
|
|
4831
4853
|
var TableContext_default = TableContext;
|
|
4832
4854
|
|
|
4833
4855
|
// src/components/Table/Table.tsx
|
|
4834
|
-
import { jsx as
|
|
4856
|
+
import { jsx as jsx340 } from "react/jsx-runtime";
|
|
4835
4857
|
var Table = (props) => {
|
|
4836
4858
|
const {
|
|
4837
4859
|
children,
|
|
@@ -4841,7 +4863,7 @@ var Table = (props) => {
|
|
|
4841
4863
|
headerSticky = false,
|
|
4842
4864
|
stickyShadow = true
|
|
4843
4865
|
} = props;
|
|
4844
|
-
return /* @__PURE__ */
|
|
4866
|
+
return /* @__PURE__ */ jsx340("div", { className: `lib-xplat-table-wrapper ${size}`, children: /* @__PURE__ */ jsx340(
|
|
4845
4867
|
TableContext_default.Provider,
|
|
4846
4868
|
{
|
|
4847
4869
|
value: {
|
|
@@ -4850,7 +4872,7 @@ var Table = (props) => {
|
|
|
4850
4872
|
headerSticky,
|
|
4851
4873
|
stickyShadow
|
|
4852
4874
|
},
|
|
4853
|
-
children: /* @__PURE__ */
|
|
4875
|
+
children: /* @__PURE__ */ jsx340("table", { className: "lib-xplat-table", children })
|
|
4854
4876
|
}
|
|
4855
4877
|
) });
|
|
4856
4878
|
};
|
|
@@ -4858,10 +4880,10 @@ Table.displayName = "Table";
|
|
|
4858
4880
|
var Table_default = Table;
|
|
4859
4881
|
|
|
4860
4882
|
// src/components/Table/TableBody.tsx
|
|
4861
|
-
import { jsx as
|
|
4883
|
+
import { jsx as jsx341 } from "react/jsx-runtime";
|
|
4862
4884
|
var TableBody = (props) => {
|
|
4863
4885
|
const { children } = props;
|
|
4864
|
-
return /* @__PURE__ */
|
|
4886
|
+
return /* @__PURE__ */ jsx341("tbody", { children });
|
|
4865
4887
|
};
|
|
4866
4888
|
TableBody.displayName = "TableBody";
|
|
4867
4889
|
var TableBody_default = TableBody;
|
|
@@ -4891,7 +4913,7 @@ var useTableRowContext = () => {
|
|
|
4891
4913
|
var TableRowContext_default = TableRowContext;
|
|
4892
4914
|
|
|
4893
4915
|
// src/components/Table/TableCell.tsx
|
|
4894
|
-
import { jsx as
|
|
4916
|
+
import { jsx as jsx342 } from "react/jsx-runtime";
|
|
4895
4917
|
var TableCell = React35.memo((props) => {
|
|
4896
4918
|
const {
|
|
4897
4919
|
children,
|
|
@@ -4933,7 +4955,7 @@ var TableCell = React35.memo((props) => {
|
|
|
4933
4955
|
const CellTag = cellRef.current?.tagName === "TH" ? "th" : "td";
|
|
4934
4956
|
const isLastSticky = isSticky && stickyCells[stickyCells.length - 1] === cellRef;
|
|
4935
4957
|
const enableHover = headContext && headContext.cellHover;
|
|
4936
|
-
return /* @__PURE__ */
|
|
4958
|
+
return /* @__PURE__ */ jsx342(
|
|
4937
4959
|
CellTag,
|
|
4938
4960
|
{
|
|
4939
4961
|
ref: cellRef,
|
|
@@ -4958,20 +4980,20 @@ TableCell.displayName = "TableCell";
|
|
|
4958
4980
|
var TableCell_default = TableCell;
|
|
4959
4981
|
|
|
4960
4982
|
// src/components/Table/TableHead.tsx
|
|
4961
|
-
import { jsx as
|
|
4983
|
+
import { jsx as jsx343 } from "react/jsx-runtime";
|
|
4962
4984
|
var TableHead = ({
|
|
4963
4985
|
children,
|
|
4964
4986
|
cellHover = false
|
|
4965
4987
|
}) => {
|
|
4966
4988
|
const { headerSticky } = useTableContext();
|
|
4967
|
-
return /* @__PURE__ */
|
|
4989
|
+
return /* @__PURE__ */ jsx343(TableHeadContext_default.Provider, { value: { cellHover }, children: /* @__PURE__ */ jsx343("thead", { className: clsx_default(headerSticky ? "table-sticky" : null), children }) });
|
|
4968
4990
|
};
|
|
4969
4991
|
TableHead.displayName = "TableHead";
|
|
4970
4992
|
var TableHead_default = TableHead;
|
|
4971
4993
|
|
|
4972
4994
|
// src/components/Table/TableRow.tsx
|
|
4973
4995
|
import React36 from "react";
|
|
4974
|
-
import { jsx as
|
|
4996
|
+
import { jsx as jsx344 } from "react/jsx-runtime";
|
|
4975
4997
|
var TableRow = React36.memo((props) => {
|
|
4976
4998
|
const {
|
|
4977
4999
|
children,
|
|
@@ -4987,7 +5009,7 @@ var TableRow = React36.memo((props) => {
|
|
|
4987
5009
|
return [...prev, ref];
|
|
4988
5010
|
});
|
|
4989
5011
|
};
|
|
4990
|
-
return /* @__PURE__ */
|
|
5012
|
+
return /* @__PURE__ */ jsx344(TableRowContext_default.Provider, { value: { stickyCells, registerStickyCell }, children: /* @__PURE__ */ jsx344(
|
|
4991
5013
|
"tr",
|
|
4992
5014
|
{
|
|
4993
5015
|
className: clsx_default(
|
|
@@ -5005,7 +5027,7 @@ TableRow.displayName = "TableRow";
|
|
|
5005
5027
|
var TableRow_default = TableRow;
|
|
5006
5028
|
|
|
5007
5029
|
// src/components/Tag/Tag.tsx
|
|
5008
|
-
import { jsx as
|
|
5030
|
+
import { jsx as jsx345, jsxs as jsxs219 } from "react/jsx-runtime";
|
|
5009
5031
|
var Tag = (props) => {
|
|
5010
5032
|
const {
|
|
5011
5033
|
children,
|
|
@@ -5026,8 +5048,8 @@ var Tag = (props) => {
|
|
|
5026
5048
|
disabled && "disabled"
|
|
5027
5049
|
),
|
|
5028
5050
|
children: [
|
|
5029
|
-
/* @__PURE__ */
|
|
5030
|
-
onClose && /* @__PURE__ */
|
|
5051
|
+
/* @__PURE__ */ jsx345("span", { className: "tag-label", children }),
|
|
5052
|
+
onClose && /* @__PURE__ */ jsx345("button", { className: "tag-close", onClick: onClose, "aria-label": "\uC0AD\uC81C", disabled, children: /* @__PURE__ */ jsx345(XIcon_default, {}) })
|
|
5031
5053
|
]
|
|
5032
5054
|
}
|
|
5033
5055
|
);
|
|
@@ -5037,7 +5059,7 @@ var Tag_default = Tag;
|
|
|
5037
5059
|
|
|
5038
5060
|
// src/components/TextArea/TextArea.tsx
|
|
5039
5061
|
import React37 from "react";
|
|
5040
|
-
import { jsx as
|
|
5062
|
+
import { jsx as jsx346 } from "react/jsx-runtime";
|
|
5041
5063
|
var TextArea = React37.forwardRef(
|
|
5042
5064
|
(props, ref) => {
|
|
5043
5065
|
const { value, onChange, disabled, ...textareaProps } = props;
|
|
@@ -5068,14 +5090,14 @@ var TextArea = React37.forwardRef(
|
|
|
5068
5090
|
const nextHeight = Math.min(el.scrollHeight, 400);
|
|
5069
5091
|
el.style.height = `${nextHeight}px`;
|
|
5070
5092
|
}, [value]);
|
|
5071
|
-
return /* @__PURE__ */
|
|
5093
|
+
return /* @__PURE__ */ jsx346("div", { className: "lib-xplat-textarea-wrapper", children: /* @__PURE__ */ jsx346(
|
|
5072
5094
|
"div",
|
|
5073
5095
|
{
|
|
5074
5096
|
className: clsx_default(
|
|
5075
5097
|
"lib-xplat-textarea",
|
|
5076
5098
|
disabled ? "disabled" : void 0
|
|
5077
5099
|
),
|
|
5078
|
-
children: /* @__PURE__ */
|
|
5100
|
+
children: /* @__PURE__ */ jsx346(
|
|
5079
5101
|
"textarea",
|
|
5080
5102
|
{
|
|
5081
5103
|
...textareaProps,
|
|
@@ -5095,7 +5117,7 @@ var TextArea_default = TextArea;
|
|
|
5095
5117
|
// src/components/Toast/Toast.tsx
|
|
5096
5118
|
import React38 from "react";
|
|
5097
5119
|
import { createPortal as createPortal3 } from "react-dom";
|
|
5098
|
-
import { jsx as
|
|
5120
|
+
import { jsx as jsx347, jsxs as jsxs220 } from "react/jsx-runtime";
|
|
5099
5121
|
var ToastContext = React38.createContext(null);
|
|
5100
5122
|
var useToast = () => {
|
|
5101
5123
|
const ctx = React38.useContext(ToastContext);
|
|
@@ -5111,7 +5133,7 @@ var ToastItemComponent = ({ item, isExiting, onClose }) => {
|
|
|
5111
5133
|
setHeight(ref.current.offsetHeight);
|
|
5112
5134
|
}
|
|
5113
5135
|
}, [isExiting]);
|
|
5114
|
-
return /* @__PURE__ */
|
|
5136
|
+
return /* @__PURE__ */ jsx347(
|
|
5115
5137
|
"div",
|
|
5116
5138
|
{
|
|
5117
5139
|
className: clsx_default("lib-xplat-toast-wrapper", { exit: isExiting }),
|
|
@@ -5126,8 +5148,8 @@ var ToastItemComponent = ({ item, isExiting, onClose }) => {
|
|
|
5126
5148
|
className: clsx_default("lib-xplat-toast", item.type, { exit: isExiting }),
|
|
5127
5149
|
role: "alert",
|
|
5128
5150
|
children: [
|
|
5129
|
-
/* @__PURE__ */
|
|
5130
|
-
/* @__PURE__ */
|
|
5151
|
+
/* @__PURE__ */ jsx347("span", { className: "message", children: item.message }),
|
|
5152
|
+
/* @__PURE__ */ jsx347("button", { className: "close-btn", onClick: onClose, "aria-label": "\uB2EB\uAE30", children: "\xD7" })
|
|
5131
5153
|
]
|
|
5132
5154
|
}
|
|
5133
5155
|
)
|
|
@@ -5168,7 +5190,7 @@ var ToastProvider = ({
|
|
|
5168
5190
|
return /* @__PURE__ */ jsxs220(ToastContext.Provider, { value: { toast }, children: [
|
|
5169
5191
|
children,
|
|
5170
5192
|
mounted && createPortal3(
|
|
5171
|
-
/* @__PURE__ */
|
|
5193
|
+
/* @__PURE__ */ jsx347("div", { className: clsx_default("lib-xplat-toast-container", position), children: toasts.map((t) => /* @__PURE__ */ jsx347(
|
|
5172
5194
|
ToastItemComponent,
|
|
5173
5195
|
{
|
|
5174
5196
|
item: t,
|
|
@@ -5185,7 +5207,7 @@ ToastProvider.displayName = "ToastProvider";
|
|
|
5185
5207
|
|
|
5186
5208
|
// src/components/Tooltip/Tooltip.tsx
|
|
5187
5209
|
import React39 from "react";
|
|
5188
|
-
import { jsx as
|
|
5210
|
+
import { jsx as jsx348, jsxs as jsxs221 } from "react/jsx-runtime";
|
|
5189
5211
|
var Tooltip = (props) => {
|
|
5190
5212
|
const {
|
|
5191
5213
|
type = "primary",
|
|
@@ -5194,8 +5216,8 @@ var Tooltip = (props) => {
|
|
|
5194
5216
|
} = props;
|
|
5195
5217
|
const iconRef = React39.useRef(null);
|
|
5196
5218
|
return /* @__PURE__ */ jsxs221("div", { className: "lib-xplat-tooltip", children: [
|
|
5197
|
-
/* @__PURE__ */
|
|
5198
|
-
/* @__PURE__ */
|
|
5219
|
+
/* @__PURE__ */ jsx348("div", { className: "tooltip-content", ref: iconRef, children: children || "Tooltip" }),
|
|
5220
|
+
/* @__PURE__ */ jsx348("div", { className: clsx_default("tooltip-wrapper", type), children: description })
|
|
5199
5221
|
] });
|
|
5200
5222
|
};
|
|
5201
5223
|
Tooltip.displayName = "Tooltip";
|
|
@@ -5203,10 +5225,10 @@ var Tooltip_default = Tooltip;
|
|
|
5203
5225
|
|
|
5204
5226
|
// src/components/Video/Video.tsx
|
|
5205
5227
|
import React40 from "react";
|
|
5206
|
-
import { jsx as
|
|
5228
|
+
import { jsx as jsx349, jsxs as jsxs222 } from "react/jsx-runtime";
|
|
5207
5229
|
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: [
|
|
5208
|
-
/* @__PURE__ */
|
|
5209
|
-
/* @__PURE__ */
|
|
5230
|
+
/* @__PURE__ */ jsx349("rect", { x: "3", y: "5", width: "18", height: "14", rx: "2" }),
|
|
5231
|
+
/* @__PURE__ */ jsx349("rect", { x: "12", y: "11", width: "7", height: "6", rx: "1", fill: "currentColor" })
|
|
5210
5232
|
] });
|
|
5211
5233
|
var formatTime = (sec) => {
|
|
5212
5234
|
if (!Number.isFinite(sec) || sec < 0) return "0:00";
|
|
@@ -5387,7 +5409,7 @@ var Video = React40.forwardRef((props, ref) => {
|
|
|
5387
5409
|
ref: containerRef,
|
|
5388
5410
|
className: clsx_default("lib-xplat-video", showControls && "has-controls"),
|
|
5389
5411
|
children: [
|
|
5390
|
-
/* @__PURE__ */
|
|
5412
|
+
/* @__PURE__ */ jsx349(
|
|
5391
5413
|
"video",
|
|
5392
5414
|
{
|
|
5393
5415
|
ref: setRefs,
|
|
@@ -5408,7 +5430,7 @@ var Video = React40.forwardRef((props, ref) => {
|
|
|
5408
5430
|
children
|
|
5409
5431
|
}
|
|
5410
5432
|
),
|
|
5411
|
-
showCenterPlay && /* @__PURE__ */
|
|
5433
|
+
showCenterPlay && /* @__PURE__ */ jsx349(
|
|
5412
5434
|
"button",
|
|
5413
5435
|
{
|
|
5414
5436
|
type: "button",
|
|
@@ -5420,11 +5442,11 @@ var Video = React40.forwardRef((props, ref) => {
|
|
|
5420
5442
|
onClick: togglePlay,
|
|
5421
5443
|
"aria-label": isPlaying ? "\uC77C\uC2DC\uC815\uC9C0" : "\uC7AC\uC0DD",
|
|
5422
5444
|
tabIndex: -1,
|
|
5423
|
-
children: /* @__PURE__ */
|
|
5445
|
+
children: /* @__PURE__ */ jsx349("span", { className: "center-play-icon", children: /* @__PURE__ */ jsx349(PlayCircleIcon_default, {}) })
|
|
5424
5446
|
}
|
|
5425
5447
|
),
|
|
5426
5448
|
showControls && /* @__PURE__ */ jsxs222("div", { className: "controls", onClick: (e) => e.stopPropagation(), children: [
|
|
5427
|
-
/* @__PURE__ */
|
|
5449
|
+
/* @__PURE__ */ jsx349(
|
|
5428
5450
|
"input",
|
|
5429
5451
|
{
|
|
5430
5452
|
type: "range",
|
|
@@ -5442,28 +5464,28 @@ var Video = React40.forwardRef((props, ref) => {
|
|
|
5442
5464
|
}
|
|
5443
5465
|
),
|
|
5444
5466
|
/* @__PURE__ */ jsxs222("div", { className: "controls-row", children: [
|
|
5445
|
-
/* @__PURE__ */
|
|
5467
|
+
/* @__PURE__ */ jsx349(
|
|
5446
5468
|
"button",
|
|
5447
5469
|
{
|
|
5448
5470
|
type: "button",
|
|
5449
5471
|
className: "control-btn",
|
|
5450
5472
|
onClick: togglePlay,
|
|
5451
5473
|
"aria-label": isPlaying ? "\uC77C\uC2DC\uC815\uC9C0" : "\uC7AC\uC0DD",
|
|
5452
|
-
children: isPlaying ? /* @__PURE__ */
|
|
5474
|
+
children: isPlaying ? /* @__PURE__ */ jsx349(PauseIcon_default, {}) : /* @__PURE__ */ jsx349(PlayIcon_default, {})
|
|
5453
5475
|
}
|
|
5454
5476
|
),
|
|
5455
5477
|
/* @__PURE__ */ jsxs222("div", { className: "volume-group", children: [
|
|
5456
|
-
/* @__PURE__ */
|
|
5478
|
+
/* @__PURE__ */ jsx349(
|
|
5457
5479
|
"button",
|
|
5458
5480
|
{
|
|
5459
5481
|
type: "button",
|
|
5460
5482
|
className: "control-btn",
|
|
5461
5483
|
onClick: toggleMute,
|
|
5462
5484
|
"aria-label": isMuted ? "\uC74C\uC18C\uAC70 \uD574\uC81C" : "\uC74C\uC18C\uAC70",
|
|
5463
|
-
children: /* @__PURE__ */
|
|
5485
|
+
children: /* @__PURE__ */ jsx349(VolumeGlyph, {})
|
|
5464
5486
|
}
|
|
5465
5487
|
),
|
|
5466
|
-
/* @__PURE__ */
|
|
5488
|
+
/* @__PURE__ */ jsx349(
|
|
5467
5489
|
"input",
|
|
5468
5490
|
{
|
|
5469
5491
|
type: "range",
|
|
@@ -5483,7 +5505,7 @@ var Video = React40.forwardRef((props, ref) => {
|
|
|
5483
5505
|
" / ",
|
|
5484
5506
|
formatTime(duration)
|
|
5485
5507
|
] }),
|
|
5486
|
-
/* @__PURE__ */
|
|
5508
|
+
/* @__PURE__ */ jsx349("div", { className: "controls-spacer" }),
|
|
5487
5509
|
playbackRates && playbackRates.length > 0 && /* @__PURE__ */ jsxs222("div", { className: clsx_default("rate-group", rateMenuOpen && "is-open"), children: [
|
|
5488
5510
|
/* @__PURE__ */ jsxs222(
|
|
5489
5511
|
"button",
|
|
@@ -5499,7 +5521,7 @@ var Video = React40.forwardRef((props, ref) => {
|
|
|
5499
5521
|
]
|
|
5500
5522
|
}
|
|
5501
5523
|
),
|
|
5502
|
-
rateMenuOpen && /* @__PURE__ */
|
|
5524
|
+
rateMenuOpen && /* @__PURE__ */ jsx349("ul", { className: "rate-menu", role: "menu", children: playbackRates.map((r2) => /* @__PURE__ */ jsx349("li", { children: /* @__PURE__ */ jsxs222(
|
|
5503
5525
|
"button",
|
|
5504
5526
|
{
|
|
5505
5527
|
type: "button",
|
|
@@ -5513,7 +5535,7 @@ var Video = React40.forwardRef((props, ref) => {
|
|
|
5513
5535
|
}
|
|
5514
5536
|
) }, r2)) })
|
|
5515
5537
|
] }),
|
|
5516
|
-
showCaptions && /* @__PURE__ */
|
|
5538
|
+
showCaptions && /* @__PURE__ */ jsx349(
|
|
5517
5539
|
"button",
|
|
5518
5540
|
{
|
|
5519
5541
|
type: "button",
|
|
@@ -5521,37 +5543,37 @@ var Video = React40.forwardRef((props, ref) => {
|
|
|
5521
5543
|
onClick: toggleCaptions,
|
|
5522
5544
|
"aria-label": captionsOn ? "\uC790\uB9C9 \uB044\uAE30" : "\uC790\uB9C9 \uCF1C\uAE30",
|
|
5523
5545
|
"aria-pressed": captionsOn,
|
|
5524
|
-
children: /* @__PURE__ */
|
|
5546
|
+
children: /* @__PURE__ */ jsx349(TypeIcon_default, {})
|
|
5525
5547
|
}
|
|
5526
5548
|
),
|
|
5527
|
-
showPip && pipSupported && /* @__PURE__ */
|
|
5549
|
+
showPip && pipSupported && /* @__PURE__ */ jsx349(
|
|
5528
5550
|
"button",
|
|
5529
5551
|
{
|
|
5530
5552
|
type: "button",
|
|
5531
5553
|
className: clsx_default("control-btn", isPip && "is-active"),
|
|
5532
5554
|
onClick: togglePip,
|
|
5533
5555
|
"aria-label": isPip ? "PIP \uC885\uB8CC" : "PIP",
|
|
5534
|
-
children: /* @__PURE__ */
|
|
5556
|
+
children: /* @__PURE__ */ jsx349(PipIcon, {})
|
|
5535
5557
|
}
|
|
5536
5558
|
),
|
|
5537
|
-
showDownload && /* @__PURE__ */
|
|
5559
|
+
showDownload && /* @__PURE__ */ jsx349(
|
|
5538
5560
|
"a",
|
|
5539
5561
|
{
|
|
5540
5562
|
className: "control-btn",
|
|
5541
5563
|
href: src,
|
|
5542
5564
|
download: downloadFileName ?? true,
|
|
5543
5565
|
"aria-label": "\uB2E4\uC6B4\uB85C\uB4DC",
|
|
5544
|
-
children: /* @__PURE__ */
|
|
5566
|
+
children: /* @__PURE__ */ jsx349(DownloadIcon_default, {})
|
|
5545
5567
|
}
|
|
5546
5568
|
),
|
|
5547
|
-
/* @__PURE__ */
|
|
5569
|
+
/* @__PURE__ */ jsx349(
|
|
5548
5570
|
"button",
|
|
5549
5571
|
{
|
|
5550
5572
|
type: "button",
|
|
5551
5573
|
className: "control-btn",
|
|
5552
5574
|
onClick: toggleFullscreen,
|
|
5553
5575
|
"aria-label": isFullscreen ? "\uC804\uCCB4\uD654\uBA74 \uC885\uB8CC" : "\uC804\uCCB4\uD654\uBA74",
|
|
5554
|
-
children: isFullscreen ? /* @__PURE__ */
|
|
5576
|
+
children: isFullscreen ? /* @__PURE__ */ jsx349(MinimizeIcon_default, {}) : /* @__PURE__ */ jsx349(MaximizeIcon_default, {})
|
|
5555
5577
|
}
|
|
5556
5578
|
)
|
|
5557
5579
|
] })
|
|
@@ -5582,6 +5604,7 @@ export {
|
|
|
5582
5604
|
EmptyState_default as EmptyState,
|
|
5583
5605
|
FileUpload_default as FileUpload,
|
|
5584
5606
|
HtmlTypeWriter_default as HtmlTypewriter,
|
|
5607
|
+
IconButton_default as IconButton,
|
|
5585
5608
|
ImageSelector_default as ImageSelector,
|
|
5586
5609
|
Input_default as Input,
|
|
5587
5610
|
InputDatePicker_default as InputDatePicker,
|