@hazelcast/ui 3.0.13 → 4.0.1-canary.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -29
- package/lib/components/Alert.js +2 -2
- package/lib/components/Alert.js.map +1 -1
- package/lib/components/AppHeader/AppHeaderMenu/AppHeaderMenu.js +1 -1
- package/lib/components/AppHeader/AppHeaderMenu/AppHeaderMenu.js.map +1 -1
- package/lib/components/AppHeader/SelectCluster/SelectCluster.js +1 -1
- package/lib/components/AppHeader/SelectCluster/SelectCluster.js.map +1 -1
- package/lib/components/AppSidebar/AppSidebar.js +1 -1
- package/lib/components/AppSidebar/AppSidebar.js.map +1 -1
- package/lib/components/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js +1 -1
- package/lib/components/AppSidebar/AppSidebarFavoriteButton/AppSidebarFavoriteButton.js.map +1 -1
- package/lib/components/AppSidebar/AppSidebarItem/AppSidebarItem.d.ts +1 -3
- package/lib/components/AppSidebar/AppSidebarItem/AppSidebarItem.js +11 -10
- package/lib/components/AppSidebar/AppSidebarItem/AppSidebarItem.js.map +1 -1
- package/lib/components/AutocompleteField.d.ts +1 -3
- package/lib/components/AutocompleteField.js +4 -5
- package/lib/components/AutocompleteField.js.map +1 -1
- package/lib/components/AutocompleteField.module.css +183 -0
- package/lib/components/Badge.d.ts +1 -2
- package/lib/components/Badge.js +3 -7
- package/lib/components/Badge.js.map +1 -1
- package/lib/components/Badge.module.scss +18 -29
- package/lib/components/Button.d.ts +10 -33
- package/lib/components/Button.js +31 -51
- package/lib/components/Button.js.map +1 -1
- package/lib/components/Button.module.css +188 -0
- package/lib/components/ButtonGroup.d.ts +10 -0
- package/lib/components/ButtonGroup.js +6 -0
- package/lib/components/ButtonGroup.js.map +1 -0
- package/lib/components/ButtonGroup.module.css +29 -0
- package/lib/components/Calendar/components/CalendarTime.js +1 -1
- package/lib/components/Calendar/components/CalendarTime.js.map +1 -1
- package/lib/components/Checkbox.js +1 -1
- package/lib/components/Checkbox.js.map +1 -1
- package/lib/components/Checkbox.module.css +97 -0
- package/lib/components/Dialog.js +1 -1
- package/lib/components/Dialog.js.map +1 -1
- package/lib/components/Error.d.ts +2 -2
- package/lib/components/Help.d.ts +2 -2
- package/lib/components/Help.js +3 -2
- package/lib/components/Help.js.map +1 -1
- package/lib/components/IconButton.d.ts +8 -8
- package/lib/components/IconButton.js +24 -13
- package/lib/components/IconButton.js.map +1 -1
- package/lib/components/IconButton.module.css +145 -0
- package/lib/components/InteractiveList.d.ts +1 -1
- package/lib/components/InteractiveList.js +5 -5
- package/lib/components/InteractiveList.js.map +1 -1
- package/lib/components/InteractiveList.module.css +59 -0
- package/lib/components/Modal.d.ts +19 -2
- package/lib/components/Modal.js +56 -25
- package/lib/components/Modal.js.map +1 -1
- package/lib/components/Modal.module.css +222 -0
- package/lib/components/NumberField.d.ts +2 -3
- package/lib/components/NumberField.js +7 -10
- package/lib/components/NumberField.js.map +1 -1
- package/lib/components/NumberField.module.css +73 -0
- package/lib/components/Pagination.js +7 -7
- package/lib/components/Pagination.js.map +1 -1
- package/lib/components/PasswordField.d.ts +1 -2
- package/lib/components/PasswordField.js +2 -2
- package/lib/components/PasswordField.js.map +1 -1
- package/lib/components/PasswordField.module.scss +3 -0
- package/lib/components/Select/CheckableSelectField.d.ts +0 -1
- package/lib/components/Select/CheckableSelectField.js +12 -6
- package/lib/components/Select/CheckableSelectField.js.map +1 -1
- package/lib/components/Select/CheckableSelectField.module.css +112 -0
- package/lib/components/Select/Common.js +3 -3
- package/lib/components/Select/Common.js.map +1 -1
- package/lib/components/Select/Common.module.css +35 -0
- package/lib/components/Select/MultiSelectField.d.ts +1 -1
- package/lib/components/Select/MultiSelectField.js +3 -5
- package/lib/components/Select/MultiSelectField.js.map +1 -1
- package/lib/components/Select/MultiSelectField.module.css +60 -0
- package/lib/components/Select/SelectField.d.ts +2 -3
- package/lib/components/Select/SelectField.js +4 -6
- package/lib/components/Select/SelectField.js.map +1 -1
- package/lib/components/Select/SelectField.module.css +202 -0
- package/lib/components/SimpleTable.d.ts +25 -6
- package/lib/components/SimpleTable.js +27 -12
- package/lib/components/SimpleTable.js.map +1 -1
- package/lib/components/SimpleTable.module.css +80 -0
- package/lib/components/Table/Cell.js +6 -7
- package/lib/components/Table/Cell.js.map +1 -1
- package/lib/components/Tabs/Tab.js +1 -1
- package/lib/components/Tabs/Tab.js.map +1 -1
- package/lib/components/Tabs/Tab.module.css +58 -0
- package/lib/components/Tabs/TabList.js +1 -1
- package/lib/components/Tabs/TabList.js.map +1 -1
- package/lib/components/Tabs/TabList.module.css +9 -0
- package/lib/components/Tabs/TabPanel.js +1 -1
- package/lib/components/Tabs/TabPanel.js.map +1 -1
- package/lib/components/Tabs/TabPanel.module.css +7 -0
- package/lib/components/TextArea.js +1 -1
- package/lib/components/TextArea.js.map +1 -1
- package/lib/components/TextArea.module.css +109 -0
- package/lib/components/TextField.d.ts +2 -2
- package/lib/components/TextField.js +2 -2
- package/lib/components/TextField.js.map +1 -1
- package/lib/components/TextField.module.css +195 -0
- package/lib/components/Toast/Toast.d.ts +12 -0
- package/lib/components/Toast/Toast.js +26 -0
- package/lib/components/Toast/Toast.js.map +1 -0
- package/lib/components/Toast/Toast.module.css +98 -0
- package/lib/components/Toast/index.d.ts +4 -0
- package/lib/components/Toast/index.js +5 -0
- package/lib/components/Toast/index.js.map +1 -0
- package/lib/components/Toggle.js +2 -3
- package/lib/components/Toggle.js.map +1 -1
- package/lib/components/Toggle.module.css +120 -0
- package/lib/components/Tooltip.d.ts +35 -22
- package/lib/components/Tooltip.js +22 -47
- package/lib/components/Tooltip.js.map +1 -1
- package/lib/components/Tooltip.module.css +128 -0
- package/lib/components/TruncatedText.d.ts +2 -2
- package/lib/components/TruncatedText.js +3 -3
- package/lib/components/TruncatedText.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js.map +1 -1
- package/lib/old/AutocompleteField.d.ts +49 -0
- package/lib/old/AutocompleteField.js +166 -0
- package/lib/old/AutocompleteField.js.map +1 -0
- package/lib/old/AutocompleteFieldFormik.d.ts +9 -0
- package/lib/old/AutocompleteFieldFormik.js +19 -0
- package/lib/old/AutocompleteFieldFormik.js.map +1 -0
- package/lib/old/Button.d.ts +75 -0
- package/lib/old/Button.js +37 -0
- package/lib/old/Button.js.map +1 -0
- package/lib/{components/Button.module.scss → old/ButtonLegacy.module.scss} +2 -8
- package/lib/old/Checkbox.d.ts +35 -0
- package/lib/old/Checkbox.js +38 -0
- package/lib/old/Checkbox.js.map +1 -0
- package/lib/old/CheckboxFormik.d.ts +10 -0
- package/lib/old/CheckboxFormik.js +17 -0
- package/lib/old/CheckboxFormik.js.map +1 -0
- package/lib/old/IconButton.d.ts +49 -0
- package/lib/old/IconButton.js +25 -0
- package/lib/old/IconButton.js.map +1 -0
- package/lib/old/InteractiveList.d.ts +34 -0
- package/lib/old/InteractiveList.js +43 -0
- package/lib/old/InteractiveList.js.map +1 -0
- package/lib/old/InteractiveListFormik.d.ts +10 -0
- package/lib/old/InteractiveListFormik.js +75 -0
- package/lib/old/InteractiveListFormik.js.map +1 -0
- package/lib/old/Modal.d.ts +26 -0
- package/lib/old/Modal.js +41 -0
- package/lib/old/Modal.js.map +1 -0
- package/lib/old/NumberField.d.ts +33 -0
- package/lib/old/NumberField.js +141 -0
- package/lib/old/NumberField.js.map +1 -0
- package/lib/old/NumberFieldFormik.d.ts +10 -0
- package/lib/old/NumberFieldFormik.js +52 -0
- package/lib/old/NumberFieldFormik.js.map +1 -0
- package/lib/old/PasswordField.d.ts +29 -0
- package/lib/old/PasswordField.js +26 -0
- package/lib/old/PasswordField.js.map +1 -0
- package/lib/old/PasswordFieldFormik.d.ts +10 -0
- package/lib/old/PasswordFieldFormik.js +17 -0
- package/lib/old/PasswordFieldFormik.js.map +1 -0
- package/lib/old/PasswordFieldLegacy.module.scss +26 -0
- package/lib/old/Select/CheckableSelectField.d.ts +40 -0
- package/lib/old/Select/CheckableSelectField.js +77 -0
- package/lib/old/Select/CheckableSelectField.js.map +1 -0
- package/lib/old/Select/CheckableSelectFieldFormik.d.ts +10 -0
- package/lib/old/Select/CheckableSelectFieldFormik.js +19 -0
- package/lib/old/Select/CheckableSelectFieldFormik.js.map +1 -0
- package/lib/old/Select/Common.d.ts +5 -0
- package/lib/old/Select/Common.js +54 -0
- package/lib/old/Select/Common.js.map +1 -0
- package/lib/old/Select/MultiSelectField.d.ts +28 -0
- package/lib/old/Select/MultiSelectField.js +113 -0
- package/lib/old/Select/MultiSelectField.js.map +1 -0
- package/lib/old/Select/MultiSelectFieldFormik.d.ts +11 -0
- package/lib/old/Select/MultiSelectFieldFormik.js +19 -0
- package/lib/old/Select/MultiSelectFieldFormik.js.map +1 -0
- package/lib/old/Select/SelectField.d.ts +43 -0
- package/lib/old/Select/SelectField.js +103 -0
- package/lib/old/Select/SelectField.js.map +1 -0
- package/lib/old/Select/SelectFieldFormik.d.ts +10 -0
- package/lib/old/Select/SelectFieldFormik.js +19 -0
- package/lib/old/Select/SelectFieldFormik.js.map +1 -0
- package/lib/old/Select/helpers.d.ts +12 -0
- package/lib/old/Select/helpers.js +29 -0
- package/lib/old/Select/helpers.js.map +1 -0
- package/lib/old/SimpleTable.d.ts +11 -0
- package/lib/old/SimpleTable.js +26 -0
- package/lib/old/SimpleTable.js.map +1 -0
- package/lib/old/Tabs.d.ts +53 -0
- package/lib/old/Tabs.js +92 -0
- package/lib/old/Tabs.js.map +1 -0
- package/lib/{components/Tabs/Tab.module.scss → old/TabsLegacy.module.scss} +14 -6
- package/lib/old/TextArea.d.ts +19 -0
- package/lib/old/TextArea.js +25 -0
- package/lib/old/TextArea.js.map +1 -0
- package/lib/old/TextAreaFormik.d.ts +9 -0
- package/lib/old/TextAreaFormik.js +11 -0
- package/lib/old/TextAreaFormik.js.map +1 -0
- package/lib/old/TextField.d.ts +50 -0
- package/lib/old/TextField.js +65 -0
- package/lib/old/TextField.js.map +1 -0
- package/lib/old/TextFieldFormik.d.ts +11 -0
- package/lib/old/TextFieldFormik.js +23 -0
- package/lib/old/TextFieldFormik.js.map +1 -0
- package/lib/{components/TextField.module.scss → old/TextFieldLegacy.module.scss} +0 -1
- package/lib/{components → old}/Toast.js +2 -2
- package/lib/old/Toast.js.map +1 -0
- package/lib/old/Toggle.d.ts +21 -0
- package/lib/old/Toggle.js +22 -0
- package/lib/old/Toggle.js.map +1 -0
- package/lib/old/ToggleFormik.d.ts +9 -0
- package/lib/old/ToggleFormik.js +12 -0
- package/lib/old/ToggleFormik.js.map +1 -0
- package/lib/{components/Toggle.module.scss → old/ToggleLegacy.module.scss} +0 -2
- package/lib/old/Tooltip.d.ts +34 -0
- package/lib/old/Tooltip.js +57 -0
- package/lib/old/Tooltip.js.map +1 -0
- package/lib/old/Tooltip.module.scss +45 -0
- package/lib/old/index.d.ts +58 -0
- package/lib/old/index.js +34 -0
- package/lib/old/index.js.map +1 -0
- package/package.json +5 -11
- package/styles/constants/_colors.scss +18 -0
- package/styles/variables.css +162 -0
- package/lib/components/Tabs/TabList.module.scss +0 -3
- package/lib/components/Tabs/TabPanel.module.scss +0 -7
- package/lib/components/Toast.js.map +0 -1
- /package/lib/{components/AutocompleteField.module.scss → old/AutocompleteFieldLegacy.module.scss} +0 -0
- /package/lib/{components/Checkbox.module.scss → old/CheckboxLegacy.module.scss} +0 -0
- /package/lib/{components/IconButton.module.scss → old/IconButtonLegacy.module.scss} +0 -0
- /package/lib/{components/InteractiveList.module.scss → old/InteractiveListLegacy.module.scss} +0 -0
- /package/lib/{components/Modal.module.scss → old/ModalLegacy.module.scss} +0 -0
- /package/lib/{components/NumberField.module.scss → old/NumberFieldLegacy.module.scss} +0 -0
- /package/lib/{components/Select/CheckableSelectField.module.scss → old/Select/CheckableSelectFieldLegacy.module.scss} +0 -0
- /package/lib/{components/Select/Common.module.scss → old/Select/CommonLegacy.module.scss} +0 -0
- /package/lib/{components/Select/MultiSelectField.module.scss → old/Select/MultiSelectFieldLegacy.module.scss} +0 -0
- /package/lib/{components/Select/SelectField.module.scss → old/Select/SelectFieldLegacy.module.scss} +0 -0
- /package/lib/{components/SimpleTable.module.scss → old/SimpleTableLegacy.module.scss} +0 -0
- /package/lib/{components/TextArea.module.scss → old/TextAreaLegacy.module.scss} +0 -0
- /package/lib/{components → old}/Toast.d.ts +0 -0
- /package/lib/{components/Toast.module.scss → old/ToastLegacy.module.scss} +0 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
.container {
|
|
2
|
+
color: var(--hive-color-text-v4);
|
|
3
|
+
box-sizing: border-box;
|
|
4
|
+
font-family: var(--hive-font-family-text);
|
|
5
|
+
font-size: var(--hive-font-size-body-small);
|
|
6
|
+
font-weight: var(--hive-font-weight-text-regular);
|
|
7
|
+
line-height: normal;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.container .textAreaContainer {
|
|
11
|
+
display: flex;
|
|
12
|
+
flex-direction: row;
|
|
13
|
+
align-items: flex-start;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.container .textAreaWrapper {
|
|
17
|
+
position: relative;
|
|
18
|
+
width: 100%;
|
|
19
|
+
box-sizing: border-box;
|
|
20
|
+
border-radius: var(--hive-border-radius);
|
|
21
|
+
background-color: var(--hive-color-neutral-white-v4);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.container .borderOverlay {
|
|
25
|
+
position: absolute;
|
|
26
|
+
display: block;
|
|
27
|
+
top: 0;
|
|
28
|
+
left: 0;
|
|
29
|
+
height: 100%;
|
|
30
|
+
width: 100%;
|
|
31
|
+
pointer-events: none;
|
|
32
|
+
z-index: 100;
|
|
33
|
+
border-radius: var(--hive-border-radius);
|
|
34
|
+
border: var(--hive-border-width) solid var(--hive-color-border-v4);
|
|
35
|
+
box-sizing: border-box;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.container textarea {
|
|
39
|
+
display: block;
|
|
40
|
+
width: 100%;
|
|
41
|
+
box-sizing: border-box;
|
|
42
|
+
padding: calc(var(--hive-grid) * 2) calc(var(--hive-grid) * 3);
|
|
43
|
+
border: none;
|
|
44
|
+
border-radius: var(--hive-border-radius);
|
|
45
|
+
background-color: transparent;
|
|
46
|
+
font-family: inherit;
|
|
47
|
+
font-size: inherit;
|
|
48
|
+
font-weight: inherit;
|
|
49
|
+
line-height: inherit;
|
|
50
|
+
color: inherit;
|
|
51
|
+
resize: vertical;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.container textarea.notResizable {
|
|
55
|
+
resize: none;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.container textarea::placeholder {
|
|
59
|
+
color: var(--hive-color-text-secondary-v4);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.container .textAreaWrapper:hover .borderOverlay,
|
|
63
|
+
.container.hover .textAreaWrapper .borderOverlay {
|
|
64
|
+
border-color: var(--hive-color-text-v4);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.container textarea:focus {
|
|
68
|
+
outline: transparent solid var(--hive-outline-width);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.container .textAreaWrapper textarea:focus ~ .borderOverlay,
|
|
72
|
+
.container.focus .textAreaWrapper .borderOverlay {
|
|
73
|
+
border-color: var(--hive-color-primary-v4);
|
|
74
|
+
box-shadow: 0 0 0 3px oklch(from var(--hive-color-primary-v4) l c h / 0.5);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.container.hasError .textAreaWrapper .borderOverlay {
|
|
78
|
+
border-color: var(--hive-color-error-v4);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.container.hasError label {
|
|
82
|
+
color: var(--hive-color-error-v4);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.container.disabled {
|
|
86
|
+
opacity: 0.5;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.container.disabled .textAreaWrapper {
|
|
90
|
+
background-color: var(--hive-color-neutral-white-v4);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.container.disabled .borderOverlay {
|
|
94
|
+
border-color: var(--hive-color-border-v4);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.withError {
|
|
98
|
+
position: relative;
|
|
99
|
+
padding-bottom: calc(var(--hive-grid) * 4.75 + var(--hive-grid));
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.withError .errorContainer {
|
|
103
|
+
position: absolute;
|
|
104
|
+
bottom: 0;
|
|
105
|
+
left: 0;
|
|
106
|
+
overflow: hidden;
|
|
107
|
+
height: calc(var(--hive-grid) * 4.75);
|
|
108
|
+
width: 100%;
|
|
109
|
+
}
|
|
@@ -3,7 +3,7 @@ import { Icon as IconType } from 'react-feather';
|
|
|
3
3
|
import { DataTestProp } from '../helpers/types';
|
|
4
4
|
import { FieldHeaderProps } from './FieldHeader';
|
|
5
5
|
import { IconSize } from './Icon';
|
|
6
|
-
import {
|
|
6
|
+
import { TooltipSide } from './Tooltip';
|
|
7
7
|
export type TextFieldSize = 'medium' | 'small' | 'large';
|
|
8
8
|
export type TextFieldVariant = 'primary' | 'secondary';
|
|
9
9
|
type TextFieldTrailingIcon = {
|
|
@@ -40,7 +40,7 @@ export type TextFieldExtraProps<T extends TextFieldTypes> = {
|
|
|
40
40
|
type?: T;
|
|
41
41
|
readOnly?: boolean;
|
|
42
42
|
clearable?: boolean;
|
|
43
|
-
errorTooltipPlacement?:
|
|
43
|
+
errorTooltipPlacement?: TooltipSide;
|
|
44
44
|
children?: React.ReactNode;
|
|
45
45
|
} & DataTestProp & Pick<InputHTMLAttributes<HTMLInputElement>, 'id' | 'autoFocus' | 'disabled' | 'autoComplete' | 'required' | 'placeholder'> & TextFieldTrailingIcon & Omit<FieldHeaderProps, 'id'>;
|
|
46
46
|
export type TextFieldProps<T extends TextFieldTypes> = TextFieldCoreProps<T> & TextFieldExtraProps<T>;
|
|
@@ -10,7 +10,7 @@ import { Error, errorId } from './Error';
|
|
|
10
10
|
import { FieldHeader } from './FieldHeader';
|
|
11
11
|
import { helpTooltipId } from './Help';
|
|
12
12
|
import { IconButton } from './IconButton';
|
|
13
|
-
import styles from './TextField.module.
|
|
13
|
+
import styles from './TextField.module.css';
|
|
14
14
|
/**
|
|
15
15
|
* ### Purpose
|
|
16
16
|
* Forms require input from users. When you only need basic information, use text fields to gather exactly what you need.
|
|
@@ -54,7 +54,7 @@ const TextFieldInternal = (props, ref) => {
|
|
|
54
54
|
}), ...htmlAttrs }),
|
|
55
55
|
React.createElement("div", { className: cn(styles.borderOverlay, inputBorderOverlayClassName) }),
|
|
56
56
|
inputIcon && (React.createElement(Icon, { icon: inputIcon, ariaLabel: label, containerClassName: cn(styles.inputIconContainer, styles.inputLeftIconContainer), className: styles.inputIcon, size: "small" })),
|
|
57
|
-
clearable && !disabled && isNotEmpty && (React.createElement(IconButton, { icon: X, size: size, ariaLabel: "Clear field", onClick: handleClear, className: styles.clearButton, "data-test": dataTest ? `${dataTest}-clear` : undefined })),
|
|
57
|
+
clearable && !disabled && isNotEmpty && (React.createElement(IconButton, { icon: X, variant: "ghost", size: size === 'small' ? 'small' : 'regular', ariaLabel: "Clear field", onClick: handleClear, className: styles.clearButton, "data-test": dataTest ? `${dataTest}-clear` : undefined })),
|
|
58
58
|
inputContainerChild,
|
|
59
59
|
inputTrailingIcon && inputTrailingIconLabel && (React.createElement(Icon, { icon: inputTrailingIcon, ariaLabel: inputTrailingIconLabel, containerClassName: cn(styles.inputIconContainer, styles.inputTrailingIconContainer), className: styles.inputIconTrailing, size: iconSize }))),
|
|
60
60
|
children),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../src/components/TextField.tsx"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,OAAO,KAAK,EAAE,EAQZ,UAAU,EACV,MAAM,GACP,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAoB,CAAC,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,SAAS,MAAM,kBAAkB,CAAA;AAGxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAA;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,WAAW,EAAoB,MAAM,eAAe,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAIzC,OAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../src/components/TextField.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
.container {
|
|
2
|
+
color: var(--hive-color-text-v4);
|
|
3
|
+
box-sizing: border-box;
|
|
4
|
+
font-family: var(--hive-font-family-text);
|
|
5
|
+
font-size: var(--hive-font-size-body-small);
|
|
6
|
+
font-weight: var(--hive-font-weight-text-regular);
|
|
7
|
+
line-height: normal;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.container .inputBlock {
|
|
11
|
+
display: flex;
|
|
12
|
+
flex-direction: row;
|
|
13
|
+
align-items: center;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.container .inputContainer {
|
|
17
|
+
position: relative;
|
|
18
|
+
flex: 1 1 auto;
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: row;
|
|
21
|
+
box-sizing: border-box;
|
|
22
|
+
height: calc(var(--hive-grid) * 9);
|
|
23
|
+
background-color: var(--hive-color-neutral-white-v4);
|
|
24
|
+
border-radius: var(--hive-border-radius);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.container .inputIconContainer {
|
|
28
|
+
display: inline-flex;
|
|
29
|
+
align-items: center;
|
|
30
|
+
justify-content: center;
|
|
31
|
+
flex-shrink: 0;
|
|
32
|
+
width: calc(var(--hive-grid) * 8);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.container .inputTrailingIconContainer {
|
|
36
|
+
width: auto;
|
|
37
|
+
margin-right: calc(var(--hive-grid) * 1.5);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.container .inputLeftIconContainer {
|
|
41
|
+
order: -1;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.container .inputIcon,
|
|
45
|
+
.container .inputIconTrailing {
|
|
46
|
+
pointer-events: none;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.container .inputIcon {
|
|
50
|
+
left: calc(var(--hive-grid) * 4);
|
|
51
|
+
color: var(--hive-color-text-secondary-v4);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.container .inputIconTrailing {
|
|
55
|
+
right: calc(var(--hive-grid) * -1);
|
|
56
|
+
color: var(--hive-color-text-secondary-v4);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.container .borderOverlay {
|
|
60
|
+
position: absolute;
|
|
61
|
+
display: block;
|
|
62
|
+
top: 0;
|
|
63
|
+
left: 0;
|
|
64
|
+
height: 100%;
|
|
65
|
+
width: 100%;
|
|
66
|
+
pointer-events: none;
|
|
67
|
+
z-index: 100;
|
|
68
|
+
border-radius: var(--hive-border-radius);
|
|
69
|
+
border: var(--hive-border-width) solid var(--hive-color-border-v4);
|
|
70
|
+
box-sizing: border-box;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.container input {
|
|
74
|
+
display: block;
|
|
75
|
+
flex: 1 1 auto;
|
|
76
|
+
background-color: transparent;
|
|
77
|
+
padding: calc(var(--hive-grid) * 1) calc(var(--hive-grid) * 3);
|
|
78
|
+
margin: 0;
|
|
79
|
+
border: none;
|
|
80
|
+
box-sizing: border-box;
|
|
81
|
+
font-family: inherit;
|
|
82
|
+
font-size: inherit;
|
|
83
|
+
font-weight: inherit;
|
|
84
|
+
line-height: inherit;
|
|
85
|
+
color: inherit;
|
|
86
|
+
height: 100%;
|
|
87
|
+
width: 100%;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.container input::placeholder {
|
|
91
|
+
color: var(--hive-color-text-secondary-v4);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.container input::-webkit-search-cancel-button,
|
|
95
|
+
.container input::-webkit-search-decoration {
|
|
96
|
+
-webkit-appearance: none;
|
|
97
|
+
appearance: none;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.container .clearButton {
|
|
101
|
+
display: inline-flex;
|
|
102
|
+
align-items: center;
|
|
103
|
+
margin-right: calc(var(--hive-grid) * 1.5);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.container.small .inputContainer {
|
|
107
|
+
height: calc(var(--hive-grid) * 7.5);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.container.large .inputContainer {
|
|
111
|
+
height: calc(var(--hive-grid) * 13);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.container.mockAutofill input {
|
|
115
|
+
-webkit-box-shadow: 0 0 0 1000px var(--hive-color-neutral-white-v4) inset;
|
|
116
|
+
-webkit-text-fill-color: var(--hive-color-text-v4);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.container.withIcon input {
|
|
120
|
+
padding-left: 0;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.container.empty {
|
|
124
|
+
color: var(--hive-color-text-secondary-v4);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.container input:hover ~ .borderOverlay,
|
|
128
|
+
.container input.hover ~ .borderOverlay {
|
|
129
|
+
border-color: var(--hive-color-text-v4);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
.container input:hover ~ .inputIconContainer > .inputIcon,
|
|
133
|
+
.container input.hover ~ .inputIconContainer > .inputIcon {
|
|
134
|
+
color: var(--hive-color-text-v4);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.container.hasError input ~ .borderOverlay {
|
|
138
|
+
border-color: var(--hive-color-error-v4);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.container.hasError label {
|
|
142
|
+
color: var(--hive-color-error-v4);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.container.hasError input ~ .inputIconContainer > .inputIcon {
|
|
146
|
+
color: var(--hive-color-error-v4);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.container input:focus,
|
|
150
|
+
.container input.focus {
|
|
151
|
+
outline: transparent solid var(--hive-outline-width);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.container input:focus ~ .borderOverlay,
|
|
155
|
+
.container input.focus ~ .borderOverlay {
|
|
156
|
+
border-color: var(--hive-color-primary-v4);
|
|
157
|
+
box-shadow: 0 0 0 3px oklch(from var(--hive-color-primary-v4) l c h / 0.5);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.container input:focus ~ .inputIconContainer > .inputIcon,
|
|
161
|
+
.container input.focus ~ .inputIconContainer > .inputIcon {
|
|
162
|
+
color: var(--hive-color-primary-v4);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.container.disabled {
|
|
166
|
+
color: var(--hive-color-text-secondary-v4);
|
|
167
|
+
opacity: 0.5;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.container.disabled .inputContainer {
|
|
171
|
+
background-color: var(--hive-color-neutral-white-v4);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
.container.disabled input ~ .borderOverlay {
|
|
175
|
+
border-color: var(--hive-color-border-v4);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
.container.disabled input ~ .inputIconContainer > .inputIcon,
|
|
179
|
+
.container.disabled input ~ .inputIconContainer > .inputIconTrailing {
|
|
180
|
+
color: var(--hive-color-text-secondary-v4);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
.withError {
|
|
184
|
+
position: relative;
|
|
185
|
+
padding-bottom: calc(var(--hive-grid) * 4.75 + var(--hive-grid));
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
.withError .errorContainer {
|
|
189
|
+
position: absolute;
|
|
190
|
+
bottom: 0;
|
|
191
|
+
left: 0;
|
|
192
|
+
overflow: hidden;
|
|
193
|
+
height: calc(var(--hive-grid) * 4.75);
|
|
194
|
+
width: 100%;
|
|
195
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FC, ReactNode } from 'react';
|
|
2
|
+
export type ToastVariant = 'success' | 'error' | 'warn' | 'info';
|
|
3
|
+
export type ToastProps = {
|
|
4
|
+
content: ReactNode;
|
|
5
|
+
variant?: ToastVariant;
|
|
6
|
+
id?: string;
|
|
7
|
+
/** Duration in ms before auto-dismiss. Pass `Infinity` to keep open until manually closed. Default: `5000`. */
|
|
8
|
+
duration?: number;
|
|
9
|
+
open?: boolean;
|
|
10
|
+
onOpenChange?: (open: boolean) => void;
|
|
11
|
+
};
|
|
12
|
+
export declare const Toast: FC<ToastProps>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import * as ToastPrimitive from '@radix-ui/react-toast';
|
|
3
|
+
import cn from 'classnames';
|
|
4
|
+
import { CheckCircle, XCircle, AlertTriangle, Info, X } from 'react-feather';
|
|
5
|
+
import styles from './Toast.module.css';
|
|
6
|
+
const VARIANT_CONFIG = {
|
|
7
|
+
success: { Icon: CheckCircle, ariaLabel: 'Success' },
|
|
8
|
+
error: { Icon: XCircle, ariaLabel: 'Error' },
|
|
9
|
+
warn: { Icon: AlertTriangle, ariaLabel: 'Warning' },
|
|
10
|
+
info: { Icon: Info, ariaLabel: 'Info' },
|
|
11
|
+
};
|
|
12
|
+
let _idCounter = 0;
|
|
13
|
+
export const Toast = ({ id = `toast-${++_idCounter}`, variant = 'info', content, duration = 5000, open = true, onOpenChange = () => undefined, }) => {
|
|
14
|
+
const { Icon, ariaLabel } = VARIANT_CONFIG[variant];
|
|
15
|
+
const radixDuration = duration === Infinity ? 2147483647 : duration;
|
|
16
|
+
return (React.createElement(ToastPrimitive.Root, { key: id, open: open, onOpenChange: onOpenChange, duration: radixDuration, className: cn(styles.root, styles[variant]) },
|
|
17
|
+
React.createElement("div", { className: styles.bar }),
|
|
18
|
+
React.createElement("div", { className: styles.body },
|
|
19
|
+
React.createElement(Icon, { size: 18, className: styles.icon, "aria-hidden": true }),
|
|
20
|
+
React.createElement(ToastPrimitive.Description, { asChild: true },
|
|
21
|
+
React.createElement("div", { className: styles.content }, content)),
|
|
22
|
+
React.createElement(ToastPrimitive.Action, { altText: "Close", asChild: true },
|
|
23
|
+
React.createElement("button", { className: styles.closeButton, onClick: () => onOpenChange(false), "aria-label": `Close ${ariaLabel} notification` },
|
|
24
|
+
React.createElement(X, { size: 16 }))))));
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=Toast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../../src/components/Toast/Toast.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwB,MAAM,OAAO,CAAA;AAC5C,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAA;AAE5E,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAWvC,MAAM,cAAc,GAAwC;IAC1D,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE;IACpD,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE;IAC5C,IAAI,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE;IACnD,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;CACxC,CAAA;AAED,IAAI,UAAU,GAAG,CAAC,CAAA;AAYlB,MAAM,CAAC,MAAM,KAAK,GAAmB,CAAC,EACpC,EAAE,GAAG,SAAS,EAAE,UAAU,EAAE,EAC5B,OAAO,GAAG,MAAM,EAChB,OAAO,EACP,QAAQ,GAAG,IAAI,EACf,IAAI,GAAG,IAAI,EACX,YAAY,GAAG,GAAG,EAAE,CAAC,SAAS,GAC/B,EAAE,EAAE;IACH,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,CAAA;IACnD,MAAM,aAAa,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAA;IAEnE,OAAO,CACL,oBAAC,cAAc,CAAC,IAAI,IAClB,GAAG,EAAE,EAAE,EACP,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAE3C,6BAAK,SAAS,EAAE,MAAM,CAAC,GAAG,GAAI;QAC9B,6BAAK,SAAS,EAAE,MAAM,CAAC,IAAI;YACzB,oBAAC,IAAI,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,wBAAgB;YACtD,oBAAC,cAAc,CAAC,WAAW,IAAC,OAAO;gBACjC,6BAAK,SAAS,EAAE,MAAM,CAAC,OAAO,IAAG,OAAO,CAAO,CACpB;YAC7B,oBAAC,cAAc,CAAC,MAAM,IAAC,OAAO,EAAC,OAAO,EAAC,OAAO;gBAC5C,gCAAQ,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,gBAAc,SAAS,SAAS,eAAe;oBACtH,oBAAC,CAAC,IAAC,IAAI,EAAE,EAAE,GAAI,CACR,CACa,CACpB,CACc,CACvB,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
@keyframes slideIn {
|
|
2
|
+
from {
|
|
3
|
+
transform: translateX(calc(100% + 1rem));
|
|
4
|
+
opacity: 0;
|
|
5
|
+
}
|
|
6
|
+
to {
|
|
7
|
+
transform: translateX(0);
|
|
8
|
+
opacity: 1;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@keyframes fadeOut {
|
|
13
|
+
from {
|
|
14
|
+
opacity: 1;
|
|
15
|
+
}
|
|
16
|
+
to {
|
|
17
|
+
opacity: 0;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.root {
|
|
22
|
+
--toast-color: var(--hive-color-text);
|
|
23
|
+
background-color: var(--hive-color-neutral-white);
|
|
24
|
+
border-radius: var(--hive-border-radius);
|
|
25
|
+
box-shadow:
|
|
26
|
+
0 4px 6px -1px oklch(0 0 0 / 0.1),
|
|
27
|
+
0 2px 4px -2px oklch(0 0 0 / 0.06);
|
|
28
|
+
display: flex;
|
|
29
|
+
overflow: hidden;
|
|
30
|
+
width: 360px;
|
|
31
|
+
max-width: 100vw;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.success {
|
|
35
|
+
--toast-color: var(--hive-color-brand-v4);
|
|
36
|
+
}
|
|
37
|
+
.error {
|
|
38
|
+
--toast-color: var(--hive-color-error);
|
|
39
|
+
}
|
|
40
|
+
.warn {
|
|
41
|
+
--toast-color: var(--hive-color-warning-darkest);
|
|
42
|
+
}
|
|
43
|
+
.info {
|
|
44
|
+
--toast-color: var(--hive-color-info-darkest);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.root[data-state='open'] {
|
|
48
|
+
animation: slideIn 200ms cubic-bezier(0.16, 1, 0.3, 1);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.root[data-state='closed'] {
|
|
52
|
+
animation: fadeOut 150ms ease-in forwards;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.bar {
|
|
56
|
+
width: 4px;
|
|
57
|
+
flex-shrink: 0;
|
|
58
|
+
background-color: var(--toast-color);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.body {
|
|
62
|
+
display: flex;
|
|
63
|
+
align-items: flex-start;
|
|
64
|
+
gap: calc(var(--hive-grid) * 3);
|
|
65
|
+
padding: calc(var(--hive-grid) * 3);
|
|
66
|
+
flex: 1;
|
|
67
|
+
min-width: 0;
|
|
68
|
+
background-color: lab(from var(--toast-color) 95% a b);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.icon {
|
|
72
|
+
flex-shrink: 0;
|
|
73
|
+
margin-top: 2px;
|
|
74
|
+
color: var(--toast-color);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.content {
|
|
78
|
+
flex: 1;
|
|
79
|
+
font-size: var(--hive-font-size-body-small);
|
|
80
|
+
line-height: 1.4;
|
|
81
|
+
word-break: break-word;
|
|
82
|
+
color: var(--hive-color-text);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.closeButton {
|
|
86
|
+
flex-shrink: 0;
|
|
87
|
+
background: none;
|
|
88
|
+
border: none;
|
|
89
|
+
cursor: pointer;
|
|
90
|
+
padding: 0;
|
|
91
|
+
color: var(--hive-color-text-subdued);
|
|
92
|
+
line-height: 0;
|
|
93
|
+
transition: color 150ms ease;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.closeButton:hover {
|
|
97
|
+
color: var(--hive-color-text);
|
|
98
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { Toast } from './Toast';
|
|
2
|
+
// Re-exported for backward compat with Alert and other consumers of the legacy types.
|
|
3
|
+
// These will be removed in v5 — import from '@hazelcast/ui/old' instead.
|
|
4
|
+
export { ToastIcon } from '../../old/Toast';
|
|
5
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Toast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAG/B,sFAAsF;AACtF,yEAAyE;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA"}
|
package/lib/components/Toggle.js
CHANGED
|
@@ -3,7 +3,7 @@ import cn from 'classnames';
|
|
|
3
3
|
import { useUID } from 'react-uid';
|
|
4
4
|
import { Error, errorId } from './Error';
|
|
5
5
|
import { Help, helpTooltipId } from './Help';
|
|
6
|
-
import styles from './Toggle.module.
|
|
6
|
+
import styles from './Toggle.module.css';
|
|
7
7
|
export const Toggle = (props) => {
|
|
8
8
|
const { name, value, onChange, onBlur, error, checked, label, helperText, disabled, className, classNameLabel, 'data-test': dataTest = 'toggle', } = props;
|
|
9
9
|
const id = useUID();
|
|
@@ -14,8 +14,7 @@ export const Toggle = (props) => {
|
|
|
14
14
|
[styles.disabled]: disabled,
|
|
15
15
|
}, classNameLabel), htmlFor: id },
|
|
16
16
|
label && (React.createElement("span", { className: styles.labelText, "data-test": `${dataTest}-label` }, label)),
|
|
17
|
-
React.createElement("span", { className: styles.toggleTrack },
|
|
18
|
-
React.createElement("span", { className: styles.toggleTrackText, "data-test": `${dataTest}-state` }, checked ? 'ON' : 'OFF'))),
|
|
17
|
+
React.createElement("span", { className: styles.toggleTrack, "data-test": `${dataTest}-state`, "aria-hidden": true })),
|
|
19
18
|
helperText && React.createElement(Help, { parentId: id, helperText: helperText, className: styles.helperText, "data-test": `${dataTest}-helperText` }),
|
|
20
19
|
React.createElement(Error, { "data-test": `${dataTest}-error`, truncated: true, error: error, className: styles.errorContainer, inputId: id })));
|
|
21
20
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../src/components/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAC1D,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAGlC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,IAAI,EAAa,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEvD,OAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../src/components/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAC1D,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAGlC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,IAAI,EAAa,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEvD,OAAO,MAAM,MAAM,qBAAqB,CAAA;AAqBxC,MAAM,CAAC,MAAM,MAAM,GAAoB,CAAC,KAAK,EAAE,EAAE;IAC/C,MAAM,EACJ,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,MAAM,EACN,KAAK,EACL,OAAO,EACP,KAAK,EACL,UAAU,EACV,QAAQ,EACR,SAAS,EACT,cAAc,EACd,WAAW,EAAE,QAAQ,GAAG,QAAQ,GACjC,GAAG,KAAK,CAAA;IACT,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;IAEnB,OAAO,CACL,6BAAK,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,IAAI,KAAK,EAAE,CAAC,eAAa,QAAQ;QAC1G,+BACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,CAAC,CAAC,OAAO,EAClB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,kBACJ,CAAC,CAAC,KAAK,sBACH,UAAU,IAAI,aAAa,CAAC,EAAE,CAAC,uBAC9B,KAAK,IAAI,OAAO,CAAC,EAAE,CAAC,GACvC;QAEF,+BACE,SAAS,EAAE,EAAE,CACX;gBACE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK;gBACvB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ;aAC5B,EACD,cAAc,CACf,EACD,OAAO,EAAE,EAAE;YAEV,KAAK,IAAI,CACR,8BAAM,SAAS,EAAE,MAAM,CAAC,SAAS,eAAa,GAAG,QAAQ,QAAQ,IAC9D,KAAK,CACD,CACR;YACD,8BAAM,SAAS,EAAE,MAAM,CAAC,WAAW,eAAa,GAAG,QAAQ,QAAQ,wBAAgB,CAC7E;QAEP,UAAU,IAAI,oBAAC,IAAI,IAAC,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,eAAa,GAAG,QAAQ,aAAa,GAAI;QAEhI,oBAAC,KAAK,iBAAY,GAAG,QAAQ,QAAQ,EAAE,SAAS,QAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,cAAc,EAAE,OAAO,EAAE,EAAE,GAAI,CAC5G,CACP,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
.wrapper {
|
|
2
|
+
--toggle-track-width: 32px;
|
|
3
|
+
--toggle-track-height: 18px;
|
|
4
|
+
--toggle-thumb-size: 16px;
|
|
5
|
+
--toggle-thumb-offset: calc(var(--toggle-track-width) - var(--toggle-thumb-size) - 2px);
|
|
6
|
+
--toggle-track-bg: var(--hive-color-neutral-v4);
|
|
7
|
+
--toggle-track-bg-checked: var(--hive-color-brand-v4);
|
|
8
|
+
--toggle-thumb-bg: var(--hive-color-neutral-white-v4);
|
|
9
|
+
--toggle-transition-duration: 160ms;
|
|
10
|
+
|
|
11
|
+
position: relative;
|
|
12
|
+
font-family: inherit;
|
|
13
|
+
font-size: var(--hive-font-size-body-small);
|
|
14
|
+
line-height: var(--hive-line-height-body-small);
|
|
15
|
+
color: var(--hive-color-text-v4);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.wrapper input {
|
|
19
|
+
position: absolute;
|
|
20
|
+
width: 1px;
|
|
21
|
+
height: 1px;
|
|
22
|
+
padding: 0;
|
|
23
|
+
margin: -1px;
|
|
24
|
+
overflow: hidden;
|
|
25
|
+
clip: rect(0, 0, 0, 0);
|
|
26
|
+
white-space: nowrap;
|
|
27
|
+
border: 0;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.wrapper label {
|
|
31
|
+
display: inline-flex;
|
|
32
|
+
align-items: center;
|
|
33
|
+
gap: 12px;
|
|
34
|
+
cursor: pointer;
|
|
35
|
+
user-select: none;
|
|
36
|
+
color: inherit;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.labelText {
|
|
40
|
+
display: inline-block;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.toggleTrack {
|
|
44
|
+
position: relative;
|
|
45
|
+
flex-shrink: 0;
|
|
46
|
+
display: inline-block;
|
|
47
|
+
width: var(--toggle-track-width);
|
|
48
|
+
height: var(--toggle-track-height);
|
|
49
|
+
border-radius: var(--hive-border-radius-pill);
|
|
50
|
+
background: var(--toggle-track-bg);
|
|
51
|
+
border: var(--hive-border-width) solid transparent;
|
|
52
|
+
box-sizing: border-box;
|
|
53
|
+
transition: background-color var(--toggle-transition-duration) ease;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.toggleTrack::before {
|
|
57
|
+
content: '';
|
|
58
|
+
position: absolute;
|
|
59
|
+
top: 0;
|
|
60
|
+
left: 0;
|
|
61
|
+
width: var(--toggle-thumb-size);
|
|
62
|
+
height: var(--toggle-thumb-size);
|
|
63
|
+
background: var(--toggle-thumb-bg);
|
|
64
|
+
border-radius: var(--hive-border-radius-pill);
|
|
65
|
+
box-shadow:
|
|
66
|
+
0 1px 3px rgba(0, 0, 0, 0.1),
|
|
67
|
+
0 1px 2px rgba(0, 0, 0, 0.1);
|
|
68
|
+
transition: transform var(--toggle-transition-duration) ease;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.wrapper input:checked + label .toggleTrack {
|
|
72
|
+
background: var(--toggle-track-bg-checked);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.wrapper input:checked + label .toggleTrack::before {
|
|
76
|
+
transform: translateX(var(--toggle-thumb-offset));
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.wrapper input:focus-visible + label .toggleTrack,
|
|
80
|
+
.wrapper label.focus .toggleTrack {
|
|
81
|
+
outline: var(--hive-outline-width) solid var(--hive-color-primary-v4);
|
|
82
|
+
outline-offset: 2px;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.wrapper label.hover .toggleTrack,
|
|
86
|
+
.wrapper label:hover .toggleTrack {
|
|
87
|
+
filter: brightness(0.92);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.wrapper label.disabled,
|
|
91
|
+
.wrapper input:disabled + label {
|
|
92
|
+
cursor: not-allowed;
|
|
93
|
+
color: var(--hive-color-text-subdued-v4);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.wrapper input:disabled + label .toggleTrack,
|
|
97
|
+
.wrapper label.disabled .toggleTrack,
|
|
98
|
+
.wrapper input:disabled:checked + label .toggleTrack,
|
|
99
|
+
.wrapper label.disabled.checked .toggleTrack {
|
|
100
|
+
background: var(--hive-color-neutral-v4);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.wrapper input:disabled + label .toggleTrack::before,
|
|
104
|
+
.wrapper label.disabled .toggleTrack::before {
|
|
105
|
+
background: var(--hive-color-neutral-white-v4);
|
|
106
|
+
box-shadow: none;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.wrapper label.error .toggleTrack,
|
|
110
|
+
.withError .toggleTrack {
|
|
111
|
+
box-shadow: 0 0 0 var(--hive-border-width) var(--hive-color-error-v4);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.helperText {
|
|
115
|
+
margin-left: 6px;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.errorContainer {
|
|
119
|
+
margin-top: var(--hive-grid);
|
|
120
|
+
}
|