@accelint/design-toolkit 9.10.0 → 9.11.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/catalog-info.yaml +3 -3
- package/dist/components/accordion/context.d.ts +3 -3
- package/dist/components/accordion/context.js.map +1 -1
- package/dist/components/accordion/group.d.ts +2 -2
- package/dist/components/accordion/group.js +2 -1
- package/dist/components/accordion/group.js.map +1 -1
- package/dist/components/accordion/header.d.ts +2 -2
- package/dist/components/accordion/header.js +2 -1
- package/dist/components/accordion/header.js.map +1 -1
- package/dist/components/accordion/index.d.ts +2 -2
- package/dist/components/accordion/index.js +3 -1
- package/dist/components/accordion/index.js.map +1 -1
- package/dist/components/accordion/panel.d.ts +2 -2
- package/dist/components/accordion/panel.js +2 -1
- package/dist/components/accordion/panel.js.map +1 -1
- package/dist/components/accordion/trigger.d.ts +2 -2
- package/dist/components/accordion/trigger.js +4 -3
- package/dist/components/accordion/trigger.js.map +1 -1
- package/dist/components/accordion/types.d.ts +3 -1
- package/dist/components/action-bar/index.d.ts +2 -2
- package/dist/components/action-bar/index.js +1 -1
- package/dist/components/action-bar/index.js.map +1 -1
- package/dist/components/audio/index.d.ts +2 -2
- package/dist/components/avatar/context.d.ts +5 -5
- package/dist/components/avatar/context.js.map +1 -1
- package/dist/components/avatar/index.d.ts +2 -2
- package/dist/components/avatar/index.js +1 -1
- package/dist/components/avatar/index.js.map +1 -1
- package/dist/components/badge/context.d.ts +5 -5
- package/dist/components/badge/context.js.map +1 -1
- package/dist/components/badge/index.d.ts +2 -2
- package/dist/components/badge/index.js +1 -1
- package/dist/components/badge/index.js.map +1 -1
- package/dist/components/breadcrumbs/index.d.ts +3 -3
- package/dist/components/breadcrumbs/index.js +1 -1
- package/dist/components/breadcrumbs/index.js.map +1 -1
- package/dist/components/breadcrumbs/item.d.ts +2 -2
- package/dist/components/breadcrumbs/item.js +3 -1
- package/dist/components/breadcrumbs/item.js.map +1 -1
- package/dist/components/breadcrumbs/types.d.ts +2 -1
- package/dist/components/button/__internal__/clear.js +2 -1
- package/dist/components/button/__internal__/clear.js.map +1 -1
- package/dist/components/button/context.d.ts +10 -10
- package/dist/components/button/context.js.map +1 -1
- package/dist/components/button/index.d.ts +2 -2
- package/dist/components/button/index.js +3 -1
- package/dist/components/button/index.js.map +1 -1
- package/dist/components/button/link.d.ts +2 -2
- package/dist/components/button/link.js +3 -1
- package/dist/components/button/link.js.map +1 -1
- package/dist/components/button/toggle.d.ts +2 -2
- package/dist/components/button/toggle.js +3 -1
- package/dist/components/button/toggle.js.map +1 -1
- package/dist/components/button/types.d.ts +3 -1
- package/dist/components/carousel/context.d.ts +4 -4
- package/dist/components/carousel/gallery.d.ts +2 -2
- package/dist/components/carousel/index.d.ts +2 -2
- package/dist/components/carousel/navigation.d.ts +3 -3
- package/dist/components/carousel/position.d.ts +2 -2
- package/dist/components/carousel/select.d.ts +2 -2
- package/dist/components/carousel/select.js.map +1 -1
- package/dist/components/carousel/viewer.d.ts +2 -2
- package/dist/components/checkbox/context.d.ts +5 -5
- package/dist/components/checkbox/context.js.map +1 -1
- package/dist/components/checkbox/group.d.ts +2 -2
- package/dist/components/checkbox/group.js +5 -3
- package/dist/components/checkbox/group.js.map +1 -1
- package/dist/components/checkbox/index.d.ts +2 -2
- package/dist/components/checkbox/index.js +3 -1
- package/dist/components/checkbox/index.js.map +1 -1
- package/dist/components/checkbox/types.d.ts +4 -3
- package/dist/components/chip/context.d.ts +5 -5
- package/dist/components/chip/context.js.map +1 -1
- package/dist/components/chip/deletable.d.ts +2 -2
- package/dist/components/chip/deletable.js +5 -3
- package/dist/components/chip/deletable.js.map +1 -1
- package/dist/components/chip/index.d.ts +2 -2
- package/dist/components/chip/index.js +2 -1
- package/dist/components/chip/index.js.map +1 -1
- package/dist/components/chip/list.d.ts +4 -4
- package/dist/components/chip/list.js +3 -1
- package/dist/components/chip/list.js.map +1 -1
- package/dist/components/chip/selectable.d.ts +2 -2
- package/dist/components/chip/selectable.js +3 -1
- package/dist/components/chip/selectable.js.map +1 -1
- package/dist/components/chip/types.d.ts +3 -2
- package/dist/components/classification-badge/context.d.ts +5 -5
- package/dist/components/classification-badge/context.js.map +1 -1
- package/dist/components/classification-badge/index.d.ts +2 -2
- package/dist/components/classification-badge/index.js +1 -1
- package/dist/components/classification-badge/index.js.map +1 -1
- package/dist/components/classification-banner/context.d.ts +5 -5
- package/dist/components/classification-banner/context.js.map +1 -1
- package/dist/components/classification-banner/index.d.ts +2 -2
- package/dist/components/classification-banner/index.js +1 -1
- package/dist/components/classification-banner/index.js.map +1 -1
- package/dist/components/clock/index.d.ts +2 -2
- package/dist/components/color-picker/index.js +4 -3
- package/dist/components/color-picker/index.js.map +1 -1
- package/dist/components/color-picker/types.d.ts +2 -1
- package/dist/components/combobox-field/context.d.ts +5 -5
- package/dist/components/combobox-field/context.js.map +1 -1
- package/dist/components/combobox-field/index.d.ts +2 -2
- package/dist/components/combobox-field/index.js +11 -11
- package/dist/components/combobox-field/index.js.map +1 -1
- package/dist/components/combobox-field/types.d.ts +8 -4
- package/dist/components/coordinate-field/context.d.ts +7 -7
- package/dist/components/coordinate-field/context.js.map +1 -1
- package/dist/components/coordinate-field/index.d.ts +2 -2
- package/dist/components/coordinate-field/index.js +28 -23
- package/dist/components/coordinate-field/index.js.map +1 -1
- package/dist/components/coordinate-field/segment.d.ts +2 -2
- package/dist/components/coordinate-field/types.d.ts +3 -1
- package/dist/components/coordinate-field/types.js.map +1 -1
- package/dist/components/date-field/index.d.ts +2 -2
- package/dist/components/date-field/index.js +4 -3
- package/dist/components/date-field/index.js.map +1 -1
- package/dist/components/date-field/types.d.ts +1 -1
- package/dist/components/deferred-collection/index.d.ts +2 -2
- package/dist/components/details-list/context.d.ts +5 -5
- package/dist/components/details-list/context.js.map +1 -1
- package/dist/components/details-list/index.d.ts +2 -2
- package/dist/components/details-list/index.js +2 -1
- package/dist/components/details-list/index.js.map +1 -1
- package/dist/components/details-list/label.d.ts +2 -2
- package/dist/components/details-list/label.js +1 -1
- package/dist/components/details-list/label.js.map +1 -1
- package/dist/components/details-list/types.d.ts +1 -1
- package/dist/components/details-list/value.d.ts +2 -2
- package/dist/components/details-list/value.js +1 -1
- package/dist/components/details-list/value.js.map +1 -1
- package/dist/components/dialog/content.d.ts +2 -2
- package/dist/components/dialog/context.d.ts +4 -4
- package/dist/components/dialog/context.js.map +1 -1
- package/dist/components/dialog/footer.d.ts +2 -2
- package/dist/components/dialog/footer.js +1 -1
- package/dist/components/dialog/footer.js.map +1 -1
- package/dist/components/dialog/index.d.ts +2 -2
- package/dist/components/dialog/index.js +3 -1
- package/dist/components/dialog/index.js.map +1 -1
- package/dist/components/dialog/title.d.ts +3 -3
- package/dist/components/dialog/title.js +1 -1
- package/dist/components/dialog/title.js.map +1 -1
- package/dist/components/dialog/trigger.d.ts +1 -1
- package/dist/components/dialog/trigger.js +1 -1
- package/dist/components/dialog/trigger.js.map +1 -1
- package/dist/components/dialog/types.d.ts +1 -1
- package/dist/components/divider/context.d.ts +5 -5
- package/dist/components/divider/context.js.map +1 -1
- package/dist/components/divider/index.d.ts +2 -2
- package/dist/components/divider/index.js +1 -1
- package/dist/components/divider/index.js.map +1 -1
- package/dist/components/drawer/back.d.ts +2 -2
- package/dist/components/drawer/close.d.ts +2 -2
- package/dist/components/drawer/content.d.ts +2 -2
- package/dist/components/drawer/context.d.ts +2 -2
- package/dist/components/drawer/footer.d.ts +2 -2
- package/dist/components/drawer/header-title.d.ts +2 -2
- package/dist/components/drawer/header-title.js +1 -1
- package/dist/components/drawer/header-title.js.map +1 -1
- package/dist/components/drawer/header.d.ts +2 -2
- package/dist/components/drawer/header.js +3 -3
- package/dist/components/drawer/header.js.map +1 -1
- package/dist/components/drawer/index.d.ts +2 -2
- package/dist/components/drawer/layout-main.d.ts +2 -2
- package/dist/components/drawer/layout.d.ts +2 -2
- package/dist/components/drawer/menu-item.d.ts +2 -2
- package/dist/components/drawer/menu-item.js +7 -7
- package/dist/components/drawer/menu-item.js.map +1 -1
- package/dist/components/drawer/menu.d.ts +2 -2
- package/dist/components/drawer/panel.d.ts +2 -2
- package/dist/components/drawer/trigger.d.ts +2 -2
- package/dist/components/drawer/trigger.js +1 -1
- package/dist/components/drawer/trigger.js.map +1 -1
- package/dist/components/drawer/types.d.ts +3 -3
- package/dist/components/drawer/view.d.ts +2 -2
- package/dist/components/flashcard/index.d.ts +9 -9
- package/dist/components/flashcard/index.js +2 -1
- package/dist/components/flashcard/index.js.map +1 -1
- package/dist/components/floating-card/context.d.ts +4 -29
- package/dist/components/floating-card/context.js.map +1 -1
- package/dist/components/floating-card/index.d.ts +5 -50
- package/dist/components/floating-card/index.js.map +1 -1
- package/dist/components/floating-card/provider.d.ts +5 -84
- package/dist/components/floating-card/provider.js +6 -41
- package/dist/components/floating-card/provider.js.map +1 -1
- package/dist/components/floating-card/styles.module.css +15 -2
- package/dist/components/floating-card/types.d.ts +161 -0
- package/dist/components/floating-card/types.js +12 -0
- package/dist/components/floating-card/utils.d.ts +104 -0
- package/dist/components/floating-card/utils.js +60 -0
- package/dist/components/floating-card/utils.js.map +1 -0
- package/dist/components/gantt/components/base-elements/point.d.ts +2 -2
- package/dist/components/gantt/components/base-elements/range.d.ts +2 -2
- package/dist/components/gantt/components/containers/external/gantt-content-container/index.d.ts +2 -2
- package/dist/components/gantt/components/containers/external/gantt-panel-container/index.d.ts +2 -2
- package/dist/components/gantt/components/containers/internal/index.d.ts +2 -2
- package/dist/components/gantt/components/containers/internal/layout-container/index.d.ts +2 -2
- package/dist/components/gantt/components/containers/internal/virtualized-content-height-container/index.d.ts +2 -2
- package/dist/components/gantt/components/content-row/block.d.ts +2 -2
- package/dist/components/gantt/components/content-row/bracket.d.ts +3 -3
- package/dist/components/gantt/components/content-row/icon-marker.d.ts +2 -2
- package/dist/components/gantt/components/content-row/index.d.ts +2 -2
- package/dist/components/gantt/components/content-row/marker.d.ts +2 -2
- package/dist/components/gantt/components/content-row/spacer.d.ts +2 -2
- package/dist/components/gantt/components/current-time/index.d.ts +2 -2
- package/dist/components/gantt/components/header/index.d.ts +3 -3
- package/dist/components/gantt/components/panel-row/index.d.ts +2 -2
- package/dist/components/gantt/components/rows-virtualizer/index.d.ts +3 -3
- package/dist/components/gantt/components/timeline/index.d.ts +2 -2
- package/dist/components/gantt/components/timeline-chunk/index.d.ts +3 -3
- package/dist/components/gantt/context/index.d.ts +4 -4
- package/dist/components/gantt/context/store/index.d.ts +4 -4
- package/dist/components/gantt/context/temporal-data/index.d.ts +4 -4
- package/dist/components/hero/context.d.ts +3 -3
- package/dist/components/hero/context.js.map +1 -1
- package/dist/components/hero/index.d.ts +2 -2
- package/dist/components/hero/index.js +4 -1
- package/dist/components/hero/index.js.map +1 -1
- package/dist/components/hero/subtitle.d.ts +3 -3
- package/dist/components/hero/subtitle.js +1 -1
- package/dist/components/hero/subtitle.js.map +1 -1
- package/dist/components/hero/title.d.ts +3 -3
- package/dist/components/hero/title.js +1 -1
- package/dist/components/hero/title.js.map +1 -1
- package/dist/components/hotkey/context.d.ts +5 -5
- package/dist/components/hotkey/context.js.map +1 -1
- package/dist/components/hotkey/index.d.ts +2 -2
- package/dist/components/hotkey/index.js +2 -1
- package/dist/components/hotkey/index.js.map +1 -1
- package/dist/components/hotkey/set.d.ts +2 -2
- package/dist/components/icon/context.d.ts +5 -5
- package/dist/components/icon/context.js.map +1 -1
- package/dist/components/icon/index.d.ts +2 -2
- package/dist/components/icon/index.js +1 -1
- package/dist/components/icon/index.js.map +1 -1
- package/dist/components/input/context.d.ts +4 -4
- package/dist/components/input/context.js.map +1 -1
- package/dist/components/input/index.d.ts +2 -2
- package/dist/components/input/index.js +4 -2
- package/dist/components/input/index.js.map +1 -1
- package/dist/components/input/types.d.ts +3 -3
- package/dist/components/kanban/card-body.d.ts +2 -2
- package/dist/components/kanban/card-header-actions.d.ts +2 -2
- package/dist/components/kanban/card-header-title.d.ts +2 -2
- package/dist/components/kanban/card-header.d.ts +2 -2
- package/dist/components/kanban/card.d.ts +2 -2
- package/dist/components/kanban/column-actions.d.ts +2 -2
- package/dist/components/kanban/column-container.d.ts +2 -2
- package/dist/components/kanban/column-content.d.ts +2 -2
- package/dist/components/kanban/column-header-actions.d.ts +2 -2
- package/dist/components/kanban/column-header-drag-handle.d.ts +2 -2
- package/dist/components/kanban/column-header-title.d.ts +2 -2
- package/dist/components/kanban/column-header.d.ts +2 -2
- package/dist/components/kanban/column.d.ts +2 -2
- package/dist/components/kanban/context.d.ts +2 -2
- package/dist/components/kanban/header-actions.d.ts +2 -2
- package/dist/components/kanban/header-search.d.ts +2 -2
- package/dist/components/kanban/header-title.d.ts +2 -2
- package/dist/components/kanban/header-title.js +1 -1
- package/dist/components/kanban/header-title.js.map +1 -1
- package/dist/components/kanban/header.d.ts +2 -2
- package/dist/components/kanban/kanban.d.ts +4 -4
- package/dist/components/label/context.d.ts +6 -6
- package/dist/components/label/context.js.map +1 -1
- package/dist/components/label/index.d.ts +2 -2
- package/dist/components/label/index.js +2 -1
- package/dist/components/label/index.js.map +1 -1
- package/dist/components/label/types.d.ts +1 -1
- package/dist/components/lines/index.d.ts +2 -2
- package/dist/components/link/context.d.ts +2 -2
- package/dist/components/link/context.js +1 -1
- package/dist/components/link/context.js.map +1 -1
- package/dist/components/link/index.d.ts +2 -2
- package/dist/components/link/index.js +3 -1
- package/dist/components/link/index.js.map +1 -1
- package/dist/components/link/types.d.ts +1 -1
- package/dist/components/list/context.d.ts +3 -3
- package/dist/components/list/context.js.map +1 -1
- package/dist/components/list/index.d.ts +2 -2
- package/dist/components/list/index.js +3 -1
- package/dist/components/list/index.js.map +1 -1
- package/dist/components/list/item-content.d.ts +2 -2
- package/dist/components/list/item-title.d.ts +2 -2
- package/dist/components/list/item.d.ts +2 -2
- package/dist/components/list/item.js +2 -1
- package/dist/components/list/item.js.map +1 -1
- package/dist/components/list/types.d.ts +1 -1
- package/dist/components/media-controls/context.d.ts +4 -4
- package/dist/components/media-controls/fullscreen-button.d.ts +2 -2
- package/dist/components/media-controls/index.d.ts +2 -2
- package/dist/components/media-controls/play-button.d.ts +2 -2
- package/dist/components/media-controls/playback-rate.d.ts +2 -2
- package/dist/components/media-controls/seek-button.d.ts +2 -2
- package/dist/components/media-controls/time-display.d.ts +2 -2
- package/dist/components/media-controls/time-range.d.ts +2 -2
- package/dist/components/media-controls/volume-slider.d.ts +2 -2
- package/dist/components/menu/context.d.ts +4 -4
- package/dist/components/menu/context.js.map +1 -1
- package/dist/components/menu/index.d.ts +2 -2
- package/dist/components/menu/index.js +4 -1
- package/dist/components/menu/index.js.map +1 -1
- package/dist/components/menu/item-description.d.ts +3 -3
- package/dist/components/menu/item-description.js +1 -1
- package/dist/components/menu/item-description.js.map +1 -1
- package/dist/components/menu/item-label.d.ts +3 -3
- package/dist/components/menu/item-label.js +1 -1
- package/dist/components/menu/item-label.js.map +1 -1
- package/dist/components/menu/item.d.ts +2 -2
- package/dist/components/menu/item.js +5 -1
- package/dist/components/menu/item.js.map +1 -1
- package/dist/components/menu/section.d.ts +2 -2
- package/dist/components/menu/section.js +1 -1
- package/dist/components/menu/section.js.map +1 -1
- package/dist/components/menu/separator.d.ts +3 -3
- package/dist/components/menu/separator.js +1 -1
- package/dist/components/menu/separator.js.map +1 -1
- package/dist/components/menu/submenu.d.ts +3 -3
- package/dist/components/menu/submenu.js +1 -1
- package/dist/components/menu/submenu.js.map +1 -1
- package/dist/components/menu/trigger.d.ts +1 -1
- package/dist/components/menu/trigger.js +1 -1
- package/dist/components/menu/trigger.js.map +1 -1
- package/dist/components/menu/types.d.ts +1 -1
- package/dist/components/notice/index.d.ts +2 -2
- package/dist/components/notice/index.js +5 -5
- package/dist/components/notice/index.js.map +1 -1
- package/dist/components/notice/list.d.ts +2 -2
- package/dist/components/notice/list.js +7 -6
- package/dist/components/notice/list.js.map +1 -1
- package/dist/components/notice/notice-icon.d.ts +2 -2
- package/dist/components/notice/types.d.ts +4 -4
- package/dist/components/options/context.d.ts +1 -1
- package/dist/components/options/context.js.map +1 -1
- package/dist/components/options/index.d.ts +2 -2
- package/dist/components/options/index.js +3 -1
- package/dist/components/options/index.js.map +1 -1
- package/dist/components/options/item-content.d.ts +3 -3
- package/dist/components/options/item-content.js.map +1 -1
- package/dist/components/options/item-description.d.ts +3 -3
- package/dist/components/options/item-description.js +1 -1
- package/dist/components/options/item-description.js.map +1 -1
- package/dist/components/options/item-label.d.ts +3 -3
- package/dist/components/options/item-label.js +2 -1
- package/dist/components/options/item-label.js.map +1 -1
- package/dist/components/options/item.d.ts +2 -2
- package/dist/components/options/item.js +2 -1
- package/dist/components/options/item.js.map +1 -1
- package/dist/components/options/section.d.ts +2 -2
- package/dist/components/options/section.js +1 -1
- package/dist/components/options/section.js.map +1 -1
- package/dist/components/options/types.d.ts +2 -2
- package/dist/components/pagination/context.d.ts +2 -2
- package/dist/components/pagination/index.d.ts +2 -2
- package/dist/components/pagination/index.js +1 -1
- package/dist/components/pagination/index.js.map +1 -1
- package/dist/components/pagination/next.d.ts +2 -2
- package/dist/components/pagination/next.js +3 -3
- package/dist/components/pagination/next.js.map +1 -1
- package/dist/components/pagination/pages.d.ts +2 -2
- package/dist/components/pagination/pages.js +3 -3
- package/dist/components/pagination/pages.js.map +1 -1
- package/dist/components/pagination/prev.d.ts +2 -2
- package/dist/components/pagination/prev.js +3 -3
- package/dist/components/pagination/prev.js.map +1 -1
- package/dist/components/popover/content.d.ts +2 -2
- package/dist/components/popover/footer.d.ts +2 -2
- package/dist/components/popover/index.d.ts +2 -2
- package/dist/components/popover/index.js +1 -1
- package/dist/components/popover/index.js.map +1 -1
- package/dist/components/popover/title.d.ts +3 -3
- package/dist/components/popover/title.js +1 -1
- package/dist/components/popover/title.js.map +1 -1
- package/dist/components/popover/trigger.d.ts +2 -2
- package/dist/components/popover/trigger.js +3 -3
- package/dist/components/popover/trigger.js.map +1 -1
- package/dist/components/popover/types.d.ts +1 -1
- package/dist/components/query-builder/action-element.d.ts +2 -2
- package/dist/components/query-builder/actions.d.ts +4 -4
- package/dist/components/query-builder/combinator-selector.d.ts +2 -2
- package/dist/components/query-builder/index.d.ts +2 -2
- package/dist/components/query-builder/rule-group.d.ts +4 -4
- package/dist/components/query-builder/rule.d.ts +2 -2
- package/dist/components/query-builder/value-editor.d.ts +2 -2
- package/dist/components/query-builder/value-selector.d.ts +2 -2
- package/dist/components/radio/context.d.ts +5 -5
- package/dist/components/radio/context.js.map +1 -1
- package/dist/components/radio/group.d.ts +2 -2
- package/dist/components/radio/group.js +5 -3
- package/dist/components/radio/group.js.map +1 -1
- package/dist/components/radio/index.d.ts +2 -2
- package/dist/components/radio/index.js +3 -1
- package/dist/components/radio/index.js.map +1 -1
- package/dist/components/radio/types.d.ts +3 -3
- package/dist/components/search-field/context.d.ts +6 -6
- package/dist/components/search-field/context.js.map +1 -1
- package/dist/components/search-field/index.d.ts +2 -2
- package/dist/components/search-field/index.js +3 -1
- package/dist/components/search-field/index.js.map +1 -1
- package/dist/components/search-field/types.d.ts +3 -3
- package/dist/components/select-field/context.d.ts +3 -3
- package/dist/components/select-field/context.js.map +1 -1
- package/dist/components/select-field/index.js +6 -3
- package/dist/components/select-field/index.js.map +1 -1
- package/dist/components/select-field/types.d.ts +8 -5
- package/dist/components/sidenav/avatar.d.ts +2 -2
- package/dist/components/sidenav/avatar.js +3 -1
- package/dist/components/sidenav/avatar.js.map +1 -1
- package/dist/components/sidenav/content.d.ts +2 -2
- package/dist/components/sidenav/content.js +1 -1
- package/dist/components/sidenav/content.js.map +1 -1
- package/dist/components/sidenav/context.d.ts +2 -2
- package/dist/components/sidenav/footer.d.ts +2 -2
- package/dist/components/sidenav/header.d.ts +2 -2
- package/dist/components/sidenav/header.js +3 -1
- package/dist/components/sidenav/header.js.map +1 -1
- package/dist/components/sidenav/index.d.ts +2 -2
- package/dist/components/sidenav/index.js +2 -1
- package/dist/components/sidenav/index.js.map +1 -1
- package/dist/components/sidenav/item.d.ts +2 -2
- package/dist/components/sidenav/item.js +8 -5
- package/dist/components/sidenav/item.js.map +1 -1
- package/dist/components/sidenav/link.d.ts +2 -2
- package/dist/components/sidenav/link.js +8 -5
- package/dist/components/sidenav/link.js.map +1 -1
- package/dist/components/sidenav/menu-item.d.ts +2 -2
- package/dist/components/sidenav/menu-item.js +2 -1
- package/dist/components/sidenav/menu-item.js.map +1 -1
- package/dist/components/sidenav/menu.d.ts +2 -2
- package/dist/components/sidenav/menu.js +10 -5
- package/dist/components/sidenav/menu.js.map +1 -1
- package/dist/components/sidenav/trigger.d.ts +2 -2
- package/dist/components/sidenav/trigger.js +1 -1
- package/dist/components/sidenav/trigger.js.map +1 -1
- package/dist/components/sidenav/types.d.ts +6 -1
- package/dist/components/skeleton/index.d.ts +2 -2
- package/dist/components/slider/index.d.ts +2 -2
- package/dist/components/slider/index.js +9 -6
- package/dist/components/slider/index.js.map +1 -1
- package/dist/components/slider/types.d.ts +1 -1
- package/dist/components/status-indicator/index.d.ts +2 -2
- package/dist/components/switch/context.d.ts +5 -5
- package/dist/components/switch/context.js.map +1 -1
- package/dist/components/switch/index.d.ts +2 -2
- package/dist/components/switch/index.js +3 -1
- package/dist/components/switch/index.js.map +1 -1
- package/dist/components/switch/types.d.ts +1 -1
- package/dist/components/table/body.d.ts +2 -2
- package/dist/components/table/cell.d.ts +2 -2
- package/dist/components/table/context.d.ts +2 -2
- package/dist/components/table/header-cell.d.ts +2 -2
- package/dist/components/table/header.d.ts +2 -2
- package/dist/components/table/index.d.ts +2 -2
- package/dist/components/table/index.js +2 -2
- package/dist/components/table/index.js.map +1 -1
- package/dist/components/table/row.d.ts +2 -2
- package/dist/components/tabs/context.d.ts +8 -8
- package/dist/components/tabs/context.js.map +1 -1
- package/dist/components/tabs/index.d.ts +2 -2
- package/dist/components/tabs/index.js +3 -1
- package/dist/components/tabs/index.js.map +1 -1
- package/dist/components/tabs/list.d.ts +3 -3
- package/dist/components/tabs/list.js +2 -1
- package/dist/components/tabs/list.js.map +1 -1
- package/dist/components/tabs/panel.d.ts +3 -3
- package/dist/components/tabs/panel.js +2 -1
- package/dist/components/tabs/panel.js.map +1 -1
- package/dist/components/tabs/tab.d.ts +2 -2
- package/dist/components/tabs/tab.js +3 -1
- package/dist/components/tabs/tab.js.map +1 -1
- package/dist/components/tabs/types.d.ts +1 -1
- package/dist/components/text-area-field/context.d.ts +5 -5
- package/dist/components/text-area-field/context.js.map +1 -1
- package/dist/components/text-area-field/index.d.ts +2 -2
- package/dist/components/text-area-field/index.js +8 -3
- package/dist/components/text-area-field/index.js.map +1 -1
- package/dist/components/text-area-field/types.d.ts +3 -1
- package/dist/components/text-field/context.d.ts +6 -6
- package/dist/components/text-field/context.js.map +1 -1
- package/dist/components/text-field/index.d.ts +2 -2
- package/dist/components/text-field/index.js +9 -5
- package/dist/components/text-field/index.js.map +1 -1
- package/dist/components/text-field/types.d.ts +7 -6
- package/dist/components/time-field/index.d.ts +3 -3
- package/dist/components/time-field/index.js +4 -3
- package/dist/components/time-field/index.js.map +1 -1
- package/dist/components/time-field/types.d.ts +1 -1
- package/dist/components/tooltip/context.d.ts +3 -3
- package/dist/components/tooltip/context.js.map +1 -1
- package/dist/components/tooltip/index.d.ts +2 -2
- package/dist/components/tooltip/index.js +3 -2
- package/dist/components/tooltip/index.js.map +1 -1
- package/dist/components/tooltip/trigger.d.ts +2 -2
- package/dist/components/tooltip/trigger.js +6 -3
- package/dist/components/tooltip/trigger.js.map +1 -1
- package/dist/components/tooltip/types.d.ts +8 -3
- package/dist/components/tree/context.d.ts +3 -3
- package/dist/components/tree/index.d.ts +4 -2
- package/dist/components/tree/index.js +11 -6
- package/dist/components/tree/index.js.map +1 -1
- package/dist/components/tree/item-actions.d.ts +2 -2
- package/dist/components/tree/item-content.d.ts +2 -2
- package/dist/components/tree/item-content.js +7 -7
- package/dist/components/tree/item-content.js.map +1 -1
- package/dist/components/tree/item-description.d.ts +3 -3
- package/dist/components/tree/item-description.js +1 -1
- package/dist/components/tree/item-description.js.map +1 -1
- package/dist/components/tree/item-label.d.ts +3 -3
- package/dist/components/tree/item-label.js +1 -1
- package/dist/components/tree/item-label.js.map +1 -1
- package/dist/components/tree/item-prefix-icon.d.ts +2 -2
- package/dist/components/tree/item.d.ts +2 -2
- package/dist/components/tree/item.js +14 -7
- package/dist/components/tree/item.js.map +1 -1
- package/dist/components/tree/lines.d.ts +2 -2
- package/dist/components/tree/types.d.ts +30 -16
- package/dist/components/video/index.d.ts +2 -2
- package/dist/components/view-stack/context.d.ts +2 -2
- package/dist/components/view-stack/index.d.ts +2 -2
- package/dist/components/view-stack/trigger.d.ts +2 -2
- package/dist/components/view-stack/trigger.js +1 -1
- package/dist/components/view-stack/trigger.js.map +1 -1
- package/dist/components/view-stack/types.d.ts +1 -1
- package/dist/components/view-stack/view.d.ts +2 -2
- package/dist/hooks/coordinate-field/use-coordinate-field.d.ts +1 -1
- package/dist/hooks/coordinate-field/use-coordinate-field.js +1 -1
- package/dist/hooks/coordinate-field/use-coordinate-field.js.map +1 -1
- package/dist/hooks/use-tree/actions/cache.d.ts +390 -18
- package/dist/hooks/use-tree/actions/cache.js +382 -18
- package/dist/hooks/use-tree/actions/cache.js.map +1 -1
- package/dist/hooks/use-tree/actions/index.d.ts +34 -21
- package/dist/hooks/use-tree/actions/index.js +34 -26
- package/dist/hooks/use-tree/actions/index.js.map +1 -1
- package/dist/hooks/use-tree/state/index.d.ts +5 -1
- package/dist/hooks/use-tree/state/index.js +5 -1
- package/dist/hooks/use-tree/state/index.js.map +1 -1
- package/dist/hooks/use-tree/state/utils.d.ts +28 -0
- package/dist/hooks/use-tree/state/utils.js +29 -1
- package/dist/hooks/use-tree/state/utils.js.map +1 -1
- package/dist/hooks/use-tree/types.d.ts +52 -24
- package/dist/index.d.ts +5 -4
- package/dist/lib/utils.d.ts +1 -1
- package/dist/lib/utils.js.map +1 -1
- package/dist/providers/portal.js +2 -2
- package/dist/providers/portal.js.map +1 -1
- package/dist/providers/theme-provider.d.ts +4 -4
- package/dist/providers/theme-provider.js +6 -7
- package/dist/providers/theme-provider.js.map +1 -1
- package/package.json +16 -33
- package/dist/node_modules/.pnpm/@react-aria_collections@3.0.0-rc.7_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@react-aria/collections/dist/BaseCollection.js +0 -134
- package/dist/node_modules/.pnpm/@react-aria_collections@3.0.0-rc.7_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@react-aria/collections/dist/BaseCollection.js.map +0 -1
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
import { ClassificationBannerProps } from "./types.js";
|
|
14
14
|
import "client-only";
|
|
15
|
-
import * as
|
|
15
|
+
import * as react_jsx_runtime39 from "react/jsx-runtime";
|
|
16
16
|
|
|
17
17
|
//#region src/components/classification-banner/index.d.ts
|
|
18
18
|
|
|
@@ -39,7 +39,7 @@ import * as react_jsx_runtime10 from "react/jsx-runtime";
|
|
|
39
39
|
declare function ClassificationBanner({
|
|
40
40
|
ref,
|
|
41
41
|
...props
|
|
42
|
-
}: ClassificationBannerProps):
|
|
42
|
+
}: ClassificationBannerProps): react_jsx_runtime39.JSX.Element;
|
|
43
43
|
//#endregion
|
|
44
44
|
export { ClassificationBanner };
|
|
45
45
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
import { ClassificationBannerContext } from "./context.js";
|
|
17
17
|
import "client-only";
|
|
18
18
|
import { clsx } from "@accelint/design-foundation/lib/utils";
|
|
19
|
-
import { useContextProps } from "react-aria-components";
|
|
20
19
|
import { jsx } from "react/jsx-runtime";
|
|
20
|
+
import { useContextProps } from "react-aria-components/slots";
|
|
21
21
|
import styles from "./styles.module.css";
|
|
22
22
|
|
|
23
23
|
//#region src/components/classification-banner/index.tsx
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/classification-banner/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport { useContextProps } from 'react-aria-components';\nimport { ClassificationBannerContext } from './context';\nimport styles from './styles.module.css';\nimport type { ClassificationBannerProps } from './types';\n\nconst fallbackContent = {\n missing: 'Missing',\n unclassified: 'Unclassified',\n cui: 'CUI',\n confidential: 'Confidential',\n secret: 'Secret',\n 'top-secret': 'Top Secret',\n 'ts-sci': 'Top Secret/SCI',\n} as const;\n\n/**\n * ClassificationBanner - A prominent banner for displaying security classification\n *\n * Provides a full-width banner component for displaying security classification\n * information at the top or bottom of pages. Essential for applications handling\n * classified or sensitive information requiring clear visual indicators.\n *\n * @param props - The classification banner props.\n * @param props.ref - Reference to the banner element.\n * @param props.children - Custom text content (defaults to variant label).\n * @param props.className - Additional CSS class names for styling.\n * @param props.variant - Classification level variant.\n * @returns The classification banner component.\n *\n * @example\n * ```tsx\n * // Top classification banner\n * <ClassificationBanner variant=\"confidential\" />\n * ```\n */\nexport function ClassificationBanner({\n ref,\n ...props\n}: ClassificationBannerProps) {\n [props, ref] = useContextProps(\n props,\n ref ?? null,\n ClassificationBannerContext,\n );\n\n const { children, className, variant = 'missing', ...rest } = props;\n\n return (\n <div\n {...rest}\n ref={ref}\n className={clsx(styles.banner, styles[variant], className)}\n >\n {children || fallbackContent[variant]}\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAoBA,MAAM,kBAAkB;CACtB,SAAS;CACT,cAAc;CACd,KAAK;CACL,cAAc;CACd,QAAQ;CACR,cAAc;CACd,UAAU;CACX;;;;;;;;;;;;;;;;;;;;;AAsBD,SAAgB,qBAAqB,EACnC,KACA,GAAG,SACyB;AAC5B,EAAC,OAAO,OAAO,gBACb,OACA,OAAO,MACP,4BACD;CAED,MAAM,EAAE,UAAU,WAAW,UAAU,WAAW,GAAG,SAAS;AAE9D,QACE,oBAAC;EACC,GAAI;EACC;EACL,WAAW,KAAK,OAAO,QAAQ,OAAO,UAAU,UAAU;YAEzD,YAAY,gBAAgB;GACzB"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/classification-banner/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport { useContextProps } from 'react-aria-components/slots';\nimport { ClassificationBannerContext } from './context';\nimport styles from './styles.module.css';\nimport type { ClassificationBannerProps } from './types';\n\nconst fallbackContent = {\n missing: 'Missing',\n unclassified: 'Unclassified',\n cui: 'CUI',\n confidential: 'Confidential',\n secret: 'Secret',\n 'top-secret': 'Top Secret',\n 'ts-sci': 'Top Secret/SCI',\n} as const;\n\n/**\n * ClassificationBanner - A prominent banner for displaying security classification\n *\n * Provides a full-width banner component for displaying security classification\n * information at the top or bottom of pages. Essential for applications handling\n * classified or sensitive information requiring clear visual indicators.\n *\n * @param props - The classification banner props.\n * @param props.ref - Reference to the banner element.\n * @param props.children - Custom text content (defaults to variant label).\n * @param props.className - Additional CSS class names for styling.\n * @param props.variant - Classification level variant.\n * @returns The classification banner component.\n *\n * @example\n * ```tsx\n * // Top classification banner\n * <ClassificationBanner variant=\"confidential\" />\n * ```\n */\nexport function ClassificationBanner({\n ref,\n ...props\n}: ClassificationBannerProps) {\n [props, ref] = useContextProps(\n props,\n ref ?? null,\n ClassificationBannerContext,\n );\n\n const { children, className, variant = 'missing', ...rest } = props;\n\n return (\n <div\n {...rest}\n ref={ref}\n className={clsx(styles.banner, styles[variant], className)}\n >\n {children || fallbackContent[variant]}\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAoBA,MAAM,kBAAkB;CACtB,SAAS;CACT,cAAc;CACd,KAAK;CACL,cAAc;CACd,QAAQ;CACR,cAAc;CACd,UAAU;CACX;;;;;;;;;;;;;;;;;;;;;AAsBD,SAAgB,qBAAqB,EACnC,KACA,GAAG,SACyB;AAC5B,EAAC,OAAO,OAAO,gBACb,OACA,OAAO,MACP,4BACD;CAED,MAAM,EAAE,UAAU,WAAW,UAAU,WAAW,GAAG,SAAS;AAE9D,QACE,oBAAC;EACC,GAAI;EACC;EACL,WAAW,KAAK,OAAO,QAAQ,OAAO,UAAU,UAAU;YAEzD,YAAY,gBAAgB;GACzB"}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
import { ClockProps } from "./types.js";
|
|
14
14
|
import "client-only";
|
|
15
|
-
import * as
|
|
15
|
+
import * as react_jsx_runtime9 from "react/jsx-runtime";
|
|
16
16
|
|
|
17
17
|
//#region src/components/clock/index.d.ts
|
|
18
18
|
|
|
@@ -58,7 +58,7 @@ import * as react_jsx_runtime12 from "react/jsx-runtime";
|
|
|
58
58
|
declare function Clock({
|
|
59
59
|
formatter,
|
|
60
60
|
...rest
|
|
61
|
-
}: ClockProps):
|
|
61
|
+
}: ClockProps): react_jsx_runtime9.JSX.Element;
|
|
62
62
|
//#endregion
|
|
63
63
|
export { Clock };
|
|
64
64
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -13,15 +13,16 @@
|
|
|
13
13
|
|
|
14
14
|
'use client';
|
|
15
15
|
|
|
16
|
-
import { Label
|
|
16
|
+
import { Label } from "../label/index.js";
|
|
17
17
|
import "client-only";
|
|
18
18
|
import { useMemo } from "react";
|
|
19
19
|
import { clsx } from "@accelint/design-foundation/lib/utils";
|
|
20
|
-
import {
|
|
20
|
+
import { composeRenderProps } from "react-aria-components/composeRenderProps";
|
|
21
21
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
22
22
|
import { rgba255TupleToHex } from "@accelint/converters/hex";
|
|
23
23
|
import { uuid } from "@accelint/core";
|
|
24
24
|
import { isRgba255Tuple } from "@accelint/predicates/is-rgba-255-tuple";
|
|
25
|
+
import { ColorSwatch, ColorSwatchPicker, ColorSwatchPickerItem } from "react-aria-components/ColorSwatchPicker";
|
|
25
26
|
import styles from "./styles.module.css";
|
|
26
27
|
|
|
27
28
|
//#region src/components/color-picker/index.tsx
|
|
@@ -33,7 +34,7 @@ function ColorPicker({ classNames, defaultValue, isRequired, items, label, ref,
|
|
|
33
34
|
return /* @__PURE__ */ jsxs("div", {
|
|
34
35
|
ref,
|
|
35
36
|
className: clsx(styles.container, classNames?.container),
|
|
36
|
-
children: [label && /* @__PURE__ */ jsx(Label
|
|
37
|
+
children: [label && /* @__PURE__ */ jsx(Label, {
|
|
37
38
|
className: classNames?.label,
|
|
38
39
|
id: labelId,
|
|
39
40
|
isRequired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/color-picker/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { rgba255TupleToHex } from '@accelint/converters/hex';\nimport { uuid } from '@accelint/core';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport {\n isRgba255Tuple,\n type Rgba255Tuple,\n} from '@accelint/predicates/is-rgba-255-tuple';\nimport { useMemo } from 'react';\nimport {\n ColorSwatch,\n ColorSwatchPicker,\n ColorSwatchPickerItem,\n type Color,\n} from 'react-aria-components/ColorSwatchPicker';\nimport { Label } from '../label';\nimport styles from './styles.module.css';\nimport type { ColorPickerProps } from './types';\nimport { composeRenderProps } from 'react-aria-components/composeRenderProps';\n\n/**\n * A color picker component that renders a grid of color swatches for selection.\n *\n * This component provides a simple interface for users to select from a predefined\n * set of colors. It renders each color as an interactive swatch that can be clicked\n * to select that color. The component supports keyboard navigation, accessibility\n * features, and fine-grained styling control through the classNames prop.\n *\n * @param props - The color picker props.\n * @param props.items - Array of color values to display as selectable swatches.\n * @param props.classNames - Custom class names for sub-elements.\n * @param props.classNames.container - Class name for the outer container element.\n * @param props.classNames.label - Class name for the label element.\n * @param props.classNames.picker - Class name for the picker container.\n * @param props.classNames.item - Class name for individual swatch items.\n * @param props.classNames.swatch - Class name for the color swatch elements.\n * @param props.label - Label text displayed above the picker.\n * @returns The color picker component.\n *\n * @example\n * ```tsx\n * const colors = [\n * '#ff0000',\n * '#00ff00',\n * '#0000ff',\n * ];\n *\n * <ColorPicker\n * items={colors}\n * value=\"#ff0000\"\n * onChange={(color) => console.log('Selected:', color)}\n * classNames={{\n * picker: 'gap-4',\n * item: 'rounded-lg',\n * swatch: 'w-8 h-8',\n * }}\n * />\n * ```\n *\n * @remarks\n * - Colors can be provided as Color objects or color strings\n * - The component automatically handles color parsing and validation\n * - Supports all accessibility features from react-aria-components\n * - Uses a grid layout by default but can be customized via the layout prop\n */\nfunction normalizeColor(value: string | Color | Rgba255Tuple): string | Color;\nfunction normalizeColor(\n value: string | Color | Rgba255Tuple | undefined,\n): string | Color | undefined;\nfunction normalizeColor(\n value: string | Color | Rgba255Tuple | undefined,\n): string | Color | undefined {\n return isRgba255Tuple(value) ? rgba255TupleToHex(value) : value;\n}\n\nexport function ColorPicker({\n classNames,\n defaultValue,\n isRequired,\n items,\n label,\n ref,\n value,\n ...rest\n}: ColorPickerProps) {\n const labelId = useMemo(\n () => (label ? uuid({ path: [label] }) : undefined),\n [label],\n );\n\n return (\n <div ref={ref} className={clsx(styles.container, classNames?.container)}>\n {label && (\n <Label\n className={classNames?.label}\n id={labelId}\n isRequired={isRequired}\n >\n {label}\n </Label>\n )}\n <ColorSwatchPicker\n {...rest}\n aria-labelledby={labelId}\n defaultValue={normalizeColor(defaultValue)}\n value={normalizeColor(value)}\n className={composeRenderProps(classNames?.picker, (className) =>\n clsx(styles.picker, className),\n )}\n >\n {items.map((item) => {\n const color = normalizeColor(item);\n return (\n <ColorSwatchPickerItem\n key={typeof color === 'string' ? color : color.toString('hexa')}\n className={composeRenderProps(classNames?.item, (className) =>\n clsx(styles.item, className),\n )}\n color={color}\n >\n <ColorSwatch\n className={composeRenderProps(classNames?.swatch, (className) =>\n clsx(styles.swatch, className),\n )}\n />\n </ColorSwatchPickerItem>\n );\n })}\n </ColorSwatchPicker>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkFA,SAAS,eACP,OAC4B;AAC5B,QAAO,eAAe,MAAM,GAAG,kBAAkB,MAAM,GAAG;;AAG5D,SAAgB,YAAY,EAC1B,YACA,cACA,YACA,OACA,OACA,KACA,OACA,GAAG,QACgB;CACnB,MAAM,UAAU,cACP,QAAQ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,QACzC,CAAC,MAAM,CACR;AAED,QACE,qBAAC;EAAS;EAAK,WAAW,KAAK,OAAO,WAAW,YAAY,UAAU;aACpE,SACC,oBAAC;GACC,WAAW,YAAY;GACvB,IAAI;GACQ;aAEX;IACK,EAEV,oBAAC;GACC,GAAI;GACJ,mBAAiB;GACjB,cAAc,eAAe,aAAa;GAC1C,OAAO,eAAe,MAAM;GAC5B,WAAW,mBAAmB,YAAY,SAAS,cACjD,KAAK,OAAO,QAAQ,UAAU,CAC/B;aAEA,MAAM,KAAK,SAAS;IACnB,MAAM,QAAQ,eAAe,KAAK;AAClC,WACE,oBAAC;KAEC,WAAW,mBAAmB,YAAY,OAAO,cAC/C,KAAK,OAAO,MAAM,UAAU,CAC7B;KACM;eAEP,oBAAC,eACC,WAAW,mBAAmB,YAAY,SAAS,cACjD,KAAK,OAAO,QAAQ,UAAU,CAC/B,GACD;OAVG,OAAO,UAAU,WAAW,QAAQ,MAAM,SAAS,OAAO,CAWzC;KAE1B;IACgB;GAChB"}
|
|
@@ -11,8 +11,9 @@
|
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
import { RefAttributes } from "react";
|
|
14
|
-
import {
|
|
14
|
+
import { LabelProps } from "react-aria-components/Label";
|
|
15
15
|
import { Rgba255Tuple } from "@accelint/predicates/is-rgba-255-tuple";
|
|
16
|
+
import { ColorSwatchPickerItemProps, ColorSwatchPickerProps, ColorSwatchProps } from "react-aria-components/ColorSwatchPicker";
|
|
16
17
|
|
|
17
18
|
//#region src/components/color-picker/types.d.ts
|
|
18
19
|
/**
|
|
@@ -14,13 +14,13 @@ import { ProviderProps } from "../../lib/types.js";
|
|
|
14
14
|
import { OptionsDataItem } from "../options/types.js";
|
|
15
15
|
import { ComboBoxFieldProps } from "./types.js";
|
|
16
16
|
import "client-only";
|
|
17
|
-
import * as
|
|
18
|
-
import
|
|
19
|
-
import
|
|
17
|
+
import * as react7 from "react";
|
|
18
|
+
import * as react_jsx_runtime28 from "react/jsx-runtime";
|
|
19
|
+
import { ContextValue } from "react-aria-components/slots";
|
|
20
20
|
|
|
21
21
|
//#region src/components/combobox-field/context.d.ts
|
|
22
22
|
/** React context for sharing ComboBoxField configuration across components. */
|
|
23
|
-
declare const ComboBoxFieldContext:
|
|
23
|
+
declare const ComboBoxFieldContext: react7.Context<ContextValue<ComboBoxFieldProps<any>, HTMLDivElement>>;
|
|
24
24
|
/**
|
|
25
25
|
* Context provider for setting default props across multiple ComboBoxField components.
|
|
26
26
|
*
|
|
@@ -39,7 +39,7 @@ declare const ComboBoxFieldContext: react4.Context<ContextValue<ComboBoxFieldPro
|
|
|
39
39
|
declare function ComboBoxFieldProvider<T extends OptionsDataItem>({
|
|
40
40
|
children,
|
|
41
41
|
...props
|
|
42
|
-
}: ProviderProps<ComboBoxFieldProps<T>>):
|
|
42
|
+
}: ProviderProps<ComboBoxFieldProps<T>>): react_jsx_runtime28.JSX.Element;
|
|
43
43
|
//#endregion
|
|
44
44
|
export { ComboBoxFieldContext, ComboBoxFieldProvider };
|
|
45
45
|
//# sourceMappingURL=context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/combobox-field/context.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { createContext } from 'react';\nimport type { ContextValue } from 'react-aria-components';\nimport type { ProviderProps } from '@/lib/types';\nimport type { OptionsDataItem } from '../options/types';\nimport type { ComboBoxFieldProps } from './types';\n\n/** React context for sharing ComboBoxField configuration across components. */\nexport const ComboBoxFieldContext =\n // biome-ignore lint/suspicious/noExplicitAny: Setting a type would restrict it beyond what the component allows to extend to\n createContext<ContextValue<ComboBoxFieldProps<any>, HTMLDivElement>>(null);\n\n/**\n * Context provider for setting default props across multiple ComboBoxField components.\n *\n * @param props - The provider props.\n * @param props.children - Child components that will receive the combobox field context.\n * @returns The combobox field context provider wrapping children.\n *\n * @example\n * ```tsx\n * <ComboBoxFieldProvider size=\"small\">\n * <ComboBoxField defaultItems={items1}>{...}</ComboBoxField>\n * <ComboBoxField defaultItems={items2}>{...}</ComboBoxField>\n * </ComboBoxFieldProvider>\n * ```\n */\nexport function ComboBoxFieldProvider<T extends OptionsDataItem>({\n children,\n ...props\n}: ProviderProps<ComboBoxFieldProps<T>>) {\n return (\n <ComboBoxFieldContext.Provider value={props}>\n {children}\n </ComboBoxFieldContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAqBA,MAAa,uBAEX,cAAqE,KAAK;;;;;;;;;;;;;;;;AAiB5E,SAAgB,sBAAiD,EAC/D,UACA,GAAG,SACoC;AACvC,QACE,oBAAC,qBAAqB;EAAS,OAAO;EACnC;GAC6B"}
|
|
1
|
+
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/combobox-field/context.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport 'client-only';\nimport { createContext } from 'react';\nimport type { ContextValue } from 'react-aria-components/slots';\nimport type { ProviderProps } from '@/lib/types';\nimport type { OptionsDataItem } from '../options/types';\nimport type { ComboBoxFieldProps } from './types';\n\n/** React context for sharing ComboBoxField configuration across components. */\nexport const ComboBoxFieldContext =\n // biome-ignore lint/suspicious/noExplicitAny: Setting a type would restrict it beyond what the component allows to extend to\n createContext<ContextValue<ComboBoxFieldProps<any>, HTMLDivElement>>(null);\n\n/**\n * Context provider for setting default props across multiple ComboBoxField components.\n *\n * @param props - The provider props.\n * @param props.children - Child components that will receive the combobox field context.\n * @returns The combobox field context provider wrapping children.\n *\n * @example\n * ```tsx\n * <ComboBoxFieldProvider size=\"small\">\n * <ComboBoxField defaultItems={items1}>{...}</ComboBoxField>\n * <ComboBoxField defaultItems={items2}>{...}</ComboBoxField>\n * </ComboBoxFieldProvider>\n * ```\n */\nexport function ComboBoxFieldProvider<T extends OptionsDataItem>({\n children,\n ...props\n}: ProviderProps<ComboBoxFieldProps<T>>) {\n return (\n <ComboBoxFieldContext.Provider value={props}>\n {children}\n </ComboBoxFieldContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAqBA,MAAa,uBAEX,cAAqE,KAAK;;;;;;;;;;;;;;;;AAiB5E,SAAgB,sBAAiD,EAC/D,UACA,GAAG,SACoC;AACvC,QACE,oBAAC,qBAAqB;EAAS,OAAO;EACnC;GAC6B"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
import { OptionsDataItem } from "../options/types.js";
|
|
14
14
|
import { ComboBoxFieldProps } from "./types.js";
|
|
15
15
|
import "client-only";
|
|
16
|
-
import * as
|
|
16
|
+
import * as react_jsx_runtime33 from "react/jsx-runtime";
|
|
17
17
|
|
|
18
18
|
//#region src/components/combobox-field/index.d.ts
|
|
19
19
|
|
|
@@ -43,7 +43,7 @@ import * as react_jsx_runtime27 from "react/jsx-runtime";
|
|
|
43
43
|
declare function ComboBoxField<T extends OptionsDataItem>({
|
|
44
44
|
ref,
|
|
45
45
|
...props
|
|
46
|
-
}: ComboBoxFieldProps<T>):
|
|
46
|
+
}: ComboBoxFieldProps<T>): react_jsx_runtime33.JSX.Element;
|
|
47
47
|
//#endregion
|
|
48
48
|
export { ComboBoxField };
|
|
49
49
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -14,27 +14,27 @@
|
|
|
14
14
|
'use client';
|
|
15
15
|
|
|
16
16
|
import { Icon } from "../icon/index.js";
|
|
17
|
-
import { Label
|
|
17
|
+
import { Label } from "../label/index.js";
|
|
18
18
|
import { Options } from "../options/index.js";
|
|
19
19
|
import { ComboBoxFieldContext } from "./context.js";
|
|
20
|
-
import { $23b9f4fcf0fe224b$export$d68d59712b04d9d1 } from "../../node_modules/.pnpm/@react-aria_collections@3.0.0-rc.7_react-dom@19.2.3_react@19.2.3__react@19.2.3/node_modules/@react-aria/collections/dist/BaseCollection.js";
|
|
21
20
|
import { ClearButton } from "../button/__internal__/clear.js";
|
|
22
21
|
import "client-only";
|
|
23
22
|
import { useCallback, useRef } from "react";
|
|
24
23
|
import { clsx } from "@accelint/design-foundation/lib/utils";
|
|
25
|
-
import {
|
|
24
|
+
import { composeRenderProps } from "react-aria-components/composeRenderProps";
|
|
26
25
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
26
|
+
import { useContextProps } from "react-aria-components/slots";
|
|
27
27
|
import ChevronDown from "@accelint/icons/chevron-down";
|
|
28
|
-
import {
|
|
28
|
+
import { Button } from "react-aria-components/Button";
|
|
29
|
+
import { ComboBox, FieldError } from "react-aria-components/ComboBox";
|
|
30
|
+
import { Text } from "react-aria-components/Text";
|
|
31
|
+
import { ListLayout, Virtualizer } from "react-aria-components/Virtualizer";
|
|
29
32
|
import styles from "./styles.module.css";
|
|
33
|
+
import { useControlledState } from "react-stately/useControlledState";
|
|
34
|
+
import { Input } from "react-aria-components/Input";
|
|
35
|
+
import { Popover } from "react-aria-components/Popover";
|
|
30
36
|
|
|
31
37
|
//#region src/components/combobox-field/index.tsx
|
|
32
|
-
if (Object.getOwnPropertyDescriptor($23b9f4fcf0fe224b$export$d68d59712b04d9d1.prototype, "childNodes")?.get) Object.defineProperty($23b9f4fcf0fe224b$export$d68d59712b04d9d1.prototype, "childNodes", {
|
|
33
|
-
get() {
|
|
34
|
-
return [];
|
|
35
|
-
},
|
|
36
|
-
configurable: true
|
|
37
|
-
});
|
|
38
38
|
/**
|
|
39
39
|
* ComboBoxField - Accessible searchable combobox with dropdown options
|
|
40
40
|
*
|
|
@@ -92,7 +92,7 @@ function ComboBoxField({ ref, ...props }) {
|
|
|
92
92
|
children: ({ isDisabled, isInvalid, isRequired }) => {
|
|
93
93
|
const shouldShowDescription = !isReadOnly && !!descriptionProp && !(isSmall || isInvalid);
|
|
94
94
|
return /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
95
|
-
!!labelProp && !isSmall && /* @__PURE__ */ jsx(Label
|
|
95
|
+
!!labelProp && !isSmall && /* @__PURE__ */ jsx(Label, {
|
|
96
96
|
className: clsx(styles.label, classNames?.label),
|
|
97
97
|
isDisabled,
|
|
98
98
|
isRequired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["CollectionNode","Label"],"sources":["../../../src/components/combobox-field/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport ChevronDown from '@accelint/icons/chevron-down';\nimport { CollectionNode } from '@react-aria/collections';\nimport { useControlledState } from '@react-stately/utils';\nimport { useCallback, useRef } from 'react';\n\n// Patch CollectionNode.childNodes getter to return an empty array instead of\n// throwing. React 19 dev-mode profiling (logComponentRender → addObjectDiffToProperties)\n// accesses this getter when diffing component props during commitPassiveMountOnFiber.\n// The thrown error prevents useComboBoxState's effect from running, breaking\n// internal state tracking and causing input value resets on every keystroke\n// with static children.\n// https://github.com/adobe/react-spectrum/issues/9405\nif (\n Object.getOwnPropertyDescriptor(CollectionNode.prototype, 'childNodes')?.get\n) {\n Object.defineProperty(CollectionNode.prototype, 'childNodes', {\n get() {\n return [];\n },\n configurable: true,\n });\n}\n\nimport {\n Button,\n ComboBox,\n type ComboBoxProps,\n composeRenderProps,\n FieldError,\n Input,\n ListLayout,\n Popover,\n Text,\n useContextProps,\n Virtualizer,\n} from 'react-aria-components';\nimport { ClearButton } from '../button/__internal__/clear';\nimport { Icon } from '../icon';\nimport { Label } from '../label';\nimport { Options } from '../options';\nimport { ComboBoxFieldContext } from './context';\nimport styles from './styles.module.css';\nimport type { OptionsDataItem } from '../options/types';\nimport type { ComboBoxFieldProps } from './types';\n\n/**\n * ComboBoxField - Accessible searchable combobox with dropdown options\n *\n * A combobox field that provides a searchable input with virtualized dropdown\n * options and support for sections, icons, and rich content.\n *\n * @param props - The combobox field props.\n * @param props.ref - Reference to the field element.\n * @param props.children - Render function for options.\n * @param props.classNames - Custom class names for sub-elements.\n * @param props.label - Label text displayed above the field.\n * @param props.description - Helper text displayed below the field.\n * @param props.errorMessage - Error message displayed when invalid.\n * @param props.size - Size variant of the field.\n * @returns The combobox field component.\n *\n * @example\n * ```tsx\n * <ComboBoxField defaultItems={items}>\n * {(item) => <OptionsItem key={item.id} textValue={item.name}>{item.name}</OptionsItem>}\n * </ComboBoxField>\n * ```\n */\nexport function ComboBoxField<T extends OptionsDataItem>({\n ref,\n ...props\n}: ComboBoxFieldProps<T>) {\n [props, ref] = useContextProps(props, ref ?? null, ComboBoxFieldContext);\n\n const {\n children,\n classNames,\n description: descriptionProp,\n errorMessage: errorMessageProp,\n inputProps,\n inputValue: inputValueProp,\n defaultInputValue = '',\n label: labelProp,\n layoutOptions,\n menuTrigger = 'focus',\n size = 'medium',\n isInvalid: isInvalidProp,\n isReadOnly = false,\n isClearable = true,\n onInputChange,\n onKeyDown,\n ...rest\n } = props;\n\n const [inputValue, setInputValue] = useControlledState(\n inputValueProp,\n defaultInputValue,\n onInputChange,\n );\n\n const pointerDownInsidePopoverRef = useRef(false);\n const errorMessage = errorMessageProp || null; // Protect against empty string\n const isSmall = size === 'small';\n\n const handleClear = useCallback(() => {\n setInputValue('');\n }, [setInputValue]);\n\n const handleKeyDown = useCallback<Required<ComboBoxProps<T>>['onKeyDown']>(\n (event) => {\n onKeyDown?.(event);\n if (isClearable && event.key === 'Escape' && inputValue) {\n handleClear();\n }\n },\n [onKeyDown, isClearable, handleClear, inputValue],\n );\n\n return (\n <ComboBox<T>\n {...rest}\n ref={ref}\n className={composeRenderProps(classNames?.field, (className) =>\n clsx('group/combobox-field', styles.field, className),\n )}\n menuTrigger={menuTrigger}\n isInvalid={isInvalidProp || (errorMessage ? true : undefined)} // Leave uncontrolled if possible to fallback to validation state\n isReadOnly={isReadOnly}\n inputValue={inputValue}\n onInputChange={setInputValue}\n onKeyDown={handleKeyDown}\n data-size={size}\n data-empty={!inputValue || null}\n >\n {({ isDisabled, isInvalid, isRequired }) => {\n const shouldShowDescription =\n !isReadOnly && !!descriptionProp && !(isSmall || isInvalid);\n\n return (\n <>\n {!!labelProp && !isSmall && (\n <Label\n className={clsx(styles.label, classNames?.label)}\n isDisabled={isDisabled}\n isRequired={isRequired}\n >\n {labelProp}\n </Label>\n )}\n <div\n className={clsx(styles.control, classNames?.control)}\n data-readonly={isReadOnly || null}\n >\n <Input\n {...inputProps}\n tabIndex={isReadOnly ? -1 : 0}\n className={composeRenderProps(classNames?.input, (className) =>\n clsx(styles.input, className),\n )}\n title={inputProps?.value ? String(inputProps?.value) : ''}\n />\n {!isReadOnly && isClearable && (\n <ClearButton\n className={composeRenderProps(\n classNames?.clear,\n (className) => clsx(styles.clear, className),\n )}\n isDisabled={isDisabled}\n onPress={handleClear}\n />\n )}\n {!isReadOnly && (\n <Button\n className={composeRenderProps(\n classNames?.trigger,\n (className) => clsx(styles.trigger, className),\n )}\n >\n <Icon size='small'>\n <ChevronDown />\n </Icon>\n </Button>\n )}\n </div>\n {shouldShowDescription && (\n <Text\n className={clsx(styles.description, classNames?.description)}\n slot='description'\n >\n {descriptionProp}\n </Text>\n )}\n <FieldError\n className={composeRenderProps(classNames?.error, (className) =>\n clsx(styles.error, className),\n )}\n >\n {errorMessage}\n </FieldError>\n <Popover\n onPointerDownCapture={() => {\n pointerDownInsidePopoverRef.current = true;\n }}\n onPointerUpCapture={(e) => {\n if (!pointerDownInsidePopoverRef.current) {\n e.stopPropagation();\n e.preventDefault();\n }\n pointerDownInsidePopoverRef.current = false;\n }}\n className={composeRenderProps(classNames?.popover, (className) =>\n clsx(styles.popover, className),\n )}\n >\n <Virtualizer layout={ListLayout} layoutOptions={layoutOptions}>\n <Options>{children}</Options>\n </Virtualizer>\n </Popover>\n </>\n );\n }}\n </ComboBox>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,IACE,OAAO,yBAAyBA,0CAAe,WAAW,aAAa,EAAE,IAEzE,QAAO,eAAeA,0CAAe,WAAW,cAAc;CAC5D,MAAM;AACJ,SAAO,EAAE;;CAEX,cAAc;CACf,CAAC;;;;;;;;;;;;;;;;;;;;;;;;AAgDJ,SAAgB,cAAyC,EACvD,KACA,GAAG,SACqB;AACxB,EAAC,OAAO,OAAO,gBAAgB,OAAO,OAAO,MAAM,qBAAqB;CAExE,MAAM,EACJ,UACA,YACA,aAAa,iBACb,cAAc,kBACd,YACA,YAAY,gBACZ,oBAAoB,IACpB,OAAO,WACP,eACA,cAAc,SACd,OAAO,UACP,WAAW,eACX,aAAa,OACb,cAAc,MACd,eACA,WACA,GAAG,SACD;CAEJ,MAAM,CAAC,YAAY,iBAAiB,mBAClC,gBACA,mBACA,cACD;CAED,MAAM,8BAA8B,OAAO,MAAM;CACjD,MAAM,eAAe,oBAAoB;CACzC,MAAM,UAAU,SAAS;CAEzB,MAAM,cAAc,kBAAkB;AACpC,gBAAc,GAAG;IAChB,CAAC,cAAc,CAAC;CAEnB,MAAM,gBAAgB,aACnB,UAAU;AACT,cAAY,MAAM;AAClB,MAAI,eAAe,MAAM,QAAQ,YAAY,WAC3C,cAAa;IAGjB;EAAC;EAAW;EAAa;EAAa;EAAW,CAClD;AAED,QACE,oBAAC;EACC,GAAI;EACC;EACL,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,wBAAwB,OAAO,OAAO,UAAU,CACtD;EACY;EACb,WAAW,kBAAkB,eAAe,OAAO;EACvC;EACA;EACZ,eAAe;EACf,WAAW;EACX,aAAW;EACX,cAAY,CAAC,cAAc;aAEzB,EAAE,YAAY,WAAW,iBAAiB;GAC1C,MAAM,wBACJ,CAAC,cAAc,CAAC,CAAC,mBAAmB,EAAE,WAAW;AAEnD,UACE;IACG,CAAC,CAAC,aAAa,CAAC,WACf,oBAACC;KACC,WAAW,KAAK,OAAO,OAAO,YAAY,MAAM;KACpC;KACA;eAEX;MACK;IAEV,qBAAC;KACC,WAAW,KAAK,OAAO,SAAS,YAAY,QAAQ;KACpD,iBAAe,cAAc;;MAE7B,oBAAC;OACC,GAAI;OACJ,UAAU,aAAa,KAAK;OAC5B,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,OAAO,OAAO,UAAU,CAC9B;OACD,OAAO,YAAY,QAAQ,OAAO,YAAY,MAAM,GAAG;QACvD;MACD,CAAC,cAAc,eACd,oBAAC;OACC,WAAW,mBACT,YAAY,QACX,cAAc,KAAK,OAAO,OAAO,UAAU,CAC7C;OACW;OACZ,SAAS;QACT;MAEH,CAAC,cACA,oBAAC;OACC,WAAW,mBACT,YAAY,UACX,cAAc,KAAK,OAAO,SAAS,UAAU,CAC/C;iBAED,oBAAC;QAAK,MAAK;kBACT,oBAAC,gBAAc;SACV;QACA;;MAEP;IACL,yBACC,oBAAC;KACC,WAAW,KAAK,OAAO,aAAa,YAAY,YAAY;KAC5D,MAAK;eAEJ;MACI;IAET,oBAAC;KACC,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,OAAO,OAAO,UAAU,CAC9B;eAEA;MACU;IACb,oBAAC;KACC,4BAA4B;AAC1B,kCAA4B,UAAU;;KAExC,qBAAqB,MAAM;AACzB,UAAI,CAAC,4BAA4B,SAAS;AACxC,SAAE,iBAAiB;AACnB,SAAE,gBAAgB;;AAEpB,kCAA4B,UAAU;;KAExC,WAAW,mBAAmB,YAAY,UAAU,cAClD,KAAK,OAAO,SAAS,UAAU,CAChC;eAED,oBAAC;MAAY,QAAQ;MAA2B;gBAC9C,oBAAC,WAAS,WAAmB;OACjB;MACN;OACT;;GAGE"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/combobox-field/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport ChevronDown from '@accelint/icons/chevron-down';\nimport { useCallback, useRef } from 'react';\nimport {\n ComboBox,\n type ComboBoxProps,\n FieldError,\n} from 'react-aria-components/ComboBox';\nimport { ClearButton } from '../button/__internal__/clear';\nimport { Icon } from '../icon';\nimport { Label } from '../label';\nimport { Options } from '../options';\nimport { ComboBoxFieldContext } from './context';\nimport styles from './styles.module.css';\nimport type { OptionsDataItem } from '../options/types';\nimport type { ComboBoxFieldProps } from './types';\nimport { useControlledState } from 'react-stately/useControlledState';\nimport { composeRenderProps } from 'react-aria-components/composeRenderProps';\nimport { useContextProps } from 'react-aria-components/slots';\nimport { Input } from 'react-aria-components/Input';\nimport { Button } from 'react-aria-components/Button';\nimport { Text } from 'react-aria-components/Text';\nimport { Popover } from 'react-aria-components/Popover';\nimport { Virtualizer, ListLayout } from 'react-aria-components/Virtualizer';\n\n/**\n * ComboBoxField - Accessible searchable combobox with dropdown options\n *\n * A combobox field that provides a searchable input with virtualized dropdown\n * options and support for sections, icons, and rich content.\n *\n * @param props - The combobox field props.\n * @param props.ref - Reference to the field element.\n * @param props.children - Render function for options.\n * @param props.classNames - Custom class names for sub-elements.\n * @param props.label - Label text displayed above the field.\n * @param props.description - Helper text displayed below the field.\n * @param props.errorMessage - Error message displayed when invalid.\n * @param props.size - Size variant of the field.\n * @returns The combobox field component.\n *\n * @example\n * ```tsx\n * <ComboBoxField defaultItems={items}>\n * {(item) => <OptionsItem key={item.id} textValue={item.name}>{item.name}</OptionsItem>}\n * </ComboBoxField>\n * ```\n */\nexport function ComboBoxField<T extends OptionsDataItem>({\n ref,\n ...props\n}: ComboBoxFieldProps<T>) {\n [props, ref] = useContextProps(props, ref ?? null, ComboBoxFieldContext);\n\n const {\n children,\n classNames,\n description: descriptionProp,\n errorMessage: errorMessageProp,\n inputProps,\n inputValue: inputValueProp,\n defaultInputValue = '',\n label: labelProp,\n layoutOptions,\n menuTrigger = 'focus',\n size = 'medium',\n isInvalid: isInvalidProp,\n isReadOnly = false,\n isClearable = true,\n onInputChange,\n onKeyDown,\n ...rest\n } = props;\n\n const [inputValue, setInputValue] = useControlledState(\n inputValueProp,\n defaultInputValue,\n onInputChange,\n );\n\n const pointerDownInsidePopoverRef = useRef(false);\n const errorMessage = errorMessageProp || null; // Protect against empty string\n const isSmall = size === 'small';\n\n const handleClear = useCallback(() => {\n setInputValue('');\n }, [setInputValue]);\n\n const handleKeyDown = useCallback<Required<ComboBoxProps<T>>['onKeyDown']>(\n (event) => {\n onKeyDown?.(event);\n if (isClearable && event.key === 'Escape' && inputValue) {\n handleClear();\n }\n },\n [onKeyDown, isClearable, handleClear, inputValue],\n );\n\n return (\n <ComboBox<T>\n {...rest}\n ref={ref}\n className={composeRenderProps(classNames?.field, (className) =>\n clsx('group/combobox-field', styles.field, className),\n )}\n menuTrigger={menuTrigger}\n isInvalid={isInvalidProp || (errorMessage ? true : undefined)} // Leave uncontrolled if possible to fallback to validation state\n isReadOnly={isReadOnly}\n inputValue={inputValue}\n onInputChange={setInputValue}\n onKeyDown={handleKeyDown}\n data-size={size}\n data-empty={!inputValue || null}\n >\n {({ isDisabled, isInvalid, isRequired }) => {\n const shouldShowDescription =\n !isReadOnly && !!descriptionProp && !(isSmall || isInvalid);\n\n return (\n <>\n {!!labelProp && !isSmall && (\n <Label\n className={clsx(styles.label, classNames?.label)}\n isDisabled={isDisabled}\n isRequired={isRequired}\n >\n {labelProp}\n </Label>\n )}\n <div\n className={clsx(styles.control, classNames?.control)}\n data-readonly={isReadOnly || null}\n >\n <Input\n {...inputProps}\n tabIndex={isReadOnly ? -1 : 0}\n className={composeRenderProps(classNames?.input, (className) =>\n clsx(styles.input, className),\n )}\n title={inputProps?.value ? String(inputProps?.value) : ''}\n />\n {!isReadOnly && isClearable && (\n <ClearButton\n className={composeRenderProps(\n classNames?.clear,\n (className) => clsx(styles.clear, className),\n )}\n isDisabled={isDisabled}\n onPress={handleClear}\n />\n )}\n {!isReadOnly && (\n <Button\n className={composeRenderProps(\n classNames?.trigger,\n (className) => clsx(styles.trigger, className),\n )}\n >\n <Icon size='small'>\n <ChevronDown />\n </Icon>\n </Button>\n )}\n </div>\n {shouldShowDescription && (\n <Text\n className={clsx(styles.description, classNames?.description)}\n slot='description'\n >\n {descriptionProp}\n </Text>\n )}\n <FieldError\n className={composeRenderProps(classNames?.error, (className) =>\n clsx(styles.error, className),\n )}\n >\n {errorMessage}\n </FieldError>\n <Popover\n onPointerDownCapture={() => {\n pointerDownInsidePopoverRef.current = true;\n }}\n onPointerUpCapture={(e) => {\n if (!pointerDownInsidePopoverRef.current) {\n e.stopPropagation();\n e.preventDefault();\n }\n pointerDownInsidePopoverRef.current = false;\n }}\n className={composeRenderProps(classNames?.popover, (className) =>\n clsx(styles.popover, className),\n )}\n >\n <Virtualizer layout={ListLayout} layoutOptions={layoutOptions}>\n <Options>{children}</Options>\n </Virtualizer>\n </Popover>\n </>\n );\n }}\n </ComboBox>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6DA,SAAgB,cAAyC,EACvD,KACA,GAAG,SACqB;AACxB,EAAC,OAAO,OAAO,gBAAgB,OAAO,OAAO,MAAM,qBAAqB;CAExE,MAAM,EACJ,UACA,YACA,aAAa,iBACb,cAAc,kBACd,YACA,YAAY,gBACZ,oBAAoB,IACpB,OAAO,WACP,eACA,cAAc,SACd,OAAO,UACP,WAAW,eACX,aAAa,OACb,cAAc,MACd,eACA,WACA,GAAG,SACD;CAEJ,MAAM,CAAC,YAAY,iBAAiB,mBAClC,gBACA,mBACA,cACD;CAED,MAAM,8BAA8B,OAAO,MAAM;CACjD,MAAM,eAAe,oBAAoB;CACzC,MAAM,UAAU,SAAS;CAEzB,MAAM,cAAc,kBAAkB;AACpC,gBAAc,GAAG;IAChB,CAAC,cAAc,CAAC;CAEnB,MAAM,gBAAgB,aACnB,UAAU;AACT,cAAY,MAAM;AAClB,MAAI,eAAe,MAAM,QAAQ,YAAY,WAC3C,cAAa;IAGjB;EAAC;EAAW;EAAa;EAAa;EAAW,CAClD;AAED,QACE,oBAAC;EACC,GAAI;EACC;EACL,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,wBAAwB,OAAO,OAAO,UAAU,CACtD;EACY;EACb,WAAW,kBAAkB,eAAe,OAAO;EACvC;EACA;EACZ,eAAe;EACf,WAAW;EACX,aAAW;EACX,cAAY,CAAC,cAAc;aAEzB,EAAE,YAAY,WAAW,iBAAiB;GAC1C,MAAM,wBACJ,CAAC,cAAc,CAAC,CAAC,mBAAmB,EAAE,WAAW;AAEnD,UACE;IACG,CAAC,CAAC,aAAa,CAAC,WACf,oBAAC;KACC,WAAW,KAAK,OAAO,OAAO,YAAY,MAAM;KACpC;KACA;eAEX;MACK;IAEV,qBAAC;KACC,WAAW,KAAK,OAAO,SAAS,YAAY,QAAQ;KACpD,iBAAe,cAAc;;MAE7B,oBAAC;OACC,GAAI;OACJ,UAAU,aAAa,KAAK;OAC5B,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,OAAO,OAAO,UAAU,CAC9B;OACD,OAAO,YAAY,QAAQ,OAAO,YAAY,MAAM,GAAG;QACvD;MACD,CAAC,cAAc,eACd,oBAAC;OACC,WAAW,mBACT,YAAY,QACX,cAAc,KAAK,OAAO,OAAO,UAAU,CAC7C;OACW;OACZ,SAAS;QACT;MAEH,CAAC,cACA,oBAAC;OACC,WAAW,mBACT,YAAY,UACX,cAAc,KAAK,OAAO,SAAS,UAAU,CAC/C;iBAED,oBAAC;QAAK,MAAK;kBACT,oBAAC,gBAAc;SACV;QACA;;MAEP;IACL,yBACC,oBAAC;KACC,WAAW,KAAK,OAAO,aAAa,YAAY,YAAY;KAC5D,MAAK;eAEJ;MACI;IAET,oBAAC;KACC,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,OAAO,OAAO,UAAU,CAC9B;eAEA;MACU;IACb,oBAAC;KACC,4BAA4B;AAC1B,kCAA4B,UAAU;;KAExC,qBAAqB,MAAM;AACzB,UAAI,CAAC,4BAA4B,SAAS;AACxC,SAAE,iBAAiB;AACnB,SAAE,gBAAgB;;AAEpB,kCAA4B,UAAU;;KAExC,WAAW,mBAAmB,YAAY,UAAU,cAClD,KAAK,OAAO,SAAS,UAAU,CAChC;eAED,oBAAC;MAAY,QAAQ;MAA2B;gBAC9C,oBAAC,WAAS,WAAmB;OACjB;MACN;OACT;;GAGE"}
|
|
@@ -10,10 +10,14 @@
|
|
|
10
10
|
* governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
-
import { ButtonProps
|
|
13
|
+
import { ButtonProps } from "../button/types.js";
|
|
14
14
|
import { OptionsDataItem, OptionsProps } from "../options/types.js";
|
|
15
15
|
import { RefAttributes } from "react";
|
|
16
|
-
import { ComboBoxProps, FieldErrorProps
|
|
16
|
+
import { ComboBoxProps, FieldErrorProps } from "react-aria-components/ComboBox";
|
|
17
|
+
import { ListLayoutOptions, VirtualizerProps } from "react-aria-components/Virtualizer";
|
|
18
|
+
import { LabelProps } from "react-aria-components/Label";
|
|
19
|
+
import { InputProps } from "react-aria-components/Input";
|
|
20
|
+
import { PopoverProps } from "react-aria-components/Popover";
|
|
17
21
|
|
|
18
22
|
//#region src/components/combobox-field/types.d.ts
|
|
19
23
|
/**
|
|
@@ -33,9 +37,9 @@ type ComboBoxFieldProps<T extends OptionsDataItem> = Omit<ComboBoxProps<T>, 'chi
|
|
|
33
37
|
/** Class name for the input element. */
|
|
34
38
|
input?: InputProps['className'];
|
|
35
39
|
/** Class name for the clear button. */
|
|
36
|
-
clear?: ButtonProps
|
|
40
|
+
clear?: ButtonProps['className'];
|
|
37
41
|
/** Class name for the trigger button. */
|
|
38
|
-
trigger?: ButtonProps
|
|
42
|
+
trigger?: ButtonProps['className'];
|
|
39
43
|
/** Class name for the description text. */
|
|
40
44
|
description?: string;
|
|
41
45
|
/** Class name for the error message. */
|
|
@@ -12,9 +12,9 @@
|
|
|
12
12
|
|
|
13
13
|
import { ProviderProps } from "../../lib/types.js";
|
|
14
14
|
import { CoordinateFieldProps, CoordinateFieldState } from "./types.js";
|
|
15
|
-
import * as
|
|
16
|
-
import
|
|
17
|
-
import
|
|
15
|
+
import * as react1 from "react";
|
|
16
|
+
import * as react_jsx_runtime11 from "react/jsx-runtime";
|
|
17
|
+
import { ContextValue } from "react-aria-components/slots";
|
|
18
18
|
|
|
19
19
|
//#region src/components/coordinate-field/context.d.ts
|
|
20
20
|
|
|
@@ -48,7 +48,7 @@ import * as react_jsx_runtime23 from "react/jsx-runtime";
|
|
|
48
48
|
*
|
|
49
49
|
* @see CoordinateFieldStateContext for internal runtime state
|
|
50
50
|
*/
|
|
51
|
-
declare const CoordinateFieldContext:
|
|
51
|
+
declare const CoordinateFieldContext: react1.Context<ContextValue<CoordinateFieldProps, HTMLDivElement>>;
|
|
52
52
|
/**
|
|
53
53
|
* State Context for CoordinateField component.
|
|
54
54
|
*
|
|
@@ -66,7 +66,7 @@ declare const CoordinateFieldContext: react8.Context<ContextValue<CoordinateFiel
|
|
|
66
66
|
* const state = useCoordinateFieldStateContext();
|
|
67
67
|
* const { segmentValues, isDisabled, registerTimeout } = state;
|
|
68
68
|
*/
|
|
69
|
-
declare const CoordinateFieldStateContext:
|
|
69
|
+
declare const CoordinateFieldStateContext: react1.Context<CoordinateFieldState | null>;
|
|
70
70
|
/**
|
|
71
71
|
* Provider component for CoordinateField context
|
|
72
72
|
* Wraps children with CoordinateFieldContext
|
|
@@ -78,7 +78,7 @@ declare const CoordinateFieldStateContext: react8.Context<CoordinateFieldState |
|
|
|
78
78
|
declare function CoordinateFieldProvider({
|
|
79
79
|
children,
|
|
80
80
|
...props
|
|
81
|
-
}: ProviderProps<CoordinateFieldProps>):
|
|
81
|
+
}: ProviderProps<CoordinateFieldProps>): react_jsx_runtime11.JSX.Element;
|
|
82
82
|
/**
|
|
83
83
|
* Provider component for CoordinateField state context
|
|
84
84
|
* Wraps children with CoordinateFieldStateContext
|
|
@@ -94,7 +94,7 @@ declare function CoordinateFieldStateProvider({
|
|
|
94
94
|
}: {
|
|
95
95
|
children: React.ReactNode;
|
|
96
96
|
value: CoordinateFieldState;
|
|
97
|
-
}):
|
|
97
|
+
}): react_jsx_runtime11.JSX.Element;
|
|
98
98
|
/**
|
|
99
99
|
* Hook to access CoordinateField state context
|
|
100
100
|
* Must be used within a CoordinateField component
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/coordinate-field/context.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\n\nimport { createContext, useContext } from 'react';\nimport type { ContextValue } from 'react-aria-components';\nimport type { ProviderProps } from '@/lib/types';\nimport type { CoordinateFieldProps, CoordinateFieldState } from './types';\n\n/**\n * CoordinateField Context Architecture\n *\n * This file defines two separate contexts following the React Aria component pattern:\n *\n * 1. CoordinateFieldContext (Props Context):\n * - Contains user-provided props for the component\n * - Used for React Aria's context-based prop merging\n * - Part of the public composition API\n *\n * 2. CoordinateFieldStateContext (State Context):\n * - Contains derived/computed runtime state\n * - Used to share state with child components (e.g., CoordinateSegment)\n * - Primarily for internal use\n\n * Separation keeps the public API (props) distinct from internal\n * implementation details (state), improving maintainability and composition.\n */\n\n/**\n * Props Context for CoordinateField component.\n *\n * Contains user-provided props (label, format, size, value, onChange, etc.)\n * and is used by React Aria's useContextProps hook for context-based prop merging.\n * This enables parent components to provide default props to nested CoordinateField\n * components, supporting composition patterns.\n *\n * Part of the public API - external consumers can use this for component composition.\n *\n * @see CoordinateFieldStateContext for internal runtime state\n */\nexport const CoordinateFieldContext =\n createContext<ContextValue<CoordinateFieldProps, HTMLDivElement>>(null);\n\n/**\n * State Context for CoordinateField component.\n *\n * Contains derived/computed runtime state (segmentValues, currentValue,\n * validationErrors, registerTimeout, etc.) that is shared with child components\n * like CoordinateSegment. This avoids prop drilling for deeply nested children.\n *\n * This follows the React Aria pattern of separating props context (public API)\n * from state context (internal implementation). While exported for composition\n * scenarios and testing, this is primarily for internal use.\n *\n * @see CoordinateFieldContext for user-provided props\n * @example\n * // Used internally by child components\n * const state = useCoordinateFieldStateContext();\n * const { segmentValues, isDisabled, registerTimeout } = state;\n */\nexport const CoordinateFieldStateContext =\n createContext<CoordinateFieldState | null>(null);\n\n/**\n * Provider component for CoordinateField context\n * Wraps children with CoordinateFieldContext\n *\n * @param props - The provider props.\n * @param props.children - Child components that will receive the coordinate field context.\n * @returns The coordinate field context provider wrapping children.\n */\nexport function CoordinateFieldProvider({\n children,\n ...props\n}: ProviderProps<CoordinateFieldProps>) {\n return (\n <CoordinateFieldContext.Provider value={props}>\n {children}\n </CoordinateFieldContext.Provider>\n );\n}\n\n/**\n * Provider component for CoordinateField state context\n * Wraps children with CoordinateFieldStateContext\n *\n * @param props - The provider props.\n * @param props.children - Child components that will receive the state context.\n * @param props.value - The coordinate field state to provide.\n * @returns The coordinate field state context provider wrapping children.\n */\nexport function CoordinateFieldStateProvider({\n children,\n value,\n}: {\n children: React.ReactNode;\n value: CoordinateFieldState;\n}) {\n return (\n <CoordinateFieldStateContext.Provider value={value}>\n {children}\n </CoordinateFieldStateContext.Provider>\n );\n}\n\n/**\n * Hook to access CoordinateField state context\n * Must be used within a CoordinateField component\n * @throws {Error} If used outside of CoordinateField\n * @returns {CoordinateFieldState} The coordinate field state\n */\nexport const useCoordinateFieldStateContext = () => {\n const context = useContext(CoordinateFieldStateContext);\n if (!context) {\n throw new Error(\n 'useCoordinateFieldStateContext must be used within CoordinateField',\n );\n }\n return context;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDA,MAAa,yBACX,cAAkE,KAAK;;;;;;;;;;;;;;;;;;AAmBzE,MAAa,8BACX,cAA2C,KAAK;;;;;;;;;AAUlD,SAAgB,wBAAwB,EACtC,UACA,GAAG,SACmC;AACtC,QACE,oBAAC,uBAAuB;EAAS,OAAO;EACrC;GAC+B;;;;;;;;;;;AAatC,SAAgB,6BAA6B,EAC3C,UACA,SAIC;AACD,QACE,oBAAC,4BAA4B;EAAgB;EAC1C;GACoC;;;;;;;;AAU3C,MAAa,uCAAuC;CAClD,MAAM,UAAU,WAAW,4BAA4B;AACvD,KAAI,CAAC,QACH,OAAM,IAAI,MACR,qEACD;AAEH,QAAO"}
|
|
1
|
+
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/coordinate-field/context.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\n\nimport { createContext, useContext } from 'react';\nimport type { ContextValue } from 'react-aria-components/slots';\nimport type { ProviderProps } from '@/lib/types';\nimport type { CoordinateFieldProps, CoordinateFieldState } from './types';\n\n/**\n * CoordinateField Context Architecture\n *\n * This file defines two separate contexts following the React Aria component pattern:\n *\n * 1. CoordinateFieldContext (Props Context):\n * - Contains user-provided props for the component\n * - Used for React Aria's context-based prop merging\n * - Part of the public composition API\n *\n * 2. CoordinateFieldStateContext (State Context):\n * - Contains derived/computed runtime state\n * - Used to share state with child components (e.g., CoordinateSegment)\n * - Primarily for internal use\n\n * Separation keeps the public API (props) distinct from internal\n * implementation details (state), improving maintainability and composition.\n */\n\n/**\n * Props Context for CoordinateField component.\n *\n * Contains user-provided props (label, format, size, value, onChange, etc.)\n * and is used by React Aria's useContextProps hook for context-based prop merging.\n * This enables parent components to provide default props to nested CoordinateField\n * components, supporting composition patterns.\n *\n * Part of the public API - external consumers can use this for component composition.\n *\n * @see CoordinateFieldStateContext for internal runtime state\n */\nexport const CoordinateFieldContext =\n createContext<ContextValue<CoordinateFieldProps, HTMLDivElement>>(null);\n\n/**\n * State Context for CoordinateField component.\n *\n * Contains derived/computed runtime state (segmentValues, currentValue,\n * validationErrors, registerTimeout, etc.) that is shared with child components\n * like CoordinateSegment. This avoids prop drilling for deeply nested children.\n *\n * This follows the React Aria pattern of separating props context (public API)\n * from state context (internal implementation). While exported for composition\n * scenarios and testing, this is primarily for internal use.\n *\n * @see CoordinateFieldContext for user-provided props\n * @example\n * // Used internally by child components\n * const state = useCoordinateFieldStateContext();\n * const { segmentValues, isDisabled, registerTimeout } = state;\n */\nexport const CoordinateFieldStateContext =\n createContext<CoordinateFieldState | null>(null);\n\n/**\n * Provider component for CoordinateField context\n * Wraps children with CoordinateFieldContext\n *\n * @param props - The provider props.\n * @param props.children - Child components that will receive the coordinate field context.\n * @returns The coordinate field context provider wrapping children.\n */\nexport function CoordinateFieldProvider({\n children,\n ...props\n}: ProviderProps<CoordinateFieldProps>) {\n return (\n <CoordinateFieldContext.Provider value={props}>\n {children}\n </CoordinateFieldContext.Provider>\n );\n}\n\n/**\n * Provider component for CoordinateField state context\n * Wraps children with CoordinateFieldStateContext\n *\n * @param props - The provider props.\n * @param props.children - Child components that will receive the state context.\n * @param props.value - The coordinate field state to provide.\n * @returns The coordinate field state context provider wrapping children.\n */\nexport function CoordinateFieldStateProvider({\n children,\n value,\n}: {\n children: React.ReactNode;\n value: CoordinateFieldState;\n}) {\n return (\n <CoordinateFieldStateContext.Provider value={value}>\n {children}\n </CoordinateFieldStateContext.Provider>\n );\n}\n\n/**\n * Hook to access CoordinateField state context\n * Must be used within a CoordinateField component\n * @throws {Error} If used outside of CoordinateField\n * @returns {CoordinateFieldState} The coordinate field state\n */\nexport const useCoordinateFieldStateContext = () => {\n const context = useContext(CoordinateFieldStateContext);\n if (!context) {\n throw new Error(\n 'useCoordinateFieldStateContext must be used within CoordinateField',\n );\n }\n return context;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDA,MAAa,yBACX,cAAkE,KAAK;;;;;;;;;;;;;;;;;;AAmBzE,MAAa,8BACX,cAA2C,KAAK;;;;;;;;;AAUlD,SAAgB,wBAAwB,EACtC,UACA,GAAG,SACmC;AACtC,QACE,oBAAC,uBAAuB;EAAS,OAAO;EACrC;GAC+B;;;;;;;;;;;AAatC,SAAgB,6BAA6B,EAC3C,UACA,SAIC;AACD,QACE,oBAAC,4BAA4B;EAAgB;EAC1C;GACoC;;;;;;;;AAU3C,MAAa,uCAAuC;CAClD,MAAM,UAAU,WAAW,4BAA4B;AACvD,KAAI,CAAC,QACH,OAAM,IAAI,MACR,qEACD;AAEH,QAAO"}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
import { CoordinateFieldProps } from "./types.js";
|
|
14
14
|
import "client-only";
|
|
15
|
-
import * as
|
|
15
|
+
import * as react_jsx_runtime22 from "react/jsx-runtime";
|
|
16
16
|
|
|
17
17
|
//#region src/components/coordinate-field/index.d.ts
|
|
18
18
|
|
|
@@ -104,7 +104,7 @@ import * as react_jsx_runtime29 from "react/jsx-runtime";
|
|
|
104
104
|
declare function CoordinateField({
|
|
105
105
|
ref,
|
|
106
106
|
...props
|
|
107
|
-
}: CoordinateFieldProps):
|
|
107
|
+
}: CoordinateFieldProps): react_jsx_runtime22.JSX.Element;
|
|
108
108
|
//#endregion
|
|
109
109
|
export { CoordinateField };
|
|
110
110
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -14,36 +14,41 @@
|
|
|
14
14
|
'use client';
|
|
15
15
|
|
|
16
16
|
import { Icon } from "../icon/index.js";
|
|
17
|
-
import { Button
|
|
17
|
+
import { Button } from "../button/index.js";
|
|
18
18
|
import { Label as Label$1 } from "../label/index.js";
|
|
19
19
|
import { CoordinateFieldContext, CoordinateFieldStateContext } from "./context.js";
|
|
20
20
|
import { COORDINATE_FORMAT_LABELS, COORDINATE_FORMAT_NAMES, COORDINATE_SYSTEMS } from "./types.js";
|
|
21
21
|
import { getAllCoordinateFormats } from "./coordinate-utils.js";
|
|
22
22
|
import { GROUP_SEPARATOR, getSegmentLabel } from "./segment-configs.js";
|
|
23
23
|
import { useCoordinateField } from "../../hooks/coordinate-field/use-coordinate-field.js";
|
|
24
|
-
import { Dialog
|
|
24
|
+
import { Dialog } from "../dialog/index.js";
|
|
25
25
|
import { DialogContent } from "../dialog/content.js";
|
|
26
26
|
import { DialogFooter } from "../dialog/footer.js";
|
|
27
27
|
import { DialogTitle } from "../dialog/title.js";
|
|
28
|
-
import { DialogTrigger
|
|
29
|
-
import { Popover
|
|
28
|
+
import { DialogTrigger } from "../dialog/trigger.js";
|
|
29
|
+
import { Popover } from "../popover/index.js";
|
|
30
30
|
import { PopoverContent } from "../popover/content.js";
|
|
31
31
|
import { PopoverTitle } from "../popover/title.js";
|
|
32
|
-
import { Radio
|
|
33
|
-
import { RadioGroup
|
|
34
|
-
import { Tooltip
|
|
35
|
-
import { TooltipTrigger
|
|
32
|
+
import { Radio } from "../radio/index.js";
|
|
33
|
+
import { RadioGroup } from "../radio/group.js";
|
|
34
|
+
import { Tooltip } from "../tooltip/index.js";
|
|
35
|
+
import { TooltipTrigger } from "../tooltip/trigger.js";
|
|
36
36
|
import { CoordinateSegment } from "./segment.js";
|
|
37
37
|
import { calculateMinControlWidth } from "./width-utils.js";
|
|
38
38
|
import "client-only";
|
|
39
39
|
import { useCallback, useMemo, useState } from "react";
|
|
40
40
|
import { clsx } from "@accelint/design-foundation/lib/utils";
|
|
41
|
-
import {
|
|
41
|
+
import { composeRenderProps } from "react-aria-components/composeRenderProps";
|
|
42
42
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
43
|
+
import { Provider, useContextProps } from "react-aria-components/slots";
|
|
44
|
+
import { Text, TextContext } from "react-aria-components/Text";
|
|
45
|
+
import { LabelContext } from "react-aria-components/Label";
|
|
43
46
|
import Check from "@accelint/icons/check";
|
|
44
|
-
import { filterDOMProps } from "@react-aria/utils";
|
|
45
47
|
import CopyToClipboard from "@accelint/icons/copy-to-clipboard";
|
|
46
48
|
import GlobalShare from "@accelint/icons/global-share";
|
|
49
|
+
import { filterDOMProps } from "react-aria/filterDOMProps";
|
|
50
|
+
import { FieldError, FieldErrorContext } from "react-aria-components/FieldError";
|
|
51
|
+
import { GroupContext } from "react-aria-components/Group";
|
|
47
52
|
import styles from "./styles.module.css";
|
|
48
53
|
|
|
49
54
|
//#region src/components/coordinate-field/index.tsx
|
|
@@ -239,11 +244,11 @@ function CoordinateField({ ref, ...props }) {
|
|
|
239
244
|
className: clsx(styles.segmentGroup, styles[variant]),
|
|
240
245
|
children: group
|
|
241
246
|
}, `${format}-group-${groupIndex}`))
|
|
242
|
-
}), showFormatButton && /* @__PURE__ */ jsxs(TooltipTrigger
|
|
247
|
+
}), showFormatButton && /* @__PURE__ */ jsxs(TooltipTrigger, {
|
|
243
248
|
isDisabled: isPopoverOpen,
|
|
244
|
-
children: [/* @__PURE__ */ jsxs(DialogTrigger
|
|
249
|
+
children: [/* @__PURE__ */ jsxs(DialogTrigger, {
|
|
245
250
|
onOpenChange: handlePopoverOpenChange,
|
|
246
|
-
children: [/* @__PURE__ */ jsx(Button
|
|
251
|
+
children: [/* @__PURE__ */ jsx(Button, {
|
|
247
252
|
variant: "icon",
|
|
248
253
|
size: "small",
|
|
249
254
|
color: "mono-bold",
|
|
@@ -251,7 +256,7 @@ function CoordinateField({ ref, ...props }) {
|
|
|
251
256
|
"aria-label": "View coordinate in all formats",
|
|
252
257
|
isDisabled: !copy.isFormatButtonEnabled,
|
|
253
258
|
children: /* @__PURE__ */ jsx(Icon, { children: /* @__PURE__ */ jsx(GlobalShare, {}) })
|
|
254
|
-
}), /* @__PURE__ */ jsxs(Popover
|
|
259
|
+
}), /* @__PURE__ */ jsxs(Popover, {
|
|
255
260
|
classNames: { popover: styles.popover },
|
|
256
261
|
children: [/* @__PURE__ */ jsx(PopoverTitle, {
|
|
257
262
|
className: styles.popoverTitle,
|
|
@@ -271,7 +276,7 @@ function CoordinateField({ ref, ...props }) {
|
|
|
271
276
|
title: formatResult.value,
|
|
272
277
|
children: formatResult.value
|
|
273
278
|
})]
|
|
274
|
-
}), /* @__PURE__ */ jsx(Button
|
|
279
|
+
}), /* @__PURE__ */ jsx(Button, {
|
|
275
280
|
variant: "icon",
|
|
276
281
|
color: "mono-bold",
|
|
277
282
|
"aria-label": `Copy ${COORDINATE_FORMAT_LABELS[formatKey]} format`,
|
|
@@ -282,7 +287,7 @@ function CoordinateField({ ref, ...props }) {
|
|
|
282
287
|
}, formatKey);
|
|
283
288
|
}) })]
|
|
284
289
|
})]
|
|
285
|
-
}), /* @__PURE__ */ jsx(Tooltip
|
|
290
|
+
}), /* @__PURE__ */ jsx(Tooltip, { children: formatButtonTooltip })]
|
|
286
291
|
})]
|
|
287
292
|
}),
|
|
288
293
|
descriptionProp && !isSmall && (!isInvalid || isDisabled) && /* @__PURE__ */ jsx(Text, {
|
|
@@ -294,13 +299,13 @@ function CoordinateField({ ref, ...props }) {
|
|
|
294
299
|
className: composeRenderProps(classNames?.error, (className) => clsx(styles.error, className)),
|
|
295
300
|
children: effectiveErrorMessage
|
|
296
301
|
}),
|
|
297
|
-
/* @__PURE__ */ jsxs(DialogTrigger
|
|
302
|
+
/* @__PURE__ */ jsxs(DialogTrigger, {
|
|
298
303
|
isOpen: paste.showDisambiguationModal,
|
|
299
304
|
onOpenChange: paste.setShowDisambiguationModal,
|
|
300
|
-
children: [/* @__PURE__ */ jsx(Button
|
|
305
|
+
children: [/* @__PURE__ */ jsx(Button, {
|
|
301
306
|
className: styles.hiddenTrigger,
|
|
302
307
|
children: "Hidden Trigger"
|
|
303
|
-
}), /* @__PURE__ */ jsxs(Dialog
|
|
308
|
+
}), /* @__PURE__ */ jsxs(Dialog, {
|
|
304
309
|
size: "small",
|
|
305
310
|
children: [
|
|
306
311
|
/* @__PURE__ */ jsx(DialogTitle, {
|
|
@@ -310,11 +315,11 @@ function CoordinateField({ ref, ...props }) {
|
|
|
310
315
|
/* @__PURE__ */ jsxs(DialogContent, { children: [/* @__PURE__ */ jsx("p", {
|
|
311
316
|
className: styles.modalDescription,
|
|
312
317
|
children: "The pasted value matches multiple coordinate formats. Please select the correct interpretation:"
|
|
313
|
-
}), /* @__PURE__ */ jsx(RadioGroup
|
|
318
|
+
}), /* @__PURE__ */ jsx(RadioGroup, {
|
|
314
319
|
classNames: { group: styles.formatOptions },
|
|
315
320
|
value: paste.selectedDisambiguationFormat,
|
|
316
321
|
onChange: (value) => paste.setSelectedDisambiguationFormat(value),
|
|
317
|
-
children: paste.disambiguationMatches.map((match) => /* @__PURE__ */ jsx(Radio
|
|
322
|
+
children: paste.disambiguationMatches.map((match) => /* @__PURE__ */ jsx(Radio, {
|
|
318
323
|
value: match.format,
|
|
319
324
|
children: /* @__PURE__ */ jsxs("div", {
|
|
320
325
|
className: styles.modalOptionContent,
|
|
@@ -330,11 +335,11 @@ function CoordinateField({ ref, ...props }) {
|
|
|
330
335
|
})] }),
|
|
331
336
|
/* @__PURE__ */ jsxs(DialogFooter, {
|
|
332
337
|
className: styles.modalActions,
|
|
333
|
-
children: [/* @__PURE__ */ jsx(Button
|
|
338
|
+
children: [/* @__PURE__ */ jsx(Button, {
|
|
334
339
|
variant: "flat",
|
|
335
340
|
onPress: () => paste.setShowDisambiguationModal(false),
|
|
336
341
|
children: "Cancel"
|
|
337
|
-
}), /* @__PURE__ */ jsx(Button
|
|
342
|
+
}), /* @__PURE__ */ jsx(Button, {
|
|
338
343
|
onPress: paste.handleDisambiguationSelect,
|
|
339
344
|
children: "Apply Selected"
|
|
340
345
|
})]
|