@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/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)("div", { className: `kds-theme-root ${mode}`, "data-theme": mode, style, children });
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 import_react2 = require("react");
1197
+ var import_react = require("react");
1279
1198
  var import_jsx_runtime2 = require("react/jsx-runtime");
1280
- var KdsButton = (0, import_react2.forwardRef)(
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 import_react3 = require("react");
1243
+ var import_react2 = require("react");
1325
1244
  var import_jsx_runtime3 = require("react/jsx-runtime");
1326
- var KdsTextField = (0, import_react3.forwardRef)(
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, import_react3.useState)(false);
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 import_react4 = require("react");
1333
+ var import_react3 = require("react");
1415
1334
  var import_jsx_runtime4 = require("react/jsx-runtime");
1416
- var KdsSearchField = (0, import_react4.forwardRef)(
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 import_react5 = require("react");
1358
+ var import_react4 = require("react");
1440
1359
  var import_jsx_runtime5 = require("react/jsx-runtime");
1441
- var KdsCheckbox = (0, import_react5.forwardRef)(
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 import_react6 = require("react");
1369
+ var import_react5 = require("react");
1451
1370
  var import_jsx_runtime6 = require("react/jsx-runtime");
1452
- var KdsCard = (0, import_react6.forwardRef)(
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, import_react6.forwardRef)(
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, import_react6.forwardRef)(
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, import_react6.forwardRef)(
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 import_react7 = require("react");
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, import_react7.forwardRef)(
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 import_react8 = require("react");
1430
+ var import_react7 = require("react");
1512
1431
  var import_jsx_runtime8 = require("react/jsx-runtime");
1513
- var KdsSecureLoader = (0, import_react8.forwardRef)(
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 import_react10 = require("react");
1458
+ var import_react9 = require("react");
1540
1459
 
1541
1460
  // src/components/core/hooks/useCopyToClipboard.ts
1542
- var import_react9 = require("react");
1461
+ var import_react8 = require("react");
1543
1462
  function useCopyToClipboard(resetMs = 1200) {
1544
- const [copied, setCopied] = (0, import_react9.useState)(false);
1545
- const copy = (0, import_react9.useCallback)(
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, import_react10.forwardRef)(
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 import_react11 = require("react");
1506
+ var import_react10 = require("react");
1588
1507
  var import_jsx_runtime10 = require("react/jsx-runtime");
1589
- var KdsLinearProgress = (0, import_react11.forwardRef)(
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 import_react12 = require("react");
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, import_react12.forwardRef)(
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 import_react13 = require("react");
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, import_react13.forwardRef)(
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 import_react15 = __toESM(require("react"));
1598
+ var import_react14 = __toESM(require("react"));
1680
1599
 
1681
1600
  // src/components/core/hooks/useTabsKeyboard.ts
1682
- var import_react14 = require("react");
1601
+ var import_react13 = require("react");
1683
1602
  function useTabsKeyboard(tabCount, activeIndex, onChange) {
1684
- const onKeyDown = (0, import_react14.useCallback)(
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, import_react15.forwardRef)(
1624
+ var KdsTabs = (0, import_react14.forwardRef)(
1706
1625
  ({ activeIndex, onChange, children, className, style, ...props }, ref) => {
1707
- const tabCount = import_react15.Children.count(children);
1626
+ const tabCount = import_react14.Children.count(children);
1708
1627
  const { onKeyDown } = useTabsKeyboard(tabCount, activeIndex, onChange);
1709
- const mergedStyle = (0, import_react15.useMemo)(
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: import_react15.Children.map(children, (child, i) => {
1727
- if (!import_react15.default.isValidElement(child)) return child;
1728
- return import_react15.default.cloneElement(child, {
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, import_react15.forwardRef)(
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, import_react15.forwardRef)(
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 import_react16 = require("react");
1690
+ var import_react15 = require("react");
1772
1691
  var import_jsx_runtime14 = require("react/jsx-runtime");
1773
- var KdsRadioGroup = (0, import_react16.forwardRef)(
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 import_react17 = require("react");
1722
+ var import_react16 = require("react");
1804
1723
  var import_jsx_runtime15 = require("react/jsx-runtime");
1805
- var KdsSelect = (0, import_react17.forwardRef)(
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 import_react18 = require("react");
1781
+ var import_react17 = require("react");
1863
1782
  var import_jsx_runtime16 = require("react/jsx-runtime");
1864
- var KdsChip = (0, import_react18.forwardRef)(
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 import_react20 = require("react");
1805
+ var import_react19 = require("react");
1887
1806
 
1888
1807
  // src/components/core/hooks/useAutoHide.ts
1889
- var import_react19 = require("react");
1808
+ var import_react18 = require("react");
1890
1809
  function useAutoHide(durationMs, onHide) {
1891
- const [visible, setVisible] = (0, import_react19.useState)(true);
1892
- const onHideRef = (0, import_react19.useRef)(onHide);
1810
+ const [visible, setVisible] = (0, import_react18.useState)(true);
1811
+ const onHideRef = (0, import_react18.useRef)(onHide);
1893
1812
  onHideRef.current = onHide;
1894
- (0, import_react19.useEffect)(() => {
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, import_react20.forwardRef)(
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 import_react21 = require("react");
1909
+ var import_react20 = require("react");
1991
1910
  var import_jsx_runtime19 = require("react/jsx-runtime");
1992
- var KdsAccordion = (0, import_react21.forwardRef)(
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, import_react21.forwardRef)(
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, import_react21.forwardRef)(
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 import_react22 = require("react");
1928
+ var import_react21 = require("react");
2010
1929
  var import_jsx_runtime20 = require("react/jsx-runtime");
2011
- var KdsDivider = (0, import_react22.forwardRef)(
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 import_react23 = require("react");
1936
+ var import_react22 = require("react");
2018
1937
  var import_jsx_runtime21 = require("react/jsx-runtime");
2019
- var KdsSectionNote = (0, import_react23.forwardRef)(
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 import_react24 = require("react");
1947
+ var import_react23 = require("react");
2029
1948
  var import_jsx_runtime22 = require("react/jsx-runtime");
2030
- var KdsStatusBlock = (0, import_react24.forwardRef)(
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 import_react25 = require("react");
1961
+ var import_react24 = require("react");
2043
1962
  var import_jsx_runtime23 = require("react/jsx-runtime");
2044
- var KdsStepper = (0, import_react25.forwardRef)(
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 import_react26 = require("react");
1979
+ var import_react25 = require("react");
2061
1980
  var import_jsx_runtime24 = require("react/jsx-runtime");
2062
- var KdsCopyRow = (0, import_react26.forwardRef)(
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 import_react27 = require("react");
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, import_react27.useRef)(/* @__PURE__ */ new Map());
2162
- const settlingTimers = (0, import_react27.useRef)(/* @__PURE__ */ new Map());
2163
- const [copiedRows, setCopiedRows] = (0, import_react27.useState)(/* @__PURE__ */ new Set());
2164
- const [settlingRows, setSettlingRows] = (0, import_react27.useState)(/* @__PURE__ */ new Set());
2165
- const [allCopied, setAllCopied] = (0, import_react27.useState)(false);
2166
- const markCopied = (0, import_react27.useCallback)((indexes, duration = 1500) => {
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, import_react27.forwardRef)(
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 import_react28 = require("react");
2232
+ var import_react27 = require("react");
2314
2233
  var import_jsx_runtime26 = require("react/jsx-runtime");
2315
- var KdsExpandPanel = (0, import_react28.forwardRef)(
2234
+ var KdsExpandPanel = (0, import_react27.forwardRef)(
2316
2235
  ({ label, defaultExpanded = false, children, className, ...props }, ref) => {
2317
- const [expanded, setExpanded] = (0, import_react28.useState)(defaultExpanded);
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 import_react30 = require("react");
2257
+ var import_react29 = require("react");
2339
2258
 
2340
2259
  // src/components/core/hooks/useCountdown.ts
2341
- var import_react29 = require("react");
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, import_react29.useState)(() => calcRemaining(deadline));
2355
- (0, import_react29.useEffect)(() => {
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, import_react30.forwardRef)(
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, import_react30.useRef)(onExpire);
2287
+ const onExpireRef = (0, import_react29.useRef)(onExpire);
2369
2288
  onExpireRef.current = onExpire;
2370
- (0, import_react30.useEffect)(() => {
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 import_react31 = require("react");
2313
+ var import_react30 = require("react");
2395
2314
  var import_jsx_runtime28 = require("react/jsx-runtime");
2396
- var KdsSegmentedTabs = (0, import_react31.forwardRef)(
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 import_react32 = require("react");
2321
+ var import_react31 = require("react");
2403
2322
  var import_jsx_runtime29 = require("react/jsx-runtime");
2404
- var KdsFab = (0, import_react32.forwardRef)(
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 import_react33 = require("react");
2345
+ var import_react32 = require("react");
2427
2346
  var import_jsx_runtime30 = require("react/jsx-runtime");
2428
- var KdsEmptyState = (0, import_react33.forwardRef)(
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 import_react34 = require("react");
2368
+ var import_react33 = require("react");
2450
2369
  var import_jsx_runtime31 = require("react/jsx-runtime");
2451
- var KdsBankRow = (0, import_react34.forwardRef)(
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 import_react35 = require("react");
2392
+ var import_react34 = require("react");
2474
2393
  var import_jsx_runtime32 = require("react/jsx-runtime");
2475
- var KdsBankList = (0, import_react35.forwardRef)(
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 import_react36 = require("react");
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, import_react36.forwardRef)(
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, import_react36.useState)("");
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 import_react37 = require("react");
2432
+ var import_react36 = require("react");
2514
2433
  var import_jsx_runtime34 = require("react/jsx-runtime");
2515
- var KdsQrRow = (0, import_react37.forwardRef)(
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 import_react38 = require("react");
2448
+ var import_react37 = require("react");
2530
2449
  var import_jsx_runtime35 = require("react/jsx-runtime");
2531
- var KdsCardSelector = (0, import_react38.forwardRef)(
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 import_react39 = require("react");
2469
+ var import_react38 = require("react");
2551
2470
  var import_jsx_runtime36 = require("react/jsx-runtime");
2552
- var KdsCardPlan = (0, import_react39.forwardRef)(
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 import_react40 = require("react");
2497
+ var import_react39 = require("react");
2579
2498
  var import_jsx_runtime37 = require("react/jsx-runtime");
2580
- var KdsInvoiceSticky = (0, import_react40.forwardRef)(
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 import_react41 = require("react");
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, import_react41.forwardRef)(
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 import_react43 = require("react");
2570
+ var import_react42 = require("react");
2652
2571
 
2653
2572
  // src/components/domain/KdsSecureFooter/KhipuWordmark.tsx
2654
- var import_react42 = require("react");
2573
+ var import_react41 = require("react");
2655
2574
  var import_jsx_runtime39 = require("react/jsx-runtime");
2656
- var KhipuWordmark = (0, import_react42.forwardRef)(
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, import_react43.forwardRef)(
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 import_react44 = require("react");
2620
+ var import_react43 = require("react");
2702
2621
  var import_jsx_runtime41 = require("react/jsx-runtime");
2703
- var KdsRecapList = (0, import_react44.forwardRef)(
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 import_react45 = require("react");
2631
+ var import_react44 = require("react");
2713
2632
  var import_jsx_runtime42 = require("react/jsx-runtime");
2714
- var KdsMontoRow = (0, import_react45.forwardRef)(
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 import_react46 = require("react");
2645
+ var import_react45 = require("react");
2727
2646
  var import_jsx_runtime43 = require("react/jsx-runtime");
2728
- var KdsMerchantTile = (0, import_react46.forwardRef)(
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 import_react48 = require("react");
2665
+ var import_react47 = require("react");
2747
2666
 
2748
2667
  // src/components/domain/KdsInvoiceMerchant/useLogoBackdrop.ts
2749
- var import_react47 = require("react");
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, import_react47.useState)("light");
2799
- (0, import_react47.useEffect)(() => {
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, import_react48.forwardRef)(
2738
+ var KdsInvoiceMerchant = (0, import_react47.forwardRef)(
2820
2739
  ({ logoUrl, brandColor, className, style, ...props }, ref) => {
2821
- const [failed, setFailed] = (0, import_react48.useState)(false);
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 import_react49 = require("react");
2764
+ var import_react48 = require("react");
2846
2765
  var import_jsx_runtime45 = require("react/jsx-runtime");
2847
- var KdsPaymentTotal = (0, import_react49.forwardRef)(
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 import_react50 = require("react");
2840
+ var import_react49 = require("react");
2922
2841
  var import_jsx_runtime46 = require("react/jsx-runtime");
2923
- var KdsBillAttachment = (0, import_react50.forwardRef)(
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, import_react50.forwardRef)(
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 import_react51 = require("react");
2960
+ var import_react50 = require("react");
3042
2961
  function useStickyInvoiceCollapse(options = {}) {
3043
2962
  const { onCollapseStart, collapseEnd = 20, mobileBreakpoint = 768 } = options;
3044
- const onCollapseStartRef = (0, import_react51.useRef)(onCollapseStart);
2963
+ const onCollapseStartRef = (0, import_react50.useRef)(onCollapseStart);
3045
2964
  onCollapseStartRef.current = onCollapseStart;
3046
- (0, import_react51.useEffect)(() => {
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 import_react52 = require("react");
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, import_react52.useId)();
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, import_react52.useState)(defaultOpen);
3044
+ const [uncontrolledOpen, setUncontrolledOpen] = (0, import_react51.useState)(defaultOpen);
3126
3045
  const open = isControlled ? controlledOpen : uncontrolledOpen;
3127
- const panelRef = (0, import_react52.useRef)(null);
3128
- const setPanelRef = (0, import_react52.useCallback)((node) => {
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, import_react52.useLayoutEffect)(() => {
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, import_react52.useCallback)(
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, import_react52.useCallback)(() => setOpen(!open), [open, setOpen]);
3146
- const getToggleProps = (0, import_react52.useCallback)(
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, import_react52.useCallback)(
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 import_react53 = require("react");
3087
+ var import_react52 = require("react");
3169
3088
  function useHideOnScroll(options = {}) {
3170
3089
  const { threshold = 8, topOffset = 0 } = options;
3171
- const [hidden, setHidden] = (0, import_react53.useState)(false);
3172
- (0, import_react53.useEffect)(() => {
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 import_react54 = require("react");
3134
+ var import_react53 = require("react");
3216
3135
  function useMediaQuery(query) {
3217
- const [matches, setMatches] = (0, import_react54.useState)(
3136
+ const [matches, setMatches] = (0, import_react53.useState)(
3218
3137
  () => typeof window !== "undefined" ? window.matchMedia(query).matches : false
3219
3138
  );
3220
- (0, import_react54.useEffect)(() => {
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,