thread-ui 0.16.5 → 0.17.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 +2 -2
- package/dist/components/content-display/carousel/carousel-context.d.ts +15 -15
- package/dist/components/content-display/carousel/carousel.types.d.ts +1 -1
- package/dist/components/content-display/carousel/components/carousel-header.js +1 -1
- package/dist/components/content-display/carousel/components/carousel-header.js.map +1 -1
- package/dist/components/content-display/gallery/components/gallery-content.js +1 -1
- package/dist/components/content-display/gallery/components/gallery-content.js.map +1 -1
- package/dist/components/content-display/gallery/gallery-context.d.ts +15 -15
- package/dist/components/content-display/gallery/gallery.types.d.ts +1 -1
- package/dist/components/content-display/lightbox/components/lightbox-title.js +2 -2
- package/dist/components/content-display/lightbox/components/lightbox-title.js.map +1 -1
- package/dist/components/content-display/lightbox/lightbox-context.d.ts +6 -6
- package/dist/components/content-display/lightbox/lightbox.js +1 -1
- package/dist/components/content-display/lightbox/lightbox.js.map +1 -1
- package/dist/components/content-display/tab-view/components/tab-item-content.js +1 -1
- package/dist/components/content-display/tab-view/components/tab-item-content.js.map +1 -1
- package/dist/components/data-display/filter-controls/variants/filter-controls.js +13 -2
- package/dist/components/data-display/filter-controls/variants/filter-controls.js.map +1 -1
- package/dist/components/data-display/filter-controls/variants/inline-filter-controls.js +1 -1
- package/dist/components/data-display/filter-controls/variants/inline-filter-controls.js.map +1 -1
- package/dist/components/data-display/sort-controls/sort-controls.js +1 -1
- package/dist/components/data-display/sort-controls/sort-controls.js.map +1 -1
- package/dist/components/data-input/dropdowns/dropdown/dropdown.d.ts +19 -0
- package/dist/components/data-input/dropdowns/dropdown/dropdown.js +22 -0
- package/dist/components/data-input/dropdowns/dropdown/dropdown.js.map +1 -0
- package/dist/components/data-input/dropdowns/dropdown/dropdown.types.d.ts +4 -0
- package/dist/components/data-input/dropdowns/dropdown/dropdown.types.js.map +1 -0
- package/dist/components/data-input/dropdowns/dropdown/index.js.map +1 -0
- package/dist/components/data-input/dropdowns/dropdown-base/dropdown-base.d.ts +42 -0
- package/dist/components/data-input/dropdowns/dropdown-base/dropdown-base.js +233 -0
- package/dist/components/data-input/dropdowns/dropdown-base/dropdown-base.js.map +1 -0
- package/dist/components/data-input/dropdowns/dropdown-base/dropdown-base.types.d.ts +36 -0
- package/dist/components/data-input/dropdowns/dropdown-base/dropdown-base.types.js.map +1 -0
- package/dist/components/data-input/dropdowns/dropdown-base/index.js.map +1 -0
- package/dist/components/data-input/dropdowns/index.js.map +1 -0
- package/dist/components/data-input/dropdowns/multi-dropdown/index.js.map +1 -0
- package/dist/components/data-input/dropdowns/multi-dropdown/multi-dropdown.d.ts +19 -0
- package/dist/components/data-input/dropdowns/multi-dropdown/multi-dropdown.js +21 -0
- package/dist/components/data-input/dropdowns/multi-dropdown/multi-dropdown.js.map +1 -0
- package/dist/components/data-input/dropdowns/multi-dropdown/multi-dropdown.types.d.ts +4 -0
- package/dist/components/data-input/dropdowns/multi-dropdown/multi-dropdown.types.js.map +1 -0
- package/dist/components/data-input/file-upload/components/dropzone.d.ts +8 -0
- package/dist/components/data-input/file-upload/components/dropzone.js +117 -0
- package/dist/components/data-input/file-upload/components/dropzone.js.map +1 -0
- package/dist/components/data-input/file-upload/components/file-item.d.ts +14 -0
- package/dist/components/data-input/file-upload/components/file-item.js +69 -0
- package/dist/components/data-input/file-upload/components/file-item.js.map +1 -0
- package/dist/components/data-input/file-upload/components/file-upload-content.d.ts +10 -0
- package/dist/components/data-input/file-upload/components/file-upload-content.js +55 -0
- package/dist/components/data-input/file-upload/components/file-upload-content.js.map +1 -0
- package/dist/components/data-input/file-upload/components/item-previews.d.ts +28 -0
- package/dist/components/data-input/file-upload/components/item-previews.js +95 -0
- package/dist/components/data-input/file-upload/components/item-previews.js.map +1 -0
- package/dist/components/data-input/file-upload/file-upload-context.js.map +1 -0
- package/dist/components/data-input/file-upload/file-upload.d.ts +23 -0
- package/dist/components/data-input/file-upload/file-upload.js +58 -0
- package/dist/components/data-input/file-upload/file-upload.js.map +1 -0
- package/dist/components/data-input/file-upload/file-upload.types.d.ts +54 -0
- package/dist/components/data-input/file-upload/file-upload.types.js.map +1 -0
- package/dist/components/data-input/file-upload/file-upload.utils.d.ts +21 -0
- package/dist/components/data-input/file-upload/file-upload.utils.js +86 -0
- package/dist/components/data-input/file-upload/file-upload.utils.js.map +1 -0
- package/dist/components/data-input/file-upload/index.d.ts +3 -0
- package/dist/components/data-input/file-upload/index.js.map +1 -0
- package/dist/components/data-input/file-upload/use-file-upload.d.ts +58 -0
- package/dist/components/data-input/file-upload/use-file-upload.js +154 -0
- package/dist/components/data-input/file-upload/use-file-upload.js.map +1 -0
- package/dist/components/data-input/file-upload/use-object-url.d.ts +9 -0
- package/dist/components/data-input/file-upload/use-object-url.js +24 -0
- package/dist/components/data-input/file-upload/use-object-url.js.map +1 -0
- package/dist/components/{form-elements → data-input}/index.d.ts +2 -1
- package/dist/components/{form-elements → data-input}/index.js +2 -1
- package/dist/components/data-input/index.js.map +1 -0
- package/dist/components/data-input/number-input/index.js.map +1 -0
- package/dist/components/{form-elements → data-input}/number-input/number-input.d.ts +4 -1
- package/dist/components/{form-elements → data-input}/number-input/number-input.js +47 -52
- package/dist/components/data-input/number-input/number-input.js.map +1 -0
- package/dist/components/{form-elements → data-input}/number-input/number-input.types.d.ts +1 -1
- package/dist/components/data-input/number-input/number-input.types.js.map +1 -0
- package/dist/components/data-input/reorderable/index.d.ts +4 -0
- package/dist/components/data-input/reorderable/index.js +4 -0
- package/dist/components/data-input/reorderable/index.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-groups/group-title.d.ts +8 -0
- package/dist/components/data-input/reorderable/reorderable-groups/group-title.js +20 -0
- package/dist/components/data-input/reorderable/reorderable-groups/group-title.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-groups/group-utils.d.ts +13 -0
- package/dist/components/data-input/reorderable/reorderable-groups/group-utils.js +26 -0
- package/dist/components/data-input/reorderable/reorderable-groups/group-utils.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-groups/index.d.ts +2 -0
- package/dist/components/data-input/reorderable/reorderable-groups/index.js +2 -0
- package/dist/components/data-input/reorderable/reorderable-groups/index.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-groups/reorderable-groups.d.ts +18 -0
- package/dist/components/data-input/reorderable/reorderable-groups/reorderable-groups.js +135 -0
- package/dist/components/data-input/reorderable/reorderable-groups/reorderable-groups.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-groups/reorderable-groups.types.d.ts +66 -0
- package/dist/components/data-input/reorderable/reorderable-groups/reorderable-groups.types.js +2 -0
- package/dist/components/data-input/reorderable/reorderable-groups/reorderable-groups.types.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-groups/sortable-group.d.ts +30 -0
- package/dist/components/data-input/reorderable/reorderable-groups/sortable-group.js +65 -0
- package/dist/components/data-input/reorderable/reorderable-groups/sortable-group.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-groups/use-group-drag.d.ts +30 -0
- package/dist/components/data-input/reorderable/reorderable-groups/use-group-drag.js +186 -0
- package/dist/components/data-input/reorderable/reorderable-groups/use-group-drag.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-list/index.d.ts +2 -0
- package/dist/components/data-input/reorderable/reorderable-list/index.js +2 -0
- package/dist/components/data-input/reorderable/reorderable-list/index.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-list/reorderable-list.d.ts +19 -0
- package/dist/components/data-input/reorderable/reorderable-list/reorderable-list.js +95 -0
- package/dist/components/data-input/reorderable/reorderable-list/reorderable-list.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-list/reorderable-list.types.d.ts +28 -0
- package/dist/components/data-input/reorderable/reorderable-list/reorderable-list.types.js +2 -0
- package/dist/components/data-input/reorderable/reorderable-list/reorderable-list.types.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/index.d.ts +2 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/index.js +2 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/index.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/sortable-item.d.ts +8 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/sortable-item.js +66 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/sortable-item.js.map +1 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/sortable-item.types.d.ts +31 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/sortable-item.types.js +2 -0
- package/dist/components/data-input/reorderable/reorderable-list/sortable-item/sortable-item.types.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/components/drag-handle.d.ts +24 -0
- package/dist/components/data-input/reorderable/shared/components/drag-handle.js +50 -0
- package/dist/components/data-input/reorderable/shared/components/drag-handle.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/components/sortable-item.d.ts +9 -0
- package/dist/components/data-input/reorderable/shared/components/sortable-item.js +42 -0
- package/dist/components/data-input/reorderable/shared/components/sortable-item.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/functions/announcements.d.ts +4 -0
- package/dist/components/data-input/reorderable/shared/functions/announcements.js +20 -0
- package/dist/components/data-input/reorderable/shared/functions/announcements.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/functions/apply-order.d.ts +2 -0
- package/dist/components/data-input/reorderable/shared/functions/apply-order.js +8 -0
- package/dist/components/data-input/reorderable/shared/functions/apply-order.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/functions/form-value.d.ts +30 -0
- package/dist/components/data-input/reorderable/shared/functions/form-value.js +49 -0
- package/dist/components/data-input/reorderable/shared/functions/form-value.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/functions/layout.d.ts +18 -0
- package/dist/components/data-input/reorderable/shared/functions/layout.js +27 -0
- package/dist/components/data-input/reorderable/shared/functions/layout.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/index.d.ts +9 -0
- package/dist/components/data-input/reorderable/shared/index.js +7 -0
- package/dist/components/data-input/reorderable/shared/index.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/types/reorderable.types.d.ts +45 -0
- package/dist/components/data-input/reorderable/shared/types/reorderable.types.js +2 -0
- package/dist/components/data-input/reorderable/shared/types/reorderable.types.js.map +1 -0
- package/dist/components/data-input/reorderable/shared/types/sortable-item.types.d.ts +14 -0
- package/dist/components/data-input/reorderable/shared/types/sortable-item.types.js +2 -0
- package/dist/components/data-input/reorderable/shared/types/sortable-item.types.js.map +1 -0
- package/dist/components/data-input/shared/form-label/form-label.d.ts +15 -0
- package/dist/components/data-input/shared/form-label/form-label.js +53 -0
- package/dist/components/data-input/shared/form-label/form-label.js.map +1 -0
- package/dist/components/data-input/shared/form-label/form-label.types.d.ts +10 -0
- package/dist/components/data-input/shared/form-label/form-label.types.js.map +1 -0
- package/dist/components/data-input/shared/form-label/index.js.map +1 -0
- package/dist/components/{form-elements → data-input/shared}/input-props.types.d.ts +11 -5
- package/dist/components/data-input/shared/input-props.types.js.map +1 -0
- package/dist/components/data-input/shared/input-wrapper.d.ts +31 -0
- package/dist/components/data-input/shared/input-wrapper.js +50 -0
- package/dist/components/data-input/shared/input-wrapper.js.map +1 -0
- package/dist/components/{form-elements/styles/index.d.ts → data-input/shared/styles.d.ts} +26 -3
- package/dist/components/data-input/shared/styles.js +107 -0
- package/dist/components/data-input/shared/styles.js.map +1 -0
- package/dist/components/data-input/shared/use-field-error.d.ts +58 -0
- package/dist/components/data-input/shared/use-field-error.js +82 -0
- package/dist/components/data-input/shared/use-field-error.js.map +1 -0
- package/dist/components/data-input/shared/use-input-id.d.ts +8 -0
- package/dist/components/data-input/shared/use-input-id.js +14 -0
- package/dist/components/data-input/shared/use-input-id.js.map +1 -0
- package/dist/components/data-input/text-input/index.js.map +1 -0
- package/dist/components/data-input/text-input/text-input.d.ts +16 -0
- package/dist/components/data-input/text-input/text-input.js +37 -0
- package/dist/components/data-input/text-input/text-input.js.map +1 -0
- package/dist/components/{form-elements → data-input}/text-input/text-input.types.d.ts +1 -1
- package/dist/components/data-input/text-input/text-input.types.js.map +1 -0
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/layouts/column-layout/column-layout.js +1 -1
- package/dist/components/layouts/column-layout/column-layout.js.map +1 -1
- package/dist/components/layouts/column-layout/column-layout.types.d.ts +1 -1
- package/dist/components/layouts/footer/footer.js +1 -1
- package/dist/components/layouts/footer/footer.js.map +1 -1
- package/dist/components/layouts/index.d.ts +2 -0
- package/dist/components/layouts/index.js +2 -0
- package/dist/components/layouts/index.js.map +1 -1
- package/dist/components/layouts/layout-wrapper.js +1 -1
- package/dist/components/layouts/layout-wrapper.js.map +1 -1
- package/dist/components/layouts/masonry-layout/masonry-layout.js +1 -1
- package/dist/components/layouts/masonry-layout/masonry-layout.js.map +1 -1
- package/dist/components/layouts/masonry-layout/masonry-layout.types.d.ts +1 -1
- package/dist/components/layouts/split-navigator/index.d.ts +2 -0
- package/dist/components/layouts/split-navigator/index.js +2 -0
- package/dist/components/layouts/split-navigator/index.js.map +1 -0
- package/dist/components/layouts/split-navigator/split-navigator.d.ts +19 -0
- package/dist/components/layouts/split-navigator/split-navigator.js +91 -0
- package/dist/components/layouts/split-navigator/split-navigator.js.map +1 -0
- package/dist/components/layouts/split-navigator/split-navigator.types.d.ts +55 -0
- package/dist/components/layouts/split-navigator/split-navigator.types.js +2 -0
- package/dist/components/layouts/split-navigator/split-navigator.types.js.map +1 -0
- package/dist/components/layouts/split-view/components/split-view-back-button.d.ts +3 -0
- package/dist/components/layouts/split-view/components/split-view-back-button.js +18 -0
- package/dist/components/layouts/split-view/components/split-view-back-button.js.map +1 -0
- package/dist/components/layouts/split-view/components/split-view-column.d.ts +5 -0
- package/dist/components/layouts/split-view/components/split-view-column.js +204 -0
- package/dist/components/layouts/split-view/components/split-view-column.js.map +1 -0
- package/dist/components/layouts/split-view/components/split-view-header.d.ts +6 -0
- package/dist/components/layouts/split-view/components/split-view-header.js +44 -0
- package/dist/components/layouts/split-view/components/split-view-header.js.map +1 -0
- package/dist/components/layouts/split-view/components/split-view-item.d.ts +11 -0
- package/dist/components/layouts/split-view/components/split-view-item.js +19 -0
- package/dist/components/layouts/split-view/components/split-view-item.js.map +1 -0
- package/dist/components/layouts/split-view/components/split-view-panes.d.ts +7 -0
- package/dist/components/layouts/split-view/components/split-view-panes.js +10 -0
- package/dist/components/layouts/split-view/components/split-view-panes.js.map +1 -0
- package/dist/components/layouts/split-view/components/split-view-sidebar-toggle.d.ts +3 -0
- package/dist/components/layouts/split-view/components/split-view-sidebar-toggle.js +14 -0
- package/dist/components/layouts/split-view/components/split-view-sidebar-toggle.js.map +1 -0
- package/dist/components/layouts/split-view/index.d.ts +10 -0
- package/dist/components/layouts/split-view/index.js +15 -0
- package/dist/components/layouts/split-view/index.js.map +1 -0
- package/dist/components/layouts/split-view/split-view-context.d.ts +4 -0
- package/dist/components/layouts/split-view/split-view-context.js +6 -0
- package/dist/components/layouts/split-view/split-view-context.js.map +1 -0
- package/dist/components/layouts/split-view/split-view.d.ts +20 -0
- package/dist/components/layouts/split-view/split-view.js +153 -0
- package/dist/components/layouts/split-view/split-view.js.map +1 -0
- package/dist/components/layouts/split-view/split-view.types.d.ts +90 -0
- package/dist/components/layouts/split-view/split-view.types.js +2 -0
- package/dist/components/layouts/split-view/split-view.types.js.map +1 -0
- package/dist/components/media-display/image-panel/image-panel.js +1 -1
- package/dist/components/media-display/image-panel/image-panel.js.map +1 -1
- package/dist/components/media-display/info-card/info-card.js +2 -2
- package/dist/components/media-display/info-card/info-card.js.map +1 -1
- package/dist/components/media-display/info-card/info-card.types.d.ts +1 -1
- package/dist/components/media-display/media-card/media-card.js +2 -2
- package/dist/components/media-display/media-card/media-card.js.map +1 -1
- package/dist/components/navigation/nav-menu/components/nav-drop-down-item.js +1 -1
- package/dist/components/navigation/nav-menu/components/nav-drop-down-item.js.map +1 -1
- package/dist/components/navigation/nav-menu/components/nav-item.js +1 -1
- package/dist/components/navigation/nav-menu/components/nav-item.js.map +1 -1
- package/dist/components/navigation/nav-menu/components/nav-link.js +1 -1
- package/dist/components/navigation/nav-menu/components/nav-link.js.map +1 -1
- package/dist/components/navigation/side-nav/side-nav-item/side-nav-item.d.ts +1 -1
- package/dist/components/navigation/side-nav/side-nav-item/side-nav-item.js +5 -48
- package/dist/components/navigation/side-nav/side-nav-item/side-nav-item.js.map +1 -1
- package/dist/components/navigation/side-nav/side-nav-item/side-nav-item.types.d.ts +3 -0
- package/dist/components/navigation/side-nav/side-nav.d.ts +4 -2
- package/dist/components/navigation/side-nav/side-nav.js +27 -11
- package/dist/components/navigation/side-nav/side-nav.js.map +1 -1
- package/dist/components/navigation/side-nav/side-nav.types.d.ts +6 -1
- package/dist/components/typography/body/body.types.d.ts +8 -5
- package/dist/components/typography/body/text.d.ts +5 -3
- package/dist/components/typography/body/text.js +20 -6
- package/dist/components/typography/body/text.js.map +1 -1
- package/dist/components/typography/code/code.d.ts +8 -0
- package/dist/components/typography/code/code.js +12 -1
- package/dist/components/typography/code/code.js.map +1 -1
- package/dist/components/typography/code/code.types.d.ts +2 -2
- package/dist/components/typography/heading/heading.js +7 -2
- package/dist/components/typography/heading/heading.js.map +1 -1
- package/dist/components/typography/heading/heading.types.d.ts +3 -1
- package/dist/components/typography/heading/render-heading.d.ts +1 -1
- package/dist/components/typography/heading/render-heading.js +6 -4
- package/dist/components/typography/heading/render-heading.js.map +1 -1
- package/dist/components/typography/page-header/page-header.js +1 -1
- package/dist/components/typography/page-header/page-header.js.map +1 -1
- package/dist/components/typography/shared-utils/get-presentation-styles.js +8 -0
- package/dist/components/typography/shared-utils/get-presentation-styles.js.map +1 -1
- package/dist/components/typography/shared-utils/resolve-margin-bottom.d.ts +22 -0
- package/dist/components/typography/shared-utils/resolve-margin-bottom.js +25 -0
- package/dist/components/typography/shared-utils/resolve-margin-bottom.js.map +1 -0
- package/dist/components/typography/typography.types.d.ts +8 -3
- package/dist/components/ui/button/button-recipe.js +8 -0
- package/dist/components/ui/button/button-recipe.js.map +1 -1
- package/dist/components/ui/button/button.d.ts +7 -1
- package/dist/components/ui/button/button.js +8 -2
- package/dist/components/ui/button/button.js.map +1 -1
- package/dist/components/ui/button/button.types.d.ts +6 -6
- package/dist/components/ui/card/card.js +2 -2
- package/dist/components/ui/card/card.js.map +1 -1
- package/dist/components/ui/icon/icon.types.d.ts +1 -1
- package/dist/components/ui/icon-button/icon-button.js +2 -2
- package/dist/components/ui/icon-button/icon-button.js.map +1 -1
- package/dist/components/ui/icon-button/icon-button.types.d.ts +4 -3
- package/dist/components/ui/modal/components/modal-content.js +1 -1
- package/dist/components/ui/modal/components/modal-content.js.map +1 -1
- package/dist/components/ui/modal/modal.js +1 -1
- package/dist/components/ui/modal/modal.js.map +1 -1
- package/dist/components/ui/modal/modal.types.d.ts +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/use-media-query/index.d.ts +1 -0
- package/dist/hooks/use-media-query/index.js +2 -0
- package/dist/hooks/use-media-query/index.js.map +1 -0
- package/dist/hooks/use-media-query/use-media-query.d.ts +8 -0
- package/dist/hooks/use-media-query/use-media-query.js +22 -0
- package/dist/hooks/use-media-query/use-media-query.js.map +1 -0
- package/dist/hooks/use-pathname/use-pathname.d.ts +2 -1
- package/dist/hooks/use-pathname/use-pathname.js +28 -4
- package/dist/hooks/use-pathname/use-pathname.js.map +1 -1
- package/dist/internal/components/conditional-wrapper/conditional-wrapper.js.map +1 -0
- package/dist/internal/components/conditional-wrapper/conditional-wrapper.types.js.map +1 -0
- package/dist/internal/components/conditional-wrapper/index.js.map +1 -0
- package/dist/{internal-components → internal/components}/content-header/content-header.js +3 -3
- package/dist/internal/components/content-header/content-header.js.map +1 -0
- package/dist/{internal-components → internal/components}/content-header/content-header.types.d.ts +3 -3
- package/dist/internal/components/content-header/content-header.types.js.map +1 -0
- package/dist/internal/components/content-header/index.js.map +1 -0
- package/dist/{internal-components → internal/components}/dynamic-icon/dynamic-icon.js +1 -1
- package/dist/internal/components/dynamic-icon/dynamic-icon.js.map +1 -0
- package/dist/internal/components/dynamic-icon/dynamic-icon.types.d.ts +6 -0
- package/dist/internal/components/dynamic-icon/dynamic-icon.types.js.map +1 -0
- package/dist/internal/components/dynamic-icon/index.js.map +1 -0
- package/dist/internal/components/image/index.js.map +1 -0
- package/dist/{internal-components → internal/components}/image/is-html-image-props.d.ts +1 -1
- package/dist/internal/components/image/is-html-image-props.js.map +1 -0
- package/dist/{internal-components → internal/components}/image/render-image.d.ts +1 -1
- package/dist/{internal-components → internal/components}/image/render-image.js +1 -1
- package/dist/internal/components/image/render-image.js.map +1 -0
- package/dist/{internal-components → internal/components}/index.d.ts +1 -0
- package/dist/{internal-components → internal/components}/index.js +1 -0
- package/dist/internal/components/index.js.map +1 -0
- package/dist/internal/components/link/index.js.map +1 -0
- package/dist/{internal-components → internal/components}/link/link.js +1 -1
- package/dist/internal/components/link/link.js.map +1 -0
- package/dist/internal/components/link/link.types.js.map +1 -0
- package/dist/internal/components/modal-primitive/index.js.map +1 -0
- package/dist/{internal-components → internal/components}/modal-primitive/modal-primitive.js +1 -1
- package/dist/internal/components/modal-primitive/modal-primitive.js.map +1 -0
- package/dist/internal/components/modal-primitive/modal-primitive.types.js.map +1 -0
- package/dist/internal/components/nav-list-item/index.d.ts +2 -0
- package/dist/internal/components/nav-list-item/index.js +2 -0
- package/dist/internal/components/nav-list-item/index.js.map +1 -0
- package/dist/internal/components/nav-list-item/nav-list-item.d.ts +9 -0
- package/dist/internal/components/nav-list-item/nav-list-item.js +105 -0
- package/dist/internal/components/nav-list-item/nav-list-item.js.map +1 -0
- package/dist/internal/components/nav-list-item/nav-list-item.types.d.ts +24 -0
- package/dist/internal/components/nav-list-item/nav-list-item.types.js +2 -0
- package/dist/internal/components/nav-list-item/nav-list-item.types.js.map +1 -0
- package/dist/internal/components/optional-icon-button/index.js.map +1 -0
- package/dist/{internal-components → internal/components}/optional-icon-button/optional-icon-button.js +1 -1
- package/dist/internal/components/optional-icon-button/optional-icon-button.js.map +1 -0
- package/dist/{internal-components → internal/components}/optional-icon-button/optional-icon-button.types.d.ts +1 -1
- package/dist/internal/components/optional-icon-button/optional-icon-button.types.js.map +1 -0
- package/dist/internal/components/surface/index.js.map +1 -0
- package/dist/{internal-components → internal/components}/surface/surface.js +2 -2
- package/dist/internal/components/surface/surface.js.map +1 -0
- package/dist/{internal-components → internal/components}/surface/surface.types.d.ts +2 -2
- package/dist/internal/components/surface/surface.types.js.map +1 -0
- package/dist/internal/hooks/index.d.ts +2 -0
- package/dist/internal/hooks/index.js +3 -0
- package/dist/internal/hooks/index.js.map +1 -0
- package/dist/internal/hooks/use-controllable-state.d.ts +22 -0
- package/dist/internal/hooks/use-controllable-state.js +34 -0
- package/dist/internal/hooks/use-controllable-state.js.map +1 -0
- package/dist/internal/hooks/use-latest-ref.d.ts +7 -0
- package/dist/internal/hooks/use-latest-ref.js +16 -0
- package/dist/internal/hooks/use-latest-ref.js.map +1 -0
- package/dist/internal/index.d.ts +2 -0
- package/dist/internal/index.js +5 -0
- package/dist/internal/index.js.map +1 -0
- package/dist/styled-system/recipes/button.js +7 -0
- package/dist/styles/panda.css +1 -1
- package/package.json +4 -1
- package/dist/components/form-elements/dropdowns/dropdown/dropdown.d.ts +0 -13
- package/dist/components/form-elements/dropdowns/dropdown/dropdown.js +0 -41
- package/dist/components/form-elements/dropdowns/dropdown/dropdown.js.map +0 -1
- package/dist/components/form-elements/dropdowns/dropdown/dropdown.types.d.ts +0 -21
- package/dist/components/form-elements/dropdowns/dropdown/dropdown.types.js.map +0 -1
- package/dist/components/form-elements/dropdowns/dropdown/index.js.map +0 -1
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.d.ts +0 -8
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.js +0 -44
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.js.map +0 -1
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.types.d.ts +0 -26
- package/dist/components/form-elements/dropdowns/dropdown-base/dropdown-base.types.js.map +0 -1
- package/dist/components/form-elements/dropdowns/dropdown-base/index.js.map +0 -1
- package/dist/components/form-elements/dropdowns/index.js.map +0 -1
- package/dist/components/form-elements/dropdowns/multi-dropdown/index.js.map +0 -1
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.d.ts +0 -15
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.js +0 -55
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.js.map +0 -1
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.types.d.ts +0 -25
- package/dist/components/form-elements/dropdowns/multi-dropdown/multi-dropdown.types.js.map +0 -1
- package/dist/components/form-elements/file-upload/components/file-input.d.ts +0 -1
- package/dist/components/form-elements/file-upload/components/file-input.js +0 -95
- package/dist/components/form-elements/file-upload/components/file-input.js.map +0 -1
- package/dist/components/form-elements/file-upload/components/file-upload-content.d.ts +0 -1
- package/dist/components/form-elements/file-upload/components/file-upload-content.js +0 -29
- package/dist/components/form-elements/file-upload/components/file-upload-content.js.map +0 -1
- package/dist/components/form-elements/file-upload/components/file-upload-preview.d.ts +0 -1
- package/dist/components/form-elements/file-upload/components/file-upload-preview.js +0 -51
- package/dist/components/form-elements/file-upload/components/file-upload-preview.js.map +0 -1
- package/dist/components/form-elements/file-upload/components/item-previews.d.ts +0 -11
- package/dist/components/form-elements/file-upload/components/item-previews.js +0 -58
- package/dist/components/form-elements/file-upload/components/item-previews.js.map +0 -1
- package/dist/components/form-elements/file-upload/file-upload-context.js.map +0 -1
- package/dist/components/form-elements/file-upload/file-upload.d.ts +0 -19
- package/dist/components/form-elements/file-upload/file-upload.js +0 -149
- package/dist/components/form-elements/file-upload/file-upload.js.map +0 -1
- package/dist/components/form-elements/file-upload/file-upload.types.d.ts +0 -36
- package/dist/components/form-elements/file-upload/file-upload.types.js.map +0 -1
- package/dist/components/form-elements/file-upload/index.d.ts +0 -3
- package/dist/components/form-elements/file-upload/index.js.map +0 -1
- package/dist/components/form-elements/form-label/form-label.d.ts +0 -8
- package/dist/components/form-elements/form-label/form-label.js +0 -32
- package/dist/components/form-elements/form-label/form-label.js.map +0 -1
- package/dist/components/form-elements/form-label/form-label.types.d.ts +0 -11
- package/dist/components/form-elements/form-label/form-label.types.js.map +0 -1
- package/dist/components/form-elements/form-label/index.js.map +0 -1
- package/dist/components/form-elements/index.js.map +0 -1
- package/dist/components/form-elements/input-props.types.js.map +0 -1
- package/dist/components/form-elements/input-wrapper.d.ts +0 -4
- package/dist/components/form-elements/input-wrapper.js +0 -13
- package/dist/components/form-elements/input-wrapper.js.map +0 -1
- package/dist/components/form-elements/number-input/index.js.map +0 -1
- package/dist/components/form-elements/number-input/number-input.js.map +0 -1
- package/dist/components/form-elements/number-input/number-input.types.js.map +0 -1
- package/dist/components/form-elements/styles/index.js +0 -74
- package/dist/components/form-elements/styles/index.js.map +0 -1
- package/dist/components/form-elements/text-input/index.js.map +0 -1
- package/dist/components/form-elements/text-input/text-input.d.ts +0 -9
- package/dist/components/form-elements/text-input/text-input.js +0 -20
- package/dist/components/form-elements/text-input/text-input.js.map +0 -1
- package/dist/components/form-elements/text-input/text-input.types.js.map +0 -1
- package/dist/components/typography/typography.d.ts +0 -116
- package/dist/components/typography/typography.js +0 -249
- package/dist/components/typography/typography.js.map +0 -1
- package/dist/internal-components/conditional-wrapper/conditional-wrapper.js.map +0 -1
- package/dist/internal-components/conditional-wrapper/conditional-wrapper.types.js.map +0 -1
- package/dist/internal-components/conditional-wrapper/index.js.map +0 -1
- package/dist/internal-components/content-header/content-header.js.map +0 -1
- package/dist/internal-components/content-header/content-header.types.js.map +0 -1
- package/dist/internal-components/content-header/index.js.map +0 -1
- package/dist/internal-components/dynamic-icon/dynamic-icon.js.map +0 -1
- package/dist/internal-components/dynamic-icon/dynamic-icon.types.d.ts +0 -6
- package/dist/internal-components/dynamic-icon/dynamic-icon.types.js.map +0 -1
- package/dist/internal-components/dynamic-icon/index.js.map +0 -1
- package/dist/internal-components/image/index.js.map +0 -1
- package/dist/internal-components/image/is-html-image-props.js.map +0 -1
- package/dist/internal-components/image/render-image.js.map +0 -1
- package/dist/internal-components/index.js.map +0 -1
- package/dist/internal-components/link/index.js.map +0 -1
- package/dist/internal-components/link/link.js.map +0 -1
- package/dist/internal-components/link/link.types.js.map +0 -1
- package/dist/internal-components/modal-primitive/index.js.map +0 -1
- package/dist/internal-components/modal-primitive/modal-primitive.js.map +0 -1
- package/dist/internal-components/modal-primitive/modal-primitive.types.js.map +0 -1
- package/dist/internal-components/optional-icon-button/index.js.map +0 -1
- package/dist/internal-components/optional-icon-button/optional-icon-button.js.map +0 -1
- package/dist/internal-components/optional-icon-button/optional-icon-button.types.js.map +0 -1
- package/dist/internal-components/surface/index.js.map +0 -1
- package/dist/internal-components/surface/surface.js.map +0 -1
- package/dist/internal-components/surface/surface.types.js.map +0 -1
- /package/dist/components/{form-elements → data-input}/dropdowns/dropdown/dropdown.types.js +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/dropdown/index.d.ts +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/dropdown/index.js +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/dropdown-base/dropdown-base.types.js +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/dropdown-base/index.d.ts +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/dropdown-base/index.js +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/index.d.ts +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/index.js +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/multi-dropdown/index.d.ts +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/multi-dropdown/index.js +0 -0
- /package/dist/components/{form-elements → data-input}/dropdowns/multi-dropdown/multi-dropdown.types.js +0 -0
- /package/dist/components/{form-elements → data-input}/file-upload/file-upload-context.d.ts +0 -0
- /package/dist/components/{form-elements → data-input}/file-upload/file-upload-context.js +0 -0
- /package/dist/components/{form-elements → data-input}/file-upload/file-upload.types.js +0 -0
- /package/dist/components/{form-elements → data-input}/file-upload/index.js +0 -0
- /package/dist/components/{form-elements → data-input}/number-input/index.d.ts +0 -0
- /package/dist/components/{form-elements → data-input}/number-input/index.js +0 -0
- /package/dist/components/{form-elements → data-input}/number-input/number-input.types.js +0 -0
- /package/dist/components/{form-elements → data-input/shared}/form-label/form-label.types.js +0 -0
- /package/dist/components/{form-elements → data-input/shared}/form-label/index.d.ts +0 -0
- /package/dist/components/{form-elements → data-input/shared}/form-label/index.js +0 -0
- /package/dist/components/{form-elements → data-input/shared}/input-props.types.js +0 -0
- /package/dist/components/{form-elements → data-input}/text-input/index.d.ts +0 -0
- /package/dist/components/{form-elements → data-input}/text-input/index.js +0 -0
- /package/dist/components/{form-elements → data-input}/text-input/text-input.types.js +0 -0
- /package/dist/{internal-components → internal/components}/conditional-wrapper/conditional-wrapper.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/conditional-wrapper/conditional-wrapper.js +0 -0
- /package/dist/{internal-components → internal/components}/conditional-wrapper/conditional-wrapper.types.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/conditional-wrapper/conditional-wrapper.types.js +0 -0
- /package/dist/{internal-components → internal/components}/conditional-wrapper/index.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/conditional-wrapper/index.js +0 -0
- /package/dist/{internal-components → internal/components}/content-header/content-header.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/content-header/content-header.types.js +0 -0
- /package/dist/{internal-components → internal/components}/content-header/index.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/content-header/index.js +0 -0
- /package/dist/{internal-components → internal/components}/dynamic-icon/dynamic-icon.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/dynamic-icon/dynamic-icon.types.js +0 -0
- /package/dist/{internal-components → internal/components}/dynamic-icon/index.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/dynamic-icon/index.js +0 -0
- /package/dist/{internal-components → internal/components}/image/index.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/image/index.js +0 -0
- /package/dist/{internal-components → internal/components}/image/is-html-image-props.js +0 -0
- /package/dist/{internal-components → internal/components}/link/index.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/link/index.js +0 -0
- /package/dist/{internal-components → internal/components}/link/link.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/link/link.types.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/link/link.types.js +0 -0
- /package/dist/{internal-components → internal/components}/modal-primitive/index.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/modal-primitive/index.js +0 -0
- /package/dist/{internal-components → internal/components}/modal-primitive/modal-primitive.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/modal-primitive/modal-primitive.types.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/modal-primitive/modal-primitive.types.js +0 -0
- /package/dist/{internal-components → internal/components}/optional-icon-button/index.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/optional-icon-button/index.js +0 -0
- /package/dist/{internal-components → internal/components}/optional-icon-button/optional-icon-button.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/optional-icon-button/optional-icon-button.types.js +0 -0
- /package/dist/{internal-components → internal/components}/surface/index.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/surface/index.js +0 -0
- /package/dist/{internal-components → internal/components}/surface/surface.d.ts +0 -0
- /package/dist/{internal-components → internal/components}/surface/surface.types.js +0 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TextInputProps } from './text-input.types';
|
|
2
|
+
/**
|
|
3
|
+
* Text input that renders either a single-line `input` or a resizable `textarea`.
|
|
4
|
+
* Controlled when `value` is passed, uncontrolled otherwise.
|
|
5
|
+
* Omit `name` to keep the value out of form submission, e.g. for a search bar.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* <TextInput name="bio" title="Bio" value={bio} multiline onChange={handleChange} />
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* <TextInput name="bio" title="Bio" defaultValue={artist.bio} multiline />
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* <TextInput name="email" title="Email" type="email" required error={emailError} />
|
|
15
|
+
*/
|
|
16
|
+
export declare const TextInput: ({ name, id: idProp, title, value, defaultValue, required, placeholder, multiline, type, size, disabled, divider, error, onChange, }: TextInputProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { InputWrapper } from '../shared/input-wrapper';
|
|
4
|
+
import { useFieldError } from '../shared/use-field-error';
|
|
5
|
+
import { useInputId } from '../shared/use-input-id';
|
|
6
|
+
import { baseInputStyles } from '../shared/styles';
|
|
7
|
+
import { cx, css } from '../../../styled-system/css';
|
|
8
|
+
const style = css({
|
|
9
|
+
minHeight: '25',
|
|
10
|
+
resize: 'vertical',
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* Text input that renders either a single-line `input` or a resizable `textarea`.
|
|
14
|
+
* Controlled when `value` is passed, uncontrolled otherwise.
|
|
15
|
+
* Omit `name` to keep the value out of form submission, e.g. for a search bar.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* <TextInput name="bio" title="Bio" value={bio} multiline onChange={handleChange} />
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* <TextInput name="bio" title="Bio" defaultValue={artist.bio} multiline />
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* <TextInput name="email" title="Email" type="email" required error={emailError} />
|
|
25
|
+
*/
|
|
26
|
+
export const TextInput = ({ name, id: idProp, title, value, defaultValue, required, placeholder, multiline = false, type = 'text', size = 'md', disabled, divider, error, onChange, }) => {
|
|
27
|
+
const id = useInputId(idProp, name);
|
|
28
|
+
// Pass only one of the two so the element never flips between modes
|
|
29
|
+
const valueProps = value !== undefined ? { value } : { defaultValue };
|
|
30
|
+
const { ref, message, fieldProps } = useFieldError({
|
|
31
|
+
id,
|
|
32
|
+
error,
|
|
33
|
+
value,
|
|
34
|
+
});
|
|
35
|
+
return (_jsx(InputWrapper, { id: id, title: title, size: size, divider: divider, error: message, children: multiline ? (_jsx("textarea", { ref: ref, id: id, name: name, required: required, disabled: disabled, ...valueProps, onChange: onChange, placeholder: placeholder, rows: 3, className: cx(baseInputStyles({ size }), style), ...fieldProps })) : (_jsx("input", { ref: ref, type: type, id: id, name: name, required: required, disabled: disabled, ...valueProps, onChange: onChange, placeholder: placeholder, className: baseInputStyles({ size }), ...fieldProps })) }));
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=text-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-input.js","sourceRoot":"","sources":["../../../../src/components/data-input/text-input/text-input.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAE9C,MAAM,KAAK,GAAG,GAAG,CAAC;IACjB,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,UAAU;CAClB,CAAC,CAAC;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EACzB,IAAI,EACJ,EAAE,EAAE,MAAM,EACV,KAAK,EACL,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,SAAS,GAAG,KAAK,EACjB,IAAI,GAAG,MAAM,EACb,IAAI,GAAG,IAAI,EACX,QAAQ,EACR,OAAO,EACP,KAAK,EACL,QAAQ,GACQ,EAAE,EAAE;IACpB,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEpC,oEAAoE;IACpE,MAAM,UAAU,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;IAEtE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,aAAa,CAAyC;QAC1F,EAAE;QACF,KAAK;QACL,KAAK;KACL,CAAC,CAAC;IAEH,OAAO,CACN,KAAC,YAAY,IAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,YAC9E,SAAS,CAAC,CAAC,CAAC,CACZ,mBACC,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,KACd,UAAU,EACd,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,CAAC,EACP,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,KAC3C,UAAU,GACb,CACF,CAAC,CAAC,CAAC,CACH,gBACC,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,KACd,UAAU,EACd,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,eAAe,CAAC,EAAE,IAAI,EAAE,CAAC,KAChC,UAAU,GACb,CACF,GACa,CACf,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { InputProps } from '../input-props.types';
|
|
1
|
+
import { InputProps } from '../shared/input-props.types';
|
|
2
2
|
export type TextInputProps = InputProps<string> & {
|
|
3
3
|
/** Native input type. Ignored when `multiline` @default `text` */
|
|
4
4
|
type?: 'text' | 'email' | 'password' | 'search' | 'tel' | 'url';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-input.types.js","sourceRoot":"","sources":["../../../../src/components/data-input/text-input/text-input.types.ts"],"names":[],"mappings":""}
|
package/dist/components/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,MAAM,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ContentHeader, renderImage } from '../../../internal
|
|
2
|
+
import { ContentHeader, renderImage } from '../../../internal';
|
|
3
3
|
import { ColumnSkeleton } from './column-skeleton';
|
|
4
4
|
import { H3, Text } from '../../../components';
|
|
5
5
|
import { css } from '../../../styled-system/css';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"column-layout.js","sourceRoot":"","sources":["../../../../src/components/layouts/column-layout/column-layout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"column-layout.js","sourceRoot":"","sources":["../../../../src/components/layouts/column-layout/column-layout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAM,EAAE,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,MAAM,MAAM,GAAG;IACd,OAAO,EAAE,GAAG,CAAC;QACZ,KAAK,EAAE,MAAM;QACb,WAAW,EAAE,MAAM;QACnB,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,EAAE,EAAE,wBAAwB;YAC5B,EAAE,EAAE,MAAM;SACV;QACD,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE;QAC5C,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE;QAC/C,OAAO,EAAE,MAAM;QACf,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,QAAQ;QACxB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE;KACpC,CAAC;IACF,QAAQ,EAAE,GAAG,CAAC;QACb,YAAY,EAAE,IAAI;QAClB,YAAY,EAAE,GAAG;QACjB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,GAAG;KACb,CAAC;IACF,eAAe,EAAE,GAAG,CAAC;QACpB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,IAAI;KAClB,CAAC;CACF,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,WAAW,EACX,KAAK,EACL,KAAK,GAAG,KAAK,EACb,KAAK,EACL,SAAS,GAAG,IAAI,GACG,EAAE,EAAE;IACvB,OAAO,CACN,KAAC,aAAa,IAAC,SAAS,EAAE,SAAS,YAClC,mBACC,SAAS,EAAE,MAAM,CAAC,OAAO,EACzB,KAAK,EACJ;gBACC,aAAa,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;aACpB,aAGxB,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CAC1B,KAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,GAAI,CAC7E,EACD,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,YACxC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAC3B,0BACC,cAAK,SAAS,EAAE,MAAM,CAAC,QAAQ,YAC7B,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,GACxD,EACL,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CACpC,8BACE,IAAI,CAAC,KAAK,IAAI,KAAC,EAAE,cAAE,IAAI,CAAC,KAAK,GAAM,EACnC,IAAI,CAAC,WAAW,IAAI,KAAC,IAAI,cAAE,IAAI,CAAC,WAAW,GAAQ,IAClD,CACH,KATQ,IAAI,CAAC,GAAG,IAAI,KAAK,CAUrB,CACN,CAAC,GACc,IACR,GACK,CAChB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ContentHeading } from '../../../internal
|
|
1
|
+
import { ContentHeading } from '../../../internal';
|
|
2
2
|
import { ImageProps, Prettify } from '../../../types';
|
|
3
3
|
import { LayoutComponentProps } from '../layout-component.types';
|
|
4
4
|
export type MediumColumnOptions = 1 | 2 | 3;
|
|
@@ -3,7 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
3
3
|
import { Container, Divider, Subtitle } from '../../../components';
|
|
4
4
|
import { FacebookLogoIcon, GithubLogoIcon, InstagramLogoIcon, LinkedinLogoIcon, TwitterLogoIcon, } from '@phosphor-icons/react';
|
|
5
5
|
import { css } from '../../../styled-system/css';
|
|
6
|
-
import { Link } from '../../../internal
|
|
6
|
+
import { Link } from '../../../internal';
|
|
7
7
|
const styles = {
|
|
8
8
|
footerContents: css({
|
|
9
9
|
display: 'flex',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../../src/components/layouts/footer/footer.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EACN,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../../src/components/layouts/footer/footer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/layouts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/layouts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Container } from './container';
|
|
3
|
-
import { ConditionalWrapper } from '../../internal
|
|
3
|
+
import { ConditionalWrapper } from '../../internal';
|
|
4
4
|
export const LayoutWrapper = ({ container, children }) => {
|
|
5
5
|
const wrapperProps = typeof container === 'object' ? container : {};
|
|
6
6
|
const wrapper = container ? Container : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-wrapper.js","sourceRoot":"","sources":["../../../src/components/layouts/layout-wrapper.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"layout-wrapper.js","sourceRoot":"","sources":["../../../src/components/layouts/layout-wrapper.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAMhD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAsB,EAAE,EAAE;IAC5E,MAAM,YAAY,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAElD,OAAO,CACN,KAAC,kBAAkB,IAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,YAC9D,QAAQ,GACW,CACrB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { css } from '../../../styled-system/css';
|
|
3
3
|
import { LayoutWrapper } from '../layout-wrapper';
|
|
4
|
-
import { ContentHeader } from '../../../internal
|
|
4
|
+
import { ContentHeader } from '../../../internal';
|
|
5
5
|
const styles = {
|
|
6
6
|
container: css({ width: 'full' }),
|
|
7
7
|
list: css({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masonry-layout.js","sourceRoot":"","sources":["../../../../src/components/layouts/masonry-layout/masonry-layout.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"masonry-layout.js","sourceRoot":"","sources":["../../../../src/components/layouts/masonry-layout/masonry-layout.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,GAAG;IACd,SAAS,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACjC,IAAI,EAAE,GAAG,CAAC;QACT,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;QACtC,SAAS,EAAE,GAAG;KACd,CAAC;IACF,IAAI,EAAE,GAAG,CAAC;QACT,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,cAAc;QACvB,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE,QAAQ;KAClB,CAAC;CACF,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC7B,KAAK,EACL,QAAQ,EACR,WAAW,EACX,KAAK,EACL,SAAS,GACW,EAAE,EAAE;IACxB,OAAO,CACN,KAAC,aAAa,IAAC,SAAS,EAAE,SAAS,YAClC,eAAK,SAAS,EAAE,MAAM,CAAC,SAAS,aAC/B,KAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,GAAI,EAC7E,aAAI,SAAS,EAAE,MAAM,CAAC,IAAI,YACxB,KAAK,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAChC,aAAgB,SAAS,EAAE,MAAM,CAAC,IAAI,YACpC,SAAS,IADF,KAAK,CAET,CACL,CAAC,GACE,IACA,GACS,CAChB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { LayoutComponentProps } from '../layout-component.types';
|
|
3
3
|
import { Prettify } from '../../../types';
|
|
4
|
-
import { ContentHeading } from '../../../internal
|
|
4
|
+
import { ContentHeading } from '../../../internal';
|
|
5
5
|
export type MasonryLayoutProps = Prettify<LayoutComponentProps & ContentHeading & {
|
|
6
6
|
/** Items to render in the masonry grid */
|
|
7
7
|
items: ReactNode[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/layouts/split-navigator/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { SplitNavigatorItem, SplitNavigatorProps } from './split-navigator.types';
|
|
2
|
+
/**
|
|
3
|
+
* Sidebar sections, a list of items, and a detail view, built on `SplitView`.
|
|
4
|
+
*
|
|
5
|
+
* - Tracks the selected section and item, controlled or uncontrolled
|
|
6
|
+
* - Selecting a section clears the item; selections move phones to the next column
|
|
7
|
+
* - Follows selection changes from outside (router, browser back) on phones
|
|
8
|
+
* - Derives active markers, column titles, and back labels from the data
|
|
9
|
+
* - Optional links via `getSectionHref` / `getItemHref`, a sidebar footer, and empty states
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* <SplitNavigator
|
|
13
|
+
* sections={[{ id: 'inbox', title: 'Inbox', icon: 'Tray' }]}
|
|
14
|
+
* items={messages}
|
|
15
|
+
* renderItem={(msg) => msg.subject}
|
|
16
|
+
* renderDetail={(msg) => <Message message={msg} />}
|
|
17
|
+
* />
|
|
18
|
+
*/
|
|
19
|
+
export declare const SplitNavigator: <T extends SplitNavigatorItem>({ sections, items, renderItem, renderDetail, section: sectionProp, defaultSection, onSectionChange, item: itemProp, defaultItem, onItemChange, getSectionHref, getItemHref, sidebarTitle, sidebarFooter, listTitle, detailTitle, listActions, detailActions, emptyList, emptyDetail, defaultColumn, ...splitViewProps }: SplitNavigatorProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useEffect, useRef } from 'react';
|
|
4
|
+
import { css } from '../../../styled-system/css';
|
|
5
|
+
import { useControllableState } from '../../../internal';
|
|
6
|
+
import { SplitView, useSplitView } from '../split-view';
|
|
7
|
+
const styles = {
|
|
8
|
+
empty: css({
|
|
9
|
+
display: 'flex',
|
|
10
|
+
flex: 1,
|
|
11
|
+
alignItems: 'center',
|
|
12
|
+
justifyContent: 'center',
|
|
13
|
+
padding: '6',
|
|
14
|
+
color: 'text.tertiary',
|
|
15
|
+
fontSize: 'body.sm',
|
|
16
|
+
textAlign: 'center',
|
|
17
|
+
}),
|
|
18
|
+
};
|
|
19
|
+
const Empty = ({ children }) => (_jsx("div", { className: styles.empty, children: children }));
|
|
20
|
+
/**
|
|
21
|
+
* Moves to the column matching the selection when it changes from outside a click,
|
|
22
|
+
* such as a router navigation or browser back, so compact mode follows the URL.
|
|
23
|
+
*/
|
|
24
|
+
const SelectionSync = ({ section, item }) => {
|
|
25
|
+
const { show } = useSplitView();
|
|
26
|
+
const previous = useRef({ section, item });
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
const changed = previous.current.section !== section || previous.current.item !== item;
|
|
29
|
+
previous.current = { section, item };
|
|
30
|
+
if (changed)
|
|
31
|
+
show(item != null ? 'detail' : 'list');
|
|
32
|
+
});
|
|
33
|
+
return null;
|
|
34
|
+
};
|
|
35
|
+
const SectionEntries = ({ sections, selected, onSelect, getHref, }) => {
|
|
36
|
+
const { show } = useSplitView();
|
|
37
|
+
return sections.map((section) => (_jsx(SplitView.Item, { icon: section.icon, active: section.id === selected, href: getHref?.(section), onClick: () => {
|
|
38
|
+
onSelect(section.id);
|
|
39
|
+
show('list');
|
|
40
|
+
}, children: section.title }, section.id)));
|
|
41
|
+
};
|
|
42
|
+
const ItemEntries = ({ items, selected, onSelect, renderItem, getHref, }) => {
|
|
43
|
+
const { show } = useSplitView();
|
|
44
|
+
return items.map((item) => (_jsx(SplitView.Item, { active: item.id === selected, href: getHref?.(item), onClick: () => {
|
|
45
|
+
onSelect(item.id);
|
|
46
|
+
show('detail');
|
|
47
|
+
}, children: renderItem(item) }, item.id)));
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Sidebar sections, a list of items, and a detail view, built on `SplitView`.
|
|
51
|
+
*
|
|
52
|
+
* - Tracks the selected section and item, controlled or uncontrolled
|
|
53
|
+
* - Selecting a section clears the item; selections move phones to the next column
|
|
54
|
+
* - Follows selection changes from outside (router, browser back) on phones
|
|
55
|
+
* - Derives active markers, column titles, and back labels from the data
|
|
56
|
+
* - Optional links via `getSectionHref` / `getItemHref`, a sidebar footer, and empty states
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* <SplitNavigator
|
|
60
|
+
* sections={[{ id: 'inbox', title: 'Inbox', icon: 'Tray' }]}
|
|
61
|
+
* items={messages}
|
|
62
|
+
* renderItem={(msg) => msg.subject}
|
|
63
|
+
* renderDetail={(msg) => <Message message={msg} />}
|
|
64
|
+
* />
|
|
65
|
+
*/
|
|
66
|
+
export const SplitNavigator = ({ sections, items, renderItem, renderDetail, section: sectionProp, defaultSection, onSectionChange, item: itemProp, defaultItem = null, onItemChange, getSectionHref, getItemHref, sidebarTitle, sidebarFooter, listTitle, detailTitle, listActions, detailActions, emptyList = 'Nothing here yet', emptyDetail = 'Select an item', defaultColumn, ...splitViewProps }) => {
|
|
67
|
+
const [sectionId, setSectionId] = useControllableState({
|
|
68
|
+
value: sectionProp,
|
|
69
|
+
defaultValue: defaultSection ?? sections[0]?.id,
|
|
70
|
+
onChange: (id) => {
|
|
71
|
+
if (id)
|
|
72
|
+
onSectionChange?.(id);
|
|
73
|
+
},
|
|
74
|
+
});
|
|
75
|
+
const [itemId, setItemId] = useControllableState({
|
|
76
|
+
value: itemProp,
|
|
77
|
+
defaultValue: defaultItem,
|
|
78
|
+
onChange: onItemChange,
|
|
79
|
+
});
|
|
80
|
+
const section = sections.find(({ id }) => id === sectionId);
|
|
81
|
+
const selected = items.find(({ id }) => id === itemId) ?? null;
|
|
82
|
+
const selectedTitle = selected && detailTitle?.(selected);
|
|
83
|
+
const selectSection = (id) => {
|
|
84
|
+
if (id !== sectionId) {
|
|
85
|
+
setSectionId(id);
|
|
86
|
+
setItemId(null);
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
return (_jsxs(SplitView, { defaultColumn: defaultColumn ?? (selected ? 'detail' : 'list'), ...splitViewProps, children: [_jsx(SelectionSync, { section: sectionId, item: itemId }), _jsx(SplitView.Sidebar, { title: sidebarTitle, footer: sidebarFooter, children: _jsx(SectionEntries, { sections: sections, selected: sectionId, onSelect: selectSection, getHref: getSectionHref }) }), _jsx(SplitView.List, { title: section && (listTitle?.(section) ?? section.title), actions: section && listActions?.(section), children: items.length ? (_jsx(ItemEntries, { items: items, selected: itemId, onSelect: setItemId, renderItem: renderItem, getHref: section && getItemHref && ((item) => getItemHref(item, section)) })) : (_jsx(Empty, { children: emptyList })) }), _jsx(SplitView.Detail, { title: selectedTitle, ariaLabel: typeof selectedTitle === 'string' ? selectedTitle : 'Details', actions: selected && detailActions?.(selected), children: selected ? renderDetail(selected) : _jsx(Empty, { children: emptyDetail }) })] }));
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=split-navigator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-navigator.js","sourceRoot":"","sources":["../../../../src/components/layouts/split-navigator/split-navigator.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { IconNames } from '../../../components/ui';
|
|
3
|
+
import { SplitViewProps } from '../split-view';
|
|
4
|
+
/** A sidebar entry. Selecting one shows its items in the list. */
|
|
5
|
+
export type SplitNavigatorSection = {
|
|
6
|
+
id: string;
|
|
7
|
+
title: string;
|
|
8
|
+
icon?: IconNames;
|
|
9
|
+
};
|
|
10
|
+
/** Minimum shape of a list item. */
|
|
11
|
+
export type SplitNavigatorItem = {
|
|
12
|
+
id: string | number;
|
|
13
|
+
};
|
|
14
|
+
export type SplitNavigatorProps<T extends SplitNavigatorItem> = Omit<SplitViewProps, 'children'> & {
|
|
15
|
+
/** Sidebar entries, in display order */
|
|
16
|
+
sections: SplitNavigatorSection[];
|
|
17
|
+
/** Items of the selected section, shown in the list */
|
|
18
|
+
items: T[];
|
|
19
|
+
/** Content of a list row */
|
|
20
|
+
renderItem: (item: T) => ReactNode;
|
|
21
|
+
/** Detail column content for the selected item */
|
|
22
|
+
renderDetail: (item: T) => ReactNode;
|
|
23
|
+
/** Selected section id. Makes the section controlled */
|
|
24
|
+
section?: string;
|
|
25
|
+
/** Initial section for uncontrolled use @default the first section */
|
|
26
|
+
defaultSection?: string;
|
|
27
|
+
/** Called with the next section id whenever it changes */
|
|
28
|
+
onSectionChange?: (section: string) => void;
|
|
29
|
+
/** Selected item id, or `null` for none. Makes the item controlled */
|
|
30
|
+
item?: T['id'] | null;
|
|
31
|
+
/** Initial item for uncontrolled use @default `null` */
|
|
32
|
+
defaultItem?: T['id'] | null;
|
|
33
|
+
/** Called with the next item id, or `null` when the section changes */
|
|
34
|
+
onItemChange?: (item: T['id'] | null) => void;
|
|
35
|
+
/** Renders sections as links, e.g. for router-driven selection */
|
|
36
|
+
getSectionHref?: (section: SplitNavigatorSection) => string;
|
|
37
|
+
/** Renders items as links, e.g. for router-driven selection */
|
|
38
|
+
getItemHref?: (item: T, section: SplitNavigatorSection) => string;
|
|
39
|
+
/** Sidebar header title */
|
|
40
|
+
sidebarTitle?: string;
|
|
41
|
+
/** Content pinned to the bottom of the sidebar, e.g. account controls */
|
|
42
|
+
sidebarFooter?: ReactNode;
|
|
43
|
+
/** List header title @default the section's title */
|
|
44
|
+
listTitle?: (section: SplitNavigatorSection) => string;
|
|
45
|
+
/** Detail header title for the selected item */
|
|
46
|
+
detailTitle?: (item: T) => ReactNode;
|
|
47
|
+
/** Trailing list header content */
|
|
48
|
+
listActions?: (section: SplitNavigatorSection) => ReactNode;
|
|
49
|
+
/** Trailing detail header content for the selected item */
|
|
50
|
+
detailActions?: (item: T) => ReactNode;
|
|
51
|
+
/** Shown in the list when the section has no items @default `'Nothing here yet'` */
|
|
52
|
+
emptyList?: ReactNode;
|
|
53
|
+
/** Shown in the detail when no item is selected @default `'Select an item'` */
|
|
54
|
+
emptyDetail?: ReactNode;
|
|
55
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-navigator.types.js","sourceRoot":"","sources":["../../../../src/components/layouts/split-navigator/split-navigator.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { SplitViewBackButtonProps } from '../split-view.types';
|
|
2
|
+
/** Returns to the column before the one it's in. Only shown in compact mode, and not in the first column. */
|
|
3
|
+
export declare const SplitViewBackButton: ({ children }: SplitViewBackButtonProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { css } from '../../../../styled-system/css';
|
|
4
|
+
import { IconButton } from '../../../../components/ui';
|
|
5
|
+
import { useSplitView, useSplitViewColumn } from '../split-view-context';
|
|
6
|
+
const styles = {
|
|
7
|
+
wrapper: css({ display: 'none', mdDown: { display: 'contents' } }),
|
|
8
|
+
};
|
|
9
|
+
/** Returns to the column before the one it's in. Only shown in compact mode, and not in the first column. */
|
|
10
|
+
export const SplitViewBackButton = ({ children }) => {
|
|
11
|
+
const { columns, titles, show } = useSplitView();
|
|
12
|
+
const column = useSplitViewColumn();
|
|
13
|
+
const previous = columns[columns.indexOf(column) - 1];
|
|
14
|
+
if (!previous)
|
|
15
|
+
return null;
|
|
16
|
+
return (_jsx("span", { className: styles.wrapper, children: _jsx(IconButton, { size: "sm", name: "CaretLeft", color: "info", text: true, onClick: () => show(previous), children: children ?? titles[previous] ?? 'Back' }) }));
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=split-view-back-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-view-back-button.js","sourceRoot":"","sources":["../../../../../src/components/layouts/split-view/components/split-view-back-button.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AACb,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAGzE,MAAM,MAAM,GAAG;IACd,OAAO,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC;CAClE,CAAC;AAEF,6GAA6G;AAC7G,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAE,QAAQ,EAA4B,EAAE,EAAE;IAC7E,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,OAAO,CACN,eAAM,SAAS,EAAE,MAAM,CAAC,OAAO,YAC9B,KAAC,UAAU,IAAC,IAAI,EAAC,IAAI,EAAC,IAAI,EAAC,WAAW,EAAC,KAAK,EAAC,MAAM,EAAC,IAAI,QAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,YACpF,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,MAAM,GAC3B,GACP,CACP,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SplitViewColumn as Column, SplitViewColumnProps } from '../split-view.types';
|
|
2
|
+
/** Internal column shared by `SplitView.Sidebar`, `SplitView.List` and `SplitView.Detail`. */
|
|
3
|
+
export declare const SplitViewColumn: ({ column, title, actions, footer, ariaLabel, children, }: SplitViewColumnProps & {
|
|
4
|
+
column: Column;
|
|
5
|
+
}) => import("react/jsx-runtime").JSX.Element;
|