@accelint/design-toolkit 8.1.2 → 9.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/catalog-info.yaml +6 -8
- package/dist/components/accordion/context.d.ts +19 -5
- package/dist/components/accordion/context.js +21 -1
- package/dist/components/accordion/context.js.map +1 -1
- package/dist/components/accordion/group.d.ts +25 -6
- package/dist/components/accordion/group.js +38 -1
- package/dist/components/accordion/group.js.map +1 -1
- package/dist/components/accordion/header.d.ts +22 -6
- package/dist/components/accordion/header.js +47 -1
- package/dist/components/accordion/header.js.map +1 -1
- package/dist/components/accordion/index.d.ts +23 -7
- package/dist/components/accordion/index.js +82 -1
- package/dist/components/accordion/index.js.map +1 -1
- package/dist/components/accordion/panel.d.ts +23 -6
- package/dist/components/accordion/panel.js +31 -1
- package/dist/components/accordion/panel.js.map +1 -1
- package/dist/components/accordion/styles.module.css +14 -2
- package/dist/components/accordion/trigger.d.ts +22 -6
- package/dist/components/accordion/trigger.js +47 -1
- package/dist/components/accordion/trigger.js.map +1 -1
- package/dist/components/accordion/types.d.ts +24 -10
- package/dist/components/accordion/types.js +12 -2
- package/dist/components/action-bar/index.d.ts +23 -5
- package/dist/components/action-bar/index.js +51 -1
- package/dist/components/action-bar/index.js.map +1 -1
- package/dist/components/action-bar/styles.module.css +1 -1
- package/dist/components/action-bar/types.d.ts +18 -4
- package/dist/components/action-bar/types.js +12 -2
- package/dist/components/avatar/context.d.ts +25 -8
- package/dist/components/avatar/context.js +28 -1
- package/dist/components/avatar/context.js.map +1 -1
- package/dist/components/avatar/index.d.ts +23 -6
- package/dist/components/avatar/index.js +92 -1
- package/dist/components/avatar/index.js.map +1 -1
- package/dist/components/avatar/styles.module.css +1 -1
- package/dist/components/avatar/types.d.ts +27 -13
- package/dist/components/avatar/types.js +12 -2
- package/dist/components/badge/context.d.ts +25 -8
- package/dist/components/badge/context.js +28 -1
- package/dist/components/badge/context.js.map +1 -1
- package/dist/components/badge/index.d.ts +23 -6
- package/dist/components/badge/index.js +61 -1
- package/dist/components/badge/index.js.map +1 -1
- package/dist/components/badge/styles.module.css +1 -1
- package/dist/components/badge/types.d.ts +25 -11
- package/dist/components/badge/types.js +12 -2
- package/dist/components/breadcrumbs/index.d.ts +22 -4
- package/dist/components/breadcrumbs/index.js +41 -1
- package/dist/components/breadcrumbs/index.js.map +1 -1
- package/dist/components/breadcrumbs/item.d.ts +23 -4
- package/dist/components/breadcrumbs/item.js +40 -1
- package/dist/components/breadcrumbs/item.js.map +1 -1
- package/dist/components/breadcrumbs/styles.module.css +1 -1
- package/dist/components/breadcrumbs/types.d.ts +30 -16
- package/dist/components/breadcrumbs/types.js +12 -2
- package/dist/components/button/context.d.ts +35 -11
- package/dist/components/button/context.js +42 -1
- package/dist/components/button/context.js.map +1 -1
- package/dist/components/button/index.d.ts +23 -7
- package/dist/components/button/index.js +74 -1
- package/dist/components/button/index.js.map +1 -1
- package/dist/components/button/link.d.ts +23 -7
- package/dist/components/button/link.js +74 -1
- package/dist/components/button/link.js.map +1 -1
- package/dist/components/button/styles.module.css +1 -1
- package/dist/components/button/toggle.d.ts +23 -7
- package/dist/components/button/toggle.js +76 -1
- package/dist/components/button/toggle.js.map +1 -1
- package/dist/components/button/types.d.ts +22 -9
- package/dist/components/button/types.js +12 -2
- package/dist/components/checkbox/context.d.ts +20 -7
- package/dist/components/checkbox/context.js +22 -1
- package/dist/components/checkbox/context.js.map +1 -1
- package/dist/components/checkbox/group.d.ts +21 -7
- package/dist/components/checkbox/group.js +41 -1
- package/dist/components/checkbox/group.js.map +1 -1
- package/dist/components/checkbox/index.d.ts +23 -8
- package/dist/components/checkbox/index.js +78 -1
- package/dist/components/checkbox/index.js.map +1 -1
- package/dist/components/checkbox/styles.module.css +1 -1
- package/dist/components/checkbox/types.d.ts +31 -17
- package/dist/components/checkbox/types.js +12 -2
- package/dist/components/chip/context.d.ts +25 -7
- package/dist/components/chip/context.js +28 -1
- package/dist/components/chip/context.js.map +1 -1
- package/dist/components/chip/deletable.d.ts +21 -5
- package/dist/components/chip/deletable.js +53 -1
- package/dist/components/chip/deletable.js.map +1 -1
- package/dist/components/chip/index.d.ts +52 -17
- package/dist/components/chip/index.js +94 -1
- package/dist/components/chip/index.js.map +1 -1
- package/dist/components/chip/list.d.ts +23 -6
- package/dist/components/chip/list.js +48 -1
- package/dist/components/chip/list.js.map +1 -1
- package/dist/components/chip/selectable.d.ts +21 -5
- package/dist/components/chip/selectable.js +35 -1
- package/dist/components/chip/selectable.js.map +1 -1
- package/dist/components/chip/styles.module.css +1 -1
- package/dist/components/chip/types.d.ts +25 -11
- package/dist/components/chip/types.js +12 -2
- package/dist/components/classification-badge/context.d.ts +25 -8
- package/dist/components/classification-badge/context.js +28 -1
- package/dist/components/classification-badge/context.js.map +1 -1
- package/dist/components/classification-badge/index.d.ts +22 -6
- package/dist/components/classification-badge/index.js +58 -1
- package/dist/components/classification-badge/index.js.map +1 -1
- package/dist/components/classification-badge/styles.module.css +1 -1
- package/dist/components/classification-badge/types.d.ts +19 -5
- package/dist/components/classification-badge/types.js +12 -2
- package/dist/components/classification-banner/context.d.ts +25 -7
- package/dist/components/classification-banner/context.js +28 -1
- package/dist/components/classification-banner/context.js.map +1 -1
- package/dist/components/classification-banner/index.d.ts +22 -5
- package/dist/components/classification-banner/index.js +54 -1
- package/dist/components/classification-banner/index.js.map +1 -1
- package/dist/components/classification-banner/styles.module.css +1 -1
- package/dist/components/classification-banner/types.d.ts +18 -4
- package/dist/components/classification-banner/types.js +12 -2
- package/dist/components/clock/index.d.ts +23 -5
- package/dist/components/clock/index.js +65 -1
- package/dist/components/clock/index.js.map +1 -1
- package/dist/components/clock/types.d.ts +18 -4
- package/dist/components/clock/types.js +12 -2
- package/dist/components/color-picker/index.d.ts +24 -6
- package/dist/components/color-picker/index.js +74 -1
- package/dist/components/color-picker/index.js.map +1 -1
- package/dist/components/color-picker/styles.module.css +1 -1
- package/dist/components/color-picker/types.d.ts +24 -10
- package/dist/components/color-picker/types.js +12 -2
- package/dist/components/combobox-field/context.d.ts +26 -10
- package/dist/components/combobox-field/context.js +28 -1
- package/dist/components/combobox-field/context.js.map +1 -1
- package/dist/components/combobox-field/index.d.ts +23 -10
- package/dist/components/combobox-field/index.js +91 -1
- package/dist/components/combobox-field/index.js.map +1 -1
- package/dist/components/combobox-field/styles.module.css +1 -1
- package/dist/components/combobox-field/types.d.ts +34 -22
- package/dist/components/combobox-field/types.js +12 -2
- package/dist/components/coordinate-field/context.d.ts +34 -13
- package/dist/components/coordinate-field/context.js +102 -1
- package/dist/components/coordinate-field/context.js.map +1 -1
- package/dist/components/coordinate-field/coordinate-utils.d.ts +28 -16
- package/dist/components/coordinate-field/coordinate-utils.js +792 -1
- package/dist/components/coordinate-field/coordinate-utils.js.map +1 -1
- package/dist/components/coordinate-field/index.d.ts +23 -6
- package/dist/components/coordinate-field/index.js +315 -1
- package/dist/components/coordinate-field/index.js.map +1 -1
- package/dist/components/coordinate-field/segment-configs.d.ts +19 -26
- package/dist/components/coordinate-field/segment-configs.js +476 -1
- package/dist/components/coordinate-field/segment-configs.js.map +1 -1
- package/dist/components/coordinate-field/segment.d.ts +38 -6
- package/dist/components/coordinate-field/segment.js +142 -1
- package/dist/components/coordinate-field/segment.js.map +1 -1
- package/dist/components/coordinate-field/styles.module.css +25 -3
- package/dist/components/coordinate-field/types.d.ts +159 -138
- package/dist/components/coordinate-field/types.js +48 -1
- package/dist/components/coordinate-field/types.js.map +1 -1
- package/dist/components/coordinate-field/width-utils.d.ts +20 -7
- package/dist/components/coordinate-field/width-utils.js +53 -1
- package/dist/components/coordinate-field/width-utils.js.map +1 -1
- package/dist/components/date-field/index.d.ts +34 -6
- package/dist/components/date-field/index.js +133 -1
- package/dist/components/date-field/index.js.map +1 -1
- package/dist/components/date-field/styles.module.css +1 -1
- package/dist/components/date-field/types.d.ts +34 -20
- package/dist/components/date-field/types.js +12 -2
- package/dist/components/details-list/context.d.ts +25 -7
- package/dist/components/details-list/context.js +28 -1
- package/dist/components/details-list/context.js.map +1 -1
- package/dist/components/details-list/index.d.ts +23 -6
- package/dist/components/details-list/index.js +69 -1
- package/dist/components/details-list/index.js.map +1 -1
- package/dist/components/details-list/label.d.ts +18 -5
- package/dist/components/details-list/label.js +28 -1
- package/dist/components/details-list/label.js.map +1 -1
- package/dist/components/details-list/styles.module.css +1 -1
- package/dist/components/details-list/types.d.ts +24 -10
- package/dist/components/details-list/types.js +12 -2
- package/dist/components/details-list/value.d.ts +18 -5
- package/dist/components/details-list/value.js +28 -1
- package/dist/components/details-list/value.js.map +1 -1
- package/dist/components/dialog/content.d.ts +21 -3
- package/dist/components/dialog/content.js +28 -1
- package/dist/components/dialog/content.js.map +1 -1
- package/dist/components/dialog/context.d.ts +19 -4
- package/dist/components/dialog/context.js +21 -1
- package/dist/components/dialog/context.js.map +1 -1
- package/dist/components/dialog/footer.d.ts +21 -3
- package/dist/components/dialog/footer.js +42 -1
- package/dist/components/dialog/footer.js.map +1 -1
- package/dist/components/dialog/index.d.ts +23 -6
- package/dist/components/dialog/index.js +72 -1
- package/dist/components/dialog/index.js.map +1 -1
- package/dist/components/dialog/styles.module.css +1 -1
- package/dist/components/dialog/title.d.ts +21 -3
- package/dist/components/dialog/title.js +30 -1
- package/dist/components/dialog/title.js.map +1 -1
- package/dist/components/dialog/trigger.d.ts +17 -2
- package/dist/components/dialog/trigger.js +23 -1
- package/dist/components/dialog/trigger.js.map +1 -1
- package/dist/components/dialog/types.d.ts +25 -11
- package/dist/components/dialog/types.js +12 -2
- package/dist/components/divider/context.d.ts +25 -7
- package/dist/components/divider/context.js +28 -1
- package/dist/components/divider/context.js.map +1 -1
- package/dist/components/divider/index.d.ts +22 -5
- package/dist/components/divider/index.js +59 -1
- package/dist/components/divider/index.js.map +1 -1
- package/dist/components/divider/styles.module.css +1 -1
- package/dist/components/divider/types.d.ts +22 -8
- package/dist/components/divider/types.js +12 -2
- package/dist/components/drawer/back.d.ts +17 -2
- package/dist/components/drawer/back.js +36 -1
- package/dist/components/drawer/back.js.map +1 -1
- package/dist/components/drawer/close.d.ts +17 -2
- package/dist/components/drawer/close.js +33 -1
- package/dist/components/drawer/close.js.map +1 -1
- package/dist/components/drawer/content.d.ts +20 -3
- package/dist/components/drawer/content.js +27 -1
- package/dist/components/drawer/content.js.map +1 -1
- package/dist/components/drawer/context.d.ts +35 -27
- package/dist/components/drawer/context.js +47 -1
- package/dist/components/drawer/context.js.map +1 -1
- package/dist/components/drawer/events.d.ts +6 -4
- package/dist/components/drawer/events.js +23 -1
- package/dist/components/drawer/events.js.map +1 -1
- package/dist/components/drawer/footer.d.ts +20 -3
- package/dist/components/drawer/footer.js +27 -1
- package/dist/components/drawer/footer.js.map +1 -1
- package/dist/components/drawer/header-title.d.ts +22 -14
- package/dist/components/drawer/header-title.js +34 -1
- package/dist/components/drawer/header-title.js.map +1 -1
- package/dist/components/drawer/header.d.ts +23 -3
- package/dist/components/drawer/header.js +44 -1
- package/dist/components/drawer/header.js.map +1 -1
- package/dist/components/drawer/index.d.ts +29 -14
- package/dist/components/drawer/index.js +105 -1
- package/dist/components/drawer/index.js.map +1 -1
- package/dist/components/drawer/layout-main.d.ts +20 -3
- package/dist/components/drawer/layout-main.js +27 -1
- package/dist/components/drawer/layout-main.js.map +1 -1
- package/dist/components/drawer/layout.d.ts +22 -13
- package/dist/components/drawer/layout.js +29 -1
- package/dist/components/drawer/layout.js.map +1 -1
- package/dist/components/drawer/menu-item.d.ts +25 -13
- package/dist/components/drawer/menu-item.js +64 -1
- package/dist/components/drawer/menu-item.js.map +1 -1
- package/dist/components/drawer/menu.d.ts +22 -13
- package/dist/components/drawer/menu.js +28 -1
- package/dist/components/drawer/menu.js.map +1 -1
- package/dist/components/drawer/panel.d.ts +20 -3
- package/dist/components/drawer/panel.js +27 -1
- package/dist/components/drawer/panel.js.map +1 -1
- package/dist/components/drawer/styles.module.css +1 -1
- package/dist/components/drawer/trigger.d.ts +21 -13
- package/dist/components/drawer/trigger.js +41 -1
- package/dist/components/drawer/trigger.js.map +1 -1
- package/dist/components/drawer/types.d.ts +178 -165
- package/dist/components/drawer/types.js +12 -2
- package/dist/components/drawer/view.d.ts +24 -8
- package/dist/components/drawer/view.js +45 -1
- package/dist/components/drawer/view.js.map +1 -1
- package/dist/components/flashcard/index.d.ts +32 -19
- package/dist/components/flashcard/index.js +140 -1
- package/dist/components/flashcard/index.js.map +1 -1
- package/dist/components/flashcard/styles.module.css +1 -1
- package/dist/components/flashcard/types.d.ts +21 -8
- package/dist/components/flashcard/types.js +12 -2
- package/dist/components/hero/context.d.ts +19 -4
- package/dist/components/hero/context.js +21 -1
- package/dist/components/hero/context.js.map +1 -1
- package/dist/components/hero/index.d.ts +23 -5
- package/dist/components/hero/index.js +79 -1
- package/dist/components/hero/index.js.map +1 -1
- package/dist/components/hero/styles.module.css +1 -1
- package/dist/components/hero/subtitle.d.ts +18 -3
- package/dist/components/hero/subtitle.js +21 -1
- package/dist/components/hero/subtitle.js.map +1 -1
- package/dist/components/hero/title.d.ts +18 -3
- package/dist/components/hero/title.js +21 -1
- package/dist/components/hero/title.js.map +1 -1
- package/dist/components/hero/types.d.ts +24 -10
- package/dist/components/hero/types.js +12 -2
- package/dist/components/hotkey/context.d.ts +25 -7
- package/dist/components/hotkey/context.js +28 -1
- package/dist/components/hotkey/context.js.map +1 -1
- package/dist/components/hotkey/index.d.ts +24 -5
- package/dist/components/hotkey/index.js +65 -1
- package/dist/components/hotkey/index.js.map +1 -1
- package/dist/components/hotkey/set.d.ts +21 -3
- package/dist/components/hotkey/set.js +32 -1
- package/dist/components/hotkey/set.js.map +1 -1
- package/dist/components/hotkey/styles.module.css +1 -1
- package/dist/components/hotkey/types.d.ts +18 -4
- package/dist/components/hotkey/types.js +12 -2
- package/dist/components/icon/context.d.ts +25 -7
- package/dist/components/icon/context.js +28 -1
- package/dist/components/icon/context.js.map +1 -1
- package/dist/components/icon/index.d.ts +23 -5
- package/dist/components/icon/index.js +64 -1
- package/dist/components/icon/index.js.map +1 -1
- package/dist/components/icon/styles.module.css +1 -1
- package/dist/components/icon/types.d.ts +18 -4
- package/dist/components/icon/types.js +12 -2
- package/dist/components/input/context.d.ts +19 -6
- package/dist/components/input/context.js +21 -1
- package/dist/components/input/context.js.map +1 -1
- package/dist/components/input/index.d.ts +23 -8
- package/dist/components/input/index.js +126 -1
- package/dist/components/input/index.js.map +1 -1
- package/dist/components/input/styles.module.css +1 -1
- package/dist/components/input/types.d.ts +33 -20
- package/dist/components/input/types.js +12 -2
- package/dist/components/kanban/card-body.d.ts +22 -9
- package/dist/components/kanban/card-body.js +29 -1
- package/dist/components/kanban/card-body.js.map +1 -1
- package/dist/components/kanban/card-header-actions.d.ts +22 -9
- package/dist/components/kanban/card-header-actions.js +29 -1
- package/dist/components/kanban/card-header-actions.js.map +1 -1
- package/dist/components/kanban/card-header-title.d.ts +22 -9
- package/dist/components/kanban/card-header-title.js +29 -1
- package/dist/components/kanban/card-header-title.js.map +1 -1
- package/dist/components/kanban/card-header.d.ts +22 -9
- package/dist/components/kanban/card-header.js +30 -1
- package/dist/components/kanban/card-header.js.map +1 -1
- package/dist/components/kanban/card.d.ts +24 -9
- package/dist/components/kanban/card.js +48 -1
- package/dist/components/kanban/card.js.map +1 -1
- package/dist/components/kanban/column-actions.d.ts +22 -9
- package/dist/components/kanban/column-actions.js +37 -1
- package/dist/components/kanban/column-actions.js.map +1 -1
- package/dist/components/kanban/column-container.d.ts +22 -9
- package/dist/components/kanban/column-container.js +29 -1
- package/dist/components/kanban/column-container.js.map +1 -1
- package/dist/components/kanban/column-content.d.ts +23 -9
- package/dist/components/kanban/column-content.js +34 -1
- package/dist/components/kanban/column-content.js.map +1 -1
- package/dist/components/kanban/column-header-actions.d.ts +23 -9
- package/dist/components/kanban/column-header-actions.js +30 -1
- package/dist/components/kanban/column-header-actions.js.map +1 -1
- package/dist/components/kanban/column-header-drag-handle.d.ts +17 -2
- package/dist/components/kanban/column-header-drag-handle.js +29 -1
- package/dist/components/kanban/column-header-drag-handle.js.map +1 -1
- package/dist/components/kanban/column-header-title.d.ts +22 -9
- package/dist/components/kanban/column-header-title.js +29 -1
- package/dist/components/kanban/column-header-title.js.map +1 -1
- package/dist/components/kanban/column-header.d.ts +22 -9
- package/dist/components/kanban/column-header.js +29 -1
- package/dist/components/kanban/column-header.js.map +1 -1
- package/dist/components/kanban/column.d.ts +23 -9
- package/dist/components/kanban/column.js +34 -1
- package/dist/components/kanban/column.js.map +1 -1
- package/dist/components/kanban/context.d.ts +77 -58
- package/dist/components/kanban/context.js +201 -1
- package/dist/components/kanban/context.js.map +1 -1
- package/dist/components/kanban/header-actions.d.ts +22 -9
- package/dist/components/kanban/header-actions.js +29 -1
- package/dist/components/kanban/header-actions.js.map +1 -1
- package/dist/components/kanban/header-search.d.ts +21 -9
- package/dist/components/kanban/header-search.js +29 -1
- package/dist/components/kanban/header-search.js.map +1 -1
- package/dist/components/kanban/header-title.d.ts +22 -9
- package/dist/components/kanban/header-title.js +30 -1
- package/dist/components/kanban/header-title.js.map +1 -1
- package/dist/components/kanban/header.d.ts +22 -9
- package/dist/components/kanban/header.js +29 -1
- package/dist/components/kanban/header.js.map +1 -1
- package/dist/components/kanban/index.d.ts +15 -9
- package/dist/components/kanban/index.js +16 -2
- package/dist/components/kanban/kanban.d.ts +27 -13
- package/dist/components/kanban/kanban.js +81 -1
- package/dist/components/kanban/kanban.js.map +1 -1
- package/dist/components/kanban/mock-data.d.ts +11 -9
- package/dist/components/kanban/mock-data.js +89 -1
- package/dist/components/kanban/mock-data.js.map +1 -1
- package/dist/components/kanban/styles.module.css +1 -1
- package/dist/components/kanban/types.d.ts +39 -29
- package/dist/components/kanban/types.js +12 -2
- package/dist/components/label/context.d.ts +25 -7
- package/dist/components/label/context.js +28 -1
- package/dist/components/label/context.js.map +1 -1
- package/dist/components/label/index.d.ts +23 -6
- package/dist/components/label/index.js +54 -1
- package/dist/components/label/index.js.map +1 -1
- package/dist/components/label/styles.module.css +1 -1
- package/dist/components/label/types.d.ts +20 -6
- package/dist/components/label/types.js +12 -2
- package/dist/components/lines/index.d.ts +23 -5
- package/dist/components/lines/index.js +37 -1
- package/dist/components/lines/index.js.map +1 -1
- package/dist/components/lines/styles.module.css +1 -1
- package/dist/components/lines/types.d.ts +20 -6
- package/dist/components/lines/types.js +12 -2
- package/dist/components/link/context.d.ts +22 -6
- package/dist/components/link/context.js +27 -1
- package/dist/components/link/context.js.map +1 -1
- package/dist/components/link/index.d.ts +22 -6
- package/dist/components/link/index.js +42 -1
- package/dist/components/link/index.js.map +1 -1
- package/dist/components/link/styles.module.css +1 -1
- package/dist/components/link/types.d.ts +20 -6
- package/dist/components/link/types.js +12 -2
- package/dist/components/menu/context.d.ts +19 -5
- package/dist/components/menu/context.js +21 -1
- package/dist/components/menu/context.js.map +1 -1
- package/dist/components/menu/index.d.ts +47 -7
- package/dist/components/menu/index.js +128 -1
- package/dist/components/menu/index.js.map +1 -1
- package/dist/components/menu/item-description.d.ts +22 -3
- package/dist/components/menu/item-description.js +31 -1
- package/dist/components/menu/item-description.js.map +1 -1
- package/dist/components/menu/item-label.d.ts +22 -3
- package/dist/components/menu/item-label.js +31 -1
- package/dist/components/menu/item-label.js.map +1 -1
- package/dist/components/menu/item.d.ts +23 -6
- package/dist/components/menu/item.js +52 -1
- package/dist/components/menu/item.js.map +1 -1
- package/dist/components/menu/section.d.ts +24 -6
- package/dist/components/menu/section.js +36 -1
- package/dist/components/menu/section.js.map +1 -1
- package/dist/components/menu/separator.d.ts +21 -3
- package/dist/components/menu/separator.js +29 -1
- package/dist/components/menu/separator.js.map +1 -1
- package/dist/components/menu/styles.module.css +1 -1
- package/dist/components/menu/submenu.d.ts +18 -3
- package/dist/components/menu/submenu.js +21 -1
- package/dist/components/menu/submenu.js.map +1 -1
- package/dist/components/menu/trigger.d.ts +17 -2
- package/dist/components/menu/trigger.js +21 -1
- package/dist/components/menu/trigger.js.map +1 -1
- package/dist/components/menu/types.d.ts +38 -24
- package/dist/components/menu/types.js +12 -2
- package/dist/components/notice/events.d.ts +8 -6
- package/dist/components/notice/events.js +25 -1
- package/dist/components/notice/events.js.map +1 -1
- package/dist/components/notice/index.d.ts +32 -10
- package/dist/components/notice/index.js +88 -1
- package/dist/components/notice/index.js.map +1 -1
- package/dist/components/notice/list.d.ts +29 -10
- package/dist/components/notice/list.js +102 -1
- package/dist/components/notice/list.js.map +1 -1
- package/dist/components/notice/notice-icon.d.ts +21 -10
- package/dist/components/notice/notice-icon.js +34 -1
- package/dist/components/notice/notice-icon.js.map +1 -1
- package/dist/components/notice/styles.module.css +1 -1
- package/dist/components/notice/types.d.ts +67 -55
- package/dist/components/notice/types.js +12 -2
- package/dist/components/notice/utils.d.ts +17 -1
- package/dist/components/notice/utils.js +24 -1
- package/dist/components/notice/utils.js.map +1 -1
- package/dist/components/options/context.d.ts +19 -5
- package/dist/components/options/context.js +21 -1
- package/dist/components/options/context.js.map +1 -1
- package/dist/components/options/index.d.ts +23 -7
- package/dist/components/options/index.js +76 -1
- package/dist/components/options/index.js.map +1 -1
- package/dist/components/options/item-content.d.ts +20 -3
- package/dist/components/options/item-content.js +27 -1
- package/dist/components/options/item-content.js.map +1 -1
- package/dist/components/options/item-description.d.ts +20 -3
- package/dist/components/options/item-description.js +29 -1
- package/dist/components/options/item-description.js.map +1 -1
- package/dist/components/options/item-label.d.ts +20 -3
- package/dist/components/options/item-label.js +29 -1
- package/dist/components/options/item-label.js.map +1 -1
- package/dist/components/options/item.d.ts +24 -6
- package/dist/components/options/item.js +38 -1
- package/dist/components/options/item.js.map +1 -1
- package/dist/components/options/section.d.ts +22 -6
- package/dist/components/options/section.js +35 -1
- package/dist/components/options/section.js.map +1 -1
- package/dist/components/options/styles.module.css +1 -1
- package/dist/components/options/types.d.ts +32 -18
- package/dist/components/options/types.js +12 -2
- package/dist/components/pagination/context.d.ts +18 -6
- package/dist/components/pagination/context.js +26 -1
- package/dist/components/pagination/context.js.map +1 -1
- package/dist/components/pagination/index.d.ts +28 -8
- package/dist/components/pagination/index.js +63 -1
- package/dist/components/pagination/index.js.map +1 -1
- package/dist/components/pagination/next.d.ts +21 -7
- package/dist/components/pagination/next.js +44 -1
- package/dist/components/pagination/next.js.map +1 -1
- package/dist/components/pagination/pages.d.ts +21 -7
- package/dist/components/pagination/pages.js +45 -1
- package/dist/components/pagination/pages.js.map +1 -1
- package/dist/components/pagination/prev.d.ts +21 -7
- package/dist/components/pagination/prev.js +44 -1
- package/dist/components/pagination/prev.js.map +1 -1
- package/dist/components/pagination/styles.module.css +1 -1
- package/dist/components/pagination/types.d.ts +36 -24
- package/dist/components/pagination/types.js +12 -2
- package/dist/components/pagination/utils.d.ts +5 -3
- package/dist/components/pagination/utils.js +59 -1
- package/dist/components/pagination/utils.js.map +1 -1
- package/dist/components/popover/content.d.ts +21 -3
- package/dist/components/popover/content.js +28 -1
- package/dist/components/popover/content.js.map +1 -1
- package/dist/components/popover/footer.d.ts +21 -3
- package/dist/components/popover/footer.js +28 -1
- package/dist/components/popover/footer.js.map +1 -1
- package/dist/components/popover/index.d.ts +24 -6
- package/dist/components/popover/index.js +64 -1
- package/dist/components/popover/index.js.map +1 -1
- package/dist/components/popover/styles.module.css +1 -1
- package/dist/components/popover/title.d.ts +21 -3
- package/dist/components/popover/title.js +30 -1
- package/dist/components/popover/title.js.map +1 -1
- package/dist/components/popover/trigger.d.ts +22 -5
- package/dist/components/popover/trigger.js +33 -1
- package/dist/components/popover/trigger.js.map +1 -1
- package/dist/components/popover/types.d.ts +23 -9
- package/dist/components/popover/types.js +12 -2
- package/dist/components/query-builder/action-element.d.ts +23 -3
- package/dist/components/query-builder/action-element.js +36 -1
- package/dist/components/query-builder/action-element.js.map +1 -1
- package/dist/components/query-builder/actions.d.ts +32 -5
- package/dist/components/query-builder/actions.js +53 -1
- package/dist/components/query-builder/actions.js.map +1 -1
- package/dist/components/query-builder/combinator-selector.d.ts +22 -3
- package/dist/components/query-builder/combinator-selector.js +47 -1
- package/dist/components/query-builder/combinator-selector.js.map +1 -1
- package/dist/components/query-builder/constants.d.ts +3 -1
- package/dist/components/query-builder/constants.js +24 -1
- package/dist/components/query-builder/constants.js.map +1 -1
- package/dist/components/query-builder/index.d.ts +26 -7
- package/dist/components/query-builder/index.js +119 -1
- package/dist/components/query-builder/index.js.map +1 -1
- package/dist/components/query-builder/rule-group.d.ts +20 -5
- package/dist/components/query-builder/rule-group.js +167 -1
- package/dist/components/query-builder/rule-group.js.map +1 -1
- package/dist/components/query-builder/rule.d.ts +18 -3
- package/dist/components/query-builder/rule.js +148 -1
- package/dist/components/query-builder/rule.js.map +1 -1
- package/dist/components/query-builder/styles.module.css +1 -1
- package/dist/components/query-builder/types.d.ts +21 -7
- package/dist/components/query-builder/types.js +12 -2
- package/dist/components/query-builder/utils.d.ts +16 -2
- package/dist/components/query-builder/utils.js +26 -1
- package/dist/components/query-builder/utils.js.map +1 -1
- package/dist/components/query-builder/value-editor.d.ts +18 -3
- package/dist/components/query-builder/value-editor.js +156 -1
- package/dist/components/query-builder/value-editor.js.map +1 -1
- package/dist/components/query-builder/value-selector.d.ts +18 -3
- package/dist/components/query-builder/value-selector.js +57 -1
- package/dist/components/query-builder/value-selector.js.map +1 -1
- package/dist/components/radio/context.d.ts +20 -6
- package/dist/components/radio/context.js +26 -1
- package/dist/components/radio/context.js.map +1 -1
- package/dist/components/radio/group.d.ts +22 -7
- package/dist/components/radio/group.js +46 -1
- package/dist/components/radio/group.js.map +1 -1
- package/dist/components/radio/index.d.ts +24 -7
- package/dist/components/radio/index.js +64 -1
- package/dist/components/radio/index.js.map +1 -1
- package/dist/components/radio/styles.module.css +1 -1
- package/dist/components/radio/types.d.ts +29 -15
- package/dist/components/radio/types.js +12 -2
- package/dist/components/search-field/context.d.ts +26 -10
- package/dist/components/search-field/context.js +38 -1
- package/dist/components/search-field/context.js.map +1 -1
- package/dist/components/search-field/index.d.ts +28 -12
- package/dist/components/search-field/index.js +88 -1
- package/dist/components/search-field/index.js.map +1 -1
- package/dist/components/search-field/styles.module.css +2 -3
- package/dist/components/search-field/types.d.ts +31 -18
- package/dist/components/search-field/types.js +12 -2
- package/dist/components/select-field/context.d.ts +25 -9
- package/dist/components/select-field/context.js +28 -1
- package/dist/components/select-field/context.js.map +1 -1
- package/dist/components/select-field/index.d.ts +23 -9
- package/dist/components/select-field/index.js +119 -1
- package/dist/components/select-field/index.js.map +1 -1
- package/dist/components/select-field/styles.module.css +1 -1
- package/dist/components/select-field/types.d.ts +32 -19
- package/dist/components/select-field/types.js +12 -2
- package/dist/components/sidenav/avatar.d.ts +23 -9
- package/dist/components/sidenav/avatar.js +48 -1
- package/dist/components/sidenav/avatar.js.map +1 -1
- package/dist/components/sidenav/content.d.ts +23 -9
- package/dist/components/sidenav/content.js +39 -1
- package/dist/components/sidenav/content.js.map +1 -1
- package/dist/components/sidenav/context.d.ts +18 -7
- package/dist/components/sidenav/context.js +25 -1
- package/dist/components/sidenav/context.js.map +1 -1
- package/dist/components/sidenav/events.d.ts +6 -4
- package/dist/components/sidenav/events.js +23 -1
- package/dist/components/sidenav/events.js.map +1 -1
- package/dist/components/sidenav/footer.d.ts +18 -9
- package/dist/components/sidenav/footer.js +27 -1
- package/dist/components/sidenav/footer.js.map +1 -1
- package/dist/components/sidenav/header.d.ts +23 -9
- package/dist/components/sidenav/header.js +50 -1
- package/dist/components/sidenav/header.js.map +1 -1
- package/dist/components/sidenav/index.d.ts +26 -9
- package/dist/components/sidenav/index.js +112 -1
- package/dist/components/sidenav/index.js.map +1 -1
- package/dist/components/sidenav/item.d.ts +24 -9
- package/dist/components/sidenav/item.js +54 -1
- package/dist/components/sidenav/item.js.map +1 -1
- package/dist/components/sidenav/link.d.ts +24 -9
- package/dist/components/sidenav/link.js +58 -1
- package/dist/components/sidenav/link.js.map +1 -1
- package/dist/components/sidenav/menu-item.d.ts +22 -9
- package/dist/components/sidenav/menu-item.js +34 -1
- package/dist/components/sidenav/menu-item.js.map +1 -1
- package/dist/components/sidenav/menu.d.ts +25 -9
- package/dist/components/sidenav/menu.js +87 -1
- package/dist/components/sidenav/menu.js.map +1 -1
- package/dist/components/sidenav/styles.module.css +9 -1
- package/dist/components/sidenav/trigger.d.ts +23 -9
- package/dist/components/sidenav/trigger.js +38 -1
- package/dist/components/sidenav/trigger.js.map +1 -1
- package/dist/components/sidenav/types.d.ts +55 -41
- package/dist/components/sidenav/types.js +12 -2
- package/dist/components/skeleton/index.d.ts +23 -5
- package/dist/components/skeleton/index.js +57 -1
- package/dist/components/skeleton/index.js.map +1 -1
- package/dist/components/skeleton/styles.module.css +1 -1
- package/dist/components/skeleton/types.d.ts +18 -4
- package/dist/components/skeleton/types.js +12 -2
- package/dist/components/slider/index.d.ts +63 -5
- package/dist/components/slider/index.js +269 -1
- package/dist/components/slider/index.js.map +1 -1
- package/dist/components/slider/styles.module.css +67 -9
- package/dist/components/slider/types.d.ts +65 -19
- package/dist/components/slider/types.js +12 -2
- package/dist/components/switch/context.d.ts +26 -8
- package/dist/components/switch/context.js +38 -1
- package/dist/components/switch/context.js.map +1 -1
- package/dist/components/switch/index.d.ts +23 -6
- package/dist/components/switch/index.js +73 -1
- package/dist/components/switch/index.js.map +1 -1
- package/dist/components/switch/styles.module.css +1 -1
- package/dist/components/switch/types.d.ts +24 -10
- package/dist/components/switch/types.js +12 -2
- package/dist/components/table/body.d.ts +23 -6
- package/dist/components/table/body.js +29 -1
- package/dist/components/table/body.js.map +1 -1
- package/dist/components/table/cell.d.ts +23 -6
- package/dist/components/table/cell.js +39 -1
- package/dist/components/table/cell.js.map +1 -1
- package/dist/components/table/constants/table.d.ts +22 -8
- package/dist/components/table/constants/table.js +30 -1
- package/dist/components/table/constants/table.js.map +1 -1
- package/dist/components/table/context.d.ts +17 -5
- package/dist/components/table/context.js +34 -1
- package/dist/components/table/context.js.map +1 -1
- package/dist/components/table/header-cell.d.ts +23 -6
- package/dist/components/table/header-cell.js +113 -1
- package/dist/components/table/header-cell.js.map +1 -1
- package/dist/components/table/header.d.ts +24 -6
- package/dist/components/table/header.js +28 -1
- package/dist/components/table/header.js.map +1 -1
- package/dist/components/table/index.d.ts +40 -8
- package/dist/components/table/index.js +250 -1
- package/dist/components/table/index.js.map +1 -1
- package/dist/components/table/row.d.ts +23 -6
- package/dist/components/table/row.js +33 -1
- package/dist/components/table/row.js.map +1 -1
- package/dist/components/table/styles.module.css +1 -1
- package/dist/components/table/types.d.ts +152 -142
- package/dist/components/table/types.js +12 -2
- package/dist/components/tabs/context.d.ts +26 -8
- package/dist/components/tabs/context.js +38 -1
- package/dist/components/tabs/context.js.map +1 -1
- package/dist/components/tabs/index.d.ts +23 -6
- package/dist/components/tabs/index.js +80 -1
- package/dist/components/tabs/index.js.map +1 -1
- package/dist/components/tabs/list.d.ts +23 -4
- package/dist/components/tabs/list.js +35 -1
- package/dist/components/tabs/list.js.map +1 -1
- package/dist/components/tabs/panel.d.ts +23 -4
- package/dist/components/tabs/panel.js +35 -1
- package/dist/components/tabs/panel.js.map +1 -1
- package/dist/components/tabs/styles.module.css +1 -1
- package/dist/components/tabs/tab.d.ts +23 -4
- package/dist/components/tabs/tab.js +35 -1
- package/dist/components/tabs/tab.js.map +1 -1
- package/dist/components/tabs/types.d.ts +18 -4
- package/dist/components/tabs/types.js +12 -2
- package/dist/components/text-area-field/context.d.ts +26 -8
- package/dist/components/text-area-field/context.js +38 -1
- package/dist/components/text-area-field/context.js.map +1 -1
- package/dist/components/text-area-field/index.d.ts +23 -6
- package/dist/components/text-area-field/index.js +80 -1
- package/dist/components/text-area-field/index.js.map +1 -1
- package/dist/components/text-area-field/styles.module.css +1 -1
- package/dist/components/text-area-field/types.d.ts +28 -14
- package/dist/components/text-area-field/types.js +12 -2
- package/dist/components/text-field/context.d.ts +25 -10
- package/dist/components/text-field/context.js +28 -1
- package/dist/components/text-field/context.js.map +1 -1
- package/dist/components/text-field/index.d.ts +23 -10
- package/dist/components/text-field/index.js +154 -1
- package/dist/components/text-field/index.js.map +1 -1
- package/dist/components/text-field/styles.module.css +1 -1
- package/dist/components/text-field/types.d.ts +31 -19
- package/dist/components/text-field/types.js +12 -2
- package/dist/components/time-field/index.d.ts +34 -5
- package/dist/components/time-field/index.js +83 -1
- package/dist/components/time-field/index.js.map +1 -1
- package/dist/components/time-field/styles.module.css +1 -1
- package/dist/components/time-field/types.d.ts +30 -16
- package/dist/components/time-field/types.js +12 -2
- package/dist/components/tooltip/context.d.ts +19 -4
- package/dist/components/tooltip/context.js +21 -1
- package/dist/components/tooltip/context.js.map +1 -1
- package/dist/components/tooltip/index.d.ts +27 -6
- package/dist/components/tooltip/index.js +81 -1
- package/dist/components/tooltip/index.js.map +1 -1
- package/dist/components/tooltip/styles.module.css +1 -1
- package/dist/components/tooltip/trigger.d.ts +21 -5
- package/dist/components/tooltip/trigger.js +47 -1
- package/dist/components/tooltip/trigger.js.map +1 -1
- package/dist/components/tooltip/types.d.ts +19 -5
- package/dist/components/tooltip/types.js +12 -2
- package/dist/components/tree/context.d.ts +20 -8
- package/dist/components/tree/context.js +39 -1
- package/dist/components/tree/context.js.map +1 -1
- package/dist/components/tree/index.d.ts +36 -8
- package/dist/components/tree/index.js +125 -1
- package/dist/components/tree/index.js.map +1 -1
- package/dist/components/tree/item-actions.d.ts +23 -6
- package/dist/components/tree/item-actions.js +35 -1
- package/dist/components/tree/item-actions.js.map +1 -1
- package/dist/components/tree/item-content.d.ts +20 -8
- package/dist/components/tree/item-content.js +102 -1
- package/dist/components/tree/item-content.js.map +1 -1
- package/dist/components/tree/item-description.d.ts +21 -4
- package/dist/components/tree/item-description.js +37 -1
- package/dist/components/tree/item-description.js.map +1 -1
- package/dist/components/tree/item-label.d.ts +21 -4
- package/dist/components/tree/item-label.js +33 -1
- package/dist/components/tree/item-label.js.map +1 -1
- package/dist/components/tree/item-prefix-icon.d.ts +21 -5
- package/dist/components/tree/item-prefix-icon.js +33 -1
- package/dist/components/tree/item-prefix-icon.js.map +1 -1
- package/dist/components/tree/item.d.ts +23 -8
- package/dist/components/tree/item.js +50 -1
- package/dist/components/tree/item.js.map +1 -1
- package/dist/components/tree/lines.d.ts +19 -5
- package/dist/components/tree/lines.js +36 -1
- package/dist/components/tree/lines.js.map +1 -1
- package/dist/components/tree/styles.module.css +5 -1
- package/dist/components/tree/types.d.ts +42 -29
- package/dist/components/tree/types.js +12 -2
- package/dist/components/view-stack/context.d.ts +28 -16
- package/dist/components/view-stack/context.js +58 -1
- package/dist/components/view-stack/context.js.map +1 -1
- package/dist/components/view-stack/events.d.ts +7 -5
- package/dist/components/view-stack/events.js +24 -1
- package/dist/components/view-stack/events.js.map +1 -1
- package/dist/components/view-stack/index.d.ts +25 -9
- package/dist/components/view-stack/index.js +114 -1
- package/dist/components/view-stack/index.js.map +1 -1
- package/dist/components/view-stack/trigger.d.ts +22 -9
- package/dist/components/view-stack/trigger.js +45 -1
- package/dist/components/view-stack/trigger.js.map +1 -1
- package/dist/components/view-stack/types.d.ts +55 -41
- package/dist/components/view-stack/types.js +12 -2
- package/dist/components/view-stack/view.d.ts +22 -9
- package/dist/components/view-stack/view.js +42 -1
- package/dist/components/view-stack/view.js.map +1 -1
- package/dist/hooks/coordinate-field/index.d.ts +19 -9
- package/dist/hooks/coordinate-field/index.js +21 -2
- package/dist/hooks/coordinate-field/use-coordinate-copy.d.ts +31 -14
- package/dist/hooks/coordinate-field/use-coordinate-copy.js +87 -1
- package/dist/hooks/coordinate-field/use-coordinate-copy.js.map +1 -1
- package/dist/hooks/coordinate-field/use-coordinate-field-state.d.ts +43 -23
- package/dist/hooks/coordinate-field/use-coordinate-field-state.js +146 -1
- package/dist/hooks/coordinate-field/use-coordinate-field-state.js.map +1 -1
- package/dist/hooks/coordinate-field/use-coordinate-field.d.ts +57 -45
- package/dist/hooks/coordinate-field/use-coordinate-field.js +106 -1
- package/dist/hooks/coordinate-field/use-coordinate-field.js.map +1 -1
- package/dist/hooks/coordinate-field/use-coordinate-focus.d.ts +31 -16
- package/dist/hooks/coordinate-field/use-coordinate-focus.js +65 -1
- package/dist/hooks/coordinate-field/use-coordinate-focus.js.map +1 -1
- package/dist/hooks/coordinate-field/use-coordinate-paste.d.ts +31 -16
- package/dist/hooks/coordinate-field/use-coordinate-paste.js +80 -1
- package/dist/hooks/coordinate-field/use-coordinate-paste.js.map +1 -1
- package/dist/hooks/coordinate-field/use-timeout-cleanup.d.ts +5 -3
- package/dist/hooks/coordinate-field/use-timeout-cleanup.js +32 -1
- package/dist/hooks/coordinate-field/use-timeout-cleanup.js.map +1 -1
- package/dist/hooks/kanban/index.d.ts +31 -22
- package/dist/hooks/kanban/index.js +120 -1
- package/dist/hooks/kanban/index.js.map +1 -1
- package/dist/hooks/use-tree/actions/cache.d.ts +79 -63
- package/dist/hooks/use-tree/actions/cache.js +254 -1
- package/dist/hooks/use-tree/actions/cache.js.map +1 -1
- package/dist/hooks/use-tree/actions/index.d.ts +21 -6
- package/dist/hooks/use-tree/actions/index.js +179 -1
- package/dist/hooks/use-tree/actions/index.js.map +1 -1
- package/dist/hooks/use-tree/state/index.d.ts +19 -5
- package/dist/hooks/use-tree/state/index.js +107 -1
- package/dist/hooks/use-tree/state/index.js.map +1 -1
- package/dist/hooks/use-tree/state/utils.d.ts +16 -2
- 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 +160 -146
- package/dist/hooks/use-tree/types.js +12 -2
- package/dist/index.d.ts +267 -270
- package/dist/index.js +219 -2
- package/dist/lib/types.d.ts +28 -14
- package/dist/lib/types.js +12 -2
- package/dist/lib/utils.d.ts +19 -5
- package/dist/lib/utils.js +23 -1
- package/dist/lib/utils.js.map +1 -1
- package/dist/providers/portal.d.ts +24 -6
- package/dist/providers/portal.js +46 -1
- package/dist/providers/portal.js.map +1 -1
- package/dist/providers/theme-provider.d.ts +34 -14
- package/dist/providers/theme-provider.js +62 -1
- package/dist/providers/theme-provider.js.map +1 -1
- package/package.json +376 -136
- package/dist/components/accordion/types.js.map +0 -1
- package/dist/components/action-bar/types.js.map +0 -1
- package/dist/components/avatar/types.js.map +0 -1
- package/dist/components/badge/types.js.map +0 -1
- package/dist/components/breadcrumbs/types.js.map +0 -1
- package/dist/components/button/types.js.map +0 -1
- package/dist/components/checkbox/types.js.map +0 -1
- package/dist/components/chip/types.js.map +0 -1
- package/dist/components/classification-badge/types.js.map +0 -1
- package/dist/components/classification-banner/types.js.map +0 -1
- package/dist/components/clock/types.js.map +0 -1
- package/dist/components/color-picker/types.js.map +0 -1
- package/dist/components/combobox-field/types.js.map +0 -1
- package/dist/components/date-field/types.js.map +0 -1
- package/dist/components/details-list/types.js.map +0 -1
- package/dist/components/dialog/types.js.map +0 -1
- package/dist/components/divider/types.js.map +0 -1
- package/dist/components/drawer/types.js.map +0 -1
- package/dist/components/flashcard/types.js.map +0 -1
- package/dist/components/hero/types.js.map +0 -1
- package/dist/components/hotkey/types.js.map +0 -1
- package/dist/components/icon/types.js.map +0 -1
- package/dist/components/input/types.js.map +0 -1
- package/dist/components/kanban/index.js.map +0 -1
- package/dist/components/kanban/types.js.map +0 -1
- package/dist/components/label/types.js.map +0 -1
- package/dist/components/lines/types.js.map +0 -1
- package/dist/components/link/types.js.map +0 -1
- package/dist/components/menu/types.js.map +0 -1
- package/dist/components/notice/types.js.map +0 -1
- package/dist/components/options/types.js.map +0 -1
- package/dist/components/pagination/types.js.map +0 -1
- package/dist/components/popover/types.js.map +0 -1
- package/dist/components/query-builder/types.js.map +0 -1
- package/dist/components/radio/types.js.map +0 -1
- package/dist/components/search-field/types.js.map +0 -1
- package/dist/components/select-field/types.js.map +0 -1
- package/dist/components/sidenav/types.js.map +0 -1
- package/dist/components/skeleton/types.js.map +0 -1
- package/dist/components/slider/types.js.map +0 -1
- package/dist/components/switch/types.js.map +0 -1
- package/dist/components/table/types.js.map +0 -1
- package/dist/components/tabs/types.js.map +0 -1
- package/dist/components/text-area-field/types.js.map +0 -1
- package/dist/components/text-field/types.js.map +0 -1
- package/dist/components/time-field/types.js.map +0 -1
- package/dist/components/tooltip/types.js.map +0 -1
- package/dist/components/tree/types.js.map +0 -1
- package/dist/components/view-stack/types.js.map +0 -1
- package/dist/foundation/token-data.d.ts +0 -17
- package/dist/foundation/token-data.js +0 -2
- package/dist/foundation/token-data.js.map +0 -1
- package/dist/hooks/coordinate-field/index.js.map +0 -1
- package/dist/hooks/use-tree/types.js.map +0 -1
- package/dist/icons/catalog.d.ts +0 -48
- package/dist/icons/catalog.js +0 -2
- package/dist/icons/catalog.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index.module.css +0 -19
- package/dist/lib/types.js.map +0 -1
- package/dist/metafile-esm.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/kanban/context.tsx"],"names":["calculateClosestEdge","over","active","translated","overRect","midpoint","parseDropTarget","event","overData","edge","updatePositions","column","c","index","getInsertIndex","targetPosition","closestEdge","validateMoveCard","cardId","targetColumnId","columns","cardMap","errors","adjustedPosition","sourceInfo","targetColumn","col","maxPosition","KanbanContext","createContext","KanbanProvider","children","updateColumnState","useMemo","map","card","moveCard","useCallback","validation","error","source","newColumns","isSameColumn","newSourceColumn","_","i","newTargetColumn","updatedColumns","getColumnById","id","jsx","useKanban","context","useContext"],"mappings":"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","file":"context.js","sourcesContent":["/*\n * Copyright 2025 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\nimport {\n createContext,\n type ReactNode,\n useCallback,\n useContext,\n useMemo,\n} from 'react';\nimport type { DragEndEvent } from '@dnd-kit/core';\nimport type { KanbanCardData, KanbanColumnData } from './types';\n\nexport type MoveCard = (\n cardId: string,\n targetColumnId: string,\n targetPosition: number,\n closestEdge?: 'top' | 'bottom',\n) => void;\nexport interface KanbanContextData {\n columns: KanbanColumnData[];\n updateColumnState: (columns: KanbanColumnData[]) => void;\n moveCard: MoveCard;\n getColumnById: (id: string) => KanbanColumnData | undefined;\n cardMap: Map<\n string,\n { column: KanbanColumnData; card: KanbanCardData; index: number }\n >;\n}\n\nexport interface KanbanProviderProps {\n columns: KanbanColumnData[];\n updateColumnState: (columns: KanbanColumnData[]) => void;\n children: ReactNode;\n}\n\n/**\n * Result of parsing a drop target from a drag event\n */\nexport interface DropTargetInfo {\n /** The ID of the column where the card should be dropped */\n columnId: string;\n /** The position/index within the column */\n position: number;\n /** The edge to drop relative to (undefined when dropping on empty column) */\n edge: 'top' | 'bottom' | undefined;\n}\n\n/**\n * Parameters for validating a card move operation\n */\nexport interface MoveCardValidationParams {\n cardId: string;\n targetColumnId: string;\n targetPosition: number;\n columns: KanbanColumnData[];\n cardMap: Map<\n string,\n { column: KanbanColumnData; card: KanbanCardData; index: number }\n >;\n}\n\n/**\n * Result of validating a card move operation\n * Uses discriminated union to ensure type safety based on success/failure\n */\nexport type MoveCardValidationResult =\n | {\n /** Validation succeeded */\n success: true;\n /** Adjusted target position (clamped to valid bounds) */\n adjustedPosition: number;\n /** Source card information */\n sourceInfo: {\n column: KanbanColumnData;\n card: KanbanCardData;\n index: number;\n };\n /** Target column */\n targetColumn: KanbanColumnData;\n /** Empty error array for success case */\n errors: [];\n }\n | {\n /** Validation failed */\n success: false;\n /** List of error messages describing validation failures */\n errors: string[];\n };\n\n/**\n * Calculates which edge of a drop target is closest to the dragged item\n * @param over - The drop target from dnd-kit\n * @param active - The active dragged item from dnd-kit\n * @returns 'top' if the dragged item's center is above the midpoint, 'bottom' otherwise\n */\nexport function calculateClosestEdge(\n over: DragEndEvent['over'],\n active: DragEndEvent['active'],\n): 'top' | 'bottom' {\n if (!over?.rect) {\n return 'bottom';\n }\n\n const translated = active?.rect?.current?.translated;\n if (!translated) {\n return 'bottom';\n }\n\n const overRect = over.rect;\n const midpoint = overRect.top + overRect.height / 2;\n const draggedItemCenter = translated.top + translated.height / 2;\n\n return draggedItemCenter < midpoint ? 'top' : 'bottom';\n}\n\n/**\n * Parses a drag event to determine where a card should be dropped\n * @param event - The drag end event from dnd-kit\n * @returns Normalized drop target information or null if invalid drop\n */\nexport function parseDropTarget(event: DragEndEvent): DropTargetInfo | null {\n const { active, over } = event;\n\n if (!over) {\n return null;\n }\n\n const overData = over.data.current;\n\n if (!overData) {\n return null;\n }\n\n // Dropping on a column (empty space or column container)\n if (Array.isArray(overData.cards)) {\n return {\n columnId: overData.id,\n position: overData.cards.length,\n edge: undefined,\n };\n }\n\n // Dropping on a card position\n const edge = calculateClosestEdge(over, active);\n return {\n columnId: overData.columnId,\n position: overData.position,\n edge,\n };\n}\n\nconst updatePositions = (column: KanbanColumnData) => {\n column.cards.forEach((c, index) => {\n c.position = index;\n });\n};\n\nexport const getInsertIndex = (\n targetPosition: number,\n closestEdge?: 'top' | 'bottom',\n) => {\n // If no edge is specified, use the target position as-is\n if (!closestEdge) {\n return targetPosition;\n }\n\n // If dropping on top edge, insert at the target position (before the card)\n // If dropping on bottom edge, insert after the target position (position + 1)\n return closestEdge === 'top' ? targetPosition : targetPosition + 1;\n};\n\n/**\n * Validates all parameters for a card move operation\n * @param params - Validation parameters\n * @returns Validation result with success flag, adjusted values, and errors\n */\nexport function validateMoveCard({\n cardId,\n targetColumnId,\n targetPosition,\n columns,\n cardMap,\n}: MoveCardValidationParams): MoveCardValidationResult {\n const errors: string[] = [];\n let adjustedPosition = targetPosition;\n\n // 1. Type validation\n if (typeof cardId !== 'string' || !cardId.trim()) {\n errors.push('[Kanban] moveCard: cardId must be a non-empty string');\n }\n\n if (typeof targetColumnId !== 'string' || !targetColumnId.trim()) {\n errors.push('[Kanban] moveCard: targetColumnId must be a non-empty string');\n }\n\n if (typeof targetPosition !== 'number' || !Number.isFinite(targetPosition)) {\n errors.push('[Kanban] moveCard: targetPosition must be a finite number');\n }\n\n // Early return if type validation fails\n if (errors.length > 0) {\n return { success: false, errors };\n }\n\n // 2. Card existence validation\n const sourceInfo = cardMap.get(cardId);\n if (!sourceInfo) {\n errors.push(`[Kanban] moveCard: Card \"${cardId}\" not found in any column`);\n return { success: false, errors };\n }\n\n // 3. Target column existence validation\n const targetColumn = columns.find((col) => col.id === targetColumnId);\n if (!targetColumn) {\n errors.push(\n `[Kanban] moveCard: Target column \"${targetColumnId}\" not found`,\n );\n return { success: false, errors };\n }\n\n // 4. Position bounds validation (with adjustment)\n if (adjustedPosition < 0) {\n console.warn(\n `[Kanban] moveCard: targetPosition (${adjustedPosition}) cannot be negative. Using 0 instead.`,\n );\n adjustedPosition = 0;\n }\n\n const maxPosition = targetColumn.cards.length;\n if (adjustedPosition > maxPosition) {\n console.warn(\n `[Kanban] moveCard: targetPosition (${adjustedPosition}) exceeds maximum (${maxPosition}). ` +\n `Using ${maxPosition} instead.`,\n );\n adjustedPosition = maxPosition;\n }\n\n // 5. canDrop validation\n if (targetColumn.canDrop === false) {\n errors.push(\n `[Kanban] moveCard: Column \"${targetColumnId}\" does not accept drops`,\n );\n return { success: false, errors };\n }\n\n // All validations passed\n return {\n success: true,\n adjustedPosition,\n sourceInfo,\n targetColumn,\n errors: [],\n };\n}\n\nconst KanbanContext = createContext<KanbanContextData>({\n columns: [],\n updateColumnState: () => null,\n moveCard: () => null,\n getColumnById: () => undefined,\n cardMap: new Map(),\n});\n\nexport const KanbanProvider = ({\n children,\n columns,\n updateColumnState,\n}: KanbanProviderProps) => {\n // Create a lookup map for O(1) card access\n const cardMap = useMemo(() => {\n const map = new Map<\n string,\n { column: KanbanColumnData; card: KanbanCardData; index: number }\n >();\n\n columns.forEach((column) => {\n column.cards.forEach((card, index) => {\n map.set(card.id, { column, card, index });\n });\n });\n\n return map;\n }, [columns]);\n\n const moveCard = useCallback(\n (\n cardId: string,\n targetColumnId: string,\n targetPosition: number,\n closestEdge?: 'top' | 'bottom',\n ) => {\n // Validate all inputs\n const validation = validateMoveCard({\n cardId,\n targetColumnId,\n targetPosition,\n columns,\n cardMap,\n });\n\n // Handle validation failure\n if (!validation.success) {\n validation.errors.forEach((error) => {\n console.error(error);\n });\n return false;\n }\n\n // Extract validated data - TypeScript knows these are defined after success check\n const { adjustedPosition, sourceInfo: source, targetColumn } = validation;\n\n const newColumns = [...columns];\n const isSameColumn = source.column.id === targetColumn.id;\n\n // Remove card from source column\n const newSourceColumn = {\n ...source.column,\n cards: source.column.cards.filter((_, i) => i !== source.index),\n };\n\n // Calculate insert index using adjusted position\n let index = getInsertIndex(adjustedPosition, closestEdge);\n\n // If moving within the same column and moving down, adjust index\n if (isSameColumn && source.index < index) {\n index -= 1;\n }\n\n // Insert card into target column\n const newTargetColumn = isSameColumn\n ? newSourceColumn\n : { ...targetColumn, cards: [...targetColumn.cards] };\n\n newTargetColumn.cards.splice(index, 0, {\n ...source.card,\n columnId: targetColumnId,\n });\n\n // Update positions\n updatePositions(newTargetColumn);\n if (!isSameColumn) {\n updatePositions(newSourceColumn);\n }\n\n // Update the columns array with the modified columns\n const updatedColumns = newColumns.map((col) => {\n if (col.id === source.column.id) {\n return newSourceColumn;\n }\n if (col.id === targetColumn.id) {\n return newTargetColumn;\n }\n return col;\n });\n\n updateColumnState(updatedColumns);\n },\n [columns, updateColumnState, cardMap],\n );\n\n const getColumnById = useCallback(\n (id: string) => columns.find((c) => c.id === id),\n [columns],\n );\n\n return (\n <KanbanContext.Provider\n value={{ columns, updateColumnState, moveCard, getColumnById, cardMap }}\n >\n {children}\n </KanbanContext.Provider>\n );\n};\n\nexport const useKanban = () => {\n const context = useContext(KanbanContext);\n if (!context) {\n throw new Error('useKanban must be used within KanbanProvider');\n }\n return context;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"context.js","names":["errors: string[]"],"sources":["../../../src/components/kanban/context.tsx"],"sourcesContent":["/*\n * Copyright 2025 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\nimport {\n createContext,\n type ReactNode,\n useCallback,\n useContext,\n useMemo,\n} from 'react';\nimport type { DragEndEvent } from '@dnd-kit/core';\nimport type { KanbanCardData, KanbanColumnData } from './types';\n\nexport type MoveCard = (\n cardId: string,\n targetColumnId: string,\n targetPosition: number,\n closestEdge?: 'top' | 'bottom',\n) => void;\nexport interface KanbanContextData {\n columns: KanbanColumnData[];\n updateColumnState: (columns: KanbanColumnData[]) => void;\n moveCard: MoveCard;\n getColumnById: (id: string) => KanbanColumnData | undefined;\n cardMap: Map<\n string,\n { column: KanbanColumnData; card: KanbanCardData; index: number }\n >;\n}\n\nexport interface KanbanProviderProps {\n columns: KanbanColumnData[];\n updateColumnState: (columns: KanbanColumnData[]) => void;\n children: ReactNode;\n}\n\n/**\n * Result of parsing a drop target from a drag event\n */\nexport interface DropTargetInfo {\n /** The ID of the column where the card should be dropped */\n columnId: string;\n /** The position/index within the column */\n position: number;\n /** The edge to drop relative to (undefined when dropping on empty column) */\n edge: 'top' | 'bottom' | undefined;\n}\n\n/**\n * Parameters for validating a card move operation\n */\nexport interface MoveCardValidationParams {\n cardId: string;\n targetColumnId: string;\n targetPosition: number;\n columns: KanbanColumnData[];\n cardMap: Map<\n string,\n { column: KanbanColumnData; card: KanbanCardData; index: number }\n >;\n}\n\n/**\n * Result of validating a card move operation\n * Uses discriminated union to ensure type safety based on success/failure\n */\nexport type MoveCardValidationResult =\n | {\n /** Validation succeeded */\n success: true;\n /** Adjusted target position (clamped to valid bounds) */\n adjustedPosition: number;\n /** Source card information */\n sourceInfo: {\n column: KanbanColumnData;\n card: KanbanCardData;\n index: number;\n };\n /** Target column */\n targetColumn: KanbanColumnData;\n /** Empty error array for success case */\n errors: [];\n }\n | {\n /** Validation failed */\n success: false;\n /** List of error messages describing validation failures */\n errors: string[];\n };\n\n/**\n * Calculates which edge of a drop target is closest to the dragged item\n * @param over - The drop target from dnd-kit\n * @param active - The active dragged item from dnd-kit\n * @returns 'top' if the dragged item's center is above the midpoint, 'bottom' otherwise\n */\nexport function calculateClosestEdge(\n over: DragEndEvent['over'],\n active: DragEndEvent['active'],\n): 'top' | 'bottom' {\n if (!over?.rect) {\n return 'bottom';\n }\n\n const translated = active?.rect?.current?.translated;\n if (!translated) {\n return 'bottom';\n }\n\n const overRect = over.rect;\n const midpoint = overRect.top + overRect.height / 2;\n const draggedItemCenter = translated.top + translated.height / 2;\n\n return draggedItemCenter < midpoint ? 'top' : 'bottom';\n}\n\n/**\n * Parses a drag event to determine where a card should be dropped\n * @param event - The drag end event from dnd-kit\n * @returns Normalized drop target information or null if invalid drop\n */\nexport function parseDropTarget(event: DragEndEvent): DropTargetInfo | null {\n const { active, over } = event;\n\n if (!over) {\n return null;\n }\n\n const overData = over.data.current;\n\n if (!overData) {\n return null;\n }\n\n // Dropping on a column (empty space or column container)\n if (Array.isArray(overData.cards)) {\n return {\n columnId: overData.id,\n position: overData.cards.length,\n edge: undefined,\n };\n }\n\n // Dropping on a card position\n const edge = calculateClosestEdge(over, active);\n return {\n columnId: overData.columnId,\n position: overData.position,\n edge,\n };\n}\n\nconst updatePositions = (column: KanbanColumnData) => {\n column.cards.forEach((c, index) => {\n c.position = index;\n });\n};\n\nexport const getInsertIndex = (\n targetPosition: number,\n closestEdge?: 'top' | 'bottom',\n) => {\n // If no edge is specified, use the target position as-is\n if (!closestEdge) {\n return targetPosition;\n }\n\n // If dropping on top edge, insert at the target position (before the card)\n // If dropping on bottom edge, insert after the target position (position + 1)\n return closestEdge === 'top' ? targetPosition : targetPosition + 1;\n};\n\n/**\n * Validates all parameters for a card move operation\n * @param params - Validation parameters\n * @returns Validation result with success flag, adjusted values, and errors\n */\nexport function validateMoveCard({\n cardId,\n targetColumnId,\n targetPosition,\n columns,\n cardMap,\n}: MoveCardValidationParams): MoveCardValidationResult {\n const errors: string[] = [];\n let adjustedPosition = targetPosition;\n\n // 1. Type validation\n if (typeof cardId !== 'string' || !cardId.trim()) {\n errors.push('[Kanban] moveCard: cardId must be a non-empty string');\n }\n\n if (typeof targetColumnId !== 'string' || !targetColumnId.trim()) {\n errors.push('[Kanban] moveCard: targetColumnId must be a non-empty string');\n }\n\n if (typeof targetPosition !== 'number' || !Number.isFinite(targetPosition)) {\n errors.push('[Kanban] moveCard: targetPosition must be a finite number');\n }\n\n // Early return if type validation fails\n if (errors.length > 0) {\n return { success: false, errors };\n }\n\n // 2. Card existence validation\n const sourceInfo = cardMap.get(cardId);\n if (!sourceInfo) {\n errors.push(`[Kanban] moveCard: Card \"${cardId}\" not found in any column`);\n return { success: false, errors };\n }\n\n // 3. Target column existence validation\n const targetColumn = columns.find((col) => col.id === targetColumnId);\n if (!targetColumn) {\n errors.push(\n `[Kanban] moveCard: Target column \"${targetColumnId}\" not found`,\n );\n return { success: false, errors };\n }\n\n // 4. Position bounds validation (with adjustment)\n if (adjustedPosition < 0) {\n console.warn(\n `[Kanban] moveCard: targetPosition (${adjustedPosition}) cannot be negative. Using 0 instead.`,\n );\n adjustedPosition = 0;\n }\n\n const maxPosition = targetColumn.cards.length;\n if (adjustedPosition > maxPosition) {\n console.warn(\n `[Kanban] moveCard: targetPosition (${adjustedPosition}) exceeds maximum (${maxPosition}). ` +\n `Using ${maxPosition} instead.`,\n );\n adjustedPosition = maxPosition;\n }\n\n // 5. canDrop validation\n if (targetColumn.canDrop === false) {\n errors.push(\n `[Kanban] moveCard: Column \"${targetColumnId}\" does not accept drops`,\n );\n return { success: false, errors };\n }\n\n // All validations passed\n return {\n success: true,\n adjustedPosition,\n sourceInfo,\n targetColumn,\n errors: [],\n };\n}\n\nconst KanbanContext = createContext<KanbanContextData>({\n columns: [],\n updateColumnState: () => null,\n moveCard: () => null,\n getColumnById: () => undefined,\n cardMap: new Map(),\n});\n\nexport const KanbanProvider = ({\n children,\n columns,\n updateColumnState,\n}: KanbanProviderProps) => {\n // Create a lookup map for O(1) card access\n const cardMap = useMemo(() => {\n const map = new Map<\n string,\n { column: KanbanColumnData; card: KanbanCardData; index: number }\n >();\n\n columns.forEach((column) => {\n column.cards.forEach((card, index) => {\n map.set(card.id, { column, card, index });\n });\n });\n\n return map;\n }, [columns]);\n\n const moveCard = useCallback(\n (\n cardId: string,\n targetColumnId: string,\n targetPosition: number,\n closestEdge?: 'top' | 'bottom',\n ) => {\n // Validate all inputs\n const validation = validateMoveCard({\n cardId,\n targetColumnId,\n targetPosition,\n columns,\n cardMap,\n });\n\n // Handle validation failure\n if (!validation.success) {\n validation.errors.forEach((error) => {\n console.error(error);\n });\n return false;\n }\n\n // Extract validated data - TypeScript knows these are defined after success check\n const { adjustedPosition, sourceInfo: source, targetColumn } = validation;\n\n const newColumns = [...columns];\n const isSameColumn = source.column.id === targetColumn.id;\n\n // Remove card from source column\n const newSourceColumn = {\n ...source.column,\n cards: source.column.cards.filter((_, i) => i !== source.index),\n };\n\n // Calculate insert index using adjusted position\n let index = getInsertIndex(adjustedPosition, closestEdge);\n\n // If moving within the same column and moving down, adjust index\n if (isSameColumn && source.index < index) {\n index -= 1;\n }\n\n // Insert card into target column\n const newTargetColumn = isSameColumn\n ? newSourceColumn\n : { ...targetColumn, cards: [...targetColumn.cards] };\n\n newTargetColumn.cards.splice(index, 0, {\n ...source.card,\n columnId: targetColumnId,\n });\n\n // Update positions\n updatePositions(newTargetColumn);\n if (!isSameColumn) {\n updatePositions(newSourceColumn);\n }\n\n // Update the columns array with the modified columns\n const updatedColumns = newColumns.map((col) => {\n if (col.id === source.column.id) {\n return newSourceColumn;\n }\n if (col.id === targetColumn.id) {\n return newTargetColumn;\n }\n return col;\n });\n\n updateColumnState(updatedColumns);\n },\n [columns, updateColumnState, cardMap],\n );\n\n const getColumnById = useCallback(\n (id: string) => columns.find((c) => c.id === id),\n [columns],\n );\n\n return (\n <KanbanContext.Provider\n value={{ columns, updateColumnState, moveCard, getColumnById, cardMap }}\n >\n {children}\n </KanbanContext.Provider>\n );\n};\n\nexport const useKanban = () => {\n const context = useContext(KanbanContext);\n if (!context) {\n throw new Error('useKanban must be used within KanbanProvider');\n }\n return context;\n};\n"],"mappings":"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"}
|
|
@@ -1,12 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
9
12
|
|
|
10
|
-
|
|
13
|
+
import { KanbanComponentProps } from "./types.js";
|
|
14
|
+
import "client-only";
|
|
15
|
+
import * as react_jsx_runtime116 from "react/jsx-runtime";
|
|
11
16
|
|
|
17
|
+
//#region src/components/kanban/header-actions.d.ts
|
|
18
|
+
declare function KanbanHeaderActions({
|
|
19
|
+
children,
|
|
20
|
+
className,
|
|
21
|
+
...rest
|
|
22
|
+
}: KanbanComponentProps): react_jsx_runtime116.JSX.Element;
|
|
23
|
+
//#endregion
|
|
12
24
|
export { KanbanHeaderActions };
|
|
25
|
+
//# sourceMappingURL=header-actions.d.ts.map
|
|
@@ -1,4 +1,32 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
|
|
1
14
|
'use client';
|
|
2
15
|
|
|
3
|
-
import
|
|
16
|
+
import "client-only";
|
|
17
|
+
import { clsx } from "@accelint/design-foundation/lib/utils";
|
|
18
|
+
import { jsx } from "react/jsx-runtime";
|
|
19
|
+
import styles from "./styles.module.css";
|
|
20
|
+
|
|
21
|
+
//#region src/components/kanban/header-actions.tsx
|
|
22
|
+
function KanbanHeaderActions({ children, className, ...rest }) {
|
|
23
|
+
return /* @__PURE__ */ jsx("div", {
|
|
24
|
+
...rest,
|
|
25
|
+
className: clsx(styles.headerActions, className),
|
|
26
|
+
children
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
//#endregion
|
|
31
|
+
export { KanbanHeaderActions };
|
|
4
32
|
//# sourceMappingURL=header-actions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"header-actions.js","names":[],"sources":["../../../src/components/kanban/header-actions.tsx"],"sourcesContent":["/*\n * Copyright 2025 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';\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport styles from './styles.module.css';\nimport type { KanbanComponentProps } from './types';\n\nexport function KanbanHeaderActions({\n children,\n className,\n ...rest\n}: KanbanComponentProps) {\n return (\n <div {...rest} className={clsx(styles.headerActions, className)}>\n {children}\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAkBA,SAAgB,oBAAoB,EAClC,UACA,WACA,GAAG,QACoB;AACvB,QACE,oBAAC;EAAI,GAAI;EAAM,WAAW,KAAK,OAAO,eAAe,UAAU;EAC5D;GACG"}
|
|
@@ -1,12 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
9
12
|
|
|
10
|
-
|
|
13
|
+
import { KanbanSearchProps } from "./types.js";
|
|
14
|
+
import "client-only";
|
|
15
|
+
import * as react_jsx_runtime114 from "react/jsx-runtime";
|
|
11
16
|
|
|
17
|
+
//#region src/components/kanban/header-search.d.ts
|
|
18
|
+
declare function KanbanHeaderSearch({
|
|
19
|
+
classNames,
|
|
20
|
+
...rest
|
|
21
|
+
}: KanbanSearchProps): react_jsx_runtime114.JSX.Element;
|
|
22
|
+
//#endregion
|
|
12
23
|
export { KanbanHeaderSearch };
|
|
24
|
+
//# sourceMappingURL=header-search.d.ts.map
|
|
@@ -1,4 +1,32 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
|
|
1
14
|
'use client';
|
|
2
15
|
|
|
3
|
-
import {
|
|
16
|
+
import { SearchField } from "../search-field/index.js";
|
|
17
|
+
import "client-only";
|
|
18
|
+
import { jsx } from "react/jsx-runtime";
|
|
19
|
+
|
|
20
|
+
//#region src/components/kanban/header-search.tsx
|
|
21
|
+
function KanbanHeaderSearch({ classNames, ...rest }) {
|
|
22
|
+
return /* @__PURE__ */ jsx(SearchField, {
|
|
23
|
+
...rest,
|
|
24
|
+
variant: "outline",
|
|
25
|
+
classNames,
|
|
26
|
+
"aria-label": "Search"
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
//#endregion
|
|
31
|
+
export { KanbanHeaderSearch };
|
|
4
32
|
//# sourceMappingURL=header-search.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"header-search.js","names":[],"sources":["../../../src/components/kanban/header-search.tsx"],"sourcesContent":["/*\n * Copyright 2025 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';\n\nimport { SearchField } from '../search-field';\nimport type { KanbanSearchProps } from './types';\n\nexport function KanbanHeaderSearch({ classNames, ...rest }: KanbanSearchProps) {\n return (\n <SearchField\n {...rest}\n variant='outline'\n classNames={classNames}\n aria-label='Search'\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAiBA,SAAgB,mBAAmB,EAAE,YAAY,GAAG,QAA2B;AAC7E,QACE,oBAAC;EACC,GAAI;EACJ,SAAQ;EACI;EACZ,cAAW;GACX"}
|
|
@@ -1,12 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
9
12
|
|
|
10
|
-
|
|
13
|
+
import { KanbanComponentProps } from "./types.js";
|
|
14
|
+
import "client-only";
|
|
15
|
+
import * as react_jsx_runtime115 from "react/jsx-runtime";
|
|
11
16
|
|
|
17
|
+
//#region src/components/kanban/header-title.d.ts
|
|
18
|
+
declare function KanbanHeaderTitle({
|
|
19
|
+
children,
|
|
20
|
+
className,
|
|
21
|
+
...rest
|
|
22
|
+
}: KanbanComponentProps): react_jsx_runtime115.JSX.Element;
|
|
23
|
+
//#endregion
|
|
12
24
|
export { KanbanHeaderTitle };
|
|
25
|
+
//# sourceMappingURL=header-title.d.ts.map
|
|
@@ -1,4 +1,33 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
|
|
1
14
|
'use client';
|
|
2
15
|
|
|
3
|
-
import
|
|
16
|
+
import "client-only";
|
|
17
|
+
import { clsx } from "@accelint/design-foundation/lib/utils";
|
|
18
|
+
import { Heading } from "react-aria-components";
|
|
19
|
+
import { jsx } from "react/jsx-runtime";
|
|
20
|
+
import styles from "./styles.module.css";
|
|
21
|
+
|
|
22
|
+
//#region src/components/kanban/header-title.tsx
|
|
23
|
+
function KanbanHeaderTitle({ children, className, ...rest }) {
|
|
24
|
+
return /* @__PURE__ */ jsx(Heading, {
|
|
25
|
+
...rest,
|
|
26
|
+
className: clsx(styles.headerTitle, className),
|
|
27
|
+
children
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
//#endregion
|
|
32
|
+
export { KanbanHeaderTitle };
|
|
4
33
|
//# sourceMappingURL=header-title.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"header-title.js","names":[],"sources":["../../../src/components/kanban/header-title.tsx"],"sourcesContent":["/*\n * Copyright 2025 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';\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport { Heading } from 'react-aria-components';\nimport styles from './styles.module.css';\nimport type { KanbanComponentProps } from './types';\n\nexport function KanbanHeaderTitle({\n children,\n className,\n ...rest\n}: KanbanComponentProps) {\n return (\n <Heading {...rest} className={clsx(styles.headerTitle, className)}>\n {children}\n </Heading>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAmBA,SAAgB,kBAAkB,EAChC,UACA,WACA,GAAG,QACoB;AACvB,QACE,oBAAC;EAAQ,GAAI;EAAM,WAAW,KAAK,OAAO,aAAa,UAAU;EAC9D;GACO"}
|
|
@@ -1,12 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
9
12
|
|
|
10
|
-
|
|
13
|
+
import { KanbanComponentProps } from "./types.js";
|
|
14
|
+
import "client-only";
|
|
15
|
+
import * as react_jsx_runtime117 from "react/jsx-runtime";
|
|
11
16
|
|
|
17
|
+
//#region src/components/kanban/header.d.ts
|
|
18
|
+
declare function KanbanHeader({
|
|
19
|
+
children,
|
|
20
|
+
className,
|
|
21
|
+
...rest
|
|
22
|
+
}: KanbanComponentProps): react_jsx_runtime117.JSX.Element;
|
|
23
|
+
//#endregion
|
|
12
24
|
export { KanbanHeader };
|
|
25
|
+
//# sourceMappingURL=header.d.ts.map
|
|
@@ -1,4 +1,32 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
|
|
1
14
|
'use client';
|
|
2
15
|
|
|
3
|
-
import
|
|
16
|
+
import "client-only";
|
|
17
|
+
import { clsx } from "@accelint/design-foundation/lib/utils";
|
|
18
|
+
import { jsx } from "react/jsx-runtime";
|
|
19
|
+
import styles from "./styles.module.css";
|
|
20
|
+
|
|
21
|
+
//#region src/components/kanban/header.tsx
|
|
22
|
+
function KanbanHeader({ children, className, ...rest }) {
|
|
23
|
+
return /* @__PURE__ */ jsx("div", {
|
|
24
|
+
...rest,
|
|
25
|
+
className: clsx(styles.header, className),
|
|
26
|
+
children
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
//#endregion
|
|
31
|
+
export { KanbanHeader };
|
|
4
32
|
//# sourceMappingURL=header.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"header.js","names":[],"sources":["../../../src/components/kanban/header.tsx"],"sourcesContent":["/*\n * Copyright 2025 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';\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport styles from './styles.module.css';\nimport type { KanbanComponentProps } from './types';\n\nexport function KanbanHeader({\n children,\n className,\n ...rest\n}: KanbanComponentProps) {\n return (\n <div {...rest} className={clsx(styles.header, className)}>\n {children}\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAkBA,SAAgB,aAAa,EAC3B,UACA,WACA,GAAG,QACoB;AACvB,QACE,oBAAC;EAAI,GAAI;EAAM,WAAW,KAAK,OAAO,QAAQ,UAAU;EACrD;GACG"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
import { KanbanCardProps, KanbanColContentActionProps, KanbanColContentProps, KanbanColProps, KanbanComponentProps, KanbanMenuProps, KanbanProps, KanbanSearchProps } from "./types.js";
|
|
14
|
+
import { Kanban } from "./kanban.js";
|
|
15
|
+
export { Kanban, type KanbanCardProps, type KanbanColContentActionProps, type KanbanColContentProps, type KanbanColProps, type KanbanComponentProps, type KanbanMenuProps, type KanbanProps, type KanbanSearchProps };
|
|
@@ -1,2 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
import { Kanban } from "./kanban.js";
|
|
15
|
+
|
|
16
|
+
export { Kanban };
|
|
@@ -1,18 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
9
12
|
|
|
10
|
-
|
|
11
|
-
|
|
13
|
+
import { KanbanProps } from "./types.js";
|
|
14
|
+
import "client-only";
|
|
15
|
+
import * as react35 from "react";
|
|
16
|
+
import * as react_jsx_runtime118 from "react/jsx-runtime";
|
|
17
|
+
|
|
18
|
+
//#region src/components/kanban/kanban.d.ts
|
|
19
|
+
declare const DragContext: react35.Context<{
|
|
20
|
+
activeId: string | null;
|
|
12
21
|
} | null>;
|
|
13
22
|
declare const useDragContext: () => {
|
|
14
|
-
|
|
23
|
+
activeId: string | null;
|
|
15
24
|
};
|
|
16
|
-
declare function Kanban({
|
|
17
|
-
|
|
25
|
+
declare function Kanban({
|
|
26
|
+
children,
|
|
27
|
+
className,
|
|
28
|
+
...rest
|
|
29
|
+
}: KanbanProps): react_jsx_runtime118.JSX.Element;
|
|
30
|
+
//#endregion
|
|
18
31
|
export { DragContext, Kanban, useDragContext };
|
|
32
|
+
//# sourceMappingURL=kanban.d.ts.map
|
|
@@ -1,4 +1,84 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at https://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
|
|
1
14
|
'use client';
|
|
2
15
|
|
|
3
|
-
import {
|
|
16
|
+
import { parseDropTarget, useKanban } from "./context.js";
|
|
17
|
+
import "client-only";
|
|
18
|
+
import { createContext, useContext, useState } from "react";
|
|
19
|
+
import { clsx } from "@accelint/design-foundation/lib/utils";
|
|
20
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
21
|
+
import styles from "./styles.module.css";
|
|
22
|
+
import { DndContext, DragOverlay, PointerSensor, closestCenter, pointerWithin, rectIntersection, useSensor, useSensors } from "@dnd-kit/core";
|
|
23
|
+
|
|
24
|
+
//#region src/components/kanban/kanban.tsx
|
|
25
|
+
const DragContext = createContext(null);
|
|
26
|
+
const useDragContext = () => {
|
|
27
|
+
const context = useContext(DragContext);
|
|
28
|
+
if (!context) throw new Error("useDragContext must be used within Kanban component");
|
|
29
|
+
return context;
|
|
30
|
+
};
|
|
31
|
+
const ACTIVATION_DISTANCE = 8;
|
|
32
|
+
function Kanban({ children, className, ...rest }) {
|
|
33
|
+
const { moveCard, cardMap } = useKanban();
|
|
34
|
+
const [activeId, setActiveId] = useState(null);
|
|
35
|
+
const sensors = useSensors(useSensor(PointerSensor, { activationConstraint: { distance: ACTIVATION_DISTANCE } }));
|
|
36
|
+
const collisionDetectionStrategy = (args) => {
|
|
37
|
+
const pointerCollisions = pointerWithin(args);
|
|
38
|
+
if (pointerCollisions.length > 0) return pointerCollisions;
|
|
39
|
+
const rectCollisions = rectIntersection(args);
|
|
40
|
+
if (rectCollisions.length > 0) return rectCollisions;
|
|
41
|
+
return closestCenter(args);
|
|
42
|
+
};
|
|
43
|
+
const handleDragStart = (event) => {
|
|
44
|
+
setActiveId(event.active.id);
|
|
45
|
+
};
|
|
46
|
+
const handleDragEnd = (event) => {
|
|
47
|
+
setActiveId(null);
|
|
48
|
+
const dropTarget = parseDropTarget(event);
|
|
49
|
+
if (!dropTarget) return;
|
|
50
|
+
moveCard(event.active.id, dropTarget.columnId, dropTarget.position, dropTarget.edge);
|
|
51
|
+
};
|
|
52
|
+
const activeCard = activeId ? cardMap.get(activeId)?.card : null;
|
|
53
|
+
return /* @__PURE__ */ jsx(DragContext.Provider, {
|
|
54
|
+
value: { activeId },
|
|
55
|
+
children: /* @__PURE__ */ jsxs(DndContext, {
|
|
56
|
+
sensors,
|
|
57
|
+
collisionDetection: collisionDetectionStrategy,
|
|
58
|
+
onDragStart: handleDragStart,
|
|
59
|
+
onDragEnd: handleDragEnd,
|
|
60
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
61
|
+
className: clsx(styles.kanban, className),
|
|
62
|
+
...rest,
|
|
63
|
+
children
|
|
64
|
+
}), /* @__PURE__ */ jsx(DragOverlay, { children: activeCard ? /* @__PURE__ */ jsxs("div", {
|
|
65
|
+
"data-current": true,
|
|
66
|
+
className: clsx(styles.card),
|
|
67
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
68
|
+
className: styles.cardHeader,
|
|
69
|
+
children: /* @__PURE__ */ jsx("span", {
|
|
70
|
+
className: styles.cardTitle,
|
|
71
|
+
children: activeCard.title
|
|
72
|
+
})
|
|
73
|
+
}), /* @__PURE__ */ jsx("div", {
|
|
74
|
+
className: styles.cardBody,
|
|
75
|
+
children: activeCard.body
|
|
76
|
+
})]
|
|
77
|
+
}) : null })]
|
|
78
|
+
})
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
//#endregion
|
|
83
|
+
export { DragContext, Kanban, useDragContext };
|
|
4
84
|
//# sourceMappingURL=kanban.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"kanban.js","names":["collisionDetectionStrategy: CollisionDetection"],"sources":["../../../src/components/kanban/kanban.tsx"],"sourcesContent":["/*\n * Copyright 2025 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';\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport {\n type CollisionDetection,\n closestCenter,\n DndContext,\n type DragEndEvent,\n DragOverlay,\n type DragStartEvent,\n PointerSensor,\n pointerWithin,\n rectIntersection,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { createContext, useContext, useState } from 'react';\nimport { parseDropTarget, useKanban } from '@/components/kanban/context';\nimport styles from './styles.module.css';\nimport type { KanbanProps } from './types';\n\n// Context for sharing active drag state\n\nexport const DragContext = createContext<{ activeId: string | null } | null>(\n null,\n);\n\nexport const useDragContext = () => {\n const context = useContext(DragContext);\n if (!context) {\n throw new Error('useDragContext must be used within Kanban component');\n }\n return context;\n};\n\nconst ACTIVATION_DISTANCE = 8;\n\nexport function Kanban({ children, className, ...rest }: KanbanProps) {\n const { moveCard, cardMap } = useKanban();\n const [activeId, setActiveId] = useState<string | null>(null);\n\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n distance: ACTIVATION_DISTANCE,\n },\n }),\n );\n\n const collisionDetectionStrategy: CollisionDetection = (args) => {\n // First, try pointer within for direct pointer detection\n const pointerCollisions = pointerWithin(args);\n if (pointerCollisions.length > 0) {\n return pointerCollisions;\n }\n\n // Then try rectangle intersection for better coverage\n const rectCollisions = rectIntersection(args);\n if (rectCollisions.length > 0) {\n return rectCollisions;\n }\n\n // Fall back to closest center\n return closestCenter(args);\n };\n\n const handleDragStart = (event: DragStartEvent) => {\n setActiveId(event.active.id as string);\n };\n\n const handleDragEnd = (event: DragEndEvent) => {\n setActiveId(null);\n\n const dropTarget = parseDropTarget(event);\n if (!dropTarget) {\n return;\n }\n\n moveCard(\n event.active.id as string,\n dropTarget.columnId,\n dropTarget.position,\n dropTarget.edge,\n );\n };\n\n // Find the active card for the drag overlay\n const activeCard = activeId ? cardMap.get(activeId)?.card : null;\n\n return (\n <DragContext.Provider value={{ activeId }}>\n <DndContext\n sensors={sensors}\n collisionDetection={collisionDetectionStrategy}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n >\n <div className={clsx(styles.kanban, className)} {...rest}>\n {children}\n </div>\n <DragOverlay>\n {activeCard ? (\n <div data-current className={clsx(styles.card)}>\n <div className={styles.cardHeader}>\n <span className={styles.cardTitle}>{activeCard.title}</span>\n </div>\n <div className={styles.cardBody}>{activeCard.body}</div>\n </div>\n ) : null}\n </DragOverlay>\n </DndContext>\n </DragContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAmCA,MAAa,cAAc,cACzB,KACD;AAED,MAAa,uBAAuB;CAClC,MAAM,UAAU,WAAW,YAAY;AACvC,KAAI,CAAC,QACH,OAAM,IAAI,MAAM,sDAAsD;AAExE,QAAO;;AAGT,MAAM,sBAAsB;AAE5B,SAAgB,OAAO,EAAE,UAAU,WAAW,GAAG,QAAqB;CACpE,MAAM,EAAE,UAAU,YAAY,WAAW;CACzC,MAAM,CAAC,UAAU,eAAe,SAAwB,KAAK;CAE7D,MAAM,UAAU,WACd,UAAU,eAAe,EACvB,sBAAsB,EACpB,UAAU,qBACX,EACF,CAAC,CACH;CAED,MAAMA,8BAAkD,SAAS;EAE/D,MAAM,oBAAoB,cAAc,KAAK;AAC7C,MAAI,kBAAkB,SAAS,EAC7B,QAAO;EAIT,MAAM,iBAAiB,iBAAiB,KAAK;AAC7C,MAAI,eAAe,SAAS,EAC1B,QAAO;AAIT,SAAO,cAAc,KAAK;;CAG5B,MAAM,mBAAmB,UAA0B;AACjD,cAAY,MAAM,OAAO,GAAa;;CAGxC,MAAM,iBAAiB,UAAwB;AAC7C,cAAY,KAAK;EAEjB,MAAM,aAAa,gBAAgB,MAAM;AACzC,MAAI,CAAC,WACH;AAGF,WACE,MAAM,OAAO,IACb,WAAW,UACX,WAAW,UACX,WAAW,KACZ;;CAIH,MAAM,aAAa,WAAW,QAAQ,IAAI,SAAS,EAAE,OAAO;AAE5D,QACE,oBAAC,YAAY;EAAS,OAAO,EAAE,UAAU;YACvC,qBAAC;GACU;GACT,oBAAoB;GACpB,aAAa;GACb,WAAW;cAEX,oBAAC;IAAI,WAAW,KAAK,OAAO,QAAQ,UAAU;IAAE,GAAI;IACjD;KACG,EACN,oBAAC,yBACE,aACC,qBAAC;IAAI;IAAa,WAAW,KAAK,OAAO,KAAK;eAC5C,oBAAC;KAAI,WAAW,OAAO;eACrB,oBAAC;MAAK,WAAW,OAAO;gBAAY,WAAW;OAAa;MACxD,EACN,oBAAC;KAAI,WAAW,OAAO;eAAW,WAAW;MAAW;KACpD,GACJ,OACQ;IACH;GACQ"}
|