@doist/reactist 29.1.0 → 29.1.2
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/CHANGELOG.md +14 -0
- package/dist/reactist.cjs.development.js +6749 -1829
- package/dist/reactist.cjs.development.js.map +1 -1
- package/dist/reactist.cjs.production.min.js +1 -1
- package/dist/reactist.cjs.production.min.js.map +1 -1
- package/es/avatar/avatar.js +106 -36
- package/es/avatar/avatar.js.map +1 -1
- package/es/avatar/utils.js +17 -19
- package/es/avatar/utils.js.map +1 -1
- package/es/badge/badge.js +50 -6
- package/es/badge/badge.js.map +1 -1
- package/es/banner/banner.js +384 -41
- package/es/banner/banner.js.map +1 -1
- package/es/base-field/base-field.js +367 -77
- package/es/base-field/base-field.js.map +1 -1
- package/es/box/box.js +139 -61
- package/es/box/box.js.map +1 -1
- package/es/button/button.js +346 -36
- package/es/button/button.js.map +1 -1
- package/es/checkbox-field/checkbox-field.js +71 -48
- package/es/checkbox-field/checkbox-field.js.map +1 -1
- package/es/checkbox-field/checkbox-icon.js +88 -28
- package/es/checkbox-field/checkbox-icon.js.map +1 -1
- package/es/checkbox-field/use-fork-ref.js +15 -20
- package/es/checkbox-field/use-fork-ref.js.map +1 -1
- package/es/columns/columns.js +46 -23
- package/es/columns/columns.js.map +1 -1
- package/es/components/color-picker/color-picker.js +190 -46
- package/es/components/color-picker/color-picker.js.map +1 -1
- package/es/components/deprecated-button/deprecated-button.js +102 -9
- package/es/components/deprecated-button/deprecated-button.js.map +1 -1
- package/es/components/deprecated-button/index.js +5 -2
- package/es/components/deprecated-button/index.js.map +1 -1
- package/es/components/deprecated-dropdown/dropdown.js +234 -134
- package/es/components/deprecated-dropdown/dropdown.js.map +1 -1
- package/es/components/deprecated-dropdown/index.js +4 -1
- package/es/components/deprecated-dropdown/index.js.map +1 -1
- package/es/components/deprecated-input/index.js +5 -2
- package/es/components/deprecated-input/index.js.map +1 -1
- package/es/components/deprecated-input/input.js +27 -4
- package/es/components/deprecated-input/input.js.map +1 -1
- package/es/components/deprecated-select/select.js +110 -7
- package/es/components/deprecated-select/select.js.map +1 -1
- package/es/components/key-capturer/key-capturer.js +190 -137
- package/es/components/key-capturer/key-capturer.js.map +1 -1
- package/es/components/keyboard-shortcut/keyboard-shortcut.js +65 -45
- package/es/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
- package/es/components/progress-bar/progress-bar.js +61 -9
- package/es/components/progress-bar/progress-bar.js.map +1 -1
- package/es/components/time/index.js +5 -2
- package/es/components/time/index.js.map +1 -1
- package/es/components/time/time-utils.js +59 -53
- package/es/components/time/time-utils.js.map +1 -1
- package/es/components/time/time.js +94 -91
- package/es/components/time/time.js.map +1 -1
- package/es/divider/divider.js +44 -5
- package/es/divider/divider.js.map +1 -1
- package/es/heading/heading.js +122 -20
- package/es/heading/heading.js.map +1 -1
- package/es/hidden/hidden.js +36 -30
- package/es/hidden/hidden.js.map +1 -1
- package/es/hidden-visually/hidden-visually.js +9 -4
- package/es/hidden-visually/hidden-visually.js.map +1 -1
- package/es/icons/alert-icon.js +145 -18
- package/es/icons/alert-icon.js.map +1 -1
- package/es/icons/banner-icon.js +213 -25
- package/es/icons/banner-icon.js.map +1 -1
- package/es/icons/close-icon.js +26 -3
- package/es/icons/close-icon.js.map +1 -1
- package/es/icons/password-hidden-icon.js +40 -6
- package/es/icons/password-hidden-icon.js.map +1 -1
- package/es/icons/password-visible-icon.js +33 -5
- package/es/icons/password-visible-icon.js.map +1 -1
- package/es/index.js +9 -9
- package/es/inline/inline.js +24 -9
- package/es/inline/inline.js.map +1 -1
- package/es/loading/loading.js +63 -17
- package/es/loading/loading.js.map +1 -1
- package/es/menu/menu.js +469 -92
- package/es/menu/menu.js.map +1 -1
- package/es/modal/modal.js +675 -112
- package/es/modal/modal.js.map +1 -1
- package/es/notice/notice.js +77 -10
- package/es/notice/notice.js.map +1 -1
- package/es/password-field/password-field.js +89 -11
- package/es/password-field/password-field.js.map +1 -1
- package/es/prose/prose.js +48 -9
- package/es/prose/prose.js.map +1 -1
- package/es/select-field/select-field.js +150 -16
- package/es/select-field/select-field.js.map +1 -1
- package/es/spinner/spinner.js +39 -6
- package/es/spinner/spinner.js.map +1 -1
- package/es/stack/stack.js +29 -17
- package/es/stack/stack.js.map +1 -1
- package/es/switch-field/switch-field.js +225 -42
- package/es/switch-field/switch-field.js.map +1 -1
- package/es/tabs/tabs.js +207 -109
- package/es/tabs/tabs.js.map +1 -1
- package/es/text/text.js +27 -17
- package/es/text/text.js.map +1 -1
- package/es/text-area/text-area.js +264 -54
- package/es/text-area/text-area.js.map +1 -1
- package/es/text-field/text-field.js +204 -31
- package/es/text-field/text-field.js.map +1 -1
- package/es/text-link/text-link.js +21 -10
- package/es/text-link/text-link.js.map +1 -1
- package/es/toast/static-toast.js +143 -25
- package/es/toast/static-toast.js.map +1 -1
- package/es/toast/toast-animation.js +159 -109
- package/es/toast/toast-animation.js.map +1 -1
- package/es/toast/use-toasts.js +309 -84
- package/es/toast/use-toasts.js.map +1 -1
- package/es/tooltip/tooltip.js +88 -32
- package/es/tooltip/tooltip.js.map +1 -1
- package/es/utils/common-helpers.js +12 -11
- package/es/utils/common-helpers.js.map +1 -1
- package/es/utils/polymorphism.js +84 -1
- package/es/utils/polymorphism.js.map +1 -1
- package/es/utils/responsive-props.js +43 -32
- package/es/utils/responsive-props.js.map +1 -1
- package/lib/avatar/avatar.js +109 -35
- package/lib/avatar/avatar.js.map +1 -1
- package/lib/avatar/utils.js +17 -19
- package/lib/avatar/utils.js.map +1 -1
- package/lib/badge/badge.js +53 -5
- package/lib/badge/badge.js.map +1 -1
- package/lib/banner/banner.js +385 -38
- package/lib/banner/banner.js.map +1 -1
- package/lib/base-field/base-field.js +366 -73
- package/lib/base-field/base-field.js.map +1 -1
- package/lib/box/box.js +141 -61
- package/lib/box/box.js.map +1 -1
- package/lib/button/button.js +347 -35
- package/lib/button/button.js.map +1 -1
- package/lib/checkbox-field/checkbox-field.js +73 -46
- package/lib/checkbox-field/checkbox-field.js.map +1 -1
- package/lib/checkbox-field/checkbox-icon.js +92 -28
- package/lib/checkbox-field/checkbox-icon.js.map +1 -1
- package/lib/checkbox-field/use-fork-ref.js +15 -20
- package/lib/checkbox-field/use-fork-ref.js.map +1 -1
- package/lib/columns/columns.js +49 -22
- package/lib/columns/columns.js.map +1 -1
- package/lib/components/color-picker/color-picker.js +189 -45
- package/lib/components/color-picker/color-picker.js.map +1 -1
- package/lib/components/deprecated-button/deprecated-button.js +104 -9
- package/lib/components/deprecated-button/deprecated-button.js.map +1 -1
- package/lib/components/deprecated-dropdown/dropdown.js +235 -133
- package/lib/components/deprecated-dropdown/dropdown.js.map +1 -1
- package/lib/components/deprecated-input/input.js +28 -4
- package/lib/components/deprecated-input/input.js.map +1 -1
- package/lib/components/deprecated-select/select.js +112 -7
- package/lib/components/deprecated-select/select.js.map +1 -1
- package/lib/components/key-capturer/key-capturer.js +188 -135
- package/lib/components/key-capturer/key-capturer.js.map +1 -1
- package/lib/components/keyboard-shortcut/keyboard-shortcut.js +67 -45
- package/lib/components/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
- package/lib/components/progress-bar/progress-bar.js +60 -8
- package/lib/components/progress-bar/progress-bar.js.map +1 -1
- package/lib/components/time/time-utils.js +59 -53
- package/lib/components/time/time-utils.js.map +1 -1
- package/lib/components/time/time.js +93 -90
- package/lib/components/time/time.js.map +1 -1
- package/lib/divider/divider.js +47 -4
- package/lib/divider/divider.js.map +1 -1
- package/lib/heading/heading.js +125 -19
- package/lib/heading/heading.js.map +1 -1
- package/lib/hidden/hidden.js +39 -29
- package/lib/hidden/hidden.js.map +1 -1
- package/lib/hidden-visually/hidden-visually.js +11 -3
- package/lib/hidden-visually/hidden-visually.js.map +1 -1
- package/lib/icons/alert-icon.js +149 -18
- package/lib/icons/alert-icon.js.map +1 -1
- package/lib/icons/banner-icon.js +217 -25
- package/lib/icons/banner-icon.js.map +1 -1
- package/lib/icons/close-icon.js +29 -3
- package/lib/icons/close-icon.js.map +1 -1
- package/lib/icons/password-hidden-icon.js +43 -6
- package/lib/icons/password-hidden-icon.js.map +1 -1
- package/lib/icons/password-visible-icon.js +36 -5
- package/lib/icons/password-visible-icon.js.map +1 -1
- package/lib/inline/inline.js +27 -8
- package/lib/inline/inline.js.map +1 -1
- package/lib/loading/loading.js +67 -17
- package/lib/loading/loading.js.map +1 -1
- package/lib/menu/menu.js +471 -91
- package/lib/menu/menu.js.map +1 -1
- package/lib/modal/modal.js +671 -106
- package/lib/modal/modal.js.map +1 -1
- package/lib/notice/notice.js +75 -8
- package/lib/notice/notice.js.map +1 -1
- package/lib/password-field/password-field.js +92 -10
- package/lib/password-field/password-field.js.map +1 -1
- package/lib/prose/prose.js +51 -8
- package/lib/prose/prose.js.map +1 -1
- package/lib/select-field/select-field.js +152 -14
- package/lib/select-field/select-field.js.map +1 -1
- package/lib/spinner/spinner.js +39 -6
- package/lib/spinner/spinner.js.map +1 -1
- package/lib/stack/stack.js +29 -15
- package/lib/stack/stack.js.map +1 -1
- package/lib/switch-field/switch-field.js +225 -38
- package/lib/switch-field/switch-field.js.map +1 -1
- package/lib/tabs/tabs.js +207 -107
- package/lib/tabs/tabs.js.map +1 -1
- package/lib/text/text.js +30 -16
- package/lib/text/text.js.map +1 -1
- package/lib/text-area/text-area.js +264 -52
- package/lib/text-area/text-area.js.map +1 -1
- package/lib/text-field/text-field.js +207 -30
- package/lib/text-field/text-field.js.map +1 -1
- package/lib/text-link/text-link.js +24 -9
- package/lib/text-link/text-link.js.map +1 -1
- package/lib/toast/static-toast.js +142 -22
- package/lib/toast/static-toast.js.map +1 -1
- package/lib/toast/toast-animation.js +158 -108
- package/lib/toast/toast-animation.js.map +1 -1
- package/lib/toast/use-toasts.js +310 -82
- package/lib/toast/use-toasts.js.map +1 -1
- package/lib/tooltip/tooltip.js +87 -31
- package/lib/tooltip/tooltip.js.map +1 -1
- package/lib/utils/common-helpers.js +12 -11
- package/lib/utils/common-helpers.js.map +1 -1
- package/lib/utils/polymorphism.js +84 -1
- package/lib/utils/polymorphism.js.map +1 -1
- package/lib/utils/responsive-props.js +43 -32
- package/lib/utils/responsive-props.js.map +1 -1
- package/package.json +10 -2
package/es/button/button.js
CHANGED
|
@@ -1,58 +1,368 @@
|
|
|
1
|
-
import
|
|
1
|
+
import _extends from '@babel/runtime/helpers/extends';
|
|
2
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
|
+
import { c } from 'react-compiler-runtime';
|
|
2
4
|
import * as React from 'react';
|
|
3
5
|
import { Role } from '@ariakit/react';
|
|
4
6
|
import classNames from 'classnames';
|
|
7
|
+
import modules_5357ebb8 from './button.module.css.js';
|
|
5
8
|
import { getBoxClassNames, Box } from '../box/box.js';
|
|
6
9
|
import { Spinner } from '../spinner/spinner.js';
|
|
7
10
|
import { Tooltip } from '../tooltip/tooltip.js';
|
|
8
|
-
import modules_5357ebb8 from './button.module.css.js';
|
|
9
11
|
|
|
12
|
+
const _excluded = ["variant", "tone", "size", "shape", "type", "disabled", "loading", "tooltip", "render", "onClick", "exceptionallySetClassName", "children", "startIcon", "endIcon", "width", "align"],
|
|
13
|
+
_excluded2 = ["variant", "tone", "size", "shape", "type", "disabled", "loading", "tooltip", "render", "onClick", "exceptionallySetClassName", "children", "icon"];
|
|
10
14
|
function preventDefault(event) {
|
|
11
|
-
|
|
15
|
+
event.preventDefault();
|
|
12
16
|
}
|
|
13
17
|
/**
|
|
14
18
|
* A button element that displays a text label and optionally a start or end icon. It follows the
|
|
15
19
|
* [WAI-ARIA Button Pattern](https://www.w3.org/TR/wai-aria-practices/#button).
|
|
16
20
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
21
|
+
const Button = /*#__PURE__*/React.forwardRef(function Button(t0, ref) {
|
|
22
|
+
const $ = c(54);
|
|
23
|
+
let children;
|
|
24
|
+
let endIcon;
|
|
25
|
+
let exceptionallySetClassName;
|
|
26
|
+
let onClick;
|
|
27
|
+
let props;
|
|
28
|
+
let render;
|
|
29
|
+
let startIcon;
|
|
30
|
+
let t1;
|
|
31
|
+
let t2;
|
|
32
|
+
let t3;
|
|
33
|
+
let t4;
|
|
34
|
+
let t5;
|
|
35
|
+
let t6;
|
|
36
|
+
let t7;
|
|
37
|
+
let t8;
|
|
38
|
+
let tooltip;
|
|
39
|
+
let variant;
|
|
40
|
+
if ($[0] !== t0) {
|
|
41
|
+
var _t = t0;
|
|
42
|
+
({
|
|
43
|
+
variant,
|
|
44
|
+
tone: t1,
|
|
45
|
+
size: t2,
|
|
46
|
+
shape: t3,
|
|
47
|
+
type: t4,
|
|
48
|
+
disabled: t5,
|
|
49
|
+
loading: t6,
|
|
50
|
+
tooltip,
|
|
51
|
+
render,
|
|
52
|
+
onClick,
|
|
53
|
+
exceptionallySetClassName,
|
|
54
|
+
children,
|
|
55
|
+
startIcon,
|
|
56
|
+
endIcon,
|
|
57
|
+
width: t7,
|
|
58
|
+
align: t8
|
|
59
|
+
} = _t);
|
|
60
|
+
props = _objectWithoutProperties(_t, _excluded);
|
|
61
|
+
$[0] = t0;
|
|
62
|
+
$[1] = children;
|
|
63
|
+
$[2] = endIcon;
|
|
64
|
+
$[3] = exceptionallySetClassName;
|
|
65
|
+
$[4] = onClick;
|
|
66
|
+
$[5] = props;
|
|
67
|
+
$[6] = render;
|
|
68
|
+
$[7] = startIcon;
|
|
69
|
+
$[8] = t1;
|
|
70
|
+
$[9] = t2;
|
|
71
|
+
$[10] = t3;
|
|
72
|
+
$[11] = t4;
|
|
73
|
+
$[12] = t5;
|
|
74
|
+
$[13] = t6;
|
|
75
|
+
$[14] = t7;
|
|
76
|
+
$[15] = t8;
|
|
77
|
+
$[16] = tooltip;
|
|
78
|
+
$[17] = variant;
|
|
79
|
+
} else {
|
|
80
|
+
children = $[1];
|
|
81
|
+
endIcon = $[2];
|
|
82
|
+
exceptionallySetClassName = $[3];
|
|
83
|
+
onClick = $[4];
|
|
84
|
+
props = $[5];
|
|
85
|
+
render = $[6];
|
|
86
|
+
startIcon = $[7];
|
|
87
|
+
t1 = $[8];
|
|
88
|
+
t2 = $[9];
|
|
89
|
+
t3 = $[10];
|
|
90
|
+
t4 = $[11];
|
|
91
|
+
t5 = $[12];
|
|
92
|
+
t6 = $[13];
|
|
93
|
+
t7 = $[14];
|
|
94
|
+
t8 = $[15];
|
|
95
|
+
tooltip = $[16];
|
|
96
|
+
variant = $[17];
|
|
97
|
+
}
|
|
98
|
+
const tone = t1 === undefined ? "normal" : t1;
|
|
99
|
+
const size = t2 === undefined ? "normal" : t2;
|
|
100
|
+
const shape = t3 === undefined ? "normal" : t3;
|
|
101
|
+
const type = t4 === undefined ? "button" : t4;
|
|
102
|
+
const disabled = t5 === undefined ? false : t5;
|
|
103
|
+
const loading = t6 === undefined ? false : t6;
|
|
104
|
+
const width = t7 === undefined ? "auto" : t7;
|
|
105
|
+
const align = t8 === undefined ? "center" : t8;
|
|
106
|
+
const isDisabled = loading || disabled;
|
|
107
|
+
const t9 = render != null ? undefined : type;
|
|
108
|
+
const t10 = isDisabled ? preventDefault : onClick;
|
|
109
|
+
let t11;
|
|
110
|
+
if ($[18] !== disabled || $[19] !== exceptionallySetClassName || $[20] !== shape || $[21] !== size || $[22] !== tone || $[23] !== variant || $[24] !== width) {
|
|
111
|
+
t11 = classNames([getBoxClassNames({
|
|
112
|
+
width
|
|
113
|
+
}), exceptionallySetClassName, modules_5357ebb8.baseButton, modules_5357ebb8[`variant-${variant}`], modules_5357ebb8[`tone-${tone}`], modules_5357ebb8[`size-${size}`], shape === "rounded" ? modules_5357ebb8["shape-rounded"] : null, disabled ? modules_5357ebb8.disabled : null]);
|
|
114
|
+
$[18] = disabled;
|
|
115
|
+
$[19] = exceptionallySetClassName;
|
|
116
|
+
$[20] = shape;
|
|
117
|
+
$[21] = size;
|
|
118
|
+
$[22] = tone;
|
|
119
|
+
$[23] = variant;
|
|
120
|
+
$[24] = width;
|
|
121
|
+
$[25] = t11;
|
|
122
|
+
} else {
|
|
123
|
+
t11 = $[25];
|
|
124
|
+
}
|
|
125
|
+
let t12;
|
|
126
|
+
if ($[26] !== endIcon || $[27] !== loading || $[28] !== startIcon) {
|
|
127
|
+
t12 = startIcon ? /*#__PURE__*/React.createElement(Box, {
|
|
128
|
+
display: "flex",
|
|
129
|
+
className: modules_5357ebb8.startIcon,
|
|
130
|
+
"aria-hidden": true
|
|
131
|
+
}, loading && !endIcon ? /*#__PURE__*/React.createElement(Spinner, null) : startIcon) : null;
|
|
132
|
+
$[26] = endIcon;
|
|
133
|
+
$[27] = loading;
|
|
134
|
+
$[28] = startIcon;
|
|
135
|
+
$[29] = t12;
|
|
136
|
+
} else {
|
|
137
|
+
t12 = $[29];
|
|
138
|
+
}
|
|
139
|
+
let t13;
|
|
140
|
+
if ($[30] !== align || $[31] !== children || $[32] !== width) {
|
|
141
|
+
t13 = children ? /*#__PURE__*/React.createElement(Box, {
|
|
142
|
+
as: "span",
|
|
143
|
+
className: modules_5357ebb8.label,
|
|
144
|
+
overflow: "hidden",
|
|
145
|
+
width: width === "full" ? "full" : undefined,
|
|
146
|
+
textAlign: width === "auto" ? "center" : align
|
|
147
|
+
}, children) : null;
|
|
148
|
+
$[30] = align;
|
|
149
|
+
$[31] = children;
|
|
150
|
+
$[32] = width;
|
|
151
|
+
$[33] = t13;
|
|
152
|
+
} else {
|
|
153
|
+
t13 = $[33];
|
|
154
|
+
}
|
|
155
|
+
let t14;
|
|
156
|
+
if ($[34] !== endIcon || $[35] !== loading || $[36] !== startIcon) {
|
|
157
|
+
t14 = endIcon || loading && !startIcon ? /*#__PURE__*/React.createElement(Box, {
|
|
158
|
+
display: "flex",
|
|
159
|
+
className: modules_5357ebb8.endIcon,
|
|
160
|
+
"aria-hidden": true
|
|
161
|
+
}, loading ? /*#__PURE__*/React.createElement(Spinner, null) : endIcon) : null;
|
|
162
|
+
$[34] = endIcon;
|
|
163
|
+
$[35] = loading;
|
|
164
|
+
$[36] = startIcon;
|
|
165
|
+
$[37] = t14;
|
|
166
|
+
} else {
|
|
167
|
+
t14 = $[37];
|
|
168
|
+
}
|
|
169
|
+
let t15;
|
|
170
|
+
if ($[38] !== t12 || $[39] !== t13 || $[40] !== t14) {
|
|
171
|
+
t15 = /*#__PURE__*/React.createElement(React.Fragment, null, t12, t13, t14);
|
|
172
|
+
$[38] = t12;
|
|
173
|
+
$[39] = t13;
|
|
174
|
+
$[40] = t14;
|
|
175
|
+
$[41] = t15;
|
|
176
|
+
} else {
|
|
177
|
+
t15 = $[41];
|
|
178
|
+
}
|
|
179
|
+
let t16;
|
|
180
|
+
if ($[42] !== isDisabled || $[43] !== props || $[44] !== ref || $[45] !== render || $[46] !== t10 || $[47] !== t11 || $[48] !== t15 || $[49] !== t9) {
|
|
181
|
+
t16 = /*#__PURE__*/React.createElement(Role.button, _extends({}, props, {
|
|
182
|
+
render: render,
|
|
183
|
+
type: t9,
|
|
184
|
+
ref: ref,
|
|
185
|
+
"aria-disabled": isDisabled,
|
|
186
|
+
onClick: t10,
|
|
187
|
+
className: t11
|
|
188
|
+
}), t15);
|
|
189
|
+
$[42] = isDisabled;
|
|
190
|
+
$[43] = props;
|
|
191
|
+
$[44] = ref;
|
|
192
|
+
$[45] = render;
|
|
193
|
+
$[46] = t10;
|
|
194
|
+
$[47] = t11;
|
|
195
|
+
$[48] = t15;
|
|
196
|
+
$[49] = t9;
|
|
197
|
+
$[50] = t16;
|
|
198
|
+
} else {
|
|
199
|
+
t16 = $[50];
|
|
200
|
+
}
|
|
201
|
+
const buttonElement = t16;
|
|
202
|
+
let t17;
|
|
203
|
+
if ($[51] !== buttonElement || $[52] !== tooltip) {
|
|
204
|
+
t17 = tooltip ? /*#__PURE__*/React.createElement(Tooltip, {
|
|
205
|
+
content: tooltip
|
|
206
|
+
}, buttonElement) : buttonElement;
|
|
207
|
+
$[51] = buttonElement;
|
|
208
|
+
$[52] = tooltip;
|
|
209
|
+
$[53] = t17;
|
|
210
|
+
} else {
|
|
211
|
+
t17 = $[53];
|
|
212
|
+
}
|
|
213
|
+
return t17;
|
|
35
214
|
});
|
|
36
215
|
/**
|
|
37
216
|
* A button element that displays an icon only, visually, though it is semantically labelled. It
|
|
38
217
|
* also makes sure to always show a tooltip with its label. It follows the
|
|
39
218
|
* [WAI-ARIA Button Pattern](https://www.w3.org/TR/wai-aria-practices/#button).
|
|
40
219
|
*/
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
220
|
+
const IconButton = /*#__PURE__*/React.forwardRef(function IconButton(t0, ref) {
|
|
221
|
+
const $ = c(36);
|
|
222
|
+
let exceptionallySetClassName;
|
|
223
|
+
let icon;
|
|
224
|
+
let onClick;
|
|
225
|
+
let props;
|
|
226
|
+
let render;
|
|
227
|
+
let t1;
|
|
228
|
+
let t2;
|
|
229
|
+
let t3;
|
|
230
|
+
let t4;
|
|
231
|
+
let t5;
|
|
232
|
+
let t6;
|
|
233
|
+
let tooltip;
|
|
234
|
+
let variant;
|
|
235
|
+
if ($[0] !== t0) {
|
|
236
|
+
const {
|
|
237
|
+
variant: t7,
|
|
238
|
+
tone: t8,
|
|
239
|
+
size: t9,
|
|
240
|
+
shape: t10,
|
|
241
|
+
type: t11,
|
|
242
|
+
disabled: t12,
|
|
243
|
+
loading: t13,
|
|
244
|
+
tooltip: t14,
|
|
245
|
+
render: t15,
|
|
246
|
+
onClick: t16,
|
|
247
|
+
exceptionallySetClassName: t17,
|
|
248
|
+
children,
|
|
249
|
+
icon: t18
|
|
250
|
+
} = t0,
|
|
251
|
+
t19 = _objectWithoutProperties(t0, _excluded2);
|
|
252
|
+
variant = t7;
|
|
253
|
+
t1 = t8;
|
|
254
|
+
t2 = t9;
|
|
255
|
+
t3 = t10;
|
|
256
|
+
t4 = t11;
|
|
257
|
+
t5 = t12;
|
|
258
|
+
t6 = t13;
|
|
259
|
+
tooltip = t14;
|
|
260
|
+
render = t15;
|
|
261
|
+
onClick = t16;
|
|
262
|
+
exceptionallySetClassName = t17;
|
|
263
|
+
icon = t18;
|
|
264
|
+
props = t19;
|
|
265
|
+
$[0] = t0;
|
|
266
|
+
$[1] = exceptionallySetClassName;
|
|
267
|
+
$[2] = icon;
|
|
268
|
+
$[3] = onClick;
|
|
269
|
+
$[4] = props;
|
|
270
|
+
$[5] = render;
|
|
271
|
+
$[6] = t1;
|
|
272
|
+
$[7] = t2;
|
|
273
|
+
$[8] = t3;
|
|
274
|
+
$[9] = t4;
|
|
275
|
+
$[10] = t5;
|
|
276
|
+
$[11] = t6;
|
|
277
|
+
$[12] = tooltip;
|
|
278
|
+
$[13] = variant;
|
|
279
|
+
} else {
|
|
280
|
+
exceptionallySetClassName = $[1];
|
|
281
|
+
icon = $[2];
|
|
282
|
+
onClick = $[3];
|
|
283
|
+
props = $[4];
|
|
284
|
+
render = $[5];
|
|
285
|
+
t1 = $[6];
|
|
286
|
+
t2 = $[7];
|
|
287
|
+
t3 = $[8];
|
|
288
|
+
t4 = $[9];
|
|
289
|
+
t5 = $[10];
|
|
290
|
+
t6 = $[11];
|
|
291
|
+
tooltip = $[12];
|
|
292
|
+
variant = $[13];
|
|
293
|
+
}
|
|
294
|
+
const tone = t1 === undefined ? "normal" : t1;
|
|
295
|
+
const size = t2 === undefined ? "normal" : t2;
|
|
296
|
+
const shape = t3 === undefined ? "normal" : t3;
|
|
297
|
+
const type = t4 === undefined ? "button" : t4;
|
|
298
|
+
const disabled = t5 === undefined ? false : t5;
|
|
299
|
+
const loading = t6 === undefined ? false : t6;
|
|
300
|
+
const isDisabled = loading || disabled;
|
|
301
|
+
const t7 = render != null ? undefined : type;
|
|
302
|
+
const t8 = isDisabled ? preventDefault : onClick;
|
|
303
|
+
const t9 = modules_5357ebb8[`variant-${variant}`];
|
|
304
|
+
const t10 = modules_5357ebb8[`tone-${tone}`];
|
|
305
|
+
const t11 = modules_5357ebb8[`size-${size}`];
|
|
306
|
+
const t12 = shape === "rounded" ? modules_5357ebb8["shape-rounded"] : null;
|
|
307
|
+
const t13 = disabled ? modules_5357ebb8.disabled : null;
|
|
308
|
+
let t14;
|
|
309
|
+
if ($[14] !== exceptionallySetClassName || $[15] !== t10 || $[16] !== t11 || $[17] !== t12 || $[18] !== t13 || $[19] !== t9) {
|
|
310
|
+
t14 = classNames([exceptionallySetClassName, modules_5357ebb8.baseButton, t9, t10, t11, t12, modules_5357ebb8.iconButton, t13]);
|
|
311
|
+
$[14] = exceptionallySetClassName;
|
|
312
|
+
$[15] = t10;
|
|
313
|
+
$[16] = t11;
|
|
314
|
+
$[17] = t12;
|
|
315
|
+
$[18] = t13;
|
|
316
|
+
$[19] = t9;
|
|
317
|
+
$[20] = t14;
|
|
318
|
+
} else {
|
|
319
|
+
t14 = $[20];
|
|
320
|
+
}
|
|
321
|
+
let t15;
|
|
322
|
+
if ($[21] !== icon || $[22] !== loading) {
|
|
323
|
+
t15 = loading && /*#__PURE__*/React.createElement(Spinner, null) || icon;
|
|
324
|
+
$[21] = icon;
|
|
325
|
+
$[22] = loading;
|
|
326
|
+
$[23] = t15;
|
|
327
|
+
} else {
|
|
328
|
+
t15 = $[23];
|
|
329
|
+
}
|
|
330
|
+
let t16;
|
|
331
|
+
if ($[24] !== isDisabled || $[25] !== props || $[26] !== ref || $[27] !== render || $[28] !== t14 || $[29] !== t15 || $[30] !== t7 || $[31] !== t8) {
|
|
332
|
+
t16 = /*#__PURE__*/React.createElement(Role.button, _extends({}, props, {
|
|
333
|
+
render: render,
|
|
334
|
+
type: t7,
|
|
335
|
+
ref: ref,
|
|
336
|
+
"aria-disabled": isDisabled,
|
|
337
|
+
onClick: t8,
|
|
338
|
+
className: t14
|
|
339
|
+
}), t15);
|
|
340
|
+
$[24] = isDisabled;
|
|
341
|
+
$[25] = props;
|
|
342
|
+
$[26] = ref;
|
|
343
|
+
$[27] = render;
|
|
344
|
+
$[28] = t14;
|
|
345
|
+
$[29] = t15;
|
|
346
|
+
$[30] = t7;
|
|
347
|
+
$[31] = t8;
|
|
348
|
+
$[32] = t16;
|
|
349
|
+
} else {
|
|
350
|
+
t16 = $[32];
|
|
351
|
+
}
|
|
352
|
+
const buttonElement = t16;
|
|
353
|
+
const tooltipContent = tooltip === undefined ? props["aria-label"] : tooltip;
|
|
354
|
+
let t17;
|
|
355
|
+
if ($[33] !== buttonElement || $[34] !== tooltipContent) {
|
|
356
|
+
t17 = tooltipContent ? /*#__PURE__*/React.createElement(Tooltip, {
|
|
357
|
+
content: tooltipContent
|
|
358
|
+
}, buttonElement) : buttonElement;
|
|
359
|
+
$[33] = buttonElement;
|
|
360
|
+
$[34] = tooltipContent;
|
|
361
|
+
$[35] = t17;
|
|
362
|
+
} else {
|
|
363
|
+
t17 = $[35];
|
|
364
|
+
}
|
|
365
|
+
return t17;
|
|
56
366
|
});
|
|
57
367
|
|
|
58
368
|
export { Button, IconButton };
|
package/es/button/button.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sources":["../../src/button/button.tsx"],"sourcesContent":[null],"names":["styles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"button.js","sources":["../../src/button/button.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Role } from '@ariakit/react'\nimport classNames from 'classnames'\n\nimport { Box, getBoxClassNames } from '../box'\nimport { Spinner } from '../spinner'\nimport { Tooltip } from '../tooltip'\n\nimport styles from './button.module.css'\n\nimport type { RoleProps } from '@ariakit/react'\nimport type { TooltipProps } from '../tooltip'\nimport type { ObfuscatedClassName } from '../utils/common-types'\n\nfunction preventDefault(event: React.SyntheticEvent) {\n event.preventDefault()\n}\n\ntype ButtonVariant = 'primary' | 'secondary' | 'tertiary' | 'quaternary'\ntype ButtonTone = 'normal' | 'destructive'\ntype ButtonSize = 'small' | 'normal' | 'large'\ntype IconElement = React.ReactElement | string\n\ninterface CommonButtonProps\n extends ObfuscatedClassName,\n Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'className'>,\n Pick<RoleProps, 'render'> {\n /**\n * The button's variant.\n */\n variant: ButtonVariant\n\n /**\n * The button's tone.\n *\n * @default 'normal'\n */\n tone?: ButtonTone\n\n /**\n * The button's size.\n *\n * @default 'normal'\n */\n size?: ButtonSize\n\n /**\n * Controls the shape of the button.\n *\n * Specifically, it allows to make it have slightly curved corners (the default) vs. having them\n * fully curved to the point that they are as round as possible.\n *\n * In icon-only buttons this allows to have the button be circular.\n *\n * @default 'normal'\n */\n shape?: 'normal' | 'rounded'\n\n /**\n * Whether the button is disabled or not.\n *\n * Buttons are disabled using aria-disabled, rather than the HTML disabled attribute. This\n * allows the buttons to be focusable, which can aid discoverability. This way, users can tab to\n * the button and read its label, even if they can't activate it.\n *\n * It is also convenient when buttons are rendered as a link. Links cannot normally be disabled,\n * but by using aria-disabled, we can make them behave as if they were.\n *\n * The `onClick` handler is automatically prevented when the button is disabled in this way, to\n * mimic the behavior of a native disabled attribute.\n *\n * @default false\n */\n disabled?: boolean\n\n /**\n * Whether the button is busy/loading.\n *\n * A button in this state is functionally and semantically disabled. Visually is does not look\n * dimmed (as disabled buttons normally do), but it shows a loading spinner instead.\n *\n * @default false\n */\n loading?: boolean\n\n /**\n * A tooltip linked to the button element.\n */\n tooltip?: TooltipProps['content']\n\n /**\n * The type of the button.\n *\n * @default 'button'\n */\n type?: 'button' | 'submit' | 'reset'\n}\n\ninterface ButtonProps extends CommonButtonProps {\n /**\n * The button label content.\n */\n children?: React.ReactNode\n\n /**\n * The icon to display at the start of the button (before the label).\n */\n startIcon?: IconElement\n\n /**\n * The icon to display at the end of the button (after the label).\n */\n endIcon?: IconElement\n\n /**\n * The width of the button.\n *\n * - `'auto'`: The button will be as wide as its content.\n * - `'full'`: The button will be as wide as its container.\n *\n * @default 'auto'\n */\n width?: 'auto' | 'full'\n\n /**\n * The alignment of the button label inside the button.\n *\n * @default 'center'\n */\n align?: 'start' | 'center' | 'end'\n}\n\n/**\n * A button element that displays a text label and optionally a start or end icon. It follows the\n * [WAI-ARIA Button Pattern](https://www.w3.org/TR/wai-aria-practices/#button).\n */\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(function Button(\n {\n variant,\n tone = 'normal',\n size = 'normal',\n shape = 'normal',\n type = 'button',\n disabled = false,\n loading = false,\n tooltip,\n render,\n onClick,\n exceptionallySetClassName,\n children,\n startIcon,\n endIcon,\n width = 'auto',\n align = 'center',\n ...props\n },\n ref,\n) {\n const isDisabled = loading || disabled\n const buttonElement = (\n <Role.button\n {...props}\n render={render}\n type={render != null ? undefined : type}\n ref={ref}\n aria-disabled={isDisabled}\n onClick={isDisabled ? preventDefault : onClick}\n className={classNames([\n getBoxClassNames({ width }),\n exceptionallySetClassName,\n styles.baseButton,\n styles[`variant-${variant}`],\n styles[`tone-${tone}`],\n styles[`size-${size}`],\n shape === 'rounded' ? styles['shape-rounded'] : null,\n disabled ? styles.disabled : null,\n ])}\n >\n <>\n {startIcon ? (\n <Box display=\"flex\" className={styles.startIcon} aria-hidden>\n {loading && !endIcon ? <Spinner /> : startIcon}\n </Box>\n ) : null}\n\n {children ? (\n <Box\n as=\"span\"\n className={styles.label}\n overflow=\"hidden\"\n width={width === 'full' ? 'full' : undefined}\n textAlign={width === 'auto' ? 'center' : align}\n >\n {children}\n </Box>\n ) : null}\n\n {endIcon || (loading && !startIcon) ? (\n <Box display=\"flex\" className={styles.endIcon} aria-hidden>\n {loading ? <Spinner /> : endIcon}\n </Box>\n ) : null}\n </>\n </Role.button>\n )\n\n return tooltip ? <Tooltip content={tooltip}>{buttonElement}</Tooltip> : buttonElement\n})\n\ninterface IconButtonProps extends CommonButtonProps {\n /**\n * The icon to display inside the button.\n */\n icon: IconElement\n\n /**\n * The button label.\n *\n * It is used for assistive technologies, and it is also shown as a tooltip (if not tooltip is\n * provided explicitly).\n */\n 'aria-label': string\n}\n\n/**\n * A button element that displays an icon only, visually, though it is semantically labelled. It\n * also makes sure to always show a tooltip with its label. It follows the\n * [WAI-ARIA Button Pattern](https://www.w3.org/TR/wai-aria-practices/#button).\n */\nconst IconButton = React.forwardRef<HTMLButtonElement, IconButtonProps>(function IconButton(\n {\n variant,\n tone = 'normal',\n size = 'normal',\n shape = 'normal',\n type = 'button',\n disabled = false,\n loading = false,\n tooltip,\n render,\n onClick,\n exceptionallySetClassName,\n children,\n icon,\n ...props\n },\n ref,\n) {\n const isDisabled = loading || disabled\n const buttonElement = (\n <Role.button\n {...props}\n render={render}\n type={render != null ? undefined : type}\n ref={ref}\n aria-disabled={isDisabled}\n onClick={isDisabled ? preventDefault : onClick}\n className={classNames([\n exceptionallySetClassName,\n styles.baseButton,\n styles[`variant-${variant}`],\n styles[`tone-${tone}`],\n styles[`size-${size}`],\n shape === 'rounded' ? styles['shape-rounded'] : null,\n styles.iconButton,\n disabled ? styles.disabled : null,\n ])}\n >\n {(loading && <Spinner />) || icon}\n </Role.button>\n )\n\n const tooltipContent = tooltip === undefined ? props['aria-label'] : tooltip\n return tooltipContent ? (\n <Tooltip content={tooltipContent}>{buttonElement}</Tooltip>\n ) : (\n buttonElement\n )\n})\n\nexport type { ButtonProps, ButtonTone, ButtonVariant, IconButtonProps }\nexport { Button, IconButton }\n"],"names":["preventDefault","event","Button","React","forwardRef","t0","ref","$","_c","children","endIcon","exceptionallySetClassName","onClick","props","render","startIcon","t1","t2","t3","t4","t5","t6","t7","t8","tooltip","variant","_t","tone","size","shape","type","disabled","loading","width","align","_objectWithoutProperties","_excluded","undefined","isDisabled","t9","t10","t11","classNames","getBoxClassNames","styles","baseButton","t12","createElement","Box","display","className","Spinner","t13","as","label","overflow","textAlign","t14","t15","Fragment","t16","Role","button","_extends","buttonElement","t17","Tooltip","IconButton","icon","t18","t19","_excluded2","iconButton","tooltipContent"],"mappings":"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"}
|
|
@@ -1,58 +1,81 @@
|
|
|
1
|
-
import
|
|
1
|
+
import _extends from '@babel/runtime/helpers/extends';
|
|
2
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
2
3
|
import * as React from 'react';
|
|
3
|
-
import { Box } from '../box/box.js';
|
|
4
|
-
import { Text } from '../text/text.js';
|
|
5
4
|
import { CheckboxIcon } from './checkbox-icon.js';
|
|
6
5
|
import { useForkRef } from './use-fork-ref.js';
|
|
7
6
|
import modules_664a6a80 from './checkbox-field.module.css.js';
|
|
7
|
+
import { Box } from '../box/box.js';
|
|
8
|
+
import { Text } from '../text/text.js';
|
|
8
9
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
const _excluded = ["label", "icon", "disabled", "indeterminate", "defaultChecked", "onChange"];
|
|
11
|
+
const CheckboxField = /*#__PURE__*/React.forwardRef(function CheckboxField(_ref, ref) {
|
|
12
|
+
let {
|
|
13
|
+
label,
|
|
14
|
+
icon,
|
|
15
|
+
disabled,
|
|
16
|
+
indeterminate,
|
|
17
|
+
defaultChecked,
|
|
18
|
+
onChange
|
|
19
|
+
} = _ref,
|
|
20
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
21
|
+
const isControlledComponent = typeof props.checked === 'boolean';
|
|
22
|
+
if (typeof indeterminate === 'boolean' && !isControlledComponent) {
|
|
23
|
+
// eslint-disable-next-line no-console
|
|
24
|
+
console.warn('Cannot use indeterminate on an uncontrolled checkbox');
|
|
25
|
+
indeterminate = undefined;
|
|
26
|
+
}
|
|
27
|
+
if (!label && !props['aria-label'] && !props['aria-labelledby']) {
|
|
28
|
+
// eslint-disable-next-line no-console
|
|
29
|
+
console.warn('A Checkbox needs a label');
|
|
30
|
+
}
|
|
31
|
+
const [keyFocused, setKeyFocused] = React.useState(false);
|
|
32
|
+
const [checkedState, setChecked] = React.useState(props.checked ?? defaultChecked ?? false);
|
|
33
|
+
const isChecked = props.checked ?? checkedState;
|
|
34
|
+
const internalRef = React.useRef(null);
|
|
35
|
+
const combinedRef = useForkRef(internalRef, ref);
|
|
36
|
+
React.useEffect(function setIndeterminate() {
|
|
37
|
+
if (internalRef.current && typeof indeterminate === 'boolean') {
|
|
38
|
+
internalRef.current.indeterminate = indeterminate;
|
|
17
39
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
40
|
+
}, [indeterminate]);
|
|
41
|
+
return /*#__PURE__*/React.createElement(Box, {
|
|
42
|
+
as: "label",
|
|
43
|
+
display: "flex",
|
|
44
|
+
alignItems: "center",
|
|
45
|
+
className: [modules_664a6a80.container, disabled ? modules_664a6a80.disabled : null, isChecked ? modules_664a6a80.checked : null, keyFocused ? modules_664a6a80.keyFocused : null]
|
|
46
|
+
}, /*#__PURE__*/React.createElement("input", _extends({}, props, {
|
|
47
|
+
ref: combinedRef,
|
|
48
|
+
type: "checkbox",
|
|
49
|
+
"aria-checked": indeterminate ? 'mixed' : isChecked,
|
|
50
|
+
checked: isChecked,
|
|
51
|
+
disabled: disabled,
|
|
52
|
+
onChange: event => {
|
|
53
|
+
onChange?.(event);
|
|
54
|
+
if (!event.defaultPrevented) {
|
|
55
|
+
setChecked(event.currentTarget.checked);
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
onBlur: event_0 => {
|
|
59
|
+
setKeyFocused(false);
|
|
60
|
+
props?.onBlur?.(event_0);
|
|
61
|
+
},
|
|
62
|
+
onKeyUp: event_1 => {
|
|
63
|
+
setKeyFocused(true);
|
|
64
|
+
props?.onKeyUp?.(event_1);
|
|
21
65
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
isChecked ? modules_664a6a80.checked : null,
|
|
36
|
-
keyFocused ? modules_664a6a80.keyFocused : null,
|
|
37
|
-
] },
|
|
38
|
-
React.createElement("input", __assign({}, props, { ref: combinedRef, type: "checkbox", "aria-checked": indeterminate ? 'mixed' : isChecked, checked: isChecked, disabled: disabled, onChange: function (event) {
|
|
39
|
-
onChange === null || onChange === void 0 ? void 0 : onChange(event);
|
|
40
|
-
if (!event.defaultPrevented) {
|
|
41
|
-
setChecked(event.currentTarget.checked);
|
|
42
|
-
}
|
|
43
|
-
}, onBlur: function (event) {
|
|
44
|
-
var _a;
|
|
45
|
-
setKeyFocused(false);
|
|
46
|
-
(_a = props === null || props === void 0 ? void 0 : props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props, event);
|
|
47
|
-
}, onKeyUp: function (event) {
|
|
48
|
-
var _a;
|
|
49
|
-
setKeyFocused(true);
|
|
50
|
-
(_a = props === null || props === void 0 ? void 0 : props.onKeyUp) === null || _a === void 0 ? void 0 : _a.call(props, event);
|
|
51
|
-
} })),
|
|
52
|
-
React.createElement(CheckboxIcon, { checked: isChecked, disabled: disabled, indeterminate: indeterminate, "aria-hidden": true }),
|
|
53
|
-
icon ? (React.createElement(Box, { display: "flex", className: modules_664a6a80.icon, "aria-hidden": true }, icon)) : null,
|
|
54
|
-
label ? (React.createElement(Box, { display: "flex", className: modules_664a6a80.label },
|
|
55
|
-
React.createElement(Text, null, label))) : null));
|
|
66
|
+
})), /*#__PURE__*/React.createElement(CheckboxIcon, {
|
|
67
|
+
checked: isChecked,
|
|
68
|
+
disabled: disabled,
|
|
69
|
+
indeterminate: indeterminate,
|
|
70
|
+
"aria-hidden": true
|
|
71
|
+
}), icon ? /*#__PURE__*/React.createElement(Box, {
|
|
72
|
+
display: "flex",
|
|
73
|
+
className: modules_664a6a80.icon,
|
|
74
|
+
"aria-hidden": true
|
|
75
|
+
}, icon) : null, label ? /*#__PURE__*/React.createElement(Box, {
|
|
76
|
+
display: "flex",
|
|
77
|
+
className: modules_664a6a80.label
|
|
78
|
+
}, /*#__PURE__*/React.createElement(Text, null, label)) : null);
|
|
56
79
|
});
|
|
57
80
|
|
|
58
81
|
export { CheckboxField };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox-field.js","sources":["../../src/checkbox-field/checkbox-field.tsx"],"sourcesContent":[null]
|
|
1
|
+
{"version":3,"file":"checkbox-field.js","sources":["../../src/checkbox-field/checkbox-field.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Box } from '../box'\nimport { Text } from '../text'\n\nimport { CheckboxIcon } from './checkbox-icon'\nimport { useForkRef } from './use-fork-ref'\n\nimport styles from './checkbox-field.module.css'\n\ninterface CheckboxFieldProps\n extends Omit<\n JSX.IntrinsicElements['input'],\n | 'type'\n | 'className'\n | 'disabled'\n | 'aria-controls'\n | 'aria-describedby'\n | 'aria-label'\n | 'aria-labelledby'\n > {\n 'aria-checked'?: never\n /**\n *\n * Identifies the set of checkboxes controlled by the mixed checkbox for assistive technologies.\n */\n 'aria-controls'?: string\n\n /**\n * Identifies the element (or elements) that describes the checkbox for assistive technologies.\n */\n 'aria-describedby'?: string\n\n /**\n * Defines a string value that labels the current checkbox for assistive technologies.\n */\n 'aria-label'?: string\n\n /**\n * Identifies the element (or elements) that labels the current checkbox for assistive technologies.\n */\n 'aria-labelledby'?: string\n\n /**\n * Defines whether or not the checkbox is disabled.\n */\n disabled?: boolean\n\n /**\n * The label for the checkbox element.\n */\n label?: React.ReactNode\n\n /**\n * The icon that should be added to the checkbox label.\n */\n icon?: React.ReactElement | string | number\n\n /**\n * Defines whether or not the checkbox can be of a `mixed` state.\n */\n indeterminate?: boolean\n}\n\nconst CheckboxField = React.forwardRef<HTMLInputElement, CheckboxFieldProps>(function CheckboxField(\n { label, icon, disabled, indeterminate, defaultChecked, onChange, ...props },\n ref,\n) {\n const isControlledComponent = typeof props.checked === 'boolean'\n if (typeof indeterminate === 'boolean' && !isControlledComponent) {\n // eslint-disable-next-line no-console\n console.warn('Cannot use indeterminate on an uncontrolled checkbox')\n indeterminate = undefined\n }\n\n if (!label && !props['aria-label'] && !props['aria-labelledby']) {\n // eslint-disable-next-line no-console\n console.warn('A Checkbox needs a label')\n }\n\n const [keyFocused, setKeyFocused] = React.useState(false)\n const [checkedState, setChecked] = React.useState(props.checked ?? defaultChecked ?? false)\n const isChecked = props.checked ?? checkedState\n\n const internalRef = React.useRef<HTMLInputElement>(null)\n const combinedRef = useForkRef(internalRef, ref)\n React.useEffect(\n function setIndeterminate() {\n if (internalRef.current && typeof indeterminate === 'boolean') {\n internalRef.current.indeterminate = indeterminate\n }\n },\n [indeterminate],\n )\n\n return (\n <Box\n as=\"label\"\n display=\"flex\"\n alignItems=\"center\"\n className={[\n styles.container,\n disabled ? styles.disabled : null,\n isChecked ? styles.checked : null,\n keyFocused ? styles.keyFocused : null,\n ]}\n >\n <input\n {...props}\n ref={combinedRef}\n type=\"checkbox\"\n aria-checked={indeterminate ? 'mixed' : isChecked}\n checked={isChecked}\n disabled={disabled}\n onChange={(event) => {\n onChange?.(event)\n if (!event.defaultPrevented) {\n setChecked(event.currentTarget.checked)\n }\n }}\n onBlur={(event) => {\n setKeyFocused(false)\n props?.onBlur?.(event)\n }}\n onKeyUp={(event) => {\n setKeyFocused(true)\n props?.onKeyUp?.(event)\n }}\n />\n <CheckboxIcon\n checked={isChecked}\n disabled={disabled}\n indeterminate={indeterminate}\n aria-hidden\n />\n {icon ? (\n <Box display=\"flex\" className={styles.icon} aria-hidden>\n {icon}\n </Box>\n ) : null}\n {label ? (\n <Box display=\"flex\" className={styles.label}>\n <Text>{label}</Text>\n </Box>\n ) : null}\n </Box>\n )\n})\n\nexport { CheckboxField }\nexport type { CheckboxFieldProps }\n"],"names":["CheckboxField","React","forwardRef","_ref","ref","label","icon","disabled","indeterminate","defaultChecked","onChange","props","_objectWithoutProperties","_excluded","isControlledComponent","checked","console","warn","undefined","keyFocused","setKeyFocused","useState","checkedState","setChecked","isChecked","internalRef","useRef","combinedRef","useForkRef","useEffect","setIndeterminate","current","createElement","Box","as","display","alignItems","className","styles","container","_extends","type","event","defaultPrevented","currentTarget","onBlur","onKeyUp","CheckboxIcon","Text"],"mappings":"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"}
|