@accelint/design-toolkit 6.0.0 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/catalog-info.yaml +18 -18
- package/dist/components/accordion/context.d.ts +10 -0
- package/dist/components/accordion/context.js +4 -0
- package/dist/components/accordion/context.js.map +1 -0
- package/dist/components/accordion/group.d.ts +11 -0
- package/dist/components/accordion/group.js +4 -0
- package/dist/components/accordion/group.js.map +1 -0
- package/dist/components/accordion/header.d.ts +11 -0
- package/dist/components/accordion/header.js +4 -0
- package/dist/components/accordion/header.js.map +1 -0
- package/dist/components/accordion/index.d.ts +22 -46
- package/dist/components/accordion/index.js +1 -3
- package/dist/components/accordion/index.js.map +1 -1
- package/dist/components/accordion/panel.d.ts +11 -0
- package/dist/components/accordion/panel.js +4 -0
- package/dist/components/accordion/panel.js.map +1 -0
- package/dist/components/accordion/trigger.d.ts +11 -0
- package/dist/components/accordion/trigger.js +4 -0
- package/dist/components/accordion/trigger.js.map +1 -0
- package/dist/components/accordion/types.d.ts +1 -1
- package/dist/components/action-bar/index.d.ts +0 -3
- package/dist/components/action-bar/index.js +1 -1
- package/dist/components/action-bar/index.js.map +1 -1
- package/dist/components/avatar/context.d.ts +14 -0
- package/dist/components/avatar/context.js +4 -0
- package/dist/components/avatar/context.js.map +1 -0
- package/dist/components/avatar/index.d.ts +2 -13
- package/dist/components/avatar/index.js +1 -1
- package/dist/components/avatar/index.js.map +1 -1
- package/dist/components/badge/context.d.ts +13 -0
- package/dist/components/badge/context.js +4 -0
- package/dist/components/badge/context.js.map +1 -0
- package/dist/components/badge/index.d.ts +2 -13
- package/dist/components/badge/index.js +1 -3
- package/dist/components/badge/index.js.map +1 -1
- package/dist/components/breadcrumbs/index.d.ts +2 -11
- package/dist/components/breadcrumbs/index.js +1 -1
- package/dist/components/breadcrumbs/index.js.map +1 -1
- package/dist/components/breadcrumbs/item.d.ts +7 -0
- package/dist/components/breadcrumbs/item.js +4 -0
- package/dist/components/breadcrumbs/item.js.map +1 -0
- package/dist/components/button/context.d.ts +17 -0
- package/dist/components/button/context.js +4 -0
- package/dist/components/button/context.js.map +1 -0
- package/dist/components/button/index.d.ts +5 -104
- package/dist/components/button/index.js +1 -3
- package/dist/components/button/index.js.map +1 -1
- package/dist/components/button/link.d.ts +46 -0
- package/dist/components/button/link.js +4 -0
- package/dist/components/button/link.js.map +1 -0
- package/dist/components/button/toggle.d.ts +48 -0
- package/dist/components/button/toggle.js +4 -0
- package/dist/components/button/toggle.js.map +1 -0
- package/dist/components/checkbox/context.d.ts +10 -0
- package/dist/components/checkbox/context.js +4 -0
- package/dist/components/checkbox/context.js.map +1 -0
- package/dist/components/checkbox/group.d.ts +10 -0
- package/dist/components/checkbox/group.js +4 -0
- package/dist/components/checkbox/group.js.map +1 -0
- package/dist/components/checkbox/index.d.ts +6 -16
- package/dist/components/checkbox/index.js +1 -1
- package/dist/components/checkbox/index.js.map +1 -1
- package/dist/components/checkbox/styles.js +1 -1
- package/dist/components/checkbox/styles.js.map +1 -1
- package/dist/components/chip/context.d.ts +13 -0
- package/dist/components/chip/context.js +4 -0
- package/dist/components/chip/context.js.map +1 -0
- package/dist/components/chip/deletable.d.ts +11 -0
- package/dist/components/chip/deletable.js +4 -0
- package/dist/components/chip/deletable.js.map +1 -0
- package/dist/components/chip/index.d.ts +14 -39
- package/dist/components/chip/index.js +1 -3
- package/dist/components/chip/index.js.map +1 -1
- package/dist/components/chip/list.d.ts +12 -0
- package/dist/components/chip/list.js +4 -0
- package/dist/components/chip/list.js.map +1 -0
- package/dist/components/chip/selectable.d.ts +11 -0
- package/dist/components/chip/selectable.js +2 -0
- package/dist/components/chip/selectable.js.map +1 -0
- package/dist/components/chip/styles.js +1 -1
- package/dist/components/chip/styles.js.map +1 -1
- package/dist/components/chip/types.d.ts +2 -2
- package/dist/components/classification-badge/context.d.ts +12 -0
- package/dist/components/classification-badge/context.js +4 -0
- package/dist/components/classification-badge/context.js.map +1 -0
- package/dist/components/classification-badge/index.d.ts +2 -13
- package/dist/components/classification-badge/index.js +1 -3
- package/dist/components/classification-badge/index.js.map +1 -1
- package/dist/components/classification-banner/context.d.ts +12 -0
- package/dist/components/classification-banner/context.js +4 -0
- package/dist/components/classification-banner/context.js.map +1 -0
- package/dist/components/classification-banner/index.d.ts +2 -13
- package/dist/components/classification-banner/index.js +1 -3
- package/dist/components/classification-banner/index.js.map +1 -1
- package/dist/components/clock/index.d.ts +0 -3
- package/dist/components/clock/index.js +1 -1
- package/dist/components/clock/index.js.map +1 -1
- package/dist/components/color-picker/index.d.ts +0 -3
- package/dist/components/color-picker/index.js +1 -1
- package/dist/components/color-picker/index.js.map +1 -1
- package/dist/components/color-picker/styles.js +1 -1
- package/dist/components/color-picker/styles.js.map +1 -1
- package/dist/components/combobox-field/context.d.ts +16 -0
- package/dist/components/combobox-field/context.js +4 -0
- package/dist/components/combobox-field/context.js.map +1 -0
- package/dist/components/combobox-field/index.d.ts +4 -8
- package/dist/components/combobox-field/index.js +1 -1
- package/dist/components/combobox-field/index.js.map +1 -1
- package/dist/components/combobox-field/styles.d.ts +3 -3
- package/dist/components/date-field/index.js +1 -1
- package/dist/components/date-field/index.js.map +1 -1
- package/dist/components/details-list/context.d.ts +12 -0
- package/dist/components/details-list/context.js +4 -0
- package/dist/components/details-list/context.js.map +1 -0
- package/dist/components/details-list/index.d.ts +15 -35
- package/dist/components/details-list/index.js +1 -3
- package/dist/components/details-list/index.js.map +1 -1
- package/dist/components/details-list/label.d.ts +10 -0
- package/dist/components/details-list/label.js +4 -0
- package/dist/components/details-list/label.js.map +1 -0
- package/dist/components/details-list/value.d.ts +10 -0
- package/dist/components/details-list/value.js +4 -0
- package/dist/components/details-list/value.js.map +1 -0
- package/dist/components/dialog/content.d.ts +6 -0
- package/dist/components/dialog/content.js +2 -0
- package/dist/components/dialog/content.js.map +1 -0
- package/dist/components/dialog/context.d.ts +7 -0
- package/dist/components/dialog/context.js +4 -0
- package/dist/components/dialog/context.js.map +1 -0
- package/dist/components/dialog/footer.d.ts +6 -0
- package/dist/components/dialog/footer.js +4 -0
- package/dist/components/dialog/footer.js.map +1 -0
- package/dist/components/dialog/index.d.ts +9 -30
- package/dist/components/dialog/index.js +1 -1
- package/dist/components/dialog/index.js.map +1 -1
- package/dist/components/dialog/styles.d.ts +3 -3
- package/dist/components/dialog/title.d.ts +6 -0
- package/dist/components/dialog/title.js +4 -0
- package/dist/components/dialog/title.js.map +1 -0
- package/dist/components/dialog/trigger.d.ts +1 -0
- package/dist/components/dialog/trigger.js +2 -0
- package/dist/components/dialog/trigger.js.map +1 -0
- package/dist/components/dialog/types.d.ts +3 -2
- package/dist/components/divider/context.d.ts +10 -0
- package/dist/components/divider/context.js +4 -0
- package/dist/components/divider/context.js.map +1 -0
- package/dist/components/divider/index.d.ts +2 -13
- package/dist/components/divider/index.js +1 -3
- package/dist/components/divider/index.js.map +1 -1
- package/dist/components/drawer/back.d.ts +5 -0
- package/dist/components/drawer/back.js +4 -0
- package/dist/components/drawer/back.js.map +1 -0
- package/dist/components/drawer/close.d.ts +5 -0
- package/dist/components/drawer/close.js +2 -0
- package/dist/components/drawer/close.js.map +1 -0
- package/dist/components/drawer/content.d.ts +6 -0
- package/dist/components/drawer/content.js +4 -0
- package/dist/components/drawer/content.js.map +1 -0
- package/dist/components/drawer/context.d.ts +38 -0
- package/dist/components/drawer/context.js +4 -0
- package/dist/components/drawer/context.js.map +1 -0
- package/dist/components/drawer/footer.d.ts +6 -0
- package/dist/components/drawer/footer.js +4 -0
- package/dist/components/drawer/footer.js.map +1 -0
- package/dist/components/drawer/header-title.d.ts +25 -0
- package/dist/components/drawer/header-title.js +2 -0
- package/dist/components/drawer/header-title.js.map +1 -0
- package/dist/components/drawer/header.d.ts +6 -0
- package/dist/components/drawer/header.js +4 -0
- package/dist/components/drawer/header.js.map +1 -0
- package/dist/components/drawer/index.d.ts +19 -112
- package/dist/components/drawer/index.js +1 -1
- package/dist/components/drawer/index.js.map +1 -1
- package/dist/components/drawer/layout-main.d.ts +6 -0
- package/dist/components/drawer/layout-main.js +2 -0
- package/dist/components/drawer/layout-main.js.map +1 -0
- package/dist/components/drawer/layout.d.ts +20 -0
- package/dist/components/drawer/layout.js +4 -0
- package/dist/components/drawer/layout.js.map +1 -0
- package/dist/components/drawer/menu-item.d.ts +20 -0
- package/dist/components/drawer/menu-item.js +2 -0
- package/dist/components/drawer/menu-item.js.map +1 -0
- package/dist/components/drawer/menu.d.ts +20 -0
- package/dist/components/drawer/menu.js +4 -0
- package/dist/components/drawer/menu.js.map +1 -0
- package/dist/components/drawer/panel.d.ts +6 -0
- package/dist/components/drawer/panel.js +2 -0
- package/dist/components/drawer/panel.js.map +1 -0
- package/dist/components/drawer/styles.d.ts +9 -9
- package/dist/components/drawer/trigger.d.ts +20 -0
- package/dist/components/drawer/trigger.js +4 -0
- package/dist/components/drawer/trigger.js.map +1 -0
- package/dist/components/drawer/types.d.ts +3 -3
- package/dist/components/drawer/view.d.ts +11 -0
- package/dist/components/drawer/view.js +4 -0
- package/dist/components/drawer/view.js.map +1 -0
- package/dist/components/hero/context.d.ts +7 -0
- package/dist/components/hero/context.js +2 -0
- package/dist/components/hero/context.js.map +1 -0
- package/dist/components/hero/index.d.ts +8 -16
- package/dist/components/hero/index.js +1 -1
- package/dist/components/hero/index.js.map +1 -1
- package/dist/components/hero/subtitle.d.ts +6 -0
- package/dist/components/hero/subtitle.js +4 -0
- package/dist/components/hero/subtitle.js.map +1 -0
- package/dist/components/hero/title.d.ts +6 -0
- package/dist/components/hero/title.js +2 -0
- package/dist/components/hero/title.js.map +1 -0
- package/dist/components/hotkey/context.d.ts +12 -0
- package/dist/components/hotkey/context.js +4 -0
- package/dist/components/hotkey/context.js.map +1 -0
- package/dist/components/hotkey/hotkey-set.d.ts +9 -0
- package/dist/components/hotkey/hotkey-set.js +2 -0
- package/dist/components/hotkey/hotkey-set.js.map +1 -0
- package/dist/components/hotkey/index.d.ts +7 -23
- package/dist/components/hotkey/index.js +1 -1
- package/dist/components/hotkey/index.js.map +1 -1
- package/dist/components/icon/context.d.ts +10 -0
- package/dist/components/icon/context.js +4 -0
- package/dist/components/icon/context.js.map +1 -0
- package/dist/components/icon/index.d.ts +2 -13
- package/dist/components/icon/index.js +1 -3
- package/dist/components/icon/index.js.map +1 -1
- package/dist/components/input/context.d.ts +13 -0
- package/dist/components/input/context.js +4 -0
- package/dist/components/input/context.js.map +1 -0
- package/dist/components/input/index.d.ts +3 -7
- package/dist/components/input/index.js +1 -1
- package/dist/components/input/index.js.map +1 -1
- package/dist/components/label/context.d.ts +10 -0
- package/dist/components/label/context.js +4 -0
- package/dist/components/label/context.js.map +1 -0
- package/dist/components/label/index.d.ts +3 -13
- package/dist/components/label/index.js +1 -3
- package/dist/components/label/index.js.map +1 -1
- package/dist/components/link/context.d.ts +9 -0
- package/dist/components/link/context.js +4 -0
- package/dist/components/link/context.js.map +1 -0
- package/dist/components/link/index.d.ts +0 -9
- package/dist/components/link/index.js +1 -3
- package/dist/components/link/index.js.map +1 -1
- package/dist/components/menu/context.d.ts +10 -0
- package/dist/components/menu/context.js +4 -0
- package/dist/components/menu/context.js.map +1 -0
- package/dist/components/menu/index.d.ts +31 -63
- package/dist/components/menu/index.js +1 -1
- package/dist/components/menu/index.js.map +1 -1
- package/dist/components/menu/item-description.d.ts +6 -0
- package/dist/components/menu/item-description.js +2 -0
- package/dist/components/menu/item-description.js.map +1 -0
- package/dist/components/menu/item-label.d.ts +6 -0
- package/dist/components/menu/item-label.js +4 -0
- package/dist/components/menu/item-label.js.map +1 -0
- package/dist/components/menu/item.d.ts +11 -0
- package/dist/components/menu/item.js +4 -0
- package/dist/components/menu/item.js.map +1 -0
- package/dist/components/menu/section.d.ts +11 -0
- package/dist/components/menu/section.js +2 -0
- package/dist/components/menu/section.js.map +1 -0
- package/dist/components/menu/separator.d.ts +6 -0
- package/dist/components/menu/separator.js +4 -0
- package/dist/components/menu/separator.js.map +1 -0
- package/dist/components/menu/styles.js +1 -1
- package/dist/components/menu/styles.js.map +1 -1
- package/dist/components/menu/submenu.d.ts +6 -0
- package/dist/components/menu/submenu.js +4 -0
- package/dist/components/menu/submenu.js.map +1 -0
- package/dist/components/menu/trigger.d.ts +1 -0
- package/dist/components/menu/trigger.js +2 -0
- package/dist/components/menu/trigger.js.map +1 -0
- package/dist/components/menu/types.d.ts +1 -1
- package/dist/components/notice/index.d.ts +1 -5
- package/dist/components/notice/index.js +1 -1
- package/dist/components/notice/index.js.map +1 -1
- package/dist/components/notice/list.d.ts +16 -0
- package/dist/components/notice/list.js +4 -0
- package/dist/components/notice/list.js.map +1 -0
- package/dist/components/notice/notice-icon.d.ts +16 -0
- package/dist/components/notice/notice-icon.js +2 -0
- package/dist/components/notice/notice-icon.js.map +1 -0
- package/dist/components/notice/styles.d.ts +3 -3
- package/dist/components/notice/utils.d.ts +3 -0
- package/dist/components/notice/utils.js +4 -0
- package/dist/components/notice/utils.js.map +1 -0
- package/dist/components/options/context.d.ts +8 -0
- package/dist/components/options/context.js +2 -0
- package/dist/components/options/context.js.map +1 -0
- package/dist/components/options/index.d.ts +22 -51
- package/dist/components/options/index.js +1 -1
- package/dist/components/options/index.js.map +1 -1
- package/dist/components/options/item-content.d.ts +9 -0
- package/dist/components/options/item-content.js +2 -0
- package/dist/components/options/item-content.js.map +1 -0
- package/dist/components/options/item-description.d.ts +9 -0
- package/dist/components/options/item-description.js +4 -0
- package/dist/components/options/item-description.js.map +1 -0
- package/dist/components/options/item-label.d.ts +9 -0
- package/dist/components/options/item-label.js +2 -0
- package/dist/components/options/item-label.js.map +1 -0
- package/dist/components/options/item.d.ts +9 -0
- package/dist/components/options/item.js +4 -0
- package/dist/components/options/item.js.map +1 -0
- package/dist/components/options/section.d.ts +9 -0
- package/dist/components/options/section.js +2 -0
- package/dist/components/options/section.js.map +1 -0
- package/dist/components/options/styles.d.ts +3 -3
- package/dist/components/options/styles.js +1 -1
- package/dist/components/options/styles.js.map +1 -1
- package/dist/components/options/types.d.ts +2 -2
- package/dist/components/popover/body.d.ts +8 -0
- package/dist/components/popover/body.js +4 -0
- package/dist/components/popover/body.js.map +1 -0
- package/dist/components/popover/content.d.ts +8 -0
- package/dist/components/popover/content.js +2 -0
- package/dist/components/popover/content.js.map +1 -0
- package/dist/components/popover/footer.d.ts +9 -0
- package/dist/components/popover/footer.js +4 -0
- package/dist/components/popover/footer.js.map +1 -0
- package/dist/components/popover/index.d.ts +16 -39
- package/dist/components/popover/index.js +1 -3
- package/dist/components/popover/index.js.map +1 -1
- package/dist/components/popover/title.d.ts +8 -0
- package/dist/components/popover/title.js +4 -0
- package/dist/components/popover/title.js.map +1 -0
- package/dist/components/popover/trigger.d.ts +8 -0
- package/dist/components/popover/trigger.js +2 -0
- package/dist/components/popover/trigger.js.map +1 -0
- package/dist/components/popover/types.d.ts +1 -1
- package/dist/components/query-builder/action-element.js +1 -1
- package/dist/components/query-builder/action-element.js.map +1 -1
- package/dist/components/query-builder/actions.d.ts +8 -0
- package/dist/components/query-builder/actions.js +2 -0
- package/dist/components/query-builder/actions.js.map +1 -0
- package/dist/components/query-builder/combinator-selector.d.ts +6 -0
- package/dist/components/query-builder/combinator-selector.js +4 -0
- package/dist/components/query-builder/combinator-selector.js.map +1 -0
- package/dist/components/query-builder/index.d.ts +1 -21
- package/dist/components/query-builder/index.js +3 -1
- package/dist/components/query-builder/index.js.map +1 -1
- package/dist/components/query-builder/{group.js → rule-group.js} +2 -2
- package/dist/components/query-builder/rule-group.js.map +1 -0
- package/dist/components/query-builder/rule.js +1 -3
- package/dist/components/query-builder/rule.js.map +1 -1
- package/dist/components/query-builder/styles.d.ts +152 -0
- package/dist/components/query-builder/styles.js +2 -0
- package/dist/components/query-builder/styles.js.map +1 -0
- package/dist/components/query-builder/utils.d.ts +1 -10
- package/dist/components/query-builder/utils.js +1 -1
- package/dist/components/query-builder/utils.js.map +1 -1
- package/dist/components/query-builder/value-editor.js +1 -1
- package/dist/components/query-builder/value-editor.js.map +1 -1
- package/dist/components/query-builder/value-selector.js +1 -1
- package/dist/components/query-builder/value-selector.js.map +1 -1
- package/dist/components/radio/context.d.ts +13 -0
- package/dist/components/radio/context.js +4 -0
- package/dist/components/radio/context.js.map +1 -0
- package/dist/components/radio/group.d.ts +15 -0
- package/dist/components/radio/group.js +4 -0
- package/dist/components/radio/group.js.map +1 -0
- package/dist/components/radio/index.d.ts +10 -19
- package/dist/components/radio/index.js +1 -3
- package/dist/components/radio/index.js.map +1 -1
- package/dist/components/radio/styles.js +1 -1
- package/dist/components/radio/styles.js.map +1 -1
- package/dist/components/radio/types.d.ts +1 -1
- package/dist/components/search-field/context.d.ts +26 -0
- package/dist/components/search-field/context.js +4 -0
- package/dist/components/search-field/context.js.map +1 -0
- package/dist/components/search-field/index.d.ts +4 -20
- package/dist/components/search-field/index.js +1 -1
- package/dist/components/search-field/index.js.map +1 -1
- package/dist/components/select-field/context.d.ts +15 -0
- package/dist/components/select-field/context.js +4 -0
- package/dist/components/select-field/context.js.map +1 -0
- package/dist/components/select-field/index.d.ts +12 -21
- package/dist/components/select-field/index.js +1 -1
- package/dist/components/select-field/index.js.map +1 -1
- package/dist/components/select-field/styles.d.ts +9 -3
- package/dist/components/select-field/styles.js +1 -1
- package/dist/components/select-field/styles.js.map +1 -1
- package/dist/components/select-field/types.d.ts +2 -2
- package/dist/components/sidenav/avatar.d.ts +16 -0
- package/dist/components/sidenav/avatar.js +4 -0
- package/dist/components/sidenav/avatar.js.map +1 -0
- package/dist/components/sidenav/content.d.ts +16 -0
- package/dist/components/sidenav/content.js +2 -0
- package/dist/components/sidenav/content.js.map +1 -0
- package/dist/components/sidenav/context.d.ts +10 -0
- package/dist/components/sidenav/context.js +4 -0
- package/dist/components/sidenav/context.js.map +1 -0
- package/dist/components/sidenav/footer.d.ts +16 -0
- package/dist/components/sidenav/footer.js +4 -0
- package/dist/components/sidenav/footer.js.map +1 -0
- package/dist/components/sidenav/header.d.ts +16 -0
- package/dist/components/sidenav/header.js +4 -0
- package/dist/components/sidenav/header.js.map +1 -0
- package/dist/components/sidenav/index.d.ts +28 -76
- package/dist/components/sidenav/index.js +1 -3
- package/dist/components/sidenav/index.js.map +1 -1
- package/dist/components/sidenav/item.d.ts +16 -0
- package/dist/components/sidenav/item.js +4 -0
- package/dist/components/sidenav/item.js.map +1 -0
- package/dist/components/sidenav/link.d.ts +16 -0
- package/dist/components/sidenav/link.js +4 -0
- package/dist/components/sidenav/link.js.map +1 -0
- package/dist/components/sidenav/menu-item.d.ts +16 -0
- package/dist/components/sidenav/menu-item.js +2 -0
- package/dist/components/sidenav/menu-item.js.map +1 -0
- package/dist/components/sidenav/menu.d.ts +16 -0
- package/dist/components/sidenav/menu.js +4 -0
- package/dist/components/sidenav/menu.js.map +1 -0
- package/dist/components/sidenav/styles.d.ts +9 -9
- package/dist/components/sidenav/trigger.d.ts +16 -0
- package/dist/components/sidenav/trigger.js +4 -0
- package/dist/components/sidenav/trigger.js.map +1 -0
- package/dist/components/sidenav/types.d.ts +1 -1
- package/dist/components/skeleton/index.d.ts +0 -3
- package/dist/components/skeleton/index.js +1 -1
- package/dist/components/skeleton/index.js.map +1 -1
- package/dist/components/slider/index.d.ts +1 -1
- package/dist/components/slider/index.js +1 -1
- package/dist/components/slider/index.js.map +1 -1
- package/dist/components/slider/styles.d.ts +3 -3
- package/dist/components/slider/styles.js +1 -1
- package/dist/components/slider/styles.js.map +1 -1
- package/dist/components/switch/context.d.ts +20 -0
- package/dist/components/switch/context.js +4 -0
- package/dist/components/switch/context.js.map +1 -0
- package/dist/components/switch/index.d.ts +3 -13
- package/dist/components/switch/index.js +1 -1
- package/dist/components/switch/index.js.map +1 -1
- package/dist/components/switch/styles.js +1 -1
- package/dist/components/switch/styles.js.map +1 -1
- package/dist/components/table/body.js +2 -0
- package/dist/components/table/body.js.map +1 -0
- package/dist/components/table/cell.js +2 -0
- package/dist/components/table/cell.js.map +1 -0
- package/dist/components/table/constants/table.d.ts +17 -0
- package/dist/components/table/constants/table.js +2 -0
- package/dist/components/table/constants/table.js.map +1 -0
- package/dist/components/table/context.js +1 -1
- package/dist/components/table/context.js.map +1 -1
- package/dist/components/table/{table-header-cell.d.ts → header-cell.d.ts} +2 -2
- package/dist/components/table/header-cell.js +2 -0
- package/dist/components/table/header-cell.js.map +1 -0
- package/dist/components/table/header.js +2 -0
- package/dist/components/table/header.js.map +1 -0
- package/dist/components/table/index.d.ts +1 -14
- package/dist/components/table/index.js +1 -1
- package/dist/components/table/index.js.map +1 -1
- package/dist/components/table/row.js +2 -0
- package/dist/components/table/row.js.map +1 -0
- package/dist/components/table/types.d.ts +25 -2
- package/dist/components/tabs/context.d.ts +20 -0
- package/dist/components/tabs/context.js +4 -0
- package/dist/components/tabs/context.js.map +1 -0
- package/dist/components/tabs/index.d.ts +25 -51
- package/dist/components/tabs/index.js +1 -3
- package/dist/components/tabs/index.js.map +1 -1
- package/dist/components/tabs/list.d.ts +11 -0
- package/dist/components/tabs/list.js +4 -0
- package/dist/components/tabs/list.js.map +1 -0
- package/dist/components/tabs/panel.d.ts +11 -0
- package/dist/components/tabs/panel.js +2 -0
- package/dist/components/tabs/panel.js.map +1 -0
- package/dist/components/tabs/tab.d.ts +11 -0
- package/dist/components/tabs/tab.js +4 -0
- package/dist/components/tabs/tab.js.map +1 -0
- package/dist/components/text-area-field/context.d.ts +20 -0
- package/dist/components/text-area-field/context.js +4 -0
- package/dist/components/text-area-field/context.js.map +1 -0
- package/dist/components/text-area-field/index.d.ts +3 -13
- package/dist/components/text-area-field/index.js +1 -1
- package/dist/components/text-area-field/index.js.map +1 -1
- package/dist/components/text-field/context.d.ts +17 -0
- package/dist/components/text-field/context.js +4 -0
- package/dist/components/text-field/context.js.map +1 -0
- package/dist/components/text-field/index.d.ts +4 -13
- package/dist/components/text-field/index.js +1 -1
- package/dist/components/text-field/index.js.map +1 -1
- package/dist/components/time-field/index.js +1 -1
- package/dist/components/time-field/index.js.map +1 -1
- package/dist/components/tooltip/context.d.ts +7 -0
- package/dist/components/tooltip/context.js +4 -0
- package/dist/components/tooltip/context.js.map +1 -0
- package/dist/components/tooltip/index.d.ts +10 -19
- package/dist/components/tooltip/index.js +1 -1
- package/dist/components/tooltip/index.js.map +1 -1
- package/dist/components/tooltip/trigger.d.ts +8 -0
- package/dist/components/tooltip/trigger.js +4 -0
- package/dist/components/tooltip/trigger.js.map +1 -0
- package/dist/components/tooltip/types.d.ts +1 -1
- package/dist/components/tree/context.d.ts +18 -0
- package/dist/components/tree/context.js +4 -0
- package/dist/components/tree/context.js.map +1 -0
- package/dist/components/tree/index.d.ts +11 -50
- package/dist/components/tree/index.js +1 -1
- package/dist/components/tree/index.js.map +1 -1
- package/dist/components/tree/item-actions.d.ts +13 -0
- package/dist/components/tree/item-actions.js +2 -0
- package/dist/components/tree/item-actions.js.map +1 -0
- package/dist/components/tree/item-content.d.ts +17 -0
- package/dist/components/tree/item-content.js +2 -0
- package/dist/components/tree/item-content.js.map +1 -0
- package/dist/components/tree/item-description.d.ts +11 -0
- package/dist/components/tree/item-description.js +2 -0
- package/dist/components/tree/item-description.js.map +1 -0
- package/dist/components/tree/item-label.d.ts +11 -0
- package/dist/components/tree/item-label.js +2 -0
- package/dist/components/tree/item-label.js.map +1 -0
- package/dist/components/tree/item-prefix-icon.d.ts +12 -0
- package/dist/components/tree/item-prefix-icon.js +2 -0
- package/dist/components/tree/item-prefix-icon.js.map +1 -0
- package/dist/components/tree/item.d.ts +17 -0
- package/dist/components/tree/item.js +4 -0
- package/dist/components/tree/item.js.map +1 -0
- package/dist/components/tree/lines.d.ts +8 -0
- package/dist/components/tree/lines.js +2 -0
- package/dist/components/tree/lines.js.map +1 -0
- package/dist/components/tree/styles.js +1 -1
- package/dist/components/tree/styles.js.map +1 -1
- package/dist/components/tree/types.d.ts +1 -1
- package/dist/components/view-stack/context.d.ts +31 -0
- package/dist/components/view-stack/context.js +4 -0
- package/dist/components/view-stack/context.js.map +1 -0
- package/dist/components/view-stack/index.d.ts +12 -38
- package/dist/components/view-stack/index.js +1 -1
- package/dist/components/view-stack/index.js.map +1 -1
- package/dist/components/view-stack/trigger.d.ts +16 -0
- package/dist/components/view-stack/trigger.js +2 -0
- package/dist/components/view-stack/trigger.js.map +1 -0
- package/dist/components/view-stack/view.d.ts +16 -0
- package/dist/components/view-stack/view.js +4 -0
- package/dist/components/view-stack/view.js.map +1 -0
- package/dist/icons/catalog.d.ts +14 -0
- package/dist/icons/catalog.js +1 -1
- package/dist/icons/catalog.js.map +1 -1
- package/dist/index.css +0 -49
- package/dist/index.d.ts +143 -44
- package/dist/index.js +1 -1
- package/dist/metafile-esm.json +1 -1
- package/dist/providers/theme-provider.js +1 -1
- package/dist/providers/theme-provider.js.map +1 -1
- package/dist/styles.css +965 -243
- package/dist/tokens/themes.css +1 -1
- package/dist/tokens/themes.d.ts +1 -2
- package/dist/tokens/tokens.js +1 -1
- package/dist/tokens/tokens.js.map +1 -1
- package/package.json +98 -95
- package/dist/components/query-builder/group.js.map +0 -1
- package/dist/components/table/table-body.js +0 -2
- package/dist/components/table/table-body.js.map +0 -1
- package/dist/components/table/table-cell.js +0 -2
- package/dist/components/table/table-cell.js.map +0 -1
- package/dist/components/table/table-header-cell.js +0 -2
- package/dist/components/table/table-header-cell.js.map +0 -1
- package/dist/components/table/table-header.js +0 -2
- package/dist/components/table/table-header.js.map +0 -1
- package/dist/components/table/table-row.js +0 -2
- package/dist/components/table/table-row.js.map +0 -1
- package/dist/lib/react.d.ts +0 -59
- package/dist/lib/react.js +0 -9
- package/dist/lib/react.js.map +0 -1
- /package/dist/components/query-builder/{group.d.ts → rule-group.d.ts} +0 -0
- /package/dist/components/table/{table-body.d.ts → body.d.ts} +0 -0
- /package/dist/components/table/{table-cell.d.ts → cell.d.ts} +0 -0
- /package/dist/components/table/{table-header.d.ts → header.d.ts} +0 -0
- /package/dist/components/table/{table-row.d.ts → row.d.ts} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
2
|
+
import { PopoverProps } from './types.js';
|
|
3
|
+
import 'react';
|
|
4
4
|
import 'react-aria-components';
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -13,54 +13,31 @@ import 'react-aria-components';
|
|
|
13
13
|
* @example
|
|
14
14
|
* // Basic popover
|
|
15
15
|
* <Popover>
|
|
16
|
-
* <
|
|
16
|
+
* <PopoverTrigger>
|
|
17
17
|
* <Button>Show Info</Button>
|
|
18
|
-
* </
|
|
19
|
-
* <
|
|
20
|
-
* <
|
|
18
|
+
* </PopoverTrigger>
|
|
19
|
+
* <PopoverContent>
|
|
20
|
+
* <PopoverBody>
|
|
21
21
|
* <p>Additional information appears here</p>
|
|
22
|
-
* </
|
|
23
|
-
* </
|
|
22
|
+
* </PopoverBody>
|
|
23
|
+
* </PopoverContent>
|
|
24
24
|
* </Popover>
|
|
25
25
|
*
|
|
26
26
|
* @example
|
|
27
27
|
* // Popover with title and actions
|
|
28
28
|
* <Popover placement="top">
|
|
29
|
-
* <
|
|
29
|
+
* <PopoverTrigger>
|
|
30
30
|
* <Button>Options</Button>
|
|
31
|
-
* </
|
|
32
|
-
* <
|
|
33
|
-
* <
|
|
34
|
-
* <
|
|
31
|
+
* </PopoverTrigger>
|
|
32
|
+
* <PopoverContent>
|
|
33
|
+
* <PopoverTitle>Quick Actions</PopoverTitle>
|
|
34
|
+
* <PopoverBody>
|
|
35
35
|
* <Button>Edit</Button>
|
|
36
36
|
* <Button>Delete</Button>
|
|
37
|
-
* </
|
|
38
|
-
* </
|
|
37
|
+
* </PopoverBody>
|
|
38
|
+
* </PopoverContent>
|
|
39
39
|
* </Popover>
|
|
40
40
|
*/
|
|
41
|
-
declare
|
|
42
|
-
({ placement, children, ...rest }: PopoverProps): react_jsx_runtime.JSX.Element;
|
|
43
|
-
displayName: string;
|
|
44
|
-
Title: {
|
|
45
|
-
({ children, className, ...rest }: PopoverTitleProps): react_jsx_runtime.JSX.Element;
|
|
46
|
-
displayName: string;
|
|
47
|
-
};
|
|
48
|
-
Content: {
|
|
49
|
-
({ children, className, ...rest }: PopoverContentProps): react_jsx_runtime.JSX.Element;
|
|
50
|
-
displayName: string;
|
|
51
|
-
};
|
|
52
|
-
Body: {
|
|
53
|
-
({ children, className }: PopoverBodyProps): react_jsx_runtime.JSX.Element;
|
|
54
|
-
displayName: string;
|
|
55
|
-
};
|
|
56
|
-
Footer: {
|
|
57
|
-
({ children, className, }: {
|
|
58
|
-
children: ReactNode;
|
|
59
|
-
className?: string;
|
|
60
|
-
}): react_jsx_runtime.JSX.Element;
|
|
61
|
-
displayName: string;
|
|
62
|
-
};
|
|
63
|
-
Trigger: ({ children, ...props }: PopoverTriggerProps) => react_jsx_runtime.JSX.Element;
|
|
64
|
-
};
|
|
41
|
+
declare function Popover({ placement, children, ...rest }: PopoverProps): react_jsx_runtime.JSX.Element;
|
|
65
42
|
|
|
66
43
|
export { Popover };
|
|
@@ -1,4 +1,2 @@
|
|
|
1
|
-
'
|
|
2
|
-
|
|
3
|
-
import {jsx}from'react/jsx-runtime';import'client-only';import {DialogTrigger,Popover,Dialog,Heading,Pressable}from'react-aria-components';import {PopoverStyles}from'./styles.js';const {content:c,body:y,title:N,footer:T}=PopoverStyles(),e=({placement:r="bottom",children:o,...p})=>jsx(DialogTrigger,{...p,children:o});e.displayName="Popover";const A=({children:r,...o})=>jsx(Pressable,{...o,children:r});e.displayName="Popover.Trigger";const i=({children:r,className:o,...p})=>jsx(Popover,{className:c({className:o}),...p,children:jsx(Dialog,{children:r})});i.displayName="Popover.Content";const a=({children:r,className:o,...p})=>jsx(Heading,{slot:"title",className:N({className:o}),...p,children:r});a.displayName="Popover.Title";const s=({children:r,className:o})=>jsx("div",{className:y({className:o}),children:r});s.displayName="Popover.Body";const P=({children:r,className:o})=>jsx("div",{className:T({className:o}),children:r});P.displayName="Popover.Footer",e.Title=a,e.Content=i,e.Body=s,e.Footer=P,e.Trigger=A;export{e as Popover};//# sourceMappingURL=index.js.map
|
|
1
|
+
import {jsx}from'react/jsx-runtime';import'client-only';import {DialogTrigger}from'react-aria-components';function a({placement:p="bottom",children:o,...r}){return jsx(DialogTrigger,{...r,children:o})}export{a as Popover};//# sourceMappingURL=index.js.map
|
|
4
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/popover/index.tsx"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/popover/index.tsx"],"names":["Popover","placement","children","rest","jsx","AriaDialogTrigger"],"mappings":"0GAqDO,SAASA,CAAAA,CAAQ,CACtB,SAAA,CAAAC,CAAAA,CAAY,QAAA,CACZ,QAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CAAiB,CACf,OAAOC,GAAAA,CAACC,aAAAA,CAAA,CAAmB,GAAGF,CAAAA,CAAO,QAAA,CAAAD,CAAAA,CAAS,CAChD","file":"index.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\n'use client';\n\nimport 'client-only';\nimport { DialogTrigger as AriaDialogTrigger } from 'react-aria-components';\nimport type { PopoverProps } from './types';\n\n/**\n * Popover - A floating content container positioned relative to a trigger element\n *\n * Provides accessible popover functionality with flexible positioning and content\n * organization. Perfect for contextual information, menus, or supplementary content\n * that appears on demand without interrupting the user's workflow.\n *\n * @example\n * // Basic popover\n * <Popover>\n * <PopoverTrigger>\n * <Button>Show Info</Button>\n * </PopoverTrigger>\n * <PopoverContent>\n * <PopoverBody>\n * <p>Additional information appears here</p>\n * </PopoverBody>\n * </PopoverContent>\n * </Popover>\n *\n * @example\n * // Popover with title and actions\n * <Popover placement=\"top\">\n * <PopoverTrigger>\n * <Button>Options</Button>\n * </PopoverTrigger>\n * <PopoverContent>\n * <PopoverTitle>Quick Actions</PopoverTitle>\n * <PopoverBody>\n * <Button>Edit</Button>\n * <Button>Delete</Button>\n * </PopoverBody>\n * </PopoverContent>\n * </Popover>\n */\nexport function Popover({\n placement = 'bottom',\n children,\n ...rest\n}: PopoverProps) {\n return <AriaDialogTrigger {...rest}>{children}</AriaDialogTrigger>;\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { PopoverTitleProps } from './types.js';
|
|
3
|
+
import 'react';
|
|
4
|
+
import 'react-aria-components';
|
|
5
|
+
|
|
6
|
+
declare function PopoverTitle({ children, className, ...rest }: PopoverTitleProps): react_jsx_runtime.JSX.Element;
|
|
7
|
+
|
|
8
|
+
export { PopoverTitle };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import {jsx}from'react/jsx-runtime';import'client-only';import {Heading}from'react-aria-components';import {PopoverStyles}from'./styles.js';const{title:p}=PopoverStyles();function n({children:o,className:e,...t}){return jsx(Heading,{slot:"title",className:p({className:e}),...t,children:o})}export{n as PopoverTitle};//# sourceMappingURL=title.js.map
|
|
4
|
+
//# sourceMappingURL=title.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/popover/title.tsx"],"names":["PopoverStyles","i","rest","l","r"],"mappings":"4IAmBA,KAAQ,CAAA,KAAUA,CAAAA,CAAc,CAAA,CAEzBC,aAAA,EAAA,CAAA,SACL,CAAA,CAAA,CAAA,QACA,CAAA,CAAA,CAAA,WACGC,CACL,GACE,CAAA,CAAA,CAAA,CAAA,OACGC,GAAY,CAAAC,OAAA,CAAA,CAAA,IAAK,CAAA,iBAA2B,cAAe,CAAA,CAAA,CAAGF,CAAAA,GAC5D,CAAA,CAAA,QAGP,CAAA,CAAA,CAAA,CAAA","file":"title.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\n'use client';\n\nimport 'client-only';\nimport { Heading as AriaHeading } from 'react-aria-components';\nimport { PopoverStyles } from './styles';\nimport type { PopoverTitleProps } from './types';\n\nconst { title } = PopoverStyles();\n\nexport function PopoverTitle({\n children,\n className,\n ...rest\n}: PopoverTitleProps) {\n return (\n <AriaHeading slot='title' className={title({ className })} {...rest}>\n {children}\n </AriaHeading>\n );\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { PopoverTriggerProps } from './types.js';
|
|
3
|
+
import 'react';
|
|
4
|
+
import 'react-aria-components';
|
|
5
|
+
|
|
6
|
+
declare function PopoverTrigger({ children, ...props }: PopoverTriggerProps): react_jsx_runtime.JSX.Element;
|
|
7
|
+
|
|
8
|
+
export { PopoverTrigger };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/popover/trigger.tsx"],"names":["PopoverTrigger","children","props","jsx","Pressable"],"mappings":"sGAkBO,SAASA,CAAAA,CAAe,CAAE,QAAA,CAAAC,EAAU,GAAGC,CAAM,CAAA,CAAwB,CAC1E,OAAOC,GAAAA,CAACC,SAAAA,CAAA,CAAW,GAAGF,CAAAA,CAAQ,QAAA,CAAAD,CAAAA,CAAS,CACzC","file":"trigger.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\n'use client';\n\nimport 'client-only';\nimport { Pressable } from 'react-aria-components';\nimport type { PopoverTriggerProps } from './types';\n\nexport function PopoverTrigger({ children, ...props }: PopoverTriggerProps) {\n return <Pressable {...props}>{children}</Pressable>;\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReactNode, ComponentProps } from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { PopoverProps as PopoverProps$1, PopoverRenderProps, HeadingProps, Pressable } from 'react-aria-components';
|
|
3
3
|
|
|
4
4
|
interface PopoverProps {
|
|
5
5
|
placement?: 'left' | 'right' | 'top' | 'bottom';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import {jsx}from'react/jsx-runtime';import'client-only';import {
|
|
3
|
+
import {jsx}from'react/jsx-runtime';import'client-only';import {useMemo}from'react';import {Button}from'../button/index.js';function l({disabled:o,disabledTranslation:t,title:e,handleOnClick:r}){const i=useMemo(()=>t?.title&&o?t.title:e,[t?.title,o,e]);return jsx(Button,{isDisabled:o&&!t,onPress:()=>r(),size:"small",variant:"outline",children:i})}export{l as ActionElement};//# sourceMappingURL=action-element.js.map
|
|
4
4
|
//# sourceMappingURL=action-element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/query-builder/action-element.tsx"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/query-builder/action-element.tsx"],"names":["ActionElement","disabled","titleProp","title","useMemo","disabledTranslation","m","jsx","Button","n","u"],"mappings":"4HAmBgBA,SACd,CAAA,CAAAC,CAAAA,QACA,CAAA,CAAA,CAAA,mBACOC,CACP,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,aAEA,CAAMC,CAAAA,CAAQC,CAAAA,CACZ,MACEC,CAAqB,CAAAC,OAAA,CAAA,IAASL,CAAAA,EAC1BI,KAAoB,EACpBH,CAAAA,CACN,CAACG,CAAAA,KAAqB,CAAA,CAAA,CAAOJ,CAAAA,CAAUC,EACzC,KAEA,CAAA,CAAA,CAAA,CACEK,CAAAA,CAACC,CAAAA,OACCC,GAAA,CAAAC,MAAA,CAAA,CAAA,UACA,CAAA,CAAA,EAAA,CAAS,CAAA,CAAA,OACT,CAAA,IAAK,CAAA,EAAA,CAAA,IACL,CAAA,OAAQ,CAAA,OAAA,CAEP,SAAAP,CAAAA,QAGP,CAAA,CAAA,CAAA,CAAA","file":"action-element.js","sourcesContent":["// __private-exports\n/*\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';\n\nimport 'client-only';\nimport { useMemo } from 'react';\nimport { Button } from '../button';\nimport type { ActionProps } from 'react-querybuilder';\n\nexport function ActionElement({\n disabled,\n disabledTranslation,\n title: titleProp,\n handleOnClick,\n}: ActionProps) {\n const title = useMemo(\n () =>\n disabledTranslation?.title && disabled\n ? disabledTranslation.title\n : titleProp,\n [disabledTranslation?.title, disabled, titleProp],\n );\n\n return (\n <Button\n isDisabled={disabled && !disabledTranslation}\n onPress={() => handleOnClick()}\n size='small'\n variant='outline'\n >\n {title}\n </Button>\n );\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ActionProps } from 'react-querybuilder';
|
|
3
|
+
|
|
4
|
+
declare function RemoveRuleAction({ handleOnClick, className, ...rest }: ActionProps): react_jsx_runtime.JSX.Element;
|
|
5
|
+
declare function LockAction({ handleOnClick, className, ...rest }: ActionProps): react_jsx_runtime.JSX.Element;
|
|
6
|
+
declare function CloneAction({ handleOnClick, className, ...rest }: ActionProps): react_jsx_runtime.JSX.Element;
|
|
7
|
+
|
|
8
|
+
export { CloneAction, LockAction, RemoveRuleAction };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {jsx}from'react/jsx-runtime';import'client-only';import {Delete,LockFill,Duplicate}from'@accelint/icons';import {Button}from'../button/index.js';import {Icon}from'../icon/index.js';function f({handleOnClick:t,className:n,...r}){return jsx(Button,{size:"small",variant:"icon",onPress:()=>t(),className:n,...r,children:jsx(Icon,{children:jsx(Delete,{})})})}function A({handleOnClick:t,className:n,...r}){return jsx(Button,{size:"small",variant:"icon",onPress:()=>t(),className:n,...r,children:jsx(Icon,{children:jsx(LockFill,{})})})}function P({handleOnClick:t,className:n,...r}){return jsx(Button,{size:"small",variant:"icon",onPress:()=>t(),className:n,...r,children:jsx(Icon,{children:jsx(Duplicate,{})})})}export{P as CloneAction,A as LockAction,f as RemoveRuleAction};//# sourceMappingURL=actions.js.map
|
|
2
|
+
//# sourceMappingURL=actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/query-builder/actions.tsx"],"names":["Button","o","e","handleOnClick","className","Icon","i","LockAction","rest","CloneAction","s"],"mappings":"4LAoBE,SACA,CAAA,CAAA,CAAA,cAEc,CACd,CAAA,SACGA,CAAA,CACC,CAAA,GAAA,CAAK,CAAA,CAAA,CAAA,OACLC,GAAA,CAAAC,MAAA,CAAA,CAAA,IAAQ,CAAA,OACR,CAAA,OAAeC,CAAAA,MACf,CAAA,OAAWC,CACV,KAED,EAAA,CAAA,SAACC,CAAA,CACC,CAAA,GAAA,CAAA,CAAA,QAAC,CAAOJ,IACVK,IAAA,CACF,CAEJ,QAEO,CAAAL,GAASM,CAAAA,MAAW,CAAE,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,yBAAkC,CAAgB,CAC7E,CAAA,SACGP,CAAA,CACC,CAAA,GAAA,CAAK,CAAA,CAAA,CAAA,OACLC,GAAA,CAAAC,MAAA,CAAA,CAAA,IAAQ,CAAA,OACR,CAAA,OAAeC,CAAAA,MACf,CAAA,OAAWC,CACV,IAAGI,CAEJ,EAAA,CAAA,SAACH,CAAA,CACC,cAAC,CAASJ,GAAA,CACZK,IAAA,CACF,CAEJ,QAEO,CAAAL,GAASQ,SAAY,CAC1B,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SACA,CAAA,CAAA,CAAA,aAEF,CAAgB,CACd,CAAA,SACGT,CAAA,CACC,CAAA,GAAA,CAAK,CAAA,CAAA,CAAA,OACLC,GAAA,CAAAC,MAAA,CAAA,CAAA,YACA,CAAA,OAAeC,CAAAA,MACf,CAAA,OAAWC,CACV,IAAGI,CAEJ,YAACH,CAAA,CACC,CAAA,GAAA,CAAA,CAAA,QAAC,CAAUJ,GAAA,CACbK,KACF,CAEJ,QAAA,CAAAL,GAAA,CAAAS,SAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA","file":"actions.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'use client';\n\nimport 'client-only';\nimport { Delete, Duplicate, LockFill } from '@accelint/icons';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport type { ActionProps } from 'react-querybuilder';\n\nexport function RemoveRuleAction({\n handleOnClick,\n className,\n ...rest\n}: ActionProps) {\n return (\n <Button\n size='small'\n variant='icon'\n onPress={() => handleOnClick()}\n className={className}\n {...rest}\n >\n <Icon>\n <Delete />\n </Icon>\n </Button>\n );\n}\n\nexport function LockAction({ handleOnClick, className, ...rest }: ActionProps) {\n return (\n <Button\n size='small'\n variant='icon'\n onPress={() => handleOnClick()}\n className={className}\n {...rest}\n >\n <Icon>\n <LockFill />\n </Icon>\n </Button>\n );\n}\n\nexport function CloneAction({\n handleOnClick,\n className,\n ...rest\n}: ActionProps) {\n return (\n <Button\n size='small'\n variant='icon'\n onPress={() => handleOnClick()}\n className={className}\n {...rest}\n >\n <Icon>\n <Duplicate />\n </Icon>\n </Button>\n );\n}\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { CombinatorSelectorProps } from 'react-querybuilder';
|
|
3
|
+
|
|
4
|
+
declare function CombinatorSelector({ options, value, handleOnChange, }: CombinatorSelectorProps): react_jsx_runtime.JSX.Element;
|
|
5
|
+
|
|
6
|
+
export { CombinatorSelector };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import {jsxs,jsx}from'react/jsx-runtime';import'client-only';import {Label}from'../label/index.js';import {Radio}from'../radio/index.js';import {RadioGroup}from'../radio/group.js';import {Tooltip}from'../tooltip/index.js';import {TooltipTrigger}from'../tooltip/trigger.js';const u={AND:"All rules below must be true for a match",OR:"One of the rules below must be true for a match"};function T({options:e,value:l,handleOnChange:a}){return jsxs(RadioGroup,{value:l,onChange:a,orientation:"horizontal",style:{flexWrap:"nowrap"},children:[jsx(Label,{children:"Combinator"}),e.map(o=>jsx(Radio,{value:o.label,children:jsxs(TooltipTrigger,{children:[jsx("button",{type:"button",children:o.label}),jsx(Tooltip,{placement:"top",children:u[o.label]})]})},o.label))]})}export{T as CombinatorSelector};//# sourceMappingURL=combinator-selector.js.map
|
|
4
|
+
//# sourceMappingURL=combinator-selector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/query-builder/combinator-selector.tsx"],"names":["jsxs","RadioGroup","value","t","p","jsx","Label","option","Radio","TooltipTrigger","b","r","Tooltip","operatorDescriptions","n"],"mappings":"iRAsBO,MAAA,CAAA,CAAA,CAAA,GAAA,CAAA,0CACD,CAAA,EAAA,CAAA,iDAMJ,CAAA,CAAA,SACF,CAA4B,CAC1B,QACEA,CAACC,CAAAA,CAAA,KACC,CAAA,CAAOC,CAAAA,cAEP,CAAA,CAAA,CAAA,CAAA,CAAA,OAAYC,IAAA,CAAAC,UAAA,CAAA,CAAA,KAAA,CACZ,UAAS,CAAA,CAAA,CAAA,WAAmB,CAAA,YAE5BC,CAACC,KAAM,CAAA,CAAA,QAAA,CAAA,QAAA,CAAU,SACHC,CAAAA,CACZF,GAAAA,CAACG,KAAAA,CAAA,CAAyB,QAAc,CAAA,YACtC,CAAA,CAAAR,CAAAA,CAACS,CAAAA,kBACCJ,KAAC,CAAA,CAAA,CAAA,cAAY,CAAAF,IAAA,CAAAO,cAAU,CAAA,CAAA,SAAO,CAAAC,GAAA,CAAA,QAC7BC,CAAA,CAAQ,IAAA,CAAA,iBACN,CAAA,CAAA,CAAAC,KAA4B,CAAA,CAAA,CAAAF,GAAK,CAAAG,OACpC,CAAA,CAAA,SALe,CAAA,KASvB,CAEJ,QAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA","file":"combinator-selector.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'use client';\n\nimport 'client-only';\nimport { Label } from '../label';\nimport { Radio } from '../radio';\nimport { RadioGroup } from '../radio/group';\nimport { Tooltip } from '../tooltip';\nimport { TooltipTrigger } from '../tooltip/trigger';\nimport type { CombinatorSelectorProps } from 'react-querybuilder';\n\nconst operatorDescriptions: Record<string, string> = {\n AND: 'All rules below must be true for a match',\n OR: 'One of the rules below must be true for a match',\n};\n\nexport function CombinatorSelector({\n options,\n value,\n handleOnChange,\n}: CombinatorSelectorProps) {\n return (\n <RadioGroup\n value={value}\n onChange={handleOnChange}\n orientation='horizontal'\n style={{ flexWrap: 'nowrap' }}\n >\n <Label>Combinator</Label>\n {options.map((option) => (\n <Radio key={option.label} value={option.label}>\n <TooltipTrigger>\n <button type='button'>{option.label}</button>\n <Tooltip placement='top'>\n {operatorDescriptions[option.label]}\n </Tooltip>\n </TooltipTrigger>\n </Radio>\n ))}\n </RadioGroup>\n );\n}\n"]}
|
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
import { ValueSelector } from './value-selector.js';
|
|
2
|
-
import { ValueEditor } from './value-editor.js';
|
|
3
|
-
import * as react_querybuilder from 'react-querybuilder';
|
|
4
|
-
import { CombinatorSelectorProps, ActionProps } from 'react-querybuilder';
|
|
5
|
-
import { RuleGroup, RuleGroupHeaderComponent, RuleGroupFooterComponent } from './group.js';
|
|
6
|
-
import { Rule } from './rule.js';
|
|
7
|
-
import { ActionElement } from './action-element.js';
|
|
8
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
9
2
|
import { QueryBuilderProps } from './types.js';
|
|
10
3
|
import 'react';
|
|
4
|
+
import 'react-querybuilder';
|
|
11
5
|
import 'type-fest';
|
|
12
6
|
|
|
13
7
|
/**
|
|
@@ -35,19 +29,5 @@ import 'type-fest';
|
|
|
35
29
|
* />
|
|
36
30
|
*/
|
|
37
31
|
declare function QueryBuilder({ controlClassnames, controlElements, orientation, showRuleLines, ...rest }: QueryBuilderProps): react_jsx_runtime.JSX.Element;
|
|
38
|
-
declare namespace QueryBuilder {
|
|
39
|
-
var CombinatorSelector: ({ options, value, handleOnChange, }: CombinatorSelectorProps) => react_jsx_runtime.JSX.Element;
|
|
40
|
-
var RemoveRuleAction: ({ handleOnClick, className, ...rest }: ActionProps) => react_jsx_runtime.JSX.Element;
|
|
41
|
-
var LockAction: ({ handleOnClick, className, ...rest }: ActionProps) => react_jsx_runtime.JSX.Element;
|
|
42
|
-
var CloneAction: ({ handleOnClick, className, ...rest }: ActionProps) => react_jsx_runtime.JSX.Element;
|
|
43
|
-
var ActionElement: typeof ActionElement;
|
|
44
|
-
var Rule: typeof Rule;
|
|
45
|
-
var RuleGroup: typeof RuleGroup;
|
|
46
|
-
var RuleGroupHeaderComponent: typeof RuleGroupHeaderComponent;
|
|
47
|
-
var RuleGroupFooterComponent: typeof RuleGroupFooterComponent;
|
|
48
|
-
var getValidationResult: (rule: react_querybuilder.RuleType, validator?: react_querybuilder.RuleValidator) => react_querybuilder.ValidationResult;
|
|
49
|
-
var ValueEditor: typeof ValueEditor;
|
|
50
|
-
var ValueSelector: typeof ValueSelector;
|
|
51
|
-
}
|
|
52
32
|
|
|
53
33
|
export { QueryBuilder };
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import {jsx}from'react/jsx-runtime';import'client-only';import {useMemo,createContext}from'react';import {QueryBuilder}from'react-querybuilder';import {ActionElement}from'./action-element.js';import {LockAction,RemoveRuleAction,CloneAction}from'./actions.js';import {CombinatorSelector}from'./combinator-selector.js';import {Rule}from'./rule.js';import {RuleGroup}from'./rule-group.js';import {QueryBuilderStyles}from'./styles.js';import {ValueEditor}from'./value-editor.js';import {ValueSelector}from'./value-selector.js';const{queryBuilder:b,ruleGroup:Q,header:S,combinators:k,cloneGroup:C,removeGroup:g,cloneRule:h,fields:x,value:E,addRule:T,addGroup:q,operators:D,valueListItem:I,valueSource:L,removeRule:P,valid:V,invalid:w,disabled:z,lockRule:M,lockGroup:N,body:F,rule:H}=QueryBuilderStyles();function oe({controlClassnames:r,controlElements:l,orientation:e="horizontal",showRuleLines:o=true,...m}){const c=useMemo(()=>({combinatorSelector:CombinatorSelector,cloneGroupAction:CloneAction,cloneRuleAction:CloneAction,removeRuleAction:RemoveRuleAction,lockGroupAction:LockAction,lockRuleAction:LockAction,ruleGroup:RuleGroup,rule:Rule,actionElement:ActionElement,valueSelector:ValueSelector,valueEditor:ValueEditor,...l}),[l]),n=useMemo(()=>({queryBuilder:b(),ruleGroup:Q(),header:S(),combinators:k(),fields:x(),operators:D(),value:E(),valueListItem:I(),valueSource:L(),cloneGroup:C(),cloneRule:h(),lockGroup:N(),lockRule:M(),disabled:z(),valid:V(),invalid:w(),removeRule:P(),addRule:T(),addGroup:q(),removeGroup:g(),rule:H({variant:e}),body:F({showRuleLines:o}),...r}),[r,o,e]),a=createContext({orientation:e,showRuleLines:o});return jsx(QueryBuilder,{showNotToggle:false,showShiftActions:false,enableDragAndDrop:false,controlClassnames:n,controlElements:c,context:a,listsAsArrays:true,...m})}export{oe as QueryBuilder};//# sourceMappingURL=index.js.map
|
|
2
4
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/query-builder/index.tsx"],"names":["jsx","Label","G","v","options","Radio","jsxs","Tooltip","e","z","b","operatorDescriptions","option","RemoveRuleAction","className","event","handleOnClick","pressToMouseEvent","handlePress","rest","p","Icon","a","LockAction","useCallback","T","CloneAction","k","QueryBuilder","Q","mergedElements","CombinatorSelector","s","defaultClassnames","y","A","R","P","h","g","orientation","mergedClassnames","useMemo","RQBBuilder","D","V","Rule","RuleGroupFooterComponent","getValidationResult","N","ValueSelector"],"mappings":"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","file":"index.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'use client';\n\nimport 'client-only';\nimport { Delete, Duplicate, LockFill } from '@accelint/icons';\nimport { createContext, useCallback, useMemo } from 'react';\nimport {\n type ActionProps,\n type Classnames,\n type CombinatorSelectorProps,\n QueryBuilder as RQBBuilder,\n} from 'react-querybuilder';\nimport { cn } from '../../lib/utils';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Label } from '../label';\nimport { Radio } from '../radio';\nimport { Tooltip } from '../tooltip';\nimport { ActionElement } from './action-element';\nimport {\n RuleGroup,\n RuleGroupFooterComponent,\n RuleGroupHeaderComponent,\n} from './group';\nimport { Rule } from './rule';\nimport { getValidationResult, pressToMouseEvent } from './utils';\nimport { ValueEditor } from './value-editor';\nimport { ValueSelector } from './value-selector';\nimport type { PressEvent } from '@react-types/shared';\nimport type { QueryBuilderContextType, QueryBuilderProps } from './types';\n\nconst operatorDescriptions: Record<string, string> = {\n AND: 'All rules below must be true for a match',\n OR: 'One of the rules below must be true for a match',\n};\n\nfunction CombinatorSelector({\n options,\n value,\n handleOnChange,\n}: CombinatorSelectorProps) {\n return (\n <Radio.Group\n value={value}\n onChange={handleOnChange}\n orientation='horizontal'\n >\n <Label>Combinator</Label>\n {options.map((option) => (\n <Radio key={option.label} value={option.label}>\n <Tooltip.Trigger>\n <button type='button'>{option.label}</button>\n <Tooltip placement='top'>\n {operatorDescriptions[option.label]}\n </Tooltip>\n </Tooltip.Trigger>\n </Radio>\n ))}\n </Radio.Group>\n );\n}\n\nfunction RemoveRuleAction({ handleOnClick, className, ...rest }: ActionProps) {\n // TODO: remove pressToMouseEvent when design-system is removed\n const handlePress = useCallback(\n (event: PressEvent) => handleOnClick(pressToMouseEvent(event)),\n [handleOnClick],\n );\n\n return (\n <Button\n size='small'\n variant='icon'\n onPress={handlePress}\n className={className}\n {...rest}\n >\n <Icon>\n <Delete />\n </Icon>\n </Button>\n );\n}\n\nfunction LockAction({ handleOnClick, className, ...rest }: ActionProps) {\n // TODO: remove pressToMouseEvent when design-system is removed\n const handlePress = useCallback(\n (event: PressEvent) => handleOnClick(pressToMouseEvent(event)),\n [handleOnClick],\n );\n\n return (\n <Button\n size='small'\n variant='icon'\n onPress={handlePress}\n className={className}\n {...rest}\n >\n <Icon>\n <LockFill />\n </Icon>\n </Button>\n );\n}\n\nfunction CloneAction({ handleOnClick, className, ...rest }: ActionProps) {\n // TODO: remove pressToMouseEvent when design-system is removed\n const handlePress = useCallback(\n (event: PressEvent) => handleOnClick(pressToMouseEvent(event)),\n [handleOnClick],\n );\n\n return (\n <Button\n size='small'\n variant='icon'\n onPress={handlePress}\n className={className}\n {...rest}\n >\n <Icon>\n <Duplicate />\n </Icon>\n </Button>\n );\n}\n\n/**\n * QueryBuilder - A visual interface for building complex database queries\n *\n * Provides an intuitive drag-and-drop interface for constructing database queries\n * with support for multiple conditions, operators, and logical grouping. Enables\n * users to build complex filters without writing SQL or code.\n *\n * @example\n * // Basic query builder\n * <QueryBuilder\n * fields={[\n * // { name, label, type, inputType, operators },\n * ]}\n * query={\n * // { combinator, rules }\n * }\n * onQueryChange={handleQueryChange}\n * controlElements={{\n * addRuleAction: CustomAddButton,\n * removeRuleAction: CustomRemoveButton\n * }}\n * orientation=\"vertical\"\n * />\n */\nexport function QueryBuilder({\n controlClassnames,\n controlElements,\n orientation = 'horizontal',\n showRuleLines = true,\n ...rest\n}: QueryBuilderProps) {\n /**\n * Represents the list of available controls that the component can use as a custom\n * component override.Passed in as a map of our custom defaults, but can be\n * overridden by using the controlElements prop\n */\n const mergedElements = useMemo(\n () => ({\n combinatorSelector: CombinatorSelector,\n cloneGroupAction: CloneAction,\n cloneRuleAction: CloneAction,\n removeRuleAction: RemoveRuleAction,\n lockGroupAction: LockAction,\n lockRuleAction: LockAction,\n ruleGroup: RuleGroup,\n rule: Rule,\n actionElement: ActionElement,\n valueSelector: ValueSelector,\n valueEditor: ValueEditor,\n ...controlElements,\n }),\n [controlElements],\n );\n\n /**\n * Represents the list of available classnames that the component will recognize.\n * Passed in as a map as all the default styling, but can be overridden by using the\n * controlClassnames prop\n */\n const defaultClassnames: Partial<Classnames> = useMemo(\n () => ({\n queryBuilder: 'outline outline-transparent',\n ruleGroup:\n 'group col-span-full flex flex-col gap-s p-s outline outline-info-bold rounded-medium',\n header: 'flex gap-s',\n body: cn(\n 'group grid gap-x-s empty:hidden',\n showRuleLines\n ? 'grid-cols-[10px_minmax(100px,_1fr)_min-content]'\n : 'grid-cols-[minmax(100px,_1fr)_min-content]',\n ),\n combinators: 'my-s',\n addRule: '',\n addGroup: '',\n cloneRule: 'fg-info-bold hover:fg-info-hover',\n cloneGroup: 'fg-info-bold hover:fg-info-hover',\n removeGroup: '',\n rule: cn(\n 'flex gap-xs py-s',\n orientation === 'vertical'\n ? 'flex-col'\n : 'min-height-[50px] items-start',\n ),\n fields: 'w-full',\n operators: '',\n value: 'w-full',\n removeRule: '',\n valid: '',\n invalid: '',\n disabled: '',\n lockRule: 'fg-info-bold hover:fg-info-hover',\n lockGroup: 'fg-info-bold hover:fg-info-hover',\n valueSource: '',\n valueListItem: '',\n }),\n [orientation, showRuleLines],\n );\n\n const mergedClassnames = useMemo(() => {\n return {\n ...defaultClassnames,\n ...controlClassnames,\n };\n }, [controlClassnames, defaultClassnames]);\n\n const QueryBuilderContext = createContext<QueryBuilderContextType>({\n orientation,\n showRuleLines,\n });\n\n return (\n <RQBBuilder\n showNotToggle={false}\n showShiftActions={false}\n enableDragAndDrop={false}\n controlClassnames={mergedClassnames}\n controlElements={mergedElements}\n context={QueryBuilderContext}\n listsAsArrays\n {...rest}\n />\n );\n}\n\nQueryBuilder.CombinatorSelector = CombinatorSelector;\nQueryBuilder.RemoveRuleAction = RemoveRuleAction;\nQueryBuilder.LockAction = LockAction;\nQueryBuilder.CloneAction = CloneAction;\nQueryBuilder.ActionElement = ActionElement;\nQueryBuilder.Rule = Rule;\nQueryBuilder.RuleGroup = RuleGroup;\nQueryBuilder.RuleGroupHeaderComponent = RuleGroupHeaderComponent;\nQueryBuilder.RuleGroupFooterComponent = RuleGroupFooterComponent;\nQueryBuilder.getValidationResult = getValidationResult;\nQueryBuilder.ValueEditor = ValueEditor;\nQueryBuilder.ValueSelector = ValueSelector;\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/query-builder/index.tsx"],"names":["ruleGroup","operators","invalid","lockRule","lockGroup","body","QueryBuilder","G","controlClassnames","orientation","mergedElements","u","f","t","v","i","R","ValueSelector","ValueEditor","s","useMemo","B","A","queryBuilder","value","valueSource","cloneGroup","valid","showRuleLines","d","J","p","rest"],"mappings":"2gBA4BEA,KACA,CAAA,YACA,CAAA,CAAA,CAAA,SACA,CAAA,CAAA,CAAA,oBAEA,CAAA,CAAA,CAAA,UACA,CAAA,CAAA,CAAA,WAEA,CAAA,CAAA,CAAA,SACA,CAAA,CAAA,CAAA,MACA,CAAA,CAAA,CAAA,KAAA,CAAA,CAAAC,CAAAA,OACA,CAAA,CAAA,CAAA,QACA,CAAA,CAAA,CAAA,UACA,CAAA,CAAA,aACA,CAAA,CAAA,CAAA,WACAC,CAAAA,CACA,CAAA,UACA,CAAA,CAAA,CAAA,KAAA,CAAAC,CAAAA,CACA,OAAA,CAAA,CAAA,CAAAC,QACAC,CACA,CAAA,CAAA,QACqB,CAAA,CA0BhB,CAAA,SAASC,CAAAA,CAAa,CAC3B,IAAA,CAAA,CAAA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAAC,kBAAA,EAAAC,CAAAA,SACA,EAAA,CAAA,CAAA,iBACA,CAAAC,CAAAA,CAAc,eACd,CAAA,CAAA,CAAA,WAAgB,CAAA,CAAA,CAChB,YAOA,CAAMC,aAEF,CAAA,CAAA,CAAA,IAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,MACA,CAAA,CAAAC,OAAA,CAAA,KAAA,CAAA,kBACA,CAAAC,kBAAA,CAAA,gBACA,CAAAC,WAAA,CAAA,eACA,CAAAA,WAAA,CAAA,gBACA,CAAAC,gBAAA,CAAA,eAEA,CAAAC,UAAA,CAAA,cACA,CAAAA,UAAA,CAAA,SACA,CAAAC,SAAA,CAAA,IAAA,CAAeC,IAAAA,CACf,aAAaC,CACbC,aAAA,CAAA,aAUqBC,CAAQC,aAAA,CAAA,WAE7B,CAAAC,WAAA,CAAA,GAAcC,CAAAA,CAAa,CAAA,CAC3B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAZ,OAAA,CAAA,KACA,CAAA,0BAEA,CAAA,CAAA,EAAA,CAAA,MACA,CAAA,CAAA,EAAA,CAAA,WACA,CAAA,CAAA,EAAOa,CAAAA,MACP,CAAA,CAAA,EAAA,CAAA,SAA6B,CAC7B,CAAA,EAAA,CAAA,KAAA,CAAA,CAAA,EAAaC,CAAY,aACbC,CAAAA,CAAW,EACvB,CAAA,WAAqB,CAAA,CACrB,EAAA,CAAA,UAAqB,CACrB,CAAA,EAAA,CAAA,SACA,CAAA,CAAA,EAAA,CAAA,SACA,CAAA,CAAA,EAAA,CAAOC,QACP,CAAA,CAAA,EAASzB,CAAAA,QACT,CAAA,CAAA,EAAA,CAAA,KACA,CAAA,CAAA,EAAA,CAAA,OACA,CAAA,CAAA,EAAA,CAAA,UACA,CAAA,CAAA,EAAA,CAAA,OAAyB,CAAA,CACzB,WAAa,CAAA,CAAA,EAAA,CAASO,WACX,CAAE,CAAA,EAAA,CAAA,IAAA,CAAA,CAAA,CAAA,CAAA,OACb,CAAA,CAAGD,CACL,CAAA,CAAA,IACqBoB,CAAAA,CAAenB,CAAW,CAAC,aAGhD,CAAA,CAAA,CAAA,CAAA,CAAA,GACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAmB,CACFC,aAAC,CAAA,CAED,WACG,CACC,CAAA,CAAA,aAAe,CAAA,CACf,CAAA,CAAA,CAAA,OAAAC,GAAA,CAAAC,YAAA,CAAA,CAAA,aACA,CAAA,KAAA,CAAA,gBACA,CAAA,KAAA,CAAA,iBACA,CAAA,KAAA,CAAA,iBAEA,CAAA,CAAA,CAAA,eACC,CAAGC,EACN,OAEJ,CAAA,CAAA,CAAA,aAAA,CAAA,IAAA,CAAA,GAAA,CAAA,CAAA,CAAA","file":"index.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'use client';\n\nimport 'client-only';\nimport { createContext, useMemo } from 'react';\nimport { QueryBuilder as RQBBuilder } from 'react-querybuilder';\nimport { ActionElement } from './action-element';\nimport { CloneAction, LockAction, RemoveRuleAction } from './actions';\nimport { CombinatorSelector } from './combinator-selector';\nimport { Rule } from './rule';\nimport { RuleGroup } from './rule-group';\nimport { QueryBuilderStyles } from './styles';\nimport { ValueEditor } from './value-editor';\nimport { ValueSelector } from './value-selector';\nimport type { QueryBuilderContextType, QueryBuilderProps } from './types';\n\nconst {\n queryBuilder,\n ruleGroup,\n header,\n combinators,\n cloneGroup,\n removeGroup,\n cloneRule,\n fields,\n value,\n addRule,\n addGroup,\n operators,\n valueListItem,\n valueSource,\n removeRule,\n valid,\n invalid,\n disabled,\n lockRule,\n lockGroup,\n body,\n rule,\n} = QueryBuilderStyles();\n\n/**\n * QueryBuilder - A visual interface for building complex database queries\n *\n * Provides an intuitive drag-and-drop interface for constructing database queries\n * with support for multiple conditions, operators, and logical grouping. Enables\n * users to build complex filters without writing SQL or code.\n *\n * @example\n * // Basic query builder\n * <QueryBuilder\n * fields={[\n * // { name, label, type, inputType, operators },\n * ]}\n * query={\n * // { combinator, rules }\n * }\n * onQueryChange={handleQueryChange}\n * controlElements={{\n * addRuleAction: CustomAddButton,\n * removeRuleAction: CustomRemoveButton\n * }}\n * orientation=\"vertical\"\n * />\n */\nexport function QueryBuilder({\n controlClassnames,\n controlElements,\n orientation = 'horizontal',\n showRuleLines = true,\n ...rest\n}: QueryBuilderProps) {\n /**\n * Represents the list of available controls that the component can use as a custom\n * component override.Passed in as a map of our custom defaults, but can be\n * overridden by using the controlElements prop\n */\n const mergedElements = useMemo(\n () => ({\n combinatorSelector: CombinatorSelector,\n cloneGroupAction: CloneAction,\n cloneRuleAction: CloneAction,\n removeRuleAction: RemoveRuleAction,\n lockGroupAction: LockAction,\n lockRuleAction: LockAction,\n ruleGroup: RuleGroup,\n rule: Rule,\n actionElement: ActionElement,\n valueSelector: ValueSelector,\n valueEditor: ValueEditor,\n ...controlElements,\n }),\n [controlElements],\n );\n\n /**\n * Represents the list of available classnames that the component will recognize.\n * Passed in as a map as all the default styling, but can be overridden by using the\n * controlClassnames prop\n */\n const mergedClassnames = useMemo(() => {\n return {\n queryBuilder: queryBuilder(),\n ruleGroup: ruleGroup(),\n header: header(),\n combinators: combinators(),\n fields: fields(),\n operators: operators(),\n value: value(),\n valueListItem: valueListItem(),\n valueSource: valueSource(),\n cloneGroup: cloneGroup(),\n cloneRule: cloneRule(),\n lockGroup: lockGroup(),\n lockRule: lockRule(),\n disabled: disabled(),\n valid: valid(),\n invalid: invalid(),\n removeRule: removeRule(),\n addRule: addRule(),\n addGroup: addGroup(),\n removeGroup: removeGroup(),\n rule: rule({ variant: orientation }),\n body: body({ showRuleLines: showRuleLines }),\n ...controlClassnames,\n };\n }, [controlClassnames, showRuleLines, orientation]);\n\n const QueryBuilderContext = createContext<QueryBuilderContextType>({\n orientation,\n showRuleLines,\n });\n\n return (\n <RQBBuilder\n showNotToggle={false}\n showShiftActions={false}\n enableDragAndDrop={false}\n controlClassnames={mergedClassnames}\n controlElements={mergedElements}\n context={QueryBuilderContext}\n listsAsArrays\n {...rest}\n />\n );\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import {jsxs,jsx,Fragment}from'react/jsx-runtime';import'client-only';import {useMemo}from'react';import {useRuleGroup,useStopEventPropagation,TestID}from'react-querybuilder';import {cn}from'./../../lib/utils.js';function O(t){const a=useRuleGroup(t),{schema:{controls:{ruleGroupBodyElements:s}}}=a,{schema:{classNames:n}}=t,c=useStopEventPropagation(a.addRule),i=useStopEventPropagation(a.addGroup),d=useStopEventPropagation(a.cloneGroup),m=useStopEventPropagation(a.toggleLockGroup),p=useStopEventPropagation(a.removeGroup),v=useMemo(()=>({...a,addGroup:i,addRule:c,cloneGroup:d,removeGroup:p,toggleLockGroup:m}),[i,c,d,a,p,m]);return jsxs("div",{className:cn(n.ruleGroup),children:[jsx("div",{className:cn(n.header),children:jsx(C,{...v})}),jsx("div",{className:cn(n.body),children:jsx(s,{...v})}),jsx("div",{className:cn(n.header),children:jsx(N,{...v})})]})}function C(t){const a=t.schema.showLockButtons,s=t.path.length>0,n=t.schema.showCloneButtons&&s,{schema:{controls:{combinatorSelector:c,cloneGroupAction:i,lockGroupAction:d,removeGroupAction:m}}}=t;return jsxs(Fragment,{children:[jsx(c,{testID:TestID.combinators,options:t.schema.combinators,ruleGroup:t.ruleGroup,value:t.combinator,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:t.onCombinatorChange,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,schema:t.schema},TestID.combinators),n&&jsx("div",{children:jsx(i,{testID:TestID.cloneGroup,label:t.translations.cloneRuleGroup.label,title:t.translations.cloneRuleGroup.title,className:t.classNames.cloneGroup,handleOnClick:t.cloneGroup,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.cloneGroup)}),a&&jsx("div",{children:jsx(d,{testID:TestID.lockGroup,label:t.translations.lockGroup.label,title:t.translations.lockGroup.title,className:t.classNames.lockGroup,handleOnClick:t.toggleLockGroup,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,disabledTranslation:t.parentDisabled?void 0:t.translations.lockGroupDisabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.lockGroup)}),s&&jsx("div",{children:jsx(m,{testID:TestID.removeGroup,label:t.translations.removeGroup.label,title:t.translations.removeGroup.title,className:t.classNames.removeGroup,handleOnClick:t.removeGroup,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.removeGroup)})]})}function N(t){const{schema:{controls:{addGroupAction:a,addRuleAction:s}}}=t;return jsxs(Fragment,{children:[jsx(s,{testID:TestID.addRule,label:t.translations.addRule.label,title:t.translations.addRule.title,className:t.classNames.addRule,handleOnClick:t.addRule,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.addRule),jsx(a,{testID:TestID.addGroup,label:t.translations.addGroup.label,title:t.translations.addGroup.title,className:t.classNames.addGroup,handleOnClick:t.addGroup,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.addGroup)]})}export{O as RuleGroup,N as RuleGroupFooterComponent,C as RuleGroupHeaderComponent};//# sourceMappingURL=group.js.map
|
|
4
|
-
//# sourceMappingURL=group.js.map
|
|
3
|
+
import {jsxs,jsx,Fragment}from'react/jsx-runtime';import'client-only';import {useMemo}from'react';import {useRuleGroup,useStopEventPropagation,TestID}from'react-querybuilder';import {cn}from'./../../lib/utils.js';function O(t){const a=useRuleGroup(t),{schema:{controls:{ruleGroupBodyElements:s}}}=a,{schema:{classNames:n}}=t,c=useStopEventPropagation(a.addRule),i=useStopEventPropagation(a.addGroup),d=useStopEventPropagation(a.cloneGroup),m=useStopEventPropagation(a.toggleLockGroup),p=useStopEventPropagation(a.removeGroup),v=useMemo(()=>({...a,addGroup:i,addRule:c,cloneGroup:d,removeGroup:p,toggleLockGroup:m}),[i,c,d,a,p,m]);return jsxs("div",{className:cn(n.ruleGroup),children:[jsx("div",{className:cn(n.header),children:jsx(C,{...v})}),jsx("div",{className:cn(n.body),children:jsx(s,{...v})}),jsx("div",{className:cn(n.header),children:jsx(N,{...v})})]})}function C(t){const a=t.schema.showLockButtons,s=t.path.length>0,n=t.schema.showCloneButtons&&s,{schema:{controls:{combinatorSelector:c,cloneGroupAction:i,lockGroupAction:d,removeGroupAction:m}}}=t;return jsxs(Fragment,{children:[jsx(c,{testID:TestID.combinators,options:t.schema.combinators,ruleGroup:t.ruleGroup,value:t.combinator,title:t.translations.combinators.title,className:t.classNames.combinators,handleOnChange:t.onCombinatorChange,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,schema:t.schema},TestID.combinators),n&&jsx("div",{children:jsx(i,{testID:TestID.cloneGroup,label:t.translations.cloneRuleGroup.label,title:t.translations.cloneRuleGroup.title,className:t.classNames.cloneGroup,handleOnClick:t.cloneGroup,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.cloneGroup)}),a&&jsx("div",{children:jsx(d,{testID:TestID.lockGroup,label:t.translations.lockGroup.label,title:t.translations.lockGroup.title,className:t.classNames.lockGroup,handleOnClick:t.toggleLockGroup,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,disabledTranslation:t.parentDisabled?void 0:t.translations.lockGroupDisabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.lockGroup)}),s&&jsx("div",{children:jsx(m,{testID:TestID.removeGroup,label:t.translations.removeGroup.label,title:t.translations.removeGroup.title,className:t.classNames.removeGroup,handleOnClick:t.removeGroup,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.removeGroup)})]})}function N(t){const{schema:{controls:{addGroupAction:a,addRuleAction:s}}}=t;return jsxs(Fragment,{children:[jsx(s,{testID:TestID.addRule,label:t.translations.addRule.label,title:t.translations.addRule.title,className:t.classNames.addRule,handleOnClick:t.addRule,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.addRule),jsx(a,{testID:TestID.addGroup,label:t.translations.addGroup.label,title:t.translations.addGroup.title,className:t.classNames.addGroup,handleOnClick:t.addGroup,rules:t.ruleGroup.rules,level:t.path.length,path:t.path,disabled:t.disabled,context:t.context,validation:t.validationResult,ruleOrGroup:t.ruleGroup,schema:t.schema},TestID.addGroup)]})}export{O as RuleGroup,N as RuleGroupFooterComponent,C as RuleGroupHeaderComponent};//# sourceMappingURL=rule-group.js.map
|
|
4
|
+
//# sourceMappingURL=rule-group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/query-builder/rule-group.tsx"],"names":["RuleGroup","group","useRuleGroup","props","r","useStopEventPropagation","addGroup","l","cloneGroup","addRule","removeGroup","toggleLockGroup","jsxs","b","cn","h","jsx","e","elementProps","RuleGroupHeaderComponent","shouldShowLock","ruleGroup","shouldShowClone","Fragment","R","TestID","o","RuleGroupFooterComponent"],"mappings":"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","file":"rule-group.js","sourcesContent":["// __private-exports\n/*\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';\n\nimport 'client-only';\nimport { useMemo } from 'react';\nimport {\n type RuleGroupProps,\n TestID,\n useRuleGroup,\n useStopEventPropagation,\n} from 'react-querybuilder';\nimport { cn } from '@/lib/utils';\n\nexport function RuleGroup(props: RuleGroupProps) {\n const group = useRuleGroup(props);\n\n const {\n schema: {\n controls: { ruleGroupBodyElements: RuleGroupBodyElements },\n },\n } = group;\n\n const {\n schema: { classNames },\n } = props;\n\n const addRule = useStopEventPropagation(group.addRule);\n const addGroup = useStopEventPropagation(group.addGroup);\n const cloneGroup = useStopEventPropagation(group.cloneGroup);\n const toggleLockGroup = useStopEventPropagation(group.toggleLockGroup);\n const removeGroup = useStopEventPropagation(group.removeGroup);\n\n const elementProps = useMemo(\n () => ({\n ...group,\n addGroup,\n addRule,\n cloneGroup,\n removeGroup,\n toggleLockGroup,\n }),\n [addGroup, addRule, cloneGroup, group, removeGroup, toggleLockGroup],\n );\n\n return (\n <div className={cn(classNames.ruleGroup)}>\n <div className={cn(classNames.header)}>\n <RuleGroupHeaderComponent {...elementProps} />\n </div>\n <div className={cn(classNames.body)}>\n <RuleGroupBodyElements {...elementProps} />\n </div>\n <div className={cn(classNames.header)}>\n <RuleGroupFooterComponent {...elementProps} />\n </div>\n </div>\n );\n}\n\nexport function RuleGroupHeaderComponent(\n ruleGroup: RuleGroupProps & ReturnType<typeof useRuleGroup>,\n) {\n const shouldShowLock = ruleGroup.schema.showLockButtons;\n const isNotRoot = ruleGroup.path.length > 0;\n const shouldShowClone = ruleGroup.schema.showCloneButtons && isNotRoot;\n\n const {\n schema: {\n controls: {\n combinatorSelector: CombinatorSelectorControlElement,\n cloneGroupAction: CloneGroupActionControlElement,\n lockGroupAction: LockGroupActionControlElement,\n removeGroupAction: RemoveGroupActionControlElement,\n },\n },\n } = ruleGroup;\n\n return (\n <>\n <CombinatorSelectorControlElement\n key={TestID.combinators}\n testID={TestID.combinators}\n options={ruleGroup.schema.combinators}\n ruleGroup={ruleGroup.ruleGroup}\n value={ruleGroup.combinator}\n title={ruleGroup.translations.combinators.title}\n className={ruleGroup.classNames.combinators}\n handleOnChange={ruleGroup.onCombinatorChange}\n rules={ruleGroup.ruleGroup.rules}\n level={ruleGroup.path.length}\n path={ruleGroup.path}\n disabled={ruleGroup.disabled}\n context={ruleGroup.context}\n validation={ruleGroup.validationResult}\n schema={ruleGroup.schema}\n />\n {shouldShowClone && (\n <div>\n <CloneGroupActionControlElement\n key={TestID.cloneGroup}\n testID={TestID.cloneGroup}\n label={ruleGroup.translations.cloneRuleGroup.label}\n title={ruleGroup.translations.cloneRuleGroup.title}\n className={ruleGroup.classNames.cloneGroup}\n handleOnClick={ruleGroup.cloneGroup}\n rules={ruleGroup.ruleGroup.rules}\n level={ruleGroup.path.length}\n path={ruleGroup.path}\n disabled={ruleGroup.disabled}\n context={ruleGroup.context}\n validation={ruleGroup.validationResult}\n ruleOrGroup={ruleGroup.ruleGroup}\n schema={ruleGroup.schema}\n />\n </div>\n )}\n {shouldShowLock && (\n <div>\n <LockGroupActionControlElement\n key={TestID.lockGroup}\n testID={TestID.lockGroup}\n label={ruleGroup.translations.lockGroup.label}\n title={ruleGroup.translations.lockGroup.title}\n className={ruleGroup.classNames.lockGroup}\n handleOnClick={ruleGroup.toggleLockGroup}\n rules={ruleGroup.ruleGroup.rules}\n level={ruleGroup.path.length}\n path={ruleGroup.path}\n disabled={ruleGroup.disabled}\n disabledTranslation={\n ruleGroup.parentDisabled\n ? undefined\n : ruleGroup.translations.lockGroupDisabled\n }\n context={ruleGroup.context}\n validation={ruleGroup.validationResult}\n ruleOrGroup={ruleGroup.ruleGroup}\n schema={ruleGroup.schema}\n />\n </div>\n )}\n {isNotRoot && (\n <div>\n <RemoveGroupActionControlElement\n key={TestID.removeGroup}\n testID={TestID.removeGroup}\n label={ruleGroup.translations.removeGroup.label}\n title={ruleGroup.translations.removeGroup.title}\n className={ruleGroup.classNames.removeGroup}\n handleOnClick={ruleGroup.removeGroup}\n rules={ruleGroup.ruleGroup.rules}\n level={ruleGroup.path.length}\n path={ruleGroup.path}\n disabled={ruleGroup.disabled}\n context={ruleGroup.context}\n validation={ruleGroup.validationResult}\n ruleOrGroup={ruleGroup.ruleGroup}\n schema={ruleGroup.schema}\n />\n </div>\n )}\n </>\n );\n}\n\nexport function RuleGroupFooterComponent(\n ruleGroup: RuleGroupProps & ReturnType<typeof useRuleGroup>,\n) {\n const {\n schema: {\n controls: {\n addGroupAction: AddGroupActionControlElement,\n addRuleAction: AddRuleActionControlElement,\n },\n },\n } = ruleGroup;\n\n return (\n <>\n <AddRuleActionControlElement\n key={TestID.addRule}\n testID={TestID.addRule}\n label={ruleGroup.translations.addRule.label}\n title={ruleGroup.translations.addRule.title}\n className={ruleGroup.classNames.addRule}\n handleOnClick={ruleGroup.addRule}\n rules={ruleGroup.ruleGroup.rules}\n level={ruleGroup.path.length}\n path={ruleGroup.path}\n disabled={ruleGroup.disabled}\n context={ruleGroup.context}\n validation={ruleGroup.validationResult}\n ruleOrGroup={ruleGroup.ruleGroup}\n schema={ruleGroup.schema}\n />\n <AddGroupActionControlElement\n key={TestID.addGroup}\n testID={TestID.addGroup}\n label={ruleGroup.translations.addGroup.label}\n title={ruleGroup.translations.addGroup.title}\n className={ruleGroup.classNames.addGroup}\n handleOnClick={ruleGroup.addGroup}\n rules={ruleGroup.ruleGroup.rules}\n level={ruleGroup.path.length}\n path={ruleGroup.path}\n disabled={ruleGroup.disabled}\n context={ruleGroup.context}\n validation={ruleGroup.validationResult}\n ruleOrGroup={ruleGroup.ruleGroup}\n schema={ruleGroup.schema}\n />\n </>\n );\n}\n"]}
|
|
@@ -1,4 +1,2 @@
|
|
|
1
|
-
'
|
|
2
|
-
|
|
3
|
-
import {jsxs,Fragment,jsx}from'react/jsx-runtime';import'client-only';import {useContext}from'react';import {useRule,useStopEventPropagation,TestID}from'react-querybuilder';function Z(d){const e=useRule(d),v=useContext(d.context),{classNames:r,disabled:C,operators:S,outerClassName:p,rule:{field:u,operator:n,value:f,valueSource:m},schema:{controls:{fieldSelector:N,operatorSelector:g,valueSourceSelector:k,valueEditor:D,cloneRuleAction:O,lockRuleAction:y,removeRuleAction:E},fields:b,listsAsArrays:A,parseNumbers:I,showCloneButtons:T,showLockButtons:x},fieldData:R,generateOnChangeHandler:s,inputType:L,parentDisabled:B,path:h,translations:l,valueEditorType:P,valueEditorSeparator:w,values:G,valueSources:V,valueSourceOptions:H,validationResult:Q}=e,F=useStopEventPropagation(e.cloneRule),q=useStopEventPropagation(e.toggleLockRule),z=useStopEventPropagation(e.removeRule),o={context:v,disabled:C,level:h.length,path:h,schema:e.schema,validation:Q},J=!["null","notNull"].includes(n)&&V.length>1;return jsxs(Fragment,{children:[v.showRuleLines&&jsx("span",{className:"rule-lines relative"}),jsxs("div",{className:p,children:[jsx(N,{testID:TestID.fields,options:b,title:l.fields.title,value:u,operator:n,className:r.fields,handleOnChange:s("field"),rule:e.rule,...o}),jsx(g,{testID:TestID.operators,field:u,fieldData:e.fieldData,title:e.translations.operators.title,options:S,value:n,className:e.classNames.operators,handleOnChange:e.generateOnChangeHandler("operator"),rule:e.rule,...o}),jsx(D,{testID:TestID.valueEditor,field:u,fieldData:R,title:l.value.title,operator:n,value:f,valueSource:m??"value",type:P,inputType:L,values:G,listsAsArrays:A,parseNumbers:I,separator:w,className:r.value,handleOnChange:s("value"),rule:e.rule,...o}),J&&jsx(k,{testID:TestID.valueSourceSelector,field:u,fieldData:R,title:l.valueSourceSelector.title,options:H,value:m??"value",className:r.valueSource,handleOnChange:s("valueSource"),rule:e.rule,...o})]}),jsxs("div",{className:p,children:[jsx(E,{testID:TestID.removeRule,label:l.removeRule.label??"remove",title:l.removeRule.title??"remove",className:r.removeRule,handleOnClick:z,ruleOrGroup:e.rule,...o}),T&&jsx(O,{testID:TestID.cloneRule,label:l.cloneRule.label??"clone",title:l.cloneRule.title??"clone",className:r.cloneRule,handleOnClick:F,ruleOrGroup:e.rule,...o}),x&&jsx(y,{testID:TestID.lockRule,label:l.lockRule.label??"lock",title:l.lockRule.title??"lock",className:r.lockRule,handleOnClick:q,disabledTranslation:B?void 0:l.lockRuleDisabled,ruleOrGroup:e.rule,...o})]})]})}export{Z as Rule};//# sourceMappingURL=rule.js.map
|
|
1
|
+
import {jsx,jsxs,Fragment}from'react/jsx-runtime';import'client-only';import {memo,useContext}from'react';import {useRule,useStopEventPropagation,TestID}from'react-querybuilder';import {Lines}from'../lines/index.js';import {RuleStyles}from'./styles.js';const{lines:Y}=RuleStyles(),Z=memo(function({path:e,props:u,context:o}){const c=e[0]===u.schema.getQuery()?.rules.length-1?"last":"branch";return jsx(Lines,{variant:c,size:"small",isVisible:o.showRuleLines,className:Y()})});function oe(s){const e=useRule(s),u=useContext(s.context),{classNames:o,disabled:R,operators:c,outerClassName:h,rule:{field:n,operator:i,value:S,valueSource:f},schema:{controls:{fieldSelector:y,operatorSelector:g,valueSourceSelector:N,valueEditor:k,cloneRuleAction:D,lockRuleAction:b,removeRuleAction:O},fields:E,listsAsArrays:L,parseNumbers:A,showCloneButtons:x,showLockButtons:I},fieldData:C,generateOnChangeHandler:d,inputType:T,parentDisabled:B,path:p,translations:l,valueEditorType:P,valueEditorSeparator:Q,values:w,valueSources:V,valueSourceOptions:G,validationResult:H}=e,z=useStopEventPropagation(e.cloneRule),F=useStopEventPropagation(e.toggleLockRule),q=useStopEventPropagation(e.removeRule),r={context:u,disabled:R,level:p.length,path:p,schema:e.schema,validation:H},J=!["null","notNull"].includes(i)&&V.length>1;return jsxs(Fragment,{children:[u.showRuleLines&&jsx(Z,{path:p,props:s,context:u}),jsxs("div",{className:h,children:[jsx(y,{testID:TestID.fields,options:E,title:l.fields.title,value:n,operator:i,className:o.fields,handleOnChange:d("field"),rule:e.rule,...r}),jsx(g,{testID:TestID.operators,field:n,fieldData:e.fieldData,title:e.translations.operators.title,options:c,value:i,className:e.classNames.operators,handleOnChange:e.generateOnChangeHandler("operator"),rule:e.rule,...r}),jsx(k,{testID:TestID.valueEditor,field:n,fieldData:C,title:l.value.title,operator:i,value:S,valueSource:f??"value",type:P,inputType:T,values:w,listsAsArrays:L,parseNumbers:A,separator:Q,className:o.value,handleOnChange:d("value"),rule:e.rule,...r}),J&&jsx(N,{testID:TestID.valueSourceSelector,field:n,fieldData:C,title:l.valueSourceSelector.title,options:G,value:f??"value",className:o.valueSource,handleOnChange:d("valueSource"),rule:e.rule,...r})]}),jsxs("div",{className:h,children:[jsx(O,{testID:TestID.removeRule,label:l.removeRule.label??"remove",title:l.removeRule.title??"remove",className:o.removeRule,handleOnClick:q,ruleOrGroup:e.rule,...r}),x&&jsx(D,{testID:TestID.cloneRule,label:l.cloneRule.label??"clone",title:l.cloneRule.title??"clone",className:o.cloneRule,handleOnClick:z,ruleOrGroup:e.rule,...r}),I&&jsx(b,{testID:TestID.lockRule,label:l.lockRule.label??"lock",title:l.lockRule.title??"lock",className:o.lockRule,handleOnClick:F,disabledTranslation:B?void 0:l.lockRuleDisabled,ruleOrGroup:e.rule,...r})]})]})}export{oe as Rule};//# sourceMappingURL=rule.js.map
|
|
4
2
|
//# sourceMappingURL=rule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/query-builder/rule.tsx"],"names":["Rule","props","rule","useRule","context","useContext","classNames","disabled","operators","outerClassName","field","operator","value","valueSource","FieldSelectorControlElement","OperatorSelectorControlElement","ValueSourceSelectorControlElement","ValueEditorControlElement","CloneRuleActionControlElement","LockRuleActionControlElement","RemoveRuleActionControlElement","fields","listsAsArrays","parseNumbers","showCloneButtons","showLockButtons","fieldData","generateOnChangeHandler","inputType","parentDisabled","path","translations","valueEditorType","valueEditorSeparator","values","valueSources","valueSourceOptions","validationResult","cloneRule","useStopEventPropagation","toggleLockRule","removeRule","coreRuleProps","renderValueSources","jsxs","Fragment","jsx","TestID"],"mappings":"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","file":"rule.js","sourcesContent":["// __private-exports\n/*\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';\n\nimport 'client-only';\nimport { useContext } from 'react';\nimport {\n type RuleProps,\n TestID,\n useRule,\n useStopEventPropagation,\n} from 'react-querybuilder';\nimport type { QueryBuilderContextType } from './types';\n\nexport function Rule(props: RuleProps) {\n const rule = useRule(props);\n const context: QueryBuilderContextType = useContext(props.context);\n\n const {\n classNames,\n disabled,\n operators,\n outerClassName,\n rule: { field, operator, value, valueSource },\n schema: {\n controls: {\n fieldSelector: FieldSelectorControlElement,\n operatorSelector: OperatorSelectorControlElement,\n valueSourceSelector: ValueSourceSelectorControlElement,\n valueEditor: ValueEditorControlElement,\n cloneRuleAction: CloneRuleActionControlElement,\n lockRuleAction: LockRuleActionControlElement,\n removeRuleAction: RemoveRuleActionControlElement,\n },\n fields,\n listsAsArrays,\n parseNumbers,\n showCloneButtons,\n showLockButtons,\n },\n fieldData,\n generateOnChangeHandler,\n inputType,\n parentDisabled,\n path,\n translations,\n valueEditorType,\n valueEditorSeparator,\n values,\n valueSources,\n valueSourceOptions,\n validationResult,\n } = rule;\n\n const cloneRule = useStopEventPropagation(rule.cloneRule);\n const toggleLockRule = useStopEventPropagation(rule.toggleLockRule);\n const removeRule = useStopEventPropagation(rule.removeRule);\n\n const coreRuleProps = {\n context,\n disabled,\n level: path.length,\n path,\n schema: rule.schema,\n validation: validationResult,\n };\n\n const renderValueSources =\n !['null', 'notNull'].includes(operator) && valueSources.length > 1;\n\n return (\n <>\n {context.showRuleLines && <span className='rule-lines relative' />}\n <div className={outerClassName}>\n <FieldSelectorControlElement\n testID={TestID.fields}\n options={fields}\n title={translations.fields.title}\n value={field}\n operator={operator}\n className={classNames.fields}\n handleOnChange={generateOnChangeHandler('field')}\n rule={rule.rule}\n {...coreRuleProps}\n />\n <OperatorSelectorControlElement\n testID={TestID.operators}\n field={field}\n fieldData={rule.fieldData}\n title={rule.translations.operators.title}\n options={operators}\n value={operator}\n className={rule.classNames.operators}\n handleOnChange={rule.generateOnChangeHandler('operator')}\n rule={rule.rule}\n {...coreRuleProps}\n />\n <ValueEditorControlElement\n testID={TestID.valueEditor}\n field={field}\n fieldData={fieldData}\n title={translations.value.title}\n operator={operator}\n value={value}\n valueSource={valueSource ?? 'value'}\n type={valueEditorType}\n inputType={inputType}\n values={values}\n listsAsArrays={listsAsArrays}\n parseNumbers={parseNumbers}\n separator={valueEditorSeparator}\n className={classNames.value}\n handleOnChange={generateOnChangeHandler('value')}\n rule={rule.rule}\n {...coreRuleProps}\n />\n {renderValueSources && (\n <ValueSourceSelectorControlElement\n testID={TestID.valueSourceSelector}\n field={field}\n fieldData={fieldData}\n title={translations.valueSourceSelector.title}\n options={valueSourceOptions}\n value={valueSource ?? 'value'}\n className={classNames.valueSource}\n handleOnChange={generateOnChangeHandler('valueSource')}\n rule={rule.rule}\n {...coreRuleProps}\n />\n )}\n </div>\n <div className={outerClassName}>\n <RemoveRuleActionControlElement\n testID={TestID.removeRule}\n label={translations.removeRule.label ?? 'remove'}\n title={translations.removeRule.title ?? 'remove'}\n className={classNames.removeRule}\n handleOnClick={removeRule}\n ruleOrGroup={rule.rule}\n {...coreRuleProps}\n />\n {showCloneButtons && (\n <CloneRuleActionControlElement\n testID={TestID.cloneRule}\n label={translations.cloneRule.label ?? 'clone'}\n title={translations.cloneRule.title ?? 'clone'}\n className={classNames.cloneRule}\n handleOnClick={cloneRule}\n ruleOrGroup={rule.rule}\n {...coreRuleProps}\n />\n )}\n {showLockButtons && (\n <LockRuleActionControlElement\n testID={TestID.lockRule}\n label={translations.lockRule.label ?? 'lock'}\n title={translations.lockRule.title ?? 'lock'}\n className={classNames.lockRule}\n handleOnClick={toggleLockRule}\n disabledTranslation={\n parentDisabled ? undefined : translations.lockRuleDisabled\n }\n ruleOrGroup={rule.rule}\n {...coreRuleProps}\n />\n )}\n </div>\n </>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/query-builder/rule.tsx"],"names":["QueryBuilderLines","X","props","path","line","W","Rule","useRule","context","U","M","classNames","operators","field","valueSource","FieldSelectorControlElement","ValueEditorControlElement","listsAsArrays","parseNumbers","fieldData","inputType","translations","valueSources","m","toggleLockRule","useStopEventPropagation","coreRuleProps","rule","renderValueSources","v","t","jsxs","TestID","a","jsx","OperatorSelectorControlElement","valueEditorType","valueEditorSeparator","ValueSourceSelectorControlElement","valueSourceOptions","RemoveRuleActionControlElement","removeRule","showCloneButtons","CloneRuleActionControlElement","cloneRule","showLockButtons","LockRuleActionControlElement"],"mappings":"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","file":"rule.js","sourcesContent":["// __private-exports\n/*\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';\n\nimport 'client-only';\nimport { memo, useContext } from 'react';\nimport {\n type Path,\n type RuleProps,\n TestID,\n useRule,\n useStopEventPropagation,\n} from 'react-querybuilder';\nimport { Lines } from '../lines';\nimport { RuleStyles } from './styles';\nimport type { QueryBuilderContextType } from './types';\n\nconst { lines } = RuleStyles();\n\nconst QueryBuilderLines = memo(function QueryBuilderLines({\n path,\n props,\n context,\n}: {\n path: Path;\n props: RuleProps;\n context: QueryBuilderContextType;\n}) {\n const isLastRule = path[0] === props.schema.getQuery()?.rules.length - 1;\n const line = isLastRule ? 'last' : 'branch';\n\n return (\n <Lines\n variant={line}\n size='small'\n isVisible={context.showRuleLines}\n className={lines()}\n />\n );\n});\n\nexport function Rule(props: RuleProps) {\n const rule = useRule(props);\n const context: QueryBuilderContextType = useContext(props.context);\n\n const {\n classNames,\n disabled,\n operators,\n outerClassName,\n rule: { field, operator, value, valueSource },\n schema: {\n controls: {\n fieldSelector: FieldSelectorControlElement,\n operatorSelector: OperatorSelectorControlElement,\n valueSourceSelector: ValueSourceSelectorControlElement,\n valueEditor: ValueEditorControlElement,\n cloneRuleAction: CloneRuleActionControlElement,\n lockRuleAction: LockRuleActionControlElement,\n removeRuleAction: RemoveRuleActionControlElement,\n },\n fields,\n listsAsArrays,\n parseNumbers,\n showCloneButtons,\n showLockButtons,\n },\n fieldData,\n generateOnChangeHandler,\n inputType,\n parentDisabled,\n path,\n translations,\n valueEditorType,\n valueEditorSeparator,\n values,\n valueSources,\n valueSourceOptions,\n validationResult,\n } = rule;\n\n const cloneRule = useStopEventPropagation(rule.cloneRule);\n const toggleLockRule = useStopEventPropagation(rule.toggleLockRule);\n const removeRule = useStopEventPropagation(rule.removeRule);\n\n const coreRuleProps = {\n context,\n disabled,\n level: path.length,\n path,\n schema: rule.schema,\n validation: validationResult,\n };\n const renderValueSources =\n !['null', 'notNull'].includes(operator) && valueSources.length > 1;\n\n return (\n <>\n {context.showRuleLines && (\n <QueryBuilderLines path={path} props={props} context={context} />\n )}\n <div className={outerClassName}>\n <FieldSelectorControlElement\n testID={TestID.fields}\n options={fields}\n title={translations.fields.title}\n value={field}\n operator={operator}\n className={classNames.fields}\n handleOnChange={generateOnChangeHandler('field')}\n rule={rule.rule}\n {...coreRuleProps}\n />\n <OperatorSelectorControlElement\n testID={TestID.operators}\n field={field}\n fieldData={rule.fieldData}\n title={rule.translations.operators.title}\n options={operators}\n value={operator}\n className={rule.classNames.operators}\n handleOnChange={rule.generateOnChangeHandler('operator')}\n rule={rule.rule}\n {...coreRuleProps}\n />\n <ValueEditorControlElement\n testID={TestID.valueEditor}\n field={field}\n fieldData={fieldData}\n title={translations.value.title}\n operator={operator}\n value={value}\n valueSource={valueSource ?? 'value'}\n type={valueEditorType}\n inputType={inputType}\n values={values}\n listsAsArrays={listsAsArrays}\n parseNumbers={parseNumbers}\n separator={valueEditorSeparator}\n className={classNames.value}\n handleOnChange={generateOnChangeHandler('value')}\n rule={rule.rule}\n {...coreRuleProps}\n />\n {renderValueSources && (\n <ValueSourceSelectorControlElement\n testID={TestID.valueSourceSelector}\n field={field}\n fieldData={fieldData}\n title={translations.valueSourceSelector.title}\n options={valueSourceOptions}\n value={valueSource ?? 'value'}\n className={classNames.valueSource}\n handleOnChange={generateOnChangeHandler('valueSource')}\n rule={rule.rule}\n {...coreRuleProps}\n />\n )}\n </div>\n <div className={outerClassName}>\n <RemoveRuleActionControlElement\n testID={TestID.removeRule}\n label={translations.removeRule.label ?? 'remove'}\n title={translations.removeRule.title ?? 'remove'}\n className={classNames.removeRule}\n handleOnClick={removeRule}\n ruleOrGroup={rule.rule}\n {...coreRuleProps}\n />\n {showCloneButtons && (\n <CloneRuleActionControlElement\n testID={TestID.cloneRule}\n label={translations.cloneRule.label ?? 'clone'}\n title={translations.cloneRule.title ?? 'clone'}\n className={classNames.cloneRule}\n handleOnClick={cloneRule}\n ruleOrGroup={rule.rule}\n {...coreRuleProps}\n />\n )}\n {showLockButtons && (\n <LockRuleActionControlElement\n testID={TestID.lockRule}\n label={translations.lockRule.label ?? 'lock'}\n title={translations.lockRule.title ?? 'lock'}\n className={classNames.lockRule}\n handleOnClick={toggleLockRule}\n disabledTranslation={\n parentDisabled ? undefined : translations.lockRuleDisabled\n }\n ruleOrGroup={rule.rule}\n {...coreRuleProps}\n />\n )}\n </div>\n </>\n );\n}\n"]}
|