@khipu/design-system 0.3.5-alpha.7 → 0.3.5-alpha.9
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/beercss/khipu-beercss.css +1 -1
- package/dist/beercss/khipu-beercss.js +5 -61
- package/dist/beercss/khipu-beercss.min.js +1 -1
- package/dist/beercss/khipu-beercss.scoped.css +1 -1
- package/dist/beercss/metadata.json +5 -5
- package/dist/index.d.mts +3 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +162 -242
- package/dist/index.mjs +31 -112
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -30,6 +30,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
30
30
|
// src/index.ts
|
|
31
31
|
var index_exports = {};
|
|
32
32
|
__export(index_exports, {
|
|
33
|
+
KDS_VERSION: () => KDS_VERSION,
|
|
33
34
|
KdsAccordion: () => KdsAccordion,
|
|
34
35
|
KdsAccordionDetails: () => KdsAccordionDetails,
|
|
35
36
|
KdsAccordionSummary: () => KdsAccordionSummary,
|
|
@@ -126,9 +127,6 @@ __export(index_exports, {
|
|
|
126
127
|
});
|
|
127
128
|
module.exports = __toCommonJS(index_exports);
|
|
128
129
|
|
|
129
|
-
// src/theme/KdsThemeProvider.tsx
|
|
130
|
-
var import_react = require("react");
|
|
131
|
-
|
|
132
130
|
// src/components/core/utils.ts
|
|
133
131
|
var import_clsx = require("clsx");
|
|
134
132
|
function hexToRgb(hex) {
|
|
@@ -200,107 +198,28 @@ function formatTime(iso) {
|
|
|
200
198
|
return `${pad(date.getHours())}:${pad(date.getMinutes())}`;
|
|
201
199
|
}
|
|
202
200
|
|
|
201
|
+
// src/version.ts
|
|
202
|
+
var KDS_VERSION = "0.3.5-alpha.9";
|
|
203
|
+
|
|
203
204
|
// src/theme/KdsThemeProvider.tsx
|
|
204
205
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
205
|
-
var CARD_MIN_DELTA_PX = 8;
|
|
206
|
-
var CARD_TRANSITION_MS = 280;
|
|
207
|
-
var BODY_CARD_SELECTOR = ".kds-screen > .kds-card-elevated";
|
|
208
|
-
var CARD_MARK_ATTRIBUTE = "data-kds-height-transition";
|
|
209
|
-
var SCREEN_LAST_HEIGHT_ATTRIBUTE = "data-kds-last-card-height";
|
|
210
|
-
function useCardHeightTransition() {
|
|
211
|
-
(0, import_react.useEffect)(() => {
|
|
212
|
-
if (typeof window === "undefined" || typeof ResizeObserver === "undefined") {
|
|
213
|
-
return;
|
|
214
|
-
}
|
|
215
|
-
if (typeof Element.prototype.animate !== "function") {
|
|
216
|
-
return;
|
|
217
|
-
}
|
|
218
|
-
if (window.matchMedia?.("(prefers-reduced-motion: reduce)").matches) {
|
|
219
|
-
return;
|
|
220
|
-
}
|
|
221
|
-
const observers = [];
|
|
222
|
-
const animate = (card, from, to) => {
|
|
223
|
-
card.style.height = `${from}px`;
|
|
224
|
-
const animation = card.animate(
|
|
225
|
-
[{ height: `${from}px` }, { height: `${to}px` }],
|
|
226
|
-
{ duration: CARD_TRANSITION_MS, easing: "ease-out" }
|
|
227
|
-
);
|
|
228
|
-
return animation.finished.catch(() => void 0).then(() => {
|
|
229
|
-
const current = parseFloat(card.style.height) || card.offsetHeight;
|
|
230
|
-
const natural = card.scrollHeight;
|
|
231
|
-
if (Math.abs(natural - current) >= CARD_MIN_DELTA_PX) {
|
|
232
|
-
return animate(card, current, natural);
|
|
233
|
-
}
|
|
234
|
-
card.style.height = "";
|
|
235
|
-
return void 0;
|
|
236
|
-
});
|
|
237
|
-
};
|
|
238
|
-
const observe = (card) => {
|
|
239
|
-
if (card.getAttribute(CARD_MARK_ATTRIBUTE) === "on") {
|
|
240
|
-
return;
|
|
241
|
-
}
|
|
242
|
-
card.setAttribute(CARD_MARK_ATTRIBUTE, "on");
|
|
243
|
-
const screen = card.parentElement;
|
|
244
|
-
let previous = card.offsetHeight;
|
|
245
|
-
let animating = false;
|
|
246
|
-
const remembered = screen?.getAttribute(SCREEN_LAST_HEIGHT_ATTRIBUTE);
|
|
247
|
-
if (remembered) {
|
|
248
|
-
const from = Number(remembered);
|
|
249
|
-
if (Number.isFinite(from) && from > 0 && Math.abs(from - previous) >= CARD_MIN_DELTA_PX) {
|
|
250
|
-
animating = true;
|
|
251
|
-
animate(card, from, previous).then(() => {
|
|
252
|
-
animating = false;
|
|
253
|
-
previous = card.offsetHeight;
|
|
254
|
-
});
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
screen?.setAttribute(SCREEN_LAST_HEIGHT_ATTRIBUTE, String(previous));
|
|
258
|
-
const observer = new ResizeObserver(() => {
|
|
259
|
-
if (animating) {
|
|
260
|
-
return;
|
|
261
|
-
}
|
|
262
|
-
const next = card.offsetHeight;
|
|
263
|
-
if (Math.abs(next - previous) < CARD_MIN_DELTA_PX) {
|
|
264
|
-
previous = next;
|
|
265
|
-
screen?.setAttribute(SCREEN_LAST_HEIGHT_ATTRIBUTE, String(next));
|
|
266
|
-
return;
|
|
267
|
-
}
|
|
268
|
-
animating = true;
|
|
269
|
-
const from = previous;
|
|
270
|
-
previous = next;
|
|
271
|
-
screen?.setAttribute(SCREEN_LAST_HEIGHT_ATTRIBUTE, String(next));
|
|
272
|
-
animate(card, from, next).then(() => {
|
|
273
|
-
animating = false;
|
|
274
|
-
previous = card.offsetHeight;
|
|
275
|
-
screen?.setAttribute(SCREEN_LAST_HEIGHT_ATTRIBUTE, String(previous));
|
|
276
|
-
});
|
|
277
|
-
});
|
|
278
|
-
observer.observe(card);
|
|
279
|
-
observers.push(observer);
|
|
280
|
-
};
|
|
281
|
-
document.querySelectorAll(BODY_CARD_SELECTOR).forEach(observe);
|
|
282
|
-
const tree = new MutationObserver(() => {
|
|
283
|
-
document.querySelectorAll(BODY_CARD_SELECTOR).forEach(observe);
|
|
284
|
-
});
|
|
285
|
-
tree.observe(document.body, { childList: true, subtree: true });
|
|
286
|
-
return () => {
|
|
287
|
-
tree.disconnect();
|
|
288
|
-
observers.forEach((observer) => observer.disconnect());
|
|
289
|
-
document.querySelectorAll(BODY_CARD_SELECTOR).forEach((card) => {
|
|
290
|
-
card.removeAttribute(CARD_MARK_ATTRIBUTE);
|
|
291
|
-
});
|
|
292
|
-
};
|
|
293
|
-
}, []);
|
|
294
|
-
}
|
|
295
206
|
function KdsThemeProvider({ primaryColor, mode = "light", children }) {
|
|
296
|
-
useCardHeightTransition();
|
|
297
207
|
const style = primaryColor ? {
|
|
298
208
|
"--primary": primaryColor,
|
|
299
209
|
"--on-primary": getContrastColor(primaryColor),
|
|
300
210
|
"--primary-container": lighten(primaryColor, 0.85),
|
|
301
211
|
"--on-primary-container": primaryColor
|
|
302
212
|
} : void 0;
|
|
303
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
213
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
214
|
+
"div",
|
|
215
|
+
{
|
|
216
|
+
className: `kds-theme-root ${mode}`,
|
|
217
|
+
"data-theme": mode,
|
|
218
|
+
"data-kds-version": KDS_VERSION,
|
|
219
|
+
style,
|
|
220
|
+
children
|
|
221
|
+
}
|
|
222
|
+
);
|
|
304
223
|
}
|
|
305
224
|
|
|
306
225
|
// src/tokens/index.ts
|
|
@@ -1275,9 +1194,9 @@ var tokens = {
|
|
|
1275
1194
|
};
|
|
1276
1195
|
|
|
1277
1196
|
// src/components/core/KdsButton/KdsButton.tsx
|
|
1278
|
-
var
|
|
1197
|
+
var import_react = require("react");
|
|
1279
1198
|
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
1280
|
-
var KdsButton = (0,
|
|
1199
|
+
var KdsButton = (0, import_react.forwardRef)(
|
|
1281
1200
|
({
|
|
1282
1201
|
variant = "primary",
|
|
1283
1202
|
size,
|
|
@@ -1321,9 +1240,9 @@ var KdsButton = (0, import_react2.forwardRef)(
|
|
|
1321
1240
|
KdsButton.displayName = "KdsButton";
|
|
1322
1241
|
|
|
1323
1242
|
// src/components/core/KdsTextField/KdsTextField.tsx
|
|
1324
|
-
var
|
|
1243
|
+
var import_react2 = require("react");
|
|
1325
1244
|
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
1326
|
-
var KdsTextField = (0,
|
|
1245
|
+
var KdsTextField = (0, import_react2.forwardRef)(
|
|
1327
1246
|
({
|
|
1328
1247
|
label,
|
|
1329
1248
|
helperText,
|
|
@@ -1342,7 +1261,7 @@ var KdsTextField = (0, import_react3.forwardRef)(
|
|
|
1342
1261
|
requiredMark = true,
|
|
1343
1262
|
...props
|
|
1344
1263
|
}, ref) => {
|
|
1345
|
-
const [revealed, setRevealed] = (0,
|
|
1264
|
+
const [revealed, setRevealed] = (0, import_react2.useState)(false);
|
|
1346
1265
|
const fieldId = id || `kds-field-${label.toLowerCase().replace(/\s+/g, "-")}`;
|
|
1347
1266
|
const isRevealable = !!revealable && !readOnly && !props.disabled;
|
|
1348
1267
|
const inputType = isRevealable ? revealed ? "text" : "password" : type;
|
|
@@ -1411,9 +1330,9 @@ var KdsTextField = (0, import_react3.forwardRef)(
|
|
|
1411
1330
|
KdsTextField.displayName = "KdsTextField";
|
|
1412
1331
|
|
|
1413
1332
|
// src/components/core/KdsSearchField/KdsSearchField.tsx
|
|
1414
|
-
var
|
|
1333
|
+
var import_react3 = require("react");
|
|
1415
1334
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
1416
|
-
var KdsSearchField = (0,
|
|
1335
|
+
var KdsSearchField = (0, import_react3.forwardRef)(
|
|
1417
1336
|
({ className, withIcon = false, ...props }, ref) => {
|
|
1418
1337
|
const input = /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
1419
1338
|
"input",
|
|
@@ -1436,9 +1355,9 @@ var KdsSearchField = (0, import_react4.forwardRef)(
|
|
|
1436
1355
|
KdsSearchField.displayName = "KdsSearchField";
|
|
1437
1356
|
|
|
1438
1357
|
// src/components/core/KdsCheckbox/KdsCheckbox.tsx
|
|
1439
|
-
var
|
|
1358
|
+
var import_react4 = require("react");
|
|
1440
1359
|
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
1441
|
-
var KdsCheckbox = (0,
|
|
1360
|
+
var KdsCheckbox = (0, import_react4.forwardRef)(
|
|
1442
1361
|
({ label, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("label", { className: (0, import_clsx.clsx)("checkbox", className), children: [
|
|
1443
1362
|
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)("input", { ref, type: "checkbox", ...props }),
|
|
1444
1363
|
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { children: label })
|
|
@@ -1447,9 +1366,9 @@ var KdsCheckbox = (0, import_react5.forwardRef)(
|
|
|
1447
1366
|
KdsCheckbox.displayName = "KdsCheckbox";
|
|
1448
1367
|
|
|
1449
1368
|
// src/components/core/KdsCard/KdsCard.tsx
|
|
1450
|
-
var
|
|
1369
|
+
var import_react5 = require("react");
|
|
1451
1370
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
1452
|
-
var KdsCard = (0,
|
|
1371
|
+
var KdsCard = (0, import_react5.forwardRef)(
|
|
1453
1372
|
({ variant = "elevated", dimmed, children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
1454
1373
|
"article",
|
|
1455
1374
|
{
|
|
@@ -1465,28 +1384,28 @@ var KdsCard = (0, import_react6.forwardRef)(
|
|
|
1465
1384
|
)
|
|
1466
1385
|
);
|
|
1467
1386
|
KdsCard.displayName = "KdsCard";
|
|
1468
|
-
var KdsCardHeader = (0,
|
|
1387
|
+
var KdsCardHeader = (0, import_react5.forwardRef)(
|
|
1469
1388
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { ref, className: (0, import_clsx.clsx)("kds-card-header", className), ...props, children })
|
|
1470
1389
|
);
|
|
1471
1390
|
KdsCardHeader.displayName = "KdsCardHeader";
|
|
1472
|
-
var KdsCardBody = (0,
|
|
1391
|
+
var KdsCardBody = (0, import_react5.forwardRef)(
|
|
1473
1392
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { ref, className: (0, import_clsx.clsx)("kds-card-body", className), ...props, children })
|
|
1474
1393
|
);
|
|
1475
1394
|
KdsCardBody.displayName = "KdsCardBody";
|
|
1476
|
-
var KdsCardFooter = (0,
|
|
1395
|
+
var KdsCardFooter = (0, import_react5.forwardRef)(
|
|
1477
1396
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { ref, className: (0, import_clsx.clsx)("kds-card-footer", className), ...props, children })
|
|
1478
1397
|
);
|
|
1479
1398
|
KdsCardFooter.displayName = "KdsCardFooter";
|
|
1480
1399
|
|
|
1481
1400
|
// src/components/core/KdsSpinner/KdsSpinner.tsx
|
|
1482
|
-
var
|
|
1401
|
+
var import_react6 = require("react");
|
|
1483
1402
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
1484
1403
|
var SIZE_CLASS = {
|
|
1485
1404
|
small: "small",
|
|
1486
1405
|
medium: null,
|
|
1487
1406
|
large: "large"
|
|
1488
1407
|
};
|
|
1489
|
-
var KdsSpinner = (0,
|
|
1408
|
+
var KdsSpinner = (0, import_react6.forwardRef)(
|
|
1490
1409
|
({ size = "medium", label, className, ...props }, ref) => {
|
|
1491
1410
|
const sizeClass = SIZE_CLASS[size];
|
|
1492
1411
|
return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
|
|
@@ -1508,9 +1427,9 @@ var KdsSpinner = (0, import_react7.forwardRef)(
|
|
|
1508
1427
|
KdsSpinner.displayName = "KdsSpinner";
|
|
1509
1428
|
|
|
1510
1429
|
// src/components/core/KdsSecureLoader/KdsSecureLoader.tsx
|
|
1511
|
-
var
|
|
1430
|
+
var import_react7 = require("react");
|
|
1512
1431
|
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
1513
|
-
var KdsSecureLoader = (0,
|
|
1432
|
+
var KdsSecureLoader = (0, import_react7.forwardRef)(
|
|
1514
1433
|
({ title, message, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { ref, className: (0, import_clsx.clsx)("kds-secure-loader", className), role: "status", "aria-busy": "true", ...props, children: [
|
|
1515
1434
|
(title || message) && /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "kds-secure-loader-text", children: [
|
|
1516
1435
|
title && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("p", { className: "kds-secure-loader-title", children: title }),
|
|
@@ -1536,13 +1455,13 @@ var KdsSecureLoader = (0, import_react8.forwardRef)(
|
|
|
1536
1455
|
KdsSecureLoader.displayName = "KdsSecureLoader";
|
|
1537
1456
|
|
|
1538
1457
|
// src/components/core/KdsCopyButton/KdsCopyButton.tsx
|
|
1539
|
-
var
|
|
1458
|
+
var import_react9 = require("react");
|
|
1540
1459
|
|
|
1541
1460
|
// src/components/core/hooks/useCopyToClipboard.ts
|
|
1542
|
-
var
|
|
1461
|
+
var import_react8 = require("react");
|
|
1543
1462
|
function useCopyToClipboard(resetMs = 1200) {
|
|
1544
|
-
const [copied, setCopied] = (0,
|
|
1545
|
-
const copy = (0,
|
|
1463
|
+
const [copied, setCopied] = (0, import_react8.useState)(false);
|
|
1464
|
+
const copy = (0, import_react8.useCallback)(
|
|
1546
1465
|
async (text) => {
|
|
1547
1466
|
try {
|
|
1548
1467
|
await navigator.clipboard.writeText(text);
|
|
@@ -1558,7 +1477,7 @@ function useCopyToClipboard(resetMs = 1200) {
|
|
|
1558
1477
|
|
|
1559
1478
|
// src/components/core/KdsCopyButton/KdsCopyButton.tsx
|
|
1560
1479
|
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
1561
|
-
var KdsCopyButton = (0,
|
|
1480
|
+
var KdsCopyButton = (0, import_react9.forwardRef)(
|
|
1562
1481
|
({ value, copiedText = "Copiado", className, ...props }, ref) => {
|
|
1563
1482
|
const { copied, copy } = useCopyToClipboard();
|
|
1564
1483
|
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
@@ -1584,15 +1503,15 @@ var KdsCopyButton = (0, import_react10.forwardRef)(
|
|
|
1584
1503
|
KdsCopyButton.displayName = "KdsCopyButton";
|
|
1585
1504
|
|
|
1586
1505
|
// src/components/core/KdsLinearProgress/KdsLinearProgress.tsx
|
|
1587
|
-
var
|
|
1506
|
+
var import_react10 = require("react");
|
|
1588
1507
|
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
1589
|
-
var KdsLinearProgress = (0,
|
|
1508
|
+
var KdsLinearProgress = (0, import_react10.forwardRef)(
|
|
1590
1509
|
({ value, max = 100, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("progress", { ref, className: (0, import_clsx.clsx)("kds-progress", className), value, max, ...props })
|
|
1591
1510
|
);
|
|
1592
1511
|
KdsLinearProgress.displayName = "KdsLinearProgress";
|
|
1593
1512
|
|
|
1594
1513
|
// src/components/core/KdsAlert/KdsAlert.tsx
|
|
1595
|
-
var
|
|
1514
|
+
var import_react11 = require("react");
|
|
1596
1515
|
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
1597
1516
|
var DEFAULT_ICONS = {
|
|
1598
1517
|
success: "check_circle",
|
|
@@ -1600,7 +1519,7 @@ var DEFAULT_ICONS = {
|
|
|
1600
1519
|
warning: "warning",
|
|
1601
1520
|
error: "error"
|
|
1602
1521
|
};
|
|
1603
|
-
var KdsAlert = (0,
|
|
1522
|
+
var KdsAlert = (0, import_react11.forwardRef)(
|
|
1604
1523
|
({ severity, title, icon, inline, onClose, children, className, ...props }, ref) => {
|
|
1605
1524
|
const resolvedIcon = icon === false ? null : typeof icon === "string" ? icon : DEFAULT_ICONS[severity];
|
|
1606
1525
|
return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
|
|
@@ -1634,7 +1553,7 @@ var KdsAlert = (0, import_react12.forwardRef)(
|
|
|
1634
1553
|
KdsAlert.displayName = "KdsAlert";
|
|
1635
1554
|
|
|
1636
1555
|
// src/components/core/KdsTypography/KdsTypography.tsx
|
|
1637
|
-
var
|
|
1556
|
+
var import_react12 = require("react");
|
|
1638
1557
|
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
1639
1558
|
var variantTag = {
|
|
1640
1559
|
display1: "h1",
|
|
@@ -1655,7 +1574,7 @@ var variantTag = {
|
|
|
1655
1574
|
link: "span",
|
|
1656
1575
|
strong: "span"
|
|
1657
1576
|
};
|
|
1658
|
-
var KdsTypography = (0,
|
|
1577
|
+
var KdsTypography = (0, import_react12.forwardRef)(
|
|
1659
1578
|
({ variant = "body", color, as, children, className, ...props }, ref) => {
|
|
1660
1579
|
const Tag = as || variantTag[variant];
|
|
1661
1580
|
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
@@ -1676,12 +1595,12 @@ var KdsTypography = (0, import_react13.forwardRef)(
|
|
|
1676
1595
|
KdsTypography.displayName = "KdsTypography";
|
|
1677
1596
|
|
|
1678
1597
|
// src/components/core/KdsTabs/KdsTabs.tsx
|
|
1679
|
-
var
|
|
1598
|
+
var import_react14 = __toESM(require("react"));
|
|
1680
1599
|
|
|
1681
1600
|
// src/components/core/hooks/useTabsKeyboard.ts
|
|
1682
|
-
var
|
|
1601
|
+
var import_react13 = require("react");
|
|
1683
1602
|
function useTabsKeyboard(tabCount, activeIndex, onChange) {
|
|
1684
|
-
const onKeyDown = (0,
|
|
1603
|
+
const onKeyDown = (0, import_react13.useCallback)(
|
|
1685
1604
|
(e) => {
|
|
1686
1605
|
let next = activeIndex;
|
|
1687
1606
|
if (e.key === "ArrowRight") next = (activeIndex + 1) % tabCount;
|
|
@@ -1702,11 +1621,11 @@ function useTabsKeyboard(tabCount, activeIndex, onChange) {
|
|
|
1702
1621
|
|
|
1703
1622
|
// src/components/core/KdsTabs/KdsTabs.tsx
|
|
1704
1623
|
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
1705
|
-
var KdsTabs = (0,
|
|
1624
|
+
var KdsTabs = (0, import_react14.forwardRef)(
|
|
1706
1625
|
({ activeIndex, onChange, children, className, style, ...props }, ref) => {
|
|
1707
|
-
const tabCount =
|
|
1626
|
+
const tabCount = import_react14.Children.count(children);
|
|
1708
1627
|
const { onKeyDown } = useTabsKeyboard(tabCount, activeIndex, onChange);
|
|
1709
|
-
const mergedStyle = (0,
|
|
1628
|
+
const mergedStyle = (0, import_react14.useMemo)(
|
|
1710
1629
|
() => ({
|
|
1711
1630
|
...style,
|
|
1712
1631
|
"--_tab-count": tabCount,
|
|
@@ -1723,9 +1642,9 @@ var KdsTabs = (0, import_react15.forwardRef)(
|
|
|
1723
1642
|
style: mergedStyle,
|
|
1724
1643
|
onKeyDown,
|
|
1725
1644
|
...props,
|
|
1726
|
-
children:
|
|
1727
|
-
if (!
|
|
1728
|
-
return
|
|
1645
|
+
children: import_react14.Children.map(children, (child, i) => {
|
|
1646
|
+
if (!import_react14.default.isValidElement(child)) return child;
|
|
1647
|
+
return import_react14.default.cloneElement(child, {
|
|
1729
1648
|
_active: i === activeIndex,
|
|
1730
1649
|
_onClick: () => onChange(i)
|
|
1731
1650
|
});
|
|
@@ -1735,7 +1654,7 @@ var KdsTabs = (0, import_react15.forwardRef)(
|
|
|
1735
1654
|
}
|
|
1736
1655
|
);
|
|
1737
1656
|
KdsTabs.displayName = "KdsTabs";
|
|
1738
|
-
var KdsTab = (0,
|
|
1657
|
+
var KdsTab = (0, import_react14.forwardRef)(
|
|
1739
1658
|
({ _active, _onClick, children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
1740
1659
|
"button",
|
|
1741
1660
|
{
|
|
@@ -1752,7 +1671,7 @@ var KdsTab = (0, import_react15.forwardRef)(
|
|
|
1752
1671
|
)
|
|
1753
1672
|
);
|
|
1754
1673
|
KdsTab.displayName = "KdsTab";
|
|
1755
|
-
var KdsTabPanel = (0,
|
|
1674
|
+
var KdsTabPanel = (0, import_react14.forwardRef)(
|
|
1756
1675
|
({ active, children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
1757
1676
|
"div",
|
|
1758
1677
|
{
|
|
@@ -1768,9 +1687,9 @@ var KdsTabPanel = (0, import_react15.forwardRef)(
|
|
|
1768
1687
|
KdsTabPanel.displayName = "KdsTabPanel";
|
|
1769
1688
|
|
|
1770
1689
|
// src/components/core/KdsRadioGroup/KdsRadioGroup.tsx
|
|
1771
|
-
var
|
|
1690
|
+
var import_react15 = require("react");
|
|
1772
1691
|
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
1773
|
-
var KdsRadioGroup = (0,
|
|
1692
|
+
var KdsRadioGroup = (0, import_react15.forwardRef)(
|
|
1774
1693
|
({ label, name, options, value, onChange, size, variant, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
1775
1694
|
"fieldset",
|
|
1776
1695
|
{
|
|
@@ -1800,9 +1719,9 @@ var KdsRadioGroup = (0, import_react16.forwardRef)(
|
|
|
1800
1719
|
KdsRadioGroup.displayName = "KdsRadioGroup";
|
|
1801
1720
|
|
|
1802
1721
|
// src/components/core/KdsSelect/KdsSelect.tsx
|
|
1803
|
-
var
|
|
1722
|
+
var import_react16 = require("react");
|
|
1804
1723
|
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
1805
|
-
var KdsSelect = (0,
|
|
1724
|
+
var KdsSelect = (0, import_react16.forwardRef)(
|
|
1806
1725
|
({
|
|
1807
1726
|
label,
|
|
1808
1727
|
options,
|
|
@@ -1859,9 +1778,9 @@ var KdsSelect = (0, import_react17.forwardRef)(
|
|
|
1859
1778
|
KdsSelect.displayName = "KdsSelect";
|
|
1860
1779
|
|
|
1861
1780
|
// src/components/core/KdsChip/KdsChip.tsx
|
|
1862
|
-
var
|
|
1781
|
+
var import_react17 = require("react");
|
|
1863
1782
|
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
1864
|
-
var KdsChip = (0,
|
|
1783
|
+
var KdsChip = (0, import_react17.forwardRef)(
|
|
1865
1784
|
({ color, icon, onDelete, children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { ref, className: (0, import_clsx.clsx)("kds-badge", color, className), ...props, children: [
|
|
1866
1785
|
icon && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("i", { className: "material-symbols-outlined", children: icon }),
|
|
1867
1786
|
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { children }),
|
|
@@ -1883,15 +1802,15 @@ var KdsChip = (0, import_react18.forwardRef)(
|
|
|
1883
1802
|
KdsChip.displayName = "KdsChip";
|
|
1884
1803
|
|
|
1885
1804
|
// src/components/core/KdsSnackbar/KdsSnackbar.tsx
|
|
1886
|
-
var
|
|
1805
|
+
var import_react19 = require("react");
|
|
1887
1806
|
|
|
1888
1807
|
// src/components/core/hooks/useAutoHide.ts
|
|
1889
|
-
var
|
|
1808
|
+
var import_react18 = require("react");
|
|
1890
1809
|
function useAutoHide(durationMs, onHide) {
|
|
1891
|
-
const [visible, setVisible] = (0,
|
|
1892
|
-
const onHideRef = (0,
|
|
1810
|
+
const [visible, setVisible] = (0, import_react18.useState)(true);
|
|
1811
|
+
const onHideRef = (0, import_react18.useRef)(onHide);
|
|
1893
1812
|
onHideRef.current = onHide;
|
|
1894
|
-
(0,
|
|
1813
|
+
(0, import_react18.useEffect)(() => {
|
|
1895
1814
|
if (durationMs <= 0) return;
|
|
1896
1815
|
const timer = setTimeout(() => {
|
|
1897
1816
|
setVisible(false);
|
|
@@ -1909,7 +1828,7 @@ var DEFAULT_ICONS2 = {
|
|
|
1909
1828
|
success: "check_circle",
|
|
1910
1829
|
error: "error"
|
|
1911
1830
|
};
|
|
1912
|
-
var KdsSnackbar = (0,
|
|
1831
|
+
var KdsSnackbar = (0, import_react19.forwardRef)(
|
|
1913
1832
|
({
|
|
1914
1833
|
message,
|
|
1915
1834
|
type = "info",
|
|
@@ -1987,36 +1906,36 @@ function KdsTooltip({
|
|
|
1987
1906
|
}
|
|
1988
1907
|
|
|
1989
1908
|
// src/components/core/KdsAccordion/KdsAccordion.tsx
|
|
1990
|
-
var
|
|
1909
|
+
var import_react20 = require("react");
|
|
1991
1910
|
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
1992
|
-
var KdsAccordion = (0,
|
|
1911
|
+
var KdsAccordion = (0, import_react20.forwardRef)(
|
|
1993
1912
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("details", { ref, className: (0, import_clsx.clsx)("kds-accordion", className), ...props, children })
|
|
1994
1913
|
);
|
|
1995
1914
|
KdsAccordion.displayName = "KdsAccordion";
|
|
1996
|
-
var KdsAccordionSummary = (0,
|
|
1915
|
+
var KdsAccordionSummary = (0, import_react20.forwardRef)(
|
|
1997
1916
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("summary", { ref, className: (0, import_clsx.clsx)("kds-accordion-summary", className), ...props, children: [
|
|
1998
1917
|
children,
|
|
1999
1918
|
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)("i", { className: "material-symbols-outlined", children: "expand_more" })
|
|
2000
1919
|
] })
|
|
2001
1920
|
);
|
|
2002
1921
|
KdsAccordionSummary.displayName = "KdsAccordionSummary";
|
|
2003
|
-
var KdsAccordionDetails = (0,
|
|
1922
|
+
var KdsAccordionDetails = (0, import_react20.forwardRef)(
|
|
2004
1923
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { ref, className: (0, import_clsx.clsx)("kds-accordion-details", className), ...props, children })
|
|
2005
1924
|
);
|
|
2006
1925
|
KdsAccordionDetails.displayName = "KdsAccordionDetails";
|
|
2007
1926
|
|
|
2008
1927
|
// src/components/core/KdsDivider/KdsDivider.tsx
|
|
2009
|
-
var
|
|
1928
|
+
var import_react21 = require("react");
|
|
2010
1929
|
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
2011
|
-
var KdsDivider = (0,
|
|
1930
|
+
var KdsDivider = (0, import_react21.forwardRef)(
|
|
2012
1931
|
({ dashed, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("hr", { ref, className: (0, import_clsx.clsx)(dashed ? "kds-hr-dashed" : "kds-hr", className), ...props })
|
|
2013
1932
|
);
|
|
2014
1933
|
KdsDivider.displayName = "KdsDivider";
|
|
2015
1934
|
|
|
2016
1935
|
// src/components/core/KdsSectionNote/KdsSectionNote.tsx
|
|
2017
|
-
var
|
|
1936
|
+
var import_react22 = require("react");
|
|
2018
1937
|
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
2019
|
-
var KdsSectionNote = (0,
|
|
1938
|
+
var KdsSectionNote = (0, import_react22.forwardRef)(
|
|
2020
1939
|
({ icon = "info", children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("p", { ref, className: (0, import_clsx.clsx)("kds-section-note", className), ...props, children: [
|
|
2021
1940
|
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("i", { className: "material-symbols-outlined", children: icon }),
|
|
2022
1941
|
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { children })
|
|
@@ -2025,9 +1944,9 @@ var KdsSectionNote = (0, import_react23.forwardRef)(
|
|
|
2025
1944
|
KdsSectionNote.displayName = "KdsSectionNote";
|
|
2026
1945
|
|
|
2027
1946
|
// src/components/core/KdsStatusBlock/KdsStatusBlock.tsx
|
|
2028
|
-
var
|
|
1947
|
+
var import_react23 = require("react");
|
|
2029
1948
|
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
2030
|
-
var KdsStatusBlock = (0,
|
|
1949
|
+
var KdsStatusBlock = (0, import_react23.forwardRef)(
|
|
2031
1950
|
({ status, icon, title, description, inline, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { ref, className: (0, import_clsx.clsx)("kds-status-block", inline && "inline", className), "data-status": status, ...props, children: [
|
|
2032
1951
|
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "kds-status-block-icon", children: icon && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("i", { className: "material-symbols-outlined", children: icon }) }),
|
|
2033
1952
|
/* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { children: [
|
|
@@ -2039,9 +1958,9 @@ var KdsStatusBlock = (0, import_react24.forwardRef)(
|
|
|
2039
1958
|
KdsStatusBlock.displayName = "KdsStatusBlock";
|
|
2040
1959
|
|
|
2041
1960
|
// src/components/core/KdsStepper/KdsStepper.tsx
|
|
2042
|
-
var
|
|
1961
|
+
var import_react24 = require("react");
|
|
2043
1962
|
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
2044
|
-
var KdsStepper = (0,
|
|
1963
|
+
var KdsStepper = (0, import_react24.forwardRef)(
|
|
2045
1964
|
({ steps, current, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { ref, className: (0, import_clsx.clsx)("kds-stepper", className), ...props, children: steps.map((label, i) => /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
|
|
2046
1965
|
"div",
|
|
2047
1966
|
{
|
|
@@ -2057,9 +1976,9 @@ var KdsStepper = (0, import_react25.forwardRef)(
|
|
|
2057
1976
|
KdsStepper.displayName = "KdsStepper";
|
|
2058
1977
|
|
|
2059
1978
|
// src/components/core/KdsCopyRow/KdsCopyRow.tsx
|
|
2060
|
-
var
|
|
1979
|
+
var import_react25 = require("react");
|
|
2061
1980
|
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
2062
|
-
var KdsCopyRow = (0,
|
|
1981
|
+
var KdsCopyRow = (0, import_react25.forwardRef)(
|
|
2063
1982
|
({ label, value, copiedText = "Copiado", className, ...props }, ref) => {
|
|
2064
1983
|
const { copied, copy } = useCopyToClipboard();
|
|
2065
1984
|
return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
|
|
@@ -2091,7 +2010,7 @@ var KdsCopyRow = (0, import_react26.forwardRef)(
|
|
|
2091
2010
|
KdsCopyRow.displayName = "KdsCopyRow";
|
|
2092
2011
|
|
|
2093
2012
|
// src/components/core/KdsCopyableTable/KdsCopyableTable.tsx
|
|
2094
|
-
var
|
|
2013
|
+
var import_react26 = require("react");
|
|
2095
2014
|
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
2096
2015
|
async function copyToClipboard(text) {
|
|
2097
2016
|
try {
|
|
@@ -2158,12 +2077,12 @@ function CopyableVariant({
|
|
|
2158
2077
|
forwardedRef,
|
|
2159
2078
|
rest
|
|
2160
2079
|
}) {
|
|
2161
|
-
const copiedTimers = (0,
|
|
2162
|
-
const settlingTimers = (0,
|
|
2163
|
-
const [copiedRows, setCopiedRows] = (0,
|
|
2164
|
-
const [settlingRows, setSettlingRows] = (0,
|
|
2165
|
-
const [allCopied, setAllCopied] = (0,
|
|
2166
|
-
const markCopied = (0,
|
|
2080
|
+
const copiedTimers = (0, import_react26.useRef)(/* @__PURE__ */ new Map());
|
|
2081
|
+
const settlingTimers = (0, import_react26.useRef)(/* @__PURE__ */ new Map());
|
|
2082
|
+
const [copiedRows, setCopiedRows] = (0, import_react26.useState)(/* @__PURE__ */ new Set());
|
|
2083
|
+
const [settlingRows, setSettlingRows] = (0, import_react26.useState)(/* @__PURE__ */ new Set());
|
|
2084
|
+
const [allCopied, setAllCopied] = (0, import_react26.useState)(false);
|
|
2085
|
+
const markCopied = (0, import_react26.useCallback)((indexes, duration = 1500) => {
|
|
2167
2086
|
setCopiedRows((prev) => {
|
|
2168
2087
|
const next = new Set(prev);
|
|
2169
2088
|
indexes.forEach((i) => next.add(i));
|
|
@@ -2269,7 +2188,7 @@ function CopyableVariant({
|
|
|
2269
2188
|
)
|
|
2270
2189
|
] });
|
|
2271
2190
|
}
|
|
2272
|
-
var KdsCopyableTable = (0,
|
|
2191
|
+
var KdsCopyableTable = (0, import_react26.forwardRef)(
|
|
2273
2192
|
({
|
|
2274
2193
|
rows = [],
|
|
2275
2194
|
variant = "copyable",
|
|
@@ -2310,11 +2229,11 @@ var KdsCopyableTable = (0, import_react27.forwardRef)(
|
|
|
2310
2229
|
KdsCopyableTable.displayName = "KdsCopyableTable";
|
|
2311
2230
|
|
|
2312
2231
|
// src/components/core/KdsExpandPanel/KdsExpandPanel.tsx
|
|
2313
|
-
var
|
|
2232
|
+
var import_react27 = require("react");
|
|
2314
2233
|
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
2315
|
-
var KdsExpandPanel = (0,
|
|
2234
|
+
var KdsExpandPanel = (0, import_react27.forwardRef)(
|
|
2316
2235
|
({ label, defaultExpanded = false, children, className, ...props }, ref) => {
|
|
2317
|
-
const [expanded, setExpanded] = (0,
|
|
2236
|
+
const [expanded, setExpanded] = (0, import_react27.useState)(defaultExpanded);
|
|
2318
2237
|
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { ref, className, ...props, children: [
|
|
2319
2238
|
/* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
2320
2239
|
"button",
|
|
@@ -2335,10 +2254,10 @@ var KdsExpandPanel = (0, import_react28.forwardRef)(
|
|
|
2335
2254
|
KdsExpandPanel.displayName = "KdsExpandPanel";
|
|
2336
2255
|
|
|
2337
2256
|
// src/components/core/KdsCountdown/KdsCountdown.tsx
|
|
2338
|
-
var
|
|
2257
|
+
var import_react29 = require("react");
|
|
2339
2258
|
|
|
2340
2259
|
// src/components/core/hooks/useCountdown.ts
|
|
2341
|
-
var
|
|
2260
|
+
var import_react28 = require("react");
|
|
2342
2261
|
function calcRemaining(deadline) {
|
|
2343
2262
|
const diff = Math.max(0, new Date(deadline).getTime() - Date.now());
|
|
2344
2263
|
const totalSeconds = Math.floor(diff / 1e3);
|
|
@@ -2351,8 +2270,8 @@ function calcRemaining(deadline) {
|
|
|
2351
2270
|
};
|
|
2352
2271
|
}
|
|
2353
2272
|
function useCountdown(deadline) {
|
|
2354
|
-
const [state, setState] = (0,
|
|
2355
|
-
(0,
|
|
2273
|
+
const [state, setState] = (0, import_react28.useState)(() => calcRemaining(deadline));
|
|
2274
|
+
(0, import_react28.useEffect)(() => {
|
|
2356
2275
|
const tick = () => setState(calcRemaining(deadline));
|
|
2357
2276
|
const id = setInterval(tick, 1e3);
|
|
2358
2277
|
return () => clearInterval(id);
|
|
@@ -2362,12 +2281,12 @@ function useCountdown(deadline) {
|
|
|
2362
2281
|
|
|
2363
2282
|
// src/components/core/KdsCountdown/KdsCountdown.tsx
|
|
2364
2283
|
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
2365
|
-
var KdsCountdown = (0,
|
|
2284
|
+
var KdsCountdown = (0, import_react29.forwardRef)(
|
|
2366
2285
|
({ deadline, label, onExpire, className, ...props }, ref) => {
|
|
2367
2286
|
const { hours, minutes, seconds, expired, urgent } = useCountdown(deadline);
|
|
2368
|
-
const onExpireRef = (0,
|
|
2287
|
+
const onExpireRef = (0, import_react29.useRef)(onExpire);
|
|
2369
2288
|
onExpireRef.current = onExpire;
|
|
2370
|
-
(0,
|
|
2289
|
+
(0, import_react29.useEffect)(() => {
|
|
2371
2290
|
if (expired) {
|
|
2372
2291
|
onExpireRef.current?.();
|
|
2373
2292
|
}
|
|
@@ -2391,17 +2310,17 @@ var KdsCountdown = (0, import_react30.forwardRef)(
|
|
|
2391
2310
|
KdsCountdown.displayName = "KdsCountdown";
|
|
2392
2311
|
|
|
2393
2312
|
// src/components/core/KdsSegmentedTabs/KdsSegmentedTabs.tsx
|
|
2394
|
-
var
|
|
2313
|
+
var import_react30 = require("react");
|
|
2395
2314
|
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
2396
|
-
var KdsSegmentedTabs = (0,
|
|
2315
|
+
var KdsSegmentedTabs = (0, import_react30.forwardRef)(
|
|
2397
2316
|
(props, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(KdsTabs, { ref, ...props })
|
|
2398
2317
|
);
|
|
2399
2318
|
KdsSegmentedTabs.displayName = "KdsSegmentedTabs";
|
|
2400
2319
|
|
|
2401
2320
|
// src/components/core/KdsFab/KdsFab.tsx
|
|
2402
|
-
var
|
|
2321
|
+
var import_react31 = require("react");
|
|
2403
2322
|
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
2404
|
-
var KdsFab = (0,
|
|
2323
|
+
var KdsFab = (0, import_react31.forwardRef)(
|
|
2405
2324
|
({ icon, position = "top-right", hidden = false, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
2406
2325
|
"button",
|
|
2407
2326
|
{
|
|
@@ -2423,9 +2342,9 @@ var KdsFab = (0, import_react32.forwardRef)(
|
|
|
2423
2342
|
KdsFab.displayName = "KdsFab";
|
|
2424
2343
|
|
|
2425
2344
|
// src/components/core/KdsEmptyState/KdsEmptyState.tsx
|
|
2426
|
-
var
|
|
2345
|
+
var import_react32 = require("react");
|
|
2427
2346
|
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
2428
|
-
var KdsEmptyState = (0,
|
|
2347
|
+
var KdsEmptyState = (0, import_react32.forwardRef)(
|
|
2429
2348
|
({ icon = "hide_source", title, description, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
|
|
2430
2349
|
"div",
|
|
2431
2350
|
{
|
|
@@ -2446,9 +2365,9 @@ var KdsEmptyState = (0, import_react33.forwardRef)(
|
|
|
2446
2365
|
KdsEmptyState.displayName = "KdsEmptyState";
|
|
2447
2366
|
|
|
2448
2367
|
// src/components/domain/KdsBankRow/KdsBankRow.tsx
|
|
2449
|
-
var
|
|
2368
|
+
var import_react33 = require("react");
|
|
2450
2369
|
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
2451
|
-
var KdsBankRow = (0,
|
|
2370
|
+
var KdsBankRow = (0, import_react33.forwardRef)(
|
|
2452
2371
|
({ name, logoUrl, selected, hideLogo, className, ...props }, ref) => {
|
|
2453
2372
|
const nameStr = typeof name === "string" ? name : "";
|
|
2454
2373
|
return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
|
@@ -2470,20 +2389,20 @@ var KdsBankRow = (0, import_react34.forwardRef)(
|
|
|
2470
2389
|
KdsBankRow.displayName = "KdsBankRow";
|
|
2471
2390
|
|
|
2472
2391
|
// src/components/domain/KdsBankList/KdsBankList.tsx
|
|
2473
|
-
var
|
|
2392
|
+
var import_react34 = require("react");
|
|
2474
2393
|
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
2475
|
-
var KdsBankList = (0,
|
|
2394
|
+
var KdsBankList = (0, import_react34.forwardRef)(
|
|
2476
2395
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { ref, className: (0, import_clsx.clsx)("kds-bank-list", className), role: "list", ...props, children })
|
|
2477
2396
|
);
|
|
2478
2397
|
KdsBankList.displayName = "KdsBankList";
|
|
2479
2398
|
|
|
2480
2399
|
// src/components/domain/KdsBankModal/KdsBankModal.tsx
|
|
2481
|
-
var
|
|
2400
|
+
var import_react35 = require("react");
|
|
2482
2401
|
var Dialog = __toESM(require("@radix-ui/react-dialog"));
|
|
2483
2402
|
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
2484
|
-
var KdsBankModal = (0,
|
|
2403
|
+
var KdsBankModal = (0, import_react35.forwardRef)(
|
|
2485
2404
|
({ open, onClose, title = "Selecciona tu banco", searchPlaceholder = "Buscar banco...", onSearch, children, className, container }, ref) => {
|
|
2486
|
-
const [query, setQuery] = (0,
|
|
2405
|
+
const [query, setQuery] = (0, import_react35.useState)("");
|
|
2487
2406
|
const handleSearch = (value) => {
|
|
2488
2407
|
setQuery(value);
|
|
2489
2408
|
onSearch?.(value);
|
|
@@ -2510,9 +2429,9 @@ var KdsBankModal = (0, import_react36.forwardRef)(
|
|
|
2510
2429
|
KdsBankModal.displayName = "KdsBankModal";
|
|
2511
2430
|
|
|
2512
2431
|
// src/components/domain/KdsQrRow/KdsQrRow.tsx
|
|
2513
|
-
var
|
|
2432
|
+
var import_react36 = require("react");
|
|
2514
2433
|
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
2515
|
-
var KdsQrRow = (0,
|
|
2434
|
+
var KdsQrRow = (0, import_react36.forwardRef)(
|
|
2516
2435
|
({ name, description, badge, icon = "qr_code_2", className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("button", { ref, type: "button", className: (0, import_clsx.clsx)("kds-qr-row", className), ...props, children: [
|
|
2517
2436
|
/* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { className: "kds-qr-avatar", "aria-hidden": "true", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("i", { className: "material-symbols-outlined", children: icon }) }),
|
|
2518
2437
|
/* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("span", { className: "kds-qr-text", children: [
|
|
@@ -2526,9 +2445,9 @@ var KdsQrRow = (0, import_react37.forwardRef)(
|
|
|
2526
2445
|
KdsQrRow.displayName = "KdsQrRow";
|
|
2527
2446
|
|
|
2528
2447
|
// src/components/domain/KdsCardSelector/KdsCardSelector.tsx
|
|
2529
|
-
var
|
|
2448
|
+
var import_react37 = require("react");
|
|
2530
2449
|
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
2531
|
-
var KdsCardSelector = (0,
|
|
2450
|
+
var KdsCardSelector = (0, import_react37.forwardRef)(
|
|
2532
2451
|
({ icon, title, description, selected, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
2533
2452
|
"button",
|
|
2534
2453
|
{
|
|
@@ -2547,9 +2466,9 @@ var KdsCardSelector = (0, import_react38.forwardRef)(
|
|
|
2547
2466
|
KdsCardSelector.displayName = "KdsCardSelector";
|
|
2548
2467
|
|
|
2549
2468
|
// src/components/domain/KdsCardPlan/KdsCardPlan.tsx
|
|
2550
|
-
var
|
|
2469
|
+
var import_react38 = require("react");
|
|
2551
2470
|
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
2552
|
-
var KdsCardPlan = (0,
|
|
2471
|
+
var KdsCardPlan = (0, import_react38.forwardRef)(
|
|
2553
2472
|
({ title, price, period, features, recommended, badgeText, action, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
|
|
2554
2473
|
"div",
|
|
2555
2474
|
{
|
|
@@ -2575,9 +2494,9 @@ var KdsCardPlan = (0, import_react39.forwardRef)(
|
|
|
2575
2494
|
KdsCardPlan.displayName = "KdsCardPlan";
|
|
2576
2495
|
|
|
2577
2496
|
// src/components/domain/KdsInvoiceSticky/KdsInvoiceSticky.tsx
|
|
2578
|
-
var
|
|
2497
|
+
var import_react39 = require("react");
|
|
2579
2498
|
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
2580
|
-
var KdsInvoiceSticky = (0,
|
|
2499
|
+
var KdsInvoiceSticky = (0, import_react39.forwardRef)(
|
|
2581
2500
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2582
2501
|
"article",
|
|
2583
2502
|
{
|
|
@@ -2591,10 +2510,10 @@ var KdsInvoiceSticky = (0, import_react40.forwardRef)(
|
|
|
2591
2510
|
KdsInvoiceSticky.displayName = "KdsInvoiceSticky";
|
|
2592
2511
|
|
|
2593
2512
|
// src/components/domain/KdsBottomSheet/KdsBottomSheet.tsx
|
|
2594
|
-
var
|
|
2513
|
+
var import_react40 = require("react");
|
|
2595
2514
|
var Dialog2 = __toESM(require("@radix-ui/react-dialog"));
|
|
2596
2515
|
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
2597
|
-
var KdsBottomSheet = (0,
|
|
2516
|
+
var KdsBottomSheet = (0, import_react40.forwardRef)(
|
|
2598
2517
|
({
|
|
2599
2518
|
open,
|
|
2600
2519
|
onClose,
|
|
@@ -2648,12 +2567,12 @@ var KdsBottomSheet = (0, import_react41.forwardRef)(
|
|
|
2648
2567
|
KdsBottomSheet.displayName = "KdsBottomSheet";
|
|
2649
2568
|
|
|
2650
2569
|
// src/components/domain/KdsSecureFooter/KdsSecureFooter.tsx
|
|
2651
|
-
var
|
|
2570
|
+
var import_react42 = require("react");
|
|
2652
2571
|
|
|
2653
2572
|
// src/components/domain/KdsSecureFooter/KhipuWordmark.tsx
|
|
2654
|
-
var
|
|
2573
|
+
var import_react41 = require("react");
|
|
2655
2574
|
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
2656
|
-
var KhipuWordmark = (0,
|
|
2575
|
+
var KhipuWordmark = (0, import_react41.forwardRef)(
|
|
2657
2576
|
({ className = "khipu-mark", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
|
|
2658
2577
|
"svg",
|
|
2659
2578
|
{
|
|
@@ -2681,7 +2600,7 @@ KhipuWordmark.displayName = "KhipuWordmark";
|
|
|
2681
2600
|
|
|
2682
2601
|
// src/components/domain/KdsSecureFooter/KdsSecureFooter.tsx
|
|
2683
2602
|
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
2684
|
-
var KdsSecureFooter = (0,
|
|
2603
|
+
var KdsSecureFooter = (0, import_react42.forwardRef)(
|
|
2685
2604
|
({ variant = "default", showLogo = true, psp, children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("footer", { ref, className: (0, import_clsx.clsx)("kds-secure-footer", variant === "inside" && "inside", className), ...props, children: [
|
|
2686
2605
|
/* @__PURE__ */ (0, import_jsx_runtime40.jsxs)("svg", { className: "kds-secure-footer-lock", viewBox: "0 0 24 24", "aria-hidden": "true", children: [
|
|
2687
2606
|
/* @__PURE__ */ (0, import_jsx_runtime40.jsx)("rect", { x: "4.5", y: "10.5", width: "15", height: "10", rx: "2.25" }),
|
|
@@ -2698,9 +2617,9 @@ var KdsSecureFooter = (0, import_react43.forwardRef)(
|
|
|
2698
2617
|
KdsSecureFooter.displayName = "KdsSecureFooter";
|
|
2699
2618
|
|
|
2700
2619
|
// src/components/domain/KdsRecapList/KdsRecapList.tsx
|
|
2701
|
-
var
|
|
2620
|
+
var import_react43 = require("react");
|
|
2702
2621
|
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
2703
|
-
var KdsRecapList = (0,
|
|
2622
|
+
var KdsRecapList = (0, import_react43.forwardRef)(
|
|
2704
2623
|
({ items, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("ul", { ref, className: (0, import_clsx.clsx)("kds-recap-list", className), ...props, children: items.map((item, i) => /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)("li", { children: [
|
|
2705
2624
|
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: "kds-key", children: item.label }),
|
|
2706
2625
|
/* @__PURE__ */ (0, import_jsx_runtime41.jsx)("span", { className: (0, import_clsx.clsx)("kds-value", !item.value && item.placeholder && "placeholder"), children: item.value || item.placeholder || "-" })
|
|
@@ -2709,9 +2628,9 @@ var KdsRecapList = (0, import_react44.forwardRef)(
|
|
|
2709
2628
|
KdsRecapList.displayName = "KdsRecapList";
|
|
2710
2629
|
|
|
2711
2630
|
// src/components/domain/KdsMontoRow/KdsMontoRow.tsx
|
|
2712
|
-
var
|
|
2631
|
+
var import_react44 = require("react");
|
|
2713
2632
|
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
2714
|
-
var KdsMontoRow = (0,
|
|
2633
|
+
var KdsMontoRow = (0, import_react44.forwardRef)(
|
|
2715
2634
|
({ title, value, deadline, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { ref, className: (0, import_clsx.clsx)("kds-monto-row", className), ...props, children: [
|
|
2716
2635
|
/* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { children: [
|
|
2717
2636
|
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "kds-monto-row-title", children: title }),
|
|
@@ -2723,9 +2642,9 @@ var KdsMontoRow = (0, import_react45.forwardRef)(
|
|
|
2723
2642
|
KdsMontoRow.displayName = "KdsMontoRow";
|
|
2724
2643
|
|
|
2725
2644
|
// src/components/domain/KdsMerchantTile/KdsMerchantTile.tsx
|
|
2726
|
-
var
|
|
2645
|
+
var import_react45 = require("react");
|
|
2727
2646
|
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
2728
|
-
var KdsMerchantTile = (0,
|
|
2647
|
+
var KdsMerchantTile = (0, import_react45.forwardRef)(
|
|
2729
2648
|
({ name, logoUrl, initials, compact, className, ...props }, ref) => {
|
|
2730
2649
|
const displayInitials = (initials ?? name.slice(0, 2)).toUpperCase();
|
|
2731
2650
|
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
@@ -2743,10 +2662,10 @@ var KdsMerchantTile = (0, import_react46.forwardRef)(
|
|
|
2743
2662
|
KdsMerchantTile.displayName = "KdsMerchantTile";
|
|
2744
2663
|
|
|
2745
2664
|
// src/components/domain/KdsInvoiceMerchant/KdsInvoiceMerchant.tsx
|
|
2746
|
-
var
|
|
2665
|
+
var import_react47 = require("react");
|
|
2747
2666
|
|
|
2748
2667
|
// src/components/domain/KdsInvoiceMerchant/useLogoBackdrop.ts
|
|
2749
|
-
var
|
|
2668
|
+
var import_react46 = require("react");
|
|
2750
2669
|
|
|
2751
2670
|
// src/components/domain/KdsInvoiceMerchant/logoLuminance.ts
|
|
2752
2671
|
var LIGHT_LOGO_LUMINANCE_THRESHOLD = 0.72;
|
|
@@ -2795,8 +2714,8 @@ function pickLogoBackdrop(luminance) {
|
|
|
2795
2714
|
|
|
2796
2715
|
// src/components/domain/KdsInvoiceMerchant/useLogoBackdrop.ts
|
|
2797
2716
|
function useLogoBackdrop(logoUrl) {
|
|
2798
|
-
const [backdrop, setBackdrop] = (0,
|
|
2799
|
-
(0,
|
|
2717
|
+
const [backdrop, setBackdrop] = (0, import_react46.useState)("light");
|
|
2718
|
+
(0, import_react46.useEffect)(() => {
|
|
2800
2719
|
let cancelled = false;
|
|
2801
2720
|
setBackdrop("light");
|
|
2802
2721
|
if (!logoUrl) {
|
|
@@ -2816,9 +2735,9 @@ function useLogoBackdrop(logoUrl) {
|
|
|
2816
2735
|
|
|
2817
2736
|
// src/components/domain/KdsInvoiceMerchant/KdsInvoiceMerchant.tsx
|
|
2818
2737
|
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
2819
|
-
var KdsInvoiceMerchant = (0,
|
|
2738
|
+
var KdsInvoiceMerchant = (0, import_react47.forwardRef)(
|
|
2820
2739
|
({ logoUrl, brandColor, className, style, ...props }, ref) => {
|
|
2821
|
-
const [failed, setFailed] = (0,
|
|
2740
|
+
const [failed, setFailed] = (0, import_react47.useState)(false);
|
|
2822
2741
|
const showLogo = !!logoUrl && !failed;
|
|
2823
2742
|
const backdrop = useLogoBackdrop(showLogo ? logoUrl : void 0);
|
|
2824
2743
|
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
@@ -2842,9 +2761,9 @@ var KdsInvoiceMerchant = (0, import_react48.forwardRef)(
|
|
|
2842
2761
|
KdsInvoiceMerchant.displayName = "KdsInvoiceMerchant";
|
|
2843
2762
|
|
|
2844
2763
|
// src/components/domain/KdsPaymentTotal/KdsPaymentTotal.tsx
|
|
2845
|
-
var
|
|
2764
|
+
var import_react48 = require("react");
|
|
2846
2765
|
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
2847
|
-
var KdsPaymentTotal = (0,
|
|
2766
|
+
var KdsPaymentTotal = (0, import_react48.forwardRef)(
|
|
2848
2767
|
({
|
|
2849
2768
|
variant = "default",
|
|
2850
2769
|
tone = "brand",
|
|
@@ -2918,9 +2837,9 @@ function formatAmount(amount, decimals, locale) {
|
|
|
2918
2837
|
}
|
|
2919
2838
|
|
|
2920
2839
|
// src/components/domain/KdsBillAttachment/KdsBillAttachment.tsx
|
|
2921
|
-
var
|
|
2840
|
+
var import_react49 = require("react");
|
|
2922
2841
|
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
2923
|
-
var KdsBillAttachment = (0,
|
|
2842
|
+
var KdsBillAttachment = (0, import_react49.forwardRef)(
|
|
2924
2843
|
({ filename, href, icon = "attach_file", className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
|
|
2925
2844
|
"a",
|
|
2926
2845
|
{
|
|
@@ -2938,7 +2857,7 @@ var KdsBillAttachment = (0, import_react50.forwardRef)(
|
|
|
2938
2857
|
)
|
|
2939
2858
|
);
|
|
2940
2859
|
KdsBillAttachment.displayName = "KdsBillAttachment";
|
|
2941
|
-
var KdsBillAttachments = (0,
|
|
2860
|
+
var KdsBillAttachments = (0, import_react49.forwardRef)(
|
|
2942
2861
|
({ children, className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { ref, className: (0, import_clsx.clsx)("kds-bill-attachments", className), ...props, children })
|
|
2943
2862
|
);
|
|
2944
2863
|
KdsBillAttachments.displayName = "KdsBillAttachments";
|
|
@@ -3038,12 +2957,12 @@ var guideToFirstInvalidFieldOnBlur = (form) => {
|
|
|
3038
2957
|
};
|
|
3039
2958
|
|
|
3040
2959
|
// src/components/core/hooks/useStickyInvoiceCollapse.ts
|
|
3041
|
-
var
|
|
2960
|
+
var import_react50 = require("react");
|
|
3042
2961
|
function useStickyInvoiceCollapse(options = {}) {
|
|
3043
2962
|
const { onCollapseStart, collapseEnd = 20, mobileBreakpoint = 768 } = options;
|
|
3044
|
-
const onCollapseStartRef = (0,
|
|
2963
|
+
const onCollapseStartRef = (0, import_react50.useRef)(onCollapseStart);
|
|
3045
2964
|
onCollapseStartRef.current = onCollapseStart;
|
|
3046
|
-
(0,
|
|
2965
|
+
(0, import_react50.useEffect)(() => {
|
|
3047
2966
|
let viewportOffset = 0;
|
|
3048
2967
|
let ticking = false;
|
|
3049
2968
|
let wasCollapsing = false;
|
|
@@ -3116,24 +3035,24 @@ function useStickyInvoiceCollapse(options = {}) {
|
|
|
3116
3035
|
}
|
|
3117
3036
|
|
|
3118
3037
|
// src/components/core/hooks/useExpandToggle.ts
|
|
3119
|
-
var
|
|
3038
|
+
var import_react51 = require("react");
|
|
3120
3039
|
function useExpandToggle(options = {}) {
|
|
3121
3040
|
const { defaultOpen = false, open: controlledOpen, onOpenChange, id } = options;
|
|
3122
|
-
const generatedId = (0,
|
|
3041
|
+
const generatedId = (0, import_react51.useId)();
|
|
3123
3042
|
const panelId = id ?? `kds-expand-${generatedId}`;
|
|
3124
3043
|
const isControlled = controlledOpen !== void 0;
|
|
3125
|
-
const [uncontrolledOpen, setUncontrolledOpen] = (0,
|
|
3044
|
+
const [uncontrolledOpen, setUncontrolledOpen] = (0, import_react51.useState)(defaultOpen);
|
|
3126
3045
|
const open = isControlled ? controlledOpen : uncontrolledOpen;
|
|
3127
|
-
const panelRef = (0,
|
|
3128
|
-
const setPanelRef = (0,
|
|
3046
|
+
const panelRef = (0, import_react51.useRef)(null);
|
|
3047
|
+
const setPanelRef = (0, import_react51.useCallback)((node) => {
|
|
3129
3048
|
panelRef.current = node;
|
|
3130
3049
|
}, []);
|
|
3131
|
-
(0,
|
|
3050
|
+
(0, import_react51.useLayoutEffect)(() => {
|
|
3132
3051
|
const panel = panelRef.current;
|
|
3133
3052
|
if (!panel) return;
|
|
3134
3053
|
panel.style.maxHeight = open ? `${panel.scrollHeight}px` : "";
|
|
3135
3054
|
}, [open]);
|
|
3136
|
-
const setOpen = (0,
|
|
3055
|
+
const setOpen = (0, import_react51.useCallback)(
|
|
3137
3056
|
(next) => {
|
|
3138
3057
|
if (!isControlled) {
|
|
3139
3058
|
setUncontrolledOpen(next);
|
|
@@ -3142,8 +3061,8 @@ function useExpandToggle(options = {}) {
|
|
|
3142
3061
|
},
|
|
3143
3062
|
[isControlled, onOpenChange]
|
|
3144
3063
|
);
|
|
3145
|
-
const toggle = (0,
|
|
3146
|
-
const getToggleProps = (0,
|
|
3064
|
+
const toggle = (0, import_react51.useCallback)(() => setOpen(!open), [open, setOpen]);
|
|
3065
|
+
const getToggleProps = (0, import_react51.useCallback)(
|
|
3147
3066
|
() => ({
|
|
3148
3067
|
type: "button",
|
|
3149
3068
|
"aria-expanded": open,
|
|
@@ -3152,7 +3071,7 @@ function useExpandToggle(options = {}) {
|
|
|
3152
3071
|
}),
|
|
3153
3072
|
[open, panelId, toggle]
|
|
3154
3073
|
);
|
|
3155
|
-
const getPanelProps = (0,
|
|
3074
|
+
const getPanelProps = (0, import_react51.useCallback)(
|
|
3156
3075
|
(baseClassName = "kds-expand-panel") => ({
|
|
3157
3076
|
id: panelId,
|
|
3158
3077
|
className: open ? `${baseClassName} open` : baseClassName,
|
|
@@ -3165,11 +3084,11 @@ function useExpandToggle(options = {}) {
|
|
|
3165
3084
|
}
|
|
3166
3085
|
|
|
3167
3086
|
// src/components/core/hooks/useHideOnScroll.ts
|
|
3168
|
-
var
|
|
3087
|
+
var import_react52 = require("react");
|
|
3169
3088
|
function useHideOnScroll(options = {}) {
|
|
3170
3089
|
const { threshold = 8, topOffset = 0 } = options;
|
|
3171
|
-
const [hidden, setHidden] = (0,
|
|
3172
|
-
(0,
|
|
3090
|
+
const [hidden, setHidden] = (0, import_react52.useState)(false);
|
|
3091
|
+
(0, import_react52.useEffect)(() => {
|
|
3173
3092
|
let viewportOffset = 0;
|
|
3174
3093
|
let lastY = 0;
|
|
3175
3094
|
let ticking = false;
|
|
@@ -3212,12 +3131,12 @@ function useHideOnScroll(options = {}) {
|
|
|
3212
3131
|
}
|
|
3213
3132
|
|
|
3214
3133
|
// src/components/core/hooks/useMediaQuery.ts
|
|
3215
|
-
var
|
|
3134
|
+
var import_react53 = require("react");
|
|
3216
3135
|
function useMediaQuery(query) {
|
|
3217
|
-
const [matches, setMatches] = (0,
|
|
3136
|
+
const [matches, setMatches] = (0, import_react53.useState)(
|
|
3218
3137
|
() => typeof window !== "undefined" ? window.matchMedia(query).matches : false
|
|
3219
3138
|
);
|
|
3220
|
-
(0,
|
|
3139
|
+
(0, import_react53.useEffect)(() => {
|
|
3221
3140
|
if (typeof window === "undefined") return;
|
|
3222
3141
|
const mql = window.matchMedia(query);
|
|
3223
3142
|
setMatches(mql.matches);
|
|
@@ -3229,6 +3148,7 @@ function useMediaQuery(query) {
|
|
|
3229
3148
|
}
|
|
3230
3149
|
// Annotate the CommonJS export names for ESM import in node:
|
|
3231
3150
|
0 && (module.exports = {
|
|
3151
|
+
KDS_VERSION,
|
|
3232
3152
|
KdsAccordion,
|
|
3233
3153
|
KdsAccordionDetails,
|
|
3234
3154
|
KdsAccordionSummary,
|