@itilite/lumina-ui 1.0.0-alpha → 1.0.1-alpha

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 (185) hide show
  1. package/dist/{AdvancedDateRangePicker-Eh6n4ne0.d.mts → AdvancedDateRangePicker-ozItnkhp.d.mts} +1 -1
  2. package/dist/{AdvancedDateRangePicker-Eh6n4ne0.d.ts → AdvancedDateRangePicker-ozItnkhp.d.ts} +1 -1
  3. package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.d.mts +1 -1
  4. package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.d.ts +1 -1
  5. package/dist/atom/AdvancedDateRangePicker/InternalCalendar.d.mts +1 -2
  6. package/dist/atom/AdvancedDateRangePicker/InternalCalendar.d.ts +1 -2
  7. package/dist/atom/LoadingSpinner/LoadingSpinner.d.mts +2 -2
  8. package/dist/atom/LoadingSpinner/LoadingSpinner.d.ts +2 -2
  9. package/dist/index.d.mts +14 -15
  10. package/dist/index.d.ts +14 -15
  11. package/dist/index.mjs +8 -8
  12. package/dist/styles.css +328 -312
  13. package/package.json +1 -1
  14. package/dist/AdvancedDateRangePicker-CN9WN0rH.d.mts +0 -56
  15. package/dist/AdvancedDateRangePicker-CN9WN0rH.d.ts +0 -56
  16. package/dist/AdvancedDateRangePicker-CzN1HGsC.d.mts +0 -57
  17. package/dist/AdvancedDateRangePicker-CzN1HGsC.d.ts +0 -57
  18. package/dist/AdvancedDateRangePicker-DAPxgRl3.d.mts +0 -54
  19. package/dist/AdvancedDateRangePicker-DAPxgRl3.d.ts +0 -54
  20. package/dist/AdvancedDateRangePicker-DW94285G.d.mts +0 -56
  21. package/dist/AdvancedDateRangePicker-DW94285G.d.ts +0 -56
  22. package/dist/Avatar-DX2JwvAs.d.mts +0 -17
  23. package/dist/Avatar-DX2JwvAs.d.ts +0 -17
  24. package/dist/Table-BA0D3p1m.d.mts +0 -78
  25. package/dist/Table-BA0D3p1m.d.ts +0 -78
  26. package/dist/Table-BLZ6c46U.d.mts +0 -77
  27. package/dist/Table-BLZ6c46U.d.ts +0 -77
  28. package/dist/Table-BMqYnFi4.d.mts +0 -25
  29. package/dist/Table-BMqYnFi4.d.ts +0 -25
  30. package/dist/Table-BRcthrYV.d.mts +0 -98
  31. package/dist/Table-BRcthrYV.d.ts +0 -98
  32. package/dist/Table-BWlFCfBG.d.mts +0 -106
  33. package/dist/Table-BWlFCfBG.d.ts +0 -106
  34. package/dist/Table-CHFmNrme.d.mts +0 -77
  35. package/dist/Table-CHFmNrme.d.ts +0 -77
  36. package/dist/Table-CX6UwQiD.d.mts +0 -116
  37. package/dist/Table-CX6UwQiD.d.ts +0 -116
  38. package/dist/Table-Chud2XSq.d.mts +0 -99
  39. package/dist/Table-Chud2XSq.d.ts +0 -99
  40. package/dist/Table-D5QRe_j3.d.mts +0 -121
  41. package/dist/Table-D5QRe_j3.d.ts +0 -121
  42. package/dist/Table-DAgFGahx.d.mts +0 -39
  43. package/dist/Table-DAgFGahx.d.ts +0 -39
  44. package/dist/Table-DWniK7At.d.mts +0 -87
  45. package/dist/Table-DWniK7At.d.ts +0 -87
  46. package/dist/Table-PyFlnUDu.d.mts +0 -47
  47. package/dist/Table-PyFlnUDu.d.ts +0 -47
  48. package/dist/Table-wqyg13Y9.d.mts +0 -77
  49. package/dist/Table-wqyg13Y9.d.ts +0 -77
  50. package/dist/Tag-l7I5oeyk.d.mts +0 -13
  51. package/dist/Tag-l7I5oeyk.d.ts +0 -13
  52. package/dist/atom/Table/LuminaPagination.d.mts +0 -7
  53. package/dist/atom/Table/LuminaPagination.d.ts +0 -7
  54. package/dist/atom/Table/LuminaPagination.js +0 -153
  55. package/dist/atom/Table/LuminaPagination.mjs +0 -9
  56. package/dist/atom/Table/TableAccordion.d.mts +0 -9
  57. package/dist/atom/Table/TableAccordion.d.ts +0 -9
  58. package/dist/atom/Table/TableAccordion.js +0 -91
  59. package/dist/atom/Table/TableAccordion.mjs +0 -10
  60. package/dist/atom/Table/TableColumnHeader.d.mts +0 -7
  61. package/dist/atom/Table/TableColumnHeader.d.ts +0 -7
  62. package/dist/atom/Table/TableColumnHeader.js +0 -151
  63. package/dist/atom/Table/TableColumnHeader.mjs +0 -10
  64. package/dist/atom/Table/TableToolbar.d.mts +0 -9
  65. package/dist/atom/Table/TableToolbar.d.ts +0 -9
  66. package/dist/atom/Table/TableToolbar.js +0 -114
  67. package/dist/atom/Table/TableToolbar.mjs +0 -10
  68. package/dist/atom/Table/__tests__/Table.test.d.mts +0 -2
  69. package/dist/atom/Table/__tests__/Table.test.d.ts +0 -2
  70. package/dist/atom/Table/__tests__/Table.test.js +0 -61133
  71. package/dist/atom/Table/__tests__/Table.test.mjs +0 -59522
  72. package/dist/atom/TableAccordion/index.d.mts +0 -17
  73. package/dist/atom/TableAccordion/index.d.ts +0 -17
  74. package/dist/atom/TableAccordion/index.js +0 -91
  75. package/dist/atom/TableAccordion/index.mjs +0 -9
  76. package/dist/atom/TableToolbar/index.d.mts +0 -23
  77. package/dist/atom/TableToolbar/index.d.ts +0 -23
  78. package/dist/atom/TableToolbar/index.js +0 -114
  79. package/dist/atom/TableToolbar/index.mjs +0 -9
  80. package/dist/chunk-2PIFDGVK.mjs +0 -420
  81. package/dist/chunk-35KDS27M.mjs +0 -618
  82. package/dist/chunk-3S4X3YO2.mjs +0 -64
  83. package/dist/chunk-3XUHGVYA.mjs +0 -77
  84. package/dist/chunk-5HF6Y37C.mjs +0 -642
  85. package/dist/chunk-5OGQ4YIR.mjs +0 -238
  86. package/dist/chunk-6FCSXN7R.mjs +0 -388
  87. package/dist/chunk-7W72LPSU.mjs +0 -66
  88. package/dist/chunk-A66QDQHK.mjs +0 -627
  89. package/dist/chunk-ABLIL47F.mjs +0 -618
  90. package/dist/chunk-AEPDEUGY.mjs +0 -627
  91. package/dist/chunk-AFLEGUF3.mjs +0 -232
  92. package/dist/chunk-APCEITHQ.mjs +0 -232
  93. package/dist/chunk-AVQBFGBT.mjs +0 -141
  94. package/dist/chunk-B5BOBELW.mjs +0 -213
  95. package/dist/chunk-BQ4PVLJ4.mjs +0 -262
  96. package/dist/chunk-DBNLBCQK.mjs +0 -64
  97. package/dist/chunk-DLLT6V65.mjs +0 -141
  98. package/dist/chunk-DOQQRYTS.mjs +0 -73
  99. package/dist/chunk-DSVR2DVF.mjs +0 -660
  100. package/dist/chunk-DXUPULDI.mjs +0 -424
  101. package/dist/chunk-E465D6OH.mjs +0 -644
  102. package/dist/chunk-E4FCLHYA.mjs +0 -678
  103. package/dist/chunk-ENQN5BAN.mjs +0 -225
  104. package/dist/chunk-F6VMSH4N.mjs +0 -79
  105. package/dist/chunk-FKGGN3FA.mjs +0 -412
  106. package/dist/chunk-GFTO2N3Q.mjs +0 -432
  107. package/dist/chunk-GM6H6RPJ.mjs +0 -232
  108. package/dist/chunk-HF3VJBMY.mjs +0 -244
  109. package/dist/chunk-HISCHZ5H.mjs +0 -77
  110. package/dist/chunk-HWQBE6PT.mjs +0 -99
  111. package/dist/chunk-HXM657YW.mjs +0 -115
  112. package/dist/chunk-I5VHKSQR.mjs +0 -64
  113. package/dist/chunk-ICSZZNTY.mjs +0 -384
  114. package/dist/chunk-IZGLD7U3.mjs +0 -667
  115. package/dist/chunk-J7X2PZG6.mjs +0 -232
  116. package/dist/chunk-JUXBLRMQ.mjs +0 -50
  117. package/dist/chunk-JXFSGADI.mjs +0 -678
  118. package/dist/chunk-KGKRSR6D.mjs +0 -388
  119. package/dist/chunk-KQKNFGWZ.mjs +0 -388
  120. package/dist/chunk-LCH4DXJY.mjs +0 -92
  121. package/dist/chunk-LCXU3K57.mjs +0 -232
  122. package/dist/chunk-LRN4XOIR.mjs +0 -71
  123. package/dist/chunk-LROMXY35.mjs +0 -116
  124. package/dist/chunk-LUNPHYAR.mjs +0 -681
  125. package/dist/chunk-LVOTEPLC.mjs +0 -64
  126. package/dist/chunk-M2ZM3X5Y.mjs +0 -56
  127. package/dist/chunk-M4MIYHAV.mjs +0 -43
  128. package/dist/chunk-M7F7DOC4.mjs +0 -41
  129. package/dist/chunk-MHWFVML4.mjs +0 -115
  130. package/dist/chunk-MPTVYTYS.mjs +0 -0
  131. package/dist/chunk-MQFW3LZR.mjs +0 -111
  132. package/dist/chunk-N355RJGH.mjs +0 -141
  133. package/dist/chunk-N3YFQDW7.mjs +0 -77
  134. package/dist/chunk-NGCBOOIE.mjs +0 -225
  135. package/dist/chunk-NWQQYJSP.mjs +0 -688
  136. package/dist/chunk-NYQV556V.mjs +0 -667
  137. package/dist/chunk-O5C3355V.mjs +0 -246
  138. package/dist/chunk-OCP43S7U.mjs +0 -241
  139. package/dist/chunk-OHLFRULE.mjs +0 -432
  140. package/dist/chunk-PLO46EKV.mjs +0 -65
  141. package/dist/chunk-PSBEYGD4.mjs +0 -618
  142. package/dist/chunk-PWIBJI6Z.mjs +0 -115
  143. package/dist/chunk-Q5KPXEH5.mjs +0 -223
  144. package/dist/chunk-QC34HHAY.mjs +0 -57
  145. package/dist/chunk-QVWV36BK.mjs +0 -73
  146. package/dist/chunk-QWK3MYDM.mjs +0 -64
  147. package/dist/chunk-RE44YAMD.mjs +0 -47
  148. package/dist/chunk-RH6DAYBU.mjs +0 -369
  149. package/dist/chunk-RSSEJENT.mjs +0 -269
  150. package/dist/chunk-SJBS5QCJ.mjs +0 -225
  151. package/dist/chunk-SWRFCTJW.mjs +0 -77
  152. package/dist/chunk-T4XNCAIB.mjs +0 -231
  153. package/dist/chunk-TCX5IFQ4.mjs +0 -627
  154. package/dist/chunk-TSAUBT2F.mjs +0 -74
  155. package/dist/chunk-U7Q7ILSE.mjs +0 -690
  156. package/dist/chunk-UHTUJJH7.mjs +0 -112
  157. package/dist/chunk-UOHYCMUS.mjs +0 -53
  158. package/dist/chunk-UQZBL3F7.mjs +0 -0
  159. package/dist/chunk-URGYNKJM.mjs +0 -229
  160. package/dist/chunk-UTMZY37A.mjs +0 -141
  161. package/dist/chunk-UUEPD2FH.mjs +0 -141
  162. package/dist/chunk-VQOUJQIF.mjs +0 -249
  163. package/dist/chunk-VY3QH43W.mjs +0 -6
  164. package/dist/chunk-W2N3AWY6.mjs +0 -80
  165. package/dist/chunk-WUVS6S7N.mjs +0 -119
  166. package/dist/chunk-WZS2K7X3.mjs +0 -688
  167. package/dist/chunk-X76GNSBB.mjs +0 -87
  168. package/dist/chunk-XG7CZXBW.mjs +0 -244
  169. package/dist/chunk-XXKIBYXD.mjs +0 -109
  170. package/dist/chunk-XXTUVMAY.mjs +0 -51
  171. package/dist/chunk-Y3BIY4DW.mjs +0 -618
  172. package/dist/chunk-Y7FP6ZMW.mjs +0 -225
  173. package/dist/chunk-YELLXCMY.mjs +0 -265
  174. package/dist/chunk-YQEEM26W.mjs +0 -232
  175. package/dist/chunk-ZGFE3OPJ.mjs +0 -678
  176. package/dist/chunk-ZMJ3KDDY.mjs +0 -618
  177. package/dist/chunk-ZYPWQ53U.mjs +0 -6
  178. package/dist/dist-U2IPN4FB.mjs +0 -567
  179. package/dist/magic-string.es-XOWQCRDO.mjs +0 -1311
  180. package/dist/types-CA0Wby2L.d.mts +0 -67
  181. package/dist/types-CA0Wby2L.d.ts +0 -67
  182. package/dist/types-CncMmuJM.d.mts +0 -44
  183. package/dist/types-CncMmuJM.d.ts +0 -44
  184. package/dist/types-D4fdeMWQ.d.mts +0 -62
  185. package/dist/types-D4fdeMWQ.d.ts +0 -62
