@itilite/lumina-ui 0.0.323 → 1.0.0-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.
- package/README.md +43 -10
- package/dist/AdvancedDateRangePicker-CN9WN0rH.d.mts +56 -0
- package/dist/AdvancedDateRangePicker-CN9WN0rH.d.ts +56 -0
- package/dist/AdvancedDateRangePicker-CzN1HGsC.d.mts +57 -0
- package/dist/AdvancedDateRangePicker-CzN1HGsC.d.ts +57 -0
- package/dist/AdvancedDateRangePicker-DAPxgRl3.d.mts +54 -0
- package/dist/AdvancedDateRangePicker-DAPxgRl3.d.ts +54 -0
- package/dist/AdvancedDateRangePicker-DW94285G.d.mts +56 -0
- package/dist/AdvancedDateRangePicker-DW94285G.d.ts +56 -0
- package/dist/AdvancedDateRangePicker-Eh6n4ne0.d.mts +57 -0
- package/dist/AdvancedDateRangePicker-Eh6n4ne0.d.ts +57 -0
- package/dist/Avatar-DX2JwvAs.d.mts +17 -0
- package/dist/Avatar-DX2JwvAs.d.ts +17 -0
- package/dist/Table-BA0D3p1m.d.mts +78 -0
- package/dist/Table-BA0D3p1m.d.ts +78 -0
- package/dist/Table-BLZ6c46U.d.mts +77 -0
- package/dist/Table-BLZ6c46U.d.ts +77 -0
- package/dist/Table-BMqYnFi4.d.mts +25 -0
- package/dist/Table-BMqYnFi4.d.ts +25 -0
- package/dist/Table-BOq-_9Nr.d.mts +121 -0
- package/dist/Table-BOq-_9Nr.d.ts +121 -0
- package/dist/Table-BRcthrYV.d.mts +98 -0
- package/dist/Table-BRcthrYV.d.ts +98 -0
- package/dist/Table-BWlFCfBG.d.mts +106 -0
- package/dist/Table-BWlFCfBG.d.ts +106 -0
- package/dist/Table-CHFmNrme.d.mts +77 -0
- package/dist/Table-CHFmNrme.d.ts +77 -0
- package/dist/Table-CX6UwQiD.d.mts +116 -0
- package/dist/Table-CX6UwQiD.d.ts +116 -0
- package/dist/Table-Chud2XSq.d.mts +99 -0
- package/dist/Table-Chud2XSq.d.ts +99 -0
- package/dist/Table-D5QRe_j3.d.mts +121 -0
- package/dist/Table-D5QRe_j3.d.ts +121 -0
- package/dist/Table-DAgFGahx.d.mts +39 -0
- package/dist/Table-DAgFGahx.d.ts +39 -0
- package/dist/Table-DWniK7At.d.mts +87 -0
- package/dist/Table-DWniK7At.d.ts +87 -0
- package/dist/Table-PyFlnUDu.d.mts +47 -0
- package/dist/Table-PyFlnUDu.d.ts +47 -0
- package/dist/Table-wqyg13Y9.d.mts +77 -0
- package/dist/Table-wqyg13Y9.d.ts +77 -0
- package/dist/Tag-l7I5oeyk.d.mts +13 -0
- package/dist/Tag-l7I5oeyk.d.ts +13 -0
- package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.d.mts +2 -0
- package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.d.ts +2 -0
- package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.js +791 -0
- package/dist/atom/AdvancedDateRangePicker/AdvancedDateRangePicker.mjs +11 -0
- package/dist/atom/AdvancedDateRangePicker/InternalCalendar.d.mts +18 -0
- package/dist/atom/AdvancedDateRangePicker/InternalCalendar.d.ts +18 -0
- package/dist/atom/AdvancedDateRangePicker/InternalCalendar.js +370 -0
- package/dist/atom/AdvancedDateRangePicker/InternalCalendar.mjs +8 -0
- package/dist/atom/Avatar/Avatar.d.mts +9 -0
- package/dist/atom/Avatar/Avatar.d.ts +9 -0
- package/dist/atom/Avatar/Avatar.js +123 -0
- package/dist/atom/Avatar/Avatar.mjs +9 -0
- package/dist/{Button.js → atom/Button/Button.js} +4 -4
- package/dist/{Button.mjs → atom/Button/Button.mjs} +2 -2
- package/dist/{Checkbox.js → atom/Checkbox/Checkbox.js} +4 -4
- package/dist/{Checkbox.mjs → atom/Checkbox/Checkbox.mjs} +2 -2
- package/dist/atom/LoadingSpinner/LoadingSpinner.d.mts +19 -0
- package/dist/atom/LoadingSpinner/LoadingSpinner.d.ts +19 -0
- package/dist/atom/LoadingSpinner/LoadingSpinner.js +90 -0
- package/dist/atom/LoadingSpinner/LoadingSpinner.mjs +9 -0
- package/dist/atom/Modal/Modal.d.mts +25 -0
- package/dist/atom/Modal/Modal.d.ts +25 -0
- package/dist/atom/Modal/Modal.js +267 -0
- package/dist/atom/Modal/Modal.mjs +10 -0
- package/dist/atom/Radio/Radio.d.mts +17 -0
- package/dist/atom/Radio/Radio.d.ts +17 -0
- package/dist/atom/Radio/Radio.js +122 -0
- package/dist/atom/Radio/Radio.mjs +9 -0
- package/dist/atom/RangePicker/Chevron.d.mts +13 -0
- package/dist/atom/RangePicker/Chevron.d.ts +13 -0
- package/dist/atom/RangePicker/Chevron.js +110 -0
- package/dist/atom/RangePicker/Chevron.mjs +7 -0
- package/dist/atom/RangePicker/RangePicker.d.mts +26 -0
- package/dist/atom/RangePicker/RangePicker.d.ts +26 -0
- package/dist/atom/RangePicker/RangePicker.js +1465 -0
- package/dist/atom/RangePicker/RangePicker.mjs +13 -0
- package/dist/atom/Select/Select.d.mts +40 -0
- package/dist/atom/Select/Select.d.ts +40 -0
- package/dist/atom/Select/Select.js +805 -0
- package/dist/atom/Select/Select.mjs +11 -0
- package/dist/atom/Slider/Slider.d.mts +34 -0
- package/dist/atom/Slider/Slider.d.ts +34 -0
- package/dist/atom/Slider/Slider.js +107 -0
- package/dist/atom/Slider/Slider.mjs +9 -0
- package/dist/atom/Switch/Switch.d.mts +13 -0
- package/dist/atom/Switch/Switch.d.ts +13 -0
- package/dist/atom/Switch/Switch.js +102 -0
- package/dist/atom/Switch/Switch.mjs +9 -0
- package/dist/atom/Table/LuminaPagination.d.mts +7 -0
- package/dist/atom/Table/LuminaPagination.d.ts +7 -0
- package/dist/atom/Table/LuminaPagination.js +153 -0
- package/dist/atom/Table/LuminaPagination.mjs +9 -0
- package/dist/atom/Table/Table.d.mts +3 -0
- package/dist/atom/Table/Table.d.ts +3 -0
- package/dist/atom/Table/Table.js +306 -0
- package/dist/atom/Table/Table.mjs +9 -0
- package/dist/atom/Table/TableAccordion.d.mts +9 -0
- package/dist/atom/Table/TableAccordion.d.ts +9 -0
- package/dist/atom/Table/TableAccordion.js +91 -0
- package/dist/atom/Table/TableAccordion.mjs +10 -0
- package/dist/atom/Table/TableColumnHeader.d.mts +7 -0
- package/dist/atom/Table/TableColumnHeader.d.ts +7 -0
- package/dist/atom/Table/TableColumnHeader.js +151 -0
- package/dist/atom/Table/TableColumnHeader.mjs +10 -0
- package/dist/atom/Table/TableToolbar.d.mts +9 -0
- package/dist/atom/Table/TableToolbar.d.ts +9 -0
- package/dist/atom/Table/TableToolbar.js +114 -0
- package/dist/atom/Table/TableToolbar.mjs +10 -0
- package/dist/atom/Table/__tests__/Table.test.d.mts +2 -0
- package/dist/atom/Table/__tests__/Table.test.d.ts +2 -0
- package/dist/atom/Table/__tests__/Table.test.js +61133 -0
- package/dist/atom/Table/__tests__/Table.test.mjs +59522 -0
- package/dist/atom/TableAccordion/index.d.mts +17 -0
- package/dist/atom/TableAccordion/index.d.ts +17 -0
- package/dist/atom/TableAccordion/index.js +91 -0
- package/dist/atom/TableAccordion/index.mjs +9 -0
- package/dist/atom/TableToolbar/index.d.mts +23 -0
- package/dist/atom/TableToolbar/index.d.ts +23 -0
- package/dist/atom/TableToolbar/index.js +114 -0
- package/dist/atom/TableToolbar/index.mjs +9 -0
- package/dist/atom/Tag/Tag.d.mts +6 -0
- package/dist/atom/Tag/Tag.d.ts +6 -0
- package/dist/atom/Tag/Tag.js +108 -0
- package/dist/atom/Tag/Tag.mjs +9 -0
- package/dist/atom/Tooltip/Tooltip.d.mts +12 -0
- package/dist/atom/Tooltip/Tooltip.d.ts +12 -0
- package/dist/atom/Tooltip/Tooltip.js +97 -0
- package/dist/atom/Tooltip/Tooltip.mjs +9 -0
- package/dist/chunk-2EBPXGRY.mjs +65 -0
- package/dist/chunk-2PIFDGVK.mjs +420 -0
- package/dist/chunk-35KDS27M.mjs +618 -0
- package/dist/chunk-3S4X3YO2.mjs +64 -0
- package/dist/chunk-3XUHGVYA.mjs +77 -0
- package/dist/chunk-4JX54OKI.mjs +627 -0
- package/dist/chunk-4VZB2KR2.mjs +51 -0
- package/dist/chunk-5HF6Y37C.mjs +642 -0
- package/dist/chunk-5OGQ4YIR.mjs +238 -0
- package/dist/chunk-6FCSXN7R.mjs +388 -0
- package/dist/chunk-7W72LPSU.mjs +66 -0
- package/dist/chunk-A66QDQHK.mjs +627 -0
- package/dist/chunk-ABLIL47F.mjs +618 -0
- package/dist/chunk-AEPDEUGY.mjs +627 -0
- package/dist/chunk-AF2RKLH6.mjs +77 -0
- package/dist/chunk-AFLEGUF3.mjs +232 -0
- package/dist/chunk-APCEITHQ.mjs +232 -0
- package/dist/chunk-AVQBFGBT.mjs +141 -0
- package/dist/chunk-B5BOBELW.mjs +213 -0
- package/dist/chunk-BQ4PVLJ4.mjs +262 -0
- package/dist/chunk-D3N7VFER.mjs +73 -0
- package/dist/{chunk-OMYHSSPQ.mjs → chunk-DBNLBCQK.mjs} +5 -5
- package/dist/chunk-DLLT6V65.mjs +141 -0
- package/dist/chunk-DOQQRYTS.mjs +73 -0
- package/dist/chunk-DSVR2DVF.mjs +660 -0
- package/dist/chunk-DXUPULDI.mjs +424 -0
- package/dist/chunk-E465D6OH.mjs +644 -0
- package/dist/chunk-E4FCLHYA.mjs +678 -0
- package/dist/chunk-ENQN5BAN.mjs +225 -0
- package/dist/chunk-F6VMSH4N.mjs +79 -0
- package/dist/chunk-FKGGN3FA.mjs +412 -0
- package/dist/chunk-GFTO2N3Q.mjs +432 -0
- package/dist/chunk-GM6H6RPJ.mjs +232 -0
- package/dist/chunk-GU5F7Z7I.mjs +681 -0
- package/dist/chunk-HF3VJBMY.mjs +244 -0
- package/dist/{chunk-ME35H7QC.mjs → chunk-HISCHZ5H.mjs} +4 -4
- package/dist/chunk-HWQBE6PT.mjs +99 -0
- package/dist/chunk-HXM657YW.mjs +115 -0
- package/dist/chunk-I5VHKSQR.mjs +64 -0
- package/dist/chunk-ICSZZNTY.mjs +384 -0
- package/dist/chunk-IWO2Y5QX.mjs +89 -0
- package/dist/chunk-IZGLD7U3.mjs +667 -0
- package/dist/chunk-J7X2PZG6.mjs +232 -0
- package/dist/chunk-JUXBLRMQ.mjs +50 -0
- package/dist/chunk-JXFSGADI.mjs +678 -0
- package/dist/chunk-KGKRSR6D.mjs +388 -0
- package/dist/chunk-KQKNFGWZ.mjs +388 -0
- package/dist/chunk-LCH4DXJY.mjs +92 -0
- package/dist/chunk-LCXU3K57.mjs +232 -0
- package/dist/chunk-LRN4XOIR.mjs +71 -0
- package/dist/chunk-LROMXY35.mjs +116 -0
- package/dist/chunk-LUNPHYAR.mjs +681 -0
- package/dist/chunk-LVOTEPLC.mjs +64 -0
- package/dist/chunk-M2ZM3X5Y.mjs +56 -0
- package/dist/chunk-M4MIYHAV.mjs +43 -0
- package/dist/chunk-M7F7DOC4.mjs +41 -0
- package/dist/chunk-MHWFVML4.mjs +115 -0
- package/dist/chunk-MLCMZRUC.mjs +50 -0
- package/dist/chunk-MNARBWAJ.mjs +47 -0
- package/dist/chunk-MPTVYTYS.mjs +0 -0
- package/dist/chunk-MQFW3LZR.mjs +111 -0
- package/dist/chunk-N2WTNCQU.mjs +66 -0
- package/dist/chunk-N355RJGH.mjs +141 -0
- package/dist/chunk-N3YFQDW7.mjs +77 -0
- package/dist/chunk-N4DPPZVJ.mjs +269 -0
- package/dist/chunk-NGCBOOIE.mjs +225 -0
- package/dist/chunk-NWQQYJSP.mjs +688 -0
- package/dist/chunk-NYQV556V.mjs +667 -0
- package/dist/chunk-O5C3355V.mjs +246 -0
- package/dist/chunk-OCP43S7U.mjs +241 -0
- package/dist/chunk-OHLFRULE.mjs +432 -0
- package/dist/chunk-PLO46EKV.mjs +65 -0
- package/dist/chunk-PQ3B2FEB.mjs +249 -0
- package/dist/chunk-PSBEYGD4.mjs +618 -0
- package/dist/chunk-PWIBJI6Z.mjs +115 -0
- package/dist/chunk-Q5KPXEH5.mjs +223 -0
- package/dist/chunk-QC34HHAY.mjs +57 -0
- package/dist/chunk-QKTMWS4J.mjs +43 -0
- package/dist/chunk-QVWV36BK.mjs +73 -0
- package/dist/chunk-QWK3MYDM.mjs +64 -0
- package/dist/chunk-RE44YAMD.mjs +47 -0
- package/dist/chunk-RH6DAYBU.mjs +369 -0
- package/dist/chunk-RSSEJENT.mjs +269 -0
- package/dist/chunk-SJBS5QCJ.mjs +225 -0
- package/dist/chunk-SWRFCTJW.mjs +77 -0
- package/dist/chunk-T4XNCAIB.mjs +231 -0
- package/dist/chunk-TCX5IFQ4.mjs +627 -0
- package/dist/chunk-TSAUBT2F.mjs +74 -0
- package/dist/chunk-U7Q7ILSE.mjs +690 -0
- package/dist/chunk-UHTUJJH7.mjs +112 -0
- package/dist/chunk-UOHYCMUS.mjs +53 -0
- package/dist/chunk-UQJ3BDM4.mjs +141 -0
- package/dist/chunk-UQZBL3F7.mjs +0 -0
- package/dist/chunk-UQZNUEZE.mjs +64 -0
- package/dist/chunk-URGYNKJM.mjs +229 -0
- package/dist/chunk-UTMZY37A.mjs +141 -0
- package/dist/chunk-UUEPD2FH.mjs +141 -0
- package/dist/chunk-V3CHJHUX.mjs +424 -0
- package/dist/chunk-VQOUJQIF.mjs +249 -0
- package/dist/chunk-VY3QH43W.mjs +6 -0
- package/dist/chunk-W2N3AWY6.mjs +80 -0
- package/dist/chunk-WUVS6S7N.mjs +119 -0
- package/dist/chunk-WZS2K7X3.mjs +688 -0
- package/dist/chunk-X76GNSBB.mjs +87 -0
- package/dist/chunk-XG7CZXBW.mjs +244 -0
- package/dist/chunk-XXKIBYXD.mjs +109 -0
- package/dist/chunk-XXTUVMAY.mjs +51 -0
- package/dist/chunk-Y3BIY4DW.mjs +618 -0
- package/dist/chunk-Y7FP6ZMW.mjs +225 -0
- package/dist/chunk-YELLXCMY.mjs +265 -0
- package/dist/chunk-YQEEM26W.mjs +232 -0
- package/dist/chunk-ZGFE3OPJ.mjs +678 -0
- package/dist/chunk-ZMJ3KDDY.mjs +618 -0
- package/dist/chunk-ZTRM4HZJ.mjs +53 -0
- package/dist/chunk-ZYPWQ53U.mjs +6 -0
- package/dist/dist-U2IPN4FB.mjs +567 -0
- package/dist/index.d.mts +20 -2
- package/dist/index.d.ts +20 -2
- package/dist/index.js +2820 -13
- package/dist/index.mjs +59 -5
- package/dist/magic-string.es-XOWQCRDO.mjs +1311 -0
- package/dist/molecules/UserProfile/UserProfile.d.mts +23 -0
- package/dist/molecules/UserProfile/UserProfile.d.ts +23 -0
- package/dist/molecules/UserProfile/UserProfile.js +243 -0
- package/dist/molecules/UserProfile/UserProfile.mjs +11 -0
- package/dist/styles.css +1802 -1067
- package/dist/types-CA0Wby2L.d.mts +67 -0
- package/dist/types-CA0Wby2L.d.ts +67 -0
- package/dist/types-CncMmuJM.d.mts +44 -0
- package/dist/types-CncMmuJM.d.ts +44 -0
- package/dist/types-D4MD2w3_.d.mts +9 -0
- package/dist/types-D4MD2w3_.d.ts +9 -0
- package/dist/types-D4fdeMWQ.d.mts +62 -0
- package/dist/types-D4fdeMWQ.d.ts +62 -0
- package/dist/types-mhQmqhsR.d.mts +10 -0
- package/dist/types-mhQmqhsR.d.ts +10 -0
- package/package.json +10 -18
- /package/dist/{Button.d.mts → atom/Button/Button.d.mts} +0 -0
- /package/dist/{Button.d.ts → atom/Button/Button.d.ts} +0 -0
- /package/dist/{Checkbox.d.mts → atom/Checkbox/Checkbox.d.mts} +0 -0
- /package/dist/{Checkbox.d.ts → atom/Checkbox/Checkbox.d.ts} +0 -0
- /package/dist/{chunk-FUJQIYOF.mjs → chunk-FWCSY2DS.mjs} +0 -0
|
@@ -0,0 +1,249 @@
|
|
|
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", "firstRow": "Table-module__firstRow___Xq-Hi", "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
|
+
loading,
|
|
131
|
+
total,
|
|
132
|
+
current,
|
|
133
|
+
pageSize,
|
|
134
|
+
onPaginationChange,
|
|
135
|
+
columns,
|
|
136
|
+
rowSelection,
|
|
137
|
+
rowKey = "key",
|
|
138
|
+
onRow,
|
|
139
|
+
dataSource,
|
|
140
|
+
emptyState,
|
|
141
|
+
hideHeader,
|
|
142
|
+
loadingIndicator,
|
|
143
|
+
style
|
|
144
|
+
} = _a, rest = __objRest(_a, [
|
|
145
|
+
"size",
|
|
146
|
+
"variant",
|
|
147
|
+
"isAccordion",
|
|
148
|
+
"isToolbar",
|
|
149
|
+
"className",
|
|
150
|
+
"pagination",
|
|
151
|
+
"loading",
|
|
152
|
+
"total",
|
|
153
|
+
"current",
|
|
154
|
+
"pageSize",
|
|
155
|
+
"onPaginationChange",
|
|
156
|
+
"columns",
|
|
157
|
+
"rowSelection",
|
|
158
|
+
"rowKey",
|
|
159
|
+
"onRow",
|
|
160
|
+
"dataSource",
|
|
161
|
+
"emptyState",
|
|
162
|
+
"hideHeader",
|
|
163
|
+
"loadingIndicator",
|
|
164
|
+
"style"
|
|
165
|
+
]);
|
|
166
|
+
const isChildVariant = isAccordion || isToolbar;
|
|
167
|
+
const resolvedPagination = buildPagination(pagination, {
|
|
168
|
+
total,
|
|
169
|
+
current,
|
|
170
|
+
pageSize,
|
|
171
|
+
onChange: onPaginationChange
|
|
172
|
+
});
|
|
173
|
+
const processedColumns = React.useMemo(
|
|
174
|
+
() => processColumns(columns),
|
|
175
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
176
|
+
[columns]
|
|
177
|
+
);
|
|
178
|
+
const resolvedOnRow = React.useMemo(() => {
|
|
179
|
+
const onChange = rowSelection == null ? void 0 : rowSelection.onChange;
|
|
180
|
+
if (variant !== "selectable" || !onChange) return onRow;
|
|
181
|
+
return (record, index) => {
|
|
182
|
+
var _a2;
|
|
183
|
+
const base = (_a2 = onRow == null ? void 0 : onRow(record, index)) != null ? _a2 : {};
|
|
184
|
+
const getKey = (r, i) => typeof rowKey === "function" ? rowKey(r, i) : r[rowKey];
|
|
185
|
+
return __spreadProps(__spreadValues({}, base), {
|
|
186
|
+
style: __spreadValues({ cursor: "pointer" }, base.style),
|
|
187
|
+
onClick: (e) => {
|
|
188
|
+
var _a3, _b;
|
|
189
|
+
(_a3 = base.onClick) == null ? void 0 : _a3.call(base, e);
|
|
190
|
+
const key = getKey(record, index);
|
|
191
|
+
const current2 = (_b = rowSelection.selectedRowKeys) != null ? _b : [];
|
|
192
|
+
const isSelected = current2.some((k) => k === key);
|
|
193
|
+
const newKeys = isSelected ? current2.filter((k) => k !== key) : [...current2, key];
|
|
194
|
+
const newRows = (dataSource != null ? dataSource : []).filter(
|
|
195
|
+
(r) => newKeys.some((k) => k === getKey(r))
|
|
196
|
+
);
|
|
197
|
+
onChange(newKeys, newRows, { type: "single" });
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
};
|
|
201
|
+
}, [variant, rowSelection, rowKey, onRow, dataSource]);
|
|
202
|
+
return /* @__PURE__ */ jsx(
|
|
203
|
+
"div",
|
|
204
|
+
{
|
|
205
|
+
className: clsx(
|
|
206
|
+
Table_module_default.tableWrapper,
|
|
207
|
+
Table_module_default.showHoverEffect,
|
|
208
|
+
{ [Table_module_default.isAccordion]: isAccordion },
|
|
209
|
+
{ [Table_module_default.isToolbar]: isToolbar },
|
|
210
|
+
className
|
|
211
|
+
),
|
|
212
|
+
style,
|
|
213
|
+
"data-testid": "lumina-table",
|
|
214
|
+
children: /* @__PURE__ */ jsx(
|
|
215
|
+
AntTable,
|
|
216
|
+
__spreadProps(__spreadValues({
|
|
217
|
+
className: Table_module_default.table,
|
|
218
|
+
size,
|
|
219
|
+
pagination: resolvedPagination,
|
|
220
|
+
columns: processedColumns,
|
|
221
|
+
rowSelection,
|
|
222
|
+
rowKey,
|
|
223
|
+
onRow: resolvedOnRow,
|
|
224
|
+
dataSource,
|
|
225
|
+
showHeader: !hideHeader,
|
|
226
|
+
locale: {
|
|
227
|
+
emptyText: loading && loadingIndicator ? loadingIndicator : loading ? " " : emptyState
|
|
228
|
+
}
|
|
229
|
+
}, rest), {
|
|
230
|
+
loading: loadingIndicator ? false : loading,
|
|
231
|
+
rowClassName: (_, index) => {
|
|
232
|
+
var _a2;
|
|
233
|
+
return clsx({
|
|
234
|
+
[Table_module_default.firstRow]: index === 0,
|
|
235
|
+
[Table_module_default.lastRow]: index === ((_a2 = dataSource == null ? void 0 : dataSource.length) != null ? _a2 : 0) - 1
|
|
236
|
+
});
|
|
237
|
+
}
|
|
238
|
+
})
|
|
239
|
+
)
|
|
240
|
+
}
|
|
241
|
+
);
|
|
242
|
+
}
|
|
243
|
+
Table.displayName = "Table";
|
|
244
|
+
var Table_default = Table;
|
|
245
|
+
|
|
246
|
+
export {
|
|
247
|
+
Table,
|
|
248
|
+
Table_default
|
|
249
|
+
};
|