@doist/reactist 29.1.1 → 30.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/CHANGELOG.md +18 -0
- package/dist/reactist.cjs.development.js +6749 -1832
- 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 -19
- 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 -17
- 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 +12 -3
|
@@ -1,99 +1,389 @@
|
|
|
1
|
-
import
|
|
1
|
+
import _objectSpread from '@babel/runtime/helpers/objectSpread2';
|
|
2
|
+
import { c } from 'react-compiler-runtime';
|
|
2
3
|
import * as React from 'react';
|
|
3
|
-
import {
|
|
4
|
+
import { useId } from '../utils/common-helpers.js';
|
|
5
|
+
import modules_540a88ff from './base-field.module.css.js';
|
|
4
6
|
import { Columns, Column } from '../columns/columns.js';
|
|
7
|
+
import { Box } from '../box/box.js';
|
|
5
8
|
import { Spinner } from '../spinner/spinner.js';
|
|
6
|
-
import { Stack } from '../stack/stack.js';
|
|
7
9
|
import { Text } from '../text/text.js';
|
|
8
|
-
import {
|
|
9
|
-
import modules_540a88ff from './base-field.module.css.js';
|
|
10
|
+
import { Stack } from '../stack/stack.js';
|
|
10
11
|
|
|
11
12
|
// Define the remaining characters before the character count turns red
|
|
12
13
|
// See: https://twist.com/a/1585/ch/765851/t/6664583/c/93631846 for latest spec
|
|
13
|
-
|
|
14
|
+
const MAX_LENGTH_THRESHOLD = 0;
|
|
14
15
|
function fieldToneToTextTone(tone) {
|
|
15
|
-
|
|
16
|
+
return tone === 'error' ? 'danger' : tone === 'success' ? 'positive' : 'secondary';
|
|
16
17
|
}
|
|
17
|
-
function FieldMessage(
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
function FieldMessage(t0) {
|
|
19
|
+
const $ = c(9);
|
|
20
|
+
const {
|
|
21
|
+
id,
|
|
22
|
+
children,
|
|
23
|
+
tone
|
|
24
|
+
} = t0;
|
|
25
|
+
let t1;
|
|
26
|
+
if ($[0] !== tone) {
|
|
27
|
+
t1 = fieldToneToTextTone(tone);
|
|
28
|
+
$[0] = tone;
|
|
29
|
+
$[1] = t1;
|
|
30
|
+
} else {
|
|
31
|
+
t1 = $[1];
|
|
32
|
+
}
|
|
33
|
+
let t2;
|
|
34
|
+
if ($[2] !== tone) {
|
|
35
|
+
t2 = tone === "loading" ? /*#__PURE__*/React.createElement(Box, {
|
|
36
|
+
as: "span",
|
|
37
|
+
marginRight: "xsmall",
|
|
38
|
+
display: "inlineFlex",
|
|
39
|
+
className: modules_540a88ff.loadingIcon
|
|
40
|
+
}, /*#__PURE__*/React.createElement(Spinner, {
|
|
41
|
+
size: 16
|
|
42
|
+
})) : null;
|
|
43
|
+
$[2] = tone;
|
|
44
|
+
$[3] = t2;
|
|
45
|
+
} else {
|
|
46
|
+
t2 = $[3];
|
|
47
|
+
}
|
|
48
|
+
let t3;
|
|
49
|
+
if ($[4] !== children || $[5] !== id || $[6] !== t1 || $[7] !== t2) {
|
|
50
|
+
t3 = /*#__PURE__*/React.createElement(Text, {
|
|
51
|
+
as: "p",
|
|
52
|
+
tone: t1,
|
|
53
|
+
size: "copy",
|
|
54
|
+
id: id
|
|
55
|
+
}, t2, children);
|
|
56
|
+
$[4] = children;
|
|
57
|
+
$[5] = id;
|
|
58
|
+
$[6] = t1;
|
|
59
|
+
$[7] = t2;
|
|
60
|
+
$[8] = t3;
|
|
61
|
+
} else {
|
|
62
|
+
t3 = $[8];
|
|
63
|
+
}
|
|
64
|
+
return t3;
|
|
23
65
|
}
|
|
24
|
-
function FieldCharacterCount(
|
|
25
|
-
|
|
26
|
-
|
|
66
|
+
function FieldCharacterCount(t0) {
|
|
67
|
+
const $ = c(5);
|
|
68
|
+
const {
|
|
69
|
+
children,
|
|
70
|
+
tone
|
|
71
|
+
} = t0;
|
|
72
|
+
let t1;
|
|
73
|
+
if ($[0] !== tone) {
|
|
74
|
+
t1 = fieldToneToTextTone(tone);
|
|
75
|
+
$[0] = tone;
|
|
76
|
+
$[1] = t1;
|
|
77
|
+
} else {
|
|
78
|
+
t1 = $[1];
|
|
79
|
+
}
|
|
80
|
+
let t2;
|
|
81
|
+
if ($[2] !== children || $[3] !== t1) {
|
|
82
|
+
t2 = /*#__PURE__*/React.createElement(Text, {
|
|
83
|
+
tone: t1,
|
|
84
|
+
size: "copy"
|
|
85
|
+
}, children);
|
|
86
|
+
$[2] = children;
|
|
87
|
+
$[3] = t1;
|
|
88
|
+
$[4] = t2;
|
|
89
|
+
} else {
|
|
90
|
+
t2 = $[4];
|
|
91
|
+
}
|
|
92
|
+
return t2;
|
|
27
93
|
}
|
|
28
|
-
function validateInputLength(
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
tone: 'neutral',
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
var currentLength = String(value || '').length;
|
|
37
|
-
var isNearMaxLength = maxLength - currentLength <= MAX_LENGTH_THRESHOLD;
|
|
94
|
+
function validateInputLength({
|
|
95
|
+
value,
|
|
96
|
+
maxLength
|
|
97
|
+
}) {
|
|
98
|
+
if (!maxLength) {
|
|
38
99
|
return {
|
|
39
|
-
|
|
40
|
-
|
|
100
|
+
count: null,
|
|
101
|
+
tone: 'neutral'
|
|
41
102
|
};
|
|
103
|
+
}
|
|
104
|
+
const currentLength = String(value || '').length;
|
|
105
|
+
const isNearMaxLength = maxLength - currentLength <= MAX_LENGTH_THRESHOLD;
|
|
106
|
+
return {
|
|
107
|
+
count: `${currentLength}/${maxLength}`,
|
|
108
|
+
tone: isNearMaxLength ? 'error' : 'neutral'
|
|
109
|
+
};
|
|
42
110
|
}
|
|
111
|
+
|
|
112
|
+
//
|
|
113
|
+
// BaseField
|
|
114
|
+
//
|
|
115
|
+
|
|
43
116
|
/**
|
|
44
117
|
* BaseField is a base component that provides a consistent structure for form fields.
|
|
45
118
|
*/
|
|
46
|
-
function BaseField(
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
119
|
+
function BaseField(t0) {
|
|
120
|
+
const $ = c(74);
|
|
121
|
+
const {
|
|
122
|
+
variant: t1,
|
|
123
|
+
label,
|
|
124
|
+
value,
|
|
125
|
+
auxiliaryLabel,
|
|
126
|
+
message,
|
|
127
|
+
tone: t2,
|
|
128
|
+
className,
|
|
129
|
+
children,
|
|
130
|
+
maxWidth,
|
|
131
|
+
maxLength,
|
|
132
|
+
hidden,
|
|
133
|
+
"aria-describedby": originalAriaDescribedBy,
|
|
134
|
+
id: originalId,
|
|
135
|
+
characterCountPosition: t3,
|
|
136
|
+
endSlot,
|
|
137
|
+
endSlotPosition: t4
|
|
138
|
+
} = t0;
|
|
139
|
+
const variant = t1 === undefined ? "default" : t1;
|
|
140
|
+
const tone = t2 === undefined ? "neutral" : t2;
|
|
141
|
+
const characterCountPosition = t3 === undefined ? "below" : t3;
|
|
142
|
+
const endSlotPosition = t4 === undefined ? "bottom" : t4;
|
|
143
|
+
const id = useId(originalId);
|
|
144
|
+
const messageId = useId();
|
|
145
|
+
let t5;
|
|
146
|
+
if ($[0] !== maxLength || $[1] !== value) {
|
|
147
|
+
t5 = validateInputLength({
|
|
148
|
+
value,
|
|
149
|
+
maxLength
|
|
150
|
+
});
|
|
151
|
+
$[0] = maxLength;
|
|
152
|
+
$[1] = value;
|
|
153
|
+
$[2] = t5;
|
|
154
|
+
} else {
|
|
155
|
+
t5 = $[2];
|
|
156
|
+
}
|
|
157
|
+
const inputLength = t5;
|
|
158
|
+
const [previousValue, setPreviousValue] = React.useState(value);
|
|
159
|
+
const [previousMaxLength, setPreviousMaxLength] = React.useState(maxLength);
|
|
160
|
+
const [characterCount, setCharacterCount] = React.useState(inputLength.count);
|
|
161
|
+
const [characterCountTone, setCharacterCountTone] = React.useState(inputLength.tone);
|
|
162
|
+
const ariaDescribedBy = originalAriaDescribedBy ?? (message ? messageId : null);
|
|
163
|
+
const renderCharacterCountBelow = characterCountPosition === "below" && characterCount !== null;
|
|
164
|
+
const renderCharacterCountInline = characterCountPosition === "inline" && characterCount !== null;
|
|
165
|
+
let t6;
|
|
166
|
+
if ($[3] !== characterCount || $[4] !== characterCountTone) {
|
|
167
|
+
t6 = function renderCharacterCount() {
|
|
168
|
+
return /*#__PURE__*/React.createElement(FieldCharacterCount, {
|
|
169
|
+
tone: characterCountTone
|
|
170
|
+
}, characterCount);
|
|
171
|
+
};
|
|
172
|
+
$[3] = characterCount;
|
|
173
|
+
$[4] = characterCountTone;
|
|
174
|
+
$[5] = t6;
|
|
175
|
+
} else {
|
|
176
|
+
t6 = $[5];
|
|
177
|
+
}
|
|
178
|
+
const renderCharacterCount = t6;
|
|
179
|
+
let T0;
|
|
180
|
+
let T1;
|
|
181
|
+
let T2;
|
|
182
|
+
let t10;
|
|
183
|
+
let t11;
|
|
184
|
+
let t12;
|
|
185
|
+
let t13;
|
|
186
|
+
let t14;
|
|
187
|
+
let t15;
|
|
188
|
+
let t16;
|
|
189
|
+
let t7;
|
|
190
|
+
let t8;
|
|
191
|
+
let t9;
|
|
192
|
+
if ($[6] !== ariaDescribedBy || $[7] !== auxiliaryLabel || $[8] !== children || $[9] !== className || $[10] !== hidden || $[11] !== id || $[12] !== inputLength.count || $[13] !== inputLength.tone || $[14] !== label || $[15] !== maxLength || $[16] !== maxWidth || $[17] !== previousMaxLength || $[18] !== previousValue || $[19] !== renderCharacterCount || $[20] !== renderCharacterCountInline || $[21] !== tone || $[22] !== value || $[23] !== variant) {
|
|
193
|
+
const childrenProps = _objectSpread(_objectSpread({
|
|
194
|
+
id,
|
|
195
|
+
value
|
|
196
|
+
}, ariaDescribedBy ? {
|
|
197
|
+
"aria-describedby": ariaDescribedBy
|
|
198
|
+
} : {}), {}, {
|
|
199
|
+
"aria-invalid": tone === "error" ? true : undefined,
|
|
200
|
+
onChange(event) {
|
|
201
|
+
if (!maxLength) {
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
const inputLength_0 = validateInputLength({
|
|
205
|
+
value: event.currentTarget.value,
|
|
206
|
+
maxLength
|
|
207
|
+
});
|
|
208
|
+
setCharacterCount(inputLength_0.count);
|
|
209
|
+
setCharacterCountTone(inputLength_0.tone);
|
|
210
|
+
},
|
|
211
|
+
characterCountElement: renderCharacterCountInline ? renderCharacterCount() : null
|
|
212
|
+
});
|
|
74
213
|
if (value !== previousValue || maxLength !== previousMaxLength) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
214
|
+
setPreviousValue(value);
|
|
215
|
+
setPreviousMaxLength(maxLength);
|
|
216
|
+
setCharacterCount(inputLength.count);
|
|
217
|
+
setCharacterCountTone(inputLength.tone);
|
|
218
|
+
}
|
|
219
|
+
T2 = Stack;
|
|
220
|
+
t15 = "xsmall";
|
|
221
|
+
t16 = hidden;
|
|
222
|
+
T1 = Box;
|
|
223
|
+
t10 = "flex";
|
|
224
|
+
t11 = "row";
|
|
225
|
+
const t17 = tone === "error" ? modules_540a88ff.error : null;
|
|
226
|
+
const t18 = variant === "bordered" ? modules_540a88ff.bordered : null;
|
|
227
|
+
if ($[37] !== className || $[38] !== t17 || $[39] !== t18) {
|
|
228
|
+
t12 = [className, modules_540a88ff.container, t17, t18];
|
|
229
|
+
$[37] = className;
|
|
230
|
+
$[38] = t17;
|
|
231
|
+
$[39] = t18;
|
|
232
|
+
$[40] = t12;
|
|
233
|
+
} else {
|
|
234
|
+
t12 = $[40];
|
|
235
|
+
}
|
|
236
|
+
t13 = maxWidth;
|
|
237
|
+
t14 = "center";
|
|
238
|
+
T0 = Box;
|
|
239
|
+
t7 = 1;
|
|
240
|
+
if ($[41] !== auxiliaryLabel || $[42] !== id || $[43] !== label || $[44] !== variant) {
|
|
241
|
+
t8 = label || auxiliaryLabel ? /*#__PURE__*/React.createElement(Box, {
|
|
242
|
+
as: "span",
|
|
243
|
+
display: "flex",
|
|
244
|
+
justifyContent: "spaceBetween",
|
|
245
|
+
alignItems: "flexEnd"
|
|
246
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
247
|
+
size: variant === "bordered" ? "caption" : "body",
|
|
248
|
+
as: "label",
|
|
249
|
+
htmlFor: id
|
|
250
|
+
}, label ? /*#__PURE__*/React.createElement("span", {
|
|
251
|
+
className: modules_540a88ff.primaryLabel
|
|
252
|
+
}, label) : null), auxiliaryLabel ? /*#__PURE__*/React.createElement(Box, {
|
|
253
|
+
className: modules_540a88ff.auxiliaryLabel,
|
|
254
|
+
paddingLeft: "small"
|
|
255
|
+
}, auxiliaryLabel) : null) : null;
|
|
256
|
+
$[41] = auxiliaryLabel;
|
|
257
|
+
$[42] = id;
|
|
258
|
+
$[43] = label;
|
|
259
|
+
$[44] = variant;
|
|
260
|
+
$[45] = t8;
|
|
261
|
+
} else {
|
|
262
|
+
t8 = $[45];
|
|
79
263
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
264
|
+
t9 = children(childrenProps);
|
|
265
|
+
$[6] = ariaDescribedBy;
|
|
266
|
+
$[7] = auxiliaryLabel;
|
|
267
|
+
$[8] = children;
|
|
268
|
+
$[9] = className;
|
|
269
|
+
$[10] = hidden;
|
|
270
|
+
$[11] = id;
|
|
271
|
+
$[12] = inputLength.count;
|
|
272
|
+
$[13] = inputLength.tone;
|
|
273
|
+
$[14] = label;
|
|
274
|
+
$[15] = maxLength;
|
|
275
|
+
$[16] = maxWidth;
|
|
276
|
+
$[17] = previousMaxLength;
|
|
277
|
+
$[18] = previousValue;
|
|
278
|
+
$[19] = renderCharacterCount;
|
|
279
|
+
$[20] = renderCharacterCountInline;
|
|
280
|
+
$[21] = tone;
|
|
281
|
+
$[22] = value;
|
|
282
|
+
$[23] = variant;
|
|
283
|
+
$[24] = T0;
|
|
284
|
+
$[25] = T1;
|
|
285
|
+
$[26] = T2;
|
|
286
|
+
$[27] = t10;
|
|
287
|
+
$[28] = t11;
|
|
288
|
+
$[29] = t12;
|
|
289
|
+
$[30] = t13;
|
|
290
|
+
$[31] = t14;
|
|
291
|
+
$[32] = t15;
|
|
292
|
+
$[33] = t16;
|
|
293
|
+
$[34] = t7;
|
|
294
|
+
$[35] = t8;
|
|
295
|
+
$[36] = t9;
|
|
296
|
+
} else {
|
|
297
|
+
T0 = $[24];
|
|
298
|
+
T1 = $[25];
|
|
299
|
+
T2 = $[26];
|
|
300
|
+
t10 = $[27];
|
|
301
|
+
t11 = $[28];
|
|
302
|
+
t12 = $[29];
|
|
303
|
+
t13 = $[30];
|
|
304
|
+
t14 = $[31];
|
|
305
|
+
t15 = $[32];
|
|
306
|
+
t16 = $[33];
|
|
307
|
+
t7 = $[34];
|
|
308
|
+
t8 = $[35];
|
|
309
|
+
t9 = $[36];
|
|
310
|
+
}
|
|
311
|
+
let t17;
|
|
312
|
+
if ($[46] !== T0 || $[47] !== t7 || $[48] !== t8 || $[49] !== t9) {
|
|
313
|
+
t17 = /*#__PURE__*/React.createElement(T0, {
|
|
314
|
+
flexGrow: t7
|
|
315
|
+
}, t8, t9);
|
|
316
|
+
$[46] = T0;
|
|
317
|
+
$[47] = t7;
|
|
318
|
+
$[48] = t8;
|
|
319
|
+
$[49] = t9;
|
|
320
|
+
$[50] = t17;
|
|
321
|
+
} else {
|
|
322
|
+
t17 = $[50];
|
|
323
|
+
}
|
|
324
|
+
const t18 = endSlot && endSlotPosition === "fullHeight" ? endSlot : null;
|
|
325
|
+
let t19;
|
|
326
|
+
if ($[51] !== T1 || $[52] !== t10 || $[53] !== t11 || $[54] !== t12 || $[55] !== t13 || $[56] !== t14 || $[57] !== t17 || $[58] !== t18) {
|
|
327
|
+
t19 = /*#__PURE__*/React.createElement(T1, {
|
|
328
|
+
display: t10,
|
|
329
|
+
flexDirection: t11,
|
|
330
|
+
className: t12,
|
|
331
|
+
maxWidth: t13,
|
|
332
|
+
alignItems: t14
|
|
333
|
+
}, t17, t18);
|
|
334
|
+
$[51] = T1;
|
|
335
|
+
$[52] = t10;
|
|
336
|
+
$[53] = t11;
|
|
337
|
+
$[54] = t12;
|
|
338
|
+
$[55] = t13;
|
|
339
|
+
$[56] = t14;
|
|
340
|
+
$[57] = t17;
|
|
341
|
+
$[58] = t18;
|
|
342
|
+
$[59] = t19;
|
|
343
|
+
} else {
|
|
344
|
+
t19 = $[59];
|
|
345
|
+
}
|
|
346
|
+
let t20;
|
|
347
|
+
if ($[60] !== characterCountPosition || $[61] !== maxWidth || $[62] !== message || $[63] !== messageId || $[64] !== renderCharacterCount || $[65] !== renderCharacterCountBelow || $[66] !== tone) {
|
|
348
|
+
t20 = message || renderCharacterCountBelow ? /*#__PURE__*/React.createElement(Columns, {
|
|
349
|
+
align: "right",
|
|
350
|
+
space: "small",
|
|
351
|
+
maxWidth: maxWidth
|
|
352
|
+
}, message ? /*#__PURE__*/React.createElement(Column, {
|
|
353
|
+
width: "auto"
|
|
354
|
+
}, /*#__PURE__*/React.createElement(FieldMessage, {
|
|
355
|
+
id: messageId,
|
|
356
|
+
tone: tone
|
|
357
|
+
}, message)) : null, characterCountPosition === "below" ? /*#__PURE__*/React.createElement(Column, {
|
|
358
|
+
width: "content"
|
|
359
|
+
}, renderCharacterCount()) : null) : null;
|
|
360
|
+
$[60] = characterCountPosition;
|
|
361
|
+
$[61] = maxWidth;
|
|
362
|
+
$[62] = message;
|
|
363
|
+
$[63] = messageId;
|
|
364
|
+
$[64] = renderCharacterCount;
|
|
365
|
+
$[65] = renderCharacterCountBelow;
|
|
366
|
+
$[66] = tone;
|
|
367
|
+
$[67] = t20;
|
|
368
|
+
} else {
|
|
369
|
+
t20 = $[67];
|
|
370
|
+
}
|
|
371
|
+
let t21;
|
|
372
|
+
if ($[68] !== T2 || $[69] !== t15 || $[70] !== t16 || $[71] !== t19 || $[72] !== t20) {
|
|
373
|
+
t21 = /*#__PURE__*/React.createElement(T2, {
|
|
374
|
+
space: t15,
|
|
375
|
+
hidden: t16
|
|
376
|
+
}, t19, t20);
|
|
377
|
+
$[68] = T2;
|
|
378
|
+
$[69] = t15;
|
|
379
|
+
$[70] = t16;
|
|
380
|
+
$[71] = t19;
|
|
381
|
+
$[72] = t20;
|
|
382
|
+
$[73] = t21;
|
|
383
|
+
} else {
|
|
384
|
+
t21 = $[73];
|
|
385
|
+
}
|
|
386
|
+
return t21;
|
|
97
387
|
}
|
|
98
388
|
|
|
99
389
|
export { BaseField, FieldMessage };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-field.js","sources":["../../src/base-field/base-field.tsx"],"sourcesContent":[null],"names":["styles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base-field.js","sources":["../../src/base-field/base-field.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Box } from '../box'\nimport { Column, Columns } from '../columns'\nimport { Spinner } from '../spinner'\nimport { Stack } from '../stack'\nimport { Text } from '../text'\nimport { useId } from '../utils/common-helpers'\n\nimport styles from './base-field.module.css'\n\nimport type { BoxProps } from '../box'\nimport type { WithEnhancedClassName } from '../utils/common-types'\n\n// Define the remaining characters before the character count turns red\n// See: https://twist.com/a/1585/ch/765851/t/6664583/c/93631846 for latest spec\nconst MAX_LENGTH_THRESHOLD = 0\n\ntype FieldTone = 'neutral' | 'success' | 'error' | 'loading'\n\ntype FieldMessageProps = {\n id: string\n children: React.ReactNode\n tone: FieldTone\n}\n\nfunction fieldToneToTextTone(tone: FieldTone) {\n return tone === 'error' ? 'danger' : tone === 'success' ? 'positive' : 'secondary'\n}\n\nfunction FieldMessage({ id, children, tone }: FieldMessageProps) {\n return (\n <Text as=\"p\" tone={fieldToneToTextTone(tone)} size=\"copy\" id={id}>\n {tone === 'loading' ? (\n <Box\n as=\"span\"\n marginRight=\"xsmall\"\n display=\"inlineFlex\"\n className={styles.loadingIcon}\n >\n <Spinner size={16} />\n </Box>\n ) : null}\n {children}\n </Text>\n )\n}\n\ntype FieldCharacterCountProps = {\n children: React.ReactNode\n tone: FieldTone\n}\n\nfunction FieldCharacterCount({ children, tone }: FieldCharacterCountProps) {\n return (\n <Text tone={fieldToneToTextTone(tone)} size=\"copy\">\n {children}\n </Text>\n )\n}\n\ntype ValidateInputLengthProps = {\n value?: React.InputHTMLAttributes<unknown>['value']\n maxLength?: number\n}\n\ntype ValidateInputLengthResult = {\n count: string | null\n tone: FieldTone\n}\n\nfunction validateInputLength({\n value,\n maxLength,\n}: ValidateInputLengthProps): ValidateInputLengthResult {\n if (!maxLength) {\n return {\n count: null,\n tone: 'neutral',\n }\n }\n\n const currentLength = String(value || '').length\n const isNearMaxLength = maxLength - currentLength <= MAX_LENGTH_THRESHOLD\n\n return {\n count: `${currentLength}/${maxLength}`,\n tone: isNearMaxLength ? 'error' : 'neutral',\n }\n}\n\n//\n// BaseField\n//\n\ntype ChildrenRenderProps = {\n id: string\n value?: React.InputHTMLAttributes<unknown>['value']\n 'aria-describedby'?: string\n 'aria-invalid'?: true\n onChange?: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>\n characterCountElement?: React.ReactNode | null\n}\n\ntype HtmlInputProps<T extends HTMLElement> = React.DetailedHTMLProps<\n React.InputHTMLAttributes<T>,\n T\n>\n\ntype BaseFieldVariant = 'default' | 'bordered'\ntype BaseFieldVariantProps = {\n /**\n * Provides alternative visual layouts or modes that the field can be rendered in.\n *\n * Namely, there are two variants supported:\n *\n * - the default one\n * - a \"bordered\" variant, where the border of the field surrounds also the labels, instead\n * of just surrounding the actual field element\n *\n * In both cases, the message and description texts for the field lie outside the bordered\n * area.\n */\n variant?: BaseFieldVariant\n}\n\nexport type BaseFieldProps = WithEnhancedClassName &\n Pick<HtmlInputProps<HTMLInputElement>, 'id' | 'hidden' | 'maxLength' | 'aria-describedby'> & {\n /**\n * The main label for this field element.\n *\n * This prop is not optional. Consumers of field components must be explicit about not\n * wanting a label by passing `label=\"\"` or `label={null}`. In those situations, consumers\n * should make sure that fields are properly labelled semantically by other means (e.g using\n * `aria-labelledby`, or rendering a `<label />` element referencing the field by id).\n *\n * Avoid providing interactive elements in the label. Prefer `auxiliaryLabel` for that.\n *\n * @see BaseFieldProps['auxiliaryLabel']\n */\n label: React.ReactNode\n\n /**\n * The initial value for this field element.\n *\n * This prop is used to calculate the character count for the initial value, and is then\n * passed to the underlying child element.\n */\n value?: React.InputHTMLAttributes<unknown>['value']\n\n /**\n * An optional extra element to be placed to the right of the main label.\n *\n * This extra element is not included in the accessible name of the field element. Its only\n * purpose is either visual, or functional (if you include interactive elements in it).\n *\n * @see BaseFieldProps['label']\n *\n * @deprecated The usage of this element is discouraged given that it was removed from the\n * latest form field spec revision.\n */\n auxiliaryLabel?: React.ReactNode\n\n /**\n * A message associated with the field. It is rendered below the field, and with an\n * appearance that conveys the tone of the field (e.g. coloured red for errors, green for\n * success, etc).\n *\n * The message element is associated to the field via the `aria-describedby` attribute.\n *\n * In the future, when `aria-errormessage` gets better user agent support, we should use it\n * to associate the filed with a message when tone is `\"error\"`.\n *\n * @see BaseFieldProps['tone']\n * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-errormessage\n * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-invalid\n */\n message?: React.ReactNode\n\n /**\n * The tone with which the message, if any, is presented.\n *\n * If the tone is `\"error\"`, the field border turns red, and the message, if any, is also\n * red.\n *\n * When the tone is `\"loading\"`, it is recommended that you also disable the field. However,\n * this is not enforced by the component. It is only a recommendation.\n *\n * @see BaseFieldProps['message']\n * @see BaseFieldProps['hint']\n */\n tone?: FieldTone\n\n /**\n * The maximum width that the input field can expand to.\n */\n maxWidth?: BoxProps['maxWidth']\n\n /**\n * The maximum number of characters that the input field can accept.\n * When this limit is reached, the input field will not accept any more characters.\n * The counter element will turn red when the number of characters is within 10 of the maximum limit.\n */\n maxLength?: number\n\n /**\n * Used internally by components composed using `BaseField`. It is not exposed as part of\n * the public props of such components.\n */\n children: (props: ChildrenRenderProps) => React.ReactNode\n\n /**\n * The position of the character count element.\n * It can be shown below the field or inline with the field.\n *\n * @default 'below'\n */\n characterCountPosition?: 'below' | 'inline' | 'hidden'\n } & (\n | {\n supportsStartAndEndSlots?: false\n endSlot?: never\n endSlotPosition?: never\n }\n | {\n supportsStartAndEndSlots: true\n endSlot?: React.ReactElement | string | number\n /**\n * This is solely for `bordered` variants of TextField. When set to `bottom` (the default),\n * the endSlot will be placed inline with the input field. When set to `fullHeight`, the endSlot\n * will be placed to the side of both the input field and the label.\n */\n endSlotPosition?: 'bottom' | 'fullHeight'\n }\n )\n\ntype FieldComponentProps<T extends HTMLElement> = Omit<\n BaseFieldProps,\n 'children' | 'className' | 'fieldRef' | 'variant'\n> &\n Omit<HtmlInputProps<T>, 'className' | 'style'>\n\n/**\n * BaseField is a base component that provides a consistent structure for form fields.\n */\nfunction BaseField({\n variant = 'default',\n label,\n value,\n auxiliaryLabel,\n message,\n tone = 'neutral',\n className,\n children,\n maxWidth,\n maxLength,\n hidden,\n 'aria-describedby': originalAriaDescribedBy,\n id: originalId,\n characterCountPosition = 'below',\n endSlot,\n endSlotPosition = 'bottom',\n}: BaseFieldProps & BaseFieldVariantProps & WithEnhancedClassName) {\n const id = useId(originalId)\n const messageId = useId()\n\n const inputLength = validateInputLength({ value, maxLength })\n\n const [previousValue, setPreviousValue] = React.useState<BaseFieldProps['value']>(value)\n const [previousMaxLength, setPreviousMaxLength] =\n React.useState<BaseFieldProps['maxLength']>(maxLength)\n const [characterCount, setCharacterCount] = React.useState<string | null>(inputLength.count)\n const [characterCountTone, setCharacterCountTone] = React.useState<FieldTone>(inputLength.tone)\n\n const ariaDescribedBy = originalAriaDescribedBy ?? (message ? messageId : null)\n\n const renderCharacterCountBelow = characterCountPosition === 'below' && characterCount !== null\n const renderCharacterCountInline =\n characterCountPosition === 'inline' && characterCount !== null\n\n function renderCharacterCount() {\n return <FieldCharacterCount tone={characterCountTone}>{characterCount}</FieldCharacterCount>\n }\n\n const childrenProps: ChildrenRenderProps = {\n id,\n value,\n ...(ariaDescribedBy ? { 'aria-describedby': ariaDescribedBy } : {}),\n 'aria-invalid': tone === 'error' ? true : undefined,\n onChange(event) {\n if (!maxLength) {\n return\n }\n\n const inputLength = validateInputLength({\n value: event.currentTarget.value,\n maxLength,\n })\n\n setCharacterCount(inputLength.count)\n setCharacterCountTone(inputLength.tone)\n },\n // If the character count is inline, we pass it as a prop to the children element so it can be rendered inline\n characterCountElement: renderCharacterCountInline ? renderCharacterCount() : null,\n }\n\n if (value !== previousValue || maxLength !== previousMaxLength) {\n setPreviousValue(value)\n setPreviousMaxLength(maxLength)\n setCharacterCount(inputLength.count)\n setCharacterCountTone(inputLength.tone)\n }\n\n return (\n <Stack space=\"xsmall\" hidden={hidden}>\n <Box\n display=\"flex\"\n flexDirection=\"row\"\n className={[\n className,\n styles.container,\n tone === 'error' ? styles.error : null,\n variant === 'bordered' ? styles.bordered : null,\n ]}\n maxWidth={maxWidth}\n alignItems=\"center\"\n >\n <Box flexGrow={1}>\n {label || auxiliaryLabel ? (\n <Box\n as=\"span\"\n display=\"flex\"\n justifyContent=\"spaceBetween\"\n alignItems=\"flexEnd\"\n >\n <Text\n size={variant === 'bordered' ? 'caption' : 'body'}\n as=\"label\"\n htmlFor={id}\n >\n {label ? (\n <span className={styles.primaryLabel}>{label}</span>\n ) : null}\n </Text>\n {auxiliaryLabel ? (\n <Box className={styles.auxiliaryLabel} paddingLeft=\"small\">\n {auxiliaryLabel}\n </Box>\n ) : null}\n </Box>\n ) : null}\n {children(childrenProps)}\n </Box>\n {endSlot && endSlotPosition === 'fullHeight' ? endSlot : null}\n </Box>\n\n {message || renderCharacterCountBelow ? (\n <Columns align=\"right\" space=\"small\" maxWidth={maxWidth}>\n {message ? (\n <Column width=\"auto\">\n <FieldMessage id={messageId} tone={tone}>\n {message}\n </FieldMessage>\n </Column>\n ) : null}\n\n {/* If the character count is below the field, we render it, if it's inline,\n we pass it as a prop to the children element so it can be rendered inline */}\n {characterCountPosition === 'below' ? (\n <Column width=\"content\">{renderCharacterCount()}</Column>\n ) : null}\n </Columns>\n ) : null}\n </Stack>\n )\n}\n\nexport { BaseField, FieldMessage }\nexport type { BaseFieldVariant, BaseFieldVariantProps, FieldComponentProps }\n"],"names":["MAX_LENGTH_THRESHOLD","fieldToneToTextTone","tone","FieldMessage","t0","$","_c","id","children","t1","t2","React","createElement","Box","as","marginRight","display","className","styles","loadingIcon","Spinner","size","t3","Text","FieldCharacterCount","validateInputLength","value","maxLength","count","currentLength","String","length","isNearMaxLength","BaseField","variant","label","auxiliaryLabel","message","maxWidth","hidden","originalAriaDescribedBy","originalId","characterCountPosition","endSlot","endSlotPosition","t4","undefined","useId","messageId","t5","inputLength","previousValue","setPreviousValue","useState","previousMaxLength","setPreviousMaxLength","characterCount","setCharacterCount","characterCountTone","setCharacterCountTone","ariaDescribedBy","renderCharacterCountBelow","renderCharacterCountInline","t6","renderCharacterCount","T0","T1","T2","t10","t11","t12","t13","t14","t15","t16","t7","t8","t9","childrenProps","_objectSpread","onChange","event","inputLength_0","currentTarget","characterCountElement","Stack","t17","error","t18","bordered","container","justifyContent","alignItems","primaryLabel","paddingLeft","flexGrow","t19","flexDirection","t20","Columns","align","space","Column","width","t21"],"mappings":"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"}
|