@tcn/ui 0.16.0 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/index.d.ts +0 -1
- package/dist/actions/index.d.ts.map +1 -1
- package/dist/actions/index.js +6 -8
- package/dist/actions/index.js.map +1 -1
- package/dist/card.css +1 -0
- package/dist/column.css +1 -1
- package/dist/containers.css +1 -1
- package/dist/containers.module-BmICKsOK.js +5 -0
- package/dist/containers.module-BmICKsOK.js.map +1 -0
- package/dist/draggable.css +1 -1
- package/dist/draggable.module-DFYR5n3n.js +5 -0
- package/dist/draggable.module-DFYR5n3n.js.map +1 -0
- package/dist/field_set.css +1 -1
- package/dist/field_set.module-BpJTFCi4.js +5 -0
- package/dist/field_set.module-BpJTFCi4.js.map +1 -0
- package/dist/form/field/field.js +17 -13
- package/dist/form/field/field.js.map +1 -1
- package/dist/form/field_set/field_set.d.ts +6 -10
- package/dist/form/field_set/field_set.d.ts.map +1 -1
- package/dist/form/field_set/field_set.js +33 -61
- package/dist/form/field_set/field_set.js.map +1 -1
- package/dist/form/field_set/legend.d.ts +20 -0
- package/dist/form/field_set/legend.d.ts.map +1 -0
- package/dist/form/field_set/legend.js +28 -0
- package/dist/form/field_set/legend.js.map +1 -0
- package/dist/form/index.d.ts +2 -1
- package/dist/form/index.d.ts.map +1 -1
- package/dist/form/index.js +24 -22
- package/dist/form/index.js.map +1 -1
- package/dist/inputs/color_input/color_input.js +2 -3
- package/dist/inputs/color_input/color_input.js.map +1 -1
- package/dist/inputs/color_input/color_picker.js +11 -7
- package/dist/inputs/color_input/color_picker.js.map +1 -1
- package/dist/inputs/combo_box/combo_box.js +24 -20
- package/dist/inputs/combo_box/combo_box.js.map +1 -1
- package/dist/inputs/date_picker/date_picker.js +19 -15
- package/dist/inputs/date_picker/date_picker.js.map +1 -1
- package/dist/inputs/date_picker/date_picker_header.d.ts.map +1 -1
- package/dist/inputs/date_picker/date_picker_header.js +15 -14
- package/dist/inputs/date_picker/date_picker_header.js.map +1 -1
- package/dist/inputs/date_picker/date_picker_input.js +26 -23
- package/dist/inputs/date_picker/date_picker_input.js.map +1 -1
- package/dist/inputs/date_picker/date_picker_time_selector.js +2 -3
- package/dist/inputs/date_picker/date_picker_time_selector.js.map +1 -1
- package/dist/inputs/date_picker/date_picker_year_input.js +2 -3
- package/dist/inputs/date_picker/date_picker_year_input.js.map +1 -1
- package/dist/inputs/date_picker/date_picker_year_selector.js +24 -21
- package/dist/inputs/date_picker/date_picker_year_selector.js.map +1 -1
- package/dist/inputs/mask_input/key_capture_input.js +35 -31
- package/dist/inputs/mask_input/key_capture_input.js.map +1 -1
- package/dist/inputs/mask_input/mask_input.js +18 -14
- package/dist/inputs/mask_input/mask_input.js.map +1 -1
- package/dist/inputs/multiselect/multiselect.js +28 -24
- package/dist/inputs/multiselect/multiselect.js.map +1 -1
- package/dist/inputs/multiselect/multiselect_inline_values.d.ts.map +1 -1
- package/dist/inputs/multiselect/multiselect_inline_values.js +15 -15
- package/dist/inputs/multiselect/multiselect_inline_values.js.map +1 -1
- package/dist/inputs/multiselect/multiselect_values.js +16 -17
- package/dist/inputs/multiselect/multiselect_values.js.map +1 -1
- package/dist/inputs/phone_number_input/phone_number_context.js +13 -9
- package/dist/inputs/phone_number_input/phone_number_context.js.map +1 -1
- package/dist/inputs/phone_number_input/phone_number_input_adapter.js +2 -3
- package/dist/inputs/phone_number_input/phone_number_input_adapter.js.map +1 -1
- package/dist/inputs/phone_number_input/sip_input.js +8 -9
- package/dist/inputs/phone_number_input/sip_input.js.map +1 -1
- package/dist/inputs/select/select.js +11 -8
- package/dist/inputs/select/select.js.map +1 -1
- package/dist/inputs/slider/slider.js +28 -24
- package/dist/inputs/slider/slider.js.map +1 -1
- package/dist/inputs/suggestions/suggestion_list.js +11 -8
- package/dist/inputs/suggestions/suggestion_list.js.map +1 -1
- package/dist/inputs/switch/switch.js +29 -25
- package/dist/inputs/switch/switch.js.map +1 -1
- package/dist/inputs/unit_input/unit_input.js +21 -17
- package/dist/inputs/unit_input/unit_input.js.map +1 -1
- package/dist/layouts/containers/columns/columns.d.ts +6 -1
- package/dist/layouts/containers/columns/columns.d.ts.map +1 -1
- package/dist/layouts/containers/columns/columns.js +30 -7
- package/dist/layouts/containers/columns/columns.js.map +1 -1
- package/dist/layouts/containers/rail.d.ts +2 -5
- package/dist/layouts/containers/rail.d.ts.map +1 -1
- package/dist/layouts/containers/rail.js +17 -55
- package/dist/layouts/containers/rail.js.map +1 -1
- package/dist/layouts/containers/rows/index.d.ts +3 -0
- package/dist/layouts/containers/rows/index.d.ts.map +1 -0
- package/dist/layouts/containers/rows/index.js +7 -0
- package/dist/layouts/containers/rows/index.js.map +1 -0
- package/dist/layouts/containers/rows/row.d.ts +6 -0
- package/dist/layouts/containers/rows/row.d.ts.map +1 -0
- package/dist/layouts/containers/rows/row.js +20 -0
- package/dist/layouts/containers/rows/row.js.map +1 -0
- package/dist/layouts/containers/rows/rows.d.ts +11 -0
- package/dist/layouts/containers/rows/rows.d.ts.map +1 -0
- package/dist/layouts/containers/rows/rows.js +34 -0
- package/dist/layouts/containers/rows/rows.js.map +1 -0
- package/dist/layouts/containers/scaffold.d.ts +2 -5
- package/dist/layouts/containers/scaffold.d.ts.map +1 -1
- package/dist/layouts/containers/scaffold.js +17 -55
- package/dist/layouts/containers/scaffold.js.map +1 -1
- package/dist/layouts/index.d.ts +2 -0
- package/dist/layouts/index.d.ts.map +1 -1
- package/dist/layouts/index.js +26 -22
- package/dist/layouts/index.js.map +1 -1
- package/dist/mobile/inputs/date_picker/mobile_date_picker_header.js +11 -7
- package/dist/mobile/inputs/date_picker/mobile_date_picker_header.js.map +1 -1
- package/dist/mobile/inputs/date_picker/mobile_date_picker_input.js +11 -7
- package/dist/mobile/inputs/date_picker/mobile_date_picker_input.js.map +1 -1
- package/dist/mobile/inputs/date_picker/mobile_date_picker_year_selector.js +14 -10
- package/dist/mobile/inputs/date_picker/mobile_date_picker_year_selector.js.map +1 -1
- package/dist/multiselect_values.css +1 -1
- package/dist/navigation/tabs/state/link/tab_link.js +15 -11
- package/dist/navigation/tabs/state/link/tab_link.js.map +1 -1
- package/dist/overlay/frame/frame.d.ts.map +1 -1
- package/dist/overlay/frame/frame.js +117 -76
- package/dist/overlay/frame/frame.js.map +1 -1
- package/dist/overlay/menu/menu.js +21 -17
- package/dist/overlay/menu/menu.js.map +1 -1
- package/dist/overlay/popper/base/dismissal_decorator.js +3 -3
- package/dist/overlay/popper/base/dismissal_decorator.js.map +1 -1
- package/dist/overlay/popper/context_popper.js +14 -10
- package/dist/overlay/popper/context_popper.js.map +1 -1
- package/dist/overlay/popper/element_popper.js +15 -11
- package/dist/overlay/popper/element_popper.js.map +1 -1
- package/dist/overlay/popper/legacy/popper.js +32 -28
- package/dist/overlay/popper/legacy/popper.js.map +1 -1
- package/dist/overlay/popper/preview_popper.js +16 -12
- package/dist/overlay/popper/preview_popper.js.map +1 -1
- package/dist/overlay/tethered/tethered.js +17 -13
- package/dist/overlay/tethered/tethered.js.map +1 -1
- package/dist/resizable.css +1 -0
- package/dist/resizable.module-ur5FBfxo.js +5 -0
- package/dist/resizable.module-ur5FBfxo.js.map +1 -0
- package/dist/resize_handle.css +1 -0
- package/dist/row.css +1 -0
- package/dist/stacks/box/box.d.ts +14 -0
- package/dist/stacks/box/box.d.ts.map +1 -1
- package/dist/stacks/box/box.js +104 -102
- package/dist/stacks/box/box.js.map +1 -1
- package/dist/stacks/box/detect_resize_bounds.d.ts +1 -0
- package/dist/stacks/box/detect_resize_bounds.d.ts.map +1 -1
- package/dist/stacks/box/detect_resize_bounds.js +22 -20
- package/dist/stacks/box/detect_resize_bounds.js.map +1 -1
- package/dist/stacks/box/end_resize_handle.js +5 -5
- package/dist/stacks/box/end_resize_handle.js.map +1 -1
- package/dist/stacks/box/resize_handlers.d.ts.map +1 -1
- package/dist/stacks/box/resize_handlers.js +12 -12
- package/dist/stacks/box/resize_handlers.js.map +1 -1
- package/dist/stacks/box/start_resize_handle.js +7 -7
- package/dist/stacks/box/start_resize_handle.js.map +1 -1
- package/dist/stacks/box/types.d.ts +3 -2
- package/dist/stacks/box/types.d.ts.map +1 -1
- package/dist/stacks/h_collapsible_box.js +24 -20
- package/dist/stacks/h_collapsible_box.js.map +1 -1
- package/dist/stacks/v_collapsible_box.js +26 -22
- package/dist/stacks/v_collapsible_box.js.map +1 -1
- package/dist/surfaces/alert/alert.js +7 -8
- package/dist/surfaces/alert/alert.js.map +1 -1
- package/dist/surfaces/card/card.d.ts.map +1 -1
- package/dist/surfaces/card/card.js +14 -6
- package/dist/surfaces/card/card.js.map +1 -1
- package/dist/surfaces/pop_confirm/pop_confirm.js +4 -2
- package/dist/surfaces/pop_confirm/pop_confirm.js.map +1 -1
- package/dist/test-setup.d.ts +2 -0
- package/dist/test-setup.d.ts.map +1 -0
- package/dist/test-setup.js +10 -0
- package/dist/test-setup.js.map +1 -0
- package/dist/themes/stories/button_showcase.d.ts.map +1 -1
- package/dist/themes/stories/controls_fieldset.d.ts.map +1 -1
- package/dist/themes/stories/menu_showcase.d.ts.map +1 -1
- package/dist/themes/theme.d.ts.map +1 -1
- package/dist/themes/theme.js +17 -22
- package/dist/themes/theme.js.map +1 -1
- package/dist/themes/themes/ergo/ergo_theme.css +1 -1
- package/dist/themes/themes/ergo/ergo_theme.d.ts.map +1 -1
- package/dist/themes/themes/ergo/ergo_theme.js +653 -431
- package/dist/themes/themes/ergo/ergo_theme.js.map +1 -1
- package/dist/themes/themes/ergo/parts/actions.css +1 -0
- package/dist/themes/themes/ergo/parts/base.css +1 -0
- package/dist/themes/themes/ergo/parts/form.css +1 -0
- package/dist/themes/themes/ergo/parts/inputs.css +1 -0
- package/dist/themes/themes/ergo/parts/navigation.css +1 -0
- package/dist/themes/themes/windows_98/windows_98.css +1 -1
- package/dist/themes/themes/windows_98/windows_98_theme.js +32 -43
- package/dist/themes/themes/windows_98/windows_98_theme.js.map +1 -1
- package/dist/utils/decorators/clone_with_decorator.d.ts +21 -0
- package/dist/utils/decorators/clone_with_decorator.d.ts.map +1 -0
- package/dist/utils/decorators/clone_with_decorator.js +16 -0
- package/dist/utils/decorators/clone_with_decorator.js.map +1 -0
- package/dist/utils/decorators/draggable/context.d.ts.map +1 -0
- package/dist/utils/decorators/draggable/context.js.map +1 -0
- package/dist/utils/{dnd/handle.d.ts → decorators/draggable/drag_handle.d.ts} +1 -1
- package/dist/utils/decorators/draggable/drag_handle.d.ts.map +1 -0
- package/dist/utils/{dnd/handle.js → decorators/draggable/drag_handle.js} +2 -2
- package/dist/utils/decorators/draggable/drag_handle.js.map +1 -0
- package/dist/utils/decorators/draggable/draggable.d.ts.map +1 -0
- package/dist/utils/{dnd → decorators}/draggable/draggable.js +3 -3
- package/dist/utils/decorators/draggable/draggable.js.map +1 -0
- package/dist/utils/decorators/draggable/index.d.ts +11 -0
- package/dist/utils/decorators/draggable/index.d.ts.map +1 -0
- package/dist/utils/decorators/draggable/index.js +14 -0
- package/dist/utils/decorators/draggable/index.js.map +1 -0
- package/dist/utils/{dnd → decorators/draggable}/types.d.ts +1 -1
- package/dist/utils/decorators/draggable/types.d.ts.map +1 -0
- package/dist/utils/{dnd/hooks → decorators/draggable}/use_drag_container.d.ts +2 -2
- package/dist/utils/decorators/draggable/use_drag_container.d.ts.map +1 -0
- package/dist/utils/decorators/draggable/use_drag_container.js.map +1 -0
- package/dist/utils/decorators/draggable/use_draggable.d.ts.map +1 -0
- package/dist/utils/decorators/draggable/use_draggable.js.map +1 -0
- package/dist/utils/decorators/index.d.ts +3 -0
- package/dist/utils/decorators/index.d.ts.map +1 -0
- package/dist/utils/decorators/index.js +27 -0
- package/dist/utils/decorators/index.js.map +1 -0
- package/dist/utils/decorators/resizable/context.d.ts +4 -0
- package/dist/utils/decorators/resizable/context.d.ts.map +1 -0
- package/dist/utils/decorators/resizable/context.js +10 -0
- package/dist/utils/decorators/resizable/context.js.map +1 -0
- package/dist/utils/decorators/resizable/handle_config.d.ts +32 -0
- package/dist/utils/decorators/resizable/handle_config.d.ts.map +1 -0
- package/dist/utils/decorators/resizable/handle_config.js +62 -0
- package/dist/utils/decorators/resizable/handle_config.js.map +1 -0
- package/dist/utils/decorators/resizable/index.d.ts +10 -0
- package/dist/utils/decorators/resizable/index.d.ts.map +1 -0
- package/dist/utils/decorators/resizable/index.js +16 -0
- package/dist/utils/decorators/resizable/index.js.map +1 -0
- package/dist/utils/decorators/resizable/resizable.d.ts +11 -0
- package/dist/utils/decorators/resizable/resizable.d.ts.map +1 -0
- package/dist/utils/decorators/resizable/resizable.js +52 -0
- package/dist/utils/decorators/resizable/resizable.js.map +1 -0
- package/dist/utils/decorators/resizable/resize_handle.d.ts +7 -0
- package/dist/utils/decorators/resizable/resize_handle.d.ts.map +1 -0
- package/dist/utils/decorators/resizable/resize_handle.js +100 -0
- package/dist/utils/decorators/resizable/resize_handle.js.map +1 -0
- package/dist/utils/decorators/resizable/resize_strategy.d.ts +47 -0
- package/dist/utils/decorators/resizable/resize_strategy.d.ts.map +1 -0
- package/dist/utils/decorators/resizable/resize_strategy.js +108 -0
- package/dist/utils/decorators/resizable/resize_strategy.js.map +1 -0
- package/dist/utils/decorators/resizable/types.d.ts +28 -0
- package/dist/utils/decorators/resizable/types.d.ts.map +1 -0
- package/dist/utils/decorators/resizable/types.js +2 -0
- package/dist/utils/decorators/resizable/types.js.map +1 -0
- package/dist/utils/hooks/labelled_by_context.d.ts +21 -0
- package/dist/utils/hooks/labelled_by_context.d.ts.map +1 -0
- package/dist/utils/hooks/labelled_by_context.js +12 -0
- package/dist/utils/hooks/labelled_by_context.js.map +1 -0
- package/dist/utils/index.d.ts +8 -7
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +45 -28
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/listeners/click_away_listener.d.ts.map +1 -0
- package/dist/utils/{click_away_listener.js → listeners/click_away_listener.js} +1 -1
- package/dist/utils/listeners/click_away_listener.js.map +1 -0
- package/dist/utils/listeners/focus_redirect.d.ts.map +1 -0
- package/dist/utils/listeners/focus_redirect.js.map +1 -0
- package/dist/utils/listeners/index.d.ts +4 -0
- package/dist/utils/listeners/index.d.ts.map +1 -0
- package/dist/utils/listeners/index.js +10 -0
- package/dist/utils/listeners/index.js.map +1 -0
- package/dist/utils/listeners/mouse_leave_region.d.ts.map +1 -0
- package/dist/utils/listeners/mouse_leave_region.js.map +1 -0
- package/dist/utils/listeners/scroll_away_listener.d.ts.map +1 -0
- package/dist/utils/{scroll_away_listener.js → listeners/scroll_away_listener.js} +1 -1
- package/dist/utils/listeners/scroll_away_listener.js.map +1 -0
- package/dist/utils/system/index.d.ts +2 -0
- package/dist/utils/system/index.d.ts.map +1 -0
- package/dist/utils/system/index.js +2 -0
- package/dist/utils/system/index.js.map +1 -0
- package/dist/utils/system/variations.d.ts.map +1 -0
- package/dist/utils/system/variations.js +2 -0
- package/dist/utils/system/variations.js.map +1 -0
- package/dist/utils/types/sides.d.ts +3 -0
- package/dist/utils/types/sides.d.ts.map +1 -0
- package/package.json +3 -9
- package/src/actions/button/__stories__/button_group.stories.tsx +23 -24
- package/src/actions/index.ts +0 -1
- package/src/form/field/field.stories.tsx +2 -2
- package/src/form/field/h_field/h_field.stories.tsx +1 -1
- package/src/form/field/v_field/v_field.stories.tsx +1 -1
- package/src/form/field_set/field_set.module.css +0 -14
- package/src/form/field_set/field_set.stories.tsx +101 -1
- package/src/form/field_set/field_set.tsx +43 -57
- package/src/form/field_set/legend.tsx +44 -0
- package/src/form/index.ts +6 -1
- package/src/inputs/date_picker/date_picker_header.tsx +7 -5
- package/src/inputs/date_picker/date_picker_year_selector.tsx +5 -5
- package/src/inputs/multiselect/multiselect_inline_values.tsx +4 -3
- package/src/inputs/multiselect/multiselect_values.module.css +1 -0
- package/src/inputs/multiselect/multiselect_values.tsx +4 -4
- package/src/layouts/__stories__/columns.stories.tsx +31 -0
- package/src/layouts/__stories__/composed.stories.tsx +77 -8
- package/src/layouts/__stories__/rows.stories.tsx +77 -0
- package/src/layouts/__stories__/utils.tsx +2 -84
- package/src/layouts/containers/columns/column.module.css +3 -2
- package/src/layouts/containers/columns/columns.tsx +29 -3
- package/src/layouts/containers/containers.module.css +27 -29
- package/src/layouts/containers/rail.tsx +9 -51
- package/src/layouts/containers/rows/index.ts +2 -0
- package/src/layouts/containers/rows/row.module.css +15 -0
- package/src/layouts/containers/rows/row.tsx +22 -0
- package/src/layouts/containers/rows/rows.tsx +42 -0
- package/src/layouts/containers/scaffold.tsx +9 -49
- package/src/layouts/index.ts +2 -0
- package/src/overlay/frame/frame.stories.tsx +2 -1
- package/src/overlay/frame/frame.tsx +68 -20
- package/src/overlay/popper/base/dismissal_decorator.tsx +3 -3
- package/src/overlay/slide/slide.stories.tsx +1 -1
- package/src/stacks/box/box.tsx +29 -4
- package/src/stacks/box/detect_resize_bounds.ts +5 -1
- package/src/stacks/box/end_resize_handle.tsx +1 -1
- package/src/stacks/box/resize_handlers.ts +1 -1
- package/src/stacks/box/start_resize_handle.tsx +1 -1
- package/src/stacks/box/types.ts +3 -2
- package/src/stacks/collapsible_box.stories.tsx +5 -5
- package/src/stacks/demo.stories.tsx +7 -7
- package/src/surfaces/card/card.module.css +5 -0
- package/src/surfaces/card/card.stories.tsx +66 -8
- package/src/surfaces/card/card.tsx +6 -2
- package/src/surfaces/page/page.stories.tsx +84 -4
- package/src/surfaces/panel/__stories__/panel.stories.tsx +84 -9
- package/src/surfaces/window/window.stories.tsx +1 -1
- package/src/test-setup.ts +11 -0
- package/src/themes/stories/button_showcase.tsx +3 -1
- package/src/themes/stories/controls_fieldset.tsx +3 -1
- package/src/themes/stories/menu_showcase.tsx +3 -1
- package/src/themes/theme.tsx +6 -16
- package/src/themes/themes/ergo/INTERACTIVE.md +89 -0
- package/src/themes/themes/ergo/ROADMAP.md +116 -0
- package/src/themes/themes/ergo/ergo_theme.css +219 -734
- package/src/themes/themes/ergo/ergo_theme.ts +15 -1
- package/src/themes/themes/ergo/parts/actions.css +287 -0
- package/src/themes/themes/ergo/parts/base.css +62 -0
- package/src/themes/themes/ergo/parts/form.css +23 -0
- package/src/themes/themes/ergo/parts/inputs.css +252 -0
- package/src/themes/themes/ergo/parts/navigation.css +104 -0
- package/src/themes/themes/windows_98/windows_98.css +32 -43
- package/src/tokens/chip/chip.stories.tsx +5 -5
- package/src/utils/decorators/DECORATOR_PATTERN.md +86 -0
- package/src/utils/decorators/clone_with_decorator.ts +47 -0
- package/src/utils/{dnd → decorators/draggable}/__stories__/draggable.stories.tsx +7 -7
- package/src/utils/{dnd → decorators/draggable}/__stories__/use_draggable.stories.tsx +2 -2
- package/src/utils/{dnd/handle.tsx → decorators/draggable/drag_handle.tsx} +1 -1
- package/src/utils/{dnd → decorators}/draggable/draggable.tsx +2 -2
- package/src/utils/decorators/draggable/index.ts +15 -0
- package/src/utils/{dnd → decorators/draggable}/types.ts +1 -1
- package/src/utils/{dnd/hooks → decorators/draggable}/use_drag_container.ts +2 -2
- package/src/utils/decorators/index.ts +2 -0
- package/src/utils/decorators/resizable/__stories__/resizable.stories.tsx +214 -0
- package/src/utils/decorators/resizable/__stories__/resizable_stories.module.css +47 -0
- package/src/utils/decorators/resizable/__tests__/handle_config.test.ts +191 -0
- package/src/utils/decorators/resizable/__tests__/resize_strategy.test.ts +163 -0
- package/src/utils/decorators/resizable/context.ts +9 -0
- package/src/utils/decorators/resizable/handle_config.ts +118 -0
- package/src/utils/decorators/resizable/index.ts +37 -0
- package/src/utils/decorators/resizable/resizable.module.css +5 -0
- package/src/utils/decorators/resizable/resizable.tsx +97 -0
- package/src/utils/decorators/resizable/resize_handle.module.css +106 -0
- package/src/utils/decorators/resizable/resize_handle.tsx +165 -0
- package/src/utils/decorators/resizable/resize_strategy.ts +190 -0
- package/src/utils/decorators/resizable/types.ts +58 -0
- package/src/utils/hooks/labelled_by_context.ts +27 -0
- package/src/utils/index.ts +9 -7
- package/src/utils/{click_away_listener.tsx → listeners/click_away_listener.tsx} +1 -1
- package/src/utils/listeners/index.ts +3 -0
- package/src/utils/{scroll_away_listener.tsx → listeners/scroll_away_listener.tsx} +1 -1
- package/src/utils/system/index.ts +1 -0
- package/src/utils/types/sides.ts +2 -0
- package/dist/actions/button/slim_button/slim_button.d.ts +0 -9
- package/dist/actions/button/slim_button/slim_button.d.ts.map +0 -1
- package/dist/actions/button/slim_button/slim_button.js +0 -18
- package/dist/actions/button/slim_button/slim_button.js.map +0 -1
- package/dist/containers.module-DlGySre0.js +0 -5
- package/dist/containers.module-DlGySre0.js.map +0 -1
- package/dist/draggable.module-BgelQsuJ.js +0 -5
- package/dist/draggable.module-BgelQsuJ.js.map +0 -1
- package/dist/frame.css +0 -1
- package/dist/left_resize_handle.css +0 -1
- package/dist/right_resize_handle.css +0 -1
- package/dist/slim_button.css +0 -1
- package/dist/stacks/box/left_resize_handle.d.ts +0 -4
- package/dist/stacks/box/left_resize_handle.d.ts.map +0 -1
- package/dist/stacks/box/left_resize_handle.js +0 -36
- package/dist/stacks/box/left_resize_handle.js.map +0 -1
- package/dist/stacks/box/right_resize_handle.d.ts +0 -4
- package/dist/stacks/box/right_resize_handle.d.ts.map +0 -1
- package/dist/stacks/box/right_resize_handle.js +0 -36
- package/dist/stacks/box/right_resize_handle.js.map +0 -1
- package/dist/utils/click_away_listener.d.ts.map +0 -1
- package/dist/utils/click_away_listener.js.map +0 -1
- package/dist/utils/dnd/context.d.ts.map +0 -1
- package/dist/utils/dnd/context.js.map +0 -1
- package/dist/utils/dnd/draggable/draggable.d.ts.map +0 -1
- package/dist/utils/dnd/draggable/draggable.js.map +0 -1
- package/dist/utils/dnd/handle.d.ts.map +0 -1
- package/dist/utils/dnd/handle.js.map +0 -1
- package/dist/utils/dnd/hooks/use_drag_container.d.ts.map +0 -1
- package/dist/utils/dnd/hooks/use_drag_container.js.map +0 -1
- package/dist/utils/dnd/hooks/use_draggable.d.ts.map +0 -1
- package/dist/utils/dnd/hooks/use_draggable.js.map +0 -1
- package/dist/utils/dnd/types.d.ts.map +0 -1
- package/dist/utils/focus_redirect.d.ts.map +0 -1
- package/dist/utils/focus_redirect.js.map +0 -1
- package/dist/utils/mouse_leave_region.d.ts.map +0 -1
- package/dist/utils/mouse_leave_region.js.map +0 -1
- package/dist/utils/scroll_away_listener.d.ts.map +0 -1
- package/dist/utils/scroll_away_listener.js.map +0 -1
- package/dist/utils/types/variations.d.ts.map +0 -1
- package/src/actions/button/__stories__/slim_button.stories.tsx +0 -274
- package/src/actions/button/slim_button/slim_button.module.css +0 -9
- package/src/actions/button/slim_button/slim_button.tsx +0 -26
- package/src/overlay/frame/frame.module.css +0 -5
- package/src/stacks/box/left_resize_handle.module.css +0 -12
- package/src/stacks/box/left_resize_handle.tsx +0 -39
- package/src/stacks/box/right_resize_handle.module.css +0 -12
- package/src/stacks/box/right_resize_handle.tsx +0 -38
- /package/dist/utils/{dnd → decorators/draggable}/context.d.ts +0 -0
- /package/dist/utils/{dnd → decorators/draggable}/context.js +0 -0
- /package/dist/utils/{dnd → decorators}/draggable/draggable.d.ts +0 -0
- /package/dist/utils/{dnd → decorators/draggable}/types.js +0 -0
- /package/dist/utils/{dnd → decorators/draggable}/types.js.map +0 -0
- /package/dist/utils/{dnd/hooks → decorators/draggable}/use_drag_container.js +0 -0
- /package/dist/utils/{dnd/hooks → decorators/draggable}/use_draggable.d.ts +0 -0
- /package/dist/utils/{dnd/hooks → decorators/draggable}/use_draggable.js +0 -0
- /package/dist/utils/{click_away_listener.d.ts → listeners/click_away_listener.d.ts} +0 -0
- /package/dist/utils/{focus_redirect.d.ts → listeners/focus_redirect.d.ts} +0 -0
- /package/dist/utils/{focus_redirect.js → listeners/focus_redirect.js} +0 -0
- /package/dist/utils/{mouse_leave_region.d.ts → listeners/mouse_leave_region.d.ts} +0 -0
- /package/dist/utils/{mouse_leave_region.js → listeners/mouse_leave_region.js} +0 -0
- /package/dist/utils/{scroll_away_listener.d.ts → listeners/scroll_away_listener.d.ts} +0 -0
- /package/dist/utils/{types → system}/variations.d.ts +0 -0
- /package/src/utils/{dnd → decorators/draggable}/__stories__/draggable_stories.module.css +0 -0
- /package/src/utils/{dnd → decorators/draggable}/context.ts +0 -0
- /package/src/utils/{dnd → decorators}/draggable/draggable.module.css +0 -0
- /package/src/utils/{dnd/hooks → decorators/draggable}/use_draggable.ts +0 -0
- /package/src/utils/{click_away_listener.stories.tsx → listeners/click_away_listener.stories.tsx} +0 -0
- /package/src/utils/{focus_redirect.tsx → listeners/focus_redirect.tsx} +0 -0
- /package/src/utils/{mouse_leave_region.tsx → listeners/mouse_leave_region.tsx} +0 -0
- /package/src/utils/{scroll_away_listener.stories.tsx → listeners/scroll_away_listener.stories.tsx} +0 -0
- /package/src/utils/{types → system}/variations.ts +0 -0
package/dist/actions/index.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export { BaseButton, type BaseButtonProps, } from './button/base_button/base_button.js';
|
|
2
2
|
export { ButtonGroup, type ButtonGroupProps, } from './button/button_group/button_group.js';
|
|
3
|
-
export { SlimButton } from './button/slim_button/slim_button.js';
|
|
4
3
|
export { Button, type ButtonProps } from './button/button/button.js';
|
|
5
4
|
export { Toggle, type ToggleProps } from './toggle/toggle.js';
|
|
6
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,KAAK,eAAe,GACrB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,WAAW,EACX,KAAK,gBAAgB,GACtB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,KAAK,eAAe,GACrB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,WAAW,EACX,KAAK,gBAAgB,GACtB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/actions/index.js
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { BaseButton as r } from "./button/base_button/base_button.js";
|
|
2
|
-
import { ButtonGroup as
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { Toggle as n } from "./toggle/toggle.js";
|
|
2
|
+
import { ButtonGroup as p } from "./button/button_group/button_group.js";
|
|
3
|
+
import { Button as m } from "./button/button/button.js";
|
|
4
|
+
import { Toggle as x } from "./toggle/toggle.js";
|
|
6
5
|
export {
|
|
7
6
|
r as BaseButton,
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
n as Toggle
|
|
7
|
+
m as Button,
|
|
8
|
+
p as ButtonGroup,
|
|
9
|
+
x as Toggle
|
|
12
10
|
};
|
|
13
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
package/dist/card.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer tcn-system{._card_a3c9492{height:auto}}
|
package/dist/column.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer tcn-system{:where(._column_f14ce93){height:100%;min-height:100%;width:auto;min-width:0;flex-grow:0}:where(._column_f14ce93[data-width=fill]){flex-grow:1;width:0}}
|
|
1
|
+
@layer tcn-system{:where(._column_f14ce93){height:100%;min-height:100%;width:var(--columns-width, auto);min-width:var(--columns-min-width, 0);max-width:var(--columns-max-width, none);flex-grow:0}:where(._column_f14ce93[data-width=fill]){flex-grow:1;width:0}}
|
package/dist/containers.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer tcn-system{:where(._scaffold_7e9ff51){
|
|
1
|
+
@layer tcn-system{:where(._scaffold_7e9ff51){height:100%;width:100%;max-height:100%;overflow:auto}:where(._rail_9474c96){max-width:100%;height:100%;width:100%;overflow:auto}:where(._container_336e83e)>._container_336e83e{flex-grow:1;flex-shrink:unset}:where(._container_336e83e)>._scaffold_7e9ff51{overflow-y:auto;min-height:0}:where(._scaffold_7e9ff51)>._scaffold_7e9ff51{height:auto}:where(._container_336e83e)>._rail_9474c96{overflow-x:auto;min-width:0}:where(._rail_9474c96)>._rail_9474c96{width:auto}:where(._rail_9474c96)>._container_336e83e{height:100%}:where(._scaffold_7e9ff51)>._container_336e83e{width:100%}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"containers.module-BmICKsOK.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/draggable.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer tcn-system{:where(.
|
|
1
|
+
@layer tcn-system{:where(._draggable_7fb032d){position:relative}:where(._draggable_7fb032d[data-is-draggable=true]){left:var(--position-x);top:var(--position-y)}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"draggable.module-DFYR5n3n.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/field_set.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer tcn-system{:where(._field-set_8e981d9){position:relative
|
|
1
|
+
@layer tcn-system{:where(._field-set_8e981d9){position:relative}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field_set.module-BpJTFCi4.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/form/field/field.js
CHANGED
|
@@ -1,22 +1,26 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import
|
|
1
|
+
import { jsx as t, Fragment as d } from "react/jsx-runtime";
|
|
2
|
+
import a, { useState as c } from "react";
|
|
3
3
|
import { HField as u } from "./h_field/h_field.js";
|
|
4
4
|
import { VField as F } from "./v_field/v_field.js";
|
|
5
|
-
import "../../utils/click_away_listener.js";
|
|
6
|
-
import "../../utils/focus_redirect.js";
|
|
7
|
-
import "../../utils/scroll_away_listener.js";
|
|
5
|
+
import "../../utils/listeners/click_away_listener.js";
|
|
6
|
+
import "../../utils/listeners/focus_redirect.js";
|
|
7
|
+
import "../../utils/listeners/scroll_away_listener.js";
|
|
8
8
|
import { useForkRef as R } from "../../utils/hooks/use_fork_ref.js";
|
|
9
9
|
import { useResizeObserver as l } from "../../utils/hooks/use_resize_observer.js";
|
|
10
|
-
import "../../utils/
|
|
10
|
+
import "../../utils/hooks/labelled_by_context.js";
|
|
11
|
+
import "../../utils/decorators/draggable/context.js";
|
|
11
12
|
import "clsx";
|
|
12
|
-
import "../../draggable.module-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
import "../../draggable.module-DFYR5n3n.js";
|
|
14
|
+
import "../../utils/decorators/resizable/context.js";
|
|
15
|
+
import "../../resizable.module-ur5FBfxo.js";
|
|
16
|
+
import "../../utils/decorators/resizable/resize_handle.js";
|
|
17
|
+
const q = a.forwardRef(function({ children: e, breakpointPixels: i = 500, ...r }, m) {
|
|
18
|
+
const [f, n] = c(!0), p = l((s) => {
|
|
19
|
+
n(s >= i);
|
|
20
|
+
}), o = R(m, p);
|
|
21
|
+
return /* @__PURE__ */ t(d, { children: f ? /* @__PURE__ */ t(u, { ...r, ref: o, ...r, children: e }) : /* @__PURE__ */ t(F, { ...r, ref: o, ...r, children: e }) });
|
|
18
22
|
});
|
|
19
23
|
export {
|
|
20
|
-
|
|
24
|
+
q as Field
|
|
21
25
|
};
|
|
22
26
|
//# sourceMappingURL=field.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field.js","sources":["../../../src/form/field/field.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport type { FieldInput } from './common/types.js';\nimport { HField } from './h_field/h_field.js';\nimport { VField } from './v_field/v_field.js';\nimport { useForkRef, useResizeObserver } from '../../utils/index.js';\nimport type { StackStyleProps } from '../../stacks/types/styles.js';\n\nexport interface FieldProps extends FieldInput, StackStyleProps {\n children: React.ReactNode;\n breakpointPixels?: number;\n labelWidth?: string;\n}\n\nexport const Field = React.forwardRef(function Field(\n { children, breakpointPixels = 500, ...props }: FieldProps,\n ref: React.Ref<HTMLDivElement>\n) {\n const [isWideContainer, setIsWideContainer] = useState(true);\n const containerRef = useResizeObserver(newWidth => {\n setIsWideContainer(newWidth >= breakpointPixels);\n });\n const forkedRef = useForkRef(ref, containerRef);\n\n return (\n <>\n {isWideContainer ? (\n <HField {...props} ref={forkedRef} {...props}>\n {children}\n </HField>\n ) : (\n <VField {...props} ref={forkedRef} {...props}>\n {children}\n </VField>\n )}\n </>\n );\n});\n"],"names":["Field","React","children","breakpointPixels","props","ref","isWideContainer","setIsWideContainer","useState","containerRef","useResizeObserver","newWidth","forkedRef","useForkRef","jsx","Fragment","HField","VField"],"mappings":"
|
|
1
|
+
{"version":3,"file":"field.js","sources":["../../../src/form/field/field.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport type { FieldInput } from './common/types.js';\nimport { HField } from './h_field/h_field.js';\nimport { VField } from './v_field/v_field.js';\nimport { useForkRef, useResizeObserver } from '../../utils/index.js';\nimport type { StackStyleProps } from '../../stacks/types/styles.js';\n\nexport interface FieldProps extends FieldInput, StackStyleProps {\n children: React.ReactNode;\n breakpointPixels?: number;\n labelWidth?: string;\n}\n\nexport const Field = React.forwardRef(function Field(\n { children, breakpointPixels = 500, ...props }: FieldProps,\n ref: React.Ref<HTMLDivElement>\n) {\n const [isWideContainer, setIsWideContainer] = useState(true);\n const containerRef = useResizeObserver(newWidth => {\n setIsWideContainer(newWidth >= breakpointPixels);\n });\n const forkedRef = useForkRef(ref, containerRef);\n\n return (\n <>\n {isWideContainer ? (\n <HField {...props} ref={forkedRef} {...props}>\n {children}\n </HField>\n ) : (\n <VField {...props} ref={forkedRef} {...props}>\n {children}\n </VField>\n )}\n </>\n );\n});\n"],"names":["Field","React","children","breakpointPixels","props","ref","isWideContainer","setIsWideContainer","useState","containerRef","useResizeObserver","newWidth","forkedRef","useForkRef","jsx","Fragment","HField","VField"],"mappings":";;;;;;;;;;;;;;;;AAaO,MAAMA,IAAQC,EAAM,WAAW,SACpC,EAAE,UAAAC,GAAU,kBAAAC,IAAmB,KAAK,GAAGC,EAAA,GACvCC,GACA;AACA,QAAM,CAACC,GAAiBC,CAAkB,IAAIC,EAAS,EAAI,GACrDC,IAAeC,EAAkB,CAAAC,MAAY;AACjD,IAAAJ,EAAmBI,KAAYR,CAAgB;AAAA,EACjD,CAAC,GACKS,IAAYC,EAAWR,GAAKI,CAAY;AAE9C,SACE,gBAAAK,EAAAC,GAAA,EACG,cACC,gBAAAD,EAACE,GAAA,EAAQ,GAAGZ,GAAO,KAAKQ,GAAY,GAAGR,GACpC,UAAAF,GACH,IAEA,gBAAAY,EAACG,KAAQ,GAAGb,GAAO,KAAKQ,GAAY,GAAGR,GACpC,UAAAF,EAAA,CACH,EAAA,CAEJ;AAEJ,CAAC;"}
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
import { VStackProps } from '../../stacks/v_stack.js';
|
|
2
|
-
import { default as React } from 'react';
|
|
3
|
-
export type
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
endAdornments?: React.ReactNode;
|
|
2
|
+
import { default as React, FieldsetHTMLAttributes } from 'react';
|
|
3
|
+
export type FieldSetOwnProps = {
|
|
4
|
+
disabled?: boolean;
|
|
5
|
+
name?: string;
|
|
7
6
|
};
|
|
8
|
-
export
|
|
9
|
-
|
|
10
|
-
startAdornments?: React.ReactNode;
|
|
11
|
-
endAdornments?: React.ReactNode;
|
|
12
|
-
} & React.RefAttributes<HTMLFieldSetElement>>;
|
|
7
|
+
export type FieldSetProps = VStackProps<HTMLFieldSetElement> & FieldSetOwnProps & FieldsetHTMLAttributes<HTMLFieldSetElement>;
|
|
8
|
+
export declare const FieldSet: React.ForwardRefExoticComponent<VStackProps<HTMLFieldSetElement> & FieldSetOwnProps & React.FieldsetHTMLAttributes<HTMLFieldSetElement> & React.RefAttributes<HTMLFieldSetElement>>;
|
|
13
9
|
//# sourceMappingURL=field_set.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field_set.d.ts","sourceRoot":"","sources":["../../../src/form/field_set/field_set.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"field_set.d.ts","sourceRoot":"","sources":["../../../src/form/field_set/field_set.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,EAAE,KAAK,sBAAsB,EAAE,MAAM,OAAO,CAAC;AAK3D,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,mBAAmB,CAAC,GAC1D,gBAAgB,GAChB,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;AAE9C,eAAO,MAAM,QAAQ,qLAmCpB,CAAC"}
|
|
@@ -1,65 +1,37 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { BodyText as h } from "../../typography/body_text/body_text.js";
|
|
3
|
-
import "../../typography/callout/callout.js";
|
|
4
|
-
import "../../typography/caption/caption.js";
|
|
5
|
-
import "../../typography/footnote/footnote.js";
|
|
6
|
-
import "../../typography/headline/headline.js";
|
|
7
|
-
import "../../typography/subheadline/subheadline.js";
|
|
8
|
-
import "../../typography/title/title.js";
|
|
9
|
-
import { HStack as y } from "../../stacks/h_stack.js";
|
|
10
|
-
import { Spacer as c } from "../../stacks/spacer.js";
|
|
1
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
11
2
|
import { VStack as f } from "../../stacks/v_stack.js";
|
|
12
|
-
import { clsx as
|
|
13
|
-
import b
|
|
14
|
-
import
|
|
15
|
-
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
},
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
l
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
d && /* @__PURE__ */ e(c, { width: "8px" }),
|
|
44
|
-
/* @__PURE__ */ e(h, { className: "tcn-field-set-legend-text", size: "lg", children: l }),
|
|
45
|
-
o && /* @__PURE__ */ e(c, {}),
|
|
46
|
-
o
|
|
47
|
-
]
|
|
48
|
-
}
|
|
49
|
-
),
|
|
50
|
-
/* @__PURE__ */ e(
|
|
51
|
-
f,
|
|
52
|
-
{
|
|
53
|
-
className: i("tcn-field-set-body", m["tcn-field-set-body"]),
|
|
54
|
-
...t,
|
|
55
|
-
children: n
|
|
56
|
-
}
|
|
57
|
-
)
|
|
58
|
-
]
|
|
59
|
-
}
|
|
60
|
-
);
|
|
61
|
-
});
|
|
3
|
+
import { clsx as m } from "clsx";
|
|
4
|
+
import b from "react";
|
|
5
|
+
import { useLabelledById as c, LabelledByContext as n } from "../../utils/hooks/labelled_by_context.js";
|
|
6
|
+
import { s as u } from "../../field_set.module-BpJTFCi4.js";
|
|
7
|
+
const B = b.forwardRef(
|
|
8
|
+
function({
|
|
9
|
+
className: r,
|
|
10
|
+
id: e,
|
|
11
|
+
children: d,
|
|
12
|
+
"aria-labelledby": s,
|
|
13
|
+
...l
|
|
14
|
+
}, i) {
|
|
15
|
+
const { labelId: t } = c(e, s);
|
|
16
|
+
return /* @__PURE__ */ a(n.Provider, { value: { labelId: t }, children: /* @__PURE__ */ o(
|
|
17
|
+
f,
|
|
18
|
+
{
|
|
19
|
+
as: "fieldset",
|
|
20
|
+
"aria-labelledby": t,
|
|
21
|
+
ref: i,
|
|
22
|
+
id: e,
|
|
23
|
+
"data-is-disabled": l.disabled ? "true" : "false",
|
|
24
|
+
className: m(u["field-set"], r, "tcn-field-set"),
|
|
25
|
+
...l,
|
|
26
|
+
children: [
|
|
27
|
+
d,
|
|
28
|
+
/* @__PURE__ */ a("fieldset", { disabled: !0 })
|
|
29
|
+
]
|
|
30
|
+
}
|
|
31
|
+
) });
|
|
32
|
+
}
|
|
33
|
+
);
|
|
62
34
|
export {
|
|
63
|
-
|
|
35
|
+
B as FieldSet
|
|
64
36
|
};
|
|
65
37
|
//# sourceMappingURL=field_set.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field_set.js","sources":["../../../src/form/field_set/field_set.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"field_set.js","sources":["../../../src/form/field_set/field_set.tsx"],"sourcesContent":["import { VStack } from '../../stacks/v_stack.js';\nimport type { VStackProps } from '../../stacks/v_stack.js';\nimport { clsx } from 'clsx';\nimport React, { type FieldsetHTMLAttributes } from 'react';\nimport { LabelledByContext } from '../../utils/hooks/labelled_by_context.js';\nimport { useLabelledById } from '../../utils/hooks/labelled_by_context.js';\nimport styles from './field_set.module.css';\n\nexport type FieldSetOwnProps = {\n disabled?: boolean;\n name?: string;\n};\n\nexport type FieldSetProps = VStackProps<HTMLFieldSetElement> &\n FieldSetOwnProps &\n FieldsetHTMLAttributes<HTMLFieldSetElement>;\n\nexport const FieldSet = React.forwardRef<HTMLFieldSetElement, FieldSetProps>(\n function FieldSet(\n {\n className,\n id,\n children,\n 'aria-labelledby': ariaLabelledBy,\n ...props\n }: FieldSetProps,\n ref\n ) {\n const { labelId } = useLabelledById(id, ariaLabelledBy);\n\n return (\n <LabelledByContext.Provider value={{ labelId }}>\n <VStack\n as=\"fieldset\"\n aria-labelledby={labelId}\n ref={ref}\n id={id}\n data-is-disabled={props.disabled ? 'true' : 'false'}\n className={clsx(styles['field-set'], className, 'tcn-field-set')}\n {...props}\n >\n {/* TODO: may want to ensure Legend is rendered before rest of children.\n Search over children if a match is found for legend would pop it off the children array\n and manually render it in the correct slot. \n Before doing this however, may want to build Slot and Slottable util to generalize the problem/solution for re-useability. \n */}\n {children}\n <fieldset disabled></fieldset>\n </VStack>\n </LabelledByContext.Provider>\n );\n }\n);\n"],"names":["FieldSet","React","className","id","children","ariaLabelledBy","props","ref","labelId","useLabelledById","LabelledByContext","jsxs","VStack","clsx","styles","jsx"],"mappings":";;;;;;AAiBO,MAAMA,IAAWC,EAAM;AAAA,EAC5B,SACE;AAAA,IACE,WAAAC;AAAA,IACA,IAAAC;AAAA,IACA,UAAAC;AAAA,IACA,mBAAmBC;AAAA,IACnB,GAAGC;AAAA,EAAA,GAELC,GACA;AACA,UAAM,EAAE,SAAAC,EAAA,IAAYC,EAAgBN,GAAIE,CAAc;AAEtD,6BACGK,EAAkB,UAAlB,EAA2B,OAAO,EAAE,SAAAF,KACnC,UAAA,gBAAAG;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,IAAG;AAAA,QACH,mBAAiBJ;AAAA,QACjB,KAAAD;AAAA,QACA,IAAAJ;AAAA,QACA,oBAAkBG,EAAM,WAAW,SAAS;AAAA,QAC5C,WAAWO,EAAKC,EAAO,WAAW,GAAGZ,GAAW,eAAe;AAAA,QAC9D,GAAGI;AAAA,QAOH,UAAA;AAAA,UAAAF;AAAA,UACD,gBAAAW,EAAC,YAAA,EAAS,UAAQ,GAAA,CAAC;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAEvB;AAAA,EAEJ;AACF;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { HStackProps } from '../../stacks/h_stack.js';
|
|
2
|
+
export interface LegendOwnProps extends HStackProps {
|
|
3
|
+
id?: string;
|
|
4
|
+
className?: string;
|
|
5
|
+
children: React.ReactNode;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Composable legend for FieldSet. Renders as a div (HStack) with
|
|
9
|
+
* aria-labelledby wiring handled automatically via context.
|
|
10
|
+
*
|
|
11
|
+
* String children are automatically wrapped in BodyText with the
|
|
12
|
+
* `tcn-field-set-legend-text` class for consistent theme styling.
|
|
13
|
+
* Non-string children (e.g. icons, custom typography) render as-is.
|
|
14
|
+
*
|
|
15
|
+
* If a custom `id` is provided, it takes precedence over the context value.
|
|
16
|
+
* When overriding `id`, also provide a matching `aria-labelledby` to the
|
|
17
|
+
* parent FieldSet so the association remains correct.
|
|
18
|
+
*/
|
|
19
|
+
export declare const Legend: ({ id, children, className, ...props }: LegendOwnProps) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
//# sourceMappingURL=legend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legend.d.ts","sourceRoot":"","sources":["../../../src/form/field_set/legend.tsx"],"names":[],"mappings":"AACA,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAKnE,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,MAAM,GAAI,uCAAuC,cAAc,4CAmB3E,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { clsx as l } from "clsx";
|
|
3
|
+
import { HStack as p } from "../../stacks/h_stack.js";
|
|
4
|
+
import { BodyText as d } from "../../typography/body_text/body_text.js";
|
|
5
|
+
import "../../typography/callout/callout.js";
|
|
6
|
+
import "../../typography/caption/caption.js";
|
|
7
|
+
import "../../typography/footnote/footnote.js";
|
|
8
|
+
import "../../typography/headline/headline.js";
|
|
9
|
+
import "../../typography/subheadline/subheadline.js";
|
|
10
|
+
import "../../typography/title/title.js";
|
|
11
|
+
import { useLabelledBy as n } from "../../utils/hooks/labelled_by_context.js";
|
|
12
|
+
import { s as c } from "../../field_set.module-BpJTFCi4.js";
|
|
13
|
+
const k = ({ id: o, children: t, className: r, ...m }) => {
|
|
14
|
+
const s = n(), i = o ?? s?.labelId;
|
|
15
|
+
return /* @__PURE__ */ e(
|
|
16
|
+
p,
|
|
17
|
+
{
|
|
18
|
+
id: i,
|
|
19
|
+
className: l(r, c.legend, "tcn-legend", "tcn-field-set-legend"),
|
|
20
|
+
...m,
|
|
21
|
+
children: typeof t == "string" ? /* @__PURE__ */ e(d, { className: "tcn-field-set-legend-text", size: "lg", children: t }) : t
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
};
|
|
25
|
+
export {
|
|
26
|
+
k as Legend
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=legend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legend.js","sources":["../../../src/form/field_set/legend.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { HStack, type HStackProps } from '../../stacks/h_stack.js';\nimport { BodyText } from '../../typography/index.js';\nimport { useLabelledBy } from '../../utils/hooks/labelled_by_context.js';\nimport styles from './field_set.module.css';\n\nexport interface LegendOwnProps extends HStackProps {\n id?: string;\n className?: string;\n children: React.ReactNode;\n}\n\n/**\n * Composable legend for FieldSet. Renders as a div (HStack) with\n * aria-labelledby wiring handled automatically via context.\n *\n * String children are automatically wrapped in BodyText with the\n * `tcn-field-set-legend-text` class for consistent theme styling.\n * Non-string children (e.g. icons, custom typography) render as-is.\n *\n * If a custom `id` is provided, it takes precedence over the context value.\n * When overriding `id`, also provide a matching `aria-labelledby` to the\n * parent FieldSet so the association remains correct.\n */\nexport const Legend = ({ id, children, className, ...props }: LegendOwnProps) => {\n const ctx = useLabelledBy();\n const resolvedId = id ?? ctx?.labelId;\n\n return (\n <HStack\n id={resolvedId}\n className={clsx(className, styles.legend, 'tcn-legend', 'tcn-field-set-legend')}\n {...props}\n >\n {typeof children === 'string' ? (\n <BodyText className=\"tcn-field-set-legend-text\" size=\"lg\">\n {children}\n </BodyText>\n ) : (\n children\n )}\n </HStack>\n );\n};\n"],"names":["Legend","id","children","className","props","ctx","useLabelledBy","resolvedId","jsx","HStack","clsx","styles","BodyText"],"mappings":";;;;;;;;;;;;AAwBO,MAAMA,IAAS,CAAC,EAAE,IAAAC,GAAI,UAAAC,GAAU,WAAAC,GAAW,GAAGC,QAA4B;AAC/E,QAAMC,IAAMC,EAAA,GACNC,IAAaN,KAAMI,GAAK;AAE9B,SACE,gBAAAG;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,IAAIF;AAAA,MACJ,WAAWG,EAAKP,GAAWQ,EAAO,QAAQ,cAAc,sBAAsB;AAAA,MAC7E,GAAGP;AAAA,MAEH,UAAA,OAAOF,KAAa,WACnB,gBAAAM,EAACI,GAAA,EAAS,WAAU,6BAA4B,MAAK,MAClD,UAAAV,EAAA,CACH,IAEAA;AAAA,IAAA;AAAA,EAAA;AAIR;"}
|
package/dist/form/index.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export { VField, type VFieldProps, type VFieldOwnProps, } from './field/v_field/
|
|
|
10
10
|
export { Field, type FieldProps } from './field/field.js';
|
|
11
11
|
export { FieldPresenter, type FieldState, type FieldOptions, } from './field_presenters/field_presenter.js';
|
|
12
12
|
export { OptionsFieldPresenter, type OptionsFieldState, type OptionsFieldOptions, } from './field_presenters/options_field_presenter.js';
|
|
13
|
-
export { FieldSet, type FieldSetProps } from './field_set/field_set.js';
|
|
13
|
+
export { FieldSet, type FieldSetProps, type FieldSetOwnProps, } from './field_set/field_set.js';
|
|
14
|
+
export { Legend, type LegendOwnProps } from './field_set/legend.js';
|
|
14
15
|
export { FormField } from './form_field.js';
|
|
15
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/form/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,YAAY,GACb,MAAM,+CAA+C,CAAC;AACvD,OAAO,EACL,YAAY,EACZ,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,gBAAgB,GACjB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,gBAAgB,EAChB,KAAK,wBAAwB,GAC9B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,KAAK,yBAAyB,EAC9B,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACpF,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EACL,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,cAAc,EACd,KAAK,UAAU,EACf,KAAK,YAAY,GAClB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,qBAAqB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,+CAA+C,CAAC;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,YAAY,GACb,MAAM,+CAA+C,CAAC;AACvD,OAAO,EACL,YAAY,EACZ,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,gBAAgB,GACjB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,gBAAgB,EAChB,KAAK,wBAAwB,GAC9B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,KAAK,yBAAyB,EAC9B,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,WAAW,EACX,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACpF,YAAY,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EACL,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,cAAc,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,cAAc,EACd,KAAK,UAAU,EACf,KAAK,YAAY,GAClB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,qBAAqB,EACrB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EACL,QAAQ,EACR,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/form/index.js
CHANGED
|
@@ -1,30 +1,32 @@
|
|
|
1
1
|
import { FieldControl as o } from "./field/common/field_control/field_control.js";
|
|
2
|
-
import { AdornmentMap as p, FieldStatusInput as
|
|
3
|
-
import { FieldDescription as
|
|
4
|
-
import { FieldErrorMessage as
|
|
5
|
-
import { FieldHeader as
|
|
2
|
+
import { AdornmentMap as p, FieldStatusInput as d } from "./field/common/status_input/status_input.js";
|
|
3
|
+
import { FieldDescription as m } from "./field/common/field_description.js";
|
|
4
|
+
import { FieldErrorMessage as f } from "./field/common/field_error.js";
|
|
5
|
+
import { FieldHeader as F } from "./field/common/field_header.js";
|
|
6
6
|
import { FieldLabel as s } from "./field/common/field_label.js";
|
|
7
|
-
import { HField as
|
|
8
|
-
import { VField as
|
|
9
|
-
import { Field as
|
|
10
|
-
import { FieldPresenter as
|
|
11
|
-
import { OptionsFieldPresenter as
|
|
12
|
-
import { FieldSet as
|
|
13
|
-
import {
|
|
7
|
+
import { HField as g } from "./field/h_field/h_field.js";
|
|
8
|
+
import { VField as H } from "./field/v_field/v_field.js";
|
|
9
|
+
import { Field as M } from "./field/field.js";
|
|
10
|
+
import { FieldPresenter as S } from "./field_presenters/field_presenter.js";
|
|
11
|
+
import { OptionsFieldPresenter as c } from "./field_presenters/options_field_presenter.js";
|
|
12
|
+
import { FieldSet as C } from "./field_set/field_set.js";
|
|
13
|
+
import { Legend as E } from "./field_set/legend.js";
|
|
14
|
+
import { FormField as O } from "./form_field.js";
|
|
14
15
|
export {
|
|
15
16
|
p as AdornmentMap,
|
|
16
|
-
|
|
17
|
+
M as Field,
|
|
17
18
|
o as FieldControl,
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
m as FieldDescription,
|
|
20
|
+
f as FieldErrorMessage,
|
|
21
|
+
F as FieldHeader,
|
|
21
22
|
s as FieldLabel,
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
S as FieldPresenter,
|
|
24
|
+
C as FieldSet,
|
|
25
|
+
d as FieldStatusInput,
|
|
26
|
+
O as FormField,
|
|
27
|
+
g as HField,
|
|
28
|
+
E as Legend,
|
|
29
|
+
c as OptionsFieldPresenter,
|
|
30
|
+
H as VField
|
|
29
31
|
};
|
|
30
32
|
//# sourceMappingURL=index.js.map
|
package/dist/form/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
|
|
@@ -6,7 +6,6 @@ import { clsx as h } from "clsx";
|
|
|
6
6
|
import { useState as I, useRef as A, useLayoutEffect as N } from "react";
|
|
7
7
|
import "../../actions/button/base_button/base_button.js";
|
|
8
8
|
import "../../actions/button/button_group/button_group.js";
|
|
9
|
-
import "../../actions/button/slim_button/slim_button.js";
|
|
10
9
|
import { Button as P } from "../../actions/button/button/button.js";
|
|
11
10
|
import "../../actions/toggle/toggle.js";
|
|
12
11
|
import { ColorPicker as _ } from "./color_picker.js";
|
|
@@ -14,7 +13,7 @@ import { Input as B } from "../input/input.js";
|
|
|
14
13
|
import { Popper as F } from "../../overlay/popper/legacy/popper.js";
|
|
15
14
|
import { ControlSet as j } from "../control_set/control_set.js";
|
|
16
15
|
import '../../color_input.css';const z = "_checker-board_2cc94a9", K = "_color-input-select_abe3066", f = { "checker-board": z, "color-input-select": K };
|
|
17
|
-
function
|
|
16
|
+
function Z({
|
|
18
17
|
value: c = "#000",
|
|
19
18
|
onChange: i,
|
|
20
19
|
onError: O,
|
|
@@ -140,6 +139,6 @@ function v({
|
|
|
140
139
|
] });
|
|
141
140
|
}
|
|
142
141
|
export {
|
|
143
|
-
|
|
142
|
+
Z as ColorInput
|
|
144
143
|
};
|
|
145
144
|
//# sourceMappingURL=color_input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color_input.js","sources":["../../../src/inputs/color_input/color_input.tsx"],"sourcesContent":["import { Box } from '../../stacks/box/box.js';\nimport { HStack } from '../../stacks/h_stack.js';\nimport { Spacer } from '../../stacks/spacer.js';\nimport { clsx } from 'clsx';\nimport React, { useLayoutEffect, useRef, useState } from 'react';\nimport { HTMLAttributes } from 'react';\nimport { ColorState } from 'react-color';\nimport { Button } from '../../actions/index.js';\nimport { ColorPicker } from './color_picker.js';\nimport { Input } from '../input/input.js';\nimport styles from './color_input.module.css';\n\nimport { Popper } from '../../overlay/popper/legacy/popper.js';\nimport { ControlSet } from '../control_set/control_set.js';\n\nexport interface ColorInputProps\n extends Omit<HTMLAttributes<HTMLButtonElement>, 'onChange' | 'onError'> {\n value?: string;\n disabled?: boolean;\n onChange?: (color: string) => void;\n onError?: (error: string | null) => void;\n width?: string;\n maxWidth?: string;\n minWidth?: string;\n hierarchy?: 'primary' | 'secondary' | 'tertiary';\n}\n\nexport function ColorInput({\n value = '#000',\n onChange,\n onError,\n disabled,\n width = '100%',\n maxWidth,\n minWidth,\n hierarchy = 'secondary',\n ...props\n}: ColorInputProps) {\n const [anchorElement, setAnchorElement] = useState<HTMLButtonElement | null>(null);\n const isOpen = anchorElement != null;\n const pickerRef = useRef<HTMLDivElement | null>(null);\n\n function openPicker(e: React.MouseEvent<HTMLButtonElement>) {\n setAnchorElement(e.currentTarget);\n }\n\n function closePicker() {\n setAnchorElement(null);\n }\n\n useLayoutEffect(() => {\n requestAnimationFrame(() => {\n if (anchorElement != null) {\n pickerRef.current && pickerRef.current.focus();\n }\n });\n }, [anchorElement]);\n\n function processKeyInput(event: React.KeyboardEvent) {\n if (event.key === 'Escape') {\n closePicker();\n }\n }\n\n function updateColor(value: ColorState) {\n const rgb = value.rgb;\n let color = value.hex;\n\n if (rgb.a != null) {\n color = `rgba(${rgb.r},${rgb.g},${rgb.b},${rgb.a})`;\n } else {\n color = `rgb(${rgb.r},${rgb.g},${rgb.b})`;\n }\n\n onChange && onChange(color);\n }\n\n return (\n <>\n <ControlSet\n height=\"auto\"\n width={width}\n minWidth={minWidth}\n maxWidth={maxWidth}\n className=\"tcn-color-input-wrapper\"\n {...props}\n >\n <Input\n width=\"flex\"\n disabled={disabled}\n value={value}\n style={{\n borderEndEndRadius: 0,\n borderStartEndRadius: 0,\n textAlign: 'start',\n paddingInlineEnd: '8px',\n }}\n className=\"tcn-color-input\"\n onChange={onChange}\n />\n\n <Button\n disabled={disabled}\n hierarchy={hierarchy}\n onClick={openPicker}\n width=\"70px\"\n maxWidth=\"70px\"\n className={clsx(\n styles['color-input-select'],\n 'tcn-color-input-select',\n 'tcn-select'\n )}\n style={{\n borderStartStartRadius: 0,\n borderEndStartRadius: 0,\n paddingInlineEnd: 0,\n }}\n >\n <HStack height=\"14px\" gap=\"4px\" hAlign=\"start\">\n <Spacer width=\"4px\" />\n <Box\n width=\"flex\"\n height=\"30px\"\n className={clsx(styles['checker-board'], 'tcn-checker-board')}\n style={{ borderRadius: '2px', overflow: 'hidden' }}\n >\n <Box\n height=\"100%\"\n style={{ backgroundColor: value, borderRadius: '2px' }}\n ></Box>\n </Box>\n <Spacer />\n </HStack>\n <Spacer width=\"4px\" />\n </Button>\n </ControlSet>\n <Popper\n anchorElement={anchorElement}\n onClose={closePicker}\n open={isOpen}\n restoreFocus\n horizontalAnchor=\"end\"\n horizontalOrigin=\"end\"\n >\n <ColorPicker\n color={value}\n onKeyDown={processKeyInput}\n onColorChange={updateColor}\n />\n </Popper>\n </>\n );\n}\n"],"names":["ColorInput","value","onChange","onError","disabled","width","maxWidth","minWidth","hierarchy","props","anchorElement","setAnchorElement","useState","isOpen","pickerRef","useRef","openPicker","e","closePicker","useLayoutEffect","processKeyInput","event","updateColor","rgb","color","jsxs","Fragment","ControlSet","jsx","Input","Button","clsx","styles","HStack","Spacer","Box","Popper","ColorPicker"],"mappings":"
|
|
1
|
+
{"version":3,"file":"color_input.js","sources":["../../../src/inputs/color_input/color_input.tsx"],"sourcesContent":["import { Box } from '../../stacks/box/box.js';\nimport { HStack } from '../../stacks/h_stack.js';\nimport { Spacer } from '../../stacks/spacer.js';\nimport { clsx } from 'clsx';\nimport React, { useLayoutEffect, useRef, useState } from 'react';\nimport { HTMLAttributes } from 'react';\nimport { ColorState } from 'react-color';\nimport { Button } from '../../actions/index.js';\nimport { ColorPicker } from './color_picker.js';\nimport { Input } from '../input/input.js';\nimport styles from './color_input.module.css';\n\nimport { Popper } from '../../overlay/popper/legacy/popper.js';\nimport { ControlSet } from '../control_set/control_set.js';\n\nexport interface ColorInputProps\n extends Omit<HTMLAttributes<HTMLButtonElement>, 'onChange' | 'onError'> {\n value?: string;\n disabled?: boolean;\n onChange?: (color: string) => void;\n onError?: (error: string | null) => void;\n width?: string;\n maxWidth?: string;\n minWidth?: string;\n hierarchy?: 'primary' | 'secondary' | 'tertiary';\n}\n\nexport function ColorInput({\n value = '#000',\n onChange,\n onError,\n disabled,\n width = '100%',\n maxWidth,\n minWidth,\n hierarchy = 'secondary',\n ...props\n}: ColorInputProps) {\n const [anchorElement, setAnchorElement] = useState<HTMLButtonElement | null>(null);\n const isOpen = anchorElement != null;\n const pickerRef = useRef<HTMLDivElement | null>(null);\n\n function openPicker(e: React.MouseEvent<HTMLButtonElement>) {\n setAnchorElement(e.currentTarget);\n }\n\n function closePicker() {\n setAnchorElement(null);\n }\n\n useLayoutEffect(() => {\n requestAnimationFrame(() => {\n if (anchorElement != null) {\n pickerRef.current && pickerRef.current.focus();\n }\n });\n }, [anchorElement]);\n\n function processKeyInput(event: React.KeyboardEvent) {\n if (event.key === 'Escape') {\n closePicker();\n }\n }\n\n function updateColor(value: ColorState) {\n const rgb = value.rgb;\n let color = value.hex;\n\n if (rgb.a != null) {\n color = `rgba(${rgb.r},${rgb.g},${rgb.b},${rgb.a})`;\n } else {\n color = `rgb(${rgb.r},${rgb.g},${rgb.b})`;\n }\n\n onChange && onChange(color);\n }\n\n return (\n <>\n <ControlSet\n height=\"auto\"\n width={width}\n minWidth={minWidth}\n maxWidth={maxWidth}\n className=\"tcn-color-input-wrapper\"\n {...props}\n >\n <Input\n width=\"flex\"\n disabled={disabled}\n value={value}\n style={{\n borderEndEndRadius: 0,\n borderStartEndRadius: 0,\n textAlign: 'start',\n paddingInlineEnd: '8px',\n }}\n className=\"tcn-color-input\"\n onChange={onChange}\n />\n\n <Button\n disabled={disabled}\n hierarchy={hierarchy}\n onClick={openPicker}\n width=\"70px\"\n maxWidth=\"70px\"\n className={clsx(\n styles['color-input-select'],\n 'tcn-color-input-select',\n 'tcn-select'\n )}\n style={{\n borderStartStartRadius: 0,\n borderEndStartRadius: 0,\n paddingInlineEnd: 0,\n }}\n >\n <HStack height=\"14px\" gap=\"4px\" hAlign=\"start\">\n <Spacer width=\"4px\" />\n <Box\n width=\"flex\"\n height=\"30px\"\n className={clsx(styles['checker-board'], 'tcn-checker-board')}\n style={{ borderRadius: '2px', overflow: 'hidden' }}\n >\n <Box\n height=\"100%\"\n style={{ backgroundColor: value, borderRadius: '2px' }}\n ></Box>\n </Box>\n <Spacer />\n </HStack>\n <Spacer width=\"4px\" />\n </Button>\n </ControlSet>\n <Popper\n anchorElement={anchorElement}\n onClose={closePicker}\n open={isOpen}\n restoreFocus\n horizontalAnchor=\"end\"\n horizontalOrigin=\"end\"\n >\n <ColorPicker\n color={value}\n onKeyDown={processKeyInput}\n onColorChange={updateColor}\n />\n </Popper>\n </>\n );\n}\n"],"names":["ColorInput","value","onChange","onError","disabled","width","maxWidth","minWidth","hierarchy","props","anchorElement","setAnchorElement","useState","isOpen","pickerRef","useRef","openPicker","e","closePicker","useLayoutEffect","processKeyInput","event","updateColor","rgb","color","jsxs","Fragment","ControlSet","jsx","Input","Button","clsx","styles","HStack","Spacer","Box","Popper","ColorPicker"],"mappings":";;;;;;;;;;;;;;;AA2BO,SAASA,EAAW;AAAA,EACzB,OAAAC,IAAQ;AAAA,EACR,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,GAAGC;AACL,GAAoB;AAClB,QAAM,CAACC,GAAeC,CAAgB,IAAIC,EAAmC,IAAI,GAC3EC,IAASH,KAAiB,MAC1BI,IAAYC,EAA8B,IAAI;AAEpD,WAASC,EAAWC,GAAwC;AAC1D,IAAAN,EAAiBM,EAAE,aAAa;AAAA,EAClC;AAEA,WAASC,IAAc;AACrB,IAAAP,EAAiB,IAAI;AAAA,EACvB;AAEA,EAAAQ,EAAgB,MAAM;AACpB,0BAAsB,MAAM;AAC1B,MAAIT,KAAiB,QACnBI,EAAU,WAAWA,EAAU,QAAQ,MAAA;AAAA,IAE3C,CAAC;AAAA,EACH,GAAG,CAACJ,CAAa,CAAC;AAElB,WAASU,EAAgBC,GAA4B;AACnD,IAAIA,EAAM,QAAQ,YAChBH,EAAA;AAAA,EAEJ;AAEA,WAASI,EAAYrB,GAAmB;AACtC,UAAMsB,IAAMtB,EAAM;AAClB,QAAIuB,IAAQvB,EAAM;AAElB,IAAIsB,EAAI,KAAK,OACXC,IAAQ,QAAQD,EAAI,CAAC,IAAIA,EAAI,CAAC,IAAIA,EAAI,CAAC,IAAIA,EAAI,CAAC,MAEhDC,IAAQ,OAAOD,EAAI,CAAC,IAAIA,EAAI,CAAC,IAAIA,EAAI,CAAC,KAGxCrB,KAAYA,EAASsB,CAAK;AAAA,EAC5B;AAEA,SACE,gBAAAC,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,QAAO;AAAA,QACP,OAAAtB;AAAA,QACA,UAAAE;AAAA,QACA,UAAAD;AAAA,QACA,WAAU;AAAA,QACT,GAAGG;AAAA,QAEJ,UAAA;AAAA,UAAA,gBAAAmB;AAAA,YAACC;AAAA,YAAA;AAAA,cACC,OAAM;AAAA,cACN,UAAAzB;AAAA,cACA,OAAAH;AAAA,cACA,OAAO;AAAA,gBACL,oBAAoB;AAAA,gBACpB,sBAAsB;AAAA,gBACtB,WAAW;AAAA,gBACX,kBAAkB;AAAA,cAAA;AAAA,cAEpB,WAAU;AAAA,cACV,UAAAC;AAAA,YAAA;AAAA,UAAA;AAAA,UAGF,gBAAAuB;AAAA,YAACK;AAAA,YAAA;AAAA,cACC,UAAA1B;AAAA,cACA,WAAAI;AAAA,cACA,SAASQ;AAAA,cACT,OAAM;AAAA,cACN,UAAS;AAAA,cACT,WAAWe;AAAA,gBACTC,EAAO,oBAAoB;AAAA,gBAC3B;AAAA,gBACA;AAAA,cAAA;AAAA,cAEF,OAAO;AAAA,gBACL,wBAAwB;AAAA,gBACxB,sBAAsB;AAAA,gBACtB,kBAAkB;AAAA,cAAA;AAAA,cAGpB,UAAA;AAAA,gBAAA,gBAAAP,EAACQ,KAAO,QAAO,QAAO,KAAI,OAAM,QAAO,SACrC,UAAA;AAAA,kBAAA,gBAAAL,EAACM,GAAA,EAAO,OAAM,MAAA,CAAM;AAAA,kBACpB,gBAAAN;AAAA,oBAACO;AAAA,oBAAA;AAAA,sBACC,OAAM;AAAA,sBACN,QAAO;AAAA,sBACP,WAAWJ,EAAKC,EAAO,eAAe,GAAG,mBAAmB;AAAA,sBAC5D,OAAO,EAAE,cAAc,OAAO,UAAU,SAAA;AAAA,sBAExC,UAAA,gBAAAJ;AAAA,wBAACO;AAAA,wBAAA;AAAA,0BACC,QAAO;AAAA,0BACP,OAAO,EAAE,iBAAiBlC,GAAO,cAAc,MAAA;AAAA,wBAAM;AAAA,sBAAA;AAAA,oBACtD;AAAA,kBAAA;AAAA,oCAEFiC,GAAA,CAAA,CAAO;AAAA,gBAAA,GACV;AAAA,gBACA,gBAAAN,EAACM,GAAA,EAAO,OAAM,MAAA,CAAM;AAAA,cAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QACtB;AAAA,MAAA;AAAA,IAAA;AAAA,IAEF,gBAAAN;AAAA,MAACQ;AAAA,MAAA;AAAA,QACC,eAAA1B;AAAA,QACA,SAASQ;AAAA,QACT,MAAML;AAAA,QACN,cAAY;AAAA,QACZ,kBAAiB;AAAA,QACjB,kBAAiB;AAAA,QAEjB,UAAA,gBAAAe;AAAA,UAACS;AAAA,UAAA;AAAA,YACC,OAAOpC;AAAA,YACP,WAAWmB;AAAA,YACX,eAAeE;AAAA,UAAA;AAAA,QAAA;AAAA,MACjB;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;"}
|
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
-
import "../../utils/click_away_listener.js";
|
|
3
|
-
import "../../utils/focus_redirect.js";
|
|
4
|
-
import "../../utils/scroll_away_listener.js";
|
|
2
|
+
import "../../utils/listeners/click_away_listener.js";
|
|
3
|
+
import "../../utils/listeners/focus_redirect.js";
|
|
4
|
+
import "../../utils/listeners/scroll_away_listener.js";
|
|
5
5
|
import s, { useRef as a, useLayoutEffect as k } from "react";
|
|
6
6
|
import { useForkRef as l } from "../../utils/hooks/use_fork_ref.js";
|
|
7
7
|
import "../../utils/hooks/use_resize_observer.js";
|
|
8
|
-
import "../../utils/
|
|
8
|
+
import "../../utils/hooks/labelled_by_context.js";
|
|
9
|
+
import "../../utils/decorators/draggable/context.js";
|
|
9
10
|
import { clsx as e } from "clsx";
|
|
10
|
-
import "../../draggable.module-
|
|
11
|
+
import "../../draggable.module-DFYR5n3n.js";
|
|
12
|
+
import "../../utils/decorators/resizable/context.js";
|
|
13
|
+
import "../../resizable.module-ur5FBfxo.js";
|
|
14
|
+
import "../../utils/decorators/resizable/resize_handle.js";
|
|
11
15
|
import { ZStack as u } from "../../stacks/z_stack.js";
|
|
12
16
|
import { ChromePicker as h } from "react-color";
|
|
13
|
-
import '../../color_picker.css';const d = "_color-picker_4757d5a", R = "_chrome-picker_2f64060", c = { "color-picker": d, "chrome-picker": R },
|
|
17
|
+
import '../../color_picker.css';const d = "_color-picker_4757d5a", R = "_chrome-picker_2f64060", c = { "color-picker": d, "chrome-picker": R }, v = s.forwardRef(function({ color: t, onColorChange: i, className: m, ...p }, f) {
|
|
14
18
|
const r = a(null), n = l(r, f);
|
|
15
19
|
return k(() => {
|
|
16
20
|
r.current && r.current.focus();
|
|
@@ -36,6 +40,6 @@ import '../../color_picker.css';const d = "_color-picker_4757d5a", R = "_chrome-
|
|
|
36
40
|
);
|
|
37
41
|
});
|
|
38
42
|
export {
|
|
39
|
-
|
|
43
|
+
v as ColorPicker
|
|
40
44
|
};
|
|
41
45
|
//# sourceMappingURL=color_picker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color_picker.js","sources":["../../../src/inputs/color_input/color_picker.tsx"],"sourcesContent":["import { useForkRef } from '../../utils/index.js';\nimport { ZStack } from '../../stacks/z_stack.js';\nimport { clsx } from 'clsx';\nimport React, { HTMLAttributes, useLayoutEffect, useRef } from 'react';\nimport { ChromePicker, Color, type ColorResult } from 'react-color';\nimport styles from './color_picker.module.css';\n\nexport interface ColorPickerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {\n color: Color;\n onColorChange: (color: ColorResult) => void;\n}\n\nexport const ColorPicker = React.forwardRef(function ColorPicker(\n { color, onColorChange, className, ...props }: ColorPickerProps,\n ref: React.Ref<HTMLDivElement>\n) {\n const padRef = useRef<HTMLDivElement | null>(null);\n const forkedRef = useForkRef(padRef, ref);\n\n useLayoutEffect(() => {\n padRef.current && padRef.current.focus();\n }, []);\n\n return (\n <ZStack\n tabIndex={0}\n ref={forkedRef}\n padding=\"8px\"\n height=\"auto\"\n width=\"auto\"\n className={clsx(styles['color-picker'], 'tcn-color-picker', className)}\n {...props}\n >\n <ChromePicker\n className={clsx(styles['chrome-picker'], 'tcn-chrome-picker')}\n color={color}\n onChange={onColorChange}\n />\n </ZStack>\n );\n});\n"],"names":["ColorPicker","React","color","onColorChange","className","props","ref","padRef","useRef","forkedRef","useForkRef","useLayoutEffect","jsx","ZStack","clsx","styles","ChromePicker"],"mappings":"
|
|
1
|
+
{"version":3,"file":"color_picker.js","sources":["../../../src/inputs/color_input/color_picker.tsx"],"sourcesContent":["import { useForkRef } from '../../utils/index.js';\nimport { ZStack } from '../../stacks/z_stack.js';\nimport { clsx } from 'clsx';\nimport React, { HTMLAttributes, useLayoutEffect, useRef } from 'react';\nimport { ChromePicker, Color, type ColorResult } from 'react-color';\nimport styles from './color_picker.module.css';\n\nexport interface ColorPickerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'color'> {\n color: Color;\n onColorChange: (color: ColorResult) => void;\n}\n\nexport const ColorPicker = React.forwardRef(function ColorPicker(\n { color, onColorChange, className, ...props }: ColorPickerProps,\n ref: React.Ref<HTMLDivElement>\n) {\n const padRef = useRef<HTMLDivElement | null>(null);\n const forkedRef = useForkRef(padRef, ref);\n\n useLayoutEffect(() => {\n padRef.current && padRef.current.focus();\n }, []);\n\n return (\n <ZStack\n tabIndex={0}\n ref={forkedRef}\n padding=\"8px\"\n height=\"auto\"\n width=\"auto\"\n className={clsx(styles['color-picker'], 'tcn-color-picker', className)}\n {...props}\n >\n <ChromePicker\n className={clsx(styles['chrome-picker'], 'tcn-chrome-picker')}\n color={color}\n onChange={onColorChange}\n />\n </ZStack>\n );\n});\n"],"names":["ColorPicker","React","color","onColorChange","className","props","ref","padRef","useRef","forkedRef","useForkRef","useLayoutEffect","jsx","ZStack","clsx","styles","ChromePicker"],"mappings":";;;;;;;;;;;;;;;;gHAYaA,IAAcC,EAAM,WAAW,SAC1C,EAAE,OAAAC,GAAO,eAAAC,GAAe,WAAAC,GAAW,GAAGC,EAAA,GACtCC,GACA;AACA,QAAMC,IAASC,EAA8B,IAAI,GAC3CC,IAAYC,EAAWH,GAAQD,CAAG;AAExC,SAAAK,EAAgB,MAAM;AACpB,IAAAJ,EAAO,WAAWA,EAAO,QAAQ,MAAA;AAAA,EACnC,GAAG,CAAA,CAAE,GAGH,gBAAAK;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,UAAU;AAAA,MACV,KAAKJ;AAAA,MACL,SAAQ;AAAA,MACR,QAAO;AAAA,MACP,OAAM;AAAA,MACN,WAAWK,EAAKC,EAAO,cAAc,GAAG,oBAAoBX,CAAS;AAAA,MACpE,GAAGC;AAAA,MAEJ,UAAA,gBAAAO;AAAA,QAACI;AAAA,QAAA;AAAA,UACC,WAAWF,EAAKC,EAAO,eAAe,GAAG,mBAAmB;AAAA,UAC5D,OAAAb;AAAA,UACA,UAAUC;AAAA,QAAA;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA;AAGN,CAAC;"}
|