@@ -1,232 +0,0 @@
1
- import {
2
- __objRest,
3
- __spreadProps,
4
- __spreadValues
5
- } from "./chunk-HWQBE6PT.mjs";
6
-
7
- // src/atom/Table/Table.tsx
8
- import * as React from "react";
9
- import { Table as AntTable } from "antd";
10
- import clsx from "clsx";
11
-
12
- // src/atom/Table/Table.module.scss
13
- var Table_module_default = { "tableWrapper": "Table-module__tableWrapper___3cqiD", "childVariant": "Table-module__childVariant___z8tqO", "table": "Table-module__table___5d7g0", "showHoverEffect": "Table-module__showHoverEffect___IyKyO", "columnHeader": "Table-module__columnHeader___Unr6d", "columnHeaderSortArea": "Table-module__columnHeaderSortArea___jrIYo", "columnHeaderLabel": "Table-module__columnHeaderLabel___A-mRu", "columnHeaderSortIcon": "Table-module__columnHeaderSortIcon___mWVZN", "columnHeaderSortIconActive": "Table-module__columnHeaderSortIconActive___wHAqC", "columnHeaderFilterWrapper": "Table-module__columnHeaderFilterWrapper___DnSve", "columnHeaderFilterBtn": "Table-module__columnHeaderFilterBtn___NR7DY", "columnHeaderFilterBtnActive": "Table-module__columnHeaderFilterBtnActive___JdO11", "columnHeaderFilterBadge": "Table-module__columnHeaderFilterBadge___-Q2T2", "columnHeaderFilterDropdown": "Table-module__columnHeaderFilterDropdown___M-fD4" };
14
-
15
- // src/atom/Table/Table.tsx
16
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
17
- function buildPagination(pagination) {
18
- if (pagination === false || pagination === void 0) {
19
- return false;
20
- }
21
- const defaults = {
22
- showSizeChanger: true,
23
- pageSizeOptions: [10, 25, 50],
24
- showTotal: (total, range) => `${range[0]}\u2013${range[1]} of ${total} items`
25
- };
26
- if (pagination === true) {
27
- return defaults;
28
- }
29
- return __spreadValues(__spreadValues({}, defaults), pagination);
30
- }
31
- function SortBothIcon() {
32
- return /* @__PURE__ */ jsxs("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", "aria-hidden": "true", children: [
33
- /* @__PURE__ */ jsx("path", { d: "M3.5 7.5L6 10L8.5 7.5", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round", strokeLinejoin: "round" }),
34
- /* @__PURE__ */ jsx("path", { d: "M3.5 4.5L6 2L8.5 4.5", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round", strokeLinejoin: "round" })
35
- ] });
36
- }
37
- function SortAscIcon() {
38
- return /* @__PURE__ */ jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx("path", { d: "M3.5 7.5L6 2L8.5 7.5", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round", strokeLinejoin: "round" }) });
39
- }
40
- function SortDescIcon() {
41
- return /* @__PURE__ */ jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", "aria-hidden": "true", children: /* @__PURE__ */ jsx("path", { d: "M3.5 4.5L6 10L8.5 4.5", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round", strokeLinejoin: "round" }) });
42
- }
43
- function FilterIcon() {
44
- return /* @__PURE__ */ jsxs("svg", { width: "13", height: "11", viewBox: "0 0 13 11", fill: "none", "aria-hidden": "true", children: [
45
- /* @__PURE__ */ jsx("path", { d: "M1 1H12", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round" }),
46
- /* @__PURE__ */ jsx("path", { d: "M2.5 4.5H10.5", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round" }),
47
- /* @__PURE__ */ jsx("path", { d: "M4.5 8H8.5", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round" })
48
- ] });
49
- }
50
- function nextSortOrder(current) {
51
- if (current === void 0) return "ascend";
52
- if (current === "ascend") return "descend";
53
- return void 0;
54
- }
55
- function ColumnHeader({
56
- label,
57
- sortable = false,
58
- sortOrder,
59
- onSortChange,
60
- sortIcon,
61
- filterCount = 0,
62
- filterIcon,
63
- filterContent
64
- }) {
65
- const [filterOpen, setFilterOpen] = React.useState(false);
66
- const wrapperRef = React.useRef(null);
67
- const filterActive = filterCount > 0;
68
- const hasFilter = filterContent !== void 0;
69
- React.useEffect(() => {
70
- if (!filterOpen) return;
71
- const onOutside = (e) => {
72
- if (wrapperRef.current && !wrapperRef.current.contains(e.target)) {
73
- setFilterOpen(false);
74
- }
75
- };
76
- document.addEventListener("mousedown", onOutside);
77
- return () => document.removeEventListener("mousedown", onOutside);
78
- }, [filterOpen]);
79
- return /* @__PURE__ */ jsxs("div", { className: Table_module_default.columnHeader, ref: wrapperRef, children: [
80
- sortable ? /* @__PURE__ */ jsxs(
81
- "button",
82
- {
83
- type: "button",
84
- className: Table_module_default.columnHeaderSortArea,
85
- onClick: () => onSortChange == null ? void 0 : onSortChange(nextSortOrder(sortOrder)),
86
- "aria-label": typeof label === "string" ? `Sort by ${label}` : "Sort",
87
- children: [
88
- /* @__PURE__ */ jsx("span", { className: Table_module_default.columnHeaderLabel, children: label }),
89
- /* @__PURE__ */ jsx(
90
- "span",
91
- {
92
- className: clsx(Table_module_default.columnHeaderSortIcon, {
93
- [Table_module_default.columnHeaderSortIconActive]: sortOrder !== void 0
94
- }),
95
- children: sortIcon != null ? sortIcon : /* @__PURE__ */ jsxs(Fragment, { children: [
96
- sortOrder === "ascend" && /* @__PURE__ */ jsx(SortAscIcon, {}),
97
- sortOrder === "descend" && /* @__PURE__ */ jsx(SortDescIcon, {}),
98
- sortOrder === void 0 && /* @__PURE__ */ jsx(SortBothIcon, {})
99
- ] })
100
- }
101
- )
102
- ]
103
- }
104
- ) : /* @__PURE__ */ jsx("span", { className: Table_module_default.columnHeaderLabel, children: label }),
105
- hasFilter && /* @__PURE__ */ jsxs("div", { className: Table_module_default.columnHeaderFilterWrapper, children: [
106
- /* @__PURE__ */ jsxs(
107
- "button",
108
- {
109
- type: "button",
110
- className: clsx(Table_module_default.columnHeaderFilterBtn, {
111
- [Table_module_default.columnHeaderFilterBtnActive]: filterActive
112
- }),
113
- onClick: () => setFilterOpen((v) => !v),
114
- "aria-label": typeof label === "string" ? `Filter ${label}` : "Filter",
115
- "aria-expanded": filterOpen,
116
- "aria-haspopup": "dialog",
117
- children: [
118
- filterIcon != null ? filterIcon : /* @__PURE__ */ jsx(FilterIcon, {}),
119
- filterActive && /* @__PURE__ */ jsx("span", { className: Table_module_default.columnHeaderFilterBadge, children: filterCount })
120
- ]
121
- }
122
- ),
123
- filterOpen && /* @__PURE__ */ jsx("div", { className: Table_module_default.columnHeaderFilterDropdown, role: "dialog", children: filterContent })
124
- ] })
125
- ] });
126
- }
127
- function processColumns(columns) {
128
- if (!columns) return void 0;
129
- return columns.map((col) => {
130
- const _a = col, { headerProps, title } = _a, rest = __objRest(_a, ["headerProps", "title"]);
131
- if (!headerProps) return __spreadValues({ title }, rest);
132
- return __spreadProps(__spreadValues({}, rest), {
133
- title: /* @__PURE__ */ jsx(ColumnHeader, __spreadValues({ label: title }, headerProps))
134
- });
135
- });
136
- }
137
- function Table(props) {
138
- const _a = props, {
139
- size = "middle",
140
- variant = "default",
141
- className = "",
142
- analytics: _analytics,
143
- pagination,
144
- columns,
145
- rowSelection,
146
- rowKey = "key",
147
- onRow,
148
- dataSource
149
- } = _a, rest = __objRest(_a, [
150
- "size",
151
- "variant",
152
- "className",
153
- "analytics",
154
- "pagination",
155
- "columns",
156
- "rowSelection",
157
- "rowKey",
158
- "onRow",
159
- "dataSource"
160
- ]);
161
- const isChildVariant = variant === "accordion-child" || variant === "toolbar-child";
162
- const resolvedPagination = buildPagination(pagination);
163
- const processedColumns = React.useMemo(
164
- () => processColumns(columns),
165
- // eslint-disable-next-line react-hooks/exhaustive-deps
166
- [columns]
167
- );
168
- const resolvedOnRow = React.useMemo(() => {
169
- const onChange = rowSelection == null ? void 0 : rowSelection.onChange;
170
- if (variant !== "selectable" || !onChange) return onRow;
171
- return (record, index) => {
172
- var _a2;
173
- const base = (_a2 = onRow == null ? void 0 : onRow(record, index)) != null ? _a2 : {};
174
- const getKey = (r, i) => typeof rowKey === "function" ? rowKey(r, i) : r[rowKey];
175
- return __spreadProps(__spreadValues({}, base), {
176
- style: __spreadValues({ cursor: "pointer" }, base.style),
177
- onClick: (e) => {
178
- var _a3, _b;
179
- (_a3 = base.onClick) == null ? void 0 : _a3.call(base, e);
180
- const key = getKey(record, index);
181
- const current = (_b = rowSelection.selectedRowKeys) != null ? _b : [];
182
- const isSelected = current.some((k) => k === key);
183
- const newKeys = isSelected ? current.filter((k) => k !== key) : [...current, key];
184
- const newRows = (dataSource != null ? dataSource : []).filter(
185
- (r) => newKeys.some((k) => k === getKey(r))
186
- );
187
- onChange(newKeys, newRows, { type: "single" });
188
- }
189
- });
190
- };
191
- }, [variant, rowSelection, rowKey, onRow, dataSource]);
192
- return /* @__PURE__ */ jsx(
193
- "div",
194
- {
195
- className: clsx(
196
- Table_module_default.tableWrapper,
197
- { [Table_module_default.childVariant]: isChildVariant },
198
- { [Table_module_default.showHoverEffect]: variant === "hover" || variant === "selectable" },
199
- `variant_${variant}`,
200
- className
201
- ),
202
- "data-testid": "lumina-table",
203
- children: /* @__PURE__ */ jsx(
204
- AntTable,
205
- __spreadValues({
206
- className: Table_module_default.table,
207
- size,
208
- pagination: resolvedPagination,
209
- columns: processedColumns,
210
- rowSelection,
211
- rowKey,
212
- onRow: resolvedOnRow,
213
- dataSource,
214
- rowClassName: (_, index) => {
215
- var _a2;
216
- const lastIndex = ((_a2 = dataSource == null ? void 0 : dataSource.length) != null ? _a2 : 0) - 1;
217
- if (index === 0) return Table_module_default.firstRow;
218
- if (index === lastIndex) return Table_module_default.lastRow;
219
- return "";
220
- }
221
- }, rest)
222
- )
223
- }
224
- );
225
- }
226
- Table.displayName = "Table";
227
- var Table_default = Table;
228
-
229
- export {
230
- Table,
231
- Table_default
232
- };
@@ -1,232 +0,0 @@
1
- import {
2
- __objRest,
3
- __spreadProps,
4
- __spreadValues
5
- } from "./chunk-FWCSY2DS.mjs";
6
-
7
- // src/atom/Table/Table.tsx
8
- import * as React from "react";
9
- import { Table as AntTable } from "antd";
10
- import clsx from "clsx";
11
-
12
- // src/atom/Table/Table.module.scss
13
- var Table_module_default = { "tableWrapper": "Table-module__tableWrapper___3cqiD", "isAccordion": "Table-module__isAccordion___-uIs6", "isToolbar": "Table-module__isToolbar___LdS-m", "table": "Table-module__table___5d7g0", "lastRow": "Table-module__lastRow___ahv4g", "showHoverEffect": "Table-module__showHoverEffect___IyKyO", "columnHeader": "Table-module__columnHeader___Unr6d", "columnHeaderLeft": "Table-module__columnHeaderLeft___mp7pK", "columnHeaderSortArea": "Table-module__columnHeaderSortArea___jrIYo", "columnHeaderLabel": "Table-module__columnHeaderLabel___A-mRu", "columnHeaderSortIcon": "Table-module__columnHeaderSortIcon___mWVZN", "columnHeaderSortIconActive": "Table-module__columnHeaderSortIconActive___wHAqC", "columnHeaderFilterWrapper": "Table-module__columnHeaderFilterWrapper___DnSve", "columnHeaderFilterBtn": "Table-module__columnHeaderFilterBtn___NR7DY", "columnHeaderFilterBtnActive": "Table-module__columnHeaderFilterBtnActive___JdO11", "columnHeaderFilterBadge": "Table-module__columnHeaderFilterBadge___-Q2T2", "columnHeaderFilterDropdown": "Table-module__columnHeaderFilterDropdown___M-fD4" };
14
-
15
- // src/atom/Table/Table.tsx
16
- import { jsx, jsxs } from "react/jsx-runtime";
17
- function buildPagination(pagination, overrides = {}) {
18
- var _a, _b, _c, _d;
19
- if (pagination === false) {
20
- return false;
21
- }
22
- const defaults = {
23
- showSizeChanger: true,
24
- pageSizeOptions: ["10", "25", "50"],
25
- locale: { items_per_page: "" },
26
- // Removes "/ page" text
27
- showTotal: (total, range) => `${range[0]}\u2013${range[1]} of ${total} items`
28
- };
29
- const baseConfig = pagination === true || pagination === void 0 ? defaults : __spreadValues(__spreadValues({}, defaults), pagination);
30
- return __spreadProps(__spreadValues({}, baseConfig), {
31
- total: (_a = overrides.total) != null ? _a : baseConfig.total,
32
- current: (_b = overrides.current) != null ? _b : baseConfig.current,
33
- pageSize: (_c = overrides.pageSize) != null ? _c : baseConfig.pageSize,
34
- onChange: (_d = overrides.onChange) != null ? _d : baseConfig.onChange
35
- });
36
- }
37
- function nextSortOrder(current) {
38
- if (current === void 0) return "ascend";
39
- if (current === "ascend") return "descend";
40
- return void 0;
41
- }
42
- function ColumnHeader({
43
- label,
44
- sortable = false,
45
- sortOrder,
46
- onSortChange,
47
- sortIcon,
48
- filterCount = 0,
49
- filterIcon,
50
- filterContent,
51
- className = ""
52
- }) {
53
- const [filterOpen, setFilterOpen] = React.useState(false);
54
- const wrapperRef = React.useRef(null);
55
- const filterActive = filterCount > 0;
56
- const hasFilter = filterContent !== void 0 && filterIcon !== void 0;
57
- const hasSort = sortable && sortIcon !== void 0;
58
- React.useEffect(() => {
59
- if (!filterOpen) return;
60
- const onOutside = (e) => {
61
- if (wrapperRef.current && !wrapperRef.current.contains(e.target)) {
62
- setFilterOpen(false);
63
- }
64
- };
65
- document.addEventListener("mousedown", onOutside);
66
- return () => document.removeEventListener("mousedown", onOutside);
67
- }, [filterOpen]);
68
- return /* @__PURE__ */ jsxs("div", { className: Table_module_default.columnHeader, ref: wrapperRef, children: [
69
- /* @__PURE__ */ jsx("div", { className: Table_module_default.columnHeaderLeft, children: hasSort ? /* @__PURE__ */ jsxs(
70
- "button",
71
- {
72
- type: "button",
73
- className: Table_module_default.columnHeaderSortArea,
74
- onClick: () => onSortChange == null ? void 0 : onSortChange(nextSortOrder(sortOrder)),
75
- "aria-label": typeof label === "string" ? `Sort by ${label}` : "Sort",
76
- children: [
77
- /* @__PURE__ */ jsx("span", { className: clsx(Table_module_default.columnHeaderLabel, "tw-typography-caption2Bold tw-text-color-text-weak", className), children: label }),
78
- /* @__PURE__ */ jsx(
79
- "span",
80
- {
81
- className: clsx(Table_module_default.columnHeaderSortIcon, {
82
- [Table_module_default.columnHeaderSortIconActive]: sortOrder !== void 0
83
- }),
84
- children: sortIcon
85
- }
86
- )
87
- ]
88
- }
89
- ) : /* @__PURE__ */ jsx("span", { className: clsx(Table_module_default.columnHeaderLabel, "tw-typography-caption2Bold tw-text-color-text-weak", className), children: label }) }),
90
- hasFilter && /* @__PURE__ */ jsxs("div", { className: Table_module_default.columnHeaderFilterWrapper, children: [
91
- /* @__PURE__ */ jsxs(
92
- "button",
93
- {
94
- type: "button",
95
- className: clsx(Table_module_default.columnHeaderFilterBtn, {
96
- [Table_module_default.columnHeaderFilterBtnActive]: filterActive
97
- }),
98
- onClick: () => setFilterOpen((v) => !v),
99
- "aria-label": typeof label === "string" ? `Filter ${label}` : "Filter",
100
- "aria-expanded": filterOpen,
101
- "aria-haspopup": "dialog",
102
- children: [
103
- filterIcon,
104
- filterActive && /* @__PURE__ */ jsx("span", { className: Table_module_default.columnHeaderFilterBadge, children: filterCount })
105
- ]
106
- }
107
- ),
108
- filterOpen && /* @__PURE__ */ jsx("div", { className: Table_module_default.columnHeaderFilterDropdown, role: "dialog", children: filterContent })
109
- ] })
110
- ] });
111
- }
112
- function processColumns(columns) {
113
- if (!columns) return void 0;
114
- return columns.map((col) => {
115
- const _a = col, { headerProps, title } = _a, rest = __objRest(_a, ["headerProps", "title"]);
116
- if (!headerProps) return __spreadValues({ title }, rest);
117
- return __spreadProps(__spreadValues({}, rest), {
118
- title: /* @__PURE__ */ jsx(ColumnHeader, __spreadValues({ label: title }, headerProps))
119
- });
120
- });
121
- }
122
- function Table(props) {
123
- const _a = props, {
124
- size = "middle",
125
- variant = "default",
126
- isAccordion = false,
127
- isToolbar = false,
128
- className = "",
129
- pagination,
130
- total,
131
- current,
132
- pageSize,
133
- onPaginationChange,
134
- columns,
135
- rowSelection,
136
- rowKey = "key",
137
- onRow,
138
- dataSource
139
- } = _a, rest = __objRest(_a, [
140
- "size",
141
- "variant",
142
- "isAccordion",
143
- "isToolbar",
144
- "className",
145
- "pagination",
146
- "total",
147
- "current",
148
- "pageSize",
149
- "onPaginationChange",
150
- "columns",
151
- "rowSelection",
152
- "rowKey",
153
- "onRow",
154
- "dataSource"
155
- ]);
156
- const isChildVariant = isAccordion || isToolbar;
157
- const resolvedPagination = buildPagination(pagination, {
158
- total,
159
- current,
160
- pageSize,
161
- onChange: onPaginationChange
162
- });
163
- const processedColumns = React.useMemo(
164
- () => processColumns(columns),
165
- // eslint-disable-next-line react-hooks/exhaustive-deps
166
- [columns]
167
- );
168
- const resolvedOnRow = React.useMemo(() => {
169
- const onChange = rowSelection == null ? void 0 : rowSelection.onChange;
170
- if (variant !== "selectable" || !onChange) return onRow;
171
- return (record, index) => {
172
- var _a2;
173
- const base = (_a2 = onRow == null ? void 0 : onRow(record, index)) != null ? _a2 : {};
174
- const getKey = (r, i) => typeof rowKey === "function" ? rowKey(r, i) : r[rowKey];
175
- return __spreadProps(__spreadValues({}, base), {
176
- style: __spreadValues({ cursor: "pointer" }, base.style),
177
- onClick: (e) => {
178
- var _a3, _b;
179
- (_a3 = base.onClick) == null ? void 0 : _a3.call(base, e);
180
- const key = getKey(record, index);
181
- const current2 = (_b = rowSelection.selectedRowKeys) != null ? _b : [];
182
- const isSelected = current2.some((k) => k === key);
183
- const newKeys = isSelected ? current2.filter((k) => k !== key) : [...current2, key];
184
- const newRows = (dataSource != null ? dataSource : []).filter(
185
- (r) => newKeys.some((k) => k === getKey(r))
186
- );
187
- onChange(newKeys, newRows, { type: "single" });
188
- }
189
- });
190
- };
191
- }, [variant, rowSelection, rowKey, onRow, dataSource]);
192
- return /* @__PURE__ */ jsx(
193
- "div",
194
- {
195
- className: clsx(
196
- Table_module_default.tableWrapper,
197
- Table_module_default.showHoverEffect,
198
- { [Table_module_default.isAccordion]: isAccordion },
199
- { [Table_module_default.isToolbar]: isToolbar },
200
- className
201
- ),
202
- "data-testid": "lumina-table",
203
- children: /* @__PURE__ */ jsx(
204
- AntTable,
205
- __spreadValues({
206
- className: Table_module_default.table,
207
- size,
208
- pagination: resolvedPagination,
209
- columns: processedColumns,
210
- rowSelection,
211
- rowKey,
212
- onRow: resolvedOnRow,
213
- dataSource,
214
- rowClassName: (_, index) => {
215
- var _a2;
216
- return clsx({
217
- [Table_module_default.firstRow]: index === 0,
218
- [Table_module_default.lastRow]: index === ((_a2 = dataSource == null ? void 0 : dataSource.length) != null ? _a2 : 0) - 1
219
- });
220
- }
221
- }, rest)
222
- )
223
- }
224
- );
225
- }
226
- Table.displayName = "Table";
227
- var Table_default = Table;
228
-
229
- export {
230
- Table,
231
- Table_default
232
- };
@@ -1,141 +0,0 @@
1
- import {
2
- Button
3
- } from "./chunk-AF2RKLH6.mjs";
4
- import {
5
- __objRest,
6
- __spreadProps,
7
- __spreadValues
8
- } from "./chunk-HWQBE6PT.mjs";
9
-
10
- // src/atom/Modal/Modal.tsx
11
- import { Modal as AntModal } from "antd";
12
- import clsx from "clsx";
13
-
14
- // src/atom/Modal/Modal.module.scss
15
- var Modal_module_default = { "modal": "Modal-module__modal___PKrAi", "footerMargintopDisable": "Modal-module__footerMargintopDisable___4B6u-", "ant-modal-footer": "Modal-module__ant-modal-footer___HKsDR", "okBtn": "Modal-module__okBtn___Ut8e5", "cancelBtn": "Modal-module__cancelBtn___i0Rm8" };
16
-
17
- // src/atom/Modal/Modal.tsx
18
- import { jsx, jsxs } from "react/jsx-runtime";
19
- var Close = (_a) => {
20
- var _b = _a, { size = 14, color = "#B6BAC3" } = _b, rest = __objRest(_b, ["size", "color"]);
21
- return /* @__PURE__ */ jsx(
22
- "svg",
23
- __spreadProps(__spreadValues({
24
- width: size,
25
- height: size,
26
- viewBox: "0 0 14 14",
27
- fill: "none",
28
- xmlns: "http://www.w3.org/2000/svg"
29
- }, rest), {
30
- children: /* @__PURE__ */ jsx(
31
- "path",
32
- {
33
- d: "M0.292893 0.292893C0.683417 -0.0976311 1.31658 -0.0976311 1.70711 0.292893L7 5.58579L12.2929 0.292893C12.6834 -0.0976311 13.3166 -0.0976311 13.7071 0.292893C14.0976 0.683417 14.0976 1.31658 13.7071 1.70711L8.41421 7L13.7071 12.2929C14.0976 12.6834 14.0976 13.3166 13.7071 13.7071C13.3166 14.0976 12.6834 14.0976 12.2929 13.7071L7 8.41421L1.70711 13.7071C1.31658 14.0976 0.683417 14.0976 0.292893 13.7071C-0.0976311 13.3166 -0.0976311 12.6834 0.292893 12.2929L5.58579 7L0.292893 1.70711C-0.0976311 1.31658 -0.0976311 0.683417 0.292893 0.292893Z",
34
- fill: color
35
- }
36
- )
37
- })
38
- );
39
- };
40
- var Modal = (_a) => {
41
- var _b = _a, {
42
- className = "",
43
- title = "",
44
- children,
45
- open = false,
46
- handleOk,
47
- handleCancel,
48
- okText = "",
49
- cancelText = "",
50
- closeIcon = /* @__PURE__ */ jsx(Close, { color: "#6B7280" }),
51
- bodyClassName = "modalBody",
52
- outsideClickDisable = false,
53
- hideCross = false,
54
- okButtonLoading = false,
55
- okButtonDisabled = false,
56
- variant = "primary",
57
- okBtnClasses = "",
58
- cancelButtonAnalytics = {},
59
- okButtonAnalytics = {},
60
- footerMargintopDisable = true
61
- } = _b, rest = __objRest(_b, [
62
- "className",
63
- "title",
64
- "children",
65
- "open",
66
- "handleOk",
67
- "handleCancel",
68
- "okText",
69
- "cancelText",
70
- "closeIcon",
71
- "bodyClassName",
72
- "outsideClickDisable",
73
- "hideCross",
74
- "okButtonLoading",
75
- "okButtonDisabled",
76
- "variant",
77
- "okBtnClasses",
78
- "cancelButtonAnalytics",
79
- "okButtonAnalytics",
80
- "footerMargintopDisable"
81
- ]);
82
- return /* @__PURE__ */ jsx("div", { onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsx(
83
- AntModal,
84
- __spreadProps(__spreadValues({
85
- title,
86
- open,
87
- onOk: handleOk,
88
- onCancel: handleCancel,
89
- className: clsx(Modal_module_default.modal, className, {
90
- footerMargintopDisable
91
- }),
92
- okText,
93
- cancelText,
94
- closeIcon,
95
- closable: !hideCross,
96
- maskClosable: !outsideClickDisable,
97
- footer: okText || cancelText ? /* @__PURE__ */ jsxs(
98
- "div",
99
- {
100
- className: clsx({
101
- primaryFooter: variant === "primary",
102
- secondaryFooter: variant === "secondary"
103
- }),
104
- children: [
105
- cancelText && /* @__PURE__ */ jsx(
106
- Button,
107
- __spreadProps(__spreadValues({
108
- onClick: handleCancel,
109
- type: "secondary",
110
- className: "cancelBtn",
111
- variant: "subtle"
112
- }, cancelButtonAnalytics), {
113
- children: cancelText
114
- })
115
- ),
116
- okText && /* @__PURE__ */ jsx(
117
- Button,
118
- __spreadProps(__spreadValues({
119
- onClick: handleOk,
120
- className: clsx(okBtnClasses, "okBtn"),
121
- loading: okButtonLoading,
122
- disabled: okButtonDisabled
123
- }, okButtonAnalytics), {
124
- children: okText
125
- })
126
- )
127
- ]
128
- }
129
- ) : null
130
- }, rest), {
131
- children: /* @__PURE__ */ jsx("div", { className: bodyClassName, children })
132
- })
133
- ) });
134
- };
135
- Modal.displayName = "Modal";
136
- var Modal_default = Modal;
137
-
138
- export {
139
- Modal,
140
- Modal_default
141
- };