@igne-agency/react-web-ui 0.4.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base.css +3 -0
- package/dist/components/accordion/accordion.css +21 -21
- package/dist/components/accordion/accordion.d.ts +17 -4
- package/dist/components/accordion/accordion.js +83 -36
- package/dist/components/accordion/accordion.module.js +6 -6
- package/dist/components/attachment-tile/attachment-preview.d.ts +56 -13
- package/dist/components/attachment-tile/attachment-preview.js +388 -119
- package/dist/components/attachment-tile/attachment-tile.css +31 -25
- package/dist/components/attachment-tile/attachment-tile.d.ts +32 -10
- package/dist/components/attachment-tile/attachment-tile.js +160 -43
- package/dist/components/attachment-tile/attachment-tile.module.js +8 -8
- package/dist/components/attachment-tile/index.d.ts +1 -1
- package/dist/components/avatar/avatar.css +9 -9
- package/dist/components/avatar/avatar.d.ts +50 -5
- package/dist/components/avatar/avatar.js +178 -64
- package/dist/components/avatar/avatar.module.js +3 -3
- package/dist/components/avatar-group/avatar-group-context.d.ts +2 -4
- package/dist/components/avatar-group/avatar-group-context.js +2 -2
- package/dist/components/avatar-group/avatar-group.css +26 -20
- package/dist/components/avatar-group/avatar-group.d.ts +85 -27
- package/dist/components/avatar-group/avatar-group.js +400 -246
- package/dist/components/avatar-group/avatar-group.module.js +8 -8
- package/dist/components/breadcrumbs/breadcrumbs.css +12 -12
- package/dist/components/breadcrumbs/breadcrumbs.d.ts +69 -23
- package/dist/components/breadcrumbs/breadcrumbs.js +299 -248
- package/dist/components/breadcrumbs/breadcrumbs.module.js +8 -8
- package/dist/components/button/button.css +29 -31
- package/dist/components/button/button.d.ts +20 -16
- package/dist/components/button/button.js +140 -145
- package/dist/components/button/button.module.js +1 -1
- package/dist/components/button/index.js +1 -1
- package/dist/components/checkbox-field/checkbox-field.js +63 -49
- package/dist/components/checkbox-field/checkbox.css +105 -56
- package/dist/components/checkbox-field/checkbox.d.ts +3 -2
- package/dist/components/checkbox-field/checkbox.js +12 -9
- package/dist/components/checkbox-field/checkbox.module.js +4 -4
- package/dist/components/checkbox-group-field/checkbox-group-field.js +78 -72
- package/dist/components/checkbox-group-field/checkbox-group.css +14 -10
- package/dist/components/checkbox-group-field/checkbox-group.d.ts +2 -2
- package/dist/components/checkbox-group-field/checkbox-group.js +2 -2
- package/dist/components/checkbox-group-field/checkbox-group.module.js +2 -2
- package/dist/components/collapsible/collapsible.css +20 -20
- package/dist/components/collapsible/collapsible.d.ts +17 -4
- package/dist/components/collapsible/collapsible.js +83 -36
- package/dist/components/collapsible/collapsible.module.js +5 -5
- package/dist/components/combobox-field/combobox-field.js +206 -158
- package/dist/components/combobox-field/combobox.css +492 -277
- package/dist/components/combobox-field/combobox.d.ts +148 -39
- package/dist/components/combobox-field/combobox.js +506 -206
- package/dist/components/combobox-field/combobox.module.js +21 -21
- package/dist/components/combobox-field/value-state-view.css +5 -5
- package/dist/components/combobox-field/value-state-view.module.js +4 -4
- package/dist/components/composer/composer-attachments.d.ts +30 -11
- package/dist/components/composer/composer-attachments.js +45 -40
- package/dist/components/composer/composer-editor.css +40 -35
- package/dist/components/composer/composer-editor.d.ts +14 -4
- package/dist/components/composer/composer-editor.js +134 -44
- package/dist/components/composer/composer-editor.module.js +5 -5
- package/dist/components/composer/composer.css +22 -22
- package/dist/components/composer/composer.d.ts +13 -2
- package/dist/components/composer/composer.js +78 -63
- package/dist/components/composer/composer.module.js +5 -5
- package/dist/components/composer/index.d.ts +2 -2
- package/dist/components/composer/mention-text.css +5 -5
- package/dist/components/composer/mention-text.module.js +1 -1
- package/dist/components/confirm-dialog/confirm-dialog.css +29 -29
- package/dist/components/confirm-dialog/confirm-dialog.d.ts +57 -3
- package/dist/components/confirm-dialog/confirm-dialog.js +266 -108
- package/dist/components/confirm-dialog/confirm-dialog.module.js +5 -5
- package/dist/components/conversation/conversation.css +52 -52
- package/dist/components/conversation/conversation.d.ts +43 -18
- package/dist/components/conversation/conversation.js +120 -78
- package/dist/components/conversation/conversation.module.js +15 -15
- package/dist/components/date-field/date-field.d.ts +1 -1
- package/dist/components/date-field/date-field.js +202 -100
- package/dist/components/date-field/date-input.d.ts +73 -37
- package/dist/components/date-field/date-input.js +72 -45
- package/dist/components/date-field/index.d.ts +1 -1
- package/dist/components/date-range-field/date-range-field.d.ts +1 -1
- package/dist/components/date-range-field/date-range-field.js +219 -107
- package/dist/components/date-range-field/date-range-input.d.ts +84 -40
- package/dist/components/date-range-field/date-range-input.js +83 -48
- package/dist/components/dialog/dialog.css +32 -32
- package/dist/components/dialog/dialog.d.ts +8 -7
- package/dist/components/dialog/dialog.js +8 -26
- package/dist/components/dialog/dialog.module.js +6 -6
- package/dist/components/divider/divider.css +6 -6
- package/dist/components/divider/divider.d.ts +36 -2
- package/dist/components/divider/divider.js +195 -29
- package/dist/components/divider/divider.module.js +3 -3
- package/dist/components/drawer/drawer.css +55 -56
- package/dist/components/drawer/drawer.d.ts +8 -7
- package/dist/components/drawer/drawer.js +8 -26
- package/dist/components/drawer/drawer.module.js +6 -6
- package/dist/components/field/field.css +34 -24
- package/dist/components/field/field.d.ts +60 -37
- package/dist/components/field/field.js +242 -157
- package/dist/components/field/field.module.js +12 -10
- package/dist/components/field/input-parts.d.ts +11 -13
- package/dist/components/field/input-parts.js +23 -42
- package/dist/components/field-placeholder/field-placeholder.css +6 -6
- package/dist/components/field-placeholder/field-placeholder.module.js +4 -4
- package/dist/components/fieldset/field-group.d.ts +1 -1
- package/dist/components/fieldset/field-group.js +48 -42
- package/dist/components/fieldset/fieldset-root.d.ts +1 -1
- package/dist/components/fieldset/fieldset-root.js +19 -17
- package/dist/components/fieldset/fieldset.d.ts +2 -2
- package/dist/components/fieldset/fieldset.js +2 -2
- package/dist/components/file-field/file-field.css +126 -60
- package/dist/components/file-field/file-field.js +201 -109
- package/dist/components/file-field/file-field.module.js +4 -4
- package/dist/components/file-field/file-input.d.ts +66 -40
- package/dist/components/file-field/file-input.js +188 -132
- package/dist/components/filter-bar/filter-bar.css +8 -8
- package/dist/components/filter-bar/filter-bar.d.ts +12 -3
- package/dist/components/filter-bar/filter-bar.js +23 -25
- package/dist/components/filter-bar/filter-bar.module.js +5 -5
- package/dist/components/form/form.d.ts +19 -7
- package/dist/components/form/form.js +80 -29
- package/dist/components/icon/icon.css +2 -2
- package/dist/components/icon/icon.module.js +1 -1
- package/dist/components/link/link.css +6 -5
- package/dist/components/link/link.module.js +1 -1
- package/dist/components/menu/menu.css +52 -47
- package/dist/components/menu/menu.d.ts +32 -25
- package/dist/components/menu/menu.js +75 -124
- package/dist/components/menu/menu.module.js +8 -8
- package/dist/components/nav/nav-context.d.ts +1 -1
- package/dist/components/nav/nav-item-view.d.ts +10 -13
- package/dist/components/nav/nav-item-view.js +42 -54
- package/dist/components/nav/nav.css +150 -119
- package/dist/components/nav/nav.d.ts +61 -17
- package/dist/components/nav/nav.js +271 -176
- package/dist/components/nav/nav.module.js +17 -15
- package/dist/components/number-field/number-field.css +153 -64
- package/dist/components/number-field/number-field.d.ts +2 -2
- package/dist/components/number-field/number-field.js +112 -91
- package/dist/components/number-field/number-field.module.js +6 -6
- package/dist/components/number-field/number-input.d.ts +43 -23
- package/dist/components/number-field/number-input.js +179 -125
- package/dist/components/otp-field/otp-field.css +153 -60
- package/dist/components/otp-field/otp-field.d.ts +2 -2
- package/dist/components/otp-field/otp-field.js +62 -46
- package/dist/components/otp-field/otp-field.module.js +4 -4
- package/dist/components/otp-field/otp-input.d.ts +8 -6
- package/dist/components/otp-field/otp-input.js +92 -92
- package/dist/components/pagination/pagination.d.ts +46 -15
- package/dist/components/pagination/pagination.js +217 -224
- package/dist/components/password-field/password-field.css +23 -23
- package/dist/components/password-field/password-field.js +107 -85
- package/dist/components/password-field/password-field.module.js +8 -8
- package/dist/components/password-field/password-strength.d.ts +107 -3
- package/dist/components/password-field/password-strength.js +569 -92
- package/dist/components/photo-field/photo-field.js +137 -112
- package/dist/components/photo-field/photo-input.css +67 -44
- package/dist/components/photo-field/photo-input.d.ts +59 -15
- package/dist/components/photo-field/photo-input.js +173 -86
- package/dist/components/photo-field/photo-input.module.js +10 -8
- package/dist/components/popover/popover.css +41 -41
- package/dist/components/popover/popover.d.ts +66 -25
- package/dist/components/popover/popover.js +332 -217
- package/dist/components/popover/popover.module.js +15 -19
- package/dist/components/radio-group-field/radio-group-field.js +80 -71
- package/dist/components/radio-group-field/radio-group.css +112 -60
- package/dist/components/radio-group-field/radio-group.d.ts +19 -3
- package/dist/components/radio-group-field/radio-group.js +66 -23
- package/dist/components/radio-group-field/radio-group.module.js +4 -4
- package/dist/components/segmented-control-field/segmented-control-field.d.ts +1 -1
- package/dist/components/segmented-control-field/segmented-control-field.js +111 -96
- package/dist/components/segmented-control-field/segmented-control.css +132 -79
- package/dist/components/segmented-control-field/segmented-control.d.ts +39 -15
- package/dist/components/segmented-control-field/segmented-control.js +124 -41
- package/dist/components/segmented-control-field/segmented-control.module.js +4 -4
- package/dist/components/select-field/select.css +214 -101
- package/dist/components/select-field/select.d.ts +43 -11
- package/dist/components/select-field/select.js +194 -109
- package/dist/components/select-field/select.module.js +14 -14
- package/dist/components/skeleton/skeleton.css +4 -4
- package/dist/components/skeleton/skeleton.module.js +3 -3
- package/dist/components/stale/stale.css +15 -15
- package/dist/components/stale/stale.d.ts +27 -3
- package/dist/components/stale/stale.js +147 -66
- package/dist/components/stale/stale.module.js +6 -6
- package/dist/components/status-message/status-message.css +22 -22
- package/dist/components/status-message/status-message.module.js +6 -6
- package/dist/components/switch-field/switch-field.js +77 -57
- package/dist/components/switch-field/switch.css +112 -63
- package/dist/components/switch-field/switch.d.ts +20 -3
- package/dist/components/switch-field/switch.js +70 -27
- package/dist/components/switch-field/switch.module.js +4 -4
- package/dist/components/tabs/tabs.css +32 -32
- package/dist/components/tabs/tabs.d.ts +21 -7
- package/dist/components/tabs/tabs.js +73 -14
- package/dist/components/tabs/tabs.module.js +7 -7
- package/dist/components/tag/tag.css +84 -84
- package/dist/components/tag/tag.module.js +3 -3
- package/dist/components/tag-group/tag-group.css +94 -94
- package/dist/components/tag-group/tag-group.module.js +4 -4
- package/dist/components/text-field/text-field.css +159 -82
- package/dist/components/text-field/text-field.d.ts +1 -1
- package/dist/components/text-field/text-field.js +139 -110
- package/dist/components/text-field/text-field.module.js +9 -9
- package/dist/components/text-field/text-input.d.ts +81 -45
- package/dist/components/text-field/text-input.js +366 -217
- package/dist/components/textarea-field/textarea-field.css +7 -2
- package/dist/components/textarea-field/textarea-field.js +72 -56
- package/dist/components/textarea-field/textarea-field.module.js +2 -2
- package/dist/components/time-field/time-field.js +153 -60
- package/dist/components/time-field/time-input.d.ts +21 -10
- package/dist/components/time-field/time-input.js +22 -11
- package/dist/components/toast/toast-provider.css +34 -31
- package/dist/components/toast/toast-provider.d.ts +63 -14
- package/dist/components/toast/toast-provider.js +174 -111
- package/dist/components/toast/toast-provider.module.js +7 -7
- package/dist/components/toggle-group-field/toggle-group-field.d.ts +1 -1
- package/dist/components/toggle-group-field/toggle-group-field.js +95 -89
- package/dist/components/toggle-group-field/toggle-group.css +117 -67
- package/dist/components/toggle-group-field/toggle-group.d.ts +2 -2
- package/dist/components/toggle-group-field/toggle-group.js +2 -2
- package/dist/components/toggle-group-field/toggle-group.module.js +2 -2
- package/dist/components/tooltip/tooltip.css +4 -4
- package/dist/components/tooltip/tooltip.module.js +1 -1
- package/dist/data-table/data-table-content.js +6 -5
- package/dist/data-table/data-table-parts.d.ts +41 -13
- package/dist/data-table/data-table-parts.js +213 -172
- package/dist/data-table/data-table-selection.d.ts +105 -3
- package/dist/data-table/data-table-selection.js +654 -145
- package/dist/data-table/data-table.css +125 -128
- package/dist/data-table/data-table.d.ts +21 -26
- package/dist/data-table/data-table.js +20 -23
- package/dist/data-table/data-table.module.js +32 -34
- package/dist/data-table/index.d.ts +2 -2
- package/dist/index.js +3 -3
- package/dist/lib/calendar/calendar-navigation.d.ts +39 -5
- package/dist/lib/calendar/calendar-navigation.js +185 -118
- package/dist/lib/calendar/calendar-parts.d.ts +143 -0
- package/dist/lib/calendar/calendar-parts.js +540 -0
- package/dist/lib/calendar/calendar-prefab.d.ts +52 -0
- package/dist/lib/calendar/calendar-prefab.js +311 -0
- package/dist/lib/calendar/calendar-year.d.ts +3 -1
- package/dist/lib/calendar/calendar-year.js +139 -131
- package/dist/lib/calendar/temporal.css +325 -232
- package/dist/lib/calendar/temporal.d.ts +67 -82
- package/dist/lib/calendar/temporal.js +258 -569
- package/dist/lib/calendar/temporal.module.js +38 -38
- package/dist/lib/forms/use-connected-field.d.ts +1 -1
- package/dist/lib/forms/use-connected-field.js +1 -1
- package/dist/lib/render-as.d.ts +13 -0
- package/dist/lib/render-as.js +46 -0
- package/dist/terrazzo/index.d.ts +4 -3
- package/dist/terrazzo/index.js +17 -6
- package/dist/tokens.css +28 -4
- package/package.json +2 -2
- package/tokens/dark.tokens.json +6 -0
- package/tokens/sys.tokens.json +7 -0
- package/dist/components/button/close-button.d.ts +0 -16
- package/dist/components/button/close-button.js +0 -30
|
@@ -1,107 +1,130 @@
|
|
|
1
1
|
import { normalizeFieldErrors } from "../../lib/forms/errors.js";
|
|
2
2
|
import { ErrorText } from "../error-text/error-text.js";
|
|
3
|
-
import { Spinner } from "../spinner/spinner.js";
|
|
4
3
|
import { FieldRowContext, useFieldGroupLineIds } from "./field-group-context.js";
|
|
5
4
|
import field_module_default from "./field.module.js";
|
|
6
5
|
import { c } from "react/compiler-runtime";
|
|
6
|
+
import { useRender } from "@base-ui/react/use-render";
|
|
7
7
|
import { clsx } from "clsx";
|
|
8
|
-
import {
|
|
9
|
-
import { useContext, useId } from "react";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
9
|
+
import { createContext, useContext, useId } from "react";
|
|
10
10
|
import { Field } from "@base-ui/react/field";
|
|
11
11
|
// src/components/field/field.tsx
|
|
12
12
|
var isEmpty = (children) => children === void 0 || children === null || children === false || children === "";
|
|
13
|
+
var RequirednessContext = createContext(void 0);
|
|
13
14
|
/**
|
|
14
15
|
* The mark a label carries when its field is required. Decoration only: the
|
|
15
16
|
* control's own `required` tells assistive tech.
|
|
16
17
|
*
|
|
17
18
|
* @example
|
|
18
|
-
* <Field.RequiredMark
|
|
19
|
+
* <Field.Label>Email <Field.RequiredMark /></Field.Label>
|
|
19
20
|
*/
|
|
20
21
|
var RequiredMark = (t0) => {
|
|
21
|
-
const $ = c(
|
|
22
|
+
const $ = c(3);
|
|
22
23
|
const { requiredness } = t0;
|
|
24
|
+
const fieldRequiredness = useContext(RequirednessContext);
|
|
23
25
|
let t1;
|
|
24
|
-
if ($[0] !== requiredness) {
|
|
25
|
-
t1 = requiredness === "required" ? /* @__PURE__ */ jsx("span", {
|
|
26
|
+
if ($[0] !== fieldRequiredness || $[1] !== requiredness) {
|
|
27
|
+
t1 = (requiredness ?? fieldRequiredness) === "required" ? /* @__PURE__ */ jsx("span", {
|
|
26
28
|
className: field_module_default.required,
|
|
27
29
|
"aria-hidden": "true"
|
|
28
30
|
}) : null;
|
|
29
|
-
$[0] =
|
|
30
|
-
$[1] =
|
|
31
|
-
|
|
31
|
+
$[0] = fieldRequiredness;
|
|
32
|
+
$[1] = requiredness;
|
|
33
|
+
$[2] = t1;
|
|
34
|
+
} else t1 = $[2];
|
|
32
35
|
return t1;
|
|
33
36
|
};
|
|
34
37
|
/**
|
|
35
38
|
* The suffix a label trails: the required mark, or the optional word.
|
|
36
39
|
*
|
|
37
40
|
* @example
|
|
38
|
-
* <Field.Requiredness
|
|
41
|
+
* <Field.Label>Notes <Field.Requiredness optionalLabel="optional" /></Field.Label>
|
|
39
42
|
*/
|
|
40
43
|
var FieldRequiredness = (t0) => {
|
|
41
44
|
const $ = c(3);
|
|
42
45
|
const { requiredness, optionalLabel } = t0;
|
|
46
|
+
const fieldRequiredness = useContext(RequirednessContext);
|
|
47
|
+
const asserted = requiredness ?? fieldRequiredness;
|
|
43
48
|
let t1;
|
|
44
|
-
if ($[0] !==
|
|
45
|
-
t1 =
|
|
49
|
+
if ($[0] !== asserted || $[1] !== optionalLabel) {
|
|
50
|
+
t1 = asserted === "optional" ? /* @__PURE__ */ jsx("span", {
|
|
46
51
|
className: field_module_default.optional,
|
|
47
52
|
children: optionalLabel
|
|
48
|
-
}) : /* @__PURE__ */ jsx(RequiredMark, { requiredness });
|
|
49
|
-
$[0] =
|
|
50
|
-
$[1] =
|
|
53
|
+
}) : /* @__PURE__ */ jsx(RequiredMark, { requiredness: asserted });
|
|
54
|
+
$[0] = asserted;
|
|
55
|
+
$[1] = optionalLabel;
|
|
51
56
|
$[2] = t1;
|
|
52
57
|
} else t1 = $[2];
|
|
53
58
|
return t1;
|
|
54
59
|
};
|
|
55
60
|
/**
|
|
56
|
-
* The
|
|
57
|
-
*
|
|
61
|
+
* The optional word of a label beside its control, on a row of its own under
|
|
62
|
+
* the label's text. Renders nothing unless the field is optional.
|
|
58
63
|
*
|
|
59
64
|
* @example
|
|
60
65
|
* <Checkbox.Label>
|
|
61
|
-
* <Checkbox.Control
|
|
62
|
-
* <Field.InlineLabelText
|
|
66
|
+
* <Checkbox.Control>…</Checkbox.Control>
|
|
67
|
+
* <Field.InlineLabelText>Send me a copy <Field.RequiredMark /></Field.InlineLabelText>
|
|
68
|
+
* <Field.InlineOptional optionalLabel="optional" />
|
|
63
69
|
* </Checkbox.Label>
|
|
64
70
|
*/
|
|
65
|
-
var
|
|
66
|
-
const $ = c(
|
|
67
|
-
const {
|
|
71
|
+
var InlineOptional = (t0) => {
|
|
72
|
+
const $ = c(4);
|
|
73
|
+
const { requiredness, optionalLabel } = t0;
|
|
74
|
+
const fieldRequiredness = useContext(RequirednessContext);
|
|
68
75
|
let t1;
|
|
69
|
-
if ($[0] !==
|
|
70
|
-
t1 =
|
|
71
|
-
$[0] = fieldLabel;
|
|
72
|
-
$[1] = requiredness;
|
|
73
|
-
$[2] = t1;
|
|
74
|
-
} else t1 = $[2];
|
|
75
|
-
let t2;
|
|
76
|
-
if ($[3] !== label || $[4] !== t1) {
|
|
77
|
-
t2 = /* @__PURE__ */ jsxs("span", {
|
|
78
|
-
className: field_module_default.inlineText,
|
|
79
|
-
children: [label, t1]
|
|
80
|
-
});
|
|
81
|
-
$[3] = label;
|
|
82
|
-
$[4] = t1;
|
|
83
|
-
$[5] = t2;
|
|
84
|
-
} else t2 = $[5];
|
|
85
|
-
let t3;
|
|
86
|
-
if ($[6] !== fieldLabel || $[7] !== optionalLabel || $[8] !== requiredness) {
|
|
87
|
-
t3 = requiredness === "optional" && fieldLabel === void 0 && /* @__PURE__ */ jsx("span", {
|
|
76
|
+
if ($[0] !== fieldRequiredness || $[1] !== optionalLabel || $[2] !== requiredness) {
|
|
77
|
+
t1 = (requiredness ?? fieldRequiredness) === "optional" ? /* @__PURE__ */ jsx("span", {
|
|
88
78
|
"data-optional-suffix": "",
|
|
89
79
|
className: clsx(field_module_default.optional, field_module_default.inlineOptional),
|
|
90
80
|
children: optionalLabel
|
|
81
|
+
}) : null;
|
|
82
|
+
$[0] = fieldRequiredness;
|
|
83
|
+
$[1] = optionalLabel;
|
|
84
|
+
$[2] = requiredness;
|
|
85
|
+
$[3] = t1;
|
|
86
|
+
} else t1 = $[3];
|
|
87
|
+
return t1;
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* The text of a label beside its control, such as a lone checkbox's.
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* <Checkbox.Label>
|
|
94
|
+
* <Checkbox.Control><Checkbox.Indicator><CheckIcon /></Checkbox.Indicator></Checkbox.Control>
|
|
95
|
+
* <Field.InlineLabelText>I agree to the terms <Field.RequiredMark /></Field.InlineLabelText>
|
|
96
|
+
* </Checkbox.Label>
|
|
97
|
+
*/
|
|
98
|
+
var InlineLabelText = (t0) => {
|
|
99
|
+
const $ = c(8);
|
|
100
|
+
let className;
|
|
101
|
+
let props;
|
|
102
|
+
if ($[0] !== t0) {
|
|
103
|
+
({className, ...props} = t0);
|
|
104
|
+
$[0] = t0;
|
|
105
|
+
$[1] = className;
|
|
106
|
+
$[2] = props;
|
|
107
|
+
} else {
|
|
108
|
+
className = $[1];
|
|
109
|
+
props = $[2];
|
|
110
|
+
}
|
|
111
|
+
let t1;
|
|
112
|
+
if ($[3] !== className) {
|
|
113
|
+
t1 = clsx(field_module_default.inlineText, className);
|
|
114
|
+
$[3] = className;
|
|
115
|
+
$[4] = t1;
|
|
116
|
+
} else t1 = $[4];
|
|
117
|
+
let t2;
|
|
118
|
+
if ($[5] !== props || $[6] !== t1) {
|
|
119
|
+
t2 = /* @__PURE__ */ jsx("span", {
|
|
120
|
+
className: t1,
|
|
121
|
+
...props
|
|
91
122
|
});
|
|
92
|
-
$[
|
|
93
|
-
$[
|
|
94
|
-
$[
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
let t4;
|
|
98
|
-
if ($[10] !== t2 || $[11] !== t3) {
|
|
99
|
-
t4 = /* @__PURE__ */ jsxs(Fragment, { children: [t2, t3] });
|
|
100
|
-
$[10] = t2;
|
|
101
|
-
$[11] = t3;
|
|
102
|
-
$[12] = t4;
|
|
103
|
-
} else t4 = $[12];
|
|
104
|
-
return t4;
|
|
123
|
+
$[5] = props;
|
|
124
|
+
$[6] = t1;
|
|
125
|
+
$[7] = t2;
|
|
126
|
+
} else t2 = $[7];
|
|
127
|
+
return t2;
|
|
105
128
|
};
|
|
106
129
|
/**
|
|
107
130
|
* The field frame: label, control, description and error stacked full width.
|
|
@@ -111,104 +134,95 @@ var InlineLabelText = (t0) => {
|
|
|
111
134
|
* <Field.Root name="email" invalid={invalid}>…</Field.Root>
|
|
112
135
|
*/
|
|
113
136
|
var FieldRoot = (t0) => {
|
|
114
|
-
const $ = c(
|
|
137
|
+
const $ = c(15);
|
|
115
138
|
let children;
|
|
116
139
|
let className;
|
|
117
140
|
let props;
|
|
141
|
+
let requiredness;
|
|
118
142
|
if ($[0] !== t0) {
|
|
119
|
-
({className, children, ...props} = t0);
|
|
143
|
+
({className, requiredness, children, ...props} = t0);
|
|
120
144
|
$[0] = t0;
|
|
121
145
|
$[1] = children;
|
|
122
146
|
$[2] = className;
|
|
123
147
|
$[3] = props;
|
|
148
|
+
$[4] = requiredness;
|
|
124
149
|
} else {
|
|
125
150
|
children = $[1];
|
|
126
151
|
className = $[2];
|
|
127
152
|
props = $[3];
|
|
153
|
+
requiredness = $[4];
|
|
128
154
|
}
|
|
129
155
|
const inRow = useContext(FieldRowContext);
|
|
130
156
|
let t1;
|
|
131
|
-
if ($[
|
|
157
|
+
if ($[5] !== className) {
|
|
132
158
|
t1 = clsx(field_module_default.field, className);
|
|
133
|
-
$[
|
|
134
|
-
$[
|
|
135
|
-
} else t1 = $[
|
|
159
|
+
$[5] = className;
|
|
160
|
+
$[6] = t1;
|
|
161
|
+
} else t1 = $[6];
|
|
136
162
|
const t2 = inRow ? "" : void 0;
|
|
137
163
|
let t3;
|
|
138
|
-
if ($[
|
|
164
|
+
if ($[7] !== children || $[8] !== requiredness) {
|
|
139
165
|
t3 = /* @__PURE__ */ jsx(FieldRowContext, {
|
|
140
166
|
value: false,
|
|
141
|
-
children
|
|
167
|
+
children: /* @__PURE__ */ jsx(RequirednessContext, {
|
|
168
|
+
value: requiredness,
|
|
169
|
+
children
|
|
170
|
+
})
|
|
142
171
|
});
|
|
143
|
-
$[
|
|
144
|
-
$[
|
|
145
|
-
|
|
172
|
+
$[7] = children;
|
|
173
|
+
$[8] = requiredness;
|
|
174
|
+
$[9] = t3;
|
|
175
|
+
} else t3 = $[9];
|
|
146
176
|
let t4;
|
|
147
|
-
if ($[
|
|
177
|
+
if ($[10] !== props || $[11] !== t1 || $[12] !== t2 || $[13] !== t3) {
|
|
148
178
|
t4 = /* @__PURE__ */ jsx(Field.Root, {
|
|
149
179
|
className: t1,
|
|
150
180
|
"data-field-group-member": t2,
|
|
151
181
|
...props,
|
|
152
182
|
children: t3
|
|
153
183
|
});
|
|
154
|
-
$[
|
|
155
|
-
$[
|
|
156
|
-
$[
|
|
157
|
-
$[
|
|
158
|
-
$[
|
|
159
|
-
} else t4 = $[
|
|
184
|
+
$[10] = props;
|
|
185
|
+
$[11] = t1;
|
|
186
|
+
$[12] = t2;
|
|
187
|
+
$[13] = t3;
|
|
188
|
+
$[14] = t4;
|
|
189
|
+
} else t4 = $[14];
|
|
160
190
|
return t4;
|
|
161
191
|
};
|
|
162
192
|
/**
|
|
163
|
-
* The label above a control
|
|
164
|
-
* children.
|
|
193
|
+
* The label above a control. Renders nothing without children.
|
|
165
194
|
*
|
|
166
195
|
* @example
|
|
167
|
-
* <Field.Label
|
|
196
|
+
* <Field.Label>Notes <Field.Requiredness optionalLabel="optional" /></Field.Label>
|
|
168
197
|
*/
|
|
169
198
|
var FieldLabel = (t0) => {
|
|
170
|
-
const $ = c(
|
|
199
|
+
const $ = c(8);
|
|
171
200
|
let children;
|
|
172
201
|
let className;
|
|
173
|
-
let optionalLabel;
|
|
174
202
|
let props;
|
|
175
|
-
let requiredness;
|
|
176
203
|
if ($[0] !== t0) {
|
|
177
|
-
({children,
|
|
204
|
+
({children, className, ...props} = t0);
|
|
178
205
|
$[0] = t0;
|
|
179
206
|
$[1] = children;
|
|
180
207
|
$[2] = className;
|
|
181
|
-
$[3] =
|
|
182
|
-
$[4] = props;
|
|
183
|
-
$[5] = requiredness;
|
|
208
|
+
$[3] = props;
|
|
184
209
|
} else {
|
|
185
210
|
children = $[1];
|
|
186
211
|
className = $[2];
|
|
187
|
-
|
|
188
|
-
props = $[4];
|
|
189
|
-
requiredness = $[5];
|
|
212
|
+
props = $[3];
|
|
190
213
|
}
|
|
191
214
|
let t1;
|
|
192
|
-
if ($[
|
|
193
|
-
t1 = isEmpty(children) ? null : /* @__PURE__ */
|
|
215
|
+
if ($[4] !== children || $[5] !== className || $[6] !== props) {
|
|
216
|
+
t1 = isEmpty(children) ? null : /* @__PURE__ */ jsx(Field.Label, {
|
|
194
217
|
className: clsx(field_module_default.label, className),
|
|
195
218
|
...props,
|
|
196
|
-
children
|
|
197
|
-
children,
|
|
198
|
-
" ",
|
|
199
|
-
/* @__PURE__ */ jsx(FieldRequiredness, {
|
|
200
|
-
requiredness,
|
|
201
|
-
optionalLabel
|
|
202
|
-
})
|
|
203
|
-
]
|
|
219
|
+
children
|
|
204
220
|
});
|
|
205
|
-
$[
|
|
206
|
-
$[
|
|
207
|
-
$[
|
|
208
|
-
$[
|
|
209
|
-
|
|
210
|
-
$[11] = t1;
|
|
211
|
-
} else t1 = $[11];
|
|
221
|
+
$[4] = children;
|
|
222
|
+
$[5] = className;
|
|
223
|
+
$[6] = props;
|
|
224
|
+
$[7] = t1;
|
|
225
|
+
} else t1 = $[7];
|
|
212
226
|
return t1;
|
|
213
227
|
};
|
|
214
228
|
/**
|
|
@@ -217,51 +231,36 @@ var FieldLabel = (t0) => {
|
|
|
217
231
|
* a control that already carries its own name. To name something, use `Label`.
|
|
218
232
|
*
|
|
219
233
|
* @example
|
|
220
|
-
* <Field.Caption optionalLabel="optional"
|
|
234
|
+
* <Field.Caption>Theme <Field.Requiredness requiredness="optional" optionalLabel="optional" /></Field.Caption>
|
|
221
235
|
*/
|
|
222
236
|
var FieldCaption = (t0) => {
|
|
223
|
-
const $ = c(
|
|
237
|
+
const $ = c(8);
|
|
224
238
|
let children;
|
|
225
239
|
let className;
|
|
226
|
-
let optionalLabel;
|
|
227
240
|
let props;
|
|
228
|
-
let requiredness;
|
|
229
241
|
if ($[0] !== t0) {
|
|
230
|
-
({children,
|
|
242
|
+
({children, className, ...props} = t0);
|
|
231
243
|
$[0] = t0;
|
|
232
244
|
$[1] = children;
|
|
233
245
|
$[2] = className;
|
|
234
|
-
$[3] =
|
|
235
|
-
$[4] = props;
|
|
236
|
-
$[5] = requiredness;
|
|
246
|
+
$[3] = props;
|
|
237
247
|
} else {
|
|
238
248
|
children = $[1];
|
|
239
249
|
className = $[2];
|
|
240
|
-
|
|
241
|
-
props = $[4];
|
|
242
|
-
requiredness = $[5];
|
|
250
|
+
props = $[3];
|
|
243
251
|
}
|
|
244
252
|
let t1;
|
|
245
|
-
if ($[
|
|
246
|
-
t1 = isEmpty(children) ? null : /* @__PURE__ */
|
|
253
|
+
if ($[4] !== children || $[5] !== className || $[6] !== props) {
|
|
254
|
+
t1 = isEmpty(children) ? null : /* @__PURE__ */ jsx("p", {
|
|
247
255
|
className: clsx(field_module_default.label, className),
|
|
248
256
|
...props,
|
|
249
|
-
children
|
|
250
|
-
children,
|
|
251
|
-
" ",
|
|
252
|
-
/* @__PURE__ */ jsx(FieldRequiredness, {
|
|
253
|
-
requiredness,
|
|
254
|
-
optionalLabel
|
|
255
|
-
})
|
|
256
|
-
]
|
|
257
|
+
children
|
|
257
258
|
});
|
|
258
|
-
$[
|
|
259
|
-
$[
|
|
260
|
-
$[
|
|
261
|
-
$[
|
|
262
|
-
|
|
263
|
-
$[11] = t1;
|
|
264
|
-
} else t1 = $[11];
|
|
259
|
+
$[4] = children;
|
|
260
|
+
$[5] = className;
|
|
261
|
+
$[6] = props;
|
|
262
|
+
$[7] = t1;
|
|
263
|
+
} else t1 = $[7];
|
|
265
264
|
return t1;
|
|
266
265
|
};
|
|
267
266
|
/**
|
|
@@ -362,38 +361,122 @@ var FieldError = (t0) => {
|
|
|
362
361
|
return t2;
|
|
363
362
|
};
|
|
364
363
|
/**
|
|
365
|
-
* The
|
|
366
|
-
*
|
|
367
|
-
*
|
|
368
|
-
*
|
|
364
|
+
* The box beside the control that a field's wait shows in, holding what it is
|
|
365
|
+
* given, such as a spinner. The control decides when it is mounted, once the
|
|
366
|
+
* wait is worth showing. It is decoration: the wait reaches assistive tech as
|
|
367
|
+
* the `aria-busy` that `fieldStateAttributes` projects.
|
|
369
368
|
*
|
|
370
369
|
* @example
|
|
371
|
-
* {phase !== "fresh" && <Field.Pending
|
|
370
|
+
* {phase !== "fresh" && <Field.Pending><Spinner size={1} /></Field.Pending>}
|
|
372
371
|
*/
|
|
373
372
|
var FieldPending = (t0) => {
|
|
374
|
-
const $ = c(
|
|
375
|
-
|
|
373
|
+
const $ = c(14);
|
|
374
|
+
let className;
|
|
375
|
+
let props;
|
|
376
|
+
let ref;
|
|
377
|
+
let render;
|
|
378
|
+
if ($[0] !== t0) {
|
|
379
|
+
({className, render, ref, ...props} = t0);
|
|
380
|
+
$[0] = t0;
|
|
381
|
+
$[1] = className;
|
|
382
|
+
$[2] = props;
|
|
383
|
+
$[3] = ref;
|
|
384
|
+
$[4] = render;
|
|
385
|
+
} else {
|
|
386
|
+
className = $[1];
|
|
387
|
+
props = $[2];
|
|
388
|
+
ref = $[3];
|
|
389
|
+
render = $[4];
|
|
390
|
+
}
|
|
376
391
|
let t1;
|
|
377
|
-
if ($[
|
|
392
|
+
if ($[5] !== className) {
|
|
378
393
|
t1 = clsx(field_module_default.pending, className);
|
|
379
|
-
$[
|
|
380
|
-
$[
|
|
381
|
-
} else t1 = $[
|
|
394
|
+
$[5] = className;
|
|
395
|
+
$[6] = t1;
|
|
396
|
+
} else t1 = $[6];
|
|
382
397
|
let t2;
|
|
383
|
-
if ($[
|
|
384
|
-
t2 =
|
|
385
|
-
|
|
386
|
-
|
|
398
|
+
if ($[7] !== props || $[8] !== t1) {
|
|
399
|
+
t2 = {
|
|
400
|
+
...props,
|
|
401
|
+
className: t1
|
|
402
|
+
};
|
|
403
|
+
$[7] = props;
|
|
404
|
+
$[8] = t1;
|
|
405
|
+
$[9] = t2;
|
|
406
|
+
} else t2 = $[9];
|
|
387
407
|
let t3;
|
|
388
|
-
if ($[
|
|
389
|
-
t3 =
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
408
|
+
if ($[10] !== ref || $[11] !== render || $[12] !== t2) {
|
|
409
|
+
t3 = {
|
|
410
|
+
defaultTagName: "span",
|
|
411
|
+
render,
|
|
412
|
+
ref,
|
|
413
|
+
props: t2
|
|
414
|
+
};
|
|
415
|
+
$[10] = ref;
|
|
416
|
+
$[11] = render;
|
|
417
|
+
$[12] = t2;
|
|
418
|
+
$[13] = t3;
|
|
419
|
+
} else t3 = $[13];
|
|
420
|
+
return useRender(t3);
|
|
421
|
+
};
|
|
422
|
+
/**
|
|
423
|
+
* A row holding a field's label and what sits beside it, such as a link or a
|
|
424
|
+
* counter, in place of the bare label.
|
|
425
|
+
*
|
|
426
|
+
* @example
|
|
427
|
+
* <Field.LabelRow>
|
|
428
|
+
* <TextInput.Label>Password</TextInput.Label>
|
|
429
|
+
* <Link href="/reset">Forgot password?</Link>
|
|
430
|
+
* </Field.LabelRow>
|
|
431
|
+
*/
|
|
432
|
+
var FieldLabelRow = (t0) => {
|
|
433
|
+
const $ = c(14);
|
|
434
|
+
let className;
|
|
435
|
+
let props;
|
|
436
|
+
let ref;
|
|
437
|
+
let render;
|
|
438
|
+
if ($[0] !== t0) {
|
|
439
|
+
({className, render, ref, ...props} = t0);
|
|
440
|
+
$[0] = t0;
|
|
441
|
+
$[1] = className;
|
|
442
|
+
$[2] = props;
|
|
443
|
+
$[3] = ref;
|
|
444
|
+
$[4] = render;
|
|
445
|
+
} else {
|
|
446
|
+
className = $[1];
|
|
447
|
+
props = $[2];
|
|
448
|
+
ref = $[3];
|
|
449
|
+
render = $[4];
|
|
450
|
+
}
|
|
451
|
+
let t1;
|
|
452
|
+
if ($[5] !== className) {
|
|
453
|
+
t1 = clsx(field_module_default.labelRow, className);
|
|
454
|
+
$[5] = className;
|
|
455
|
+
$[6] = t1;
|
|
456
|
+
} else t1 = $[6];
|
|
457
|
+
let t2;
|
|
458
|
+
if ($[7] !== props || $[8] !== t1) {
|
|
459
|
+
t2 = {
|
|
460
|
+
...props,
|
|
461
|
+
className: t1
|
|
462
|
+
};
|
|
463
|
+
$[7] = props;
|
|
464
|
+
$[8] = t1;
|
|
465
|
+
$[9] = t2;
|
|
466
|
+
} else t2 = $[9];
|
|
467
|
+
let t3;
|
|
468
|
+
if ($[10] !== ref || $[11] !== render || $[12] !== t2) {
|
|
469
|
+
t3 = {
|
|
470
|
+
render,
|
|
471
|
+
ref,
|
|
472
|
+
props: t2
|
|
473
|
+
};
|
|
474
|
+
$[10] = ref;
|
|
475
|
+
$[11] = render;
|
|
476
|
+
$[12] = t2;
|
|
477
|
+
$[13] = t3;
|
|
478
|
+
} else t3 = $[13];
|
|
479
|
+
return useRender(t3);
|
|
397
480
|
};
|
|
398
481
|
/**
|
|
399
482
|
* Stable ids for a field's label, description and error, for controls that
|
|
@@ -442,8 +525,8 @@ var useFieldIds = () => {
|
|
|
442
525
|
* before `Error`, the field's only live region.
|
|
443
526
|
*
|
|
444
527
|
* @example
|
|
445
|
-
* <Field.Root name="email" invalid={invalid}>
|
|
446
|
-
* <Field.Label
|
|
528
|
+
* <Field.Root name="email" invalid={invalid} requiredness="required">
|
|
529
|
+
* <Field.Label>Email <Field.Requiredness optionalLabel="optional" /></Field.Label>
|
|
447
530
|
* <Field.Control />
|
|
448
531
|
* <Field.Description>We send the receipt here.</Field.Description>
|
|
449
532
|
* <Field.Error>{errors}</Field.Error>
|
|
@@ -452,6 +535,7 @@ var useFieldIds = () => {
|
|
|
452
535
|
var Field$1 = {
|
|
453
536
|
Root: FieldRoot,
|
|
454
537
|
Label: FieldLabel,
|
|
538
|
+
LabelRow: FieldLabelRow,
|
|
455
539
|
Caption: FieldCaption,
|
|
456
540
|
Control: Field.Control,
|
|
457
541
|
Description: FieldDescription,
|
|
@@ -462,6 +546,7 @@ var Field$1 = {
|
|
|
462
546
|
Requiredness: FieldRequiredness,
|
|
463
547
|
RequiredMark,
|
|
464
548
|
InlineLabelText,
|
|
549
|
+
InlineOptional,
|
|
465
550
|
useIds: useFieldIds
|
|
466
551
|
};
|
|
467
552
|
function _temp(lineId) {
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import './field.css';// src/components/field/field.module.scss
|
|
2
|
-
var field = "
|
|
3
|
-
var label = "
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
2
|
+
var field = "_field_160cj_3";
|
|
3
|
+
var label = "_label_160cj_16";
|
|
4
|
+
var labelRow = "_labelRow_160cj_16";
|
|
5
|
+
var description = "_description_160cj_25";
|
|
6
|
+
var error = "_error_160cj_28";
|
|
7
|
+
var optional = "_optional_160cj_43";
|
|
8
|
+
var inlineText = "_inlineText_160cj_49";
|
|
9
|
+
var inlineOptional = "_inlineOptional_160cj_52";
|
|
10
|
+
var required = "_required_160cj_55";
|
|
11
|
+
var pending = "_pending_160cj_68";
|
|
11
12
|
var field_module_default = {
|
|
12
13
|
field,
|
|
13
14
|
label,
|
|
15
|
+
labelRow,
|
|
14
16
|
description,
|
|
15
17
|
error,
|
|
16
18
|
optional,
|
|
@@ -19,4 +21,4 @@ var field_module_default = {
|
|
|
19
21
|
required,
|
|
20
22
|
pending
|
|
21
23
|
};
|
|
22
|
-
export { field_module_default as default, description, error, field, inlineOptional, inlineText, label, optional, pending, required };
|
|
24
|
+
export { field_module_default as default, description, error, field, inlineOptional, inlineText, label, labelRow, optional, pending, required };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Context, type ReactNode } from "react";
|
|
2
2
|
import type { BusyPhase } from "../../lib/hooks/use-busy-phase.ts";
|
|
3
|
-
import { type FieldErrorProps, type FieldLabelProps } from "./field.tsx";
|
|
3
|
+
import { type FieldErrorProps, type FieldLabelProps, type FieldPendingProps } from "./field.tsx";
|
|
4
4
|
import type { FieldState } from "./field-state.ts";
|
|
5
5
|
/** What a raw input's `Root` hands its label, pending and error parts. */
|
|
6
6
|
export type InputPartsContextValue = Readonly<{
|
|
@@ -8,8 +8,6 @@ export type InputPartsContextValue = Readonly<{
|
|
|
8
8
|
state: FieldState;
|
|
9
9
|
/** The errors `Root` was given, which `Error` renders. */
|
|
10
10
|
errors: unknown;
|
|
11
|
-
/** The word an optional field's label trails. */
|
|
12
|
-
optionalLabel: string;
|
|
13
11
|
phase: BusyPhase;
|
|
14
12
|
}>;
|
|
15
13
|
/** The context a raw input's `Root` provides its shared parts. */
|
|
@@ -21,24 +19,24 @@ export declare const InputPartsContext: Context<InputPartsContextValue | null>;
|
|
|
21
19
|
* const { state } = useInputPartsContext();
|
|
22
20
|
*/
|
|
23
21
|
export declare const useInputPartsContext: () => InputPartsContextValue;
|
|
24
|
-
export type InputLabelProps =
|
|
22
|
+
export type InputLabelProps = FieldLabelProps;
|
|
25
23
|
/**
|
|
26
|
-
* The label above a raw input
|
|
24
|
+
* The label above a raw input. Add `Field.Requiredness` to trail the
|
|
25
|
+
* requiredness its `Root` was given.
|
|
27
26
|
*
|
|
28
27
|
* @example
|
|
29
|
-
* <TextInput.Label>Email
|
|
28
|
+
* <TextInput.Label>Email <Field.Requiredness optionalLabel="optional" /></TextInput.Label>
|
|
30
29
|
*/
|
|
31
|
-
export declare const InputLabel: (
|
|
32
|
-
export type InputPendingProps =
|
|
33
|
-
className?: string;
|
|
34
|
-
}>;
|
|
30
|
+
export declare const InputLabel: (props: InputLabelProps) => ReactNode;
|
|
31
|
+
export type InputPendingProps = FieldPendingProps;
|
|
35
32
|
/**
|
|
36
|
-
* The
|
|
33
|
+
* The box a raw input's wait shows in, holding what it is given, such as a
|
|
34
|
+
* spinner. It renders once its `Root`'s wait is worth showing.
|
|
37
35
|
*
|
|
38
36
|
* @example
|
|
39
|
-
* <TextInput.Pending
|
|
37
|
+
* <TextInput.Pending><Spinner size={1} /></TextInput.Pending>
|
|
40
38
|
*/
|
|
41
|
-
export declare const InputPending: (
|
|
39
|
+
export declare const InputPending: (props: InputPendingProps) => ReactNode;
|
|
42
40
|
export type InputErrorProps = Omit<FieldErrorProps, "children">;
|
|
43
41
|
/**
|
|
44
42
|
* The errors a raw input's `Root` was given.
|