@aivenio/aquarium 4.9.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_variables.scss +302 -302
- package/dist/atoms.cjs +1948 -1765
- package/dist/atoms.mjs +1767 -1588
- package/dist/charts.cjs +0 -209
- package/dist/charts.mjs +0 -209
- package/dist/src/atoms/Alert/Alert.js +63 -26
- package/dist/src/atoms/Banner/Banner.js +47 -18
- package/dist/src/atoms/Button/Button.d.ts +2 -2
- package/dist/src/atoms/Button/Button.js +3 -12
- package/dist/src/atoms/Card/Card.js +130 -30
- package/dist/src/atoms/Checkbox/Checkbox.js +27 -16
- package/dist/src/atoms/Chip/Chip.js +12 -6
- package/dist/src/atoms/ChoiceChip/ChoiceChip.d.ts +57 -0
- package/dist/src/atoms/ChoiceChip/ChoiceChip.js +51 -0
- package/dist/src/atoms/DataList/DataList.js +117 -32
- package/dist/src/atoms/DatePicker/RangeCalendar.js +10 -3
- package/dist/src/atoms/DropdownMenu/DropdownMenu.d.ts +0 -131
- package/dist/src/atoms/DropdownMenu/DropdownMenu.js +4 -4
- package/dist/src/atoms/Link/Link.js +4 -5
- package/dist/src/atoms/Navigation/Navigation.js +59 -22
- package/dist/src/atoms/PageHeader/PageHeader.js +18 -7
- package/dist/src/atoms/ProgressBar/ProgressBar.js +22 -11
- package/dist/src/atoms/RadioButton/RadioButton.js +12 -6
- package/dist/src/atoms/Section/Section.js +29 -11
- package/dist/src/atoms/Select/Select.js +92 -36
- package/dist/src/atoms/Stepper/Stepper.js +92 -30
- package/dist/src/atoms/Switch/Switch.js +24 -10
- package/dist/src/atoms/Table/Table.d.ts +294 -2
- package/dist/src/atoms/Table/Table.js +120 -35
- package/dist/src/atoms/Toast/Toast.d.ts +146 -0
- package/dist/src/atoms/Toast/Toast.js +34 -16
- package/dist/src/atoms/index.d.ts +1 -0
- package/dist/src/atoms/index.js +2 -1
- package/dist/src/molecules/Badge/Badge.js +3 -2
- package/dist/src/molecules/ChoiceChipGroup/ChoiceChipGroup.d.ts +65 -0
- package/dist/src/molecules/ChoiceChipGroup/ChoiceChipGroup.js +57 -0
- package/dist/src/molecules/Combobox/Combobox.js +2 -2
- package/dist/src/molecules/Drawer/Drawer.js +12 -4
- package/dist/src/molecules/Modal/Modal.js +12 -4
- package/dist/src/molecules/TagLabel/TagLabel.js +3 -2
- package/dist/src/molecules/index.d.ts +2 -1
- package/dist/src/molecules/index.js +3 -2
- package/dist/src/tokens/tokens.json +0 -209
- package/dist/styles.css +373 -368
- package/dist/system.cjs +2087 -1870
- package/dist/system.mjs +1909 -1693
- package/dist/tokens.json +0 -209
- package/dist/tsconfig.module.tsbuildinfo +1 -1
- package/dist/types/designTokens.d.ts +1 -1
- package/package.json +4 -4
- package/dist/src/molecules/ChoiceChip/ChoiceChip.d.ts +0 -24
- package/dist/src/molecules/ChoiceChip/ChoiceChip.js +0 -34
|
@@ -12,6 +12,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
12
12
|
};
|
|
13
13
|
import React from 'react';
|
|
14
14
|
import { clsx } from 'clsx';
|
|
15
|
+
import { tv } from 'tailwind-variants';
|
|
15
16
|
import { InlineIcon } from '../../../src/molecules/Icon/Icon';
|
|
16
17
|
import { Typography } from '../../../src/molecules/Typography/Typography';
|
|
17
18
|
import { Checkbox } from '../../../src/atoms/Checkbox/Checkbox';
|
|
@@ -19,10 +20,118 @@ import { RadioButton } from '../../../src/atoms/RadioButton/RadioButton';
|
|
|
19
20
|
import chevronDown from '../../../src/icons/chevronDown';
|
|
20
21
|
import chevronUp from '../../../src/icons/chevronUp';
|
|
21
22
|
const HeadContext = React.createContext(null);
|
|
22
|
-
const
|
|
23
|
+
const tableClasses = tv({
|
|
24
|
+
base: 'w-full relative typography-default border-spacing-0 border-separate',
|
|
25
|
+
});
|
|
26
|
+
const rowClassNamesBase = tv({
|
|
27
|
+
base: 'children:border-default group children:last:border-b-0 hover:bg-muted',
|
|
28
|
+
});
|
|
29
|
+
export const rowClassNames = rowClassNamesBase();
|
|
30
|
+
const cellClassNamesBase = tv({
|
|
31
|
+
base: 'px-4 border-b typography-small leading-[18px]',
|
|
32
|
+
});
|
|
33
|
+
export const cellClassNames = cellClassNamesBase();
|
|
34
|
+
const rowClasses = tv({
|
|
35
|
+
extend: rowClassNamesBase,
|
|
36
|
+
variants: {
|
|
37
|
+
disabled: {
|
|
38
|
+
true: 'opacity-70',
|
|
39
|
+
false: '',
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
export const bodyCellClasses = tv({
|
|
44
|
+
base: 'text-default py-3',
|
|
45
|
+
variants: {
|
|
46
|
+
table: {
|
|
47
|
+
true: 'h-[50px]',
|
|
48
|
+
false: 'min-h-[50px]',
|
|
49
|
+
},
|
|
50
|
+
stickyColumn: {
|
|
51
|
+
left: 'sticky z-10 bg-body group-hover:bg-muted left-0',
|
|
52
|
+
right: 'sticky z-10 bg-body group-hover:bg-muted right-0',
|
|
53
|
+
undefined: '',
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
export const alignClasses = tv({
|
|
58
|
+
variants: {
|
|
59
|
+
align: {
|
|
60
|
+
left: '',
|
|
61
|
+
center: 'text-center',
|
|
62
|
+
right: 'text-right',
|
|
63
|
+
stretch: '',
|
|
64
|
+
undefined: '',
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
defaultVariants: {
|
|
68
|
+
align: 'undefined',
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
export const headCellClasses = tv({
|
|
72
|
+
base: 'py-[14px] text-left border-intense text-muted font-semibold whitespace-nowrap',
|
|
73
|
+
variants: {
|
|
74
|
+
sticky: {
|
|
75
|
+
true: 'sticky bg-body top-0 z-10',
|
|
76
|
+
false: '',
|
|
77
|
+
},
|
|
78
|
+
stickyColumn: {
|
|
79
|
+
left: '',
|
|
80
|
+
right: '',
|
|
81
|
+
undefined: '',
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
compoundVariants: [
|
|
85
|
+
{
|
|
86
|
+
sticky: true,
|
|
87
|
+
stickyColumn: 'left',
|
|
88
|
+
class: 'left-0 z-20',
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
sticky: true,
|
|
92
|
+
stickyColumn: 'right',
|
|
93
|
+
class: 'right-0 z-20',
|
|
94
|
+
},
|
|
95
|
+
],
|
|
96
|
+
});
|
|
97
|
+
export const sortCellButtonClasses = tv({
|
|
98
|
+
base: 'group flex items-center gap-x-4 text-muted',
|
|
99
|
+
variants: {
|
|
100
|
+
align: {
|
|
101
|
+
left: '',
|
|
102
|
+
center: '',
|
|
103
|
+
right: 'flex-row-reverse',
|
|
104
|
+
stretch: '',
|
|
105
|
+
undefined: '',
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
defaultVariants: {
|
|
109
|
+
align: 'undefined',
|
|
110
|
+
},
|
|
111
|
+
});
|
|
112
|
+
export const sortCellIconClasses = tv({
|
|
113
|
+
base: 'text-[9px]',
|
|
114
|
+
variants: {
|
|
115
|
+
active: {
|
|
116
|
+
true: 'text-default',
|
|
117
|
+
false: 'text-inactive',
|
|
118
|
+
},
|
|
119
|
+
},
|
|
120
|
+
});
|
|
121
|
+
const sortCellIconsContainerClasses = tv({
|
|
122
|
+
base: 'flex flex-col',
|
|
123
|
+
variants: {
|
|
124
|
+
direction: {
|
|
125
|
+
none: 'invisible group-hover:visible',
|
|
126
|
+
ascending: '',
|
|
127
|
+
descending: '',
|
|
128
|
+
other: '',
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
});
|
|
23
132
|
export const Table = (_a) => {
|
|
24
133
|
var { children, ariaLabel, className } = _a, rest = __rest(_a, ["children", "ariaLabel", "className"]);
|
|
25
|
-
return (React.createElement("table", Object.assign({}, rest, { className:
|
|
134
|
+
return (React.createElement("table", Object.assign({}, rest, { className: tableClasses({ className }), "aria-label": ariaLabel }), children));
|
|
26
135
|
};
|
|
27
136
|
const TableHead = (_a) => {
|
|
28
137
|
var { children, sticky } = _a, rest = __rest(_a, ["children", "sticky"]);
|
|
@@ -34,33 +143,13 @@ const TableBody = (_a) => {
|
|
|
34
143
|
var { children } = _a, rest = __rest(_a, ["children"]);
|
|
35
144
|
return React.createElement("tbody", Object.assign({}, rest), children);
|
|
36
145
|
};
|
|
37
|
-
export const rowClassNames = 'children:border-default group children:last:border-b-0 hover:bg-muted';
|
|
38
146
|
const TableRow = (_a) => {
|
|
39
|
-
var { children, className, disabled } = _a, rest = __rest(_a, ["children", "className", "disabled"]);
|
|
40
|
-
return (React.createElement("tr", Object.assign({}, rest, { inert: disabled, className:
|
|
41
|
-
'opacity-70': disabled,
|
|
42
|
-
}) }), children));
|
|
43
|
-
};
|
|
44
|
-
export const cellClassNames = 'px-4 border-b typography-small leading-[18px]';
|
|
45
|
-
export const getBodyCellClassNames = (table = true, stickyColumn) => clsx('text-default py-3', {
|
|
46
|
-
'h-[50px]': table,
|
|
47
|
-
'min-h-[50px]': !table,
|
|
48
|
-
'sticky z-10 bg-body group-hover:bg-muted': Boolean(stickyColumn),
|
|
49
|
-
'left-0': stickyColumn === 'left',
|
|
50
|
-
'right-0': stickyColumn === 'right',
|
|
51
|
-
});
|
|
52
|
-
export const getAlignClassNames = (align) => clsx({ 'text-right': align === 'right', 'text-center': align === 'center' });
|
|
53
|
-
export const getHeadCellClassNames = (sticky = true, stickyColumn) => {
|
|
54
|
-
const common = 'py-[14px] text-left border-intense text-muted font-semibold whitespace-nowrap';
|
|
55
|
-
return sticky
|
|
56
|
-
? clsx(common, 'sticky bg-body top-0', {
|
|
57
|
-
'z-10': !stickyColumn,
|
|
58
|
-
'z-20': Boolean(stickyColumn),
|
|
59
|
-
'left-0': stickyColumn === 'left',
|
|
60
|
-
'right-0': stickyColumn === 'right',
|
|
61
|
-
})
|
|
62
|
-
: common;
|
|
147
|
+
var { children, className, disabled = false } = _a, rest = __rest(_a, ["children", "className", "disabled"]);
|
|
148
|
+
return (React.createElement("tr", Object.assign({}, rest, { inert: disabled, className: rowClasses({ disabled, className }) }), children));
|
|
63
149
|
};
|
|
150
|
+
export const getBodyCellClassNames = (table = true, stickyColumn) => bodyCellClasses({ table, stickyColumn });
|
|
151
|
+
export const getAlignClassNames = (align) => alignClasses({ align });
|
|
152
|
+
export const getHeadCellClassNames = (sticky = true, stickyColumn) => headCellClasses({ sticky, stickyColumn });
|
|
64
153
|
const TableCell = React.forwardRef((_a, ref) => {
|
|
65
154
|
var { children, className, stickyColumn, align = 'left' } = _a, rest = __rest(_a, ["children", "className", "stickyColumn", "align"]);
|
|
66
155
|
const headContext = React.useContext(HeadContext);
|
|
@@ -73,18 +162,14 @@ const TableSelectCell = (_a) => {
|
|
|
73
162
|
var { ariaLabel } = _a, props = __rest(_a, ["ariaLabel"]);
|
|
74
163
|
return (React.createElement(Table.Cell, { className: "leading-[0px]" }, props.type === 'radio' ? (React.createElement(RadioButton, Object.assign({ "aria-label": ariaLabel }, props))) : (React.createElement(Checkbox, Object.assign({ "aria-label": ariaLabel }, props)))));
|
|
75
164
|
};
|
|
76
|
-
export const getSortCellButtonClassNames = (align) =>
|
|
77
|
-
export const getSortCellIconClassNames = (active) => {
|
|
78
|
-
return clsx('text-[9px]', active ? 'text-default' : 'text-inactive');
|
|
79
|
-
};
|
|
165
|
+
export const getSortCellButtonClassNames = (align) => sortCellButtonClasses({ align });
|
|
166
|
+
export const getSortCellIconClassNames = (active) => sortCellIconClasses({ active });
|
|
80
167
|
const TableSortCell = React.forwardRef((_a, ref) => {
|
|
81
168
|
var { children, direction = 'none', onClick } = _a, rest = __rest(_a, ["children", "direction", "onClick"]);
|
|
82
169
|
return (React.createElement(Table.Cell, Object.assign({}, rest, { "aria-sort": direction, ref: ref }),
|
|
83
170
|
React.createElement("span", { className: getSortCellButtonClassNames(rest.align), role: "button", tabIndex: -1, onClick: onClick },
|
|
84
171
|
children,
|
|
85
|
-
React.createElement("div", { "data-sort-icons": true, className:
|
|
86
|
-
'invisible group-hover:visible': direction === 'none',
|
|
87
|
-
}) },
|
|
172
|
+
React.createElement("div", { "data-sort-icons": true, className: sortCellIconsContainerClasses({ direction }) },
|
|
88
173
|
React.createElement(InlineIcon, { icon: chevronUp, className: getSortCellIconClassNames(direction === 'ascending') }),
|
|
89
174
|
React.createElement(InlineIcon, { icon: chevronDown, className: getSortCellIconClassNames(direction === 'descending') })))));
|
|
90
175
|
});
|
|
@@ -102,4 +187,4 @@ Table.Cell = React.memo(TableCell);
|
|
|
102
187
|
Table.SortCell = React.memo(TableSortCell);
|
|
103
188
|
Table.SelectCell = React.memo(TableSelectCell);
|
|
104
189
|
Table.Caption = Caption;
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXRvbXMvVGFibGUvVGFibGUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFFQUFxRTs7Ozs7Ozs7Ozs7O0FBRXJFLE9BQU8sS0FBeUIsTUFBTSxPQUFPLENBQUM7QUFDOUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUVqRSxPQUFPLEVBQUUsUUFBUSxFQUFzQixNQUFNLDZCQUE2QixDQUFDO0FBQzNFLE9BQU8sRUFBRSxXQUFXLEVBQXlCLE1BQU0sbUNBQW1DLENBQUM7QUFFdkYsT0FBTyxXQUFXLE1BQU0sdUJBQXVCLENBQUM7QUFDaEQsT0FBTyxTQUFTLE1BQU0scUJBQXFCLENBQUM7QUErQzVDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQXdCLElBQUksQ0FBQyxDQUFDO0FBRXJFLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUN0QixJQUFJLEVBQUUscUVBQXFFO0NBQzVFLENBQUMsQ0FBQztBQUVILE1BQU0saUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQzNCLElBQUksRUFBRSx1RUFBdUU7Q0FDOUUsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGlCQUFpQixFQUFFLENBQUM7QUFFakQsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7SUFDNUIsSUFBSSxFQUFFLCtDQUErQztDQUN0RCxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQztBQUVuRCxNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFD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
|
|
@@ -9,6 +9,152 @@ type ComposedToastProps = {
|
|
|
9
9
|
Dismiss: typeof Dismiss;
|
|
10
10
|
Action: typeof Action;
|
|
11
11
|
};
|
|
12
|
+
export declare const toastStyles: import("tailwind-variants").TVReturnType<{
|
|
13
|
+
variant: {
|
|
14
|
+
default: {
|
|
15
|
+
base: string;
|
|
16
|
+
dismiss: string;
|
|
17
|
+
action: string;
|
|
18
|
+
};
|
|
19
|
+
danger: {
|
|
20
|
+
base: string;
|
|
21
|
+
dismiss: string;
|
|
22
|
+
action: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
hasAction: {
|
|
26
|
+
true: {};
|
|
27
|
+
false: {
|
|
28
|
+
dismiss: string;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
}, {
|
|
32
|
+
base: string;
|
|
33
|
+
dismiss: string;
|
|
34
|
+
action: string;
|
|
35
|
+
}, undefined, import("tailwind-variants/dist/config").TVConfig<{
|
|
36
|
+
variant: {
|
|
37
|
+
default: {
|
|
38
|
+
base: string;
|
|
39
|
+
dismiss: string;
|
|
40
|
+
action: string;
|
|
41
|
+
};
|
|
42
|
+
danger: {
|
|
43
|
+
base: string;
|
|
44
|
+
dismiss: string;
|
|
45
|
+
action: string;
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
hasAction: {
|
|
49
|
+
true: {};
|
|
50
|
+
false: {
|
|
51
|
+
dismiss: string;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
}, {
|
|
55
|
+
variant: {
|
|
56
|
+
default: {
|
|
57
|
+
base: string;
|
|
58
|
+
dismiss: string;
|
|
59
|
+
action: string;
|
|
60
|
+
};
|
|
61
|
+
danger: {
|
|
62
|
+
base: string;
|
|
63
|
+
dismiss: string;
|
|
64
|
+
action: string;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
hasAction: {
|
|
68
|
+
true: {};
|
|
69
|
+
false: {
|
|
70
|
+
dismiss: string;
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
}>, {
|
|
74
|
+
variant: {
|
|
75
|
+
default: {
|
|
76
|
+
base: string;
|
|
77
|
+
dismiss: string;
|
|
78
|
+
action: string;
|
|
79
|
+
};
|
|
80
|
+
danger: {
|
|
81
|
+
base: string;
|
|
82
|
+
dismiss: string;
|
|
83
|
+
action: string;
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
hasAction: {
|
|
87
|
+
true: {};
|
|
88
|
+
false: {
|
|
89
|
+
dismiss: string;
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
}, {
|
|
93
|
+
base: string;
|
|
94
|
+
dismiss: string;
|
|
95
|
+
action: string;
|
|
96
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
97
|
+
variant: {
|
|
98
|
+
default: {
|
|
99
|
+
base: string;
|
|
100
|
+
dismiss: string;
|
|
101
|
+
action: string;
|
|
102
|
+
};
|
|
103
|
+
danger: {
|
|
104
|
+
base: string;
|
|
105
|
+
dismiss: string;
|
|
106
|
+
action: string;
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
hasAction: {
|
|
110
|
+
true: {};
|
|
111
|
+
false: {
|
|
112
|
+
dismiss: string;
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
}, {
|
|
116
|
+
base: string;
|
|
117
|
+
dismiss: string;
|
|
118
|
+
action: string;
|
|
119
|
+
}, undefined, import("tailwind-variants/dist/config").TVConfig<{
|
|
120
|
+
variant: {
|
|
121
|
+
default: {
|
|
122
|
+
base: string;
|
|
123
|
+
dismiss: string;
|
|
124
|
+
action: string;
|
|
125
|
+
};
|
|
126
|
+
danger: {
|
|
127
|
+
base: string;
|
|
128
|
+
dismiss: string;
|
|
129
|
+
action: string;
|
|
130
|
+
};
|
|
131
|
+
};
|
|
132
|
+
hasAction: {
|
|
133
|
+
true: {};
|
|
134
|
+
false: {
|
|
135
|
+
dismiss: string;
|
|
136
|
+
};
|
|
137
|
+
};
|
|
138
|
+
}, {
|
|
139
|
+
variant: {
|
|
140
|
+
default: {
|
|
141
|
+
base: string;
|
|
142
|
+
dismiss: string;
|
|
143
|
+
action: string;
|
|
144
|
+
};
|
|
145
|
+
danger: {
|
|
146
|
+
base: string;
|
|
147
|
+
dismiss: string;
|
|
148
|
+
action: string;
|
|
149
|
+
};
|
|
150
|
+
};
|
|
151
|
+
hasAction: {
|
|
152
|
+
true: {};
|
|
153
|
+
false: {
|
|
154
|
+
dismiss: string;
|
|
155
|
+
};
|
|
156
|
+
};
|
|
157
|
+
}>, unknown, unknown, undefined>>;
|
|
12
158
|
export declare const Toast: ComposedToastProps & React.FC<DivProps & ToastProps>;
|
|
13
159
|
declare const Dismiss: React.FC<DivProps & ToastProps>;
|
|
14
160
|
declare const Action: React.FC<DivProps & ToastProps>;
|
|
@@ -10,29 +10,47 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
10
10
|
return t;
|
|
11
11
|
};
|
|
12
12
|
import React from 'react';
|
|
13
|
-
import {
|
|
13
|
+
import { tv } from 'tailwind-variants';
|
|
14
|
+
export const toastStyles = tv({
|
|
15
|
+
slots: {
|
|
16
|
+
base: 'Aquarium-Toast typography-small rounded flex items-start justify-between gap-x-5 gap-y-2 p-4 max-w-[400px]',
|
|
17
|
+
dismiss: '[&>button]:p-0 flex',
|
|
18
|
+
action: '[&>button]:py-0 [&>a]:py-0 hover:[&>button]:underline hover:[&>a]:underline',
|
|
19
|
+
},
|
|
20
|
+
variants: {
|
|
21
|
+
variant: {
|
|
22
|
+
default: {
|
|
23
|
+
base: 'bg-body-intense text-opposite-default',
|
|
24
|
+
dismiss: '[&>button]:text-muted',
|
|
25
|
+
action: '[&>*]:text-primary-inactive hover:[&>*]:text-primary-muted',
|
|
26
|
+
},
|
|
27
|
+
danger: {
|
|
28
|
+
base: 'bg-danger-intense text-white',
|
|
29
|
+
dismiss: '[&>button]:text-danger-muted',
|
|
30
|
+
action: '[&>*]:text-white hover:[&>*]:text-white',
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
hasAction: {
|
|
34
|
+
true: {},
|
|
35
|
+
false: { dismiss: 'pt-[1px]' },
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
});
|
|
14
39
|
export const Toast = (_a) => {
|
|
15
40
|
var { children, className, variant } = _a, rest = __rest(_a, ["children", "className", "variant"]);
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
'bg-danger-intense text-white': variant === 'danger',
|
|
19
|
-
}, className) }), children));
|
|
41
|
+
const { base } = toastStyles({ variant });
|
|
42
|
+
return (React.createElement("div", Object.assign({}, rest, { className: base({ className }) }), children));
|
|
20
43
|
};
|
|
21
44
|
const Dismiss = (_a) => {
|
|
22
45
|
var { children, className, variant, hasAction } = _a, rest = __rest(_a, ["children", "className", "variant", "hasAction"]);
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
'[&>button]:text-danger-muted': variant === 'danger',
|
|
26
|
-
'pt-[1px]': hasAction === false,
|
|
27
|
-
}, className) }), children));
|
|
46
|
+
const { dismiss } = toastStyles({ variant, hasAction });
|
|
47
|
+
return (React.createElement("div", Object.assign({}, rest, { className: dismiss({ className }) }), children));
|
|
28
48
|
};
|
|
29
49
|
const Action = (_a) => {
|
|
30
|
-
var { children, variant } = _a, rest = __rest(_a, ["children", "variant"]);
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
'[&>*]:text-white hover:[&>*]:text-white': variant === 'danger',
|
|
34
|
-
}) }), children));
|
|
50
|
+
var { children, className, variant } = _a, rest = __rest(_a, ["children", "className", "variant"]);
|
|
51
|
+
const { action } = toastStyles({ variant });
|
|
52
|
+
return (React.createElement("div", Object.assign({}, rest, { className: action({ className }) }), children));
|
|
35
53
|
};
|
|
36
54
|
Toast.Action = Action;
|
|
37
55
|
Toast.Dismiss = Dismiss;
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVG9hc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXRvbXMvVG9hc3QvVG9hc3QudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQWdCdkMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUM1QixLQUFLLEVBQUU7UUFDTCxJQUFJLEVBQUUsNEdBQTRHO1FBQ2xILE9BQU8sRUFBRSxxQkFBcUI7UUFDOUIsTUFBTSxFQUFFLDZFQUE2RTtLQUN0RjtJQUNELFFBQVEsRUFBRTtRQUNSLE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsdUNBQXVDO2dCQUM3QyxPQUFPLEVBQUUsdUJBQXVCO2dCQUNoQyxNQUFNLEVBQUUsNERBQTREO2FBQ3JFO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLElBQUksRUFBRSw4QkFBOEI7Z0JBQ3BDLE9BQU8sRUFBRSw4QkFBOEI7Z0JBQ3ZDLE1BQU0sRUFBRSx5Q0FBeUM7YUFDbEQ7U0FDRjtRQUNELFNBQVMsRUFBRTtZQUNULElBQUksRUFBRSxFQUFFO1lBQ1IsS0FBSyxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRTtTQUMvQjtLQUNGO0NBQ0YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUF5RCxDQUFDLEVBSzNFLEVBQUUsRUFBRTtRQUx1RSxFQUMxRSxRQUFRLEVBQ1IsU0FBUyxFQUNULE9BQU8sT0FFUixFQURJLElBQUksY0FKbUUsb0NBSzNFLENBRFE7SUFFUCxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsV0FBVyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUMxQyxPQUFPLENBQ0wsNkNBQVMsSUFBSSxJQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxLQUMxQyxRQUFRLENBQ0wsQ0FDUCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxPQUFPLEdBQW9DLENBQUMsRUFBb0QsRUFBRSxFQUFFO1FBQXhELEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxPQUFXLEVBQU4sSUFBSSxjQUFsRCxpREFBb0QsQ0FBRjtJQUNsRyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsV0FBVyxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDeEQsT0FBTyxDQUNMLDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsS0FDN0MsUUFBUSxDQUNMLENBQ1AsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sTUFBTSxHQUFvQyxDQUFDLEVBQXlDLEVBQUUsRUFBRTtRQUE3QyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxPQUFXLEVBQU4sSUFBSSxjQUF2QyxvQ0FBeUMsQ0FBRjtJQUN0RixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsV0FBVyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM1QyxPQUFPLENBQ0wsNkNBQVMsSUFBSSxJQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxLQUM1QyxRQUFRLENBQ0wsQ0FDUCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7QUFDdEIsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMifQ==
|
|
@@ -4,6 +4,7 @@ export * from './Button/Button';
|
|
|
4
4
|
export * from './Card/Card';
|
|
5
5
|
export * from './Checkbox/Checkbox';
|
|
6
6
|
export * from './Chip/Chip';
|
|
7
|
+
export * from './ChoiceChip/ChoiceChip';
|
|
7
8
|
export * from './DataList/DataList';
|
|
8
9
|
export * from './Dialog/Dialog';
|
|
9
10
|
export * from './DropdownMenu/DropdownMenu';
|
package/dist/src/atoms/index.js
CHANGED
|
@@ -4,6 +4,7 @@ export * from './Button/Button';
|
|
|
4
4
|
export * from './Card/Card';
|
|
5
5
|
export * from './Checkbox/Checkbox';
|
|
6
6
|
export * from './Chip/Chip';
|
|
7
|
+
export * from './ChoiceChip/ChoiceChip';
|
|
7
8
|
export * from './DataList/DataList';
|
|
8
9
|
export * from './Dialog/Dialog';
|
|
9
10
|
export * from './DropdownMenu/DropdownMenu';
|
|
@@ -26,4 +27,4 @@ export * from './Table/Table';
|
|
|
26
27
|
export * from './Toast/Toast';
|
|
27
28
|
export * from './Typography/Typography';
|
|
28
29
|
export * from './VisuallyHidden/VisuallyHidden';
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXRvbXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxpQ0FBaUMsQ0FBQyJ9
|
|
@@ -23,7 +23,8 @@ const createBadge = (type, displayName) => {
|
|
|
23
23
|
'bg-current': kind === 'filled' && type !== 'chip',
|
|
24
24
|
'bg-white': type === 'chip' && !disabled,
|
|
25
25
|
'bg-muted': type === 'chip' && disabled,
|
|
26
|
-
|
|
26
|
+
// TODO: Replace text-[10px] and text-[8px] with correct tokens in uplift
|
|
27
|
+
'text-[10px] leading-none py-1 px-2': !dense,
|
|
27
28
|
'text-[8px]': dense,
|
|
28
29
|
'px-1': dense && valueStr.length > 1,
|
|
29
30
|
'px-[4px]': dense && valueStr.length === 1,
|
|
@@ -59,4 +60,4 @@ Badge.Dot = DotBadge;
|
|
|
59
60
|
Badge.Dot.displayName = 'Badge.Dot';
|
|
60
61
|
export const TabBadge = createBadge('tab', 'TabBadge');
|
|
61
62
|
export const ChipBadge = createBadge('chip', 'ChipBadge');
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFkZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9sZWN1bGVzL0JhZGdlL0JhZGdlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQXdDdkQsTUFBTSxXQUFXLEdBQUcsQ0FBK0IsSUFBZ0MsRUFBRSxXQUFtQixFQUFFLEVBQUU7SUFDMUcsTUFBTSxTQUFTLEdBQThDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDckUsTUFBTSxFQUFFLElBQUksR0FBRyxRQUFRLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxLQUFLLEdBQUcsS0FBSyxFQUFFLFFBQVEsR0FBRyxLQUFLLEtBQWMsS0FBSyxFQUFkLElBQUksVUFBSyxLQUFLLEVBQTNGLHVEQUFtRixDQUFRLENBQUM7UUFDbEcsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWxDLE9BQU8sQ0FDTCw4Q0FDTSxJQUFJLElBQ1IsU0FBUyxFQUFFLElBQUksQ0FDYiwwQkFBMEIsRUFDMUI7Z0JBQ0UsY0FBYyxFQUFFLElBQUksS0FBSyxTQUFTLElBQUksSUFBSSxLQUFLLE1BQU07Z0JBQ3JELFNBQVMsRUFBRSxJQUFJLEtBQUssS0FBSztnQkFDekIsb0NBQW9DLEVBQUUsSUFBSSxLQUFLLFVBQVU7Z0JBQ3pELFlBQVksRUFBRSxJQUFJLEtBQUssUUFBUSxJQUFJLElBQUksS0FBSyxNQUFNO2dCQUNsRCxVQUFVLEVBQUUsSUFBSSxLQUFLLE1BQU0sSUFBSSxDQUFDLFFBQVE7Z0JBQ3hDLFVBQVUsRUFBRSxJQUFJLEtBQUssTUFBTSxJQUFJLFFBQVE7Z0JBQ3ZDLHlFQUF5RTtnQkFDekUsb0NBQW9DLEVBQUUsQ0FBQyxL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
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type ChoiceChipProps } from '../../../src/atoms/ChoiceChip/ChoiceChip';
|
|
3
|
+
import type { EmptyOrOneOrMore } from '../../../types/utils';
|
|
4
|
+
type BaseChoiceChipGroupProps = {
|
|
5
|
+
/**
|
|
6
|
+
* Group name that will be propagated to all children.
|
|
7
|
+
* Required for form submission and radio group behavior.
|
|
8
|
+
*/
|
|
9
|
+
name: string;
|
|
10
|
+
/**
|
|
11
|
+
* If true, all chips will be disabled.
|
|
12
|
+
*/
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* If true, dense version of all chips will be rendered.
|
|
16
|
+
*/
|
|
17
|
+
dense?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Only `<ChoiceChip>` components are allowed as children.
|
|
20
|
+
*/
|
|
21
|
+
children: EmptyOrOneOrMore<ChoiceChipProps>;
|
|
22
|
+
};
|
|
23
|
+
type CheckboxGroupProps = BaseChoiceChipGroupProps & {
|
|
24
|
+
/**
|
|
25
|
+
* The selection mode determines behavior.
|
|
26
|
+
* - 'checkbox': Multiple chips can be selected (default)
|
|
27
|
+
*/
|
|
28
|
+
selectionMode?: 'checkbox';
|
|
29
|
+
/**
|
|
30
|
+
* Values for the checkbox group. If not provided, value will be stored
|
|
31
|
+
* in group's own state.
|
|
32
|
+
*/
|
|
33
|
+
value?: string[];
|
|
34
|
+
/**
|
|
35
|
+
* Default values for the checkbox group.
|
|
36
|
+
*/
|
|
37
|
+
defaultValue?: string[];
|
|
38
|
+
/**
|
|
39
|
+
* onChange() callback is called whenever checkbox group value is updated.
|
|
40
|
+
*/
|
|
41
|
+
onChange?: (value: string[]) => void;
|
|
42
|
+
};
|
|
43
|
+
type RadioGroupProps = BaseChoiceChipGroupProps & {
|
|
44
|
+
/**
|
|
45
|
+
* The selection mode determines behavior.
|
|
46
|
+
* - 'radio': Only one chip can be selected at a time
|
|
47
|
+
*/
|
|
48
|
+
selectionMode: 'radio';
|
|
49
|
+
/**
|
|
50
|
+
* Value for the radio group. If not provided, value will be stored
|
|
51
|
+
* in group's own state.
|
|
52
|
+
*/
|
|
53
|
+
value?: string;
|
|
54
|
+
/**
|
|
55
|
+
* Default value for the radio group.
|
|
56
|
+
*/
|
|
57
|
+
defaultValue?: string;
|
|
58
|
+
/**
|
|
59
|
+
* onChange() callback is called whenever radio group value is updated.
|
|
60
|
+
*/
|
|
61
|
+
onChange?: (value: string) => void;
|
|
62
|
+
};
|
|
63
|
+
export type ChoiceChipGroupProps = CheckboxGroupProps | RadioGroupProps;
|
|
64
|
+
export declare const ChoiceChipGroup: React.FC<ChoiceChipGroupProps>;
|
|
65
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useControlledState } from '@react-stately/utils';
|
|
3
|
+
import { castArray } from 'lodash-es';
|
|
4
|
+
import { Box } from '../../../src/molecules/Box/Box';
|
|
5
|
+
import { ChoiceChip } from '../../../src/atoms/ChoiceChip/ChoiceChip';
|
|
6
|
+
const isChoiceChip = (c) => {
|
|
7
|
+
return React.isValidElement(c) && c.type === ChoiceChip;
|
|
8
|
+
};
|
|
9
|
+
export const ChoiceChipGroup = (props) => {
|
|
10
|
+
const { name, selectionMode = 'checkbox', disabled, dense, children } = props;
|
|
11
|
+
// Normalize controlled/default values to array format
|
|
12
|
+
const controlledArray = props.value !== undefined ? castArray(props.value) : undefined;
|
|
13
|
+
const defaultArray = props.defaultValue !== undefined ? castArray(props.defaultValue) : [];
|
|
14
|
+
// Single state for both modes - always an array internally
|
|
15
|
+
const [selectedItems, setSelectedItems] = useControlledState(controlledArray, defaultArray, (newValue) => {
|
|
16
|
+
var _a, _b, _c;
|
|
17
|
+
if (props.selectionMode === 'radio') {
|
|
18
|
+
(_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, (_b = newValue[0]) !== null && _b !== void 0 ? _b : '');
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
(_c = props.onChange) === null || _c === void 0 ? void 0 : _c.call(props, newValue);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
const handleChipChange = (chipValue, checked) => {
|
|
25
|
+
if (selectionMode === 'radio') {
|
|
26
|
+
// Radio mode: only one can be selected at a time
|
|
27
|
+
if (checked) {
|
|
28
|
+
setSelectedItems([chipValue]);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
// Checkbox mode: toggle in/out of array
|
|
33
|
+
const updated = checked ? [...selectedItems, chipValue] : selectedItems.filter((v) => v !== chipValue);
|
|
34
|
+
setSelectedItems(updated);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
return (React.createElement(Box.Flex, { flexDirection: "row", alignItems: "flex-start", colGap: "3", rowGap: "3", flexWrap: "wrap", role: selectionMode === 'radio' ? 'radiogroup' : 'group', className: "Aquarium-ChoiceChipGroup" }, React.Children.map(children, (child) => {
|
|
38
|
+
if (!isChoiceChip(child)) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
const chipValue = child.props.value;
|
|
42
|
+
if (chipValue === undefined) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
const isChecked = selectedItems.includes(chipValue);
|
|
46
|
+
return React.cloneElement(child, {
|
|
47
|
+
selectionMode,
|
|
48
|
+
name,
|
|
49
|
+
value: chipValue,
|
|
50
|
+
checked: isChecked,
|
|
51
|
+
onChange: (checked) => handleChipChange(chipValue, checked),
|
|
52
|
+
disabled: disabled || child.props.disabled,
|
|
53
|
+
dense: dense !== null && dense !== void 0 ? dense : child.props.dense,
|
|
54
|
+
});
|
|
55
|
+
})));
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hvaWNlQ2hpcEdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vbGVjdWxlcy9DaG9pY2VDaGlwR3JvdXAvQ2hvaWNlQ2hpcEdyb3VwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUMsT0FBTyxFQUFFLFVBQVUsRUFBd0IsTUFBTSxpQ0FBaUMsQ0FBQztBQUluRixNQUFNLFlBQVksR0FBRyxDQUFDLENBQWtCLEVBQTRDLEVBQUU7SUFDcEYsT0FBTyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssVUFBVSxDQUFDO0FBQzFELENBQUMsQ0FBQztBQTJFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQW1DLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDdkUsTUFBTSxFQUFFLElBQUksRUFBRSxhQUFhLEdBQUcsVUFBVSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBRTlFLHNEQUFzRDtJQUN0RCxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3ZGLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFFM0YsMkRBQTJEO0lBQzNE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
|