@gobolt/genesis 0.3.22 → 0.3.24
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/components/Badge/Badge.js +32 -9
- package/dist/components/Badge/styles.d.ts +10 -1
- package/dist/components/Badge/styles.js +14 -39
- package/dist/components/Button/Button.js +27 -4
- package/dist/components/Button/IconButton.js +27 -4
- package/dist/components/Button/components/Button/Button.d.ts +16 -0
- package/dist/components/Button/components/Button/Button.js +13 -0
- package/dist/components/Button/components/Button/styles.d.ts +1 -0
- package/dist/components/Button/components/Button/styles.js +118 -0
- package/dist/components/Button/constants/index.d.ts +163 -0
- package/dist/components/Button/constants/index.js +89 -0
- package/dist/components/Button/icon-button-styles.d.ts +12 -1
- package/dist/components/Button/icon-button-styles.js +16 -69
- package/dist/components/Button/styles.d.ts +16 -1
- package/dist/components/Button/styles.js +30 -88
- package/dist/components/Input/Input.js +29 -6
- package/dist/components/Input/styles.d.ts +18 -1
- package/dist/components/Input/styles.js +42 -146
- package/dist/components/Select/Select.js +125 -101
- package/dist/components/Select/SelectTrigger.js +57 -71
- package/dist/components/Table/Table.js +27 -8
- package/dist/components/Table/TableControls/CustomPagination.js +66 -50
- package/dist/components/Table/TableControls/PaginationNumber.js +43 -27
- package/dist/components/Table/TableControls/PrimaryTableControlsRow.js +17 -16
- package/dist/components/Table/TableControls/SecondaryTableControlsRow.js +36 -14
- package/dist/components/Table/TableControls/TableControls.js +4 -3
- package/dist/components/Table/TablePagination.js +21 -4
- package/dist/components/Table/__mocks__/table-mocks.js +24 -15
- package/dist/components/Table/styles.d.ts +15 -1
- package/dist/components/Table/styles.js +13 -57
- package/dist/components/Table/useTable.js +166 -69
- package/dist/components/TableWithControls/TableWithControls.js +7 -6
- package/dist/components/TableWithControls/components/Badge/Badge.d.ts +16 -0
- package/dist/components/TableWithControls/components/Badge/Badge.js +28 -0
- package/dist/components/TableWithControls/components/Badge/index.d.ts +2 -0
- package/dist/components/TableWithControls/components/Badge/index.js +1 -0
- package/dist/components/TableWithControls/components/Badge/styles.d.ts +4 -0
- package/dist/components/TableWithControls/components/Badge/styles.js +46 -0
- package/dist/components/TableWithControls/components/Button/Button.d.ts +16 -0
- package/dist/components/TableWithControls/components/Button/Button.js +13 -0
- package/dist/components/TableWithControls/components/Button/IconButton.d.ts +8 -0
- package/dist/components/TableWithControls/components/Button/IconButton.js +9 -0
- package/dist/components/TableWithControls/components/Button/icon-button-styles.d.ts +1 -0
- package/dist/components/TableWithControls/components/Button/icon-button-styles.js +76 -0
- package/dist/components/TableWithControls/components/Button/index.d.ts +4 -0
- package/dist/components/TableWithControls/components/Button/index.js +2 -0
- package/dist/components/TableWithControls/components/Button/styles.d.ts +1 -0
- package/dist/components/TableWithControls/components/Button/styles.js +118 -0
- package/dist/components/TableWithControls/components/Input/Input.d.ts +13 -0
- package/dist/components/TableWithControls/components/Input/Input.js +34 -0
- package/dist/components/TableWithControls/components/Input/index.d.ts +2 -0
- package/dist/components/TableWithControls/components/Input/index.js +1 -0
- package/dist/components/TableWithControls/components/Input/styles.d.ts +1 -0
- package/dist/components/TableWithControls/components/Input/styles.js +180 -0
- package/dist/components/TableWithControls/components/Select/Select.d.ts +26 -0
- package/dist/components/TableWithControls/components/Select/Select.js +175 -0
- package/dist/components/TableWithControls/components/Select/SelectTrigger.d.ts +23 -0
- package/dist/components/TableWithControls/components/Select/SelectTrigger.js +103 -0
- package/dist/components/TableWithControls/components/Select/index.d.ts +2 -0
- package/dist/components/TableWithControls/components/Select/index.js +1 -0
- package/dist/components/TableWithControls/components/Table/Table.d.ts +51 -0
- package/dist/components/TableWithControls/components/Table/Table.js +14 -0
- package/dist/components/TableWithControls/components/Table/TableControls/CustomPagination.d.ts +13 -0
- package/dist/components/TableWithControls/components/Table/TableControls/CustomPagination.js +158 -0
- package/dist/components/TableWithControls/components/Table/TableControls/PaginationNumber.d.ts +7 -0
- package/dist/components/TableWithControls/components/Table/TableControls/PaginationNumber.js +30 -0
- package/dist/components/TableWithControls/components/Table/TableControls/PrimaryTableControlsRow.d.ts +18 -0
- package/dist/components/TableWithControls/components/Table/TableControls/PrimaryTableControlsRow.js +77 -0
- package/dist/components/TableWithControls/components/Table/TableControls/SecondaryTableControlsRow.d.ts +11 -0
- package/dist/components/TableWithControls/components/Table/TableControls/SecondaryTableControlsRow.js +43 -0
- package/dist/components/TableWithControls/components/Table/TableControls/TableControls.d.ts +14 -0
- package/dist/components/TableWithControls/components/Table/TableControls/TableControls.js +13 -0
- package/dist/components/TableWithControls/components/Table/TableControls/index.d.ts +2 -0
- package/dist/components/TableWithControls/components/Table/TableControls/index.js +1 -0
- package/dist/components/TableWithControls/components/Table/TablePagination.d.ts +13 -0
- package/dist/components/TableWithControls/components/Table/TablePagination.js +11 -0
- package/dist/components/TableWithControls/components/Table/__mocks__/table-mocks.d.ts +20 -0
- package/dist/components/TableWithControls/components/Table/__mocks__/table-mocks.js +301 -0
- package/dist/components/TableWithControls/components/Table/index.d.ts +6 -0
- package/dist/components/TableWithControls/components/Table/index.js +3 -0
- package/dist/components/TableWithControls/components/Table/styles.d.ts +14 -0
- package/dist/components/TableWithControls/components/Table/styles.js +64 -0
- package/dist/components/TableWithControls/components/Table/useTable.d.ts +26 -0
- package/dist/components/TableWithControls/components/Table/useTable.js +141 -0
- package/dist/components/TableWithControls/components/TableWithControls/TableWithControls.d.ts +12 -0
- package/dist/components/TableWithControls/components/TableWithControls/TableWithControls.js +20 -0
- package/dist/components/TableWithControls/components/TableWithControls/useTableWithControls.d.ts +29 -0
- package/dist/components/TableWithControls/components/TableWithControls/useTableWithControls.js +136 -0
- package/dist/components/TableWithControls/components/Tooltip/Tooltip.d.ts +7 -0
- package/dist/components/TableWithControls/components/Tooltip/Tooltip.js +8 -0
- package/dist/components/TableWithControls/components/Tooltip/index.d.ts +2 -0
- package/dist/components/TableWithControls/components/Tooltip/index.js +1 -0
- package/dist/components/TableWithControls/components/Tooltip/styles.d.ts +6 -0
- package/dist/components/TableWithControls/components/Tooltip/styles.js +26 -0
- package/dist/components/TableWithControls/components/Typography/Typography.d.ts +17 -0
- package/dist/components/TableWithControls/components/Typography/Typography.js +16 -0
- package/dist/components/TableWithControls/components/Typography/index.d.ts +2 -0
- package/dist/components/TableWithControls/components/Typography/index.js +1 -0
- package/dist/components/TableWithControls/components/Typography/styles.d.ts +3 -0
- package/dist/components/TableWithControls/components/Typography/styles.js +54 -0
- package/dist/components/TableWithControls/components/UtilityButton/UtilityButton.d.ts +5 -0
- package/dist/components/TableWithControls/components/UtilityButton/UtilityButton.js +9 -0
- package/dist/components/TableWithControls/components/UtilityButton/index.d.ts +2 -0
- package/dist/components/TableWithControls/components/UtilityButton/index.js +1 -0
- package/dist/components/TableWithControls/components/shared/DropdownChevron.d.ts +2 -0
- package/dist/components/TableWithControls/components/shared/DropdownChevron.js +7 -0
- package/dist/components/TableWithControls/constants/index.d.ts +163 -0
- package/dist/components/TableWithControls/constants/index.js +89 -0
- package/dist/components/TableWithControls/types/events.d.ts +22 -0
- package/dist/components/TableWithControls/types/events.js +1 -0
- package/dist/components/TableWithControls/useTableWithControls.js +63 -82
- package/dist/components/TableWithControls/utils/icon-util.d.ts +3 -0
- package/dist/components/TableWithControls/utils/icon-util.js +116 -0
- package/dist/components/Tooltip/Tooltip.js +2 -1
- package/dist/components/Tooltip/styles.d.ts +14 -1
- package/dist/components/Tooltip/styles.js +14 -23
- package/dist/components/Typography/Typography.js +29 -6
- package/dist/components/Typography/styles.d.ts +21 -3
- package/dist/components/Typography/styles.js +24 -41
- package/dist/components/UtilityButton/UtilityButton.js +27 -4
- package/dist/components/UtilityButton/components/Button/Button.d.ts +16 -0
- package/dist/components/UtilityButton/components/Button/Button.js +13 -0
- package/dist/components/UtilityButton/components/Button/IconButton.d.ts +8 -0
- package/dist/components/UtilityButton/components/Button/IconButton.js +9 -0
- package/dist/components/UtilityButton/components/Button/icon-button-styles.d.ts +1 -0
- package/dist/components/UtilityButton/components/Button/icon-button-styles.js +76 -0
- package/dist/components/UtilityButton/components/Button/index.d.ts +4 -0
- package/dist/components/UtilityButton/components/Button/index.js +2 -0
- package/dist/components/UtilityButton/components/Button/styles.d.ts +1 -0
- package/dist/components/UtilityButton/components/Button/styles.js +118 -0
- package/dist/components/UtilityButton/components/UtilityButton/UtilityButton.d.ts +5 -0
- package/dist/components/UtilityButton/components/UtilityButton/UtilityButton.js +9 -0
- package/dist/components/UtilityButton/constants/index.d.ts +163 -0
- package/dist/components/UtilityButton/constants/index.js +89 -0
- package/dist/components/index.js +7 -0
- package/dist/components/shared/DropdownChevron.js +14 -3
- package/dist/index.js +10 -89
- package/dist/utils/icon-util.d.ts +2 -2
- package/dist/utils/icon-util.js +19 -16
- package/package.json +1 -1
- package/dist/components/Button/Button.tsx +0 -59
- package/dist/components/Table/Table.tsx +0 -112
- package/dist/components/Table/useTable.ts +0 -194
- package/dist/components/TableWithControls/TableWithControls.tsx +0 -54
- package/dist/components/TableWithControls/useTableWithControls.tsx +0 -161
- package/dist/components/UtilityButton/UtilityButton.tsx +0 -36
- package/dist/components/index.ts +0 -7
- package/dist/constants/index.ts +0 -98
- package/dist/genesis-theme.types.d.ts +0 -263
- package/dist/genesis-theme.types.js +0 -6
- package/dist/index.ts +0 -10
- package/dist/styled.d.ts +0 -1
- package/dist/styled.js +0 -44
- package/dist/styles/theme/genesis-theme.types.ts +0 -297
- package/dist/utils/styled.ts +0 -52
- /package/dist/{Table → components/Table/Table}/Table.d.ts +0 -0
- /package/dist/{Table → components/Table/Table}/Table.js +0 -0
- /package/dist/{Table → components/Table/Table}/TableControls/CustomPagination.d.ts +0 -0
- /package/dist/{Table → components/Table/Table}/TableControls/CustomPagination.js +0 -0
- /package/dist/{Table → components/Table/Table}/TableControls/PaginationNumber.d.ts +0 -0
- /package/dist/{Table → components/Table/Table}/TableControls/PaginationNumber.js +0 -0
- /package/dist/{Table → components/Table/Table}/styles.d.ts +0 -0
- /package/dist/{Table → components/Table/Table}/styles.js +0 -0
- /package/dist/{Table → components/Table/Table}/useTable.d.ts +0 -0
- /package/dist/{Table → components/Table/Table}/useTable.js +0 -0
- /package/dist/{Typography → components/Table/Typography}/Typography.d.ts +0 -0
- /package/dist/{Typography → components/Table/Typography}/Typography.js +0 -0
- /package/dist/{Typography → components/Table/Typography}/index.d.ts +0 -0
- /package/dist/{Typography → components/Table/Typography}/index.js +0 -0
- /package/dist/{Typography → components/Table/Typography}/styles.d.ts +0 -0
- /package/dist/{Typography → components/Table/Typography}/styles.js +0 -0
|
@@ -1,91 +1,114 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
5
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
6
|
+
var t = {};
|
|
7
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
8
|
+
t[p] = s[p];
|
|
9
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
10
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
11
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
12
|
+
t[p[i]] = s[p[i]];
|
|
13
|
+
}
|
|
14
|
+
return t;
|
|
15
|
+
};
|
|
16
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
17
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
18
|
+
if (!m) return o;
|
|
19
|
+
var i = m.call(o), r, ar = [], e;
|
|
20
|
+
try {
|
|
21
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
22
|
+
}
|
|
23
|
+
catch (error) { e = { error: error }; }
|
|
24
|
+
finally {
|
|
25
|
+
try {
|
|
26
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
27
|
+
}
|
|
28
|
+
finally { if (e) throw e.error; }
|
|
29
|
+
}
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
33
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
34
|
+
if (ar || !(i in from)) {
|
|
35
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
36
|
+
ar[i] = from[i];
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
40
|
+
};
|
|
1
41
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
42
|
import React from "react";
|
|
3
43
|
import { TYPE } from "@gobolt/genesis/constants";
|
|
4
44
|
import styled from "@gobolt/genesis/utils/styled";
|
|
5
45
|
import SelectTrigger from "./SelectTrigger";
|
|
6
46
|
import { useGenesis } from "@gobolt/genesis/providers";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
:
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
: theme.colors.onsurface["copy-dark"]};
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
&:active {
|
|
76
|
-
background-color: ${({ theme, type = "primary" }) => theme.colors[type].hover.backgroundColor};
|
|
77
|
-
color: ${({ theme, type = "primary" }) => theme.colors[type].hover.color};
|
|
78
|
-
}
|
|
79
|
-
`}
|
|
80
|
-
`;
|
|
81
|
-
const Select = ({ type = TYPE.primary, state, variant = "none", defaultValue, onChange, size = "normal", width = "100%", value, options = [], placeholder, selectDisplayMode = "count", isSingleSelect = true, disabled = false, ...rest }) => {
|
|
82
|
-
const [isOpen, setIsOpen] = React.useState(false);
|
|
83
|
-
const [isFocused, setIsFocused] = React.useState(false);
|
|
84
|
-
const [dropdownAnimation, setDropdownAnimation] = React.useState("entered");
|
|
85
|
-
const selectReference = React.useRef(null);
|
|
86
|
-
const { theme } = useGenesis();
|
|
87
|
-
React.useEffect(() => {
|
|
88
|
-
const handleClickOutside = (event) => {
|
|
47
|
+
var SelectWrapper = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n background-color: transparent;\n border-radius: 8px;\n width: auto;\n\n ", "\n\n ", "\n"], ["\n position: relative;\n background-color: transparent;\n border-radius: 8px;\n width: auto;\n\n ", "\n\n ", "\n"])), function (_a) {
|
|
48
|
+
var $isFocused = _a.$isFocused, theme = _a.theme, _b = _a.type, type = _b === void 0 ? "primary" : _b;
|
|
49
|
+
return $isFocused &&
|
|
50
|
+
"\n background-color: transparent;\n ";
|
|
51
|
+
}, function (_a) {
|
|
52
|
+
var disabled = _a.disabled, theme = _a.theme;
|
|
53
|
+
return disabled &&
|
|
54
|
+
"\n cursor: not-allowed;\n \n &:hover {\n border-color: ".concat(theme.colors.inputs.surface.border, ";\n }\n ");
|
|
55
|
+
});
|
|
56
|
+
var SelectDropdown = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n padding: 0px;\n border-radius: 0px;\n animation-duration: ", ";\n transition: all ", "\n cubic-bezier(0.645, 0.045, 0.355, 1);\n\n &.entering {\n opacity: 0;\n transform: scaleY(0.8);\n }\n\n &.entered {\n opacity: 1;\n transform: scaleY(1);\n }\n\n &.exiting {\n opacity: 0;\n transform: scaleY(0.8);\n }\n"], ["\n padding: 0px;\n border-radius: 0px;\n animation-duration: ", ";\n transition: all ", "\n cubic-bezier(0.645, 0.045, 0.355, 1);\n\n &.entering {\n opacity: 0;\n transform: scaleY(0.8);\n }\n\n &.entered {\n opacity: 1;\n transform: scaleY(1);\n }\n\n &.exiting {\n opacity: 0;\n transform: scaleY(0.8);\n }\n"])), function (_a) {
|
|
57
|
+
var theme = _a.theme;
|
|
58
|
+
return "".concat(theme.motion.veryfast, "s");
|
|
59
|
+
}, function (_a) {
|
|
60
|
+
var theme = _a.theme;
|
|
61
|
+
return "".concat(theme.motion.veryfast, "s");
|
|
62
|
+
});
|
|
63
|
+
var MenuItem = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n padding: 8px 12px;\n cursor: ", ";\n background-color: ", ";\n color: ", ";\n display: flex;\n justify-content: space-between;\n align-items: center;\n transition: all ", " ease-in-out;\n opacity: ", ";\n\n ", "\n"], ["\n padding: 8px 12px;\n cursor: ", ";\n background-color: ", ";\n color: ", ";\n display: flex;\n justify-content: space-between;\n align-items: center;\n transition: all ", " ease-in-out;\n opacity: ", ";\n\n ", "\n"])), function (_a) {
|
|
64
|
+
var disabled = _a.disabled;
|
|
65
|
+
return (disabled ? "not-allowed" : "pointer");
|
|
66
|
+
}, function (_a) {
|
|
67
|
+
var $isSelected = _a.$isSelected, theme = _a.theme, _b = _a.type, type = _b === void 0 ? "primary" : _b;
|
|
68
|
+
return $isSelected ? theme.colors[type].hover.backgroundColor : "transparent";
|
|
69
|
+
}, function (_a) {
|
|
70
|
+
var $isSelected = _a.$isSelected, disabled = _a.disabled, theme = _a.theme, _b = _a.type, type = _b === void 0 ? "primary" : _b;
|
|
71
|
+
return disabled
|
|
72
|
+
? theme.colors.inputs.onsurface.disabled
|
|
73
|
+
: $isSelected
|
|
74
|
+
? theme.colors[type].hover.color
|
|
75
|
+
: theme.colors.onsurface.copy;
|
|
76
|
+
}, function (_a) {
|
|
77
|
+
var theme = _a.theme;
|
|
78
|
+
return "".concat(theme.motion.veryfast, "s");
|
|
79
|
+
}, function (_a) {
|
|
80
|
+
var disabled = _a.disabled;
|
|
81
|
+
return (disabled ? 0.5 : 1);
|
|
82
|
+
}, function (_a) {
|
|
83
|
+
var disabled = _a.disabled;
|
|
84
|
+
return !disabled &&
|
|
85
|
+
"\n &:hover {\n background-color: ".concat(function (_a) {
|
|
86
|
+
var $isSelected = _a.$isSelected, theme = _a.theme, _b = _a.type, type = _b === void 0 ? "primary" : _b;
|
|
87
|
+
return $isSelected
|
|
88
|
+
? theme.colors[type].hover.backgroundColor
|
|
89
|
+
: "rgba(0, 0, 0, 0.04)";
|
|
90
|
+
}, ";\n color: ").concat(function (_a) {
|
|
91
|
+
var $isSelected = _a.$isSelected, theme = _a.theme, _b = _a.type, type = _b === void 0 ? "primary" : _b;
|
|
92
|
+
return $isSelected
|
|
93
|
+
? theme.colors[type].hover.color
|
|
94
|
+
: theme.colors.onsurface["copy-dark"];
|
|
95
|
+
}, ";\n }\n\n &:active {\n background-color: ").concat(function (_a) {
|
|
96
|
+
var theme = _a.theme, _b = _a.type, type = _b === void 0 ? "primary" : _b;
|
|
97
|
+
return theme.colors[type].hover.backgroundColor;
|
|
98
|
+
}, ";\n color: ").concat(function (_a) {
|
|
99
|
+
var theme = _a.theme, _b = _a.type, type = _b === void 0 ? "primary" : _b;
|
|
100
|
+
return theme.colors[type].hover.color;
|
|
101
|
+
}, ";\n }\n ");
|
|
102
|
+
});
|
|
103
|
+
var Select = function (_a) {
|
|
104
|
+
var _b = _a.type, type = _b === void 0 ? TYPE.primary : _b, state = _a.state, _c = _a.variant, variant = _c === void 0 ? "none" : _c, defaultValue = _a.defaultValue, onChange = _a.onChange, _d = _a.size, size = _d === void 0 ? "normal" : _d, _e = _a.width, width = _e === void 0 ? "100%" : _e, value = _a.value, _f = _a.options, options = _f === void 0 ? [] : _f, placeholder = _a.placeholder, _g = _a.selectDisplayMode, selectDisplayMode = _g === void 0 ? "count" : _g, _h = _a.isSingleSelect, isSingleSelect = _h === void 0 ? true : _h, _j = _a.disabled, disabled = _j === void 0 ? false : _j, rest = __rest(_a, ["type", "state", "variant", "defaultValue", "onChange", "size", "width", "value", "options", "placeholder", "selectDisplayMode", "isSingleSelect", "disabled"]);
|
|
105
|
+
var _k = __read(React.useState(false), 2), isOpen = _k[0], setIsOpen = _k[1];
|
|
106
|
+
var _l = __read(React.useState(false), 2), isFocused = _l[0], setIsFocused = _l[1];
|
|
107
|
+
var _m = __read(React.useState("entered"), 2), dropdownAnimation = _m[0], setDropdownAnimation = _m[1];
|
|
108
|
+
var selectReference = React.useRef(null);
|
|
109
|
+
var theme = useGenesis().theme;
|
|
110
|
+
React.useEffect(function () {
|
|
111
|
+
var handleClickOutside = function (event) {
|
|
89
112
|
if (selectReference.current &&
|
|
90
113
|
!selectReference.current.contains(event.target)) {
|
|
91
114
|
handleClose();
|
|
@@ -95,18 +118,18 @@ const Select = ({ type = TYPE.primary, state, variant = "none", defaultValue, on
|
|
|
95
118
|
if (isOpen) {
|
|
96
119
|
document.addEventListener("mousedown", handleClickOutside);
|
|
97
120
|
}
|
|
98
|
-
return ()
|
|
121
|
+
return function () {
|
|
99
122
|
document.removeEventListener("mousedown", handleClickOutside);
|
|
100
123
|
};
|
|
101
124
|
}, [isOpen]);
|
|
102
|
-
|
|
125
|
+
var handleClose = function () {
|
|
103
126
|
setDropdownAnimation("exiting");
|
|
104
|
-
setTimeout(()
|
|
127
|
+
setTimeout(function () {
|
|
105
128
|
setIsOpen(false);
|
|
106
129
|
setDropdownAnimation("entered");
|
|
107
130
|
}, 200);
|
|
108
131
|
};
|
|
109
|
-
|
|
132
|
+
var handleTriggerClick = function () {
|
|
110
133
|
if (disabled)
|
|
111
134
|
return;
|
|
112
135
|
setIsFocused(true);
|
|
@@ -116,21 +139,21 @@ const Select = ({ type = TYPE.primary, state, variant = "none", defaultValue, on
|
|
|
116
139
|
else {
|
|
117
140
|
setIsOpen(true);
|
|
118
141
|
setDropdownAnimation("entering");
|
|
119
|
-
setTimeout(()
|
|
142
|
+
setTimeout(function () {
|
|
120
143
|
setDropdownAnimation("entered");
|
|
121
144
|
}, 0);
|
|
122
145
|
}
|
|
123
146
|
};
|
|
124
|
-
|
|
147
|
+
var handleOptionSelect = function (optionValue) {
|
|
125
148
|
if (disabled)
|
|
126
149
|
return;
|
|
127
|
-
|
|
150
|
+
var newValue;
|
|
128
151
|
if (Array.isArray(value)) {
|
|
129
152
|
// Handle multi-select
|
|
130
|
-
|
|
153
|
+
var stringValue = value.map(String);
|
|
131
154
|
newValue = stringValue.includes(optionValue)
|
|
132
|
-
? stringValue.filter((v)
|
|
133
|
-
: [
|
|
155
|
+
? stringValue.filter(function (v) { return v !== optionValue; })
|
|
156
|
+
: __spreadArray(__spreadArray([], __read(stringValue), false), [optionValue], false);
|
|
134
157
|
}
|
|
135
158
|
else {
|
|
136
159
|
// Handle single select
|
|
@@ -139,23 +162,23 @@ const Select = ({ type = TYPE.primary, state, variant = "none", defaultValue, on
|
|
|
139
162
|
// Autoclose if single select or variant is 'simple'
|
|
140
163
|
if (isSingleSelect || variant === "simple") {
|
|
141
164
|
handleClose(); // Close immediately
|
|
142
|
-
onChange
|
|
165
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
|
|
143
166
|
}
|
|
144
167
|
else {
|
|
145
|
-
onChange
|
|
168
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
|
|
146
169
|
}
|
|
147
170
|
};
|
|
148
|
-
|
|
171
|
+
var getSelectModeValue = function (value) {
|
|
149
172
|
if (Array.isArray(value)) {
|
|
150
173
|
if (selectDisplayMode === "count") {
|
|
151
|
-
return
|
|
174
|
+
return "".concat(value.length, " selected");
|
|
152
175
|
}
|
|
153
176
|
return value;
|
|
154
177
|
}
|
|
155
178
|
return value;
|
|
156
179
|
};
|
|
157
|
-
|
|
158
|
-
return (_jsx("div", { style: { position: "relative", width }, children: _jsxs(SelectWrapper, { ref: selectReference, "$isFocused": isFocused, type: type, disabled: disabled, onFocus: ()
|
|
180
|
+
var modeValue = getSelectModeValue(value);
|
|
181
|
+
return (_jsx("div", { style: { position: "relative", width: width }, children: _jsxs(SelectWrapper, { ref: selectReference, "$isFocused": isFocused, type: type, disabled: disabled, onFocus: function () { return !disabled && setIsFocused(true); }, onBlur: function () { return !isOpen && setIsFocused(false); }, tabIndex: disabled ? -1 : 0, children: [_jsx(SelectTrigger, { theme: theme, type: type, state: state, value: modeValue, placeholder: placeholder, open: isOpen, onClick: handleTriggerClick, options: options, disabled: disabled, variant: variant }), isOpen && !disabled && (_jsx(SelectDropdown, { type: type, state: state, className: dropdownAnimation, style: {
|
|
159
182
|
position: "absolute",
|
|
160
183
|
top: "calc(100% + 4px)",
|
|
161
184
|
left: 0,
|
|
@@ -165,11 +188,12 @@ const Select = ({ type = TYPE.primary, state, variant = "none", defaultValue, on
|
|
|
165
188
|
boxShadow: "0 2px 8px rgba(0, 0, 0, 0.15)",
|
|
166
189
|
border: "1px solid #d9d9d9",
|
|
167
190
|
transformOrigin: "top",
|
|
168
|
-
}, children: options.map((option)
|
|
169
|
-
|
|
191
|
+
}, children: options.map(function (option) {
|
|
192
|
+
var isSelected = Array.isArray(value)
|
|
170
193
|
? value.map(String).includes(option.value)
|
|
171
194
|
: String(value) === option.value;
|
|
172
|
-
return (_jsxs(MenuItem, { onClick: ()
|
|
195
|
+
return (_jsxs(MenuItem, { onClick: function () { return handleOptionSelect(option.value); }, "$isSelected": isSelected, type: type, disabled: disabled, children: [option.label, isSelected && _jsx("span", { style: { marginLeft: "8px" }, children: "\u2713" })] }, option.value));
|
|
173
196
|
}) }))] }) }));
|
|
174
197
|
};
|
|
175
198
|
export default Select;
|
|
199
|
+
var templateObject_1, templateObject_2, templateObject_3;
|
|
@@ -1,83 +1,68 @@
|
|
|
1
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
2
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
3
|
+
return cooked;
|
|
4
|
+
};
|
|
1
5
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
6
|
import React from "react";
|
|
3
7
|
import styled from "@gobolt/genesis/utils/styled";
|
|
4
8
|
import DropdownChevron from "../shared/DropdownChevron";
|
|
5
9
|
import { Typography } from "@gobolt/genesis/components";
|
|
6
|
-
|
|
10
|
+
var getBackgroundColor = function (colors, disabled, $variant) {
|
|
7
11
|
if ($variant === "simple")
|
|
8
12
|
return "#F4F4F4";
|
|
9
13
|
if (disabled)
|
|
10
14
|
return "#F4F4F4";
|
|
11
15
|
return "#fff";
|
|
12
16
|
};
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
padding:
|
|
37
|
-
|
|
38
|
-
border:
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
`}
|
|
59
|
-
`;
|
|
60
|
-
const ValueContainer = styled.div `
|
|
61
|
-
display: flex;
|
|
62
|
-
align-items: center;
|
|
63
|
-
gap: ${({ theme }) => theme.sizing.Size2}px;
|
|
64
|
-
flex: 1;
|
|
65
|
-
padding: 4px 8px;
|
|
66
|
-
`;
|
|
67
|
-
const ChevronContainer = styled.div `
|
|
68
|
-
display: flex;
|
|
69
|
-
align-items: center;
|
|
70
|
-
justify-content: center;
|
|
71
|
-
margin-right: ${({ $variant }) => ($variant === "simple" ? "4px" : "4px")};
|
|
72
|
-
margin-left: ${({ $variant }) => ($variant === "simple" ? "4px" : "0")};
|
|
73
|
-
`;
|
|
74
|
-
const SelectTrigger = ({ type = "primary", theme, state, value, placeholder = "Select...", open, onClick, renderValue, options = [], disabled = false, variant = "none", }) => {
|
|
75
|
-
const handleClick = React.useCallback(() => {
|
|
17
|
+
var TriggerWrapper = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n cursor: ", ";\n opacity: ", ";\n position: relative;\n box-shadow: ", ";\n transition: all 0.2s ease-in-out;\n min-height: ", ";\n\n &:focus-visible {\n outline: none;\n }\n\n &:focus {\n box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.12),\n 0 0 0 3px\n ", ";\n }\n\n ", "\n"], ["\n display: flex;\n align-items: center;\n justify-content: space-between;\n cursor: ", ";\n opacity: ", ";\n position: relative;\n box-shadow: ", ";\n transition: all 0.2s ease-in-out;\n min-height: ", ";\n\n &:focus-visible {\n outline: none;\n }\n\n &:focus {\n box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.12),\n 0 0 0 3px\n ", ";\n }\n\n ", "\n"])), function (_a) {
|
|
18
|
+
var $disabled = _a.$disabled;
|
|
19
|
+
return ($disabled ? "not-allowed" : "pointer");
|
|
20
|
+
}, function (_a) {
|
|
21
|
+
var $disabled = _a.$disabled;
|
|
22
|
+
return ($disabled ? 0.4 : 1);
|
|
23
|
+
}, function (_a) {
|
|
24
|
+
var $variant = _a.$variant;
|
|
25
|
+
return $variant === "simple" ? "none" : "0px 1px 2px 0px rgba(0, 0, 0, 0.12)";
|
|
26
|
+
}, function (_a) {
|
|
27
|
+
var $variant = _a.$variant;
|
|
28
|
+
return ($variant === "simple" ? "32px" : "40px");
|
|
29
|
+
}, function (_a) {
|
|
30
|
+
var theme = _a.theme, _b = _a.$themeType, $themeType = _b === void 0 ? "primary" : _b;
|
|
31
|
+
return theme.colors[$themeType].focussed.ringColor;
|
|
32
|
+
}, function (_a) {
|
|
33
|
+
var _b;
|
|
34
|
+
var $variant = _a.$variant, theme = _a.theme, $disabled = _a.$disabled;
|
|
35
|
+
return $variant === "simple"
|
|
36
|
+
? "\n padding: ".concat(theme.sizing.Size1, " ").concat(theme.sizing.Size2, ";\n background: ").concat($disabled ? theme.colors.inputs.surface.disabled : "rgba(0, 0, 0, 0.04)", ";\n border: none;\n border-radius: ").concat(theme.borderRadius.BorderRadiusSm, "px;\n min-height: ").concat(function (_a) {
|
|
37
|
+
var $variant = _a.$variant;
|
|
38
|
+
return ($variant === "simple" ? "32px" : "40px");
|
|
39
|
+
}, ";\n\n &:hover {\n border: none;\n }\n ")
|
|
40
|
+
: "\n padding: ".concat(theme.sizing.Size1, " ").concat(theme.sizing.Size2, ";\n background: ").concat($disabled
|
|
41
|
+
? theme.colors.inputs.surface.disabled
|
|
42
|
+
: (_b = theme.colors.surface.default) === null || _b === void 0 ? void 0 : _b.backgroundColor, ";\n border: 1px solid #9a9a9a;\n border-radius: ").concat(theme.borderRadius.BorderRadiusSm, "px;\n min-height: ").concat(function (_a) {
|
|
43
|
+
var $variant = _a.$variant;
|
|
44
|
+
return ($variant === "simple" ? "32px" : "40px");
|
|
45
|
+
}, ";\n\n &:hover {\n border-color: rgba(0, 0, 0, 0.2);\n }\n ");
|
|
46
|
+
});
|
|
47
|
+
var ValueContainer = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n gap: ", "px;\n flex: 1;\n padding: 4px 8px;\n"], ["\n display: flex;\n align-items: center;\n gap: ", "px;\n flex: 1;\n padding: 4px 8px;\n"])), function (_a) {
|
|
48
|
+
var theme = _a.theme;
|
|
49
|
+
return theme.sizing.Size2;
|
|
50
|
+
});
|
|
51
|
+
var ChevronContainer = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: ", ";\n margin-left: ", ";\n"], ["\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: ", ";\n margin-left: ", ";\n"])), function (_a) {
|
|
52
|
+
var $variant = _a.$variant;
|
|
53
|
+
return ($variant === "simple" ? "4px" : "4px");
|
|
54
|
+
}, function (_a) {
|
|
55
|
+
var $variant = _a.$variant;
|
|
56
|
+
return ($variant === "simple" ? "4px" : "0");
|
|
57
|
+
});
|
|
58
|
+
var SelectTrigger = function (_a) {
|
|
59
|
+
var _b = _a.type, type = _b === void 0 ? "primary" : _b, theme = _a.theme, state = _a.state, value = _a.value, _c = _a.placeholder, placeholder = _c === void 0 ? "Select..." : _c, open = _a.open, onClick = _a.onClick, renderValue = _a.renderValue, _d = _a.options, options = _d === void 0 ? [] : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e, _f = _a.variant, variant = _f === void 0 ? "none" : _f;
|
|
60
|
+
var handleClick = React.useCallback(function () {
|
|
76
61
|
if (disabled)
|
|
77
62
|
return;
|
|
78
|
-
onClick
|
|
63
|
+
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
79
64
|
}, [disabled, onClick]);
|
|
80
|
-
|
|
65
|
+
var displayValue = React.useMemo(function () {
|
|
81
66
|
if (!value)
|
|
82
67
|
return null;
|
|
83
68
|
if (renderValue)
|
|
@@ -85,19 +70,20 @@ const SelectTrigger = ({ type = "primary", theme, state, value, placeholder = "S
|
|
|
85
70
|
if (Array.isArray(value)) {
|
|
86
71
|
if (value.length === 0)
|
|
87
72
|
return null;
|
|
88
|
-
|
|
73
|
+
var selectedLabels = value
|
|
89
74
|
.map(String)
|
|
90
|
-
.map((v)
|
|
75
|
+
.map(function (v) { var _a; return (_a = options.find(function (opt) { return opt.value === v; })) === null || _a === void 0 ? void 0 : _a.label; })
|
|
91
76
|
.filter(Boolean);
|
|
92
77
|
return selectedLabels.length > 0
|
|
93
78
|
? selectedLabels.join(", ")
|
|
94
|
-
:
|
|
79
|
+
: "".concat(value.length, " selected");
|
|
95
80
|
}
|
|
96
|
-
|
|
97
|
-
return selectedOption
|
|
81
|
+
var selectedOption = options.find(function (opt) { return opt.value === String(value); });
|
|
82
|
+
return (selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) || value.toString();
|
|
98
83
|
}, [value, renderValue, options]);
|
|
99
84
|
return (_jsxs(TriggerWrapper, { "$themeType": type, "$state": state, onClick: handleClick, tabIndex: disabled ? -1 : 0, role: "button", "$disabled": disabled, "$variant": variant, style: {
|
|
100
85
|
backgroundColor: getBackgroundColor(theme, disabled, variant),
|
|
101
86
|
}, children: [_jsx(ValueContainer, { "$variant": variant, children: displayValue ? (_jsx(Typography, { variant: "body2", color: disabled ? "copy-light" : "copy", children: displayValue })) : (_jsx(Typography, { variant: "body2", color: disabled ? "copy-light" : "copy-light", children: placeholder })) }), _jsx(ChevronContainer, { "$variant": variant, children: _jsx(DropdownChevron, {}) })] }));
|
|
102
87
|
};
|
|
103
88
|
export default SelectTrigger;
|
|
89
|
+
var templateObject_1, templateObject_2, templateObject_3;
|
|
@@ -1,14 +1,33 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
1
23
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
24
|
import * as S from "./styles";
|
|
3
25
|
import CustomPagination, { PaginationStyle, } from "./TableControls/CustomPagination";
|
|
4
|
-
function Table(
|
|
5
|
-
|
|
26
|
+
function Table(_a) {
|
|
27
|
+
var columns = _a.columns, dataSource = _a.dataSource, _b = _a.rowKey, rowKey = _b === void 0 ? "id" : _b, _c = _a.size, size = _c === void 0 ? "small" : _c, onChange = _a.onChange, rowSelection = _a.rowSelection, pagination = _a.pagination, _d = _a.isMainContentCell, isMainContentCell = _d === void 0 ? false : _d, rest = __rest(_a, ["columns", "dataSource", "rowKey", "size", "onChange", "rowSelection", "pagination", "isMainContentCell"]);
|
|
28
|
+
var paginationConfig = pagination === false
|
|
6
29
|
? false
|
|
7
|
-
: {
|
|
8
|
-
|
|
9
|
-
itemRender: undefined, // Clear any existing itemRender to avoid conflicts
|
|
10
|
-
render: (properties) => (_jsx(CustomPagination, { ...properties, paginationStyle: pagination?.paginationStyle || PaginationStyle.SIMPLE })),
|
|
11
|
-
};
|
|
12
|
-
return (_jsx(S.Table, { "data-testid": "Table", dataSource: dataSource, columns: columns, rowKey: rowKey, locale: { emptyText: "No Data" }, size: size, onChange: onChange, rowSelection: rowSelection, pagination: paginationConfig, "$isMainContentCell": isMainContentCell, ...rest }));
|
|
30
|
+
: __assign(__assign({}, pagination), { itemRender: undefined, render: function (properties) { return (_jsx(CustomPagination, __assign({}, properties, { paginationStyle: (pagination === null || pagination === void 0 ? void 0 : pagination.paginationStyle) || PaginationStyle.SIMPLE }))); } });
|
|
31
|
+
return (_jsx(S.Table, __assign({ "data-testid": "Table", dataSource: dataSource, columns: columns, rowKey: rowKey, locale: { emptyText: "No Data" }, size: size, onChange: onChange, rowSelection: rowSelection, pagination: paginationConfig, "$isMainContentCell": isMainContentCell }, rest)));
|
|
13
32
|
}
|
|
14
33
|
export default Table;
|