@d4gger/design-system 3.0.0 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{components/controlGroup/ControlGroup.cjs → _internal/floatingLayer.cjs} +11 -26
- package/dist/_internal/floatingLayer.cjs.map +7 -0
- package/dist/_internal/floatingLayer.d.cts +28 -0
- package/dist/_internal/floatingLayer.d.cts.map +1 -0
- package/dist/_internal/floatingLayer.d.mts +28 -0
- package/dist/_internal/floatingLayer.d.mts.map +1 -0
- package/dist/_internal/floatingLayer.d.ts +28 -0
- package/dist/_internal/floatingLayer.d.ts.map +1 -0
- package/dist/_internal/floatingLayer.js +11 -0
- package/dist/_internal/floatingLayer.js.map +7 -0
- package/dist/components/banner/Banner.cjs +105 -0
- package/dist/components/banner/Banner.cjs.map +7 -0
- package/dist/components/banner/Banner.d.cts +27 -0
- package/dist/components/banner/Banner.d.cts.map +1 -0
- package/dist/components/banner/Banner.d.mts +27 -0
- package/dist/components/banner/Banner.d.mts.map +1 -0
- package/dist/components/banner/Banner.d.ts +27 -0
- package/dist/components/banner/Banner.d.ts.map +1 -0
- package/dist/components/banner/Banner.js +80 -0
- package/dist/components/banner/Banner.js.map +7 -0
- package/dist/components/{controlGroup/controlGroup.props.cjs → banner/banner.props.cjs} +23 -16
- package/dist/components/banner/banner.props.cjs.map +7 -0
- package/dist/components/banner/banner.props.d.cts +32 -0
- package/dist/components/banner/banner.props.d.cts.map +1 -0
- package/dist/components/banner/banner.props.d.mts +32 -0
- package/dist/components/banner/banner.props.d.mts.map +1 -0
- package/dist/components/banner/banner.props.d.ts +32 -0
- package/dist/components/banner/banner.props.d.ts.map +1 -0
- package/dist/components/banner/banner.props.js +27 -0
- package/dist/components/banner/banner.props.js.map +7 -0
- package/dist/components/banner.css +60 -0
- package/dist/components/button-group.css +25 -0
- package/dist/components/button.css +9 -0
- package/dist/components/card.css +3 -0
- package/dist/components/carousel/Carousel.cjs +109 -39
- package/dist/components/carousel/Carousel.cjs.map +3 -3
- package/dist/components/carousel/Carousel.d.cts.map +1 -1
- package/dist/components/carousel/Carousel.d.mts.map +1 -1
- package/dist/components/carousel/Carousel.d.ts.map +1 -1
- package/dist/components/carousel/Carousel.js +111 -41
- package/dist/components/carousel/Carousel.js.map +3 -3
- package/dist/components/carousel.css +93 -26
- package/dist/components/chart/Chart.cjs +61 -11
- package/dist/components/chart/Chart.cjs.map +2 -2
- package/dist/components/chart/Chart.d.cts.map +1 -1
- package/dist/components/chart/Chart.d.mts.map +1 -1
- package/dist/components/chart/Chart.d.ts.map +1 -1
- package/dist/components/chart/Chart.js +62 -11
- package/dist/components/chart/Chart.js.map +2 -2
- package/dist/components/chart.css +10 -1
- package/dist/components/checkbox.css +14 -0
- package/dist/components/combobox/Combobox.cjs +3 -1
- package/dist/components/combobox/Combobox.cjs.map +2 -2
- package/dist/components/combobox/Combobox.d.cts.map +1 -1
- package/dist/components/combobox/Combobox.d.mts.map +1 -1
- package/dist/components/combobox/Combobox.d.ts.map +1 -1
- package/dist/components/combobox/Combobox.js +3 -1
- package/dist/components/combobox/Combobox.js.map +2 -2
- package/dist/components/combobox.css +5 -1
- package/dist/components/command/Command.cjs +1 -1
- package/dist/components/command/Command.cjs.map +2 -2
- package/dist/components/command/Command.js +1 -1
- package/dist/components/command/Command.js.map +2 -2
- package/dist/components/context-menu.css +1 -1
- package/dist/components/copy-field.css +18 -0
- package/dist/components/copyField/CopyField.cjs +3 -3
- package/dist/components/copyField/CopyField.cjs.map +2 -2
- package/dist/components/copyField/CopyField.d.cts.map +1 -1
- package/dist/components/copyField/CopyField.d.mts.map +1 -1
- package/dist/components/copyField/CopyField.d.ts.map +1 -1
- package/dist/components/copyField/CopyField.js +3 -3
- package/dist/components/copyField/CopyField.js.map +2 -2
- package/dist/components/data-list.css +19 -4
- package/dist/components/data-table.css +190 -0
- package/dist/components/dataTable/DataTable.cjs +193 -68
- package/dist/components/dataTable/DataTable.cjs.map +3 -3
- package/dist/components/dataTable/DataTable.d.cts +29 -1
- package/dist/components/dataTable/DataTable.d.cts.map +1 -1
- package/dist/components/dataTable/DataTable.d.mts +29 -1
- package/dist/components/dataTable/DataTable.d.mts.map +1 -1
- package/dist/components/dataTable/DataTable.d.ts +29 -1
- package/dist/components/dataTable/DataTable.d.ts.map +1 -1
- package/dist/components/dataTable/DataTable.js +193 -68
- package/dist/components/dataTable/DataTable.js.map +2 -2
- package/dist/components/dataTable/DataTableContext.cjs +41 -0
- package/dist/components/dataTable/DataTableContext.cjs.map +7 -0
- package/dist/components/dataTable/DataTableContext.d.cts +23 -0
- package/dist/components/dataTable/DataTableContext.d.cts.map +1 -0
- package/dist/components/dataTable/DataTableContext.d.mts +23 -0
- package/dist/components/dataTable/DataTableContext.d.mts.map +1 -0
- package/dist/components/dataTable/DataTableContext.d.ts +23 -0
- package/dist/components/dataTable/DataTableContext.d.ts.map +1 -0
- package/dist/components/dataTable/DataTableContext.js +11 -0
- package/dist/components/dataTable/DataTableContext.js.map +7 -0
- package/dist/components/dataTable/DataTablePagination.cjs +72 -47
- package/dist/components/dataTable/DataTablePagination.cjs.map +2 -2
- package/dist/components/dataTable/DataTablePagination.d.cts +5 -1
- package/dist/components/dataTable/DataTablePagination.d.cts.map +1 -1
- package/dist/components/dataTable/DataTablePagination.d.mts +5 -1
- package/dist/components/dataTable/DataTablePagination.d.mts.map +1 -1
- package/dist/components/dataTable/DataTablePagination.d.ts +5 -1
- package/dist/components/dataTable/DataTablePagination.d.ts.map +1 -1
- package/dist/components/dataTable/DataTablePagination.js +75 -47
- package/dist/components/dataTable/DataTablePagination.js.map +2 -2
- package/dist/components/dataTable/DataTableToolbar.cjs +122 -93
- package/dist/components/dataTable/DataTableToolbar.cjs.map +2 -2
- package/dist/components/dataTable/DataTableToolbar.d.cts +6 -5
- package/dist/components/dataTable/DataTableToolbar.d.cts.map +1 -1
- package/dist/components/dataTable/DataTableToolbar.d.mts +6 -5
- package/dist/components/dataTable/DataTableToolbar.d.mts.map +1 -1
- package/dist/components/dataTable/DataTableToolbar.d.ts +6 -5
- package/dist/components/dataTable/DataTableToolbar.d.ts.map +1 -1
- package/dist/components/dataTable/DataTableToolbar.js +123 -94
- package/dist/components/dataTable/DataTableToolbar.js.map +2 -2
- package/dist/components/dataTable/dataTable.export.cjs +83 -0
- package/dist/components/dataTable/dataTable.export.cjs.map +7 -0
- package/dist/components/dataTable/dataTable.export.d.cts +11 -0
- package/dist/components/dataTable/dataTable.export.d.cts.map +1 -0
- package/dist/components/dataTable/dataTable.export.d.mts +11 -0
- package/dist/components/dataTable/dataTable.export.d.mts.map +1 -0
- package/dist/components/dataTable/dataTable.export.d.ts +11 -0
- package/dist/components/dataTable/dataTable.export.d.ts.map +1 -0
- package/dist/components/dataTable/dataTable.export.js +63 -0
- package/dist/components/dataTable/dataTable.export.js.map +7 -0
- package/dist/components/dataTable/dataTable.props.cjs +23 -1
- package/dist/components/dataTable/dataTable.props.cjs.map +2 -2
- package/dist/components/dataTable/dataTable.props.d.cts +21 -1
- package/dist/components/dataTable/dataTable.props.d.cts.map +1 -1
- package/dist/components/dataTable/dataTable.props.d.mts +21 -1
- package/dist/components/dataTable/dataTable.props.d.mts.map +1 -1
- package/dist/components/dataTable/dataTable.props.d.ts +21 -1
- package/dist/components/dataTable/dataTable.props.d.ts.map +1 -1
- package/dist/components/dataTable/dataTable.props.js +23 -1
- package/dist/components/dataTable/dataTable.props.js.map +2 -2
- package/dist/components/dialog/Dialog.cjs +2 -1
- package/dist/components/dialog/Dialog.cjs.map +2 -2
- package/dist/components/dialog/Dialog.d.cts.map +1 -1
- package/dist/components/dialog/Dialog.d.mts.map +1 -1
- package/dist/components/dialog/Dialog.d.ts.map +1 -1
- package/dist/components/dialog/Dialog.js +2 -1
- package/dist/components/dialog/Dialog.js.map +2 -2
- package/dist/components/dropdown-menu.css +1 -1
- package/dist/components/empty-state.css +5 -0
- package/dist/components/fileUpload/FileUpload.cjs +10 -1
- package/dist/components/fileUpload/FileUpload.cjs.map +2 -2
- package/dist/components/fileUpload/FileUpload.d.cts +1 -0
- package/dist/components/fileUpload/FileUpload.d.cts.map +1 -1
- package/dist/components/fileUpload/FileUpload.d.mts +1 -0
- package/dist/components/fileUpload/FileUpload.d.mts.map +1 -1
- package/dist/components/fileUpload/FileUpload.d.ts +1 -0
- package/dist/components/fileUpload/FileUpload.d.ts.map +1 -1
- package/dist/components/fileUpload/FileUpload.js +10 -1
- package/dist/components/fileUpload/FileUpload.js.map +2 -2
- package/dist/components/filter-bar.css +380 -8
- package/dist/components/filterBar/FilterBar.cjs +630 -1
- package/dist/components/filterBar/FilterBar.cjs.map +2 -2
- package/dist/components/filterBar/FilterBar.d.cts +132 -2
- package/dist/components/filterBar/FilterBar.d.cts.map +1 -1
- package/dist/components/filterBar/FilterBar.d.mts +132 -2
- package/dist/components/filterBar/FilterBar.d.mts.map +1 -1
- package/dist/components/filterBar/FilterBar.d.ts +132 -2
- package/dist/components/filterBar/FilterBar.d.ts.map +1 -1
- package/dist/components/filterBar/FilterBar.js +631 -2
- package/dist/components/filterBar/FilterBar.js.map +2 -2
- package/dist/components/floating-panel.css +1 -1
- package/dist/components/fontProvider/FontProvider.cjs +1 -1
- package/dist/components/fontProvider/FontProvider.cjs.map +1 -1
- package/dist/components/fontProvider/FontProvider.js +1 -1
- package/dist/components/fontProvider/FontProvider.js.map +1 -1
- package/dist/components/icon/Icon.cjs +25 -2
- package/dist/components/icon/Icon.cjs.map +2 -2
- package/dist/components/icon/Icon.d.cts +29 -1
- package/dist/components/icon/Icon.d.cts.map +1 -1
- package/dist/components/icon/Icon.d.mts +29 -1
- package/dist/components/icon/Icon.d.mts.map +1 -1
- package/dist/components/icon/Icon.d.ts +29 -1
- package/dist/components/icon/Icon.d.ts.map +1 -1
- package/dist/components/icon/Icon.js +33 -2
- package/dist/components/icon/Icon.js.map +2 -2
- package/dist/components/icon/icons.cjs +16 -0
- package/dist/components/icon/icons.cjs.map +2 -2
- package/dist/components/icon/icons.d.cts +40 -0
- package/dist/components/icon/icons.d.cts.map +1 -1
- package/dist/components/icon/icons.d.mts +40 -0
- package/dist/components/icon/icons.d.mts.map +1 -1
- package/dist/components/icon/icons.d.ts +40 -0
- package/dist/components/icon/icons.d.ts.map +1 -1
- package/dist/components/icon/icons.js +16 -0
- package/dist/components/icon/icons.js.map +2 -2
- package/dist/components/icon-button.css +29 -0
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.cjs.map +2 -2
- package/dist/components/index.d.cts +1 -1
- package/dist/components/index.d.cts.map +1 -1
- package/dist/components/index.d.mts +1 -1
- package/dist/components/index.d.mts.map +1 -1
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/item/Item.cjs +1 -1
- package/dist/components/item/Item.cjs.map +2 -2
- package/dist/components/item/Item.js +1 -1
- package/dist/components/item/Item.js.map +2 -2
- package/dist/components/item.css +12 -1
- package/dist/components/marquee/Marquee.cjs +1 -1
- package/dist/components/marquee/Marquee.cjs.map +2 -2
- package/dist/components/marquee/Marquee.js +1 -1
- package/dist/components/marquee/Marquee.js.map +2 -2
- package/dist/components/marquee.css +6 -0
- package/dist/components/menu/Menu.cjs +3 -1
- package/dist/components/menu/Menu.cjs.map +2 -2
- package/dist/components/menu/Menu.d.cts.map +1 -1
- package/dist/components/menu/Menu.d.mts.map +1 -1
- package/dist/components/menu/Menu.d.ts.map +1 -1
- package/dist/components/menu/Menu.js +3 -1
- package/dist/components/menu/Menu.js.map +2 -2
- package/dist/components/menubar.css +1 -1
- package/dist/components/metric.css +5 -0
- package/dist/components/pagination/Pagination.cjs +143 -17
- package/dist/components/pagination/Pagination.cjs.map +2 -2
- package/dist/components/pagination/Pagination.d.cts +64 -4
- package/dist/components/pagination/Pagination.d.cts.map +1 -1
- package/dist/components/pagination/Pagination.d.mts +64 -4
- package/dist/components/pagination/Pagination.d.mts.map +1 -1
- package/dist/components/pagination/Pagination.d.ts +64 -4
- package/dist/components/pagination/Pagination.d.ts.map +1 -1
- package/dist/components/pagination/Pagination.js +143 -17
- package/dist/components/pagination/Pagination.js.map +2 -2
- package/dist/components/pagination.css +50 -8
- package/dist/components/phoneInput/PhoneInput.cjs +18 -13
- package/dist/components/phoneInput/PhoneInput.cjs.map +2 -2
- package/dist/components/phoneInput/PhoneInput.d.cts.map +1 -1
- package/dist/components/phoneInput/PhoneInput.d.mts.map +1 -1
- package/dist/components/phoneInput/PhoneInput.d.ts.map +1 -1
- package/dist/components/phoneInput/PhoneInput.js +19 -14
- package/dist/components/phoneInput/PhoneInput.js.map +2 -2
- package/dist/components/popover/Popover.cjs +2 -1
- package/dist/components/popover/Popover.cjs.map +2 -2
- package/dist/components/popover/Popover.d.cts.map +1 -1
- package/dist/components/popover/Popover.d.mts.map +1 -1
- package/dist/components/popover/Popover.d.ts.map +1 -1
- package/dist/components/popover/Popover.js +2 -1
- package/dist/components/popover/Popover.js.map +2 -2
- package/dist/components/prose.css +1 -1
- package/dist/components/qr-code.css +5 -15
- package/dist/components/radio-group.css +19 -0
- package/dist/components/radioGroup/RadioGroup.cjs +3 -2
- package/dist/components/radioGroup/RadioGroup.cjs.map +2 -2
- package/dist/components/radioGroup/RadioGroup.d.cts.map +1 -1
- package/dist/components/radioGroup/RadioGroup.d.mts.map +1 -1
- package/dist/components/radioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/components/radioGroup/RadioGroup.js +3 -2
- package/dist/components/radioGroup/RadioGroup.js.map +2 -2
- package/dist/components/radioGroup/radioGroup.props.cjs +1 -1
- package/dist/components/radioGroup/radioGroup.props.cjs.map +2 -2
- package/dist/components/radioGroup/radioGroup.props.d.cts +1 -1
- package/dist/components/radioGroup/radioGroup.props.d.mts +1 -1
- package/dist/components/radioGroup/radioGroup.props.d.ts +1 -1
- package/dist/components/radioGroup/radioGroup.props.js +1 -1
- package/dist/components/radioGroup/radioGroup.props.js.map +2 -2
- package/dist/components/rating.css +12 -0
- package/dist/components/result.css +2 -1
- package/dist/components/richTextEditor/RichTextEditor.cjs +11 -3
- package/dist/components/richTextEditor/RichTextEditor.cjs.map +2 -2
- package/dist/components/richTextEditor/RichTextEditor.d.cts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.d.mts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.d.ts.map +1 -1
- package/dist/components/richTextEditor/RichTextEditor.js +11 -3
- package/dist/components/richTextEditor/RichTextEditor.js.map +2 -2
- package/dist/components/segmented-control.css +80 -4
- package/dist/components/segmentedControl/SegmentedControl.cjs +18 -5
- package/dist/components/segmentedControl/SegmentedControl.cjs.map +2 -2
- package/dist/components/segmentedControl/SegmentedControl.d.cts.map +1 -1
- package/dist/components/segmentedControl/SegmentedControl.d.mts.map +1 -1
- package/dist/components/segmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/components/segmentedControl/SegmentedControl.js +18 -5
- package/dist/components/segmentedControl/SegmentedControl.js.map +2 -2
- package/dist/components/segmentedControl/segmentedControl.props.cjs +10 -0
- package/dist/components/segmentedControl/segmentedControl.props.cjs.map +2 -2
- package/dist/components/segmentedControl/segmentedControl.props.d.cts +9 -0
- package/dist/components/segmentedControl/segmentedControl.props.d.cts.map +1 -1
- package/dist/components/segmentedControl/segmentedControl.props.d.mts +9 -0
- package/dist/components/segmentedControl/segmentedControl.props.d.mts.map +1 -1
- package/dist/components/segmentedControl/segmentedControl.props.d.ts +9 -0
- package/dist/components/segmentedControl/segmentedControl.props.d.ts.map +1 -1
- package/dist/components/segmentedControl/segmentedControl.props.js +10 -0
- package/dist/components/segmentedControl/segmentedControl.props.js.map +2 -2
- package/dist/components/select/Select.cjs +3 -1
- package/dist/components/select/Select.cjs.map +2 -2
- package/dist/components/select/Select.d.cts.map +1 -1
- package/dist/components/select/Select.d.mts.map +1 -1
- package/dist/components/select/Select.d.ts.map +1 -1
- package/dist/components/select/Select.js +3 -1
- package/dist/components/select/Select.js.map +2 -2
- package/dist/components/select.css +1 -1
- package/dist/components/sonner.css +1 -1
- package/dist/components/sortableList/SortableList.cjs +8 -2
- package/dist/components/sortableList/SortableList.cjs.map +2 -2
- package/dist/components/sortableList/SortableList.d.cts.map +1 -1
- package/dist/components/sortableList/SortableList.d.mts.map +1 -1
- package/dist/components/sortableList/SortableList.d.ts.map +1 -1
- package/dist/components/sortableList/SortableList.js +8 -2
- package/dist/components/sortableList/SortableList.js.map +2 -2
- package/dist/components/stat-card.css +2 -0
- package/dist/components/table/Table.cjs +3 -2
- package/dist/components/table/Table.cjs.map +2 -2
- package/dist/components/table/Table.d.cts.map +1 -1
- package/dist/components/table/Table.d.mts.map +1 -1
- package/dist/components/table/Table.d.ts.map +1 -1
- package/dist/components/table/Table.js +3 -2
- package/dist/components/table/Table.js.map +2 -2
- package/dist/components/table/table.props.cjs +6 -0
- package/dist/components/table/table.props.cjs.map +2 -2
- package/dist/components/table/table.props.d.cts +5 -0
- package/dist/components/table/table.props.d.cts.map +1 -1
- package/dist/components/table/table.props.d.mts +5 -0
- package/dist/components/table/table.props.d.mts.map +1 -1
- package/dist/components/table/table.props.d.ts +5 -0
- package/dist/components/table/table.props.d.ts.map +1 -1
- package/dist/components/table/table.props.js +6 -0
- package/dist/components/table/table.props.js.map +2 -2
- package/dist/components/table.css +20 -13
- package/dist/components/tabs.css +10 -0
- package/dist/components/timeline.css +54 -18
- package/dist/components/toast.css +33 -1
- package/dist/components/toggle-group.css +5 -0
- package/dist/components.css +1 -2
- package/dist/docs/README.md +1 -1
- package/dist/docs/component-contract.md +4 -4
- package/dist/docs/component-index.json +9 -9
- package/dist/docs/components/banner.md +152 -0
- package/dist/docs/components/button-group.md +4 -3
- package/dist/docs/components/button.md +2 -2
- package/dist/docs/components/card.md +1 -0
- package/dist/docs/components/carousel.md +55 -32
- package/dist/docs/components/chart.md +25 -7
- package/dist/docs/components/checkbox.md +4 -0
- package/dist/docs/components/combobox.md +3 -1
- package/dist/docs/components/command.md +2 -2
- package/dist/docs/components/copy-field.md +2 -2
- package/dist/docs/components/data-list.md +15 -3
- package/dist/docs/components/data-table.md +98 -17
- package/dist/docs/components/dialog.md +4 -0
- package/dist/docs/components/dropdown-menu.md +2 -1
- package/dist/docs/components/empty-state.md +3 -1
- package/dist/docs/components/file-upload.md +1 -0
- package/dist/docs/components/filter-bar.md +193 -8
- package/dist/docs/components/floating-panel.md +8 -8
- package/dist/docs/components/icon-button.md +4 -1
- package/dist/docs/components/item.md +18 -13
- package/dist/docs/components/marquee.md +2 -2
- package/dist/docs/components/menu.md +4 -1
- package/dist/docs/components/metric.md +4 -1
- package/dist/docs/components/pagination.md +88 -17
- package/dist/docs/components/pills.md +1 -1
- package/dist/docs/components/popover.md +2 -0
- package/dist/docs/components/prose.md +5 -1
- package/dist/docs/components/qr-code.md +14 -13
- package/dist/docs/components/radio-group.md +5 -2
- package/dist/docs/components/rating.md +2 -0
- package/dist/docs/components/result.md +6 -0
- package/dist/docs/components/segmented-control.md +7 -2
- package/dist/docs/components/select.md +3 -2
- package/dist/docs/components/sidebar.md +3 -1
- package/dist/docs/components/sonner.md +1 -1
- package/dist/docs/components/sortable-list.md +2 -0
- package/dist/docs/components/stat-card.md +5 -4
- package/dist/docs/components/stepper.md +1 -0
- package/dist/docs/components/table.md +14 -5
- package/dist/docs/components/tag.md +4 -2
- package/dist/docs/components/timeline.md +9 -5
- package/dist/docs/components/toast.md +1 -1
- package/dist/docs/components/toggle-group.md +2 -1
- package/dist/fonts.css +1 -1
- package/dist/generated/tokens.cjs +1 -1
- package/dist/generated/tokens.cjs.map +1 -1
- package/dist/generated/tokens.js +1 -1
- package/dist/generated/tokens.js.map +1 -1
- package/dist/motion.css +18 -3
- package/dist/styles.css +1249 -292
- package/dist/tokens.css +21 -15
- package/package.json +1 -1
- package/dist/components/control-group.css +0 -142
- package/dist/components/controlGroup/ControlGroup.cjs.map +0 -7
- package/dist/components/controlGroup/ControlGroup.d.cts +0 -16
- package/dist/components/controlGroup/ControlGroup.d.cts.map +0 -1
- package/dist/components/controlGroup/ControlGroup.d.mts +0 -16
- package/dist/components/controlGroup/ControlGroup.d.mts.map +0 -1
- package/dist/components/controlGroup/ControlGroup.d.ts +0 -16
- package/dist/components/controlGroup/ControlGroup.d.ts.map +0 -1
- package/dist/components/controlGroup/ControlGroup.js +0 -26
- package/dist/components/controlGroup/ControlGroup.js.map +0 -7
- package/dist/components/controlGroup/controlGroup.props.cjs.map +0 -7
- package/dist/components/controlGroup/controlGroup.props.d.cts +0 -18
- package/dist/components/controlGroup/controlGroup.props.d.cts.map +0 -1
- package/dist/components/controlGroup/controlGroup.props.d.mts +0 -18
- package/dist/components/controlGroup/controlGroup.props.d.mts.map +0 -1
- package/dist/components/controlGroup/controlGroup.props.d.ts +0 -18
- package/dist/components/controlGroup/controlGroup.props.d.ts.map +0 -1
- package/dist/components/controlGroup/controlGroup.props.js +0 -20
- package/dist/components/controlGroup/controlGroup.props.js.map +0 -7
- package/dist/docs/components/control-group.md +0 -261
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/popover/Popover.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport classNames from 'classnames'\nimport * as PopoverPrimitive from '@radix-ui/react-popover'\nimport { Slot } from '../slot/Slot'\n\nimport { PortalThemeBoundary, PortalThemeWrapper } from '../../_internal/BaseDialog'\nimport { usePrefersReducedMotion } from '../../_internal'\nimport { MOTION_TRANSITIONS } from '../../_internal/motion'\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { AnimatePresence, motion } from '../../motion'\nimport { popoverContentPropDefs } from './popover.props'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\nconst PopoverOpenContext = React.createContext(false)\n\ntype PopoverAriaContextValue = {\n titleId: string\n descriptionId: string\n}\n\nconst PopoverAriaContext = React.createContext<PopoverAriaContextValue | null>(null)\n\nfunction usePopoverAriaContext() {\n return React.useContext(PopoverAriaContext)\n}\n\nfunction useControllablePopoverOpenState({\n open: openProp,\n defaultOpen,\n onOpenChange,\n}: Pick<PopoverRootProps, 'open' | 'defaultOpen' | 'onOpenChange'>) {\n const [uncontrolledOpen, setUncontrolledOpen] = React.useState(defaultOpen ?? false)\n const open = openProp ?? uncontrolledOpen\n\n const handleOpenChange = React.useCallback(\n (nextOpen: boolean) => {\n if (openProp === undefined) {\n setUncontrolledOpen(nextOpen)\n }\n\n onOpenChange?.(nextOpen)\n },\n [onOpenChange, openProp],\n )\n\n return [open, handleOpenChange] as const\n}\n\ntype PopoverContentOwnProps = GetPropDefTypes<typeof popoverContentPropDefs>\n\ntype PopoverRootProps = React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Root>\ntype PopoverProps = PopoverRootProps\ntype PopoverContentProps = React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content> & PopoverContentOwnProps\n\ntype PopoverSide = NonNullable<React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>['side']>\ntype PopoverAlign = NonNullable<React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>['align']>\n\ninterface PopoverPositionerProps extends React.ComponentPropsWithoutRef<'div'> {\n side?: PopoverSide\n sideOffset?: number\n align?: PopoverAlign\n alignOffset?: number\n asChild?: boolean\n}\n\ninterface PopoverArrowProps extends Omit<React.ComponentPropsWithoutRef<'svg'>, 'width' | 'height'> {\n width?: number\n height?: number\n asChild?: boolean\n}\n\nconst PopoverTrigger: typeof PopoverPrimitive.Trigger = PopoverPrimitive.Trigger\nconst PopoverAnchor: typeof PopoverPrimitive.Anchor = PopoverPrimitive.Anchor\n\nfunction PopoverRoot({ children, defaultOpen, onOpenChange, open: openProp, ...props }: PopoverRootProps) {\n const [open, setOpen] = useControllablePopoverOpenState({\n open: openProp,\n defaultOpen,\n onOpenChange,\n })\n\n return (\n <PortalThemeBoundary>\n <PopoverOpenContext.Provider value={open}>\n <PopoverPrimitive.Root {...props} open={open} onOpenChange={setOpen}>\n {children}\n </PopoverPrimitive.Root>\n </PopoverOpenContext.Provider>\n </PortalThemeBoundary>\n )\n}\nPopoverRoot.displayName = 'Popover'\n\nconst PopoverPositioner = React.forwardRef<HTMLDivElement, PopoverPositionerProps>(\n ({ className, side = 'bottom', sideOffset = 8, align = 'center', alignOffset = 0, asChild, children, ...props }, forwardedRef) => {\n const Comp = asChild ? Slot : 'div'\n return (\n <Comp\n ref={forwardedRef}\n className={classNames('dsx-popover__positioner', className)}\n data-slot=\"popover-positioner\"\n data-side={side}\n data-align={align}\n {...props}\n >\n {children}\n </Comp>\n )\n },\n)\nPopoverPositioner.displayName = 'PopoverPositioner'\n\nconst PopoverArrow = React.forwardRef<SVGSVGElement, PopoverArrowProps>(\n ({ className, width = 10, height = 5, asChild, ...props }, forwardedRef) => {\n if (asChild) {\n const { onCopy: _onCopy, ...slotProps } = props as React.ComponentPropsWithoutRef<'div'>\n return (\n <Slot\n ref={forwardedRef as React.ForwardedRef<HTMLElement>}\n className={classNames('dsx-popover__arrow', className)}\n data-slot=\"popover-arrow\"\n {...slotProps}\n />\n )\n }\n return (\n <svg\n ref={forwardedRef}\n className={classNames('dsx-popover__arrow', className)}\n data-slot=\"popover-arrow\"\n width={width}\n height={height}\n viewBox=\"0 0 10 5\"\n preserveAspectRatio=\"none\"\n {...props}\n >\n <path d=\"M0 0 L5 5 L10 0 Z\" fill=\"currentColor\" />\n </svg>\n )\n },\n)\nPopoverArrow.displayName = 'PopoverArrow'\n\nconst PopoverContent = React.forwardRef<React.ComponentRef<typeof PopoverPrimitive.Content>, PopoverContentProps>(\n ({ className: propClassName, forceMount: forceMountProp = false, sideOffset = 8, showArrow = false, size = 'md', children, ...props }, forwardedRef) => {\n const open = React.useContext(PopoverOpenContext)\n const prefersReducedMotion = usePrefersReducedMotion()\n const { className, ...contentProps } = extractProps(\n {\n ...props,\n className: propClassName,\n showArrow,\n },\n popoverContentPropDefs,\n )\n const isPresent = open || forceMountProp\n const titleId = React.useId()\n const descriptionId = React.useId()\n\n return (\n <PopoverPrimitive.Portal>\n <AnimatePresence initial={false}>\n {isPresent ? (\n <PortalThemeWrapper key=\"popover-content\">\n <PopoverAriaContext.Provider value={{ titleId, descriptionId }}>\n <PopoverPrimitive.Content\n {...contentProps}\n ref={forwardedRef}\n asChild\n sideOffset={sideOffset}\n aria-labelledby={titleId}\n aria-describedby={descriptionId}\n data-size={size}\n data-show-arrow={showArrow ? 'true' : 'false'}\n >\n <motion.div\n className={classNames('dsx-popover__content', className)}\n initial={prefersReducedMotion ? { opacity: 0 } : { opacity: 0, y: 4 }}\n animate={prefersReducedMotion ? { opacity: open ? 1 : 0 } : { opacity: open ? 1 : 0, y: open ? 0 : 2 }}\n exit={prefersReducedMotion ? { opacity: 0 } : { opacity: 0, y: 2 }}\n transition={prefersReducedMotion ? MOTION_TRANSITIONS.reduced : MOTION_TRANSITIONS.popover}\n >\n {children}\n {showArrow ? <PopoverPrimitive.Arrow className=\"dsx-popover__arrow\" width={16} height={8} /> : null}\n </motion.div>\n </PopoverPrimitive.Content>\n </PopoverAriaContext.Provider>\n </PortalThemeWrapper>\n ) : null}\n </AnimatePresence>\n </PopoverPrimitive.Portal>\n )\n },\n)\nPopoverContent.displayName = 'PopoverContent'\n\nconst PopoverTitle = React.forwardRef<React.ComponentRef<'h3'>, React.ComponentPropsWithoutRef<'h3'>>(\n ({ className, id, ...props }, forwardedRef) => {\n const ariaContext = usePopoverAriaContext()\n return (\n <h3\n {...props}\n ref={forwardedRef}\n id={id ?? ariaContext?.titleId}\n className={classNames('dsx-popover__title', className)}\n />\n )\n },\n)\nPopoverTitle.displayName = 'PopoverTitle'\n\nconst PopoverDescription = React.forwardRef<React.ComponentRef<'p'>, React.ComponentPropsWithoutRef<'p'>>(\n ({ className, id, ...props }, forwardedRef) => {\n const ariaContext = usePopoverAriaContext()\n return (\n <p\n {...props}\n ref={forwardedRef}\n id={id ?? ariaContext?.descriptionId}\n className={classNames('dsx-popover__description', className)}\n />\n )\n },\n)\nPopoverDescription.displayName = 'PopoverDescription'\n\nconst PopoverClose = React.forwardRef<\n React.ComponentRef<typeof PopoverPrimitive.Close>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Close>\n>(({ className, ...props }, forwardedRef) => (\n <PopoverPrimitive.Close\n {...props}\n ref={forwardedRef}\n className={classNames('dsx-popover__close', className)}\n />\n))\nPopoverClose.displayName = 'PopoverClose'\n\nconst Popover: typeof PopoverRoot & {\n Trigger: typeof PopoverTrigger\n Content: typeof PopoverContent\n Anchor: typeof PopoverAnchor\n Title: typeof PopoverTitle\n Description: typeof PopoverDescription\n Close: typeof PopoverClose\n Positioner: typeof PopoverPositioner\n Arrow: typeof PopoverArrow\n} = Object.assign(PopoverRoot, {\n Trigger: PopoverTrigger,\n Content: PopoverContent,\n Anchor: PopoverAnchor,\n Title: PopoverTitle,\n Description: PopoverDescription,\n Close: PopoverClose,\n Positioner: PopoverPositioner,\n Arrow: PopoverArrow,\n})\nPopover.displayName = 'Popover'\n\nexport { Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverPositioner, PopoverRoot, PopoverTitle, PopoverTrigger }\nexport type { PopoverArrowProps, PopoverContentProps, PopoverPositionerProps, PopoverProps, PopoverRootProps }\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport classNames from 'classnames'\nimport * as PopoverPrimitive from '@radix-ui/react-popover'\nimport { Slot } from '../slot/Slot'\n\nimport { PortalThemeBoundary, PortalThemeWrapper } from '../../_internal/BaseDialog'\nimport { FloatingLayerHostContext } from '../../_internal/floatingLayer'\nimport { usePrefersReducedMotion } from '../../_internal'\nimport { MOTION_TRANSITIONS } from '../../_internal/motion'\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { AnimatePresence, motion } from '../../motion'\nimport { popoverContentPropDefs } from './popover.props'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\nconst PopoverOpenContext = React.createContext(false)\n\ntype PopoverAriaContextValue = {\n titleId: string\n descriptionId: string\n}\n\nconst PopoverAriaContext = React.createContext<PopoverAriaContextValue | null>(null)\n\nfunction usePopoverAriaContext() {\n return React.useContext(PopoverAriaContext)\n}\n\nfunction useControllablePopoverOpenState({\n open: openProp,\n defaultOpen,\n onOpenChange,\n}: Pick<PopoverRootProps, 'open' | 'defaultOpen' | 'onOpenChange'>) {\n const [uncontrolledOpen, setUncontrolledOpen] = React.useState(defaultOpen ?? false)\n const open = openProp ?? uncontrolledOpen\n\n const handleOpenChange = React.useCallback(\n (nextOpen: boolean) => {\n if (openProp === undefined) {\n setUncontrolledOpen(nextOpen)\n }\n\n onOpenChange?.(nextOpen)\n },\n [onOpenChange, openProp],\n )\n\n return [open, handleOpenChange] as const\n}\n\ntype PopoverContentOwnProps = GetPropDefTypes<typeof popoverContentPropDefs>\n\ntype PopoverRootProps = React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Root>\ntype PopoverProps = PopoverRootProps\ntype PopoverContentProps = React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content> & PopoverContentOwnProps\n\ntype PopoverSide = NonNullable<React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>['side']>\ntype PopoverAlign = NonNullable<React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>['align']>\n\ninterface PopoverPositionerProps extends React.ComponentPropsWithoutRef<'div'> {\n side?: PopoverSide\n sideOffset?: number\n align?: PopoverAlign\n alignOffset?: number\n asChild?: boolean\n}\n\ninterface PopoverArrowProps extends Omit<React.ComponentPropsWithoutRef<'svg'>, 'width' | 'height'> {\n width?: number\n height?: number\n asChild?: boolean\n}\n\nconst PopoverTrigger: typeof PopoverPrimitive.Trigger = PopoverPrimitive.Trigger\nconst PopoverAnchor: typeof PopoverPrimitive.Anchor = PopoverPrimitive.Anchor\n\nfunction PopoverRoot({ children, defaultOpen, onOpenChange, open: openProp, ...props }: PopoverRootProps) {\n const [open, setOpen] = useControllablePopoverOpenState({\n open: openProp,\n defaultOpen,\n onOpenChange,\n })\n\n return (\n <PortalThemeBoundary>\n <PopoverOpenContext.Provider value={open}>\n <PopoverPrimitive.Root {...props} open={open} onOpenChange={setOpen}>\n {children}\n </PopoverPrimitive.Root>\n </PopoverOpenContext.Provider>\n </PortalThemeBoundary>\n )\n}\nPopoverRoot.displayName = 'Popover'\n\nconst PopoverPositioner = React.forwardRef<HTMLDivElement, PopoverPositionerProps>(\n ({ className, side = 'bottom', sideOffset = 8, align = 'center', alignOffset = 0, asChild, children, ...props }, forwardedRef) => {\n const Comp = asChild ? Slot : 'div'\n return (\n <Comp\n ref={forwardedRef}\n className={classNames('dsx-popover__positioner', className)}\n data-slot=\"popover-positioner\"\n data-side={side}\n data-align={align}\n {...props}\n >\n {children}\n </Comp>\n )\n },\n)\nPopoverPositioner.displayName = 'PopoverPositioner'\n\nconst PopoverArrow = React.forwardRef<SVGSVGElement, PopoverArrowProps>(\n ({ className, width = 10, height = 5, asChild, ...props }, forwardedRef) => {\n if (asChild) {\n const { onCopy: _onCopy, ...slotProps } = props as React.ComponentPropsWithoutRef<'div'>\n return (\n <Slot\n ref={forwardedRef as React.ForwardedRef<HTMLElement>}\n className={classNames('dsx-popover__arrow', className)}\n data-slot=\"popover-arrow\"\n {...slotProps}\n />\n )\n }\n return (\n <svg\n ref={forwardedRef}\n className={classNames('dsx-popover__arrow', className)}\n data-slot=\"popover-arrow\"\n width={width}\n height={height}\n viewBox=\"0 0 10 5\"\n preserveAspectRatio=\"none\"\n {...props}\n >\n <path d=\"M0 0 L5 5 L10 0 Z\" fill=\"currentColor\" />\n </svg>\n )\n },\n)\nPopoverArrow.displayName = 'PopoverArrow'\n\nconst PopoverContent = React.forwardRef<React.ComponentRef<typeof PopoverPrimitive.Content>, PopoverContentProps>(\n ({ className: propClassName, forceMount: forceMountProp = false, sideOffset = 8, showArrow = false, size = 'md', children, ...props }, forwardedRef) => {\n const open = React.useContext(PopoverOpenContext)\n const prefersReducedMotion = usePrefersReducedMotion()\n const { className, ...contentProps } = extractProps(\n {\n ...props,\n className: propClassName,\n showArrow,\n },\n popoverContentPropDefs,\n )\n const isPresent = open || forceMountProp\n const titleId = React.useId()\n const descriptionId = React.useId()\n\n return (\n <PopoverPrimitive.Portal>\n <AnimatePresence initial={false}>\n {isPresent ? (\n <PortalThemeWrapper key=\"popover-content\">\n <PopoverAriaContext.Provider value={{ titleId, descriptionId }}>\n <PopoverPrimitive.Content\n {...contentProps}\n ref={forwardedRef}\n asChild\n sideOffset={sideOffset}\n aria-labelledby={titleId}\n aria-describedby={descriptionId}\n data-size={size}\n data-show-arrow={showArrow ? 'true' : 'false'}\n >\n <motion.div\n className={classNames('dsx-popover__content', className)}\n initial={prefersReducedMotion ? { opacity: 0 } : { opacity: 0, y: 4 }}\n animate={prefersReducedMotion ? { opacity: open ? 1 : 0 } : { opacity: open ? 1 : 0, y: open ? 0 : 2 }}\n exit={prefersReducedMotion ? { opacity: 0 } : { opacity: 0, y: 2 }}\n transition={prefersReducedMotion ? MOTION_TRANSITIONS.reduced : MOTION_TRANSITIONS.popover}\n >\n <FloatingLayerHostContext.Provider value>\n {children}\n </FloatingLayerHostContext.Provider>\n {showArrow ? <PopoverPrimitive.Arrow className=\"dsx-popover__arrow\" width={16} height={8} /> : null}\n </motion.div>\n </PopoverPrimitive.Content>\n </PopoverAriaContext.Provider>\n </PortalThemeWrapper>\n ) : null}\n </AnimatePresence>\n </PopoverPrimitive.Portal>\n )\n },\n)\nPopoverContent.displayName = 'PopoverContent'\n\nconst PopoverTitle = React.forwardRef<React.ComponentRef<'h3'>, React.ComponentPropsWithoutRef<'h3'>>(\n ({ className, id, ...props }, forwardedRef) => {\n const ariaContext = usePopoverAriaContext()\n return (\n <h3\n {...props}\n ref={forwardedRef}\n id={id ?? ariaContext?.titleId}\n className={classNames('dsx-popover__title', className)}\n />\n )\n },\n)\nPopoverTitle.displayName = 'PopoverTitle'\n\nconst PopoverDescription = React.forwardRef<React.ComponentRef<'p'>, React.ComponentPropsWithoutRef<'p'>>(\n ({ className, id, ...props }, forwardedRef) => {\n const ariaContext = usePopoverAriaContext()\n return (\n <p\n {...props}\n ref={forwardedRef}\n id={id ?? ariaContext?.descriptionId}\n className={classNames('dsx-popover__description', className)}\n />\n )\n },\n)\nPopoverDescription.displayName = 'PopoverDescription'\n\nconst PopoverClose = React.forwardRef<\n React.ComponentRef<typeof PopoverPrimitive.Close>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Close>\n>(({ className, ...props }, forwardedRef) => (\n <PopoverPrimitive.Close\n {...props}\n ref={forwardedRef}\n className={classNames('dsx-popover__close', className)}\n />\n))\nPopoverClose.displayName = 'PopoverClose'\n\nconst Popover: typeof PopoverRoot & {\n Trigger: typeof PopoverTrigger\n Content: typeof PopoverContent\n Anchor: typeof PopoverAnchor\n Title: typeof PopoverTitle\n Description: typeof PopoverDescription\n Close: typeof PopoverClose\n Positioner: typeof PopoverPositioner\n Arrow: typeof PopoverArrow\n} = Object.assign(PopoverRoot, {\n Trigger: PopoverTrigger,\n Content: PopoverContent,\n Anchor: PopoverAnchor,\n Title: PopoverTitle,\n Description: PopoverDescription,\n Close: PopoverClose,\n Positioner: PopoverPositioner,\n Arrow: PopoverArrow,\n})\nPopover.displayName = 'Popover'\n\nexport { Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverPositioner, PopoverRoot, PopoverTitle, PopoverTrigger }\nexport type { PopoverArrowProps, PopoverContentProps, PopoverPositionerProps, PopoverProps, PopoverRootProps }\n"],
|
|
5
|
+
"mappings": ";AAEA,YAAY,WAAW;AACvB,OAAO,gBAAgB;AACvB,YAAY,sBAAsB;AAClC,SAAS,YAAY;AAErB,SAAS,qBAAqB,0BAA0B;AACxD,SAAS,gCAAgC;AACzC,SAAS,+BAA+B;AACxC,SAAS,0BAA0B;AACnC,SAAS,oBAAoB;AAC7B,SAAS,iBAAiB,cAAc;AACxC,SAAS,8BAA8B;AA2E/B,cA2FU,YA3FV;AAvER,MAAM,qBAAqB,MAAM,cAAc,KAAK;AAOpD,MAAM,qBAAqB,MAAM,cAA8C,IAAI;AAEnF,SAAS,wBAAwB;AAC/B,SAAO,MAAM,WAAW,kBAAkB;AAC5C;AAEA,SAAS,gCAAgC;AAAA,EACvC,MAAM;AAAA,EACN;AAAA,EACA;AACF,GAAoE;AAClE,QAAM,CAAC,kBAAkB,mBAAmB,IAAI,MAAM,SAAS,eAAe,KAAK;AACnF,QAAM,OAAO,YAAY;AAEzB,QAAM,mBAAmB,MAAM;AAAA,IAC7B,CAAC,aAAsB;AACrB,UAAI,aAAa,QAAW;AAC1B,4BAAoB,QAAQ;AAAA,MAC9B;AAEA,qBAAe,QAAQ;AAAA,IACzB;AAAA,IACA,CAAC,cAAc,QAAQ;AAAA,EACzB;AAEA,SAAO,CAAC,MAAM,gBAAgB;AAChC;AAyBA,MAAM,iBAAkD,iBAAiB;AACzE,MAAM,gBAAgD,iBAAiB;AAEvE,SAAS,YAAY,EAAE,UAAU,aAAa,cAAc,MAAM,UAAU,GAAG,MAAM,GAAqB;AACxG,QAAM,CAAC,MAAM,OAAO,IAAI,gCAAgC;AAAA,IACtD,MAAM;AAAA,IACN;AAAA,IACA;AAAA,EACF,CAAC;AAED,SACE,oBAAC,uBACC,8BAAC,mBAAmB,UAAnB,EAA4B,OAAO,MAClC,8BAAC,iBAAiB,MAAjB,EAAuB,GAAG,OAAO,MAAY,cAAc,SACzD,UACH,GACF,GACF;AAEJ;AACA,YAAY,cAAc;AAE1B,MAAM,oBAAoB,MAAM;AAAA,EAC9B,CAAC,EAAE,WAAW,OAAO,UAAU,aAAa,GAAG,QAAQ,UAAU,cAAc,GAAG,SAAS,UAAU,GAAG,MAAM,GAAG,iBAAiB;AAChI,UAAM,OAAO,UAAU,OAAO;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,KAAK;AAAA,QACL,WAAW,WAAW,2BAA2B,SAAS;AAAA,QAC1D,aAAU;AAAA,QACV,aAAW;AAAA,QACX,cAAY;AAAA,QACX,GAAG;AAAA,QAEH;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AACA,kBAAkB,cAAc;AAEhC,MAAM,eAAe,MAAM;AAAA,EACzB,CAAC,EAAE,WAAW,QAAQ,IAAI,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,iBAAiB;AAC1E,QAAI,SAAS;AACX,YAAM,EAAE,QAAQ,SAAS,GAAG,UAAU,IAAI;AAC1C,aACE;AAAA,QAAC;AAAA;AAAA,UACC,KAAK;AAAA,UACL,WAAW,WAAW,sBAAsB,SAAS;AAAA,UACrD,aAAU;AAAA,UACT,GAAG;AAAA;AAAA,MACN;AAAA,IAEJ;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,KAAK;AAAA,QACL,WAAW,WAAW,sBAAsB,SAAS;AAAA,QACrD,aAAU;AAAA,QACV;AAAA,QACA;AAAA,QACA,SAAQ;AAAA,QACR,qBAAoB;AAAA,QACnB,GAAG;AAAA,QAEJ,8BAAC,UAAK,GAAE,qBAAoB,MAAK,gBAAe;AAAA;AAAA,IAClD;AAAA,EAEJ;AACF;AACA,aAAa,cAAc;AAE3B,MAAM,iBAAiB,MAAM;AAAA,EAC3B,CAAC,EAAE,WAAW,eAAe,YAAY,iBAAiB,OAAO,aAAa,GAAG,YAAY,OAAO,OAAO,MAAM,UAAU,GAAG,MAAM,GAAG,iBAAiB;AACtJ,UAAM,OAAO,MAAM,WAAW,kBAAkB;AAChD,UAAM,uBAAuB,wBAAwB;AACrD,UAAM,EAAE,WAAW,GAAG,aAAa,IAAI;AAAA,MACrC;AAAA,QACE,GAAG;AAAA,QACH,WAAW;AAAA,QACX;AAAA,MACF;AAAA,MACA;AAAA,IACF;AACA,UAAM,YAAY,QAAQ;AAC1B,UAAM,UAAU,MAAM,MAAM;AAC5B,UAAM,gBAAgB,MAAM,MAAM;AAElC,WACE,oBAAC,iBAAiB,QAAjB,EACC,8BAAC,mBAAgB,SAAS,OACvB,sBACC,oBAAC,sBACC,8BAAC,mBAAmB,UAAnB,EAA4B,OAAO,EAAE,SAAS,cAAc,GAC3D;AAAA,MAAC,iBAAiB;AAAA,MAAjB;AAAA,QACE,GAAG;AAAA,QACJ,KAAK;AAAA,QACL,SAAO;AAAA,QACP;AAAA,QACA,mBAAiB;AAAA,QACjB,oBAAkB;AAAA,QAClB,aAAW;AAAA,QACX,mBAAiB,YAAY,SAAS;AAAA,QAEtC;AAAA,UAAC,OAAO;AAAA,UAAP;AAAA,YACC,WAAW,WAAW,wBAAwB,SAAS;AAAA,YACvD,SAAS,uBAAuB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,GAAG,EAAE;AAAA,YACpE,SAAS,uBAAuB,EAAE,SAAS,OAAO,IAAI,EAAE,IAAI,EAAE,SAAS,OAAO,IAAI,GAAG,GAAG,OAAO,IAAI,EAAE;AAAA,YACrG,MAAM,uBAAuB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,GAAG,EAAE;AAAA,YACjE,YAAY,uBAAuB,mBAAmB,UAAU,mBAAmB;AAAA,YAEnF;AAAA,kCAAC,yBAAyB,UAAzB,EAAkC,OAAK,MACrC,UACH;AAAA,cACC,YAAY,oBAAC,iBAAiB,OAAjB,EAAuB,WAAU,sBAAqB,OAAO,IAAI,QAAQ,GAAG,IAAK;AAAA;AAAA;AAAA,QACjG;AAAA;AAAA,IACF,GACF,KAzBsB,iBA0BxB,IACE,MACN,GACF;AAAA,EAEJ;AACF;AACA,eAAe,cAAc;AAE7B,MAAM,eAAe,MAAM;AAAA,EACzB,CAAC,EAAE,WAAW,IAAI,GAAG,MAAM,GAAG,iBAAiB;AAC7C,UAAM,cAAc,sBAAsB;AAC1C,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QACJ,KAAK;AAAA,QACL,IAAI,MAAM,aAAa;AAAA,QACvB,WAAW,WAAW,sBAAsB,SAAS;AAAA;AAAA,IACvD;AAAA,EAEJ;AACF;AACA,aAAa,cAAc;AAE3B,MAAM,qBAAqB,MAAM;AAAA,EAC/B,CAAC,EAAE,WAAW,IAAI,GAAG,MAAM,GAAG,iBAAiB;AAC7C,UAAM,cAAc,sBAAsB;AAC1C,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QACJ,KAAK;AAAA,QACL,IAAI,MAAM,aAAa;AAAA,QACvB,WAAW,WAAW,4BAA4B,SAAS;AAAA;AAAA,IAC7D;AAAA,EAEJ;AACF;AACA,mBAAmB,cAAc;AAEjC,MAAM,eAAe,MAAM,WAGzB,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,iBAC1B;AAAA,EAAC,iBAAiB;AAAA,EAAjB;AAAA,IACE,GAAG;AAAA,IACJ,KAAK;AAAA,IACL,WAAW,WAAW,sBAAsB,SAAS;AAAA;AACvD,CACD;AACD,aAAa,cAAc;AAE3B,MAAM,UASF,OAAO,OAAO,aAAa;AAAA,EAC7B,SAAS;AAAA,EACT,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,aAAa;AAAA,EACb,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,OAAO;AACT,CAAC;AACD,QAAQ,cAAc;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
.dsx-prose { width: 100%; max-width: 68ch; color: var(--dsx-color-on-surface); font-family: var(--dsx-typography-body-medium-font-family); line-height: 1.65; }
|
|
1
|
+
.dsx-prose { width: 100%; min-width: 0; max-width: 68ch; overflow-wrap: anywhere; color: var(--dsx-color-on-surface); font-family: var(--dsx-typography-body-medium-font-family); line-height: 1.65; }
|
|
2
2
|
.dsx-prose > :first-child { margin-block-start: 0; }
|
|
3
3
|
.dsx-prose > :last-child { margin-block-end: 0; }
|
|
4
4
|
.dsx-prose h1, .dsx-prose h2, .dsx-prose h3, .dsx-prose h4 { margin-block: var(--dsx-space-xl) var(--dsx-space-sm); font-family: var(--dsx-typography-headline-large-font-family); line-height: var(--dsx-typography-headline-large-line-height); }
|
|
@@ -10,25 +10,15 @@
|
|
|
10
10
|
border: var(--dsx-border-width-sm) solid var(--dsx-color-outline);
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
.dsx-qr-code svg
|
|
13
|
+
.dsx-qr-code svg,
|
|
14
|
+
.dsx-qr-code:where(.dsx-qr-code-size-sm, .dsx-qr-code-size-md, .dsx-qr-code-size-lg) svg {
|
|
14
15
|
display: block;
|
|
15
16
|
border-radius: var(--dsx-rounded-sm);
|
|
16
17
|
}
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.dsx-qr-code-size-md svg {
|
|
24
|
-
width: var(--dsx-size-md);
|
|
25
|
-
height: var(--dsx-size-md);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
.dsx-qr-code-size-lg svg {
|
|
29
|
-
width: var(--dsx-size-xl);
|
|
30
|
-
height: var(--dsx-size-xl);
|
|
31
|
-
}
|
|
19
|
+
/* Painted size comes from the runtime sizeMap (sm: 128, md: 192, lg: 256px)
|
|
20
|
+
via the adapter's own width/height attributes — the CSS never constrains
|
|
21
|
+
the SVG, so the matrix always renders at a scannable size. */
|
|
32
22
|
|
|
33
23
|
/* High-contrast mode: QR modules use high-contrast fg, background stays scannable. */
|
|
34
24
|
.dsx-qr-code[data-high-contrast='true'] {
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
.dsx-radio-item {
|
|
38
|
+
position: relative;
|
|
38
39
|
display: inline-flex;
|
|
39
40
|
align-items: center;
|
|
40
41
|
justify-content: center;
|
|
@@ -45,6 +46,19 @@
|
|
|
45
46
|
background: var(--dsx-color-surface);
|
|
46
47
|
}
|
|
47
48
|
|
|
49
|
+
/* Extended hit area — the visual circle stays 20/24/32px per size, but the
|
|
50
|
+
pointer target grows to 44px (WCAG 2.5.8 minimum 24px, TMA touch 44px).
|
|
51
|
+
Absolutely positioned, so it never affects layout. */
|
|
52
|
+
.dsx-radio-item::before {
|
|
53
|
+
content: '';
|
|
54
|
+
position: absolute;
|
|
55
|
+
top: 50%;
|
|
56
|
+
left: 50%;
|
|
57
|
+
transform: translate(-50%, -50%);
|
|
58
|
+
width: max(100% + 16px, 44px);
|
|
59
|
+
height: max(100% + 16px, 44px);
|
|
60
|
+
}
|
|
61
|
+
|
|
48
62
|
.dsx-radio-item--sm {
|
|
49
63
|
width: var(--dsx-size-sm);
|
|
50
64
|
height: var(--dsx-size-sm);
|
|
@@ -55,6 +69,11 @@
|
|
|
55
69
|
height: var(--dsx-size-md);
|
|
56
70
|
}
|
|
57
71
|
|
|
72
|
+
.dsx-radio-item--lg {
|
|
73
|
+
width: var(--dsx-size-lg);
|
|
74
|
+
height: var(--dsx-size-lg);
|
|
75
|
+
}
|
|
76
|
+
|
|
58
77
|
.dsx-radio-item:focus-visible {
|
|
59
78
|
outline: none;
|
|
60
79
|
box-shadow: var(--dsx-shadow-focus-ring);
|
|
@@ -41,7 +41,8 @@ var import_radioGroup = require("./radioGroup.props");
|
|
|
41
41
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
42
42
|
const RADIO_ITEM_SIZE_CLASS_NAMES = {
|
|
43
43
|
sm: "dsx-radio-item--sm",
|
|
44
|
-
md: "dsx-radio-item--md"
|
|
44
|
+
md: "dsx-radio-item--md",
|
|
45
|
+
lg: "dsx-radio-item--lg"
|
|
45
46
|
};
|
|
46
47
|
const RadioGroupSizeContext = React.createContext("md");
|
|
47
48
|
const RadioGroup = React.forwardRef((props, forwardedRef) => {
|
|
@@ -55,7 +56,7 @@ const RadioGroup = React.forwardRef((props, forwardedRef) => {
|
|
|
55
56
|
"data-high-contrast": highContrast ? "true" : void 0,
|
|
56
57
|
"data-size": size,
|
|
57
58
|
"data-variant": variant,
|
|
58
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RadioGroupSizeContext.Provider, { value: size
|
|
59
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RadioGroupSizeContext.Provider, { value: size, children: asChild ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_slot.Slottable, { children }) : children })
|
|
59
60
|
}
|
|
60
61
|
) });
|
|
61
62
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/radioGroup/RadioGroup.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react'\nimport classNames from 'classnames'\nimport * as RadioGroupPrimitive from '@radix-ui/react-radio-group'\nimport { Slot, Slottable } from '@radix-ui/react-slot'\n\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { radioGroupItemPropDefs, radioGroupPropDefs } from './radioGroup.props'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\nconst RADIO_ITEM_SIZE_CLASS_NAMES = {\n sm: 'dsx-radio-item--sm',\n md: 'dsx-radio-item--md',\n} as const\n\nconst RadioGroupSizeContext = React.createContext<'sm' | 'md'>('md')\n\ntype RadioGroupElement = React.ComponentRef<typeof RadioGroupPrimitive.Root>\ntype RadioGroupOwnProps = GetPropDefTypes<typeof radioGroupPropDefs>\n\ninterface RadioGroupProps extends Omit<React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>, 'color'>, RadioGroupOwnProps {}\n\nconst RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>((props, forwardedRef) => {\n const { asChild, children, className, color, highContrast = false, size = 'md', variant = 'solid', ...radioGroupProps } = extractProps(props, radioGroupPropDefs)\n const Comp = asChild ? Slot : 'div'\n\n return (\n <RadioGroupPrimitive.Root {...radioGroupProps} ref={forwardedRef} asChild>\n <Comp\n className={classNames('dsx-radio-group', className)}\n data-accent-color={color}\n data-high-contrast={highContrast ? 'true' : undefined}\n data-size={size}\n data-variant={variant}\n >\n <RadioGroupSizeContext.Provider value={size
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAAuB;AACvB,wBAAuB;AACvB,0BAAqC;AACrC,wBAAgC;AAEhC,0BAA6B;AAC7B,wBAA2D;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react'\nimport classNames from 'classnames'\nimport * as RadioGroupPrimitive from '@radix-ui/react-radio-group'\nimport { Slot, Slottable } from '@radix-ui/react-slot'\n\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { radioGroupItemPropDefs, radioGroupPropDefs } from './radioGroup.props'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\nconst RADIO_ITEM_SIZE_CLASS_NAMES = {\n sm: 'dsx-radio-item--sm',\n md: 'dsx-radio-item--md',\n lg: 'dsx-radio-item--lg',\n} as const\n\nconst RadioGroupSizeContext = React.createContext<'sm' | 'md' | 'lg'>('md')\n\ntype RadioGroupElement = React.ComponentRef<typeof RadioGroupPrimitive.Root>\ntype RadioGroupOwnProps = GetPropDefTypes<typeof radioGroupPropDefs>\n\ninterface RadioGroupProps extends Omit<React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>, 'color'>, RadioGroupOwnProps {}\n\nconst RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>((props, forwardedRef) => {\n const { asChild, children, className, color, highContrast = false, size = 'md', variant = 'solid', ...radioGroupProps } = extractProps(props, radioGroupPropDefs)\n const Comp = asChild ? Slot : 'div'\n\n return (\n <RadioGroupPrimitive.Root {...radioGroupProps} ref={forwardedRef} asChild>\n <Comp\n className={classNames('dsx-radio-group', className)}\n data-accent-color={color}\n data-high-contrast={highContrast ? 'true' : undefined}\n data-size={size}\n data-variant={variant}\n >\n <RadioGroupSizeContext.Provider value={size}>\n {asChild ? <Slottable>{children}</Slottable> : children}\n </RadioGroupSizeContext.Provider>\n </Comp>\n </RadioGroupPrimitive.Root>\n )\n})\nRadioGroup.displayName = 'RadioGroup'\n\ntype RadioGroupItemElement = React.ComponentRef<typeof RadioGroupPrimitive.Item>\ntype RadioGroupItemOwnProps = GetPropDefTypes<typeof radioGroupItemPropDefs>\n\ninterface RadioGroupItemProps\n extends React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>,\n RadioGroupItemOwnProps {}\n\nconst RadioGroupItem = React.forwardRef<RadioGroupItemElement, RadioGroupItemProps>(\n (props, forwardedRef) => {\n const contextSize = React.useContext(RadioGroupSizeContext)\n const explicitSize = props.size\n const {\n asChild,\n children,\n className,\n description,\n label,\n size: extractedSize,\n ...radioGroupItemProps\n } = extractProps(props, radioGroupItemPropDefs)\n const size = explicitSize === undefined ? contextSize : (extractedSize ?? contextSize)\n const Comp = asChild ? Slot : 'button'\n\n const control = (\n <RadioGroupPrimitive.Item {...radioGroupItemProps} ref={forwardedRef} asChild>\n <Comp className={classNames('dsx-radio-item', RADIO_ITEM_SIZE_CLASS_NAMES[size], className)}>\n {asChild ? <Slottable>{children}</Slottable> : null}\n <RadioGroupPrimitive.Indicator className=\"dsx-radio-item__indicator\">\n <span className=\"dsx-radio-item__dot\" />\n </RadioGroupPrimitive.Indicator>\n </Comp>\n </RadioGroupPrimitive.Item>\n )\n\n if (!label && !description) {\n return control\n }\n\n return (\n <label className=\"dsx-radio-option\">\n {control}\n <span className=\"dsx-radio-option__content\">\n <span className=\"dsx-radio-option__label\">{label}</span>\n {description ? <span className=\"dsx-radio-option__description\">{description}</span> : null}\n </span>\n </label>\n )\n },\n)\nRadioGroupItem.displayName = 'RadioGroupItem'\n\nexport { RadioGroup, RadioGroupItem }\nexport type { RadioGroupItemProps, RadioGroupProps }\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAAuB;AACvB,wBAAuB;AACvB,0BAAqC;AACrC,wBAAgC;AAEhC,0BAA6B;AAC7B,wBAA2D;AA+BtC;AA3BrB,MAAM,8BAA8B;AAAA,EAClC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,MAAM,wBAAwB,MAAM,cAAkC,IAAI;AAO1E,MAAM,aAAa,MAAM,WAA+C,CAAC,OAAO,iBAAiB;AAC/F,QAAM,EAAE,SAAS,UAAU,WAAW,OAAO,eAAe,OAAO,OAAO,MAAM,UAAU,SAAS,GAAG,gBAAgB,QAAI,kCAAa,OAAO,oCAAkB;AAChK,QAAM,OAAO,UAAU,yBAAO;AAE9B,SACE,4CAAC,oBAAoB,MAApB,EAA0B,GAAG,iBAAiB,KAAK,cAAc,SAAO,MACvE;AAAA,IAAC;AAAA;AAAA,MACC,eAAW,kBAAAA,SAAW,mBAAmB,SAAS;AAAA,MAClD,qBAAmB;AAAA,MACnB,sBAAoB,eAAe,SAAS;AAAA,MAC5C,aAAW;AAAA,MACX,gBAAc;AAAA,MAEd,sDAAC,sBAAsB,UAAtB,EAA+B,OAAO,MACpC,oBAAU,4CAAC,+BAAW,UAAS,IAAe,UACjD;AAAA;AAAA,EACF,GACF;AAEJ,CAAC;AACD,WAAW,cAAc;AASzB,MAAM,iBAAiB,MAAM;AAAA,EAC3B,CAAC,OAAO,iBAAiB;AACvB,UAAM,cAAc,MAAM,WAAW,qBAAqB;AAC1D,UAAM,eAAe,MAAM;AAC3B,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,GAAG;AAAA,IACL,QAAI,kCAAa,OAAO,wCAAsB;AAC9C,UAAM,OAAO,iBAAiB,SAAY,cAAe,iBAAiB;AAC1E,UAAM,OAAO,UAAU,yBAAO;AAE9B,UAAM,UACJ,4CAAC,oBAAoB,MAApB,EAA0B,GAAG,qBAAqB,KAAK,cAAc,SAAO,MAC3E,uDAAC,QAAK,eAAW,kBAAAA,SAAW,kBAAkB,4BAA4B,IAAI,GAAG,SAAS,GACvF;AAAA,gBAAU,4CAAC,+BAAW,UAAS,IAAe;AAAA,MAC/C,4CAAC,oBAAoB,WAApB,EAA8B,WAAU,6BACvC,sDAAC,UAAK,WAAU,uBAAsB,GACxC;AAAA,OACF,GACF;AAGF,QAAI,CAAC,SAAS,CAAC,aAAa;AAC1B,aAAO;AAAA,IACT;AAEA,WACE,6CAAC,WAAM,WAAU,oBACd;AAAA;AAAA,MACD,6CAAC,UAAK,WAAU,6BACd;AAAA,oDAAC,UAAK,WAAU,2BAA2B,iBAAM;AAAA,QAChD,cAAc,4CAAC,UAAK,WAAU,iCAAiC,uBAAY,IAAU;AAAA,SACxF;AAAA,OACF;AAAA,EAEJ;AACF;AACA,eAAe,cAAc;",
|
|
6
6
|
"names": ["classNames"]
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroup.d.cts","sourceRoot":"","sources":["../../../src/components/radioGroup/RadioGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAA;AAIlE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"RadioGroup.d.cts","sourceRoot":"","sources":["../../../src/components/radioGroup/RadioGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAA;AAIlE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAWpE,KAAK,kBAAkB,GAAG,eAAe,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAEpE,UAAU,eAAgB,SAAQ,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAAG;AAEvI,QAAA,MAAM,UAAU,wFAmBd,CAAA;AAIF,KAAK,sBAAsB,GAAG,eAAe,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE5E,UAAU,mBACR,SAAQ,KAAK,CAAC,wBAAwB,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,EACrE,sBAAsB;CAAG;AAE7B,QAAA,MAAM,cAAc,+FAyCnB,CAAA;AAGD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAA;AACrC,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroup.d.mts","sourceRoot":"","sources":["../../../src/components/radioGroup/RadioGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAA;AAIlE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"RadioGroup.d.mts","sourceRoot":"","sources":["../../../src/components/radioGroup/RadioGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAA;AAIlE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAWpE,KAAK,kBAAkB,GAAG,eAAe,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAEpE,UAAU,eAAgB,SAAQ,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAAG;AAEvI,QAAA,MAAM,UAAU,wFAmBd,CAAA;AAIF,KAAK,sBAAsB,GAAG,eAAe,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE5E,UAAU,mBACR,SAAQ,KAAK,CAAC,wBAAwB,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,EACrE,sBAAsB;CAAG;AAE7B,QAAA,MAAM,cAAc,+FAyCnB,CAAA;AAGD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAA;AACrC,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroup.d.ts","sourceRoot":"","sources":["../../../src/components/radioGroup/RadioGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAA;AAIlE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"RadioGroup.d.ts","sourceRoot":"","sources":["../../../src/components/radioGroup/RadioGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAA;AAIlE,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAWpE,KAAK,kBAAkB,GAAG,eAAe,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAEpE,UAAU,eAAgB,SAAQ,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,kBAAkB;CAAG;AAEvI,QAAA,MAAM,UAAU,wFAmBd,CAAA;AAIF,KAAK,sBAAsB,GAAG,eAAe,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE5E,UAAU,mBACR,SAAQ,KAAK,CAAC,wBAAwB,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,EACrE,sBAAsB;CAAG;AAE7B,QAAA,MAAM,cAAc,+FAyCnB,CAAA;AAGD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAA;AACrC,YAAY,EAAE,mBAAmB,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -7,7 +7,8 @@ import { radioGroupItemPropDefs, radioGroupPropDefs } from "./radioGroup.props.j
|
|
|
7
7
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
const RADIO_ITEM_SIZE_CLASS_NAMES = {
|
|
9
9
|
sm: "dsx-radio-item--sm",
|
|
10
|
-
md: "dsx-radio-item--md"
|
|
10
|
+
md: "dsx-radio-item--md",
|
|
11
|
+
lg: "dsx-radio-item--lg"
|
|
11
12
|
};
|
|
12
13
|
const RadioGroupSizeContext = React.createContext("md");
|
|
13
14
|
const RadioGroup = React.forwardRef((props, forwardedRef) => {
|
|
@@ -21,7 +22,7 @@ const RadioGroup = React.forwardRef((props, forwardedRef) => {
|
|
|
21
22
|
"data-high-contrast": highContrast ? "true" : void 0,
|
|
22
23
|
"data-size": size,
|
|
23
24
|
"data-variant": variant,
|
|
24
|
-
children: /* @__PURE__ */ jsx(RadioGroupSizeContext.Provider, { value: size
|
|
25
|
+
children: /* @__PURE__ */ jsx(RadioGroupSizeContext.Provider, { value: size, children: asChild ? /* @__PURE__ */ jsx(Slottable, { children }) : children })
|
|
25
26
|
}
|
|
26
27
|
) });
|
|
27
28
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/radioGroup/RadioGroup.tsx"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react'\nimport classNames from 'classnames'\nimport * as RadioGroupPrimitive from '@radix-ui/react-radio-group'\nimport { Slot, Slottable } from '@radix-ui/react-slot'\n\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { radioGroupItemPropDefs, radioGroupPropDefs } from './radioGroup.props'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\nconst RADIO_ITEM_SIZE_CLASS_NAMES = {\n sm: 'dsx-radio-item--sm',\n md: 'dsx-radio-item--md',\n} as const\n\nconst RadioGroupSizeContext = React.createContext<'sm' | 'md'>('md')\n\ntype RadioGroupElement = React.ComponentRef<typeof RadioGroupPrimitive.Root>\ntype RadioGroupOwnProps = GetPropDefTypes<typeof radioGroupPropDefs>\n\ninterface RadioGroupProps extends Omit<React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>, 'color'>, RadioGroupOwnProps {}\n\nconst RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>((props, forwardedRef) => {\n const { asChild, children, className, color, highContrast = false, size = 'md', variant = 'solid', ...radioGroupProps } = extractProps(props, radioGroupPropDefs)\n const Comp = asChild ? Slot : 'div'\n\n return (\n <RadioGroupPrimitive.Root {...radioGroupProps} ref={forwardedRef} asChild>\n <Comp\n className={classNames('dsx-radio-group', className)}\n data-accent-color={color}\n data-high-contrast={highContrast ? 'true' : undefined}\n data-size={size}\n data-variant={variant}\n >\n <RadioGroupSizeContext.Provider value={size
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;AACvB,OAAO,gBAAgB;AACvB,YAAY,yBAAyB;AACrC,SAAS,MAAM,iBAAiB;AAEhC,SAAS,oBAAoB;AAC7B,SAAS,wBAAwB,0BAA0B;
|
|
4
|
+
"sourcesContent": ["import * as React from 'react'\nimport classNames from 'classnames'\nimport * as RadioGroupPrimitive from '@radix-ui/react-radio-group'\nimport { Slot, Slottable } from '@radix-ui/react-slot'\n\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { radioGroupItemPropDefs, radioGroupPropDefs } from './radioGroup.props'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\nconst RADIO_ITEM_SIZE_CLASS_NAMES = {\n sm: 'dsx-radio-item--sm',\n md: 'dsx-radio-item--md',\n lg: 'dsx-radio-item--lg',\n} as const\n\nconst RadioGroupSizeContext = React.createContext<'sm' | 'md' | 'lg'>('md')\n\ntype RadioGroupElement = React.ComponentRef<typeof RadioGroupPrimitive.Root>\ntype RadioGroupOwnProps = GetPropDefTypes<typeof radioGroupPropDefs>\n\ninterface RadioGroupProps extends Omit<React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>, 'color'>, RadioGroupOwnProps {}\n\nconst RadioGroup = React.forwardRef<RadioGroupElement, RadioGroupProps>((props, forwardedRef) => {\n const { asChild, children, className, color, highContrast = false, size = 'md', variant = 'solid', ...radioGroupProps } = extractProps(props, radioGroupPropDefs)\n const Comp = asChild ? Slot : 'div'\n\n return (\n <RadioGroupPrimitive.Root {...radioGroupProps} ref={forwardedRef} asChild>\n <Comp\n className={classNames('dsx-radio-group', className)}\n data-accent-color={color}\n data-high-contrast={highContrast ? 'true' : undefined}\n data-size={size}\n data-variant={variant}\n >\n <RadioGroupSizeContext.Provider value={size}>\n {asChild ? <Slottable>{children}</Slottable> : children}\n </RadioGroupSizeContext.Provider>\n </Comp>\n </RadioGroupPrimitive.Root>\n )\n})\nRadioGroup.displayName = 'RadioGroup'\n\ntype RadioGroupItemElement = React.ComponentRef<typeof RadioGroupPrimitive.Item>\ntype RadioGroupItemOwnProps = GetPropDefTypes<typeof radioGroupItemPropDefs>\n\ninterface RadioGroupItemProps\n extends React.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>,\n RadioGroupItemOwnProps {}\n\nconst RadioGroupItem = React.forwardRef<RadioGroupItemElement, RadioGroupItemProps>(\n (props, forwardedRef) => {\n const contextSize = React.useContext(RadioGroupSizeContext)\n const explicitSize = props.size\n const {\n asChild,\n children,\n className,\n description,\n label,\n size: extractedSize,\n ...radioGroupItemProps\n } = extractProps(props, radioGroupItemPropDefs)\n const size = explicitSize === undefined ? contextSize : (extractedSize ?? contextSize)\n const Comp = asChild ? Slot : 'button'\n\n const control = (\n <RadioGroupPrimitive.Item {...radioGroupItemProps} ref={forwardedRef} asChild>\n <Comp className={classNames('dsx-radio-item', RADIO_ITEM_SIZE_CLASS_NAMES[size], className)}>\n {asChild ? <Slottable>{children}</Slottable> : null}\n <RadioGroupPrimitive.Indicator className=\"dsx-radio-item__indicator\">\n <span className=\"dsx-radio-item__dot\" />\n </RadioGroupPrimitive.Indicator>\n </Comp>\n </RadioGroupPrimitive.Item>\n )\n\n if (!label && !description) {\n return control\n }\n\n return (\n <label className=\"dsx-radio-option\">\n {control}\n <span className=\"dsx-radio-option__content\">\n <span className=\"dsx-radio-option__label\">{label}</span>\n {description ? <span className=\"dsx-radio-option__description\">{description}</span> : null}\n </span>\n </label>\n )\n },\n)\nRadioGroupItem.displayName = 'RadioGroupItem'\n\nexport { RadioGroup, RadioGroupItem }\nexport type { RadioGroupItemProps, RadioGroupProps }\n"],
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;AACvB,OAAO,gBAAgB;AACvB,YAAY,yBAAyB;AACrC,SAAS,MAAM,iBAAiB;AAEhC,SAAS,oBAAoB;AAC7B,SAAS,wBAAwB,0BAA0B;AA+BtC,cAiCb,YAjCa;AA3BrB,MAAM,8BAA8B;AAAA,EAClC,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AACN;AAEA,MAAM,wBAAwB,MAAM,cAAkC,IAAI;AAO1E,MAAM,aAAa,MAAM,WAA+C,CAAC,OAAO,iBAAiB;AAC/F,QAAM,EAAE,SAAS,UAAU,WAAW,OAAO,eAAe,OAAO,OAAO,MAAM,UAAU,SAAS,GAAG,gBAAgB,IAAI,aAAa,OAAO,kBAAkB;AAChK,QAAM,OAAO,UAAU,OAAO;AAE9B,SACE,oBAAC,oBAAoB,MAApB,EAA0B,GAAG,iBAAiB,KAAK,cAAc,SAAO,MACvE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,WAAW,mBAAmB,SAAS;AAAA,MAClD,qBAAmB;AAAA,MACnB,sBAAoB,eAAe,SAAS;AAAA,MAC5C,aAAW;AAAA,MACX,gBAAc;AAAA,MAEd,8BAAC,sBAAsB,UAAtB,EAA+B,OAAO,MACpC,oBAAU,oBAAC,aAAW,UAAS,IAAe,UACjD;AAAA;AAAA,EACF,GACF;AAEJ,CAAC;AACD,WAAW,cAAc;AASzB,MAAM,iBAAiB,MAAM;AAAA,EAC3B,CAAC,OAAO,iBAAiB;AACvB,UAAM,cAAc,MAAM,WAAW,qBAAqB;AAC1D,UAAM,eAAe,MAAM;AAC3B,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,GAAG;AAAA,IACL,IAAI,aAAa,OAAO,sBAAsB;AAC9C,UAAM,OAAO,iBAAiB,SAAY,cAAe,iBAAiB;AAC1E,UAAM,OAAO,UAAU,OAAO;AAE9B,UAAM,UACJ,oBAAC,oBAAoB,MAApB,EAA0B,GAAG,qBAAqB,KAAK,cAAc,SAAO,MAC3E,+BAAC,QAAK,WAAW,WAAW,kBAAkB,4BAA4B,IAAI,GAAG,SAAS,GACvF;AAAA,gBAAU,oBAAC,aAAW,UAAS,IAAe;AAAA,MAC/C,oBAAC,oBAAoB,WAApB,EAA8B,WAAU,6BACvC,8BAAC,UAAK,WAAU,uBAAsB,GACxC;AAAA,OACF,GACF;AAGF,QAAI,CAAC,SAAS,CAAC,aAAa;AAC1B,aAAO;AAAA,IACT;AAEA,WACE,qBAAC,WAAM,WAAU,oBACd;AAAA;AAAA,MACD,qBAAC,UAAK,WAAU,6BACd;AAAA,4BAAC,UAAK,WAAU,2BAA2B,iBAAM;AAAA,QAChD,cAAc,oBAAC,UAAK,WAAU,iCAAiC,uBAAY,IAAU;AAAA,SACxF;AAAA,OACF;AAAA,EAEJ;AACF;AACA,eAAe,cAAc;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -27,7 +27,7 @@ var import_highContrast = require("../../_internal/props/highContrast.prop");
|
|
|
27
27
|
const radioGroupOrientations = ["horizontal", "vertical"];
|
|
28
28
|
const radioGroupVariants = ["solid", "soft", "outline"];
|
|
29
29
|
const radioGroupSizes = ["sm", "md", "lg"];
|
|
30
|
-
const radioGroupItemSizes = ["sm", "md"];
|
|
30
|
+
const radioGroupItemSizes = ["sm", "md", "lg"];
|
|
31
31
|
const radioGroupPropDefs = {
|
|
32
32
|
...import_asChild.asChildPropDef,
|
|
33
33
|
...import_highContrast.highContrastPropDef,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/radioGroup/radioGroup.props.ts"],
|
|
4
|
-
"sourcesContent": ["import { asChildPropDef } from '../../_internal/props/asChild.prop'\nimport { highContrastPropDef } from '../../_internal/props/highContrast.prop'\n\nimport type { PropDef } from '../../_internal/props/propDef'\n\nconst radioGroupOrientations = ['horizontal', 'vertical'] as const\nconst radioGroupVariants = ['solid', 'soft', 'outline'] as const\nconst radioGroupSizes = ['sm', 'md', 'lg'] as const\nconst radioGroupItemSizes = ['sm', 'md'] as const\n\nconst radioGroupPropDefs = {\n ...asChildPropDef,\n ...highContrastPropDef,\n orientation: {\n type: 'enum',\n values: radioGroupOrientations,\n },\n variant: {\n type: 'enum',\n values: radioGroupVariants,\n default: 'solid',\n },\n size: {\n type: 'enum',\n values: radioGroupSizes,\n default: 'md',\n },\n color: {\n type: 'enum | string',\n values: [] as const,\n default: undefined,\n },\n} satisfies {\n asChild: PropDef\n highContrast: PropDef\n orientation: PropDef<(typeof radioGroupOrientations)[number]>\n variant: PropDef<(typeof radioGroupVariants)[number]>\n size: PropDef<(typeof radioGroupSizes)[number]>\n color: PropDef<string>\n}\n\nconst radioGroupItemPropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n values: radioGroupItemSizes,\n default: 'md',\n },\n label: {\n type: 'ReactNode',\n },\n description: {\n type: 'ReactNode',\n },\n} satisfies {\n asChild: PropDef\n description: PropDef\n label: PropDef\n size: PropDef<(typeof radioGroupItemSizes)[number]>\n}\n\nexport { radioGroupItemPropDefs, radioGroupPropDefs }\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA+B;AAC/B,0BAAoC;AAIpC,MAAM,yBAAyB,CAAC,cAAc,UAAU;AACxD,MAAM,qBAAqB,CAAC,SAAS,QAAQ,SAAS;AACtD,MAAM,kBAAkB,CAAC,MAAM,MAAM,IAAI;AACzC,MAAM,sBAAsB,CAAC,MAAM,IAAI;
|
|
4
|
+
"sourcesContent": ["import { asChildPropDef } from '../../_internal/props/asChild.prop'\nimport { highContrastPropDef } from '../../_internal/props/highContrast.prop'\n\nimport type { PropDef } from '../../_internal/props/propDef'\n\nconst radioGroupOrientations = ['horizontal', 'vertical'] as const\nconst radioGroupVariants = ['solid', 'soft', 'outline'] as const\nconst radioGroupSizes = ['sm', 'md', 'lg'] as const\nconst radioGroupItemSizes = ['sm', 'md', 'lg'] as const\n\nconst radioGroupPropDefs = {\n ...asChildPropDef,\n ...highContrastPropDef,\n orientation: {\n type: 'enum',\n values: radioGroupOrientations,\n },\n variant: {\n type: 'enum',\n values: radioGroupVariants,\n default: 'solid',\n },\n size: {\n type: 'enum',\n values: radioGroupSizes,\n default: 'md',\n },\n color: {\n type: 'enum | string',\n values: [] as const,\n default: undefined,\n },\n} satisfies {\n asChild: PropDef\n highContrast: PropDef\n orientation: PropDef<(typeof radioGroupOrientations)[number]>\n variant: PropDef<(typeof radioGroupVariants)[number]>\n size: PropDef<(typeof radioGroupSizes)[number]>\n color: PropDef<string>\n}\n\nconst radioGroupItemPropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n values: radioGroupItemSizes,\n default: 'md',\n },\n label: {\n type: 'ReactNode',\n },\n description: {\n type: 'ReactNode',\n },\n} satisfies {\n asChild: PropDef\n description: PropDef\n label: PropDef\n size: PropDef<(typeof radioGroupItemSizes)[number]>\n}\n\nexport { radioGroupItemPropDefs, radioGroupPropDefs }\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA+B;AAC/B,0BAAoC;AAIpC,MAAM,yBAAyB,CAAC,cAAc,UAAU;AACxD,MAAM,qBAAqB,CAAC,SAAS,QAAQ,SAAS;AACtD,MAAM,kBAAkB,CAAC,MAAM,MAAM,IAAI;AACzC,MAAM,sBAAsB,CAAC,MAAM,MAAM,IAAI;AAE7C,MAAM,qBAAqB;AAAA,EACzB,GAAG;AAAA,EACH,GAAG;AAAA,EACH,aAAa;AAAA,IACX,MAAM;AAAA,IACN,QAAQ;AAAA,EACV;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,QAAQ,CAAC;AAAA,IACT,SAAS;AAAA,EACX;AACF;AASA,MAAM,yBAAyB;AAAA,EAC7B,GAAG;AAAA,EACH,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,EACR;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,EACR;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -3,7 +3,7 @@ import { highContrastPropDef } from "../../_internal/props/highContrast.prop.js"
|
|
|
3
3
|
const radioGroupOrientations = ["horizontal", "vertical"];
|
|
4
4
|
const radioGroupVariants = ["solid", "soft", "outline"];
|
|
5
5
|
const radioGroupSizes = ["sm", "md", "lg"];
|
|
6
|
-
const radioGroupItemSizes = ["sm", "md"];
|
|
6
|
+
const radioGroupItemSizes = ["sm", "md", "lg"];
|
|
7
7
|
const radioGroupPropDefs = {
|
|
8
8
|
...asChildPropDef,
|
|
9
9
|
...highContrastPropDef,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/radioGroup/radioGroup.props.ts"],
|
|
4
|
-
"sourcesContent": ["import { asChildPropDef } from '../../_internal/props/asChild.prop'\nimport { highContrastPropDef } from '../../_internal/props/highContrast.prop'\n\nimport type { PropDef } from '../../_internal/props/propDef'\n\nconst radioGroupOrientations = ['horizontal', 'vertical'] as const\nconst radioGroupVariants = ['solid', 'soft', 'outline'] as const\nconst radioGroupSizes = ['sm', 'md', 'lg'] as const\nconst radioGroupItemSizes = ['sm', 'md'] as const\n\nconst radioGroupPropDefs = {\n ...asChildPropDef,\n ...highContrastPropDef,\n orientation: {\n type: 'enum',\n values: radioGroupOrientations,\n },\n variant: {\n type: 'enum',\n values: radioGroupVariants,\n default: 'solid',\n },\n size: {\n type: 'enum',\n values: radioGroupSizes,\n default: 'md',\n },\n color: {\n type: 'enum | string',\n values: [] as const,\n default: undefined,\n },\n} satisfies {\n asChild: PropDef\n highContrast: PropDef\n orientation: PropDef<(typeof radioGroupOrientations)[number]>\n variant: PropDef<(typeof radioGroupVariants)[number]>\n size: PropDef<(typeof radioGroupSizes)[number]>\n color: PropDef<string>\n}\n\nconst radioGroupItemPropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n values: radioGroupItemSizes,\n default: 'md',\n },\n label: {\n type: 'ReactNode',\n },\n description: {\n type: 'ReactNode',\n },\n} satisfies {\n asChild: PropDef\n description: PropDef\n label: PropDef\n size: PropDef<(typeof radioGroupItemSizes)[number]>\n}\n\nexport { radioGroupItemPropDefs, radioGroupPropDefs }\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,sBAAsB;AAC/B,SAAS,2BAA2B;AAIpC,MAAM,yBAAyB,CAAC,cAAc,UAAU;AACxD,MAAM,qBAAqB,CAAC,SAAS,QAAQ,SAAS;AACtD,MAAM,kBAAkB,CAAC,MAAM,MAAM,IAAI;AACzC,MAAM,sBAAsB,CAAC,MAAM,IAAI;
|
|
4
|
+
"sourcesContent": ["import { asChildPropDef } from '../../_internal/props/asChild.prop'\nimport { highContrastPropDef } from '../../_internal/props/highContrast.prop'\n\nimport type { PropDef } from '../../_internal/props/propDef'\n\nconst radioGroupOrientations = ['horizontal', 'vertical'] as const\nconst radioGroupVariants = ['solid', 'soft', 'outline'] as const\nconst radioGroupSizes = ['sm', 'md', 'lg'] as const\nconst radioGroupItemSizes = ['sm', 'md', 'lg'] as const\n\nconst radioGroupPropDefs = {\n ...asChildPropDef,\n ...highContrastPropDef,\n orientation: {\n type: 'enum',\n values: radioGroupOrientations,\n },\n variant: {\n type: 'enum',\n values: radioGroupVariants,\n default: 'solid',\n },\n size: {\n type: 'enum',\n values: radioGroupSizes,\n default: 'md',\n },\n color: {\n type: 'enum | string',\n values: [] as const,\n default: undefined,\n },\n} satisfies {\n asChild: PropDef\n highContrast: PropDef\n orientation: PropDef<(typeof radioGroupOrientations)[number]>\n variant: PropDef<(typeof radioGroupVariants)[number]>\n size: PropDef<(typeof radioGroupSizes)[number]>\n color: PropDef<string>\n}\n\nconst radioGroupItemPropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n values: radioGroupItemSizes,\n default: 'md',\n },\n label: {\n type: 'ReactNode',\n },\n description: {\n type: 'ReactNode',\n },\n} satisfies {\n asChild: PropDef\n description: PropDef\n label: PropDef\n size: PropDef<(typeof radioGroupItemSizes)[number]>\n}\n\nexport { radioGroupItemPropDefs, radioGroupPropDefs }\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,sBAAsB;AAC/B,SAAS,2BAA2B;AAIpC,MAAM,yBAAyB,CAAC,cAAc,UAAU;AACxD,MAAM,qBAAqB,CAAC,SAAS,QAAQ,SAAS;AACtD,MAAM,kBAAkB,CAAC,MAAM,MAAM,IAAI;AACzC,MAAM,sBAAsB,CAAC,MAAM,MAAM,IAAI;AAE7C,MAAM,qBAAqB;AAAA,EACzB,GAAG;AAAA,EACH,GAAG;AAAA,EACH,aAAa;AAAA,IACX,MAAM;AAAA,IACN,QAAQ;AAAA,EACV;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,QAAQ,CAAC;AAAA,IACT,SAAS;AAAA,EACX;AACF;AASA,MAAM,yBAAyB;AAAA,EAC7B,GAAG;AAAA,EACH,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,SAAS;AAAA,EACX;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,EACR;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,EACR;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
.dsx-rating[data-size='xl'] .dsx-rating__star { width: var(--dsx-size-lg); height: var(--dsx-size-lg); }
|
|
24
24
|
|
|
25
25
|
.dsx-rating__item {
|
|
26
|
+
position: relative;
|
|
26
27
|
display: inline-flex;
|
|
27
28
|
align-items: center;
|
|
28
29
|
justify-content: center;
|
|
@@ -40,6 +41,17 @@
|
|
|
40
41
|
box-shadow var(--dsx-motion-duration-fast, 150ms) var(--dsx-motion-easing-standard, ease);
|
|
41
42
|
}
|
|
42
43
|
|
|
44
|
+
/* Keep the small star unchanged while filling the gap with a 24px target. */
|
|
45
|
+
.dsx-rating:where([data-size='sm']) .dsx-rating__item::before {
|
|
46
|
+
content: '';
|
|
47
|
+
position: absolute;
|
|
48
|
+
top: 50%;
|
|
49
|
+
left: 50%;
|
|
50
|
+
width: var(--dsx-size-md);
|
|
51
|
+
height: var(--dsx-size-md);
|
|
52
|
+
transform: translate(-50%, -50%);
|
|
53
|
+
}
|
|
54
|
+
|
|
43
55
|
.dsx-rating__item:hover:not([data-disabled]),
|
|
44
56
|
.dsx-rating__item:focus-visible,
|
|
45
57
|
.dsx-rating__item[data-state='checked'] {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
.dsx-result { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--dsx-space-md); min-height: var(--dsx-empty-state-min-height); padding: var(--dsx-space-xl); text-align: center; color: var(--dsx-color-on-surface); }
|
|
1
|
+
.dsx-result { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--dsx-space-md); min-width: 0; max-width: 100%; overflow-wrap: anywhere; min-height: var(--dsx-empty-state-min-height); padding: var(--dsx-space-xl); text-align: center; color: var(--dsx-color-on-surface); }
|
|
2
|
+
.dsx-result > * { min-width: 0; max-width: 100%; }
|
|
2
3
|
.dsx-result__icon { display: inline-flex; color: var(--_result-icon-color, var(--dsx-color-on-surface-variant)); }
|
|
3
4
|
.dsx-result__illustration { display: block; flex: none; color: var(--_result-icon-color, var(--dsx-color-on-surface-variant)); }
|
|
4
5
|
.dsx-result[data-tone='success'] { --_result-icon-color: var(--dsx-color-success); }
|
|
@@ -391,6 +391,14 @@ const RichTextEditorRoot = React.forwardRef(
|
|
|
391
391
|
...props
|
|
392
392
|
}, forwardedRef) => {
|
|
393
393
|
const managedContent = isRichTextEditorContent(content) ? content : void 0;
|
|
394
|
+
const onEditorUpdateRef = React.useRef(onEditorUpdate);
|
|
395
|
+
const onUpdateRef = React.useRef(onUpdate);
|
|
396
|
+
const serializeRef = React.useRef(serialize);
|
|
397
|
+
React.useEffect(() => {
|
|
398
|
+
onEditorUpdateRef.current = onEditorUpdate;
|
|
399
|
+
onUpdateRef.current = onUpdate;
|
|
400
|
+
serializeRef.current = serialize;
|
|
401
|
+
});
|
|
394
402
|
const editor = (0, import_react.useEditor)(
|
|
395
403
|
{
|
|
396
404
|
...editorOptions,
|
|
@@ -404,11 +412,11 @@ const RichTextEditorRoot = React.forwardRef(
|
|
|
404
412
|
attributes: getRichTextEditorAttributes(editorOptions)
|
|
405
413
|
},
|
|
406
414
|
onUpdate: ({ editor: currentEditor }) => {
|
|
407
|
-
|
|
408
|
-
|
|
415
|
+
onEditorUpdateRef.current?.(currentEditor);
|
|
416
|
+
onUpdateRef.current?.((serializeRef.current ?? ((editorInstance) => editorInstance.getHTML()))(currentEditor));
|
|
409
417
|
}
|
|
410
418
|
},
|
|
411
|
-
[disabled, editorOptions, extensions,
|
|
419
|
+
[disabled, editorOptions, extensions, preset]
|
|
412
420
|
);
|
|
413
421
|
React.useEffect(() => {
|
|
414
422
|
editor?.setEditable(!disabled);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/components/richTextEditor/RichTextEditor.tsx"],
|
|
4
|
-
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport classNames from 'classnames'\nimport { EditorContent, useEditor, type Content, type Editor, type UseEditorOptions } from '@tiptap/react'\nimport StarterKit from '@tiptap/starter-kit'\n\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { richTextEditorContentPropDefs, richTextEditorPropDefs, richTextEditorToolbarButtonPropDefs } from './richTextEditor.props'\nimport { Button } from '../button/Button'\nimport { Icon } from '../icon/Icon'\nimport { createArticleExtensions } from '../articleNodes/articleExtensions'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\ntype RichTextEditorOwnProps = GetPropDefTypes<typeof richTextEditorPropDefs>\ntype RichTextEditorContentOwnProps = GetPropDefTypes<typeof richTextEditorContentPropDefs>\ntype RichTextEditorToolbarButtonOwnProps = GetPropDefTypes<typeof richTextEditorToolbarButtonPropDefs>\n\ntype RichTextEditorManagedEditorOptions = Omit<UseEditorOptions, 'content' | 'editable' | 'extensions' | 'onUpdate'>\ntype RichTextEditorToolbarSlot = React.ReactNode | ((context: { disabled: boolean; editor: Editor | null }) => React.ReactNode)\n\nconst defaultRichTextEditorExtensions: NonNullable<UseEditorOptions['extensions']> = [StarterKit]\n\ntype RichTextEditorPreset = 'basic' | 'article'\ntype RichTextEditorExtensionConfig = { preset?: RichTextEditorPreset; extensions?: UseEditorOptions['extensions'] }\n\nfunction createRichTextEditorExtensions(config: RichTextEditorExtensionConfig = {}): NonNullable<UseEditorOptions['extensions']> {\n if (config.extensions) return config.extensions\n return config.preset === 'article' ? [StarterKit.configure({ codeBlock: false }), ...createArticleExtensions()] : defaultRichTextEditorExtensions\n}\n\nfunction isRichTextEditorContent(value: unknown): value is Content {\n return value === null || typeof value === 'string' || typeof value === 'object'\n}\n\nfunction renderRichTextEditorToolbar(toolbar: RichTextEditorToolbarSlot | null | undefined, editor: Editor | null, disabled: boolean) {\n if (toolbar === null) {\n return null\n }\n\n if (typeof toolbar === 'function') {\n return toolbar({ disabled, editor })\n }\n\n if (toolbar !== undefined) {\n return toolbar\n }\n\n return <RichTextEditorToolbar editor={editor} disabled={disabled} />\n}\n\nfunction getRichTextEditorAttributes(editorOptions?: RichTextEditorManagedEditorOptions) {\n const attributes = editorOptions?.editorProps?.attributes\n\n if (!attributes || typeof attributes === 'function') {\n return {\n class: 'dsx-rich-text-editor__prosemirror',\n 'data-slot': 'rich-text-editor-prosemirror',\n }\n }\n\n return {\n ...attributes,\n class: classNames('dsx-rich-text-editor__prosemirror', attributes.class),\n 'data-slot': 'rich-text-editor-prosemirror',\n }\n}\n\nfunction getRichTextEditorStatus(editor: Editor | null) {\n if (!editor) {\n return 'Editor loading'\n }\n\n const plainText = editor.getText().trim()\n\n if (plainText.length === 0) {\n return 'Ready to write'\n }\n\n return `${plainText.length} characters`\n}\n\ninterface RichTextEditorProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, 'content' | 'onUpdate'>,\n RichTextEditorOwnProps {\n content?: unknown\n editorOptions?: RichTextEditorManagedEditorOptions\n extensions?: UseEditorOptions['extensions']\n onEditorUpdate?: (editor: Editor) => void\n onUpdate?: (content: string) => void\n placeholder?: string\n preset?: RichTextEditorPreset\n serialize?: (editor: Editor) => string\n toolbar?: RichTextEditorToolbarSlot | null\n}\n\ninterface RichTextEditorShellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'>, RichTextEditorOwnProps {\n editor: Editor | null\n placeholder?: string\n toolbar?: RichTextEditorToolbarSlot | null\n}\n\ninterface RichTextEditorToolbarProps extends React.HTMLAttributes<HTMLDivElement> {\n editor: Editor | null\n disabled?: boolean\n}\n\ninterface RichTextEditorContentProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'>,\n RichTextEditorContentOwnProps {\n editor: Editor | null\n placeholder?: string\n}\n\ninterface RichTextEditorToolbarButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n RichTextEditorToolbarButtonOwnProps {}\n\nconst RichTextEditorShell = React.forwardRef<HTMLDivElement, RichTextEditorShellProps>(\n ({ className: propClassName, disabled = false, editor, placeholder, toolbar, ...props }, forwardedRef) => {\n const {\n asChild: _asChild,\n className,\n ...editorProps\n } = extractProps(\n {\n ...props,\n className: propClassName,\n disabled,\n },\n richTextEditorPropDefs,\n )\n\n return (\n <div\n {...editorProps}\n ref={forwardedRef}\n className={classNames('dsx-rich-text-editor', className)}\n aria-disabled={disabled}\n data-disabled={disabled ? 'true' : undefined}\n data-slot=\"rich-text-editor\"\n >\n {renderRichTextEditorToolbar(toolbar, editor, disabled)}\n <RichTextEditorContent editor={editor} placeholder={placeholder} disabled={disabled} />\n <div className=\"dsx-rich-text-editor__status\" data-slot=\"rich-text-editor-status\">\n <span>{getRichTextEditorStatus(editor)}</span>\n </div>\n </div>\n )\n },\n)\nRichTextEditorShell.displayName = 'RichTextEditorShell'\n\nconst RichTextEditorToolbarButton = React.forwardRef<HTMLButtonElement, RichTextEditorToolbarButtonProps>(\n ({ active = false, className: propClassName, ...props }, forwardedRef) => {\n const { asChild, className, ...buttonProps } = extractProps(\n {\n ...props,\n className: propClassName,\n active,\n },\n richTextEditorToolbarButtonPropDefs,\n )\n\n return (\n <Button\n {...buttonProps}\n ref={forwardedRef}\n asChild={asChild}\n variant=\"ghost\"\n size=\"sm\"\n aria-pressed={active}\n data-active={active ? 'true' : undefined}\n data-slot=\"rich-text-editor-toolbar-button\"\n className={classNames('dsx-rich-text-editor__toolbar-button', className)}\n />\n )\n },\n)\nRichTextEditorToolbarButton.displayName = 'RichTextEditorToolbarButton'\n\nconst RichTextEditorToolbar = React.forwardRef<HTMLDivElement, RichTextEditorToolbarProps>(\n ({ editor, disabled = false, className, ...props }, forwardedRef) => {\n const toolbarDisabled = disabled || !editor\n\n return (\n <div\n {...props}\n ref={forwardedRef}\n className={classNames('dsx-rich-text-editor__toolbar', className)}\n data-disabled={toolbarDisabled ? 'true' : undefined}\n data-slot=\"rich-text-editor-toolbar\"\n role=\"toolbar\"\n aria-label=\"Formatting toolbar\"\n >\n <div className=\"dsx-rich-text-editor__toolbar-group\" role=\"group\" aria-label=\"Text style\">\n <span className=\"dsx-rich-text-editor__toolbar-label\">Text</span>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('bold') ?? false}\n aria-label=\"Bold\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleBold().run()}\n >\n <Icon name=\"bold\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('italic') ?? false}\n aria-label=\"Italic\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleItalic().run()}\n >\n <Icon name=\"italic\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('strike') ?? false}\n aria-label=\"Strikethrough\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleStrike().run()}\n >\n <Icon name=\"strikethrough\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n </div>\n <div className=\"dsx-rich-text-editor__toolbar-group\" role=\"group\" aria-label=\"Block style\">\n <span className=\"dsx-rich-text-editor__toolbar-label\">Blocks</span>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('heading', { level: 1 }) ?? false}\n aria-label=\"Heading 1\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleHeading({ level: 1 }).run()}\n >\n <Icon name=\"heading-1\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('heading', { level: 2 }) ?? false}\n aria-label=\"Heading\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleHeading({ level: 2 }).run()}\n >\n <Icon name=\"heading-2\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('heading', { level: 3 }) ?? false}\n aria-label=\"Subheading\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleHeading({ level: 3 }).run()}\n >\n <Icon name=\"heading-3\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('bulletList') ?? false}\n aria-label=\"Bulleted list\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleBulletList().run()}\n >\n <Icon name=\"list\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('orderedList') ?? false}\n aria-label=\"Numbered list\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleOrderedList().run()}\n >\n <Icon name=\"list-ordered\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('blockquote') ?? false}\n aria-label=\"Quote block\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleBlockquote().run()}\n >\n <Icon name=\"quote\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('codeBlock') ?? false}\n aria-label=\"Code block\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleCodeBlock().run()}\n >\n <Icon name=\"code\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n </div>\n <div className=\"dsx-rich-text-editor__toolbar-group\" role=\"group\" aria-label=\"Insert\">\n <span className=\"dsx-rich-text-editor__toolbar-label\">Insert</span>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('link') ?? false}\n aria-label=\"Link\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (!editor) return\n if (editor.isActive('link')) {\n editor.chain().focus().unsetLink().run()\n return\n }\n const url = window.prompt('URL')\n if (!url) return\n editor.chain().focus().extendMarkRange('link').setLink({ href: url }).run()\n }}\n >\n <Icon name=\"link\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n aria-label=\"Clear formatting\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().clearNodes().unsetAllMarks().run()}\n >\n <Icon name=\"eraser\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n </div>\n <div className=\"dsx-rich-text-editor__toolbar-group\" role=\"group\" aria-label=\"History\">\n <span className=\"dsx-rich-text-editor__toolbar-label\">History</span>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled || !editor?.can().undo()}\n aria-label=\"Undo\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().undo().run()}\n >\n <Icon name=\"undo\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled || !editor?.can().redo()}\n aria-label=\"Redo\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().redo().run()}\n >\n <Icon name=\"redo\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n </div>\n </div>\n )\n },\n)\nRichTextEditorToolbar.displayName = 'RichTextEditorToolbar'\n\nconst RichTextEditorContent = React.forwardRef<HTMLDivElement, RichTextEditorContentProps>(\n ({ className: propClassName, disabled = false, editor, placeholder, ...props }, forwardedRef) => {\n const {\n asChild: _asChild,\n className,\n mode: _mode,\n ...contentProps\n } = extractProps(\n {\n ...props,\n className: propClassName,\n disabled,\n },\n richTextEditorContentPropDefs,\n )\n\n return (\n <div\n {...contentProps}\n ref={forwardedRef}\n className={classNames('dsx-rich-text-editor__area', className)}\n data-disabled={disabled ? 'true' : undefined}\n data-slot=\"rich-text-editor-area\"\n >\n {editor?.isEmpty && placeholder ? (\n <div className=\"dsx-rich-text-editor__placeholder\" data-slot=\"rich-text-editor-placeholder\">\n {placeholder}\n </div>\n ) : null}\n <EditorContent editor={editor} className=\"dsx-rich-text-editor__content\" data-slot=\"rich-text-editor-content\" />\n </div>\n )\n },\n)\nRichTextEditorContent.displayName = 'RichTextEditorContent'\n\nconst RichTextEditorRoot = React.forwardRef<HTMLDivElement, RichTextEditorProps>(\n (\n {\n className,\n content = '',\n disabled = false,\n editorOptions,\n extensions,\n onEditorUpdate,\n onUpdate,\n placeholder,\n preset = 'basic',\n serialize,\n toolbar,\n ...props\n },\n forwardedRef,\n ) => {\n const managedContent = isRichTextEditorContent(content) ? content : undefined\n\n const editor = useEditor(\n {\n ...editorOptions,\n content: managedContent,\n editable: !disabled,\n extensions: extensions ?? createRichTextEditorExtensions({ preset }),\n immediatelyRender: false,\n shouldRerenderOnTransaction: true,\n editorProps: {\n ...editorOptions?.editorProps,\n attributes: getRichTextEditorAttributes(editorOptions),\n },\n onUpdate: ({ editor: currentEditor }) => {\n onEditorUpdate?.(currentEditor)\n onUpdate?.((serialize ?? ((editorInstance: Editor) => editorInstance.getHTML()))(currentEditor))\n },\n },\n [disabled, editorOptions, extensions, onEditorUpdate, onUpdate, preset, serialize],\n )\n\n React.useEffect(() => {\n editor?.setEditable(!disabled)\n }, [disabled, editor])\n\n React.useEffect(() => {\n if (!editor) {\n return\n }\n\n if (managedContent === undefined) {\n return\n }\n\n if (typeof managedContent === 'string') {\n if (editor.getHTML() !== managedContent) {\n editor.commands.setContent(managedContent, { emitUpdate: false })\n }\n\n return\n }\n\n if (JSON.stringify(editor.getJSON()) !== JSON.stringify(managedContent)) {\n editor.commands.setContent(managedContent, { emitUpdate: false })\n }\n }, [editor, managedContent])\n\n return (\n <RichTextEditorShell\n {...props}\n ref={forwardedRef}\n className={className}\n disabled={disabled}\n editor={editor}\n placeholder={placeholder}\n toolbar={toolbar}\n />\n )\n },\n)\nRichTextEditorRoot.displayName = 'RichTextEditor'\n\nconst RichTextEditor: typeof RichTextEditorRoot & {\n Shell: typeof RichTextEditorShell\n Toolbar: typeof RichTextEditorToolbar\n Content: typeof RichTextEditorContent\n} = Object.assign(RichTextEditorRoot, {\n Shell: RichTextEditorShell,\n Toolbar: RichTextEditorToolbar,\n Content: RichTextEditorContent,\n})\n\nexport { RichTextEditor, RichTextEditorContent, RichTextEditorRoot, RichTextEditorShell, RichTextEditorToolbar, createRichTextEditorExtensions }\nexport type {\n RichTextEditorContentProps,\n RichTextEditorProps,\n RichTextEditorShellProps,\n RichTextEditorToolbarProps,\n RichTextEditorToolbarSlot,\n RichTextEditorPreset,\n RichTextEditorExtensionConfig,\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport classNames from 'classnames'\nimport { EditorContent, useEditor, type Content, type Editor, type UseEditorOptions } from '@tiptap/react'\nimport StarterKit from '@tiptap/starter-kit'\n\nimport { extractProps } from '../../_internal/helpers/extractProps'\nimport { richTextEditorContentPropDefs, richTextEditorPropDefs, richTextEditorToolbarButtonPropDefs } from './richTextEditor.props'\nimport { Button } from '../button/Button'\nimport { Icon } from '../icon/Icon'\nimport { createArticleExtensions } from '../articleNodes/articleExtensions'\n\nimport type { GetPropDefTypes } from '../../_internal/props/propDef'\n\ntype RichTextEditorOwnProps = GetPropDefTypes<typeof richTextEditorPropDefs>\ntype RichTextEditorContentOwnProps = GetPropDefTypes<typeof richTextEditorContentPropDefs>\ntype RichTextEditorToolbarButtonOwnProps = GetPropDefTypes<typeof richTextEditorToolbarButtonPropDefs>\n\ntype RichTextEditorManagedEditorOptions = Omit<UseEditorOptions, 'content' | 'editable' | 'extensions' | 'onUpdate'>\ntype RichTextEditorToolbarSlot = React.ReactNode | ((context: { disabled: boolean; editor: Editor | null }) => React.ReactNode)\n\nconst defaultRichTextEditorExtensions: NonNullable<UseEditorOptions['extensions']> = [StarterKit]\n\ntype RichTextEditorPreset = 'basic' | 'article'\ntype RichTextEditorExtensionConfig = { preset?: RichTextEditorPreset; extensions?: UseEditorOptions['extensions'] }\n\nfunction createRichTextEditorExtensions(config: RichTextEditorExtensionConfig = {}): NonNullable<UseEditorOptions['extensions']> {\n if (config.extensions) return config.extensions\n return config.preset === 'article' ? [StarterKit.configure({ codeBlock: false }), ...createArticleExtensions()] : defaultRichTextEditorExtensions\n}\n\nfunction isRichTextEditorContent(value: unknown): value is Content {\n return value === null || typeof value === 'string' || typeof value === 'object'\n}\n\nfunction renderRichTextEditorToolbar(toolbar: RichTextEditorToolbarSlot | null | undefined, editor: Editor | null, disabled: boolean) {\n if (toolbar === null) {\n return null\n }\n\n if (typeof toolbar === 'function') {\n return toolbar({ disabled, editor })\n }\n\n if (toolbar !== undefined) {\n return toolbar\n }\n\n return <RichTextEditorToolbar editor={editor} disabled={disabled} />\n}\n\nfunction getRichTextEditorAttributes(editorOptions?: RichTextEditorManagedEditorOptions) {\n const attributes = editorOptions?.editorProps?.attributes\n\n if (!attributes || typeof attributes === 'function') {\n return {\n class: 'dsx-rich-text-editor__prosemirror',\n 'data-slot': 'rich-text-editor-prosemirror',\n }\n }\n\n return {\n ...attributes,\n class: classNames('dsx-rich-text-editor__prosemirror', attributes.class),\n 'data-slot': 'rich-text-editor-prosemirror',\n }\n}\n\nfunction getRichTextEditorStatus(editor: Editor | null) {\n if (!editor) {\n return 'Editor loading'\n }\n\n const plainText = editor.getText().trim()\n\n if (plainText.length === 0) {\n return 'Ready to write'\n }\n\n return `${plainText.length} characters`\n}\n\ninterface RichTextEditorProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, 'content' | 'onUpdate'>,\n RichTextEditorOwnProps {\n content?: unknown\n editorOptions?: RichTextEditorManagedEditorOptions\n extensions?: UseEditorOptions['extensions']\n onEditorUpdate?: (editor: Editor) => void\n onUpdate?: (content: string) => void\n placeholder?: string\n preset?: RichTextEditorPreset\n serialize?: (editor: Editor) => string\n toolbar?: RichTextEditorToolbarSlot | null\n}\n\ninterface RichTextEditorShellProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'>, RichTextEditorOwnProps {\n editor: Editor | null\n placeholder?: string\n toolbar?: RichTextEditorToolbarSlot | null\n}\n\ninterface RichTextEditorToolbarProps extends React.HTMLAttributes<HTMLDivElement> {\n editor: Editor | null\n disabled?: boolean\n}\n\ninterface RichTextEditorContentProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'>,\n RichTextEditorContentOwnProps {\n editor: Editor | null\n placeholder?: string\n}\n\ninterface RichTextEditorToolbarButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n RichTextEditorToolbarButtonOwnProps {}\n\nconst RichTextEditorShell = React.forwardRef<HTMLDivElement, RichTextEditorShellProps>(\n ({ className: propClassName, disabled = false, editor, placeholder, toolbar, ...props }, forwardedRef) => {\n const {\n asChild: _asChild,\n className,\n ...editorProps\n } = extractProps(\n {\n ...props,\n className: propClassName,\n disabled,\n },\n richTextEditorPropDefs,\n )\n\n return (\n <div\n {...editorProps}\n ref={forwardedRef}\n className={classNames('dsx-rich-text-editor', className)}\n aria-disabled={disabled}\n data-disabled={disabled ? 'true' : undefined}\n data-slot=\"rich-text-editor\"\n >\n {renderRichTextEditorToolbar(toolbar, editor, disabled)}\n <RichTextEditorContent editor={editor} placeholder={placeholder} disabled={disabled} />\n <div className=\"dsx-rich-text-editor__status\" data-slot=\"rich-text-editor-status\">\n <span>{getRichTextEditorStatus(editor)}</span>\n </div>\n </div>\n )\n },\n)\nRichTextEditorShell.displayName = 'RichTextEditorShell'\n\nconst RichTextEditorToolbarButton = React.forwardRef<HTMLButtonElement, RichTextEditorToolbarButtonProps>(\n ({ active = false, className: propClassName, ...props }, forwardedRef) => {\n const { asChild, className, ...buttonProps } = extractProps(\n {\n ...props,\n className: propClassName,\n active,\n },\n richTextEditorToolbarButtonPropDefs,\n )\n\n return (\n <Button\n {...buttonProps}\n ref={forwardedRef}\n asChild={asChild}\n variant=\"ghost\"\n size=\"sm\"\n aria-pressed={active}\n data-active={active ? 'true' : undefined}\n data-slot=\"rich-text-editor-toolbar-button\"\n className={classNames('dsx-rich-text-editor__toolbar-button', className)}\n />\n )\n },\n)\nRichTextEditorToolbarButton.displayName = 'RichTextEditorToolbarButton'\n\nconst RichTextEditorToolbar = React.forwardRef<HTMLDivElement, RichTextEditorToolbarProps>(\n ({ editor, disabled = false, className, ...props }, forwardedRef) => {\n const toolbarDisabled = disabled || !editor\n\n return (\n <div\n {...props}\n ref={forwardedRef}\n className={classNames('dsx-rich-text-editor__toolbar', className)}\n data-disabled={toolbarDisabled ? 'true' : undefined}\n data-slot=\"rich-text-editor-toolbar\"\n role=\"toolbar\"\n aria-label=\"Formatting toolbar\"\n >\n <div className=\"dsx-rich-text-editor__toolbar-group\" role=\"group\" aria-label=\"Text style\">\n <span className=\"dsx-rich-text-editor__toolbar-label\">Text</span>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('bold') ?? false}\n aria-label=\"Bold\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleBold().run()}\n >\n <Icon name=\"bold\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('italic') ?? false}\n aria-label=\"Italic\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleItalic().run()}\n >\n <Icon name=\"italic\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('strike') ?? false}\n aria-label=\"Strikethrough\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleStrike().run()}\n >\n <Icon name=\"strikethrough\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n </div>\n <div className=\"dsx-rich-text-editor__toolbar-group\" role=\"group\" aria-label=\"Block style\">\n <span className=\"dsx-rich-text-editor__toolbar-label\">Blocks</span>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('heading', { level: 1 }) ?? false}\n aria-label=\"Heading 1\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleHeading({ level: 1 }).run()}\n >\n <Icon name=\"heading-1\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('heading', { level: 2 }) ?? false}\n aria-label=\"Heading\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleHeading({ level: 2 }).run()}\n >\n <Icon name=\"heading-2\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('heading', { level: 3 }) ?? false}\n aria-label=\"Subheading\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleHeading({ level: 3 }).run()}\n >\n <Icon name=\"heading-3\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('bulletList') ?? false}\n aria-label=\"Bulleted list\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleBulletList().run()}\n >\n <Icon name=\"list\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('orderedList') ?? false}\n aria-label=\"Numbered list\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleOrderedList().run()}\n >\n <Icon name=\"list-ordered\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('blockquote') ?? false}\n aria-label=\"Quote block\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleBlockquote().run()}\n >\n <Icon name=\"quote\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('codeBlock') ?? false}\n aria-label=\"Code block\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().toggleCodeBlock().run()}\n >\n <Icon name=\"code\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n </div>\n <div className=\"dsx-rich-text-editor__toolbar-group\" role=\"group\" aria-label=\"Insert\">\n <span className=\"dsx-rich-text-editor__toolbar-label\">Insert</span>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n active={editor?.isActive('link') ?? false}\n aria-label=\"Link\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (!editor) return\n if (editor.isActive('link')) {\n editor.chain().focus().unsetLink().run()\n return\n }\n const url = window.prompt('URL')\n if (!url) return\n editor.chain().focus().extendMarkRange('link').setLink({ href: url }).run()\n }}\n >\n <Icon name=\"link\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled}\n aria-label=\"Clear formatting\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().clearNodes().unsetAllMarks().run()}\n >\n <Icon name=\"eraser\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n </div>\n <div className=\"dsx-rich-text-editor__toolbar-group\" role=\"group\" aria-label=\"History\">\n <span className=\"dsx-rich-text-editor__toolbar-label\">History</span>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled || !editor?.can().undo()}\n aria-label=\"Undo\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().undo().run()}\n >\n <Icon name=\"undo\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n <RichTextEditorToolbarButton\n disabled={toolbarDisabled || !editor?.can().redo()}\n aria-label=\"Redo\"\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => editor?.chain().focus().redo().run()}\n >\n <Icon name=\"redo\" size=\"sm\" />\n </RichTextEditorToolbarButton>\n </div>\n </div>\n )\n },\n)\nRichTextEditorToolbar.displayName = 'RichTextEditorToolbar'\n\nconst RichTextEditorContent = React.forwardRef<HTMLDivElement, RichTextEditorContentProps>(\n ({ className: propClassName, disabled = false, editor, placeholder, ...props }, forwardedRef) => {\n const {\n asChild: _asChild,\n className,\n mode: _mode,\n ...contentProps\n } = extractProps(\n {\n ...props,\n className: propClassName,\n disabled,\n },\n richTextEditorContentPropDefs,\n )\n\n return (\n <div\n {...contentProps}\n ref={forwardedRef}\n className={classNames('dsx-rich-text-editor__area', className)}\n data-disabled={disabled ? 'true' : undefined}\n data-slot=\"rich-text-editor-area\"\n >\n {editor?.isEmpty && placeholder ? (\n <div className=\"dsx-rich-text-editor__placeholder\" data-slot=\"rich-text-editor-placeholder\">\n {placeholder}\n </div>\n ) : null}\n <EditorContent editor={editor} className=\"dsx-rich-text-editor__content\" data-slot=\"rich-text-editor-content\" />\n </div>\n )\n },\n)\nRichTextEditorContent.displayName = 'RichTextEditorContent'\n\nconst RichTextEditorRoot = React.forwardRef<HTMLDivElement, RichTextEditorProps>(\n (\n {\n className,\n content = '',\n disabled = false,\n editorOptions,\n extensions,\n onEditorUpdate,\n onUpdate,\n placeholder,\n preset = 'basic',\n serialize,\n toolbar,\n ...props\n },\n forwardedRef,\n ) => {\n const managedContent = isRichTextEditorContent(content) ? content : undefined\n\n const onEditorUpdateRef = React.useRef(onEditorUpdate)\n const onUpdateRef = React.useRef(onUpdate)\n const serializeRef = React.useRef(serialize)\n\n React.useEffect(() => {\n onEditorUpdateRef.current = onEditorUpdate\n onUpdateRef.current = onUpdate\n serializeRef.current = serialize\n })\n\n const editor = useEditor(\n {\n ...editorOptions,\n content: managedContent,\n editable: !disabled,\n extensions: extensions ?? createRichTextEditorExtensions({ preset }),\n immediatelyRender: false,\n shouldRerenderOnTransaction: true,\n editorProps: {\n ...editorOptions?.editorProps,\n attributes: getRichTextEditorAttributes(editorOptions),\n },\n onUpdate: ({ editor: currentEditor }) => {\n onEditorUpdateRef.current?.(currentEditor)\n onUpdateRef.current?.((serializeRef.current ?? ((editorInstance: Editor) => editorInstance.getHTML()))(currentEditor))\n },\n },\n [disabled, editorOptions, extensions, preset],\n )\n\n React.useEffect(() => {\n editor?.setEditable(!disabled)\n }, [disabled, editor])\n\n React.useEffect(() => {\n if (!editor) {\n return\n }\n\n if (managedContent === undefined) {\n return\n }\n\n if (typeof managedContent === 'string') {\n if (editor.getHTML() !== managedContent) {\n editor.commands.setContent(managedContent, { emitUpdate: false })\n }\n\n return\n }\n\n if (JSON.stringify(editor.getJSON()) !== JSON.stringify(managedContent)) {\n editor.commands.setContent(managedContent, { emitUpdate: false })\n }\n }, [editor, managedContent])\n\n return (\n <RichTextEditorShell\n {...props}\n ref={forwardedRef}\n className={className}\n disabled={disabled}\n editor={editor}\n placeholder={placeholder}\n toolbar={toolbar}\n />\n )\n },\n)\nRichTextEditorRoot.displayName = 'RichTextEditor'\n\nconst RichTextEditor: typeof RichTextEditorRoot & {\n Shell: typeof RichTextEditorShell\n Toolbar: typeof RichTextEditorToolbar\n Content: typeof RichTextEditorContent\n} = Object.assign(RichTextEditorRoot, {\n Shell: RichTextEditorShell,\n Toolbar: RichTextEditorToolbar,\n Content: RichTextEditorContent,\n})\n\nexport { RichTextEditor, RichTextEditorContent, RichTextEditorRoot, RichTextEditorShell, RichTextEditorToolbar, createRichTextEditorExtensions }\nexport type {\n RichTextEditorContentProps,\n RichTextEditorProps,\n RichTextEditorShellProps,\n RichTextEditorToolbarProps,\n RichTextEditorToolbarSlot,\n RichTextEditorPreset,\n RichTextEditorExtensionConfig,\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["StarterKit", "classNames"]
|
|
7
7
|
}
|