@monolith-forensics/monolith-ui 1.1.30 → 1.1.32
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/Button/Button.js +11 -16
- package/dist/Button/index.js +1 -8
- package/dist/Calendar/Calendar.js +38 -66
- package/dist/Calendar/CalendarStyles.js +19 -25
- package/dist/Calendar/calendarHelpers.js +34 -46
- package/dist/Calendar/index.js +1 -8
- package/dist/CheckBox/CheckBox.js +9 -14
- package/dist/CheckBox/index.js +1 -8
- package/dist/DateInput/DateInput.js +46 -51
- package/dist/DateInput/index.js +1 -8
- package/dist/DropDownMenu/DropDownMenu.js +27 -32
- package/dist/DropDownMenu/index.js +1 -8
- package/dist/Error/Error.js +10 -15
- package/dist/Error/index.js +1 -8
- package/dist/FieldLabel/FieldLabel.js +8 -37
- package/dist/FieldLabel/index.js +1 -8
- package/dist/FileInputField/FileInputField.js +11 -16
- package/dist/FileInputField/index.js +1 -8
- package/dist/Flyout/Flyout.js +14 -18
- package/dist/Flyout/FlyoutHeader.js +3 -8
- package/dist/Flyout/FlyoutTitle.js +3 -8
- package/dist/Flyout/index.js +3 -12
- package/dist/FormSection/FormSection.js +8 -13
- package/dist/FormSection/index.js +1 -8
- package/dist/Grid/Grid.js +5 -10
- package/dist/Grid/index.js +1 -8
- package/dist/IconButton/IconButton.js +4 -9
- package/dist/IconButton/index.js +1 -8
- package/dist/Input/Input.js +6 -11
- package/dist/Input/index.js +1 -8
- package/dist/Modal/Modal.js +16 -20
- package/dist/Modal/index.js +1 -8
- package/dist/MonolithUIProvider/GlobalStyle.js +3 -5
- package/dist/MonolithUIProvider/MonolithUIProvider.js +14 -19
- package/dist/MonolithUIProvider/index.js +3 -12
- package/dist/MonolithUIProvider/useMonolithUITheme.js +4 -6
- package/dist/Pill/Pill.js +9 -14
- package/dist/Pill/index.js +1 -8
- package/dist/SelectBox/SelectBox.js +44 -50
- package/dist/SelectBox/index.js +1 -8
- package/dist/Switch/Switch.js +12 -39
- package/dist/Switch/index.js +1 -8
- package/dist/Table/Table.js +70 -78
- package/dist/Table/index.js +2 -10
- package/dist/TagBox/TagBox.js +40 -45
- package/dist/TagBox/TagBoxStyles.js +11 -17
- package/dist/TagBox/index.js +1 -8
- package/dist/TextArea/TextArea.js +4 -9
- package/dist/TextArea/index.js +1 -8
- package/dist/TextAreaInput/TextAreaInput.js +5 -7
- package/dist/TextAreaInput/index.js +1 -8
- package/dist/TextInput/TextInput.js +7 -12
- package/dist/TextInput/index.js +1 -8
- package/dist/Tooltip/Tooltip.js +6 -34
- package/dist/Tooltip/index.js +1 -8
- package/dist/core/ArrowButton.js +8 -13
- package/dist/core/ClearButton.js +8 -13
- package/dist/core/StyledContent.js +3 -8
- package/dist/core/StyledFloatContainer.js +3 -8
- package/dist/core/Types/Size.js +1 -2
- package/dist/core/Types/Variant.js +1 -2
- package/dist/core/index.js +4 -14
- package/dist/index.js +26 -59
- package/dist/theme/index.js +5 -9
- package/dist/theme/typography.js +1 -3
- package/dist/theme/variants.js +8 -14
- package/package.json +1 -1
- package/dist/Button/Button.d.ts +0 -19
- package/dist/Button/index.d.ts +0 -2
- package/dist/Calendar/Calendar.d.ts +0 -15
- package/dist/Calendar/CalendarStyles.d.ts +0 -36
- package/dist/Calendar/calendarHelpers.d.ts +0 -53
- package/dist/Calendar/index.d.ts +0 -1
- package/dist/CheckBox/CheckBox.d.ts +0 -13
- package/dist/CheckBox/index.d.ts +0 -1
- package/dist/DateInput/DateInput.d.ts +0 -24
- package/dist/DateInput/index.d.ts +0 -1
- package/dist/DropDownMenu/DropDownMenu.d.ts +0 -36
- package/dist/DropDownMenu/index.d.ts +0 -1
- package/dist/Error/Error.d.ts +0 -4
- package/dist/Error/index.d.ts +0 -1
- package/dist/FieldLabel/FieldLabel.d.ts +0 -19
- package/dist/FieldLabel/index.d.ts +0 -1
- package/dist/FileInputField/FileInputField.d.ts +0 -19
- package/dist/FileInputField/index.d.ts +0 -1
- package/dist/Flyout/Flyout.d.ts +0 -11
- package/dist/Flyout/FlyoutHeader.d.ts +0 -5
- package/dist/Flyout/FlyoutTitle.d.ts +0 -2
- package/dist/Flyout/index.d.ts +0 -3
- package/dist/FormSection/FormSection.d.ts +0 -9
- package/dist/FormSection/index.d.ts +0 -1
- package/dist/Grid/Grid.d.ts +0 -8
- package/dist/Grid/index.d.ts +0 -1
- package/dist/IconButton/IconButton.d.ts +0 -5
- package/dist/IconButton/index.d.ts +0 -1
- package/dist/Input/Input.d.ts +0 -21
- package/dist/Input/index.d.ts +0 -1
- package/dist/Modal/Modal.d.ts +0 -14
- package/dist/Modal/index.d.ts +0 -1
- package/dist/MonolithUIProvider/GlobalStyle.d.ts +0 -4
- package/dist/MonolithUIProvider/MonolithUIProvider.d.ts +0 -10
- package/dist/MonolithUIProvider/index.d.ts +0 -3
- package/dist/MonolithUIProvider/useMonolithUITheme.d.ts +0 -2
- package/dist/Pill/Pill.d.ts +0 -11
- package/dist/Pill/index.d.ts +0 -1
- package/dist/SelectBox/SelectBox.d.ts +0 -45
- package/dist/SelectBox/index.d.ts +0 -1
- package/dist/Switch/Switch.d.ts +0 -18
- package/dist/Switch/index.d.ts +0 -1
- package/dist/Table/Table.d.ts +0 -91
- package/dist/Table/index.d.ts +0 -2
- package/dist/TagBox/TagBox.d.ts +0 -39
- package/dist/TagBox/TagBoxStyles.d.ts +0 -11
- package/dist/TagBox/index.d.ts +0 -1
- package/dist/TextArea/TextArea.d.ts +0 -16
- package/dist/TextArea/index.d.ts +0 -1
- package/dist/TextAreaInput/TextAreaInput.d.ts +0 -19
- package/dist/TextAreaInput/index.d.ts +0 -1
- package/dist/TextInput/TextInput.d.ts +0 -13
- package/dist/TextInput/index.d.ts +0 -1
- package/dist/Tooltip/Tooltip.d.ts +0 -12
- package/dist/Tooltip/index.d.ts +0 -1
- package/dist/core/ArrowButton.d.ts +0 -6
- package/dist/core/ClearButton.d.ts +0 -6
- package/dist/core/MonolithThemeProvider.d.ts +0 -4
- package/dist/core/MonolithThemeProvider.js +0 -20
- package/dist/core/StyledContent.d.ts +0 -7
- package/dist/core/StyledFloatContainer.d.ts +0 -2
- package/dist/core/Types/Size.d.ts +0 -2
- package/dist/core/Types/Variant.d.ts +0 -2
- package/dist/core/index.d.ts +0 -6
- package/dist/index.d.ts +0 -26
- package/dist/theme/index.d.ts +0 -168
- package/dist/theme/typography.d.ts +0 -45
- package/dist/theme/variants.d.ts +0 -172
package/dist/Table/Table.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
2
|
var t = {};
|
|
4
3
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -10,30 +9,24 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
10
9
|
}
|
|
11
10
|
return t;
|
|
12
11
|
};
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const react_1 = require("react");
|
|
26
|
-
const lucide_react_1 = require("lucide-react");
|
|
27
|
-
const lucide_react_2 = require("lucide-react");
|
|
28
|
-
const moment_1 = __importDefault(require("moment"));
|
|
29
|
-
const __1 = require("..");
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import { FixedSizeList } from "react-window";
|
|
14
|
+
import AutoSizer from "react-virtualized-auto-sizer";
|
|
15
|
+
import { useOverlayScrollbars } from "overlayscrollbars-react";
|
|
16
|
+
import "overlayscrollbars/overlayscrollbars.css";
|
|
17
|
+
import shortUUID from "short-uuid";
|
|
18
|
+
import styled from "styled-components";
|
|
19
|
+
import { cloneElement, forwardRef, useEffect, useMemo, useRef, useState, } from "react";
|
|
20
|
+
import { Maximize2Icon } from "lucide-react";
|
|
21
|
+
import { ArrowUpIcon, ArrowDownIcon } from "lucide-react";
|
|
22
|
+
import moment from "moment";
|
|
23
|
+
import { CheckBox } from "..";
|
|
30
24
|
const MIN_COLUMN_WIDTH = 125;
|
|
31
|
-
const Column = ({ dataField, caption, columnId =
|
|
25
|
+
export const Column = ({ dataField, caption, columnId = shortUUID.generate(), sorting, format, }) => {
|
|
32
26
|
return null;
|
|
33
27
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const StyledTable = styled_components_1.default.table `
|
|
28
|
+
Column.displayName = "Column";
|
|
29
|
+
const StyledTable = styled.table `
|
|
37
30
|
position: relative;
|
|
38
31
|
border-collapse: separate;
|
|
39
32
|
border-spacing: 0;
|
|
@@ -41,10 +34,10 @@ const StyledTable = styled_components_1.default.table `
|
|
|
41
34
|
border-top: none;
|
|
42
35
|
border-radius: 4px;
|
|
43
36
|
`;
|
|
44
|
-
const StyledThead =
|
|
37
|
+
const StyledThead = styled.thead `
|
|
45
38
|
position: relative;
|
|
46
39
|
`;
|
|
47
|
-
const StyledTbody =
|
|
40
|
+
const StyledTbody = styled.tbody `
|
|
48
41
|
& [data-even="true"].tr td {
|
|
49
42
|
background-color: ${({ stripes, theme }) => stripes ? theme.palette.background.secondary : "transparent"};
|
|
50
43
|
}
|
|
@@ -52,7 +45,7 @@ const StyledTbody = styled_components_1.default.tbody `
|
|
|
52
45
|
background-color: ${({ theme }) => theme.palette.action.hover};
|
|
53
46
|
}
|
|
54
47
|
`;
|
|
55
|
-
const StyledTr =
|
|
48
|
+
const StyledTr = styled.tr `
|
|
56
49
|
position: relative;
|
|
57
50
|
height: ${({ compact, rowHeight }) => rowHeight ? rowHeight : compact ? 28 : 38}px;
|
|
58
51
|
width: 100%;
|
|
@@ -89,7 +82,7 @@ const StyledTr = styled_components_1.default.tr `
|
|
|
89
82
|
max-width: none !important;
|
|
90
83
|
}
|
|
91
84
|
`;
|
|
92
|
-
const StyledHeaderRow = (
|
|
85
|
+
const StyledHeaderRow = styled(StyledTr) `
|
|
93
86
|
height: ${({ compact, headerHeight }) => headerHeight ? headerHeight : compact ? 28 : 38}px;
|
|
94
87
|
|
|
95
88
|
display: table-row;
|
|
@@ -100,7 +93,7 @@ const StyledHeaderRow = (0, styled_components_1.default)(StyledTr) `
|
|
|
100
93
|
max-width: none !important;
|
|
101
94
|
}
|
|
102
95
|
`;
|
|
103
|
-
const StyledTd =
|
|
96
|
+
const StyledTd = styled.td `
|
|
104
97
|
position: relative;
|
|
105
98
|
display: flex;
|
|
106
99
|
align-items: center;
|
|
@@ -123,7 +116,7 @@ const StyledTd = styled_components_1.default.td `
|
|
|
123
116
|
border-right: 1px solid ${({ theme }) => theme.palette.divider};
|
|
124
117
|
}
|
|
125
118
|
`;
|
|
126
|
-
const StyledTh =
|
|
119
|
+
const StyledTh = styled.th `
|
|
127
120
|
position: sticky;
|
|
128
121
|
top: 0;
|
|
129
122
|
z-index: 1;
|
|
@@ -164,7 +157,7 @@ const StyledTh = styled_components_1.default.th `
|
|
|
164
157
|
}
|
|
165
158
|
|
|
166
159
|
&:hover {
|
|
167
|
-
background-color: ${({ theme }) => theme.name === "
|
|
160
|
+
background-color: ${({ theme }) => theme.name === "dark" ? "#2e2e2e" : "#f5f5f5"};
|
|
168
161
|
cursor: pointer;
|
|
169
162
|
}
|
|
170
163
|
&.dragging:active {
|
|
@@ -245,8 +238,8 @@ const resizeHandler = ({ event, columnId, columnProps, onResize, onResizeFinishe
|
|
|
245
238
|
document.addEventListener("mouseup", mouseUpHandler);
|
|
246
239
|
enableResizeClass(columnId);
|
|
247
240
|
};
|
|
248
|
-
const Resizer = (
|
|
249
|
-
return ((
|
|
241
|
+
const Resizer = styled(({ className, resizeHandler, onResize = () => { }, onResizeFinished, column, }) => {
|
|
242
|
+
return (_jsx("div", { className: `${className} resizer column-${column.props.columnId}`, onClick: (e) => {
|
|
250
243
|
e.stopPropagation();
|
|
251
244
|
e.nativeEvent.stopImmediatePropagation();
|
|
252
245
|
e.preventDefault();
|
|
@@ -287,13 +280,13 @@ const Resizer = (0, styled_components_1.default)(({ className, resizeHandler, on
|
|
|
287
280
|
}
|
|
288
281
|
`;
|
|
289
282
|
const HeaderRowComponent = ({ columns, _compact, resizeState, headerHeight, onHeaderClick, onColumnResize, dropColumn, dragColumn, showSelection, selectAll, selectionState, handleSelectAll, handleColumnReorder, }) => {
|
|
290
|
-
return ((
|
|
283
|
+
return (_jsx(StyledThead, { children: _jsx(StyledHeaderRow, { compact: _compact, headerHeight: headerHeight, children: columns.map((column) => {
|
|
291
284
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
292
285
|
let savedColSize = ((_c = (_b = (_a = resizeState === null || resizeState === void 0 ? void 0 : resizeState.current) === null || _a === void 0 ? void 0 : _a.columns) === null || _b === void 0 ? void 0 : _b.find((col) => col.dataField === column.props.dataField)) === null || _c === void 0 ? void 0 : _c.width) || MIN_COLUMN_WIDTH;
|
|
293
286
|
if (savedColSize < MIN_COLUMN_WIDTH) {
|
|
294
287
|
savedColSize = MIN_COLUMN_WIDTH;
|
|
295
288
|
}
|
|
296
|
-
return ((
|
|
289
|
+
return (_jsxs(StyledTh, Object.assign({}, column.props, { className: `th ${((_d = column === null || column === void 0 ? void 0 : column.props) === null || _d === void 0 ? void 0 : _d.columnId) ? `col-${column.props.columnId}` : ""}`, "data-field": column.props.dataField, "data-type": "th", compact: _compact, onClick: (e) => {
|
|
297
290
|
if (column.props.allowSorting !== false)
|
|
298
291
|
onHeaderClick === null || onHeaderClick === void 0 ? void 0 : onHeaderClick(column.props);
|
|
299
292
|
}, draggable: column.props.allowReorder !== false ? true : false, onDragOver: (e) => {
|
|
@@ -324,21 +317,21 @@ const HeaderRowComponent = ({ columns, _compact, resizeState, headerHeight, onHe
|
|
|
324
317
|
minWidth: ((_j = column === null || column === void 0 ? void 0 : column.props) === null || _j === void 0 ? void 0 : _j.width)
|
|
325
318
|
? (_k = column === null || column === void 0 ? void 0 : column.props) === null || _k === void 0 ? void 0 : _k.width
|
|
326
319
|
: savedColSize || MIN_COLUMN_WIDTH,
|
|
327
|
-
}, children: [(
|
|
320
|
+
}, children: [_jsxs("div", { style: {
|
|
328
321
|
display: "flex",
|
|
329
322
|
alignContent: "center",
|
|
330
323
|
alignItems: "center",
|
|
331
324
|
pointerEvents: column.props.dataField === "action" ? "all" : "none",
|
|
332
|
-
}, children: [showSelection && column.props.dataField === "action" ? ((
|
|
325
|
+
}, children: [showSelection && column.props.dataField === "action" ? (_jsx("div", { className: "action-header", children: selectAll && (_jsx(CheckBox, { value: selectionState === "all", partialCheck: selectionState.includes("some"), onChange: handleSelectAll })) })) : (_jsx("div", { children: column.props.caption })), ((_m = (_l = column.props) === null || _l === void 0 ? void 0 : _l.sorting) === null || _m === void 0 ? void 0 : _m.active) && (_jsx("div", { style: { marginLeft: 5 }, children: column.props.sorting.direction === "asc" ? (_jsx(ArrowUpIcon, { size: 12 })) : (_jsx(ArrowDownIcon, { size: 12 })) }))] }), ((_o = column === null || column === void 0 ? void 0 : column.props) === null || _o === void 0 ? void 0 : _o.resizeEnabled) !== false && (_jsx(Resizer, { resizeHandler: resizeHandler, column: column, onResize: (e) => {
|
|
333
326
|
resizeState.current = e;
|
|
334
327
|
}, onResizeFinished: (e) => {
|
|
335
328
|
onColumnResize === null || onColumnResize === void 0 ? void 0 : onColumnResize(e);
|
|
336
|
-
} }))] }),
|
|
329
|
+
} }))] }), shortUUID.generate()));
|
|
337
330
|
}) }) }));
|
|
338
331
|
};
|
|
339
|
-
const InnerElement =
|
|
332
|
+
const InnerElement = forwardRef((_a, ref) => {
|
|
340
333
|
var { children, columns, resizeState, _compact, stripes, onHeaderClick, dropColumn, dragColumn, showSelection, selectAll, selectionState, handleSelectAll, handleColumnReorder, onColumnResize, headerHeight } = _a, rest = __rest(_a, ["children", "columns", "resizeState", "_compact", "stripes", "onHeaderClick", "dropColumn", "dragColumn", "showSelection", "selectAll", "selectionState", "handleSelectAll", "handleColumnReorder", "onColumnResize", "headerHeight"]);
|
|
341
|
-
return ((
|
|
334
|
+
return (_jsxs(StyledTable, Object.assign({ ref: ref }, rest, { children: [_jsx(HeaderRowComponent, { columns: columns, resizeState: resizeState, _compact: _compact, headerHeight: headerHeight, onHeaderClick: onHeaderClick, dropColumn: dropColumn, dragColumn: dragColumn, showSelection: showSelection, selectAll: selectAll, selectionState: selectionState, handleSelectAll: handleSelectAll, handleColumnReorder: handleColumnReorder, onColumnResize: onColumnResize }), _jsx(StyledTbody, { className: "tbody" + (stripes ? " striped" : ""), stripes: stripes, children: children })] })));
|
|
342
335
|
});
|
|
343
336
|
const Row = ({ data, index, style }) => {
|
|
344
337
|
const { data: dataRows, columns, focusedRow, keyValue, _compact, queryKey, reloadFn, headerHeight, resizeState, onRowUpdated, } = data;
|
|
@@ -370,22 +363,22 @@ const Row = ({ data, index, style }) => {
|
|
|
370
363
|
((_g = (_f = column === null || column === void 0 ? void 0 : column.props) === null || _f === void 0 ? void 0 : _f.format) === null || _g === void 0 ? void 0 : _g.type) &&
|
|
371
364
|
value) {
|
|
372
365
|
const dateFormat = (_j = (_h = column === null || column === void 0 ? void 0 : column.props) === null || _h === void 0 ? void 0 : _h.format) === null || _j === void 0 ? void 0 : _j.type;
|
|
373
|
-
value = (
|
|
366
|
+
value = moment(value).format(dateFormat);
|
|
374
367
|
}
|
|
375
368
|
if (column.props.render) {
|
|
376
|
-
return ((
|
|
369
|
+
return (_jsxs(StyledTd, { className: `td ${((_k = column === null || column === void 0 ? void 0 : column.props) === null || _k === void 0 ? void 0 : _k.columnId) ? `col-${column.props.columnId}` : ""}`, title: ((_l = column === null || column === void 0 ? void 0 : column.props) === null || _l === void 0 ? void 0 : _l.titleRender) ? (_m = column === null || column === void 0 ? void 0 : column.props) === null || _m === void 0 ? void 0 : _m.titleRender(item) : null, compact: _compact, style: Object.assign({ width: ((_o = column === null || column === void 0 ? void 0 : column.props) === null || _o === void 0 ? void 0 : _o.width)
|
|
377
370
|
? (_p = column === null || column === void 0 ? void 0 : column.props) === null || _p === void 0 ? void 0 : _p.width
|
|
378
371
|
: savedColSize || "auto", maxWidth: ((_q = column === null || column === void 0 ? void 0 : column.props) === null || _q === void 0 ? void 0 : _q.width)
|
|
379
372
|
? (_r = column === null || column === void 0 ? void 0 : column.props) === null || _r === void 0 ? void 0 : _r.width
|
|
380
373
|
: savedColSize || "auto", minWidth: ((_s = column === null || column === void 0 ? void 0 : column.props) === null || _s === void 0 ? void 0 : _s.width)
|
|
381
374
|
? (_t = column === null || column === void 0 ? void 0 : column.props) === null || _t === void 0 ? void 0 : _t.width
|
|
382
|
-
: savedColSize || MIN_COLUMN_WIDTH }, (((_u = column === null || column === void 0 ? void 0 : column.props) === null || _u === void 0 ? void 0 : _u.style) || {})), "data-type": "td", children: [column.props.resizeEnabled !== false && (
|
|
375
|
+
: savedColSize || MIN_COLUMN_WIDTH }, (((_u = column === null || column === void 0 ? void 0 : column.props) === null || _u === void 0 ? void 0 : _u.style) || {})), "data-type": "td", children: [column.props.resizeEnabled !== false && _jsx(Resizer, { column: column }), column.props.render(item, {
|
|
383
376
|
queryKey: queryKey || "",
|
|
384
377
|
reload: reloadFn,
|
|
385
378
|
onRowUpdated: handleRowUpdated,
|
|
386
|
-
})] },
|
|
379
|
+
})] }, shortUUID.generate()));
|
|
387
380
|
}
|
|
388
|
-
return ((
|
|
381
|
+
return (_jsxs(StyledTd, { className: `td ${((_v = column === null || column === void 0 ? void 0 : column.props) === null || _v === void 0 ? void 0 : _v.columnId) ? `col-${column.props.columnId}` : ""}`, compact: _compact, title: ((_w = column === null || column === void 0 ? void 0 : column.props) === null || _w === void 0 ? void 0 : _w.titleRender) ? (_x = column === null || column === void 0 ? void 0 : column.props) === null || _x === void 0 ? void 0 : _x.titleRender(item) : null, "data-type": "td", style: {
|
|
389
382
|
width: ((_y = column === null || column === void 0 ? void 0 : column.props) === null || _y === void 0 ? void 0 : _y.width)
|
|
390
383
|
? (_z = column === null || column === void 0 ? void 0 : column.props) === null || _z === void 0 ? void 0 : _z.width
|
|
391
384
|
: savedColSize || "auto",
|
|
@@ -395,12 +388,12 @@ const Row = ({ data, index, style }) => {
|
|
|
395
388
|
minWidth: ((_2 = column === null || column === void 0 ? void 0 : column.props) === null || _2 === void 0 ? void 0 : _2.width)
|
|
396
389
|
? (_3 = column === null || column === void 0 ? void 0 : column.props) === null || _3 === void 0 ? void 0 : _3.width
|
|
397
390
|
: savedColSize || MIN_COLUMN_WIDTH,
|
|
398
|
-
}, children: [column.props.resizeEnabled !== false && (
|
|
391
|
+
}, children: [column.props.resizeEnabled !== false && _jsx(Resizer, { column: column }), value] }, shortUUID.generate()));
|
|
399
392
|
});
|
|
400
|
-
return ((
|
|
393
|
+
return (_jsx(StyledTr, { className: `tr${isRowFocused ? " focused" : ""}`, "data-key": item[keyValue], "data-type": "tr", "data-even": index % 2 === 0 ? "true" : "false", compact: _compact, style: Object.assign(Object.assign({}, style), { top: ((style === null || style === void 0 ? void 0 : style.top) || 0) + headerHeight }), children: row }, shortUUID.generate()));
|
|
401
394
|
};
|
|
402
|
-
const useTable = () => {
|
|
403
|
-
const [tableInstance, setTableInstance] =
|
|
395
|
+
export const useTable = () => {
|
|
396
|
+
const [tableInstance, setTableInstance] = useState(null);
|
|
404
397
|
return {
|
|
405
398
|
setTableInstance,
|
|
406
399
|
toggleCompact: () => tableInstance === null || tableInstance === void 0 ? void 0 : tableInstance.toggleCompact(),
|
|
@@ -415,10 +408,9 @@ const useTable = () => {
|
|
|
415
408
|
onColumnResize: (e) => tableInstance === null || tableInstance === void 0 ? void 0 : tableInstance.onColumnResize(e),
|
|
416
409
|
};
|
|
417
410
|
};
|
|
418
|
-
|
|
419
|
-
const
|
|
420
|
-
const
|
|
421
|
-
const [initialize, getInstance] = (0, overlayscrollbars_react_1.useOverlayScrollbars)({
|
|
411
|
+
const Table = styled(({ className, children, data, rowHeight, headerHeight, tableInstance, queryKey, totalRecords, compact, focusedRow, keyValue, onScroll, allowColumnResize, allowColumnReorder, showActionColumn, showSelection, selectAll, reloadFn, onColumnReorder, onSelectionChanged, onActionButtonClick, onHeaderClick, onColumnResize, onRowUpdated, }) => {
|
|
412
|
+
const rootRef = useRef(null);
|
|
413
|
+
const [initialize, getInstance] = useOverlayScrollbars({
|
|
422
414
|
options: {
|
|
423
415
|
scrollbars: {
|
|
424
416
|
autoHide: "scroll",
|
|
@@ -427,26 +419,26 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
427
419
|
},
|
|
428
420
|
events: { scroll: (_, event) => onScroll === null || onScroll === void 0 ? void 0 : onScroll(event) },
|
|
429
421
|
});
|
|
430
|
-
const [targetElm, setTargetElm] =
|
|
431
|
-
const [listElm, setListElm] =
|
|
432
|
-
const dragColumn =
|
|
433
|
-
const dropColumn =
|
|
434
|
-
const [_compact, setCompact] =
|
|
435
|
-
const [stripes, setStripes] =
|
|
436
|
-
const [selectedRows, setSelectedRows] =
|
|
437
|
-
const [virtualSelectionTotal, setVirtualSelectionTotal] =
|
|
438
|
-
const [excludedRows, setExcludedRows] =
|
|
439
|
-
const [selectionState, setSelectionState] =
|
|
440
|
-
const resizeState =
|
|
422
|
+
const [targetElm, setTargetElm] = useState(null);
|
|
423
|
+
const [listElm, setListElm] = useState(null);
|
|
424
|
+
const dragColumn = useRef(null);
|
|
425
|
+
const dropColumn = useRef(null);
|
|
426
|
+
const [_compact, setCompact] = useState(compact);
|
|
427
|
+
const [stripes, setStripes] = useState(false);
|
|
428
|
+
const [selectedRows, setSelectedRows] = useState([]);
|
|
429
|
+
const [virtualSelectionTotal, setVirtualSelectionTotal] = useState(0);
|
|
430
|
+
const [excludedRows, setExcludedRows] = useState([]);
|
|
431
|
+
const [selectionState, setSelectionState] = useState("none");
|
|
432
|
+
const resizeState = useRef([]);
|
|
441
433
|
// check if children is an array
|
|
442
|
-
children =
|
|
434
|
+
children = useMemo(() => {
|
|
443
435
|
return Array.isArray(children) ? children : [children];
|
|
444
436
|
}, [children]);
|
|
445
|
-
let columns =
|
|
437
|
+
let columns = useMemo(() => {
|
|
446
438
|
var _a, _b;
|
|
447
|
-
return (_b = (_a = children === null || children === void 0 ? void 0 : children.filter) === null || _a === void 0 ? void 0 : _a.call(children, (child) => child.
|
|
448
|
-
return
|
|
449
|
-
columnId:
|
|
439
|
+
return (_b = (_a = children === null || children === void 0 ? void 0 : children.filter) === null || _a === void 0 ? void 0 : _a.call(children, (child) => { var _a; return ((_a = child.type) === null || _a === void 0 ? void 0 : _a.displayName) === "Column"; })) === null || _b === void 0 ? void 0 : _b.map((column) => {
|
|
440
|
+
return cloneElement(column, {
|
|
441
|
+
columnId: shortUUID.generate(),
|
|
450
442
|
allowResize: allowColumnResize !== undefined
|
|
451
443
|
? allowColumnResize
|
|
452
444
|
: column.props.allowResize,
|
|
@@ -459,7 +451,7 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
459
451
|
});
|
|
460
452
|
});
|
|
461
453
|
}, [children]);
|
|
462
|
-
const [columnOrder, setColumnOrder] =
|
|
454
|
+
const [columnOrder, setColumnOrder] = useState(columns.map((col, index) => {
|
|
463
455
|
var _a, _b;
|
|
464
456
|
return {
|
|
465
457
|
column: (_a = col.props) === null || _a === void 0 ? void 0 : _a.dataField,
|
|
@@ -580,7 +572,7 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
580
572
|
});
|
|
581
573
|
};
|
|
582
574
|
// sort columns
|
|
583
|
-
columns =
|
|
575
|
+
columns = useMemo(() => columns.sort((a, b) => {
|
|
584
576
|
var _a, _b;
|
|
585
577
|
const aOrder = (_a = columnOrder.find((col) => col.column === a.props.dataField)) === null || _a === void 0 ? void 0 : _a.order;
|
|
586
578
|
const bOrder = (_b = columnOrder.find((col) => col.column === b.props.dataField)) === null || _b === void 0 ? void 0 : _b.order;
|
|
@@ -592,7 +584,7 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
592
584
|
// insert action column as first column
|
|
593
585
|
showActionColumn &&
|
|
594
586
|
(columns = [
|
|
595
|
-
(
|
|
587
|
+
_jsx(Column, { className: "action-column", dataField: "action", allowSorting: false, allowReorder: false, caption: "", width: showSelection ? 55 : 35, resizeEnabled: false, render: (rowData) => (_jsxs("div", { className: "action-column-container", children: [showSelection && (_jsx("div", { className: "action-button", children: _jsx(CheckBox, { value: selectionState === "all"
|
|
596
588
|
? true
|
|
597
589
|
: selectionState === "someIncluded"
|
|
598
590
|
? !!selectedRows.find((row) => keyValue
|
|
@@ -602,12 +594,12 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
602
594
|
? !excludedRows.find((row) => keyValue
|
|
603
595
|
? row[keyValue] === rowData[keyValue]
|
|
604
596
|
: false)
|
|
605
|
-
: false, onChange: (newValue) => handleSelectRow({ rowData, checked: newValue }) }) })), (
|
|
597
|
+
: false, onChange: (newValue) => handleSelectRow({ rowData, checked: newValue }) }) })), _jsx("div", { className: "action-button", title: "Show More Details", onClick: (e) => {
|
|
606
598
|
onActionButtonClick === null || onActionButtonClick === void 0 ? void 0 : onActionButtonClick(rowData);
|
|
607
|
-
}, children: (
|
|
599
|
+
}, children: _jsx(Maximize2Icon, { size: _compact ? 8 : 12 }) })] })) }, shortUUID.generate()),
|
|
608
600
|
...columns,
|
|
609
601
|
]);
|
|
610
|
-
|
|
602
|
+
useEffect(() => {
|
|
611
603
|
if (targetElm && listElm) {
|
|
612
604
|
initialize({
|
|
613
605
|
target: targetElm,
|
|
@@ -618,7 +610,7 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
618
610
|
return () => { var _a; return (_a = getInstance()) === null || _a === void 0 ? void 0 : _a.destroy(); };
|
|
619
611
|
}
|
|
620
612
|
}, [targetElm, listElm]);
|
|
621
|
-
|
|
613
|
+
useEffect(() => {
|
|
622
614
|
if (tableInstance) {
|
|
623
615
|
tableInstance.setTableInstance({
|
|
624
616
|
getSelectedRows: () => selectedRows,
|
|
@@ -646,7 +638,7 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
646
638
|
stripes,
|
|
647
639
|
tableInstance,
|
|
648
640
|
]);
|
|
649
|
-
|
|
641
|
+
useEffect(() => {
|
|
650
642
|
// Scroll to selected row if outside of viewport
|
|
651
643
|
if (focusedRow) {
|
|
652
644
|
const focusedRowElm = keyValue
|
|
@@ -661,7 +653,7 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
661
653
|
}
|
|
662
654
|
}
|
|
663
655
|
}, [focusedRow]);
|
|
664
|
-
return ((
|
|
656
|
+
return (_jsx("div", { ref: rootRef, className: className + " table-wrapper", children: _jsx(AutoSizer, { children: ({ height, width }) => (_jsx("div", { style: { width, height }, "data-overlayscrollbars": "", ref: setTargetElm, children: _jsx(FixedSizeList, { overscanCount: 10, itemData: {
|
|
665
657
|
data,
|
|
666
658
|
columns: columns.filter((col) => !hiddenColumns.includes(col.props.dataField)),
|
|
667
659
|
focusedRow,
|
|
@@ -678,7 +670,7 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
678
670
|
resizeState,
|
|
679
671
|
onRowUpdated,
|
|
680
672
|
tableWidth: width,
|
|
681
|
-
}, height: height, innerElementType: (props) => ((
|
|
673
|
+
}, height: height, innerElementType: (props) => (_jsx(InnerElement, Object.assign({}, props, { columns: columns.filter((col) => !hiddenColumns.includes(col.props.dataField)), tableWidth: width, resizeState: resizeState, _compact: _compact, stripes: stripes, onHeaderClick: onHeaderClick, dropColumn: dropColumn, dragColumn: dragColumn, showSelection: showSelection, selectAll: selectAll, selectionState: selectionState, handleSelectAll: handleSelectAll, handleColumnReorder: handleColumnReorder, onColumnResize: onColumnResize }))), itemCount: data === null || data === void 0 ? void 0 : data.length, itemSize: rowHeight ? rowHeight : _compact ? 28 : 38, width: width, outerRef: setListElm, children: Row }) })) }) }));
|
|
682
674
|
}) `
|
|
683
675
|
position: relative;
|
|
684
676
|
flex: 1 1 auto;
|
|
@@ -712,4 +704,4 @@ const Table = (0, styled_components_1.default)(({ className, children, data, row
|
|
|
712
704
|
margin-right: 5px;
|
|
713
705
|
}
|
|
714
706
|
`;
|
|
715
|
-
|
|
707
|
+
export default Table;
|
package/dist/Table/index.js
CHANGED
|
@@ -1,10 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.Column = exports.default = void 0;
|
|
7
|
-
var Table_1 = require("./Table");
|
|
8
|
-
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(Table_1).default; } });
|
|
9
|
-
var Table_2 = require("./Table");
|
|
10
|
-
Object.defineProperty(exports, "Column", { enumerable: true, get: function () { return Table_2.Column; } });
|
|
1
|
+
export { default } from "./Table";
|
|
2
|
+
export { Column } from "./Table";
|
package/dist/TagBox/TagBox.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __rest = (this && this.__rest) || function (s, e) {
|
|
3
2
|
var t = {};
|
|
4
3
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
@@ -10,17 +9,13 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
10
9
|
}
|
|
11
10
|
return t;
|
|
12
11
|
};
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
const react_2 = require("react");
|
|
21
|
-
const __1 = require("..");
|
|
22
|
-
const core_1 = require("../core");
|
|
23
|
-
const StyledInputContainer = styled_components_1.default.div `
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
13
|
+
import styled from "styled-components";
|
|
14
|
+
import { useFloating, flip, offset } from "@floating-ui/react";
|
|
15
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
16
|
+
import { Input, Tooltip, FieldLabel, Pill } from "..";
|
|
17
|
+
import { ArrowButton, ClearButton, StyledFloatContainer, StyledContent, } from "../core";
|
|
18
|
+
const StyledInputContainer = styled.div `
|
|
24
19
|
position: relative;
|
|
25
20
|
cursor: pointer;
|
|
26
21
|
|
|
@@ -144,9 +139,9 @@ const StyledInputContainer = styled_components_1.default.div `
|
|
|
144
139
|
}
|
|
145
140
|
`;
|
|
146
141
|
// styled input with forwardRef
|
|
147
|
-
const StyledInput = (
|
|
142
|
+
const StyledInput = styled((_a) => {
|
|
148
143
|
var { className, inputRef } = _a, props = __rest(_a, ["className", "inputRef"]);
|
|
149
|
-
return ((
|
|
144
|
+
return (_jsx(Input, Object.assign({ ref: inputRef, className: className + " mfTagBox-input" }, props)));
|
|
150
145
|
}) `
|
|
151
146
|
&.mfTagBox-input {
|
|
152
147
|
pointer-events: all;
|
|
@@ -168,9 +163,9 @@ const StyledInput = (0, styled_components_1.default)((_a) => {
|
|
|
168
163
|
}
|
|
169
164
|
}
|
|
170
165
|
`;
|
|
171
|
-
const GroupTitle = (
|
|
166
|
+
const GroupTitle = styled((_a) => {
|
|
172
167
|
var { className, children } = _a, props = __rest(_a, ["className", "children"]);
|
|
173
|
-
return ((
|
|
168
|
+
return (_jsxs("div", Object.assign({ className: className }, props, { children: [_jsx("div", { className: "group-line" }), _jsx("div", { className: "group-label", children: children }), _jsx("div", { className: "group-line" })] })));
|
|
174
169
|
}) `
|
|
175
170
|
display: flex;
|
|
176
171
|
flex-direction: row;
|
|
@@ -219,7 +214,7 @@ const GroupTitle = (0, styled_components_1.default)((_a) => {
|
|
|
219
214
|
width: 100%;
|
|
220
215
|
}
|
|
221
216
|
`;
|
|
222
|
-
const PillContainer =
|
|
217
|
+
const PillContainer = styled.div `
|
|
223
218
|
display: flex;
|
|
224
219
|
align-items: center;
|
|
225
220
|
gap: 5px;
|
|
@@ -230,7 +225,7 @@ const PillContainer = styled_components_1.default.div `
|
|
|
230
225
|
display: none;
|
|
231
226
|
}
|
|
232
227
|
`;
|
|
233
|
-
const StyledInnerContainer =
|
|
228
|
+
const StyledInnerContainer = styled.div `
|
|
234
229
|
display: flex;
|
|
235
230
|
flex-direction: column;
|
|
236
231
|
width: 100%;
|
|
@@ -239,10 +234,10 @@ const StyledInnerContainer = styled_components_1.default.div `
|
|
|
239
234
|
padding-right: 30px;
|
|
240
235
|
}
|
|
241
236
|
`;
|
|
242
|
-
const ExtendedStyledContent = (
|
|
237
|
+
const ExtendedStyledContent = styled(StyledContent) `
|
|
243
238
|
overflow-y: auto;
|
|
244
239
|
`;
|
|
245
|
-
const StyledItem =
|
|
240
|
+
const StyledItem = styled.div `
|
|
246
241
|
line-height: 1;
|
|
247
242
|
color: ${(props) => props.theme.palette.text.primary};
|
|
248
243
|
border-radius: 3px;
|
|
@@ -289,16 +284,16 @@ const StyledItem = styled_components_1.default.div `
|
|
|
289
284
|
color: ${(props) => props.theme.palette.text.primary};
|
|
290
285
|
}
|
|
291
286
|
`;
|
|
292
|
-
const TagBox = (
|
|
287
|
+
const TagBox = styled(({ className, data = [], placeholder = "Select tags", arrow = true, defaultValue = [], grouped, searchFn, onChange, onScroll, onSearch, onItemAdded, size = "sm", variant = "outlined", width = "100%", allowCustomValue = false, searchable = false, clearable = false, openOnFocus = true, label, description, required = false, error, loading = false, renderOption, TooltipContent, }) => {
|
|
293
288
|
var _a, _b, _c, _d, _e, _f;
|
|
294
289
|
const isObjectArray = (_a = data === null || data === void 0 ? void 0 : data[0]) === null || _a === void 0 ? void 0 : _a.hasOwnProperty("label");
|
|
295
|
-
const [isOpen, setIsOpen] =
|
|
296
|
-
const [selectedItems, setSelectedItems] =
|
|
297
|
-
const [preSelected, setPreSelected] =
|
|
298
|
-
const [customItems, setCustomItems] =
|
|
299
|
-
const [searchValue, setSearchValue] =
|
|
300
|
-
const inputRef =
|
|
301
|
-
const scrollContainerRef =
|
|
290
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
291
|
+
const [selectedItems, setSelectedItems] = useState(defaultValue);
|
|
292
|
+
const [preSelected, setPreSelected] = useState(null);
|
|
293
|
+
const [customItems, setCustomItems] = useState([]);
|
|
294
|
+
const [searchValue, setSearchValue] = useState("");
|
|
295
|
+
const inputRef = useRef(null);
|
|
296
|
+
const scrollContainerRef = useRef(null);
|
|
302
297
|
const filteredItems = data
|
|
303
298
|
.concat(customItems) // Add custom items to the list
|
|
304
299
|
.filter((item) => {
|
|
@@ -342,13 +337,13 @@ const TagBox = (0, styled_components_1.default)(({ className, data = [], placeho
|
|
|
342
337
|
}))
|
|
343
338
|
.sort((a, b) => a.label.localeCompare(b.label))
|
|
344
339
|
: [];
|
|
345
|
-
const { refs, floatingStyles, update } =
|
|
340
|
+
const { refs, floatingStyles, update } = useFloating({
|
|
346
341
|
open: isOpen,
|
|
347
342
|
onOpenChange: setIsOpen,
|
|
348
343
|
placement: "bottom-start",
|
|
349
344
|
strategy: "absolute",
|
|
350
345
|
// Handle collisions with the viewport
|
|
351
|
-
middleware: [
|
|
346
|
+
middleware: [flip(), offset(5)],
|
|
352
347
|
});
|
|
353
348
|
const toggleOpen = () => {
|
|
354
349
|
setIsOpen((prev) => {
|
|
@@ -373,7 +368,7 @@ const TagBox = (0, styled_components_1.default)(({ className, data = [], placeho
|
|
|
373
368
|
searchFn === null || searchFn === void 0 ? void 0 : searchFn("");
|
|
374
369
|
setIsOpen(false);
|
|
375
370
|
};
|
|
376
|
-
const handleChangeSelection =
|
|
371
|
+
const handleChangeSelection = useCallback((option) => {
|
|
377
372
|
setSelectedItems((prev) => {
|
|
378
373
|
onChange === null || onChange === void 0 ? void 0 : onChange([...prev, option]);
|
|
379
374
|
return [...prev, option];
|
|
@@ -407,7 +402,7 @@ const TagBox = (0, styled_components_1.default)(({ className, data = [], placeho
|
|
|
407
402
|
return newItems;
|
|
408
403
|
});
|
|
409
404
|
};
|
|
410
|
-
const handleAddItem =
|
|
405
|
+
const handleAddItem = useCallback((newItem) => {
|
|
411
406
|
const existingItem = data.concat(customItems).find((item) => {
|
|
412
407
|
return isObjectArray
|
|
413
408
|
? item.label.toLowerCase() === newItem.toLowerCase()
|
|
@@ -515,7 +510,7 @@ const TagBox = (0, styled_components_1.default)(({ className, data = [], placeho
|
|
|
515
510
|
}
|
|
516
511
|
};
|
|
517
512
|
// Close on outside click
|
|
518
|
-
|
|
513
|
+
useEffect(() => {
|
|
519
514
|
const close = (e) => {
|
|
520
515
|
var _a, _b;
|
|
521
516
|
const target = e.target;
|
|
@@ -533,7 +528,7 @@ const TagBox = (0, styled_components_1.default)(({ className, data = [], placeho
|
|
|
533
528
|
return () => document.removeEventListener("click", close);
|
|
534
529
|
}, [refs.floating, refs.reference]);
|
|
535
530
|
// update when selection changes
|
|
536
|
-
|
|
531
|
+
useEffect(() => {
|
|
537
532
|
update();
|
|
538
533
|
}, [selectedItems]);
|
|
539
534
|
const referenceEl = (_b = refs === null || refs === void 0 ? void 0 : refs.reference) === null || _b === void 0 ? void 0 : _b.current;
|
|
@@ -542,12 +537,12 @@ const TagBox = (0, styled_components_1.default)(({ className, data = [], placeho
|
|
|
542
537
|
const scrollActive = scrollEl
|
|
543
538
|
? (scrollEl === null || scrollEl === void 0 ? void 0 : scrollEl.scrollHeight) > (scrollEl === null || scrollEl === void 0 ? void 0 : scrollEl.clientHeight)
|
|
544
539
|
: false;
|
|
545
|
-
return ((
|
|
540
|
+
return (_jsxs("div", { className: className + " mfTagBox", children: [label && (_jsx(FieldLabel, { error: error, asterisk: required, size: size, description: description, children: label })), _jsxs(StyledInputContainer, { className: "styledInputContainer", ref: refs.setReference, onMouseDown: () => {
|
|
546
541
|
setIsOpen(true);
|
|
547
542
|
handleFocus();
|
|
548
|
-
}, onFocus: handleFocus, size: size, variant: variant, onKeyDown: handleKeyDown, "data-open": isOpen, children: [(
|
|
543
|
+
}, onFocus: handleFocus, size: size, variant: variant, onKeyDown: handleKeyDown, "data-open": isOpen, children: [_jsx(StyledInnerContainer, { size: size, "data-button-right": arrow || clearable, children: _jsxs(PillContainer, { size: size, children: [selectedItems.map((item, index) => (_jsx(Pill, { size: "xs", onRemove: () => handleRemoveItem(item, index), children: (renderOption === null || renderOption === void 0 ? void 0 : renderOption(item)) || (_jsx(_Fragment, { children: (item === null || item === void 0 ? void 0 : item.label) || item })) }, index))), (searchable ||
|
|
549
544
|
allowCustomValue ||
|
|
550
|
-
selectedItems.length === 0) && ((
|
|
545
|
+
selectedItems.length === 0) && (_jsx(StyledInput, { inputRef: inputRef, onChange: (e) => {
|
|
551
546
|
if (searchFn !== undefined) {
|
|
552
547
|
searchFn === null || searchFn === void 0 ? void 0 : searchFn(e.target.value);
|
|
553
548
|
}
|
|
@@ -556,35 +551,35 @@ const TagBox = (0, styled_components_1.default)(({ className, data = [], placeho
|
|
|
556
551
|
}
|
|
557
552
|
update();
|
|
558
553
|
}, placeholder: placeholder, size: size, readOnly: !(searchable || allowCustomValue) }))] }) }), clearable &&
|
|
559
|
-
(selectedItems.length > 0 || !!((_f = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _f === void 0 ? void 0 : _f.value)) ? ((
|
|
554
|
+
(selectedItems.length > 0 || !!((_f = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _f === void 0 ? void 0 : _f.value)) ? (_jsx(ClearButton, { onClick: handleClear })) : arrow ? (_jsx(ArrowButton, { onClick: (e) => {
|
|
560
555
|
e.preventDefault();
|
|
561
556
|
}, onMouseDown: (e) => {
|
|
562
557
|
e.preventDefault();
|
|
563
558
|
e.stopPropagation();
|
|
564
559
|
toggleOpen();
|
|
565
|
-
} })) : null] }), isOpen && ((
|
|
566
|
-
? groups.map((group) => ((
|
|
567
|
-
return ((
|
|
560
|
+
} })) : null] }), isOpen && (_jsx(StyledFloatContainer, { ref: refs.setFloating, style: floatingStyles, className: "mfFloating", children: _jsx(ExtendedStyledContent, { className: "mfFloatingContent", style: { width: contentWidth, maxWidth: contentWidth }, variant: variant, onScroll: onScroll, "data-scroll-active": scrollActive, "data-empty": filteredItems.length === 0, children: !loading && grouped
|
|
561
|
+
? groups.map((group) => (_jsxs("div", { children: [_jsx(GroupTitle, { size: size, children: group.label }), group.items.map((item, index) => {
|
|
562
|
+
return (_jsx(Tooltip, { content: TooltipContent ? (_jsx(TooltipContent, { data: item.data })) : null, side: "left", children: _jsx(StyledItem, { className: "mfFloatingItem", onClick: (e) => {
|
|
568
563
|
e.preventDefault();
|
|
569
564
|
e.stopPropagation();
|
|
570
565
|
handleItemClick(item);
|
|
571
566
|
}, "data-highlighted": isObjectArray
|
|
572
567
|
? (preSelected === null || preSelected === void 0 ? void 0 : preSelected.value) ===
|
|
573
568
|
item.value
|
|
574
|
-
: preSelected === item, size: size, children: (renderOption === null || renderOption === void 0 ? void 0 : renderOption(item)) || ((
|
|
569
|
+
: preSelected === item, size: size, children: (renderOption === null || renderOption === void 0 ? void 0 : renderOption(item)) || (_jsx(_Fragment, { children: (item === null || item === void 0 ? void 0 : item.label) || item })) }, index) }, index));
|
|
575
570
|
})] }, group.label)))
|
|
576
571
|
: filteredItems.map((item, index) => {
|
|
577
|
-
return ((
|
|
572
|
+
return (_jsx(Tooltip, { content: TooltipContent ? (_jsx(TooltipContent, { data: item.data })) : null, side: "left", children: _jsx(StyledItem, { className: "mfFloatingItem", onClick: (e) => {
|
|
578
573
|
e.preventDefault();
|
|
579
574
|
e.stopPropagation();
|
|
580
575
|
handleItemClick(item);
|
|
581
576
|
}, "data-highlighted": isObjectArray
|
|
582
577
|
? (preSelected === null || preSelected === void 0 ? void 0 : preSelected.value) ===
|
|
583
578
|
item.value
|
|
584
|
-
: preSelected === item, size: size, children: (renderOption === null || renderOption === void 0 ? void 0 : renderOption(item)) || ((
|
|
579
|
+
: preSelected === item, size: size, children: (renderOption === null || renderOption === void 0 ? void 0 : renderOption(item)) || (_jsx(_Fragment, { children: (item === null || item === void 0 ? void 0 : item.label) || item })) }, index) }, index));
|
|
585
580
|
}) }) }))] }));
|
|
586
581
|
}) `
|
|
587
582
|
position: relative;
|
|
588
583
|
cursor: pointer;
|
|
589
584
|
`;
|
|
590
|
-
|
|
585
|
+
export default TagBox;
|