kz-design-system 0.2.0 → 0.3.0

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.
Files changed (118) hide show
  1. package/dist/button.d.mts +1 -1
  2. package/dist/button.d.ts +1 -1
  3. package/dist/button.js +6 -2
  4. package/dist/button.js.map +1 -1
  5. package/dist/button.mjs +11 -3
  6. package/dist/button.mjs.map +1 -1
  7. package/dist/color-picker.js +6 -2
  8. package/dist/color-picker.js.map +1 -1
  9. package/dist/color-picker.mjs +11 -3
  10. package/dist/color-picker.mjs.map +1 -1
  11. package/dist/date-range-picker.js +6 -2
  12. package/dist/date-range-picker.js.map +1 -1
  13. package/dist/date-range-picker.mjs +11 -3
  14. package/dist/date-range-picker.mjs.map +1 -1
  15. package/dist/date-time-picker.js +6 -2
  16. package/dist/date-time-picker.js.map +1 -1
  17. package/dist/date-time-picker.mjs +11 -3
  18. package/dist/date-time-picker.mjs.map +1 -1
  19. package/dist/dropdown.js +6 -2
  20. package/dist/dropdown.js.map +1 -1
  21. package/dist/dropdown.mjs +11 -3
  22. package/dist/dropdown.mjs.map +1 -1
  23. package/dist/error-page.js +5 -1
  24. package/dist/error-page.js.map +1 -1
  25. package/dist/error-page.mjs +10 -2
  26. package/dist/error-page.mjs.map +1 -1
  27. package/dist/file-uploader.js +5 -1
  28. package/dist/file-uploader.js.map +1 -1
  29. package/dist/file-uploader.mjs +10 -2
  30. package/dist/file-uploader.mjs.map +1 -1
  31. package/dist/icon-picker.d.mts +1 -1
  32. package/dist/icon-picker.d.ts +1 -1
  33. package/dist/icon-picker.js +10 -2
  34. package/dist/icon-picker.js.map +1 -1
  35. package/dist/icon-picker.mjs +15 -3
  36. package/dist/icon-picker.mjs.map +1 -1
  37. package/dist/{icon-registry-YZFYW-mt.d.mts → icon-registry-DY5NSKnE.d.mts} +5 -1
  38. package/dist/{icon-registry-YZFYW-mt.d.ts → icon-registry-DY5NSKnE.d.ts} +5 -1
  39. package/dist/icon.d.mts +2 -2
  40. package/dist/icon.d.ts +2 -2
  41. package/dist/icon.js +9 -1
  42. package/dist/icon.js.map +1 -1
  43. package/dist/icon.mjs +14 -2
  44. package/dist/icon.mjs.map +1 -1
  45. package/dist/index.d.mts +2 -1
  46. package/dist/index.d.ts +2 -1
  47. package/dist/index.js +994 -693
  48. package/dist/index.js.map +1 -1
  49. package/dist/index.mjs +999 -695
  50. package/dist/index.mjs.map +1 -1
  51. package/dist/modal.js +5 -1
  52. package/dist/modal.js.map +1 -1
  53. package/dist/modal.mjs +10 -2
  54. package/dist/modal.mjs.map +1 -1
  55. package/dist/number-input.js +6 -2
  56. package/dist/number-input.js.map +1 -1
  57. package/dist/number-input.mjs +11 -3
  58. package/dist/number-input.mjs.map +1 -1
  59. package/dist/pagination.js +6 -2
  60. package/dist/pagination.js.map +1 -1
  61. package/dist/pagination.mjs +11 -3
  62. package/dist/pagination.mjs.map +1 -1
  63. package/dist/qr-renderer.js +6 -2
  64. package/dist/qr-renderer.js.map +1 -1
  65. package/dist/qr-renderer.mjs +11 -3
  66. package/dist/qr-renderer.mjs.map +1 -1
  67. package/dist/range-slider.d.mts +38 -0
  68. package/dist/range-slider.d.ts +38 -0
  69. package/dist/range-slider.js +466 -0
  70. package/dist/range-slider.js.map +1 -0
  71. package/dist/range-slider.mjs +426 -0
  72. package/dist/range-slider.mjs.map +1 -0
  73. package/dist/select.js +5 -1
  74. package/dist/select.js.map +1 -1
  75. package/dist/select.mjs +10 -2
  76. package/dist/select.mjs.map +1 -1
  77. package/dist/sidemenu.d.mts +1 -1
  78. package/dist/sidemenu.d.ts +1 -1
  79. package/dist/sidemenu.js +5 -1
  80. package/dist/sidemenu.js.map +1 -1
  81. package/dist/sidemenu.mjs +10 -2
  82. package/dist/sidemenu.mjs.map +1 -1
  83. package/dist/sidepanel.js +5 -1
  84. package/dist/sidepanel.js.map +1 -1
  85. package/dist/sidepanel.mjs +10 -2
  86. package/dist/sidepanel.mjs.map +1 -1
  87. package/dist/sql-editor.js +6 -2
  88. package/dist/sql-editor.js.map +1 -1
  89. package/dist/sql-editor.mjs +11 -3
  90. package/dist/sql-editor.mjs.map +1 -1
  91. package/dist/styles.css +2 -2
  92. package/dist/table.d.mts +14 -0
  93. package/dist/table.d.ts +14 -0
  94. package/dist/table.js +41 -21
  95. package/dist/table.js.map +1 -1
  96. package/dist/table.mjs +46 -22
  97. package/dist/table.mjs.map +1 -1
  98. package/dist/tabs.js +5 -1
  99. package/dist/tabs.js.map +1 -1
  100. package/dist/tabs.mjs +10 -2
  101. package/dist/tabs.mjs.map +1 -1
  102. package/dist/text-area.js +5 -1
  103. package/dist/text-area.js.map +1 -1
  104. package/dist/text-area.mjs +10 -2
  105. package/dist/text-area.mjs.map +1 -1
  106. package/dist/text-input.js +5 -1
  107. package/dist/text-input.js.map +1 -1
  108. package/dist/text-input.mjs +10 -2
  109. package/dist/text-input.mjs.map +1 -1
  110. package/dist/toast.js +5 -1
  111. package/dist/toast.js.map +1 -1
  112. package/dist/toast.mjs +10 -2
  113. package/dist/toast.mjs.map +1 -1
  114. package/dist/toggle-button.js +6 -2
  115. package/dist/toggle-button.js.map +1 -1
  116. package/dist/toggle-button.mjs +11 -3
  117. package/dist/toggle-button.mjs.map +1 -1
  118. package/package.json +7 -1
