@igne-agency/react-web-ui 0.0.0-stage → 0.3.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/LICENSE +21 -0
- package/README.md +239 -2
- package/dist/assets/spinner.js +28 -0
- package/dist/base.css +171 -0
- package/dist/components/accordion/accordion.css +93 -0
- package/dist/components/accordion/accordion.d.ts +46 -0
- package/dist/components/accordion/accordion.js +184 -0
- package/dist/components/accordion/accordion.module.js +16 -0
- package/dist/components/accordion/index.d.ts +1 -0
- package/dist/components/accordion/index.js +1 -0
- package/dist/components/active-filters/active-filter-describers.d.ts +62 -0
- package/dist/components/active-filters/active-filter-describers.js +48 -0
- package/dist/components/active-filters/active-filters.d.ts +27 -0
- package/dist/components/active-filters/active-filters.js +96 -0
- package/dist/components/active-filters/index.d.ts +2 -0
- package/dist/components/active-filters/index.js +3 -0
- package/dist/components/attachment-tile/attachment-preview.d.ts +33 -0
- package/dist/components/attachment-tile/attachment-preview.js +181 -0
- package/dist/components/attachment-tile/attachment-tile.css +92 -0
- package/dist/components/attachment-tile/attachment-tile.d.ts +51 -0
- package/dist/components/attachment-tile/attachment-tile.js +126 -0
- package/dist/components/attachment-tile/attachment-tile.module.js +20 -0
- package/dist/components/attachment-tile/index.d.ts +2 -0
- package/dist/components/attachment-tile/index.js +3 -0
- package/dist/components/avatar/avatar.css +48 -0
- package/dist/components/avatar/avatar.d.ts +19 -0
- package/dist/components/avatar/avatar.js +98 -0
- package/dist/components/avatar/avatar.module.js +10 -0
- package/dist/components/avatar/index.d.ts +1 -0
- package/dist/components/avatar/index.js +1 -0
- package/dist/components/avatar-group/avatar-group-context.d.ts +15 -0
- package/dist/components/avatar-group/avatar-group-context.js +14 -0
- package/dist/components/avatar-group/avatar-group.css +62 -0
- package/dist/components/avatar-group/avatar-group.d.ts +96 -0
- package/dist/components/avatar-group/avatar-group.js +519 -0
- package/dist/components/avatar-group/avatar-group.module.js +20 -0
- package/dist/components/avatar-group/index.d.ts +1 -0
- package/dist/components/avatar-group/index.js +1 -0
- package/dist/components/badge/badge.css +101 -0
- package/dist/components/badge/badge.d.ts +17 -0
- package/dist/components/badge/badge.js +61 -0
- package/dist/components/badge/badge.module.js +4 -0
- package/dist/components/badge/index.d.ts +1 -0
- package/dist/components/badge/index.js +1 -0
- package/dist/components/breadcrumbs/breadcrumbs.css +57 -0
- package/dist/components/breadcrumbs/breadcrumbs.d.ts +105 -0
- package/dist/components/breadcrumbs/breadcrumbs.js +710 -0
- package/dist/components/breadcrumbs/breadcrumbs.module.js +20 -0
- package/dist/components/breadcrumbs/index.d.ts +2 -0
- package/dist/components/breadcrumbs/index.js +3 -0
- package/dist/components/breadcrumbs/use-fold.d.ts +34 -0
- package/dist/components/breadcrumbs/use-fold.js +73 -0
- package/dist/components/button/button-attributes.d.ts +23 -0
- package/dist/components/button/button-attributes.js +17 -0
- package/dist/components/button/button.css +111 -0
- package/dist/components/button/button.d.ts +47 -0
- package/dist/components/button/button.js +210 -0
- package/dist/components/button/button.module.js +4 -0
- package/dist/components/button/close-button.d.ts +14 -0
- package/dist/components/button/close-button.js +30 -0
- package/dist/components/button/index.d.ts +1 -0
- package/dist/components/button/index.js +1 -0
- package/dist/components/checkbox-field/checkbox-field.d.ts +21 -0
- package/dist/components/checkbox-field/checkbox-field.js +181 -0
- package/dist/components/checkbox-field/checkbox-glyph.d.ts +12 -0
- package/dist/components/checkbox-field/checkbox-glyph.js +38 -0
- package/dist/components/checkbox-field/checkbox.css +128 -0
- package/dist/components/checkbox-field/checkbox.d.ts +14 -0
- package/dist/components/checkbox-field/checkbox.js +91 -0
- package/dist/components/checkbox-field/checkbox.module.js +14 -0
- package/dist/components/checkbox-field/index.d.ts +4 -0
- package/dist/components/checkbox-field/index.js +5 -0
- package/dist/components/checkbox-field/tsf-checkbox-field.d.ts +14 -0
- package/dist/components/checkbox-field/tsf-checkbox-field.js +40 -0
- package/dist/components/checkbox-group-field/checkbox-group-field.d.ts +33 -0
- package/dist/components/checkbox-group-field/checkbox-group-field.js +128 -0
- package/dist/components/checkbox-group-field/checkbox-group.css +31 -0
- package/dist/components/checkbox-group-field/checkbox-group.d.ts +38 -0
- package/dist/components/checkbox-group-field/checkbox-group.js +102 -0
- package/dist/components/checkbox-group-field/checkbox-group.module.js +8 -0
- package/dist/components/checkbox-group-field/index.d.ts +3 -0
- package/dist/components/checkbox-group-field/index.js +4 -0
- package/dist/components/checkbox-group-field/tsf-checkbox-group-field.d.ts +15 -0
- package/dist/components/checkbox-group-field/tsf-checkbox-group-field.js +41 -0
- package/dist/components/collapsible/collapsible.css +88 -0
- package/dist/components/collapsible/collapsible.d.ts +33 -0
- package/dist/components/collapsible/collapsible.js +146 -0
- package/dist/components/collapsible/collapsible.module.js +14 -0
- package/dist/components/collapsible/index.d.ts +1 -0
- package/dist/components/collapsible/index.js +1 -0
- package/dist/components/combobox-field/combobox-field.d.ts +66 -0
- package/dist/components/combobox-field/combobox-field.js +527 -0
- package/dist/components/combobox-field/combobox-items.d.ts +80 -0
- package/dist/components/combobox-field/combobox-items.js +27 -0
- package/dist/components/combobox-field/combobox-popup-body.d.ts +34 -0
- package/dist/components/combobox-field/combobox-popup-body.js +142 -0
- package/dist/components/combobox-field/combobox.css +535 -0
- package/dist/components/combobox-field/combobox.d.ts +105 -0
- package/dist/components/combobox-field/combobox.js +642 -0
- package/dist/components/combobox-field/combobox.module.js +46 -0
- package/dist/components/combobox-field/index.d.ts +7 -0
- package/dist/components/combobox-field/index.js +4 -0
- package/dist/components/combobox-field/item-lookups.d.ts +18 -0
- package/dist/components/combobox-field/item-lookups.js +8 -0
- package/dist/components/combobox-field/react-query.d.ts +15 -0
- package/dist/components/combobox-field/react-query.js +78 -0
- package/dist/components/combobox-field/selection.d.ts +50 -0
- package/dist/components/combobox-field/selection.js +38 -0
- package/dist/components/combobox-field/tsf-combobox-field.d.ts +33 -0
- package/dist/components/combobox-field/tsf-combobox-field.js +88 -0
- package/dist/components/combobox-field/value-state-view.css +21 -0
- package/dist/components/combobox-field/value-state-view.d.ts +35 -0
- package/dist/components/combobox-field/value-state-view.js +107 -0
- package/dist/components/combobox-field/value-state-view.module.js +10 -0
- package/dist/components/combobox-field/value-state.d.ts +49 -0
- package/dist/components/combobox-field/value-state.js +38 -0
- package/dist/components/composer/composer-attachments.d.ts +31 -0
- package/dist/components/composer/composer-attachments.js +158 -0
- package/dist/components/composer/composer-editor.css +104 -0
- package/dist/components/composer/composer-editor.d.ts +15 -0
- package/dist/components/composer/composer-editor.js +165 -0
- package/dist/components/composer/composer-editor.module.js +14 -0
- package/dist/components/composer/composer-mentions.d.ts +10 -0
- package/dist/components/composer/composer-mentions.js +294 -0
- package/dist/components/composer/composer.context.d.ts +56 -0
- package/dist/components/composer/composer.context.js +14 -0
- package/dist/components/composer/composer.css +81 -0
- package/dist/components/composer/composer.d.ts +77 -0
- package/dist/components/composer/composer.handle.d.ts +31 -0
- package/dist/components/composer/composer.handle.js +41 -0
- package/dist/components/composer/composer.js +428 -0
- package/dist/components/composer/composer.module.js +14 -0
- package/dist/components/composer/editor-behavior.d.ts +2 -0
- package/dist/components/composer/editor-behavior.js +99 -0
- package/dist/components/composer/index.d.ts +8 -0
- package/dist/components/composer/index.js +3 -0
- package/dist/components/composer/mention-node.d.ts +44 -0
- package/dist/components/composer/mention-node.js +71 -0
- package/dist/components/composer/mention-sources.d.ts +14 -0
- package/dist/components/composer/mention-text.css +14 -0
- package/dist/components/composer/mention-text.d.ts +66 -0
- package/dist/components/composer/mention-text.js +95 -0
- package/dist/components/composer/mention-text.module.js +4 -0
- package/dist/components/confirm-dialog/confirm-dialog.css +68 -0
- package/dist/components/confirm-dialog/confirm-dialog.d.ts +75 -0
- package/dist/components/confirm-dialog/confirm-dialog.js +399 -0
- package/dist/components/confirm-dialog/confirm-dialog.module.js +14 -0
- package/dist/components/confirm-dialog/index.d.ts +1 -0
- package/dist/components/confirm-dialog/index.js +1 -0
- package/dist/components/conversation/conversation.context.d.ts +9 -0
- package/dist/components/conversation/conversation.context.js +4 -0
- package/dist/components/conversation/conversation.css +143 -0
- package/dist/components/conversation/conversation.d.ts +126 -0
- package/dist/components/conversation/conversation.js +761 -0
- package/dist/components/conversation/conversation.module.js +34 -0
- package/dist/components/conversation/group-messages.d.ts +34 -0
- package/dist/components/conversation/group-messages.js +64 -0
- package/dist/components/conversation/index.d.ts +4 -0
- package/dist/components/conversation/index.js +3 -0
- package/dist/components/conversation/moment.d.ts +11 -0
- package/dist/components/conversation/moment.js +15 -0
- package/dist/components/date-field/date-field.d.ts +45 -0
- package/dist/components/date-field/date-field.js +162 -0
- package/dist/components/date-field/date-input.d.ts +46 -0
- package/dist/components/date-field/date-input.js +109 -0
- package/dist/components/date-field/index.d.ts +4 -0
- package/dist/components/date-field/index.js +4 -0
- package/dist/components/date-field/tsf-date-field.d.ts +14 -0
- package/dist/components/date-field/tsf-date-field.js +40 -0
- package/dist/components/date-range-field/date-range-field.d.ts +53 -0
- package/dist/components/date-range-field/date-range-field.js +167 -0
- package/dist/components/date-range-field/date-range-input.d.ts +51 -0
- package/dist/components/date-range-field/date-range-input.js +109 -0
- package/dist/components/date-range-field/index.d.ts +4 -0
- package/dist/components/date-range-field/index.js +5 -0
- package/dist/components/date-range-field/tsf-date-range-field.d.ts +15 -0
- package/dist/components/date-range-field/tsf-date-range-field.js +58 -0
- package/dist/components/detail-list/detail-list.css +32 -0
- package/dist/components/detail-list/detail-list.d.ts +41 -0
- package/dist/components/detail-list/detail-list.js +163 -0
- package/dist/components/detail-list/detail-list.module.js +14 -0
- package/dist/components/detail-list/index.d.ts +1 -0
- package/dist/components/detail-list/index.js +1 -0
- package/dist/components/dialog/dialog.css +78 -0
- package/dist/components/dialog/dialog.d.ts +59 -0
- package/dist/components/dialog/dialog.js +245 -0
- package/dist/components/dialog/dialog.module.js +16 -0
- package/dist/components/dialog/index.d.ts +1 -0
- package/dist/components/dialog/index.js +1 -0
- package/dist/components/divider/divider.css +16 -0
- package/dist/components/divider/divider.d.ts +13 -0
- package/dist/components/divider/divider.js +47 -0
- package/dist/components/divider/divider.module.js +10 -0
- package/dist/components/divider/index.d.ts +1 -0
- package/dist/components/divider/index.js +1 -0
- package/dist/components/drawer/drawer.css +168 -0
- package/dist/components/drawer/drawer.d.ts +65 -0
- package/dist/components/drawer/drawer.js +219 -0
- package/dist/components/drawer/drawer.module.js +16 -0
- package/dist/components/drawer/index.d.ts +1 -0
- package/dist/components/drawer/index.js +1 -0
- package/dist/components/email-field/email-field.d.ts +11 -0
- package/dist/components/email-field/email-field.js +45 -0
- package/dist/components/email-field/index.d.ts +2 -0
- package/dist/components/email-field/index.js +3 -0
- package/dist/components/email-field/tsf-email-field.d.ts +13 -0
- package/dist/components/email-field/tsf-email-field.js +14 -0
- package/dist/components/empty-message/empty-message.d.ts +16 -0
- package/dist/components/empty-message/empty-message.js +31 -0
- package/dist/components/empty-message/index.d.ts +1 -0
- package/dist/components/empty-message/index.js +1 -0
- package/dist/components/error-boundary/error-boundary.d.ts +43 -0
- package/dist/components/error-boundary/error-boundary.js +60 -0
- package/dist/components/error-boundary/index.d.ts +1 -0
- package/dist/components/error-boundary/index.js +1 -0
- package/dist/components/error-message/error-message.d.ts +15 -0
- package/dist/components/error-message/error-message.js +30 -0
- package/dist/components/error-message/index.d.ts +1 -0
- package/dist/components/error-message/index.js +1 -0
- package/dist/components/error-text/error-cascade.d.ts +32 -0
- package/dist/components/error-text/error-cascade.js +49 -0
- package/dist/components/error-text/error-text.css +27 -0
- package/dist/components/error-text/error-text.d.ts +22 -0
- package/dist/components/error-text/error-text.js +139 -0
- package/dist/components/error-text/error-text.module.js +11 -0
- package/dist/components/error-text/index.d.ts +1 -0
- package/dist/components/error-text/index.js +1 -0
- package/dist/components/field/choice-option.d.ts +11 -0
- package/dist/components/field/field-group-context.d.ts +21 -0
- package/dist/components/field/field-group-context.js +38 -0
- package/dist/components/field/field-state.d.ts +51 -0
- package/dist/components/field/field-state.js +28 -0
- package/dist/components/field/field.css +69 -0
- package/dist/components/field/field.d.ts +186 -0
- package/dist/components/field/field.js +477 -0
- package/dist/components/field/field.module.js +22 -0
- package/dist/components/field/hidden-input.d.ts +8 -0
- package/dist/components/field/hidden-input.js +12 -0
- package/dist/components/field/index.d.ts +6 -0
- package/dist/components/field/index.js +6 -0
- package/dist/components/field/input-parts.d.ts +49 -0
- package/dist/components/field/input-parts.js +94 -0
- package/dist/components/field/options-load.d.ts +54 -0
- package/dist/components/field/options-load.js +38 -0
- package/dist/components/field/rim-focus.d.ts +10 -0
- package/dist/components/field/rim-focus.js +23 -0
- package/dist/components/field/use-field-focus.d.ts +37 -0
- package/dist/components/field/use-field-focus.js +71 -0
- package/dist/components/field/use-field-state.d.ts +32 -0
- package/dist/components/field/use-field-state.js +77 -0
- package/dist/components/field-placeholder/field-placeholder.css +22 -0
- package/dist/components/field-placeholder/field-placeholder.d.ts +10 -0
- package/dist/components/field-placeholder/field-placeholder.js +54 -0
- package/dist/components/field-placeholder/field-placeholder.module.js +12 -0
- package/dist/components/field-placeholder/index.d.ts +1 -0
- package/dist/components/field-placeholder/index.js +1 -0
- package/dist/components/fieldset/field-group.d.ts +31 -0
- package/dist/components/fieldset/field-group.js +102 -0
- package/dist/components/fieldset/fieldset-root.d.ts +60 -0
- package/dist/components/fieldset/fieldset-root.js +285 -0
- package/dist/components/fieldset/fieldset.css +21 -0
- package/dist/components/fieldset/fieldset.d.ts +37 -0
- package/dist/components/fieldset/fieldset.js +127 -0
- package/dist/components/fieldset/fieldset.module.js +8 -0
- package/dist/components/fieldset/index.d.ts +4 -0
- package/dist/components/fieldset/index.js +4 -0
- package/dist/components/fieldset/tsf-field-group.d.ts +21 -0
- package/dist/components/fieldset/tsf-field-group.js +58 -0
- package/dist/components/file-field/file-field.css +101 -0
- package/dist/components/file-field/file-field.d.ts +59 -0
- package/dist/components/file-field/file-field.js +296 -0
- package/dist/components/file-field/file-field.module.js +10 -0
- package/dist/components/file-field/file-input.d.ts +85 -0
- package/dist/components/file-field/file-input.js +334 -0
- package/dist/components/file-field/file-size.d.ts +21 -0
- package/dist/components/file-field/file-size.js +18 -0
- package/dist/components/file-field/file-type.d.ts +21 -0
- package/dist/components/file-field/file-type.js +28 -0
- package/dist/components/file-field/index.d.ts +3 -0
- package/dist/components/file-field/index.js +4 -0
- package/dist/components/file-field/tsf-file-field.d.ts +14 -0
- package/dist/components/file-field/tsf-file-field.js +48 -0
- package/dist/components/filter-bar/filter-bar.css +34 -0
- package/dist/components/filter-bar/filter-bar.d.ts +87 -0
- package/dist/components/filter-bar/filter-bar.js +311 -0
- package/dist/components/filter-bar/filter-bar.module.js +14 -0
- package/dist/components/filter-bar/index.d.ts +2 -0
- package/dist/components/filter-bar/index.js +3 -0
- package/dist/components/filter-bar/use-filter-view.d.ts +86 -0
- package/dist/components/filter-bar/use-filter-view.js +219 -0
- package/dist/components/form/first-invalid.d.ts +10 -0
- package/dist/components/form/first-invalid.js +31 -0
- package/dist/components/form/form-context.d.ts +23 -0
- package/dist/components/form/form-context.js +28 -0
- package/dist/components/form/form.css +14 -0
- package/dist/components/form/form.d.ts +68 -0
- package/dist/components/form/form.js +317 -0
- package/dist/components/form/form.module.js +8 -0
- package/dist/components/form/index.d.ts +2 -0
- package/dist/components/form/index.js +3 -0
- package/dist/components/icon/icon.css +9 -0
- package/dist/components/icon/icon.d.ts +31 -0
- package/dist/components/icon/icon.js +61 -0
- package/dist/components/icon/icon.module.js +4 -0
- package/dist/components/icon/index.d.ts +1 -0
- package/dist/components/icon/index.js +1 -0
- package/dist/components/link/index.d.ts +1 -0
- package/dist/components/link/index.js +1 -0
- package/dist/components/link/link.css +18 -0
- package/dist/components/link/link.d.ts +11 -0
- package/dist/components/link/link.js +45 -0
- package/dist/components/link/link.module.js +4 -0
- package/dist/components/link-button/index.d.ts +1 -0
- package/dist/components/link-button/index.js +1 -0
- package/dist/components/link-button/link-button.d.ts +23 -0
- package/dist/components/link-button/link-button.js +80 -0
- package/dist/components/loading-message/index.d.ts +1 -0
- package/dist/components/loading-message/index.js +1 -0
- package/dist/components/loading-message/loading-message.d.ts +22 -0
- package/dist/components/loading-message/loading-message.js +55 -0
- package/dist/components/locale-provider/index.d.ts +1 -0
- package/dist/components/locale-provider/index.js +1 -0
- package/dist/components/locale-provider/locale-provider.d.ts +22 -0
- package/dist/components/locale-provider/locale-provider.js +50 -0
- package/dist/components/menu/index.d.ts +1 -0
- package/dist/components/menu/index.js +1 -0
- package/dist/components/menu/menu.css +122 -0
- package/dist/components/menu/menu.d.ts +78 -0
- package/dist/components/menu/menu.js +382 -0
- package/dist/components/menu/menu.module.js +20 -0
- package/dist/components/nav/index.d.ts +3 -0
- package/dist/components/nav/index.js +3 -0
- package/dist/components/nav/nav-context.d.ts +17 -0
- package/dist/components/nav/nav-context.js +5 -0
- package/dist/components/nav/nav-item-view.d.ts +63 -0
- package/dist/components/nav/nav-item-view.js +243 -0
- package/dist/components/nav/nav.css +310 -0
- package/dist/components/nav/nav.d.ts +87 -0
- package/dist/components/nav/nav.js +481 -0
- package/dist/components/nav/nav.module.js +32 -0
- package/dist/components/number-field/index.d.ts +4 -0
- package/dist/components/number-field/index.js +5 -0
- package/dist/components/number-field/number-field-formats.d.ts +24 -0
- package/dist/components/number-field/number-field-formats.js +43 -0
- package/dist/components/number-field/number-field.css +116 -0
- package/dist/components/number-field/number-field.d.ts +34 -0
- package/dist/components/number-field/number-field.js +168 -0
- package/dist/components/number-field/number-field.module.js +16 -0
- package/dist/components/number-field/number-input.d.ts +76 -0
- package/dist/components/number-field/number-input.js +383 -0
- package/dist/components/number-field/tsf-number-field.d.ts +14 -0
- package/dist/components/number-field/tsf-number-field.js +34 -0
- package/dist/components/otp-field/index.d.ts +3 -0
- package/dist/components/otp-field/index.js +4 -0
- package/dist/components/otp-field/otp-field.css +97 -0
- package/dist/components/otp-field/otp-field.d.ts +22 -0
- package/dist/components/otp-field/otp-field.js +91 -0
- package/dist/components/otp-field/otp-field.module.js +12 -0
- package/dist/components/otp-field/otp-input-context.d.ts +27 -0
- package/dist/components/otp-field/otp-input-context.js +15 -0
- package/dist/components/otp-field/otp-input.d.ts +76 -0
- package/dist/components/otp-field/otp-input.js +341 -0
- package/dist/components/otp-field/tsf-otp-field.d.ts +14 -0
- package/dist/components/otp-field/tsf-otp-field.js +34 -0
- package/dist/components/pagination/index.d.ts +1 -0
- package/dist/components/pagination/index.js +1 -0
- package/dist/components/pagination/pagination-context.d.ts +23 -0
- package/dist/components/pagination/pagination-context.js +14 -0
- package/dist/components/pagination/pagination.css +24 -0
- package/dist/components/pagination/pagination.d.ts +60 -0
- package/dist/components/pagination/pagination.js +341 -0
- package/dist/components/pagination/pagination.module.js +12 -0
- package/dist/components/password-field/index.d.ts +4 -0
- package/dist/components/password-field/index.js +4 -0
- package/dist/components/password-field/password-field.css +66 -0
- package/dist/components/password-field/password-field.d.ts +44 -0
- package/dist/components/password-field/password-field.js +227 -0
- package/dist/components/password-field/password-field.module.js +20 -0
- package/dist/components/password-field/password-strength.d.ts +27 -0
- package/dist/components/password-field/password-strength.js +124 -0
- package/dist/components/password-field/tsf-password-field.d.ts +14 -0
- package/dist/components/password-field/tsf-password-field.js +34 -0
- package/dist/components/phone-field/index.d.ts +2 -0
- package/dist/components/phone-field/index.js +3 -0
- package/dist/components/phone-field/phone-field.d.ts +14 -0
- package/dist/components/phone-field/phone-field.js +29 -0
- package/dist/components/phone-field/tsf-phone-field.d.ts +14 -0
- package/dist/components/phone-field/tsf-phone-field.js +14 -0
- package/dist/components/photo-field/index.d.ts +3 -0
- package/dist/components/photo-field/index.js +4 -0
- package/dist/components/photo-field/photo-field.d.ts +29 -0
- package/dist/components/photo-field/photo-field.js +183 -0
- package/dist/components/photo-field/photo-input.css +113 -0
- package/dist/components/photo-field/photo-input.d.ts +63 -0
- package/dist/components/photo-field/photo-input.js +327 -0
- package/dist/components/photo-field/photo-input.module.js +18 -0
- package/dist/components/photo-field/tsf-photo-field.d.ts +19 -0
- package/dist/components/photo-field/tsf-photo-field.js +56 -0
- package/dist/components/popover/index.d.ts +1 -0
- package/dist/components/popover/index.js +1 -0
- package/dist/components/popover/popover.css +120 -0
- package/dist/components/popover/popover.d.ts +72 -0
- package/dist/components/popover/popover.js +434 -0
- package/dist/components/popover/popover.module.js +34 -0
- package/dist/components/radio-group-field/index.d.ts +3 -0
- package/dist/components/radio-group-field/index.js +4 -0
- package/dist/components/radio-group-field/radio-group-field.d.ts +26 -0
- package/dist/components/radio-group-field/radio-group-field.js +128 -0
- package/dist/components/radio-group-field/radio-group.css +116 -0
- package/dist/components/radio-group-field/radio-group.d.ts +38 -0
- package/dist/components/radio-group-field/radio-group.js +158 -0
- package/dist/components/radio-group-field/radio-group.module.js +12 -0
- package/dist/components/radio-group-field/tsf-radio-group-field.d.ts +15 -0
- package/dist/components/radio-group-field/tsf-radio-group-field.js +41 -0
- package/dist/components/search-field/index.d.ts +2 -0
- package/dist/components/search-field/index.js +3 -0
- package/dist/components/search-field/search-field.d.ts +17 -0
- package/dist/components/search-field/search-field.js +45 -0
- package/dist/components/search-field/tsf-search-field.d.ts +14 -0
- package/dist/components/search-field/tsf-search-field.js +14 -0
- package/dist/components/segmented-control-field/index.d.ts +3 -0
- package/dist/components/segmented-control-field/index.js +4 -0
- package/dist/components/segmented-control-field/segmented-control-field.d.ts +32 -0
- package/dist/components/segmented-control-field/segmented-control-field.js +166 -0
- package/dist/components/segmented-control-field/segmented-control.css +203 -0
- package/dist/components/segmented-control-field/segmented-control.d.ts +58 -0
- package/dist/components/segmented-control-field/segmented-control.js +209 -0
- package/dist/components/segmented-control-field/segmented-control.module.js +12 -0
- package/dist/components/segmented-control-field/tsf-segmented-control-field.d.ts +15 -0
- package/dist/components/segmented-control-field/tsf-segmented-control-field.js +41 -0
- package/dist/components/select-field/index.d.ts +3 -0
- package/dist/components/select-field/index.js +4 -0
- package/dist/components/select-field/select-context.d.ts +20 -0
- package/dist/components/select-field/select-context.js +15 -0
- package/dist/components/select-field/select-field.d.ts +32 -0
- package/dist/components/select-field/select-field.js +312 -0
- package/dist/components/select-field/select.css +233 -0
- package/dist/components/select-field/select.d.ts +78 -0
- package/dist/components/select-field/select.js +529 -0
- package/dist/components/select-field/select.module.js +30 -0
- package/dist/components/select-field/tsf-select-field.d.ts +15 -0
- package/dist/components/select-field/tsf-select-field.js +41 -0
- package/dist/components/skeleton/index.d.ts +1 -0
- package/dist/components/skeleton/index.js +1 -0
- package/dist/components/skeleton/skeleton.css +16 -0
- package/dist/components/skeleton/skeleton.d.ts +13 -0
- package/dist/components/skeleton/skeleton.js +34 -0
- package/dist/components/skeleton/skeleton.module.js +9 -0
- package/dist/components/spinner/index.d.ts +1 -0
- package/dist/components/spinner/index.js +1 -0
- package/dist/components/spinner/spinner.css +7 -0
- package/dist/components/spinner/spinner.d.ts +15 -0
- package/dist/components/spinner/spinner.js +50 -0
- package/dist/components/spinner/spinner.module.js +4 -0
- package/dist/components/stale/index.d.ts +1 -0
- package/dist/components/stale/index.js +1 -0
- package/dist/components/stale/stale.css +60 -0
- package/dist/components/stale/stale.d.ts +68 -0
- package/dist/components/stale/stale.js +231 -0
- package/dist/components/stale/stale.module.js +16 -0
- package/dist/components/status-message/index.d.ts +1 -0
- package/dist/components/status-message/index.js +1 -0
- package/dist/components/status-message/status-message.css +122 -0
- package/dist/components/status-message/status-message.d.ts +72 -0
- package/dist/components/status-message/status-message.js +182 -0
- package/dist/components/status-message/status-message.module.js +16 -0
- package/dist/components/status-message/status-preset.d.ts +26 -0
- package/dist/components/status-message/status-preset.js +64 -0
- package/dist/components/switch-field/index.d.ts +3 -0
- package/dist/components/switch-field/index.js +4 -0
- package/dist/components/switch-field/switch-field.d.ts +23 -0
- package/dist/components/switch-field/switch-field.js +142 -0
- package/dist/components/switch-field/switch.css +145 -0
- package/dist/components/switch-field/switch.d.ts +35 -0
- package/dist/components/switch-field/switch.js +207 -0
- package/dist/components/switch-field/switch.module.js +12 -0
- package/dist/components/switch-field/tsf-switch-field.d.ts +14 -0
- package/dist/components/switch-field/tsf-switch-field.js +40 -0
- package/dist/components/tabs/index.d.ts +1 -0
- package/dist/components/tabs/index.js +1 -0
- package/dist/components/tabs/tabs.css +122 -0
- package/dist/components/tabs/tabs.d.ts +57 -0
- package/dist/components/tabs/tabs.js +194 -0
- package/dist/components/tabs/tabs.module.js +18 -0
- package/dist/components/tag/index.d.ts +1 -0
- package/dist/components/tag/index.js +1 -0
- package/dist/components/tag/tag.css +120 -0
- package/dist/components/tag/tag.d.ts +36 -0
- package/dist/components/tag/tag.js +124 -0
- package/dist/components/tag/tag.module.js +10 -0
- package/dist/components/tag-group/index.d.ts +1 -0
- package/dist/components/tag-group/index.js +1 -0
- package/dist/components/tag-group/tag-group.css +155 -0
- package/dist/components/tag-group/tag-group.d.ts +53 -0
- package/dist/components/tag-group/tag-group.js +182 -0
- package/dist/components/tag-group/tag-group.module.js +12 -0
- package/dist/components/text-field/connect-text-preset.d.ts +13 -0
- package/dist/components/text-field/connect-text-preset.js +34 -0
- package/dist/components/text-field/index.d.ts +5 -0
- package/dist/components/text-field/index.js +5 -0
- package/dist/components/text-field/text-field.css +171 -0
- package/dist/components/text-field/text-field.d.ts +57 -0
- package/dist/components/text-field/text-field.js +247 -0
- package/dist/components/text-field/text-field.module.js +22 -0
- package/dist/components/text-field/text-input-context.d.ts +28 -0
- package/dist/components/text-field/text-input-context.js +16 -0
- package/dist/components/text-field/text-input.d.ts +79 -0
- package/dist/components/text-field/text-input.js +588 -0
- package/dist/components/text-field/text-preset.d.ts +7 -0
- package/dist/components/text-field/tsf-text-field.d.ts +14 -0
- package/dist/components/text-field/tsf-text-field.js +34 -0
- package/dist/components/textarea-field/index.d.ts +3 -0
- package/dist/components/textarea-field/index.js +4 -0
- package/dist/components/textarea-field/textarea-field.css +12 -0
- package/dist/components/textarea-field/textarea-field.d.ts +19 -0
- package/dist/components/textarea-field/textarea-field.js +168 -0
- package/dist/components/textarea-field/textarea-field.module.js +8 -0
- package/dist/components/textarea-field/textarea.d.ts +19 -0
- package/dist/components/textarea-field/textarea.js +108 -0
- package/dist/components/textarea-field/tsf-textarea-field.d.ts +14 -0
- package/dist/components/textarea-field/tsf-textarea-field.js +34 -0
- package/dist/components/textarea-field/use-autosize.d.ts +11 -0
- package/dist/components/textarea-field/use-autosize.js +65 -0
- package/dist/components/time-field/index.d.ts +3 -0
- package/dist/components/time-field/index.js +4 -0
- package/dist/components/time-field/time-field.d.ts +25 -0
- package/dist/components/time-field/time-field.js +115 -0
- package/dist/components/time-field/time-input.d.ts +30 -0
- package/dist/components/time-field/time-input.js +66 -0
- package/dist/components/time-field/tsf-time-field.d.ts +14 -0
- package/dist/components/time-field/tsf-time-field.js +40 -0
- package/dist/components/time-zone-provider/index.d.ts +1 -0
- package/dist/components/time-zone-provider/index.js +1 -0
- package/dist/components/time-zone-provider/time-zone-provider.d.ts +22 -0
- package/dist/components/time-zone-provider/time-zone-provider.js +39 -0
- package/dist/components/toast/index.d.ts +2 -0
- package/dist/components/toast/index.js +3 -0
- package/dist/components/toast/toast-provider.css +99 -0
- package/dist/components/toast/toast-provider.d.ts +18 -0
- package/dist/components/toast/toast-provider.js +203 -0
- package/dist/components/toast/toast-provider.module.js +24 -0
- package/dist/components/toast/toast.d.ts +79 -0
- package/dist/components/toast/toast.js +68 -0
- package/dist/components/toggle-group-field/index.d.ts +3 -0
- package/dist/components/toggle-group-field/index.js +4 -0
- package/dist/components/toggle-group-field/toggle-group-field.d.ts +32 -0
- package/dist/components/toggle-group-field/toggle-group-field.js +158 -0
- package/dist/components/toggle-group-field/toggle-group.css +148 -0
- package/dist/components/toggle-group-field/toggle-group.d.ts +44 -0
- package/dist/components/toggle-group-field/toggle-group.js +156 -0
- package/dist/components/toggle-group-field/toggle-group.module.js +8 -0
- package/dist/components/toggle-group-field/tsf-toggle-group-field.d.ts +15 -0
- package/dist/components/toggle-group-field/tsf-toggle-group-field.js +41 -0
- package/dist/components/tooltip/index.d.ts +1 -0
- package/dist/components/tooltip/index.js +1 -0
- package/dist/components/tooltip/tooltip.css +22 -0
- package/dist/components/tooltip/tooltip.d.ts +46 -0
- package/dist/components/tooltip/tooltip.js +175 -0
- package/dist/components/tooltip/tooltip.module.js +4 -0
- package/dist/data-table/data-table-content.d.ts +27 -0
- package/dist/data-table/data-table-content.js +311 -0
- package/dist/data-table/data-table-context.d.ts +33 -0
- package/dist/data-table/data-table-context.js +31 -0
- package/dist/data-table/data-table-selection.d.ts +42 -0
- package/dist/data-table/data-table-selection.js +299 -0
- package/dist/data-table/data-table.css +515 -0
- package/dist/data-table/data-table.d.ts +93 -0
- package/dist/data-table/data-table.js +215 -0
- package/dist/data-table/data-table.module.js +68 -0
- package/dist/data-table/index.d.ts +6 -0
- package/dist/data-table/index.js +5 -0
- package/dist/data-table/resolve-view.d.ts +31 -0
- package/dist/data-table/resolve-view.js +37 -0
- package/dist/data-table/table-features.d.ts +69 -0
- package/dist/data-table/table-features.js +41 -0
- package/dist/data-table/use-sticky-offsets.d.ts +21 -0
- package/dist/data-table/use-sticky-offsets.js +86 -0
- package/dist/data-view/index.d.ts +1 -0
- package/dist/data-view/index.js +1 -0
- package/dist/data-view/use-data-view.d.ts +83 -0
- package/dist/data-view/use-data-view.js +135 -0
- package/dist/index.d.ts +70 -0
- package/dist/index.js +136 -0
- package/dist/lib/calendar/calendar-navigation.d.ts +19 -0
- package/dist/lib/calendar/calendar-navigation.js +216 -0
- package/dist/lib/calendar/calendar-state.d.ts +19 -0
- package/dist/lib/calendar/calendar-state.js +33 -0
- package/dist/lib/calendar/calendar-year.d.ts +20 -0
- package/dist/lib/calendar/calendar-year.js +342 -0
- package/dist/lib/calendar/temporal-value.d.ts +84 -0
- package/dist/lib/calendar/temporal-value.js +105 -0
- package/dist/lib/calendar/temporal.css +596 -0
- package/dist/lib/calendar/temporal.d.ts +134 -0
- package/dist/lib/calendar/temporal.js +783 -0
- package/dist/lib/calendar/temporal.module.js +80 -0
- package/dist/lib/format-bytes.d.ts +10 -0
- package/dist/lib/format-bytes.js +22 -0
- package/dist/lib/forms/context.d.ts +32 -0
- package/dist/lib/forms/context.js +33 -0
- package/dist/lib/forms/create-app-form.d.ts +33 -0
- package/dist/lib/forms/create-app-form.js +45 -0
- package/dist/lib/forms/errors.d.ts +23 -0
- package/dist/lib/forms/errors.js +25 -0
- package/dist/lib/forms/failed-submit.d.ts +16 -0
- package/dist/lib/forms/failed-submit.js +44 -0
- package/dist/lib/forms/index.d.ts +4 -0
- package/dist/lib/forms/index.js +5 -0
- package/dist/lib/forms/use-connected-field.d.ts +30 -0
- package/dist/lib/forms/use-connected-field.js +74 -0
- package/dist/lib/hooks/index.d.ts +5 -0
- package/dist/lib/hooks/index.js +6 -0
- package/dist/lib/hooks/use-busy-phase.d.ts +31 -0
- package/dist/lib/hooks/use-busy-phase.js +75 -0
- package/dist/lib/hooks/use-media-query.d.ts +8 -0
- package/dist/lib/hooks/use-media-query.js +34 -0
- package/dist/lib/hooks/use-presence.d.ts +25 -0
- package/dist/lib/hooks/use-presence.js +155 -0
- package/dist/lib/hooks/use-row-selection.d.ts +65 -0
- package/dist/lib/hooks/use-row-selection.js +136 -0
- package/dist/lib/hooks/use-theme.d.ts +28 -0
- package/dist/lib/hooks/use-theme.js +88 -0
- package/dist/lib/iso-zoned.d.ts +9 -0
- package/dist/lib/iso-zoned.js +19 -0
- package/dist/lib/password-strength/password-strength.d.ts +38 -0
- package/dist/lib/password-strength/password-strength.js +72 -0
- package/dist/lib/popup-edge-padding.d.ts +20 -0
- package/dist/lib/popup-edge-padding.js +41 -0
- package/dist/lib/sliding-indicator/index.d.ts +1 -0
- package/dist/lib/sliding-indicator/use-sliding-indicator.d.ts +27 -0
- package/dist/lib/sliding-indicator/use-sliding-indicator.js +84 -0
- package/dist/lib/storage.d.ts +21 -0
- package/dist/lib/storage.js +0 -0
- package/dist/lib/table-storage.d.ts +43 -0
- package/dist/lib/table-storage.js +62 -0
- package/dist/lib/text-length.d.ts +10 -0
- package/dist/lib/text-length.js +15 -0
- package/dist/lib/tone.d.ts +14 -0
- package/dist/lib/tone.js +0 -0
- package/dist/lib/unsaved-changes/before-unload.d.ts +8 -0
- package/dist/lib/unsaved-changes/before-unload.js +37 -0
- package/dist/lib/unsaved-changes/index.d.ts +4 -0
- package/dist/lib/unsaved-changes/index.js +5 -0
- package/dist/lib/unsaved-changes/leave-guard.d.ts +80 -0
- package/dist/lib/unsaved-changes/leave-guard.js +170 -0
- package/dist/lib/unsaved-changes/policy.d.ts +24 -0
- package/dist/lib/unsaved-changes/policy.js +17 -0
- package/dist/lib/unsaved-changes/registry.d.ts +36 -0
- package/dist/lib/unsaved-changes/registry.js +78 -0
- package/dist/lib/unsaved-changes/tanstack-router.d.ts +12 -0
- package/dist/lib/unsaved-changes/tanstack-router.js +50 -0
- package/dist/lib/use-infinite-scroll.d.ts +31 -0
- package/dist/lib/use-infinite-scroll.js +78 -0
- package/dist/lib/use-intent.d.ts +17 -0
- package/dist/lib/use-intent.js +77 -0
- package/dist/lib/use-required-context.d.ts +9 -0
- package/dist/lib/use-required-context.js +15 -0
- package/dist/terrazzo/index.d.ts +39 -0
- package/dist/terrazzo/index.js +93 -0
- package/dist/tokens.css +1102 -0
- package/dist/vendor/@material-design-icons/svg/outlined/add.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/arrow_downward.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/arrow_forward.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/arrow_upward.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/attach_file.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/block.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/calendar_today.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/check.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/check_circle.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/chevron_left.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/chevron_right.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/close.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/content_copy.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/date_range.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/description.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/download.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/error.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/error_outline.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/expand_less.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/expand_more.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/filter_alt.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/filter_alt_off.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/first_page.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/info.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/keyboard_arrow_down.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/last_page.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/mail.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/more_horiz.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/photo_camera.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/remove.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/restart_alt.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/restore.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/search.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/unfold_more.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/upload_file.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/visibility.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/visibility_off.js +12 -0
- package/dist/vendor/@material-design-icons/svg/outlined/warning_amber.js +12 -0
- package/package.json +456 -5
- package/tokens/dark.tokens.json +329 -0
- package/tokens/kit.resolver.json +38 -0
- package/tokens/ref.tokens.json +1436 -0
- package/tokens/sys.tokens.json +1267 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { useFilterView } from "../components/filter-bar/use-filter-view.js";
|
|
2
|
+
import { useRowSelection } from "../lib/hooks/use-row-selection.js";
|
|
3
|
+
import { storedPageSize } from "../lib/table-storage.js";
|
|
4
|
+
import { EMPTY_ROWS, PAGE_SIZE_OPTIONS, dataTableFeatures } from "../data-table/table-features.js";
|
|
5
|
+
import { c } from "react/compiler-runtime";
|
|
6
|
+
import { useState } from "react";
|
|
7
|
+
import { keepPreviousData, useQuery } from "@tanstack/react-query";
|
|
8
|
+
import { functionalUpdate, useTable } from "@tanstack/react-table";
|
|
9
|
+
// src/data-view/use-data-view.ts
|
|
10
|
+
var DEFAULT_PAGINATION = {
|
|
11
|
+
pageIndex: 0,
|
|
12
|
+
pageSize: 25
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Orchestrates a server-driven, filterable table: `useFilterView`, a TanStack
|
|
16
|
+
* Query and a TanStack Table instance with manual pagination and sorting, plus
|
|
17
|
+
* a row selection. Pagination, sorting, expansion and selection live in the
|
|
18
|
+
* instance's own state: read `table.state`, never mirror it back through
|
|
19
|
+
* `options.state`. A new filter or search returns to the first page and clears
|
|
20
|
+
* the selection, and rows from the last settled page stay on screen when a
|
|
21
|
+
* fetch fails.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* const { filters, table, query, selection } = useDataView({
|
|
25
|
+
* tableId: "declarations",
|
|
26
|
+
* initialFilters: {},
|
|
27
|
+
* columns,
|
|
28
|
+
* queryOptions: ({ filters, search, pagination, sorting }) =>
|
|
29
|
+
* declarationsQuery({ filters, search, pagination, sorting }),
|
|
30
|
+
* getRowId: row => row.id,
|
|
31
|
+
* getRows: data => data.rows,
|
|
32
|
+
* getRowCount: data => data.totalCount,
|
|
33
|
+
* storage: localStorageAdapter,
|
|
34
|
+
* });
|
|
35
|
+
*/
|
|
36
|
+
var useDataView = (t0) => {
|
|
37
|
+
const $ = c(15);
|
|
38
|
+
const { tableId, initialFilters, storedFilters, columns, queryOptions, getRowId, getRowCanExpand, getRows, getRowCount, initialPagination: t1, pageSizeOptions: t2, initialSorting: t3, searchDelay, storage } = t0;
|
|
39
|
+
const initialPagination = t1 === void 0 ? DEFAULT_PAGINATION : t1;
|
|
40
|
+
const pageSizeOptions = t2 === void 0 ? PAGE_SIZE_OPTIONS : t2;
|
|
41
|
+
let t4;
|
|
42
|
+
if ($[0] !== t3) {
|
|
43
|
+
t4 = t3 === void 0 ? [] : t3;
|
|
44
|
+
$[0] = t3;
|
|
45
|
+
$[1] = t4;
|
|
46
|
+
} else t4 = $[1];
|
|
47
|
+
const initialSorting = t4;
|
|
48
|
+
let t5;
|
|
49
|
+
if ($[2] !== initialPagination || $[3] !== pageSizeOptions || $[4] !== storage || $[5] !== tableId) {
|
|
50
|
+
t5 = storage === void 0 ? void 0 : storedPageSize(tableId, pageSizeOptions, initialPagination.pageSize, storage);
|
|
51
|
+
$[2] = initialPagination;
|
|
52
|
+
$[3] = pageSizeOptions;
|
|
53
|
+
$[4] = storage;
|
|
54
|
+
$[5] = tableId;
|
|
55
|
+
$[6] = t5;
|
|
56
|
+
} else t5 = $[6];
|
|
57
|
+
const pageSizeStore = t5;
|
|
58
|
+
let t6;
|
|
59
|
+
if ($[7] !== initialPagination || $[8] !== pageSizeStore) {
|
|
60
|
+
t6 = () => pageSizeStore?.read() ?? initialPagination.pageSize;
|
|
61
|
+
$[7] = initialPagination;
|
|
62
|
+
$[8] = pageSizeStore;
|
|
63
|
+
$[9] = t6;
|
|
64
|
+
} else t6 = $[9];
|
|
65
|
+
const [initialPageSize] = useState(t6);
|
|
66
|
+
const table = useTable({
|
|
67
|
+
features: dataTableFeatures,
|
|
68
|
+
data: EMPTY_ROWS,
|
|
69
|
+
columns,
|
|
70
|
+
getRowId,
|
|
71
|
+
getRowCanExpand,
|
|
72
|
+
manualPagination: true,
|
|
73
|
+
manualSorting: true,
|
|
74
|
+
meta: { pageSizeOptions },
|
|
75
|
+
initialState: {
|
|
76
|
+
pagination: {
|
|
77
|
+
...initialPagination,
|
|
78
|
+
pageSize: initialPageSize
|
|
79
|
+
},
|
|
80
|
+
sorting: initialSorting
|
|
81
|
+
},
|
|
82
|
+
onPaginationChange: (updater) => {
|
|
83
|
+
const previous = table.baseAtoms.pagination.get();
|
|
84
|
+
const next = functionalUpdate(updater, previous);
|
|
85
|
+
table.baseAtoms.pagination.set(next);
|
|
86
|
+
if (next.pageSize !== previous.pageSize) pageSizeStore?.write(next.pageSize);
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
const { pagination, sorting } = table.state;
|
|
90
|
+
const selection = useRowSelection();
|
|
91
|
+
const resetForNewResultSet = () => {
|
|
92
|
+
table.setPageIndex(0);
|
|
93
|
+
selection.clear();
|
|
94
|
+
};
|
|
95
|
+
const filters = useFilterView({
|
|
96
|
+
initial: initialFilters,
|
|
97
|
+
stored: storedFilters,
|
|
98
|
+
onCommittedChange: resetForNewResultSet,
|
|
99
|
+
onSearchChange: resetForNewResultSet,
|
|
100
|
+
searchDelay
|
|
101
|
+
});
|
|
102
|
+
const query = useQuery({
|
|
103
|
+
...queryOptions({
|
|
104
|
+
filters: filters.committed,
|
|
105
|
+
search: filters.debouncedSearch,
|
|
106
|
+
pagination,
|
|
107
|
+
sorting
|
|
108
|
+
}),
|
|
109
|
+
placeholderData: keepPreviousData
|
|
110
|
+
});
|
|
111
|
+
const [lastSettled, setLastSettled] = useState(void 0);
|
|
112
|
+
if (query.data !== void 0 && query.data !== lastSettled) setLastSettled(query.data);
|
|
113
|
+
const data = query.data ?? lastSettled;
|
|
114
|
+
table.setOptions((prev) => ({
|
|
115
|
+
...prev,
|
|
116
|
+
data: data ? getRows(data) : EMPTY_ROWS,
|
|
117
|
+
rowCount: data ? getRowCount(data) : 0
|
|
118
|
+
}));
|
|
119
|
+
let t7;
|
|
120
|
+
if ($[10] !== filters || $[11] !== query || $[12] !== selection || $[13] !== table) {
|
|
121
|
+
t7 = {
|
|
122
|
+
filters,
|
|
123
|
+
table,
|
|
124
|
+
query,
|
|
125
|
+
selection
|
|
126
|
+
};
|
|
127
|
+
$[10] = filters;
|
|
128
|
+
$[11] = query;
|
|
129
|
+
$[12] = selection;
|
|
130
|
+
$[13] = table;
|
|
131
|
+
$[14] = t7;
|
|
132
|
+
} else t7 = $[14];
|
|
133
|
+
return t7;
|
|
134
|
+
};
|
|
135
|
+
export { useDataView };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
export * from "./components/accordion/index.ts";
|
|
2
|
+
export * from "./components/active-filters/index.ts";
|
|
3
|
+
export * from "./components/attachment-tile/index.ts";
|
|
4
|
+
export * from "./components/avatar/index.ts";
|
|
5
|
+
export * from "./components/avatar-group/index.ts";
|
|
6
|
+
export * from "./components/badge/index.ts";
|
|
7
|
+
export * from "./components/breadcrumbs/index.ts";
|
|
8
|
+
export * from "./components/button/index.ts";
|
|
9
|
+
export * from "./components/checkbox-field/index.ts";
|
|
10
|
+
export * from "./components/checkbox-group-field/index.ts";
|
|
11
|
+
export * from "./components/collapsible/index.ts";
|
|
12
|
+
export * from "./components/combobox-field/index.ts";
|
|
13
|
+
export * from "./components/confirm-dialog/index.ts";
|
|
14
|
+
export * from "./components/conversation/index.ts";
|
|
15
|
+
export * from "./components/date-field/index.ts";
|
|
16
|
+
export * from "./components/date-range-field/index.ts";
|
|
17
|
+
export * from "./components/detail-list/index.ts";
|
|
18
|
+
export * from "./components/dialog/index.ts";
|
|
19
|
+
export * from "./components/divider/index.ts";
|
|
20
|
+
export * from "./components/drawer/index.ts";
|
|
21
|
+
export * from "./components/email-field/index.ts";
|
|
22
|
+
export * from "./components/empty-message/index.ts";
|
|
23
|
+
export * from "./components/error-boundary/index.ts";
|
|
24
|
+
export * from "./components/error-message/index.ts";
|
|
25
|
+
export * from "./components/error-text/index.ts";
|
|
26
|
+
export * from "./components/field/index.ts";
|
|
27
|
+
export * from "./components/field-placeholder/index.ts";
|
|
28
|
+
export * from "./components/fieldset/index.ts";
|
|
29
|
+
export * from "./components/file-field/index.ts";
|
|
30
|
+
export * from "./components/filter-bar/index.ts";
|
|
31
|
+
export * from "./components/form/index.ts";
|
|
32
|
+
export * from "./components/icon/index.ts";
|
|
33
|
+
export * from "./components/link/index.ts";
|
|
34
|
+
export * from "./components/link-button/index.ts";
|
|
35
|
+
export * from "./components/loading-message/index.ts";
|
|
36
|
+
export * from "./components/locale-provider/index.ts";
|
|
37
|
+
export * from "./components/menu/index.ts";
|
|
38
|
+
export * from "./components/nav/index.ts";
|
|
39
|
+
export * from "./components/number-field/index.ts";
|
|
40
|
+
export * from "./components/otp-field/index.ts";
|
|
41
|
+
export * from "./components/pagination/index.ts";
|
|
42
|
+
export * from "./components/password-field/index.ts";
|
|
43
|
+
export * from "./components/phone-field/index.ts";
|
|
44
|
+
export * from "./components/photo-field/index.ts";
|
|
45
|
+
export * from "./components/popover/index.ts";
|
|
46
|
+
export * from "./components/radio-group-field/index.ts";
|
|
47
|
+
export * from "./components/search-field/index.ts";
|
|
48
|
+
export * from "./components/segmented-control-field/index.ts";
|
|
49
|
+
export * from "./components/select-field/index.ts";
|
|
50
|
+
export * from "./components/skeleton/index.ts";
|
|
51
|
+
export * from "./components/spinner/index.ts";
|
|
52
|
+
export * from "./components/stale/index.ts";
|
|
53
|
+
export * from "./components/status-message/index.ts";
|
|
54
|
+
export * from "./components/switch-field/index.ts";
|
|
55
|
+
export * from "./components/tabs/index.ts";
|
|
56
|
+
export * from "./components/tag/index.ts";
|
|
57
|
+
export * from "./components/tag-group/index.ts";
|
|
58
|
+
export * from "./components/text-field/index.ts";
|
|
59
|
+
export * from "./components/textarea-field/index.ts";
|
|
60
|
+
export * from "./components/time-field/index.ts";
|
|
61
|
+
export * from "./components/time-zone-provider/index.ts";
|
|
62
|
+
export * from "./components/toast/index.ts";
|
|
63
|
+
export * from "./components/toggle-group-field/index.ts";
|
|
64
|
+
export * from "./components/tooltip/index.ts";
|
|
65
|
+
export * from "./lib/forms/index.ts";
|
|
66
|
+
export * from "./lib/hooks/index.ts";
|
|
67
|
+
export * from "./lib/storage.ts";
|
|
68
|
+
export * from "./lib/table-storage.ts";
|
|
69
|
+
export * from "./lib/tone.ts";
|
|
70
|
+
export * from "./lib/unsaved-changes/index.ts";
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { Icon } from "./components/icon/icon.js";
|
|
2
|
+
import { Accordion } from "./components/accordion/accordion.js";
|
|
3
|
+
import { describeFlag, describeList, describeValue } from "./components/active-filters/active-filter-describers.js";
|
|
4
|
+
import { useFilterView } from "./components/filter-bar/use-filter-view.js";
|
|
5
|
+
import { Tooltip } from "./components/tooltip/tooltip.js";
|
|
6
|
+
import { TagGroup } from "./components/tag-group/tag-group.js";
|
|
7
|
+
import { ActiveFilters } from "./components/active-filters/active-filters.js";
|
|
8
|
+
import { useBusyPhase } from "./lib/hooks/use-busy-phase.js";
|
|
9
|
+
import { Skeleton } from "./components/skeleton/skeleton.js";
|
|
10
|
+
import { AttachmentPreview, useAttachmentPreview } from "./components/attachment-tile/attachment-preview.js";
|
|
11
|
+
import { Button } from "./components/button/button.js";
|
|
12
|
+
import { AttachmentTile, SentAttachmentTile } from "./components/attachment-tile/attachment-tile.js";
|
|
13
|
+
import { Avatar } from "./components/avatar/avatar.js";
|
|
14
|
+
import { LocaleProvider, useLocale } from "./components/locale-provider/locale-provider.js";
|
|
15
|
+
import { Popover } from "./components/popover/popover.js";
|
|
16
|
+
import { AvatarGroup } from "./components/avatar-group/avatar-group.js";
|
|
17
|
+
import { Badge } from "./components/badge/badge.js";
|
|
18
|
+
import { Menu } from "./components/menu/menu.js";
|
|
19
|
+
import { useFold } from "./components/breadcrumbs/use-fold.js";
|
|
20
|
+
import { Breadcrumbs } from "./components/breadcrumbs/breadcrumbs.js";
|
|
21
|
+
import { getFieldErrors, normalizeFieldErrors } from "./lib/forms/errors.js";
|
|
22
|
+
import { ErrorText } from "./components/error-text/error-text.js";
|
|
23
|
+
import { Spinner } from "./components/spinner/spinner.js";
|
|
24
|
+
import { useFieldContext, useFormContext } from "./lib/forms/context.js";
|
|
25
|
+
import { Field, useFieldIds } from "./components/field/field.js";
|
|
26
|
+
import { fieldStateAttributes } from "./components/field/field-state.js";
|
|
27
|
+
import { optionsLoad } from "./components/field/options-load.js";
|
|
28
|
+
import { useFieldFocus } from "./components/field/use-field-focus.js";
|
|
29
|
+
import { useFormDisabled } from "./components/form/form-context.js";
|
|
30
|
+
import { useFieldState } from "./components/field/use-field-state.js";
|
|
31
|
+
import { CheckboxGlyph } from "./components/checkbox-field/checkbox-glyph.js";
|
|
32
|
+
import { Checkbox } from "./components/checkbox-field/checkbox.js";
|
|
33
|
+
import { CheckboxField } from "./components/checkbox-field/checkbox-field.js";
|
|
34
|
+
import { useConnectedField } from "./lib/forms/use-connected-field.js";
|
|
35
|
+
import { TSFCheckboxField } from "./components/checkbox-field/tsf-checkbox-field.js";
|
|
36
|
+
import { CheckboxGroup } from "./components/checkbox-group-field/checkbox-group.js";
|
|
37
|
+
import { CheckboxGroupField } from "./components/checkbox-group-field/checkbox-group-field.js";
|
|
38
|
+
import { TSFCheckboxGroupField } from "./components/checkbox-group-field/tsf-checkbox-group-field.js";
|
|
39
|
+
import { Collapsible } from "./components/collapsible/collapsible.js";
|
|
40
|
+
import { Combobox } from "./components/combobox-field/combobox.js";
|
|
41
|
+
import { ComboboxField } from "./components/combobox-field/combobox-field.js";
|
|
42
|
+
import { TSFComboboxField } from "./components/combobox-field/tsf-combobox-field.js";
|
|
43
|
+
import { ConfirmDialog } from "./components/confirm-dialog/confirm-dialog.js";
|
|
44
|
+
import { TimeZoneProvider, useTimeZone } from "./components/time-zone-provider/time-zone-provider.js";
|
|
45
|
+
import { Conversation } from "./components/conversation/conversation.js";
|
|
46
|
+
import { groupByBurst, groupByDay } from "./components/conversation/group-messages.js";
|
|
47
|
+
import { isoDateRangeToInstants } from "./lib/calendar/temporal-value.js";
|
|
48
|
+
import { DateInput } from "./components/date-field/date-input.js";
|
|
49
|
+
import { DateField } from "./components/date-field/date-field.js";
|
|
50
|
+
import { TSFDateField } from "./components/date-field/tsf-date-field.js";
|
|
51
|
+
import { DateRangeInput } from "./components/date-range-field/date-range-input.js";
|
|
52
|
+
import { DateRangeField } from "./components/date-range-field/date-range-field.js";
|
|
53
|
+
import { TSFDateRangeField } from "./components/date-range-field/tsf-date-range-field.js";
|
|
54
|
+
import { DetailList } from "./components/detail-list/detail-list.js";
|
|
55
|
+
import { Dialog } from "./components/dialog/dialog.js";
|
|
56
|
+
import { Divider } from "./components/divider/divider.js";
|
|
57
|
+
import { Drawer } from "./components/drawer/drawer.js";
|
|
58
|
+
import { connectTextPreset } from "./components/text-field/connect-text-preset.js";
|
|
59
|
+
import { TextInput } from "./components/text-field/text-input.js";
|
|
60
|
+
import { TextField } from "./components/text-field/text-field.js";
|
|
61
|
+
import { TSFTextField } from "./components/text-field/tsf-text-field.js";
|
|
62
|
+
import { EmailField } from "./components/email-field/email-field.js";
|
|
63
|
+
import { TSFEmailField } from "./components/email-field/tsf-email-field.js";
|
|
64
|
+
import { StatusMessage } from "./components/status-message/status-message.js";
|
|
65
|
+
import { EmptyMessage } from "./components/empty-message/empty-message.js";
|
|
66
|
+
import { ErrorMessage } from "./components/error-message/error-message.js";
|
|
67
|
+
import { ErrorBoundary } from "./components/error-boundary/error-boundary.js";
|
|
68
|
+
import { FieldPlaceholder } from "./components/field-placeholder/field-placeholder.js";
|
|
69
|
+
import { Fieldset } from "./components/fieldset/fieldset.js";
|
|
70
|
+
import { FieldGroup } from "./components/fieldset/field-group.js";
|
|
71
|
+
import { TSFFieldGroup } from "./components/fieldset/tsf-field-group.js";
|
|
72
|
+
import { FileInput } from "./components/file-field/file-input.js";
|
|
73
|
+
import { FileField } from "./components/file-field/file-field.js";
|
|
74
|
+
import { TSFFileField } from "./components/file-field/tsf-file-field.js";
|
|
75
|
+
import { SearchField } from "./components/search-field/search-field.js";
|
|
76
|
+
import { FilterBar } from "./components/filter-bar/filter-bar.js";
|
|
77
|
+
import { never, whenDirty } from "./lib/unsaved-changes/policy.js";
|
|
78
|
+
import { useReportUnsavedChanges, useUnsavedChanges } from "./lib/unsaved-changes/registry.js";
|
|
79
|
+
import { Form } from "./components/form/form.js";
|
|
80
|
+
import { Link } from "./components/link/link.js";
|
|
81
|
+
import { LinkButton } from "./components/link-button/link-button.js";
|
|
82
|
+
import { LoadingMessage } from "./components/loading-message/loading-message.js";
|
|
83
|
+
import { NavItemView } from "./components/nav/nav-item-view.js";
|
|
84
|
+
import { Nav } from "./components/nav/nav.js";
|
|
85
|
+
import { NumberInput } from "./components/number-field/number-input.js";
|
|
86
|
+
import { NumberField } from "./components/number-field/number-field.js";
|
|
87
|
+
import { currencyFormat, percentFormat, unitFormat } from "./components/number-field/number-field-formats.js";
|
|
88
|
+
import { TSFNumberField } from "./components/number-field/tsf-number-field.js";
|
|
89
|
+
import { OtpInput } from "./components/otp-field/otp-input.js";
|
|
90
|
+
import { OtpField } from "./components/otp-field/otp-field.js";
|
|
91
|
+
import { TSFOtpField } from "./components/otp-field/tsf-otp-field.js";
|
|
92
|
+
import { Select } from "./components/select-field/select.js";
|
|
93
|
+
import { Pagination } from "./components/pagination/pagination.js";
|
|
94
|
+
import { PasswordStrength } from "./components/password-field/password-strength.js";
|
|
95
|
+
import { PasswordField } from "./components/password-field/password-field.js";
|
|
96
|
+
import { TSFPasswordField } from "./components/password-field/tsf-password-field.js";
|
|
97
|
+
import { PhoneField } from "./components/phone-field/phone-field.js";
|
|
98
|
+
import { TSFPhoneField } from "./components/phone-field/tsf-phone-field.js";
|
|
99
|
+
import { PhotoInput } from "./components/photo-field/photo-input.js";
|
|
100
|
+
import { PhotoField } from "./components/photo-field/photo-field.js";
|
|
101
|
+
import { TSFPhotoField } from "./components/photo-field/tsf-photo-field.js";
|
|
102
|
+
import { RadioGroup } from "./components/radio-group-field/radio-group.js";
|
|
103
|
+
import { RadioGroupField } from "./components/radio-group-field/radio-group-field.js";
|
|
104
|
+
import { TSFRadioGroupField } from "./components/radio-group-field/tsf-radio-group-field.js";
|
|
105
|
+
import { TSFSearchField } from "./components/search-field/tsf-search-field.js";
|
|
106
|
+
import { SegmentedControl } from "./components/segmented-control-field/segmented-control.js";
|
|
107
|
+
import { SegmentedControlField } from "./components/segmented-control-field/segmented-control-field.js";
|
|
108
|
+
import { TSFSegmentedControlField } from "./components/segmented-control-field/tsf-segmented-control-field.js";
|
|
109
|
+
import { SelectField } from "./components/select-field/select-field.js";
|
|
110
|
+
import { TSFSelectField } from "./components/select-field/tsf-select-field.js";
|
|
111
|
+
import { useMediaQuery } from "./lib/hooks/use-media-query.js";
|
|
112
|
+
import { usePresence } from "./lib/hooks/use-presence.js";
|
|
113
|
+
import { Stale } from "./components/stale/stale.js";
|
|
114
|
+
import { Switch } from "./components/switch-field/switch.js";
|
|
115
|
+
import { SwitchField } from "./components/switch-field/switch-field.js";
|
|
116
|
+
import { TSFSwitchField } from "./components/switch-field/tsf-switch-field.js";
|
|
117
|
+
import { Tabs } from "./components/tabs/tabs.js";
|
|
118
|
+
import { Tag } from "./components/tag/tag.js";
|
|
119
|
+
import { Textarea } from "./components/textarea-field/textarea.js";
|
|
120
|
+
import { TextareaField } from "./components/textarea-field/textarea-field.js";
|
|
121
|
+
import { TSFTextareaField } from "./components/textarea-field/tsf-textarea-field.js";
|
|
122
|
+
import { TimeInput } from "./components/time-field/time-input.js";
|
|
123
|
+
import { TimeField } from "./components/time-field/time-field.js";
|
|
124
|
+
import { TSFTimeField } from "./components/time-field/tsf-time-field.js";
|
|
125
|
+
import { toast, toastManager } from "./components/toast/toast.js";
|
|
126
|
+
import { ToastProvider } from "./components/toast/toast-provider.js";
|
|
127
|
+
import { ToggleGroup } from "./components/toggle-group-field/toggle-group.js";
|
|
128
|
+
import { ToggleGroupField } from "./components/toggle-group-field/toggle-group-field.js";
|
|
129
|
+
import { TSFToggleGroupField } from "./components/toggle-group-field/tsf-toggle-group-field.js";
|
|
130
|
+
import { createAppForm } from "./lib/forms/create-app-form.js";
|
|
131
|
+
import { useRowSelection } from "./lib/hooks/use-row-selection.js";
|
|
132
|
+
import { useTheme } from "./lib/hooks/use-theme.js";
|
|
133
|
+
import { storedPageSize, tableStoredValue } from "./lib/table-storage.js";
|
|
134
|
+
import { useBeforeUnload } from "./lib/unsaved-changes/before-unload.js";
|
|
135
|
+
import { LeaveGuardDialog, useLeaveGuard } from "./lib/unsaved-changes/leave-guard.js";
|
|
136
|
+
export { Accordion, ActiveFilters, AttachmentPreview, AttachmentTile, Avatar, AvatarGroup, Badge, Breadcrumbs, Button, Checkbox, CheckboxField, CheckboxGlyph, CheckboxGroup, CheckboxGroupField, Collapsible, Combobox, ComboboxField, ConfirmDialog, Conversation, DateField, DateInput, DateRangeField, DateRangeInput, DetailList, Dialog, Divider, Drawer, EmailField, EmptyMessage, ErrorBoundary, ErrorMessage, ErrorText, Field, FieldGroup, FieldPlaceholder, Fieldset, FileField, FileInput, FilterBar, Form, Icon, LeaveGuardDialog, Link, LinkButton, LoadingMessage, LocaleProvider, Menu, Nav, NavItemView, NumberField, NumberInput, OtpField, OtpInput, Pagination, PasswordField, PasswordStrength, PhoneField, PhotoField, PhotoInput, Popover, RadioGroup, RadioGroupField, SearchField, SegmentedControl, SegmentedControlField, Select, SelectField, SentAttachmentTile, Skeleton, Spinner, Stale, StatusMessage, Switch, SwitchField, TSFCheckboxField, TSFCheckboxGroupField, TSFComboboxField, TSFDateField, TSFDateRangeField, TSFEmailField, TSFFieldGroup, TSFFileField, TSFNumberField, TSFOtpField, TSFPasswordField, TSFPhoneField, TSFPhotoField, TSFRadioGroupField, TSFSearchField, TSFSegmentedControlField, TSFSelectField, TSFSwitchField, TSFTextField, TSFTextareaField, TSFTimeField, TSFToggleGroupField, Tabs, Tag, TagGroup, TextField, TextInput, Textarea, TextareaField, TimeField, TimeInput, TimeZoneProvider, ToastProvider, ToggleGroup, ToggleGroupField, Tooltip, connectTextPreset, createAppForm, currencyFormat, describeFlag, describeList, describeValue, fieldStateAttributes, getFieldErrors, groupByBurst, groupByDay, isoDateRangeToInstants, never, normalizeFieldErrors, optionsLoad, percentFormat, storedPageSize, tableStoredValue, toast, toastManager, unitFormat, useAttachmentPreview, useBeforeUnload, useBusyPhase, useConnectedField, useFieldContext, useFieldFocus, useFieldIds, useFieldState, useFilterView, useFold, useFormContext, useFormDisabled, useLeaveGuard, useLocale, useMediaQuery, usePresence, useReportUnsavedChanges, useRowSelection, useTheme, useTimeZone, useUnsavedChanges, whenDirty };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
/** The copy the month and year controls in a calendar header announce. */
|
|
3
|
+
export type CalendarNavigationLabels = Readonly<{
|
|
4
|
+
/** Accessible name of the month list, such as "Month". */
|
|
5
|
+
monthLabel: string;
|
|
6
|
+
/** Accessible name of the year list, such as "Year". */
|
|
7
|
+
yearLabel: string;
|
|
8
|
+
/** What the year list says when no year matches the typed text. */
|
|
9
|
+
noMatchingYearLabel: string;
|
|
10
|
+
}>;
|
|
11
|
+
/**
|
|
12
|
+
* The month and year controls in a calendar header, driven by whichever
|
|
13
|
+
* calendar state is above them. The month list holds the months the focused
|
|
14
|
+
* year actually has; the year list is every year in its era.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* <CalendarNavigation monthLabel="Month" yearLabel="Year" noMatchingYearLabel="No matching year." />
|
|
18
|
+
*/
|
|
19
|
+
export declare const CalendarNavigation: ({ monthLabel, yearLabel, noMatchingYearLabel, }: CalendarNavigationLabels) => ReactNode;
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
import SvgCheck from "../../vendor/@material-design-icons/svg/outlined/check.js";
|
|
2
|
+
import SvgExpandMore from "../../vendor/@material-design-icons/svg/outlined/expand_more.js";
|
|
3
|
+
import { Icon } from "../../components/icon/icon.js";
|
|
4
|
+
import { useLocale } from "../../components/locale-provider/locale-provider.js";
|
|
5
|
+
import { useTimeZone } from "../../components/time-zone-provider/time-zone-provider.js";
|
|
6
|
+
import { usePopupEdgePadding } from "../popup-edge-padding.js";
|
|
7
|
+
import { useCalendarNavigationState } from "./calendar-state.js";
|
|
8
|
+
import { CalendarYear } from "./calendar-year.js";
|
|
9
|
+
import { dayToPlainDate } from "./temporal-value.js";
|
|
10
|
+
import temporal_module_default from "./temporal.module.js";
|
|
11
|
+
import { c } from "react/compiler-runtime";
|
|
12
|
+
import { useRef } from "react";
|
|
13
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
14
|
+
import { Field } from "@base-ui/react/field";
|
|
15
|
+
import { Intl } from "temporal-polyfill";
|
|
16
|
+
import { startOfYear } from "@internationalized/date";
|
|
17
|
+
import { Select } from "@base-ui/react/select";
|
|
18
|
+
// src/lib/calendar/calendar-navigation.tsx
|
|
19
|
+
var OwnField = (t0) => {
|
|
20
|
+
const $ = c(2);
|
|
21
|
+
const { children } = t0;
|
|
22
|
+
let t1;
|
|
23
|
+
if ($[0] !== children) {
|
|
24
|
+
t1 = /* @__PURE__ */ jsx(Field.Root, {
|
|
25
|
+
className: temporal_module_default.navField,
|
|
26
|
+
children
|
|
27
|
+
});
|
|
28
|
+
$[0] = children;
|
|
29
|
+
$[1] = t1;
|
|
30
|
+
} else t1 = $[1];
|
|
31
|
+
return t1;
|
|
32
|
+
};
|
|
33
|
+
var CalendarMonthSelect = (t0) => {
|
|
34
|
+
const $ = c(26);
|
|
35
|
+
const { state, label } = t0;
|
|
36
|
+
const locale = useLocale();
|
|
37
|
+
const timeZone = useTimeZone();
|
|
38
|
+
const { ref, collisionPadding } = usePopupEdgePadding();
|
|
39
|
+
const focused = state.focusedDate;
|
|
40
|
+
let t1;
|
|
41
|
+
if ($[0] !== focused || $[1] !== locale || $[2] !== timeZone) {
|
|
42
|
+
const formatter = new Intl.DateTimeFormat(locale, {
|
|
43
|
+
month: "long",
|
|
44
|
+
timeZone,
|
|
45
|
+
calendar: focused.calendar.identifier
|
|
46
|
+
});
|
|
47
|
+
const start = startOfYear(focused);
|
|
48
|
+
t1 = Array.from({ length: focused.calendar.getMonthsInYear(focused) }, (_, index) => start.add({ months: index })).map((month) => ({
|
|
49
|
+
value: String(month.month),
|
|
50
|
+
label: formatter.format(dayToPlainDate(month))
|
|
51
|
+
}));
|
|
52
|
+
$[0] = focused;
|
|
53
|
+
$[1] = locale;
|
|
54
|
+
$[2] = timeZone;
|
|
55
|
+
$[3] = t1;
|
|
56
|
+
} else t1 = $[3];
|
|
57
|
+
const options = t1;
|
|
58
|
+
const t2 = String(focused.month);
|
|
59
|
+
let t3;
|
|
60
|
+
if ($[4] !== focused || $[5] !== state) {
|
|
61
|
+
t3 = (next) => {
|
|
62
|
+
if (next !== null) state.setFocusedDate(focused.set({ month: Number(next) }));
|
|
63
|
+
};
|
|
64
|
+
$[4] = focused;
|
|
65
|
+
$[5] = state;
|
|
66
|
+
$[6] = t3;
|
|
67
|
+
} else t3 = $[6];
|
|
68
|
+
let t4;
|
|
69
|
+
if ($[7] === Symbol.for("react.memo_cache_sentinel")) {
|
|
70
|
+
t4 = /* @__PURE__ */ jsx(Select.Value, { className: temporal_module_default.navValue });
|
|
71
|
+
$[7] = t4;
|
|
72
|
+
} else t4 = $[7];
|
|
73
|
+
let t5;
|
|
74
|
+
if ($[8] !== options) {
|
|
75
|
+
t5 = /* @__PURE__ */ jsxs("span", {
|
|
76
|
+
className: temporal_module_default.navLabel,
|
|
77
|
+
children: [t4, /* @__PURE__ */ jsx("span", {
|
|
78
|
+
className: temporal_module_default.navSizer,
|
|
79
|
+
"aria-hidden": "true",
|
|
80
|
+
children: options.map(_temp)
|
|
81
|
+
})]
|
|
82
|
+
});
|
|
83
|
+
$[8] = options;
|
|
84
|
+
$[9] = t5;
|
|
85
|
+
} else t5 = $[9];
|
|
86
|
+
let t6;
|
|
87
|
+
if ($[10] === Symbol.for("react.memo_cache_sentinel")) {
|
|
88
|
+
t6 = /* @__PURE__ */ jsx(Select.Icon, {
|
|
89
|
+
className: temporal_module_default.navIcon,
|
|
90
|
+
children: /* @__PURE__ */ jsx(Icon, {
|
|
91
|
+
svg: SvgExpandMore,
|
|
92
|
+
label: ""
|
|
93
|
+
})
|
|
94
|
+
});
|
|
95
|
+
$[10] = t6;
|
|
96
|
+
} else t6 = $[10];
|
|
97
|
+
let t7;
|
|
98
|
+
if ($[11] !== label || $[12] !== t5) {
|
|
99
|
+
t7 = /* @__PURE__ */ jsxs(Select.Trigger, {
|
|
100
|
+
"aria-label": label,
|
|
101
|
+
className: temporal_module_default.navTrigger,
|
|
102
|
+
children: [t5, t6]
|
|
103
|
+
});
|
|
104
|
+
$[11] = label;
|
|
105
|
+
$[12] = t5;
|
|
106
|
+
$[13] = t7;
|
|
107
|
+
} else t7 = $[13];
|
|
108
|
+
let t8;
|
|
109
|
+
if ($[14] !== options) {
|
|
110
|
+
t8 = /* @__PURE__ */ jsx(Select.Popup, {
|
|
111
|
+
className: temporal_module_default.navPopup,
|
|
112
|
+
children: /* @__PURE__ */ jsx(Select.List, { children: options.map(_temp2) })
|
|
113
|
+
});
|
|
114
|
+
$[14] = options;
|
|
115
|
+
$[15] = t8;
|
|
116
|
+
} else t8 = $[15];
|
|
117
|
+
let t9;
|
|
118
|
+
if ($[16] !== collisionPadding || $[17] !== ref || $[18] !== t8) {
|
|
119
|
+
t9 = /* @__PURE__ */ jsx(Select.Positioner, {
|
|
120
|
+
ref,
|
|
121
|
+
className: temporal_module_default.navPositioner,
|
|
122
|
+
sideOffset: 4,
|
|
123
|
+
alignItemWithTrigger: false,
|
|
124
|
+
collisionPadding,
|
|
125
|
+
children: t8
|
|
126
|
+
});
|
|
127
|
+
$[16] = collisionPadding;
|
|
128
|
+
$[17] = ref;
|
|
129
|
+
$[18] = t8;
|
|
130
|
+
$[19] = t9;
|
|
131
|
+
} else t9 = $[19];
|
|
132
|
+
let t10;
|
|
133
|
+
if ($[20] !== options || $[21] !== t2 || $[22] !== t3 || $[23] !== t7 || $[24] !== t9) {
|
|
134
|
+
t10 = /* @__PURE__ */ jsxs(Select.Root, {
|
|
135
|
+
items: options,
|
|
136
|
+
value: t2,
|
|
137
|
+
onValueChange: t3,
|
|
138
|
+
children: [t7, t9]
|
|
139
|
+
});
|
|
140
|
+
$[20] = options;
|
|
141
|
+
$[21] = t2;
|
|
142
|
+
$[22] = t3;
|
|
143
|
+
$[23] = t7;
|
|
144
|
+
$[24] = t9;
|
|
145
|
+
$[25] = t10;
|
|
146
|
+
} else t10 = $[25];
|
|
147
|
+
return t10;
|
|
148
|
+
};
|
|
149
|
+
/**
|
|
150
|
+
* The month and year controls in a calendar header, driven by whichever
|
|
151
|
+
* calendar state is above them. The month list holds the months the focused
|
|
152
|
+
* year actually has; the year list is every year in its era.
|
|
153
|
+
*
|
|
154
|
+
* @example
|
|
155
|
+
* <CalendarNavigation monthLabel="Month" yearLabel="Year" noMatchingYearLabel="No matching year." />
|
|
156
|
+
*/
|
|
157
|
+
var CalendarNavigation = (t0) => {
|
|
158
|
+
const $ = c(10);
|
|
159
|
+
const { monthLabel, yearLabel, noMatchingYearLabel } = t0;
|
|
160
|
+
const containerRef = useRef(null);
|
|
161
|
+
const state = useCalendarNavigationState();
|
|
162
|
+
if (state === null) return null;
|
|
163
|
+
let t1;
|
|
164
|
+
if ($[0] !== monthLabel || $[1] !== state) {
|
|
165
|
+
t1 = /* @__PURE__ */ jsx(OwnField, { children: /* @__PURE__ */ jsx(CalendarMonthSelect, {
|
|
166
|
+
state,
|
|
167
|
+
label: monthLabel
|
|
168
|
+
}) });
|
|
169
|
+
$[0] = monthLabel;
|
|
170
|
+
$[1] = state;
|
|
171
|
+
$[2] = t1;
|
|
172
|
+
} else t1 = $[2];
|
|
173
|
+
let t2;
|
|
174
|
+
if ($[3] !== noMatchingYearLabel || $[4] !== state || $[5] !== yearLabel) {
|
|
175
|
+
t2 = /* @__PURE__ */ jsx(OwnField, { children: /* @__PURE__ */ jsx(CalendarYear, {
|
|
176
|
+
state,
|
|
177
|
+
container: containerRef,
|
|
178
|
+
label: yearLabel,
|
|
179
|
+
noMatchLabel: noMatchingYearLabel
|
|
180
|
+
}) });
|
|
181
|
+
$[3] = noMatchingYearLabel;
|
|
182
|
+
$[4] = state;
|
|
183
|
+
$[5] = yearLabel;
|
|
184
|
+
$[6] = t2;
|
|
185
|
+
} else t2 = $[6];
|
|
186
|
+
let t3;
|
|
187
|
+
if ($[7] !== t1 || $[8] !== t2) {
|
|
188
|
+
t3 = /* @__PURE__ */ jsxs("div", {
|
|
189
|
+
ref: containerRef,
|
|
190
|
+
className: temporal_module_default.navigation,
|
|
191
|
+
children: [t1, t2]
|
|
192
|
+
});
|
|
193
|
+
$[7] = t1;
|
|
194
|
+
$[8] = t2;
|
|
195
|
+
$[9] = t3;
|
|
196
|
+
} else t3 = $[9];
|
|
197
|
+
return t3;
|
|
198
|
+
};
|
|
199
|
+
function _temp(option) {
|
|
200
|
+
return /* @__PURE__ */ jsx("span", { children: option.label }, option.value);
|
|
201
|
+
}
|
|
202
|
+
function _temp2(option_0) {
|
|
203
|
+
return /* @__PURE__ */ jsxs(Select.Item, {
|
|
204
|
+
value: option_0.value,
|
|
205
|
+
className: temporal_module_default.navItem,
|
|
206
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
207
|
+
className: temporal_module_default.navItemIndicator,
|
|
208
|
+
"aria-hidden": "true",
|
|
209
|
+
children: /* @__PURE__ */ jsx(Select.ItemIndicator, { children: /* @__PURE__ */ jsx(Icon, {
|
|
210
|
+
svg: SvgCheck,
|
|
211
|
+
label: ""
|
|
212
|
+
}) })
|
|
213
|
+
}), /* @__PURE__ */ jsx(Select.ItemText, { children: option_0.label })]
|
|
214
|
+
}, option_0.value);
|
|
215
|
+
}
|
|
216
|
+
export { CalendarNavigation };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type ContextType } from "react";
|
|
2
|
+
import { CalendarStateContext, RangeCalendarStateContext } from "react-aria-components";
|
|
3
|
+
export type CalendarNavigationState = NonNullable<ContextType<typeof CalendarStateContext> | ContextType<typeof RangeCalendarStateContext>>;
|
|
4
|
+
/**
|
|
5
|
+
* Whichever calendar state is above this component, single or range, or `null`
|
|
6
|
+
* outside both.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* const state = useCalendarNavigationState();
|
|
10
|
+
*/
|
|
11
|
+
export declare const useCalendarNavigationState: () => CalendarNavigationState | null;
|
|
12
|
+
/**
|
|
13
|
+
* Every year the focused date's era holds, narrowed by the field's own
|
|
14
|
+
* `minValue` and `maxValue`.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* eraYears(state); // [1, 2, …, 9999] for a Gregorian AD date
|
|
18
|
+
*/
|
|
19
|
+
export declare const eraYears: (state: CalendarNavigationState) => readonly number[];
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { useContext } from "react";
|
|
2
|
+
import { CalendarStateContext, RangeCalendarStateContext } from "react-aria-components";
|
|
3
|
+
import { toCalendar, toCalendarDate } from "@internationalized/date";
|
|
4
|
+
// src/lib/calendar/calendar-state.ts
|
|
5
|
+
/**
|
|
6
|
+
* Whichever calendar state is above this component, single or range, or `null`
|
|
7
|
+
* outside both.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* const state = useCalendarNavigationState();
|
|
11
|
+
*/
|
|
12
|
+
var useCalendarNavigationState = () => {
|
|
13
|
+
const single = useContext(CalendarStateContext);
|
|
14
|
+
const range = useContext(RangeCalendarStateContext);
|
|
15
|
+
return single ?? range;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Every year the focused date's era holds, narrowed by the field's own
|
|
19
|
+
* `minValue` and `maxValue`.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* eraYears(state); // [1, 2, …, 9999] for a Gregorian AD date
|
|
23
|
+
*/
|
|
24
|
+
var eraYears = (state) => {
|
|
25
|
+
const focused = state.focusedDate;
|
|
26
|
+
const min = state.minValue ?? null;
|
|
27
|
+
const max = state.maxValue ?? null;
|
|
28
|
+
const first = Math.max(1, min === null ? 1 : toCalendar(toCalendarDate(min), focused.calendar).year);
|
|
29
|
+
const inEra = focused.calendar.getYearsInEra(focused);
|
|
30
|
+
const last = max === null ? inEra : Math.min(inEra, toCalendar(toCalendarDate(max), focused.calendar).year);
|
|
31
|
+
return Array.from({ length: Math.max(0, last - first + 1) }, (_, index) => first + index);
|
|
32
|
+
};
|
|
33
|
+
export { eraYears, useCalendarNavigationState };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type ReactNode, type RefObject } from "react";
|
|
2
|
+
import { type CalendarNavigationState } from "./calendar-state.ts";
|
|
3
|
+
export type CalendarYearProps = Readonly<{
|
|
4
|
+
state: CalendarNavigationState;
|
|
5
|
+
/** Holds the popup, so it stays inside the calendar's own popover. */
|
|
6
|
+
container: RefObject<HTMLDivElement | null>;
|
|
7
|
+
/** Accessible name of the year input, such as "Year". */
|
|
8
|
+
label: string;
|
|
9
|
+
/** What the list says when no year matches the typed text. */
|
|
10
|
+
noMatchLabel: string;
|
|
11
|
+
}>;
|
|
12
|
+
/**
|
|
13
|
+
* The year control in a calendar header: every year in the focused date's era,
|
|
14
|
+
* virtualized so the scrollbar spans the whole era rather than a loaded window,
|
|
15
|
+
* and filtered by typing.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* <CalendarYear state={state} container={containerRef} label="Year" noMatchLabel="No matching year." />
|
|
19
|
+
*/
|
|
20
|
+
export declare const CalendarYear: ({ state, container, label, noMatchLabel, }: CalendarYearProps) => ReactNode;
|