@igne-agency/react-web-ui 0.3.1 → 0.5.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/README.md +32 -1
- package/dist/base.css +3 -0
- package/dist/components/accordion/accordion.css +24 -19
- package/dist/components/accordion/accordion.d.ts +19 -3
- package/dist/components/accordion/accordion.js +86 -32
- package/dist/components/accordion/accordion.module.js +8 -8
- package/dist/components/active-filters/active-filter-describers.d.ts +1 -1
- package/dist/components/active-filters/active-filter-describers.js +1 -1
- package/dist/components/active-filters/active-filters.d.ts +35 -2
- package/dist/components/active-filters/active-filters.js +57 -52
- package/dist/components/active-filters/index.js +2 -2
- package/dist/components/attachment-tile/attachment-preview.d.ts +11 -9
- package/dist/components/attachment-tile/attachment-preview.js +102 -68
- package/dist/components/attachment-tile/attachment-tile.css +22 -13
- package/dist/components/attachment-tile/attachment-tile.d.ts +51 -6
- package/dist/components/attachment-tile/attachment-tile.js +209 -85
- package/dist/components/attachment-tile/attachment-tile.module.js +10 -10
- package/dist/components/attachment-tile/index.d.ts +1 -1
- package/dist/components/attachment-tile/index.js +2 -2
- package/dist/components/avatar/avatar.d.ts +5 -5
- package/dist/components/avatar/avatar.js +64 -37
- package/dist/components/avatar-group/avatar-group.js +2 -2
- package/dist/components/badge/badge.js +1 -1
- package/dist/components/breadcrumbs/breadcrumbs.d.ts +22 -7
- package/dist/components/breadcrumbs/breadcrumbs.js +189 -170
- package/dist/components/button/button.d.ts +2 -3
- package/dist/components/button/button.js +58 -77
- package/dist/components/button/close-button.d.ts +4 -2
- package/dist/components/button/close-button.js +9 -9
- package/dist/components/checkbox-field/checkbox-field.d.ts +17 -3
- package/dist/components/checkbox-field/checkbox-field.js +108 -131
- package/dist/components/checkbox-field/checkbox.css +26 -34
- package/dist/components/checkbox-field/checkbox.d.ts +51 -8
- package/dist/components/checkbox-field/checkbox.js +221 -57
- package/dist/components/checkbox-field/checkbox.module.js +6 -8
- package/dist/components/checkbox-field/index.d.ts +0 -1
- package/dist/components/checkbox-field/index.js +1 -2
- package/dist/components/checkbox-field/tsf-checkbox-field.d.ts +2 -2
- package/dist/components/checkbox-group-field/checkbox-group-field.d.ts +4 -1
- package/dist/components/checkbox-group-field/checkbox-group-field.js +54 -50
- package/dist/components/checkbox-group-field/checkbox-group.d.ts +7 -2
- package/dist/components/checkbox-group-field/checkbox-group.js +8 -3
- package/dist/components/collapsible/collapsible.css +23 -18
- package/dist/components/collapsible/collapsible.d.ts +18 -3
- package/dist/components/collapsible/collapsible.js +85 -32
- package/dist/components/collapsible/collapsible.module.js +7 -7
- package/dist/components/combobox-field/combobox-field.d.ts +9 -1
- package/dist/components/combobox-field/combobox-field.js +195 -175
- package/dist/components/combobox-field/combobox-items.d.ts +2 -2
- package/dist/components/combobox-field/combobox-items.js +4 -4
- package/dist/components/combobox-field/combobox.css +99 -96
- package/dist/components/combobox-field/combobox.d.ts +94 -15
- package/dist/components/combobox-field/combobox.js +484 -159
- package/dist/components/combobox-field/combobox.module.js +21 -21
- package/dist/components/combobox-field/index.d.ts +0 -1
- package/dist/components/combobox-field/selection.d.ts +4 -1
- package/dist/components/combobox-field/value-state-view.css +7 -3
- package/dist/components/combobox-field/value-state-view.d.ts +4 -2
- package/dist/components/combobox-field/value-state-view.js +15 -15
- package/dist/components/combobox-field/value-state-view.module.js +6 -4
- package/dist/components/composer/composer-attachments.d.ts +11 -3
- package/dist/components/composer/composer-attachments.js +61 -47
- package/dist/components/composer/composer-editor.d.ts +2 -1
- package/dist/components/composer/composer-editor.js +79 -71
- package/dist/components/composer/composer-mentions.js +2 -2
- package/dist/components/composer/composer.d.ts +42 -21
- package/dist/components/composer/composer.js +201 -58
- package/dist/components/composer/mention-text.js +3 -3
- package/dist/components/confirm-dialog/confirm-dialog.d.ts +8 -7
- package/dist/components/confirm-dialog/confirm-dialog.js +10 -9
- package/dist/components/conversation/conversation.context.d.ts +0 -5
- package/dist/components/conversation/conversation.d.ts +63 -29
- package/dist/components/conversation/conversation.js +193 -82
- package/dist/components/conversation/index.d.ts +1 -1
- package/dist/components/date-field/date-field.d.ts +10 -4
- package/dist/components/date-field/date-field.js +57 -43
- package/dist/components/date-field/date-input.d.ts +20 -3
- package/dist/components/date-field/date-input.js +28 -13
- package/dist/components/date-field/index.d.ts +1 -1
- package/dist/components/date-field/tsf-date-field.d.ts +1 -1
- package/dist/components/date-field/tsf-date-field.js +1 -1
- package/dist/components/date-range-field/date-range-field.d.ts +8 -4
- package/dist/components/date-range-field/date-range-field.js +57 -45
- package/dist/components/date-range-field/date-range-input.d.ts +20 -3
- package/dist/components/date-range-field/date-range-input.js +27 -12
- package/dist/components/date-range-field/tsf-date-range-field.d.ts +1 -1
- package/dist/components/date-range-field/tsf-date-range-field.js +1 -1
- package/dist/components/detail-list/detail-list.d.ts +28 -27
- package/dist/components/detail-list/detail-list.js +177 -121
- package/dist/components/dialog/dialog.d.ts +47 -27
- package/dist/components/dialog/dialog.js +101 -38
- package/dist/components/divider/divider.js +1 -1
- package/dist/components/drawer/drawer.d.ts +48 -30
- package/dist/components/drawer/drawer.js +113 -41
- package/dist/components/email-field/email-field.d.ts +5 -3
- package/dist/components/email-field/email-field.js +1 -3
- package/dist/components/email-field/tsf-email-field.d.ts +3 -2
- package/dist/components/empty-message/empty-message.d.ts +3 -3
- package/dist/components/empty-message/empty-message.js +3 -3
- package/dist/components/error-boundary/error-boundary.d.ts +5 -2
- package/dist/components/error-boundary/error-boundary.js +2 -3
- package/dist/components/error-message/error-message.d.ts +1 -1
- package/dist/components/error-message/error-message.js +1 -1
- package/dist/components/error-text/error-text.js +3 -3
- package/dist/components/field/field.d.ts +5 -5
- package/dist/components/field/field.js +9 -9
- package/dist/components/field/index.js +2 -2
- package/dist/components/field/input-parts.js +1 -1
- package/dist/components/field-placeholder/field-placeholder.d.ts +4 -1
- package/dist/components/field-placeholder/field-placeholder.js +41 -26
- package/dist/components/fieldset/field-group.js +1 -1
- package/dist/components/fieldset/fieldset-root.js +1 -1
- package/dist/components/fieldset/fieldset.js +1 -1
- package/dist/components/file-field/file-field.css +19 -15
- package/dist/components/file-field/file-field.d.ts +10 -1
- package/dist/components/file-field/file-field.js +130 -109
- package/dist/components/file-field/file-field.module.js +6 -4
- package/dist/components/file-field/file-input.d.ts +32 -9
- package/dist/components/file-field/file-input.js +94 -74
- package/dist/components/filter-bar/filter-bar.d.ts +79 -51
- package/dist/components/filter-bar/filter-bar.js +552 -216
- package/dist/components/form/form.d.ts +4 -6
- package/dist/components/form/form.js +6 -8
- package/dist/components/icon/icon.d.ts +5 -10
- package/dist/components/icon/icon.js +4 -6
- package/dist/components/link/link.js +1 -1
- package/dist/components/link-button/link-button.d.ts +1 -2
- package/dist/components/link-button/link-button.js +12 -22
- package/dist/components/loading-message/loading-message.d.ts +2 -2
- package/dist/components/loading-message/loading-message.js +1 -1
- package/dist/components/locale-provider/locale-provider.js +1 -1
- package/dist/components/menu/menu.d.ts +40 -22
- package/dist/components/menu/menu.js +100 -40
- package/dist/components/nav/nav-context.d.ts +0 -1
- package/dist/components/nav/nav-context.js +1 -2
- package/dist/components/nav/nav-item-view.d.ts +7 -7
- package/dist/components/nav/nav-item-view.js +27 -51
- package/dist/components/nav/nav.css +72 -60
- package/dist/components/nav/nav.d.ts +15 -8
- package/dist/components/nav/nav.js +105 -52
- package/dist/components/nav/nav.module.js +14 -14
- package/dist/components/number-field/number-field.d.ts +7 -1
- package/dist/components/number-field/number-field.js +98 -82
- package/dist/components/number-field/number-input.d.ts +53 -4
- package/dist/components/number-field/number-input.js +68 -21
- package/dist/components/number-field/tsf-number-field.d.ts +1 -1
- package/dist/components/number-field/tsf-number-field.js +1 -1
- package/dist/components/otp-field/otp-input.d.ts +25 -0
- package/dist/components/otp-field/otp-input.js +26 -1
- package/dist/components/pagination/pagination.d.ts +82 -23
- package/dist/components/pagination/pagination.js +656 -229
- package/dist/components/password-field/password-field.d.ts +7 -1
- package/dist/components/password-field/password-field.js +117 -126
- package/dist/components/password-field/password-strength.js +1 -1
- package/dist/components/password-field/tsf-password-field.d.ts +1 -1
- package/dist/components/password-field/tsf-password-field.js +1 -1
- package/dist/components/photo-field/photo-field.d.ts +17 -3
- package/dist/components/photo-field/photo-field.js +168 -89
- package/dist/components/photo-field/photo-input-context.d.ts +25 -0
- package/dist/components/photo-field/photo-input-context.js +14 -0
- package/dist/components/photo-field/photo-input.d.ts +58 -23
- package/dist/components/photo-field/photo-input.js +459 -261
- package/dist/components/popover/popover.d.ts +55 -23
- package/dist/components/popover/popover.js +205 -61
- package/dist/components/radio-group-field/radio-group.js +1 -1
- package/dist/components/search-field/search-field.d.ts +7 -5
- package/dist/components/search-field/search-field.js +4 -6
- package/dist/components/search-field/tsf-search-field.d.ts +1 -1
- package/dist/components/search-field/tsf-search-field.js +1 -1
- package/dist/components/segmented-control-field/segmented-control.js +1 -1
- package/dist/components/select-field/select-field.d.ts +7 -1
- package/dist/components/select-field/select-field.js +151 -139
- package/dist/components/select-field/select.d.ts +28 -6
- package/dist/components/select-field/select.js +234 -149
- package/dist/components/skeleton/skeleton.js +1 -1
- package/dist/components/spinner/spinner.css +47 -1
- package/dist/components/spinner/spinner.js +28 -11
- package/dist/components/spinner/spinner.module.js +18 -3
- package/dist/components/stale/stale.d.ts +17 -21
- package/dist/components/stale/stale.js +307 -129
- package/dist/components/status-message/status-message.css +22 -21
- package/dist/components/status-message/status-message.d.ts +10 -5
- package/dist/components/status-message/status-message.js +20 -24
- package/dist/components/status-message/status-message.module.js +6 -6
- package/dist/components/status-message/status-preset.d.ts +4 -5
- package/dist/components/status-message/status-preset.js +3 -3
- package/dist/components/switch-field/switch.js +1 -1
- package/dist/components/tabs/tabs.d.ts +51 -28
- package/dist/components/tabs/tabs.js +219 -144
- package/dist/components/tag/tag.css +23 -21
- package/dist/components/tag/tag.d.ts +17 -15
- package/dist/components/tag/tag.js +140 -65
- package/dist/components/tag/tag.module.js +3 -3
- package/dist/components/tag-group/tag-group.css +30 -27
- package/dist/components/tag-group/tag-group.d.ts +10 -4
- package/dist/components/tag-group/tag-group.js +47 -35
- package/dist/components/tag-group/tag-group.module.js +4 -4
- package/dist/components/text-field/text-field.d.ts +14 -3
- package/dist/components/text-field/text-field.js +154 -133
- package/dist/components/text-field/text-input.d.ts +89 -3
- package/dist/components/text-field/text-input.js +184 -70
- package/dist/components/textarea-field/textarea.js +1 -1
- package/dist/components/time-field/time-input.d.ts +6 -0
- package/dist/components/time-field/time-input.js +6 -0
- package/dist/components/time-zone-provider/time-zone-provider.js +1 -1
- package/dist/components/toast/index.js +2 -2
- package/dist/components/toast/toast-provider.css +38 -34
- package/dist/components/toast/toast-provider.d.ts +65 -3
- package/dist/components/toast/toast-provider.js +313 -148
- package/dist/components/toast/toast-provider.module.js +11 -17
- package/dist/components/toast/toast.d.ts +5 -1
- package/dist/components/toast/toast.js +2 -1
- package/dist/components/toggle-group-field/toggle-group.js +1 -1
- package/dist/components/tooltip/tooltip.d.ts +6 -6
- package/dist/components/tooltip/tooltip.js +7 -7
- package/dist/data-table/data-table-content.d.ts +18 -10
- package/dist/data-table/data-table-content.js +145 -290
- package/dist/data-table/data-table-context.d.ts +4 -2
- package/dist/data-table/data-table-context.js +1 -1
- package/dist/data-table/data-table-parts.d.ts +99 -0
- package/dist/data-table/data-table-parts.js +1182 -0
- package/dist/data-table/data-table-selection.d.ts +7 -3
- package/dist/data-table/data-table-selection.js +62 -37
- package/dist/data-table/data-table.css +100 -95
- package/dist/data-table/data-table.d.ts +49 -25
- package/dist/data-table/data-table.js +95 -83
- package/dist/data-table/data-table.module.js +34 -34
- package/dist/data-table/index.d.ts +2 -1
- package/dist/data-table/index.js +2 -1
- package/dist/data-view/use-data-view.d.ts +2 -2
- package/dist/data-view/use-data-view.js +2 -2
- package/dist/index.js +7 -8
- package/dist/lib/calendar/calendar-navigation.d.ts +9 -2
- package/dist/lib/calendar/calendar-navigation.js +72 -73
- package/dist/lib/calendar/calendar-year.d.ts +4 -3
- package/dist/lib/calendar/calendar-year.js +137 -156
- package/dist/lib/calendar/temporal.d.ts +18 -12
- package/dist/lib/calendar/temporal.js +191 -147
- package/dist/lib/table-storage.d.ts +2 -2
- package/dist/lib/table-storage.js +2 -2
- package/dist/lib/unsaved-changes/leave-guard.js +1 -1
- package/dist/terrazzo/index.d.ts +20 -3
- package/dist/terrazzo/index.js +110 -7
- package/dist/tokens.css +94 -71
- package/package.json +4 -3
- package/tokens/ref.tokens.json +0 -30
- package/tokens/sys.tokens.json +0 -7
- package/dist/assets/spinner.js +0 -28
- package/dist/components/checkbox-field/checkbox-glyph.d.ts +0 -12
- package/dist/components/checkbox-field/checkbox-glyph.js +0 -38
- package/dist/components/combobox-field/combobox-popup-body.d.ts +0 -34
- package/dist/components/combobox-field/combobox-popup-body.js +0 -142
- package/dist/components/conversation/conversation.context.js +0 -4
- package/dist/vendor/@material-design-icons/svg/outlined/add.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/arrow_downward.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/arrow_forward.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/arrow_upward.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/attach_file.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/block.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/calendar_today.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/check.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/check_circle.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/chevron_left.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/chevron_right.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/close.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/content_copy.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/date_range.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/description.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/download.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/error.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/error_outline.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/expand_less.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/expand_more.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/filter_alt.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/filter_alt_off.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/first_page.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/info.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/keyboard_arrow_down.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/last_page.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/mail.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/more_horiz.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/photo_camera.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/remove.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/restart_alt.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/restore.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/search.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/unfold_more.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/upload_file.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/visibility.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/visibility_off.js +0 -12
- package/dist/vendor/@material-design-icons/svg/outlined/warning_amber.js +0 -12
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { normalizeFieldErrors } from "../../lib/forms/errors.js";
|
|
2
2
|
import { formatBytes } from "../../lib/format-bytes.js";
|
|
3
|
-
import {
|
|
3
|
+
import { Field } from "../field/field.js";
|
|
4
4
|
import { useFieldState } from "../field/use-field-state.js";
|
|
5
5
|
import { useLocale } from "../locale-provider/locale-provider.js";
|
|
6
6
|
import { FileInput } from "./file-input.js";
|
|
7
7
|
import { isOversized, oversizedFiles } from "./file-size.js";
|
|
8
8
|
import { isAccepted, wrongTypeFiles } from "./file-type.js";
|
|
9
9
|
import { c } from "react/compiler-runtime";
|
|
10
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
10
11
|
import { useRef } from "react";
|
|
11
|
-
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
12
12
|
import { isFileDropItem } from "react-aria-components";
|
|
13
13
|
// src/components/file-field/file-field.tsx
|
|
14
14
|
/**
|
|
@@ -30,16 +30,17 @@ import { isFileDropItem } from "react-aria-components";
|
|
|
30
30
|
* chooseLabel="Choose files"
|
|
31
31
|
* filesLabel="Files for attachments"
|
|
32
32
|
* removeLabel="Remove"
|
|
33
|
+
* removeIcon={<CloseIcon />}
|
|
33
34
|
* fileHint={(name, size) => `${name} (${size})`}
|
|
34
35
|
* tooLargeError={(name, maxSize) => `${name} is larger than ${maxSize}.`}
|
|
35
36
|
* wrongTypeError={name => `${name} is not an accepted file type.`}
|
|
36
37
|
* />
|
|
37
38
|
*/
|
|
38
39
|
var FileField = (t0) => {
|
|
39
|
-
const $ = c(
|
|
40
|
-
const { label, description, errors, requiredness, optionalLabel, dirty, touched, pending, value, onValueChange, onBlur, maxFileSize, accept, multiple, disabled, readOnly, dropTargetLabel, dropHint, chooseLabel, filesLabel, removeLabel, fileHint, tooLargeError, wrongTypeError, className } = t0;
|
|
40
|
+
const $ = c(93);
|
|
41
|
+
const { label, description, errors, requiredness, optionalLabel, dirty, touched, pending, value, onValueChange, onBlur, maxFileSize, accept, multiple, disabled, readOnly, dropTargetLabel, dropHint, dropIcon, chooseLabel, chooseIcon, filesLabel, removeLabel, removeIcon, fileIcon, fileHint, tooLargeError, wrongTypeError, className } = t0;
|
|
41
42
|
const locale = useLocale();
|
|
42
|
-
const ids =
|
|
43
|
+
const ids = Field.useIds();
|
|
43
44
|
const triggerRef = useRef(null);
|
|
44
45
|
let t1;
|
|
45
46
|
if ($[0] !== accept || $[1] !== errors || $[2] !== locale || $[3] !== maxFileSize || $[4] !== tooLargeError || $[5] !== value || $[6] !== wrongTypeError) {
|
|
@@ -131,8 +132,20 @@ var FileField = (t0) => {
|
|
|
131
132
|
} else t6 = $[31];
|
|
132
133
|
const remove = t6;
|
|
133
134
|
let t7;
|
|
134
|
-
if ($[32] !==
|
|
135
|
-
t7 =
|
|
135
|
+
if ($[32] !== readOnly || $[33] !== removeIcon || $[34] !== removeLabel) {
|
|
136
|
+
t7 = readOnly === true ? {} : {
|
|
137
|
+
removeLabel,
|
|
138
|
+
removeIcon
|
|
139
|
+
};
|
|
140
|
+
$[32] = readOnly;
|
|
141
|
+
$[33] = removeIcon;
|
|
142
|
+
$[34] = removeLabel;
|
|
143
|
+
$[35] = t7;
|
|
144
|
+
} else t7 = $[35];
|
|
145
|
+
const removal = t7;
|
|
146
|
+
let t8;
|
|
147
|
+
if ($[36] !== accept || $[37] !== fieldState.disabled || $[38] !== fileHint || $[39] !== fileIcon || $[40] !== filesLabel || $[41] !== locale || $[42] !== maxFileSize || $[43] !== readOnly || $[44] !== removal || $[45] !== remove || $[46] !== value) {
|
|
148
|
+
t8 = value.length === 0 ? null : /* @__PURE__ */ jsx(FileInput.List, {
|
|
136
149
|
label: filesLabel,
|
|
137
150
|
onRemove: readOnly === true ? void 0 : remove,
|
|
138
151
|
children: value.map((file_3, index_1) => /* @__PURE__ */ jsx(FileInput.Item, {
|
|
@@ -141,55 +154,61 @@ var FileField = (t0) => {
|
|
|
141
154
|
hint: fileHint(file_3.name, formatBytes(file_3.size, locale)),
|
|
142
155
|
invalid: isOversized(file_3, maxFileSize) || !isAccepted(file_3, accept ?? []),
|
|
143
156
|
disabled: fieldState.disabled,
|
|
144
|
-
|
|
157
|
+
icon: fileIcon,
|
|
158
|
+
...removal
|
|
145
159
|
}, keyOf(file_3, index_1)))
|
|
146
160
|
});
|
|
147
|
-
$[
|
|
148
|
-
$[
|
|
149
|
-
$[
|
|
150
|
-
$[
|
|
151
|
-
$[
|
|
152
|
-
$[
|
|
153
|
-
$[
|
|
154
|
-
$[
|
|
155
|
-
$[
|
|
156
|
-
$[
|
|
157
|
-
$[
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
161
|
+
$[36] = accept;
|
|
162
|
+
$[37] = fieldState.disabled;
|
|
163
|
+
$[38] = fileHint;
|
|
164
|
+
$[39] = fileIcon;
|
|
165
|
+
$[40] = filesLabel;
|
|
166
|
+
$[41] = locale;
|
|
167
|
+
$[42] = maxFileSize;
|
|
168
|
+
$[43] = readOnly;
|
|
169
|
+
$[44] = removal;
|
|
170
|
+
$[45] = remove;
|
|
171
|
+
$[46] = value;
|
|
172
|
+
$[47] = t8;
|
|
173
|
+
} else t8 = $[47];
|
|
174
|
+
const tiles = t8;
|
|
175
|
+
let t9;
|
|
176
|
+
if ($[48] !== onBlur) {
|
|
177
|
+
t9 = (event) => {
|
|
163
178
|
if (!(event.relatedTarget instanceof Node && event.currentTarget.contains(event.relatedTarget))) onBlur?.();
|
|
164
179
|
};
|
|
165
|
-
$[
|
|
166
|
-
$[
|
|
167
|
-
} else
|
|
168
|
-
let
|
|
169
|
-
if ($[
|
|
170
|
-
|
|
180
|
+
$[48] = onBlur;
|
|
181
|
+
$[49] = t9;
|
|
182
|
+
} else t9 = $[49];
|
|
183
|
+
let t10;
|
|
184
|
+
if ($[50] !== label || $[51] !== optionalLabel || $[52] !== requiredness) {
|
|
185
|
+
t10 = /* @__PURE__ */ jsx(FileInput.Legend, {
|
|
171
186
|
requiredness,
|
|
172
187
|
optionalLabel,
|
|
173
188
|
children: label
|
|
174
189
|
});
|
|
175
|
-
$[
|
|
176
|
-
$[
|
|
177
|
-
$[
|
|
178
|
-
$[
|
|
179
|
-
} else
|
|
180
|
-
const
|
|
181
|
-
let
|
|
182
|
-
if ($[
|
|
183
|
-
|
|
190
|
+
$[50] = label;
|
|
191
|
+
$[51] = optionalLabel;
|
|
192
|
+
$[52] = requiredness;
|
|
193
|
+
$[53] = t10;
|
|
194
|
+
} else t10 = $[53];
|
|
195
|
+
const t11 = readOnly === true ? _temp2 : void 0;
|
|
196
|
+
let t12;
|
|
197
|
+
if ($[54] !== add) {
|
|
198
|
+
t12 = async (event_0) => {
|
|
184
199
|
add(await Promise.all(event_0.items.filter(isFileDropItem).map(_temp3)));
|
|
185
200
|
};
|
|
186
|
-
$[
|
|
187
|
-
$[
|
|
188
|
-
} else
|
|
189
|
-
let
|
|
190
|
-
if ($[
|
|
191
|
-
|
|
201
|
+
$[54] = add;
|
|
202
|
+
$[55] = t12;
|
|
203
|
+
} else t12 = $[55];
|
|
204
|
+
let t13;
|
|
205
|
+
if ($[56] !== accept || $[57] !== add || $[58] !== chooseIcon || $[59] !== chooseLabel || $[60] !== describedBy || $[61] !== dropHint || $[62] !== dropIcon || $[63] !== field.disabled || $[64] !== field.invalid || $[65] !== multiple || $[66] !== readOnly) {
|
|
206
|
+
t13 = readOnly === true ? null : /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(FileInput.Hint, {
|
|
207
|
+
icon: dropIcon,
|
|
208
|
+
children: dropHint
|
|
209
|
+
}), /* @__PURE__ */ jsx(FileInput.Trigger, {
|
|
192
210
|
label: chooseLabel,
|
|
211
|
+
icon: chooseIcon,
|
|
193
212
|
disabled: field.disabled,
|
|
194
213
|
describedBy,
|
|
195
214
|
buttonRef: triggerRef,
|
|
@@ -198,91 +217,93 @@ var FileField = (t0) => {
|
|
|
198
217
|
acceptedFileTypes: accept,
|
|
199
218
|
onSelect: (files) => add(files === null ? [] : [...files])
|
|
200
219
|
})] });
|
|
201
|
-
$[
|
|
202
|
-
$[
|
|
203
|
-
$[
|
|
204
|
-
$[
|
|
205
|
-
$[
|
|
206
|
-
$[
|
|
207
|
-
$[
|
|
208
|
-
$[
|
|
209
|
-
$[
|
|
210
|
-
$[
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
t13 = field.phase !== "fresh" && /* @__PURE__ */ jsx(FileInput.Pending, {});
|
|
215
|
-
$[61] = field.phase;
|
|
216
|
-
$[62] = t13;
|
|
217
|
-
} else t13 = $[62];
|
|
220
|
+
$[56] = accept;
|
|
221
|
+
$[57] = add;
|
|
222
|
+
$[58] = chooseIcon;
|
|
223
|
+
$[59] = chooseLabel;
|
|
224
|
+
$[60] = describedBy;
|
|
225
|
+
$[61] = dropHint;
|
|
226
|
+
$[62] = dropIcon;
|
|
227
|
+
$[63] = field.disabled;
|
|
228
|
+
$[64] = field.invalid;
|
|
229
|
+
$[65] = multiple;
|
|
230
|
+
$[66] = readOnly;
|
|
231
|
+
$[67] = t13;
|
|
232
|
+
} else t13 = $[67];
|
|
218
233
|
let t14;
|
|
219
|
-
if ($[
|
|
220
|
-
t14 = /* @__PURE__ */
|
|
234
|
+
if ($[68] !== field.phase) {
|
|
235
|
+
t14 = field.phase !== "fresh" && /* @__PURE__ */ jsx(FileInput.Pending, {});
|
|
236
|
+
$[68] = field.phase;
|
|
237
|
+
$[69] = t14;
|
|
238
|
+
} else t14 = $[69];
|
|
239
|
+
let t15;
|
|
240
|
+
if ($[70] !== dropTargetLabel || $[71] !== field.disabled || $[72] !== fieldState || $[73] !== t11 || $[74] !== t12 || $[75] !== t13 || $[76] !== t14 || $[77] !== tiles) {
|
|
241
|
+
t15 = /* @__PURE__ */ jsxs(FileInput.DropTarget, {
|
|
221
242
|
"aria-label": dropTargetLabel,
|
|
222
243
|
state: fieldState,
|
|
223
244
|
isDisabled: field.disabled,
|
|
224
|
-
getDropOperation:
|
|
225
|
-
onDrop:
|
|
245
|
+
getDropOperation: t11,
|
|
246
|
+
onDrop: t12,
|
|
226
247
|
children: [
|
|
227
|
-
|
|
248
|
+
t13,
|
|
228
249
|
tiles,
|
|
229
|
-
|
|
250
|
+
t14
|
|
230
251
|
]
|
|
231
252
|
});
|
|
232
|
-
$[
|
|
233
|
-
$[
|
|
234
|
-
$[
|
|
235
|
-
$[
|
|
236
|
-
$[
|
|
237
|
-
$[
|
|
238
|
-
$[
|
|
239
|
-
$[
|
|
240
|
-
$[
|
|
241
|
-
} else
|
|
242
|
-
let
|
|
243
|
-
if ($[
|
|
244
|
-
|
|
253
|
+
$[70] = dropTargetLabel;
|
|
254
|
+
$[71] = field.disabled;
|
|
255
|
+
$[72] = fieldState;
|
|
256
|
+
$[73] = t11;
|
|
257
|
+
$[74] = t12;
|
|
258
|
+
$[75] = t13;
|
|
259
|
+
$[76] = t14;
|
|
260
|
+
$[77] = tiles;
|
|
261
|
+
$[78] = t15;
|
|
262
|
+
} else t15 = $[78];
|
|
263
|
+
let t16;
|
|
264
|
+
if ($[79] !== description || $[80] !== ids.descriptionId) {
|
|
265
|
+
t16 = /* @__PURE__ */ jsx(FileInput.Description, {
|
|
245
266
|
id: ids.descriptionId,
|
|
246
267
|
children: description
|
|
247
268
|
});
|
|
248
|
-
$[
|
|
249
|
-
$[
|
|
250
|
-
$[
|
|
251
|
-
} else
|
|
252
|
-
let
|
|
253
|
-
if ($[
|
|
254
|
-
|
|
269
|
+
$[79] = description;
|
|
270
|
+
$[80] = ids.descriptionId;
|
|
271
|
+
$[81] = t16;
|
|
272
|
+
} else t16 = $[81];
|
|
273
|
+
let t17;
|
|
274
|
+
if ($[82] !== ids.errorId || $[83] !== messages) {
|
|
275
|
+
t17 = /* @__PURE__ */ jsx(FileInput.Error, {
|
|
255
276
|
id: ids.errorId,
|
|
256
277
|
children: messages
|
|
257
278
|
});
|
|
258
|
-
$[
|
|
259
|
-
$[
|
|
260
|
-
$[
|
|
261
|
-
} else
|
|
262
|
-
let
|
|
263
|
-
if ($[
|
|
264
|
-
|
|
279
|
+
$[82] = ids.errorId;
|
|
280
|
+
$[83] = messages;
|
|
281
|
+
$[84] = t17;
|
|
282
|
+
} else t17 = $[84];
|
|
283
|
+
let t18;
|
|
284
|
+
if ($[85] !== className || $[86] !== fieldState || $[87] !== t10 || $[88] !== t15 || $[89] !== t16 || $[90] !== t17 || $[91] !== t9) {
|
|
285
|
+
t18 = /* @__PURE__ */ jsxs(FileInput.Root, {
|
|
265
286
|
state: fieldState,
|
|
266
287
|
disabled: fieldState.disabled,
|
|
267
288
|
className,
|
|
268
|
-
onBlur:
|
|
289
|
+
onBlur: t9,
|
|
269
290
|
children: [
|
|
270
|
-
|
|
271
|
-
t14,
|
|
291
|
+
t10,
|
|
272
292
|
t15,
|
|
273
|
-
t16
|
|
293
|
+
t16,
|
|
294
|
+
t17
|
|
274
295
|
]
|
|
275
296
|
});
|
|
276
|
-
$[
|
|
277
|
-
$[
|
|
278
|
-
$[
|
|
279
|
-
$[
|
|
280
|
-
$[
|
|
281
|
-
$[
|
|
282
|
-
$[
|
|
283
|
-
$[
|
|
284
|
-
} else
|
|
285
|
-
return
|
|
297
|
+
$[85] = className;
|
|
298
|
+
$[86] = fieldState;
|
|
299
|
+
$[87] = t10;
|
|
300
|
+
$[88] = t15;
|
|
301
|
+
$[89] = t16;
|
|
302
|
+
$[90] = t17;
|
|
303
|
+
$[91] = t9;
|
|
304
|
+
$[92] = t18;
|
|
305
|
+
} else t18 = $[92];
|
|
306
|
+
return t18;
|
|
286
307
|
};
|
|
287
308
|
function _temp(file_1, index) {
|
|
288
309
|
return `${index}-${file_1.name}`;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import './file-field.css';// src/components/file-field/file-field.module.scss
|
|
2
|
-
var dropTarget = "
|
|
3
|
-
var hint = "
|
|
4
|
-
var
|
|
2
|
+
var dropTarget = "_dropTarget_1ap1m_3";
|
|
3
|
+
var hint = "_hint_1ap1m_82";
|
|
4
|
+
var hintIcon = "_hintIcon_1ap1m_92";
|
|
5
|
+
var list = "_list_1ap1m_96";
|
|
5
6
|
var file_field_module_default = {
|
|
6
7
|
dropTarget,
|
|
7
8
|
hint,
|
|
9
|
+
hintIcon,
|
|
8
10
|
list
|
|
9
11
|
};
|
|
10
|
-
export { file_field_module_default as default, dropTarget, hint, list };
|
|
12
|
+
export { file_field_module_default as default, dropTarget, hint, hintIcon, list };
|
|
@@ -5,7 +5,9 @@ export type FileInputRootProps = FieldRootProps & Readonly<{
|
|
|
5
5
|
/** The states projected onto the field as `data-*` attributes. */
|
|
6
6
|
state?: FieldState;
|
|
7
7
|
}>;
|
|
8
|
+
/** The fieldset around the file input, which projects its state as `data-*` attributes. */
|
|
8
9
|
declare const FileInputRoot: ({ state, disabled, ...props }: FileInputRootProps) => ReactNode;
|
|
10
|
+
/** The legend that names the fieldset. */
|
|
9
11
|
declare const FileInputLegend: (props: FieldLabelProps) => ReactNode;
|
|
10
12
|
export type FileInputDropTargetProps = Omit<AriaDropZoneProps, "className" | "aria-label"> & Readonly<{
|
|
11
13
|
/** Accessible name for the drop target, which is not a labelable element. */
|
|
@@ -14,8 +16,14 @@ export type FileInputDropTargetProps = Omit<AriaDropZoneProps, "className" | "ar
|
|
|
14
16
|
state?: FieldState;
|
|
15
17
|
className?: string;
|
|
16
18
|
}>;
|
|
19
|
+
/** The area files are dropped on, holding the hint, the picker button and the staged files. */
|
|
17
20
|
declare const FileInputDropTarget: ({ state, className, ...props }: FileInputDropTargetProps) => ReactNode;
|
|
18
|
-
|
|
21
|
+
export type FileInputHintProps = ComponentProps<"p"> & Readonly<{
|
|
22
|
+
/** Drawn above the prompt, such as an upload icon. */
|
|
23
|
+
icon?: ReactNode;
|
|
24
|
+
}>;
|
|
25
|
+
/** The prompt inside the drop target, with an optional `icon` above it. */
|
|
26
|
+
declare const FileInputHint: ({ className, icon, children, ...props }: FileInputHintProps) => ReactNode;
|
|
19
27
|
export type FileInputTriggerProps = Omit<AriaFileTriggerProps, "children"> & Readonly<{
|
|
20
28
|
/** Visible label on the picker button. */
|
|
21
29
|
label: string;
|
|
@@ -26,8 +34,11 @@ export type FileInputTriggerProps = Omit<AriaFileTriggerProps, "children"> & Rea
|
|
|
26
34
|
buttonRef?: Ref<HTMLButtonElement>;
|
|
27
35
|
/** Marks the picker button as the field's invalid control. */
|
|
28
36
|
invalid?: boolean;
|
|
37
|
+
/** Drawn before the button's label, such as an attach icon. */
|
|
38
|
+
icon?: ReactNode;
|
|
29
39
|
}>;
|
|
30
|
-
|
|
40
|
+
/** The button that opens the file dialog. */
|
|
41
|
+
declare const FileInputTrigger: ({ label, disabled, describedBy, buttonRef, invalid, icon, ...props }: FileInputTriggerProps) => ReactNode;
|
|
31
42
|
export type FileInputListProps = Readonly<{
|
|
32
43
|
/** Accessible name for the group of tiles. */
|
|
33
44
|
label: string;
|
|
@@ -36,7 +47,18 @@ export type FileInputListProps = Readonly<{
|
|
|
36
47
|
children: ReactNode;
|
|
37
48
|
className?: string;
|
|
38
49
|
}>;
|
|
50
|
+
/** The staged files, as a group of removable tiles. */
|
|
39
51
|
declare const FileInputList: ({ label, onRemove, children, className, }: FileInputListProps) => ReactNode;
|
|
52
|
+
/** A tile's remove button: its name and icon together, or neither for a fixed tile. */
|
|
53
|
+
export type FileInputItemRemoval = Readonly<{
|
|
54
|
+
/** Accessible name for the remove button. */
|
|
55
|
+
removeLabel: string;
|
|
56
|
+
/** The remove button's icon, such as a cross. */
|
|
57
|
+
removeIcon: ReactNode;
|
|
58
|
+
}> | Readonly<{
|
|
59
|
+
removeLabel?: undefined;
|
|
60
|
+
removeIcon?: undefined;
|
|
61
|
+
}>;
|
|
40
62
|
export type FileInputItemProps = Readonly<{
|
|
41
63
|
/** Key the surrounding list removes this file by. */
|
|
42
64
|
id: string;
|
|
@@ -46,10 +68,11 @@ export type FileInputItemProps = Readonly<{
|
|
|
46
68
|
/** Marks the tile as rejected, such as over the size limit. */
|
|
47
69
|
invalid?: boolean;
|
|
48
70
|
disabled?: boolean;
|
|
49
|
-
/**
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
|
|
71
|
+
/** Drawn on a tile that has no image preview, such as a file icon. */
|
|
72
|
+
icon?: ReactNode;
|
|
73
|
+
}> & FileInputItemRemoval;
|
|
74
|
+
/** One staged file as an `AttachmentTile`. */
|
|
75
|
+
declare const FileInputItem: ({ invalid, disabled, ...props }: FileInputItemProps) => ReactNode;
|
|
53
76
|
/** The parts of a file input. */
|
|
54
77
|
export type FileInputParts = Readonly<{
|
|
55
78
|
Root: typeof FileInputRoot;
|
|
@@ -73,10 +96,10 @@ export type FileInputParts = Readonly<{
|
|
|
73
96
|
* <FileInput.Root state={{ requiredness: "optional" }}>
|
|
74
97
|
* <FileInput.Legend optionalLabel="optional">Attachments</FileInput.Legend>
|
|
75
98
|
* <FileInput.DropTarget aria-label="Drop zone for attachments" onDrop={onDrop}>
|
|
76
|
-
* <FileInput.Hint>Drag files here</FileInput.Hint>
|
|
77
|
-
* <FileInput.Trigger label="Choose files" onSelect={onSelect} />
|
|
99
|
+
* <FileInput.Hint icon={<UploadFileIcon />}>Drag files here</FileInput.Hint>
|
|
100
|
+
* <FileInput.Trigger label="Choose files" icon={<AttachFileIcon />} onSelect={onSelect} />
|
|
78
101
|
* <FileInput.List label="Files for attachments" onRemove={onRemove}>
|
|
79
|
-
* <FileInput.Item id={id} file={file} hint="invoice.pdf (12 kB)" removeLabel="Remove" />
|
|
102
|
+
* <FileInput.Item id={id} file={file} hint="invoice.pdf (12 kB)" removeLabel="Remove" removeIcon={<CloseIcon />} />
|
|
80
103
|
* </FileInput.List>
|
|
81
104
|
* </FileInput.DropTarget>
|
|
82
105
|
* </FileInput.Root>
|