package/dist/table.mjs CHANGED
@@ -367,7 +367,11 @@ import {
367
367
  Pencil,
368
368
  Trash2,
369
369
  Eye,
370
- EyeOff
370
+ EyeOff,
371
+ Pin,
372
+ PinOff,
373
+ Save,
374
+ RotateCcw
371
375
  } from "lucide-react";
372
376
  var iconRegistry = {
373
377
  ["search" /* Search */]: Search,
@@ -472,7 +476,11 @@ var iconRegistry = {
472
476
  ["pencil" /* Pencil */]: Pencil,
473
477
  ["trash-2" /* Trash2 */]: Trash2,
474
478
  ["eye" /* Eye */]: Eye,
475
- ["eye-off" /* EyeOff */]: EyeOff
479
+ ["eye-off" /* EyeOff */]: EyeOff,
480
+ ["pin" /* Pin */]: Pin,
481
+ ["pin-off" /* PinOff */]: PinOff,
482
+ ["save" /* Save */]: Save,
483
+ ["rotate-ccw" /* RotateCcw */]: RotateCcw
476
484
  };
477
485
 
478
486
  // src/icon/icon-sizes.ts
@@ -715,7 +723,7 @@ var base = [
715
723
  "inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium",
716
724
  "transition-all duration-150 ease-out",
717
725
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-[var(--kz-color-border-focus)]",
718
- "disabled:pointer-events-none disabled:opacity-[var(--kz-component-button-disabled-opacity,0.5)]",
726
+ "disabled:cursor-not-allowed disabled:opacity-[var(--kz-component-button-disabled-opacity,0.5)]",
719
727
  "[&_svg]:pointer-events-none [&_svg]:shrink-0"
720
728
  ].join(" ");
721
729
  var buttonVariants = cva2(base, {
@@ -1474,6 +1482,8 @@ function TableInner({
1474
1482
  stickyHeader = false,
1475
1483
  maxHeight,
1476
1484
  getRowSticky,
1485
+ getRowClassName,
1486
+ getRowStyle,
1477
1487
  caption,
1478
1488
  header: headerProp,
1479
1489
  title,
@@ -1519,6 +1529,10 @@ function TableInner({
1519
1529
  () => data.map((row, i) => getRowId(row, i)),
1520
1530
  [data, getRowId]
1521
1531
  );
1532
+ const visibleColumns = React8.useMemo(
1533
+ () => columns.filter((col) => !col.hidden),
1534
+ [columns]
1535
+ );
1522
1536
  const selectedCount = React8.useMemo(
1523
1537
  () => Object.keys(selectedRowIds).filter((id) => selectedRowIds[id]).length,
1524
1538
  [selectedRowIds]
@@ -1778,11 +1792,13 @@ function TableInner({
1778
1792
  )
1779
1793
  }
1780
1794
  ),
1781
- columns.map((col) => {
1782
- const style = {};
1783
- if (col.width) style.width = col.width;
1784
- if (col.minWidth) style.minWidth = col.minWidth;
1785
- if (col.maxWidth) style.maxWidth = col.maxWidth;
1795
+ visibleColumns.map((col) => {
1796
+ const thStyle = {
1797
+ ...col.headerStyle
1798
+ };
1799
+ if (col.width) thStyle.width = col.width;
1800
+ if (col.minWidth) thStyle.minWidth = col.minWidth;
1801
+ if (col.maxWidth) thStyle.maxWidth = col.maxWidth;
1786
1802
  const align = col.align ?? "left";
1787
1803
  const isSortable = col.sortable && onSortChange != null;
1788
1804
  const isActive = sort?.key === col.key;
@@ -1796,9 +1812,10 @@ function TableInner({
1796
1812
  "kz-table-th border-b border-[var(--kz-component-table-row-border)] bg-[var(--kz-component-table-header-bg)]",
1797
1813
  sizeClass,
1798
1814
  alignClasses[align],
1799
- stickyHeader && "sticky top-0 z-10 bg-[var(--kz-component-table-header-bg)]"
1815
+ stickyHeader && "sticky top-0 z-10 bg-[var(--kz-component-table-header-bg)]",
1816
+ col.headerClassName
1800
1817
  ),
1801
- style,
1818
+ style: thStyle,
1802
1819
  children: isSortable ? /* @__PURE__ */ jsxs7(
1803
1820
  "button",
1804
1821
  {
@@ -1864,7 +1881,7 @@ function TableInner({
1864
1881
  /* @__PURE__ */ jsx8("tbody", { children: loading ? /* @__PURE__ */ jsx8("tr", { children: /* @__PURE__ */ jsx8(
1865
1882
  "td",
1866
1883
  {
1867
- colSpan: columns.length + (selectableRows ? 1 : 0) + (actions ? 1 : 0),
1884
+ colSpan: visibleColumns.length + (selectableRows ? 1 : 0) + (actions ? 1 : 0),
1868
1885
  className: cn(
1869
1886
  "kz-table-td text-center text-[var(--kz-color-text-muted)]",
1870
1887
  sizeClass
@@ -1874,7 +1891,7 @@ function TableInner({
1874
1891
  ) }) : data.length === 0 ? /* @__PURE__ */ jsx8("tr", { children: /* @__PURE__ */ jsx8(
1875
1892
  "td",
1876
1893
  {
1877
- colSpan: columns.length + (selectableRows ? 1 : 0) + (actions ? 1 : 0),
1894
+ colSpan: visibleColumns.length + (selectableRows ? 1 : 0) + (actions ? 1 : 0),
1878
1895
  className: cn(
1879
1896
  "kz-table-td text-center text-[var(--kz-color-text-muted)]",
1880
1897
  sizeClass
@@ -1894,8 +1911,10 @@ function TableInner({
1894
1911
  className: cn(
1895
1912
  "kz-table-tr border-b border-[var(--kz-component-table-row-border)] last:border-b-0 hover:bg-[var(--kz-component-table-row-hover-bg)] transition-colors duration-[var(--kz-motion-duration-normal)]",
1896
1913
  isSticky && "kz-table-tr--sticky",
1897
- hasEditingCell && "kz-table-tr--editing"
1914
+ hasEditingCell && "kz-table-tr--editing",
1915
+ getRowClassName?.(row, index)
1898
1916
  ),
1917
+ style: getRowStyle?.(row, index),
1899
1918
  children: [
1900
1919
  selectableRows && /* @__PURE__ */ jsx8(
1901
1920
  "td",
@@ -1917,11 +1936,13 @@ function TableInner({
1917
1936
  )
1918
1937
  }
1919
1938
  ),
1920
- columns.map((col) => {
1921
- const style = {};
1922
- if (col.width) style.width = col.width;
1923
- if (col.minWidth) style.minWidth = col.minWidth;
1924
- if (col.maxWidth) style.maxWidth = col.maxWidth;
1939
+ visibleColumns.map((col) => {
1940
+ const tdStyle = {
1941
+ ...col.cellStyle
1942
+ };
1943
+ if (col.width) tdStyle.width = col.width;
1944
+ if (col.minWidth) tdStyle.minWidth = col.minWidth;
1945
+ if (col.maxWidth) tdStyle.maxWidth = col.maxWidth;
1925
1946
  const align = col.align ?? "left";
1926
1947
  const isCellEditing = isMultiCellMode ? !!editingCells[rowId]?.[col.key] : editingCell != null && editingCell.rowId === rowId && editingCell.columnKey === col.key;
1927
1948
  if (isCellEditing) {
@@ -1942,9 +1963,10 @@ function TableInner({
1942
1963
  className: cn(
1943
1964
  "kz-table-td text-[var(--kz-color-text-primary)]",
1944
1965
  sizeClass,
1945
- alignClasses[align]
1966
+ alignClasses[align],
1967
+ col.cellClassName
1946
1968
  ),
1947
- style,
1969
+ style: tdStyle,
1948
1970
  children: col.editCell ? col.editCell(row, cellDraft, onChange) : /* @__PURE__ */ jsx8(
1949
1971
  TextInput,
1950
1972
  {
@@ -1967,9 +1989,10 @@ function TableInner({
1967
1989
  "kz-table-td text-[var(--kz-color-text-primary)]",
1968
1990
  sizeClass,
1969
1991
  alignClasses[align],
1970
- col.editable && "kz-table-td--editable"
1992
+ col.editable && "kz-table-td--editable",
1993
+ col.cellClassName
1971
1994
  ),
1972
- style,
1995
+ style: tdStyle,
1973
1996
  children: [
1974
1997
  getCellContent(row, col),
1975
1998
  col.editable && /* @__PURE__ */ jsx8(
@@ -2078,6 +2101,7 @@ function TableInner({
2078
2101
  Button,
2079
2102
  {
2080
2103
  variant: "primary" /* Primary */,
2104
+ status: "success" /* Success */,
2081
2105
  size: "sm" /* Sm */,
2082
2106
  onClick: handleCellSave,
2083
2107
  children: "Save"