@dpa-id-components/dpa-shared-components 21.1.1 → 22.0.0-next.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/{alert-fill-BHn_Z4vo.js → alert-filled-COSmQYAa.js} +1 -1
- package/dist/{bell-fill-DHRfa4cC.js → bell-filled-7gfK8601.js} +1 -1
- package/dist/{bookmark-outlined-D41PleT8.js → bookmark-D65iW--h.js} +1 -1
- package/dist/{bookmark-DNJYJq0J.js → bookmark-filled-5lCW1BfF.js} +1 -1
- package/dist/{comment-fill-Dc-swkQu.js → comment-filled-Cl_qZ6Fz.js} +1 -1
- package/dist/components/UiBadge/UiBadge.vue.d.ts +3 -16
- package/dist/components/UiButton/UiButton.vue.d.ts +15 -21
- package/dist/components/UiButtonGroup/UiButtonGroup.vue.d.ts +5 -11
- package/dist/components/UiCheckbox/UiCheckbox.vue.d.ts +14 -21
- package/dist/components/UiChip/UiChip.vue.d.ts +11 -12
- package/dist/components/UiColorPicker/UiColorPicker.vue.d.ts +6 -8
- package/dist/components/UiDatePicker/UiDatePicker.vue.d.ts +47 -84
- package/dist/components/UiDialog/UiDialog.vue.d.ts +20 -37
- package/dist/components/UiFilterBadge/UiFilterBadge.vue.d.ts +10 -9
- package/dist/components/UiFilterButton/UiFilterButton.vue.d.ts +26 -10
- package/dist/components/UiIcon/UiIcon.vue.d.ts +11 -6
- package/dist/components/UiIcon/icons.d.ts +14 -39
- package/dist/components/UiIconButton/UiIconButton.vue.d.ts +15 -6
- package/dist/components/UiInfoContent/UiInfoContent.vue.d.ts +17 -10
- package/dist/components/UiInput/UiInput.vue.d.ts +6 -48
- package/dist/components/UiList/UiList.vue.d.ts +5 -11
- package/dist/components/UiListItem/UiListItem.vue.d.ts +12 -24
- package/dist/components/UiMenu/UiMenu.vue.d.ts +30 -35
- package/dist/components/UiMenu/UiMenuItem.vue.d.ts +8 -5
- package/dist/components/UiMenu/UiMenuList.vue.d.ts +13 -11
- package/dist/components/UiPopover/UiPopover.vue.d.ts +45 -0
- package/dist/components/UiRadioButton/UiRadioButton.vue.d.ts +35 -0
- package/dist/components/UiRadioInputGroup/UiRadioInputGroup.vue.d.ts +27 -31
- package/dist/components/UiSearchBar/UiSearchBar.vue.d.ts +16 -39
- package/dist/components/UiSearchInput/UiSearchInput.vue.d.ts +2 -2
- package/dist/components/UiSkeletonBox/UiSkeletonBox.vue.d.ts +1 -5
- package/dist/components/UiSnackbar/UiSnackbar.vue.d.ts +4 -10
- package/dist/components/UiSpinner/UiSpinner.vue.d.ts +5 -8
- package/dist/components/UiTextButton/UiTextButton.vue.d.ts +22 -13
- package/dist/components/UiToggleButton/UiToggleButton.vue.d.ts +10 -24
- package/dist/components/UiTooltip/UiTooltip.vue.d.ts +3 -31
- package/dist/components/index.d.ts +3 -4
- package/dist/dpa-shared-components.js +4263 -4873
- package/dist/{flag-fill-C3XgapYW.js → flag-filled-VmJW-U0p.js} +1 -1
- package/dist/{folder-fill-CnEmPx6c.js → folder-filled-D6pmcH0e.js} +1 -1
- package/dist/{image focus point-D_hUlTWi.js → image-focus-point-BJ7HhehR.js} +1 -1
- package/dist/{info-fill-DlgeXJbI.js → info-filled-PYbvwGmZ.js} +1 -1
- package/dist/{map-outline-uvK8An7m.js → map-FF2zfEGP.js} +1 -1
- package/dist/{map-BMOQGCce.js → map-filled-Y8JaYK4Y.js} +1 -1
- package/dist/{video-rounded-ISWC3gUM.js → play-CArB2O7k.js} +1 -1
- package/dist/{saved-search-fill-CPoyaMRU.js → saved-search-filled-CNz5iwu_.js} +1 -1
- package/dist/{sidebar-fill-CBSJYVQQ.js → sidebar-filled-BnnqCUYl.js} +1 -1
- package/dist/spinner-CrCQ6H6L.js +32 -0
- package/dist/src/assets/icons/{bookmark-fill.vue → bookmark-filled.vue} +1 -1
- package/dist/src/assets/icons/bookmark.vue +4 -7
- package/dist/src/assets/icons/flag-filled.vue +4 -4
- package/dist/src/assets/icons/folder-filled.vue +4 -4
- package/dist/src/assets/icons/info-filled.vue +4 -4
- package/dist/src/assets/icons/map-filled.vue +13 -0
- package/dist/src/assets/icons/map.vue +1 -1
- package/dist/src/assets/icons/play.vue +1 -1
- package/dist/src/assets/icons/spinner.vue +27 -3
- package/dist/src/components/DpaMediaItem/DpaMediaItem.spec.ts +3 -3
- package/dist/src/components/DpaMediaItem/DpaMediaItem.vue +17 -17
- package/dist/src/components/UiBadge/README.md +8 -13
- package/dist/src/components/UiBadge/UiBadge.spec.ts +9 -15
- package/dist/src/components/UiBadge/UiBadge.stories.ts +52 -42
- package/dist/src/components/UiBadge/UiBadge.vue +29 -77
- package/dist/src/components/UiButton/README.md +20 -18
- package/dist/src/components/UiButton/UiButton.spec.ts +12 -41
- package/dist/src/components/UiButton/UiButton.stories.ts +53 -33
- package/dist/src/components/UiButton/UiButton.vue +55 -111
- package/dist/src/components/UiButtonGroup/UiButtonGroup.stories.ts +3 -2
- package/dist/src/components/UiButtonGroup/UiButtonGroup.vue +23 -1
- package/dist/src/components/UiCard/UiCard.vue +3 -3
- package/dist/src/components/UiCheckBoxGroup/UiCheckBoxGroup.spec.ts +4 -2
- package/dist/src/components/UiCheckBoxGroup/UiCheckBoxGroup.stories.ts +1 -1
- package/dist/src/components/UiCheckBoxGroup/UiCheckBoxGroup.vue +2 -3
- package/dist/src/components/UiCheckbox/README.md +4 -16
- package/dist/src/components/UiCheckbox/UiCheckbox.spec.ts +15 -141
- package/dist/src/components/UiCheckbox/UiCheckbox.stories.ts +18 -32
- package/dist/src/components/UiCheckbox/UiCheckbox.vue +48 -84
- package/dist/src/components/UiChip/README.md +10 -5
- package/dist/src/components/UiChip/UiChip.spec.ts +5 -60
- package/dist/src/components/UiChip/UiChip.stories.ts +53 -17
- package/dist/src/components/UiChip/UiChip.vue +31 -33
- package/dist/src/components/UiCollapseNavigation/README.md +3 -3
- package/dist/src/components/UiCollapseNavigation/UiCollapseNavigation.stories.ts +12 -12
- package/dist/src/components/UiCollapseNavigation/UiCollapseNavigation.vue +8 -6
- package/dist/src/components/UiColorPicker/UiColorPicker.spec.ts +12 -24
- package/dist/src/components/UiColorPicker/UiColorPicker.stories.ts +5 -6
- package/dist/src/components/UiColorPicker/UiColorPicker.vue +21 -60
- package/dist/src/components/UiColorPicker/lib/colors.ts +9 -9
- package/dist/src/components/UiDatePicker/README.md +68 -46
- package/dist/src/components/UiDatePicker/UiDatePicker.spec.ts +92 -284
- package/dist/src/components/UiDatePicker/UiDatePicker.stories.ts +210 -196
- package/dist/src/components/UiDatePicker/UiDatePicker.vue +301 -432
- package/dist/src/components/UiDialog/README.md +17 -22
- package/dist/src/components/UiDialog/UiDialog.spec.ts +3 -110
- package/dist/src/components/UiDialog/UiDialog.stories.ts +45 -54
- package/dist/src/components/UiDialog/UiDialog.vue +75 -104
- package/dist/src/components/UiFilterBadge/README.md +7 -7
- package/dist/src/components/UiFilterBadge/UiFilterBadge.spec.ts +47 -3
- package/dist/src/components/UiFilterBadge/UiFilterBadge.stories.ts +3 -18
- package/dist/src/components/UiFilterBadge/UiFilterBadge.vue +31 -26
- package/dist/src/components/UiFilterButton/README.md +2 -0
- package/dist/src/components/UiFilterButton/UiFilterButton.spec.ts +1 -1
- package/dist/src/components/UiFilterButton/UiFilterButton.stories.ts +2 -1
- package/dist/src/components/UiFilterButton/UiFilterButton.vue +31 -23
- package/dist/src/components/UiIcon/UiIcon.spec.ts +3 -3
- package/dist/src/components/UiIcon/UiIcon.stories.ts +1 -1
- package/dist/src/components/UiIcon/UiIcon.vue +24 -25
- package/dist/src/components/UiIcon/icons.ts +113 -141
- package/dist/src/components/UiIconButton/UiIconButton.spec.ts +1 -1
- package/dist/src/components/UiIconButton/UiIconButton.stories.ts +1 -0
- package/dist/src/components/UiIconButton/UiIconButton.vue +28 -10
- package/dist/src/components/UiInfoContent/README.md +7 -8
- package/dist/src/components/UiInfoContent/UiInfoContent.spec.ts +29 -21
- package/dist/src/components/UiInfoContent/UiInfoContent.stories.ts +11 -33
- package/dist/src/components/UiInfoContent/UiInfoContent.vue +34 -33
- package/dist/src/components/UiInput/README.md +15 -32
- package/dist/src/components/UiInput/UiInput.spec.ts +71 -102
- package/dist/src/components/UiInput/UiInput.stories.ts +67 -58
- package/dist/src/components/UiInput/UiInput.vue +87 -286
- package/dist/src/components/UiLabel/README.md +0 -9
- package/dist/src/components/UiLabel/UiLabel.vue +1 -1
- package/dist/src/components/UiList/UiList.stories.ts +1 -0
- package/dist/src/components/UiList/UiList.vue +22 -0
- package/dist/src/components/UiListItem/UiListItem.spec.ts +1 -2
- package/dist/src/components/UiListItem/UiListItem.stories.ts +2 -2
- package/dist/src/components/UiListItem/UiListItem.vue +73 -93
- package/dist/src/components/UiMenu/README.md +64 -7
- package/dist/src/components/UiMenu/UiMenu.spec.ts +87 -99
- package/dist/src/components/UiMenu/UiMenu.stories.ts +166 -411
- package/dist/src/components/UiMenu/UiMenu.vue +228 -408
- package/dist/src/components/UiMenu/UiMenuItem.vue +28 -9
- package/dist/src/components/UiMenu/UiMenuList.vue +22 -0
- package/dist/src/components/UiOverlay/README.md +1 -1
- package/dist/src/components/UiOverlay/UiOverlay.stories.ts +1 -1
- package/dist/src/components/UiOverlay/UiOverlay.vue +2 -2
- package/dist/src/components/UiOverlayMenu/README.md +1 -1
- package/dist/src/components/UiOverlayMenu/UiOverlayMenu.vue +3 -3
- package/dist/src/components/UiPopover/README.md +56 -0
- package/dist/src/components/UiPopover/UiPopover.stories.ts +49 -0
- package/dist/src/components/UiPopover/UiPopover.vue +187 -0
- package/dist/src/components/UiRadioButton/README.md +44 -0
- package/dist/src/components/UiRadioButton/UiRadioButton.stories.ts +85 -0
- package/dist/src/components/UiRadioButton/UiRadioButton.vue +82 -0
- package/dist/src/components/UiRadioInputGroup/UiRadioInputGroup.spec.ts +5 -5
- package/dist/src/components/UiRadioInputGroup/UiRadioInputGroup.stories.ts +5 -30
- package/dist/src/components/UiRadioInputGroup/UiRadioInputGroup.vue +44 -69
- package/dist/src/components/UiSearchBar/README.md +40 -37
- package/dist/src/components/UiSearchBar/UiSearchBar.spec.ts +6 -23
- package/dist/src/components/UiSearchBar/UiSearchBar.stories.ts +25 -127
- package/dist/src/components/UiSearchBar/UiSearchBar.vue +73 -179
- package/dist/src/components/UiSearchInput/UiSearchInput.vue +27 -22
- package/dist/src/components/UiSection/UiSection.vue +4 -4
- package/dist/src/components/UiSectionDivider/UiSectionDivider.vue +3 -3
- package/dist/src/components/UiSelect/UiSelect.stories.ts +1 -1
- package/dist/src/components/UiSelect/UiSelect.vue +17 -76
- package/dist/src/components/UiSkeletonBox/UiSkeletonBox.spec.ts +1 -1
- package/dist/src/components/UiSkeletonBox/UiSkeletonBox.vue +12 -17
- package/dist/src/components/UiSnackbar/UiSnackbar.spec.ts +45 -0
- package/dist/src/components/UiSnackbar/UiSnackbar.stories.ts +19 -22
- package/dist/src/components/UiSnackbar/UiSnackbar.vue +23 -26
- package/dist/src/components/UiSpinner/README.md +6 -4
- package/dist/src/components/UiSpinner/UiSpinner.spec.ts +33 -19
- package/dist/src/components/UiSpinner/UiSpinner.stories.ts +16 -20
- package/dist/src/components/UiSpinner/UiSpinner.vue +55 -87
- package/dist/src/components/UiTextButton/UiTextButton.spec.ts +3 -3
- package/dist/src/components/UiTextButton/UiTextButton.stories.ts +1 -0
- package/dist/src/components/UiTextButton/UiTextButton.vue +28 -9
- package/dist/src/components/UiToggleButton/README.md +16 -15
- package/dist/src/components/UiToggleButton/UiToggleButton.spec.ts +48 -62
- package/dist/src/components/UiToggleButton/UiToggleButton.stories.ts +30 -40
- package/dist/src/components/UiToggleButton/UiToggleButton.vue +54 -129
- package/dist/src/components/UiTooltip/README.md +25 -36
- package/dist/src/components/UiTooltip/UiTooltip.spec.ts +45 -25
- package/dist/src/components/UiTooltip/UiTooltip.stories.ts +21 -64
- package/dist/src/components/UiTooltip/UiTooltip.vue +64 -136
- package/dist/src/components/index.ts +4 -6
- package/dist/src/compositions/useBreakpoints/UseBreakpoints.stories.vue +4 -2
- package/dist/src/tailwindPreset.css +161 -56
- package/dist/src/types/index.ts +1 -0
- package/dist/src/utils/cn.spec.ts +21 -4
- package/dist/src/utils/cn.ts +11 -4
- package/dist/style.css +1 -1
- package/dist/tailwindPreset.css +161 -56
- package/dist/types/index.d.ts +1 -0
- package/dist/utils/cn.d.ts +8 -0
- package/dist/{video overlay-DfhF7VpE.js → video-overlay-D6e61Eo7.js} +1 -1
- package/package.json +1 -2
- package/src/assets/icons/{bookmark-fill.vue → bookmark-filled.vue} +1 -1
- package/src/assets/icons/bookmark.vue +4 -7
- package/src/assets/icons/flag-filled.vue +4 -4
- package/src/assets/icons/folder-filled.vue +4 -4
- package/src/assets/icons/info-filled.vue +4 -4
- package/src/assets/icons/map-filled.vue +13 -0
- package/src/assets/icons/map.vue +1 -1
- package/src/assets/icons/play.vue +1 -1
- package/src/assets/icons/spinner.vue +27 -3
- package/src/components/DpaMediaItem/DpaMediaItem.vue +17 -17
- package/src/components/UiBadge/README.md +8 -13
- package/src/components/UiBadge/UiBadge.vue +29 -77
- package/src/components/UiButton/README.md +20 -18
- package/src/components/UiButton/UiButton.vue +55 -111
- package/src/components/UiButtonGroup/UiButtonGroup.vue +23 -1
- package/src/components/UiCard/UiCard.vue +3 -3
- package/src/components/UiCheckBoxGroup/UiCheckBoxGroup.vue +2 -3
- package/src/components/UiCheckbox/README.md +4 -16
- package/src/components/UiCheckbox/UiCheckbox.vue +48 -84
- package/src/components/UiChip/README.md +10 -5
- package/src/components/UiChip/UiChip.vue +31 -33
- package/src/components/UiCollapseNavigation/README.md +3 -3
- package/src/components/UiCollapseNavigation/UiCollapseNavigation.vue +8 -6
- package/src/components/UiColorPicker/UiColorPicker.vue +21 -60
- package/src/components/UiColorPicker/lib/colors.ts +9 -9
- package/src/components/UiDatePicker/README.md +68 -46
- package/src/components/UiDatePicker/UiDatePicker.vue +301 -432
- package/src/components/UiDialog/README.md +17 -22
- package/src/components/UiDialog/UiDialog.vue +75 -104
- package/src/components/UiFilterBadge/README.md +7 -7
- package/src/components/UiFilterBadge/UiFilterBadge.vue +31 -26
- package/src/components/UiFilterButton/README.md +2 -0
- package/src/components/UiFilterButton/UiFilterButton.vue +31 -23
- package/src/components/UiIcon/UiIcon.vue +24 -25
- package/src/components/UiIcon/icons.ts +113 -141
- package/src/components/UiIconButton/UiIconButton.vue +28 -10
- package/src/components/UiInfoContent/README.md +7 -8
- package/src/components/UiInfoContent/UiInfoContent.vue +34 -33
- package/src/components/UiInput/README.md +15 -32
- package/src/components/UiInput/UiInput.vue +87 -286
- package/src/components/UiLabel/README.md +0 -9
- package/src/components/UiLabel/UiLabel.vue +1 -1
- package/src/components/UiList/UiList.vue +22 -0
- package/src/components/UiListItem/UiListItem.vue +73 -93
- package/src/components/UiMenu/README.md +64 -7
- package/src/components/UiMenu/UiMenu.vue +228 -408
- package/src/components/UiMenu/UiMenuItem.vue +28 -9
- package/src/components/UiMenu/UiMenuList.vue +22 -0
- package/src/components/UiOverlay/README.md +1 -1
- package/src/components/UiOverlay/UiOverlay.vue +2 -2
- package/src/components/UiOverlayMenu/README.md +1 -1
- package/src/components/UiOverlayMenu/UiOverlayMenu.vue +3 -3
- package/src/components/UiPopover/README.md +56 -0
- package/src/components/UiPopover/UiPopover.vue +187 -0
- package/src/components/UiRadioButton/README.md +44 -0
- package/src/components/UiRadioButton/UiRadioButton.vue +82 -0
- package/src/components/UiRadioInputGroup/UiRadioInputGroup.vue +44 -69
- package/src/components/UiSearchBar/README.md +40 -37
- package/src/components/UiSearchBar/UiSearchBar.vue +73 -179
- package/src/components/UiSearchInput/UiSearchInput.vue +27 -22
- package/src/components/UiSection/UiSection.vue +4 -4
- package/src/components/UiSectionDivider/UiSectionDivider.vue +3 -3
- package/src/components/UiSelect/UiSelect.vue +17 -76
- package/src/components/UiSkeletonBox/UiSkeletonBox.vue +12 -17
- package/src/components/UiSnackbar/UiSnackbar.vue +23 -26
- package/src/components/UiSpinner/README.md +6 -4
- package/src/components/UiSpinner/UiSpinner.vue +55 -87
- package/src/components/UiTextButton/UiTextButton.vue +28 -9
- package/src/components/UiToggleButton/README.md +16 -15
- package/src/components/UiToggleButton/UiToggleButton.vue +54 -129
- package/src/components/UiTooltip/README.md +25 -36
- package/src/components/UiTooltip/UiTooltip.vue +64 -136
- package/src/tailwindPreset.css +161 -56
- package/src/types/index.ts +1 -0
- package/src/utils/cn.ts +11 -4
- package/dist/assets/icons/flag-outline.vue.d.ts +0 -3
- package/dist/assets/icons/folder-fill.vue.d.ts +0 -3
- package/dist/assets/icons/graphic-circled.vue.d.ts +0 -3
- package/dist/assets/icons/graphic-filled.vue.d.ts +0 -3
- package/dist/assets/icons/image focus point.vue.d.ts +0 -3
- package/dist/assets/icons/info-fill.vue.d.ts +0 -3
- package/dist/assets/icons/lock-filled.vue.d.ts +0 -3
- package/dist/assets/icons/map-outline.vue.d.ts +0 -3
- package/dist/assets/icons/paperplane.vue.d.ts +0 -3
- package/dist/assets/icons/pause-circle.vue.d.ts +0 -3
- package/dist/assets/icons/picture-circled.vue.d.ts +0 -3
- package/dist/assets/icons/picture-filled.vue.d.ts +0 -3
- package/dist/assets/icons/picture-gallery.vue.d.ts +0 -3
- package/dist/assets/icons/play-circle.vue.d.ts +0 -3
- package/dist/assets/icons/play-fill.vue.d.ts +0 -3
- package/dist/assets/icons/plus-circle.vue.d.ts +0 -3
- package/dist/assets/icons/saved-search-fill.vue.d.ts +0 -3
- package/dist/assets/icons/sidebar-fill.vue.d.ts +0 -3
- package/dist/assets/icons/star-fill.vue.d.ts +0 -3
- package/dist/assets/icons/text-circled.vue.d.ts +0 -3
- package/dist/assets/icons/text-filled.vue.d.ts +0 -3
- package/dist/assets/icons/video overlay.vue.d.ts +0 -3
- package/dist/assets/icons/video-circled.vue.d.ts +0 -3
- package/dist/assets/icons/video-filled.vue.d.ts +0 -3
- package/dist/assets/icons/video-rounded.vue.d.ts +0 -3
- package/dist/audio-circled-amRbTaDb.js +0 -15
- package/dist/audio-filled-C7m_-PTb.js +0 -15
- package/dist/bookmark-fill-DbkrXmPt.js +0 -20
- package/dist/components/UiAutocomplete/UiAutocomplete.vue.d.ts +0 -22
- package/dist/components/UiFilterBadgeButton/UiFilterBadgeButton.vue.d.ts +0 -29
- package/dist/components/UiSimpleInput/UiSimpleInput.vue.d.ts +0 -20
- package/dist/filter-outline-ChWKUbSt.js +0 -16
- package/dist/flag-filled-CdVD_QxY.js +0 -18
- package/dist/flag-outline-ChGgKT6P.js +0 -18
- package/dist/folder-filled-zwvSw3Sd.js +0 -18
- package/dist/graphic-circled-BtuNYmPh.js +0 -15
- package/dist/graphic-filled-DXQvxz4s.js +0 -15
- package/dist/info-filled-Btao1rhT.js +0 -18
- package/dist/lock-filled-C5I60_d0.js +0 -18
- package/dist/paperplane-ed0y9oB6.js +0 -18
- package/dist/pause-circle-ab18LhX3.js +0 -19
- package/dist/picture-circled-DYsNZNYH.js +0 -15
- package/dist/picture-filled-CQYRN3Fa.js +0 -15
- package/dist/picture-gallery-BgWYQrqC.js +0 -16
- package/dist/play-BXy8WcYq.js +0 -18
- package/dist/play-circle-B88YxOh-.js +0 -18
- package/dist/play-fill-nWPoHjD3.js +0 -18
- package/dist/plus-circle-DKWKVMiq.js +0 -18
- package/dist/spinner-dy09pOOm.js +0 -13
- package/dist/src/assets/icons/audio-circled.vue +0 -12
- package/dist/src/assets/icons/audio-filled.vue +0 -12
- package/dist/src/assets/icons/bookmark-outlined.vue +0 -12
- package/dist/src/assets/icons/filter-outline.vue +0 -8
- package/dist/src/assets/icons/flag-fill.vue +0 -13
- package/dist/src/assets/icons/flag-outline.vue +0 -13
- package/dist/src/assets/icons/folder-fill.vue +0 -13
- package/dist/src/assets/icons/graphic-circled.vue +0 -12
- package/dist/src/assets/icons/graphic-filled.vue +0 -12
- package/dist/src/assets/icons/info-fill.vue +0 -13
- package/dist/src/assets/icons/lock-filled.vue +0 -13
- package/dist/src/assets/icons/map-outline.vue +0 -13
- package/dist/src/assets/icons/paperplane.vue +0 -13
- package/dist/src/assets/icons/pause-circle.vue +0 -14
- package/dist/src/assets/icons/picture-circled.vue +0 -12
- package/dist/src/assets/icons/picture-filled.vue +0 -12
- package/dist/src/assets/icons/picture-gallery.vue +0 -13
- package/dist/src/assets/icons/play-circle.vue +0 -13
- package/dist/src/assets/icons/play-fill.vue +0 -13
- package/dist/src/assets/icons/plus-circle.vue +0 -13
- package/dist/src/assets/icons/star-fill.vue +0 -13
- package/dist/src/assets/icons/text-circled.vue +0 -12
- package/dist/src/assets/icons/text-filled.vue +0 -12
- package/dist/src/assets/icons/video-circled.vue +0 -12
- package/dist/src/assets/icons/video-filled.vue +0 -12
- package/dist/src/assets/icons/video-rounded.vue +0 -13
- package/dist/src/components/UiAutocomplete/README.md +0 -44
- package/dist/src/components/UiAutocomplete/UiAutocomplete.spec.ts +0 -39
- package/dist/src/components/UiAutocomplete/UiAutocomplete.stories.ts +0 -46
- package/dist/src/components/UiAutocomplete/UiAutocomplete.vue +0 -159
- package/dist/src/components/UiFilterBadgeButton/README.md +0 -38
- package/dist/src/components/UiFilterBadgeButton/UiFilterBadgeButton.spec.ts +0 -41
- package/dist/src/components/UiFilterBadgeButton/UiFilterBadgeButton.stories.ts +0 -56
- package/dist/src/components/UiFilterBadgeButton/UiFilterBadgeButton.vue +0 -50
- package/dist/src/components/UiSimpleInput/README.md +0 -38
- package/dist/src/components/UiSimpleInput/UiSimpleInput.spec.ts +0 -58
- package/dist/src/components/UiSimpleInput/UiSimpleInput.stories.ts +0 -53
- package/dist/src/components/UiSimpleInput/UiSimpleInput.vue +0 -98
- package/dist/src/utils/index.spec.ts +0 -12
- package/dist/star-fill-DIXwg3gQ.js +0 -18
- package/dist/text-circled-Cykzn5-2.js +0 -15
- package/dist/text-filled-BwOhn26K.js +0 -15
- package/dist/video-circled-Bw9Miyyr.js +0 -15
- package/dist/video-filled-B5Td1M5L.js +0 -15
- package/src/assets/icons/audio-circled.vue +0 -12
- package/src/assets/icons/audio-filled.vue +0 -12
- package/src/assets/icons/bookmark-outlined.vue +0 -12
- package/src/assets/icons/filter-outline.vue +0 -8
- package/src/assets/icons/flag-fill.vue +0 -13
- package/src/assets/icons/flag-outline.vue +0 -13
- package/src/assets/icons/folder-fill.vue +0 -13
- package/src/assets/icons/graphic-circled.vue +0 -12
- package/src/assets/icons/graphic-filled.vue +0 -12
- package/src/assets/icons/info-fill.vue +0 -13
- package/src/assets/icons/lock-filled.vue +0 -13
- package/src/assets/icons/map-outline.vue +0 -13
- package/src/assets/icons/paperplane.vue +0 -13
- package/src/assets/icons/pause-circle.vue +0 -14
- package/src/assets/icons/picture-circled.vue +0 -12
- package/src/assets/icons/picture-filled.vue +0 -12
- package/src/assets/icons/picture-gallery.vue +0 -13
- package/src/assets/icons/play-circle.vue +0 -13
- package/src/assets/icons/play-fill.vue +0 -13
- package/src/assets/icons/plus-circle.vue +0 -13
- package/src/assets/icons/star-fill.vue +0 -13
- package/src/assets/icons/text-circled.vue +0 -12
- package/src/assets/icons/text-filled.vue +0 -12
- package/src/assets/icons/video-circled.vue +0 -12
- package/src/assets/icons/video-filled.vue +0 -12
- package/src/assets/icons/video-rounded.vue +0 -13
- package/src/components/UiAutocomplete/README.md +0 -44
- package/src/components/UiAutocomplete/UiAutocomplete.vue +0 -159
- package/src/components/UiFilterBadgeButton/README.md +0 -38
- package/src/components/UiFilterBadgeButton/UiFilterBadgeButton.vue +0 -50
- package/src/components/UiSimpleInput/README.md +0 -38
- package/src/components/UiSimpleInput/UiSimpleInput.vue +0 -98
- /package/dist/{alert-BMmH4q6y.js → alert-CdAp0ksh.js} +0 -0
- /package/dist/assets/icons/{alert-fill.vue.d.ts → alert-filled.vue.d.ts} +0 -0
- /package/dist/assets/icons/{audio-circled.vue.d.ts → bell-filled.vue.d.ts} +0 -0
- /package/dist/assets/icons/{audio-filled.vue.d.ts → bookmark-filled.vue.d.ts} +0 -0
- /package/dist/assets/icons/{bell-fill.vue.d.ts → comment-filled.vue.d.ts} +0 -0
- /package/dist/assets/icons/{bookmark-fill.vue.d.ts → image-focus-point.vue.d.ts} +0 -0
- /package/dist/assets/icons/{bookmark-outlined.vue.d.ts → map-filled.vue.d.ts} +0 -0
- /package/dist/assets/icons/{comment-fill.vue.d.ts → saved-search-filled.vue.d.ts} +0 -0
- /package/dist/assets/icons/{filter-outline.vue.d.ts → sidebar-filled.vue.d.ts} +0 -0
- /package/dist/assets/icons/{flag-fill.vue.d.ts → video-overlay.vue.d.ts} +0 -0
- /package/dist/{audio-BN2iVbbp.js → audio-Cgg6MUeM.js} +0 -0
- /package/dist/{audio-DLQLFJ3x.js → audio-DS8plcCU.js} +0 -0
- /package/dist/{bag-Br7SrnRJ.js → bag-B28jMR7E.js} +0 -0
- /package/dist/{bell-kOosto6B.js → bell-k_sZgnpL.js} +0 -0
- /package/dist/{book-D0Xsp8As.js → book-CqUJ_JRz.js} +0 -0
- /package/dist/{box-Bw_tD7Nd.js → box-BCDNtaq7.js} +0 -0
- /package/dist/{bulb-tXJKei6j.js → bulb-12wSYpgA.js} +0 -0
- /package/dist/{call-BdzulBfZ.js → call-CW04DyHi.js} +0 -0
- /package/dist/{camera-D8so0Wqg.js → camera-CbeyxVU5.js} +0 -0
- /package/dist/{check-CTBqwPMY.js → check-BpPjjXqx.js} +0 -0
- /package/dist/{checklist-CVBb2iLT.js → checklist-CFCfO7IN.js} +0 -0
- /package/dist/{checkmark-BkBvk5FP.js → checkmark-DhUksPvT.js} +0 -0
- /package/dist/{checkmark-double-9tbcPPxC.js → checkmark-double-BNGXAUiT.js} +0 -0
- /package/dist/{chevron-down-BcjUrqWQ.js → chevron-down-BjZ6BFFp.js} +0 -0
- /package/dist/{chevron-left-DdChgK6Q.js → chevron-left-Z-D_OY2t.js} +0 -0
- /package/dist/{chevron-right-BR3OVahz.js → chevron-right-D1GfZQB6.js} +0 -0
- /package/dist/{chevron-up-R3uiTZDq.js → chevron-up-DWZ1F8w0.js} +0 -0
- /package/dist/{clipboard-BFi2VbBj.js → clipboard-CNCIToKK.js} +0 -0
- /package/dist/{clock-C3D4TRfx.js → clock-CqWSNhFX.js} +0 -0
- /package/dist/{close-CbIMNMG_.js → close-oHIGT_JQ.js} +0 -0
- /package/dist/{cloud-save-CQCTGXxN.js → cloud-save-CWTQ5IHS.js} +0 -0
- /package/dist/{code-ChJ2qMcZ.js → code-BD5nOHqK.js} +0 -0
- /package/dist/{collapse-DISUbIVr.js → collapse-D6QeCZC7.js} +0 -0
- /package/dist/{color-palette-B4pqFFIE.js → color-palette-BpONORjj.js} +0 -0
- /package/dist/{comment-CzF3hkpf.js → comment-D5RZxZWG.js} +0 -0
- /package/dist/{copy-CywrUiK2.js → copy-BDnlScSS.js} +0 -0
- /package/dist/{copy-link-DqcNlpUK.js → copy-link-BSfa58Tb.js} +0 -0
- /package/dist/{delete-Bl6aSpBn.js → delete-dDyi0gau.js} +0 -0
- /package/dist/{download-BdnIOaET.js → download-B-ZTsIBv.js} +0 -0
- /package/dist/{dpa-id-4HKRxUEF.js → dpa-id-DRnjTcHI.js} +0 -0
- /package/dist/{edit-KtC1G-_s.js → edit-BbFkVyRd.js} +0 -0
- /package/dist/{edit-add-DjUq6zXq.js → edit-add-CAPOsjts.js} +0 -0
- /package/dist/{eil-CPA4kVQM.js → eil-CzEP-9Lo.js} +0 -0
- /package/dist/{emoji-C2BmBFxC.js → emoji-BjLqvypC.js} +0 -0
- /package/dist/{emoji-add-NHqne_6m.js → emoji-add-BB4fB4th.js} +0 -0
- /package/dist/{envelope-BDSOA_J7.js → envelope-DftzB5Ol.js} +0 -0
- /package/dist/{event-Bo_sb247.js → event-FR1JMgj6.js} +0 -0
- /package/dist/{expand-BK_uzKmx.js → expand-DaVQ0gpz.js} +0 -0
- /package/dist/{external-link-BPYyKPIa.js → external-link-2Es0qWwd.js} +0 -0
- /package/dist/{file-B97T9C2M.js → file-AHJ00f5M.js} +0 -0
- /package/dist/{file-pdf-lFk-5brY.js → file-pdf-CJDdjKS0.js} +0 -0
- /package/dist/{filter-BIJnBkRa.js → filter-CXjBFUUg.js} +0 -0
- /package/dist/{flag-DNP4L-y-.js → flag-CbX4PUMS.js} +0 -0
- /package/dist/{flags-G-Nbo5ST.js → flags-Buo1j-9g.js} +0 -0
- /package/dist/{flash-9TBwsdOx.js → flash-Dlr5gL01.js} +0 -0
- /package/dist/{folder-s6NWFqjh.js → folder-DQwCjGZC.js} +0 -0
- /package/dist/{folder-add-B-l2wmwY.js → folder-add-zPr2Gmtj.js} +0 -0
- /package/dist/{gallery-B8I5lJ51.js → gallery-CfUbckcB.js} +0 -0
- /package/dist/{gallery-DSmOoCFT.js → gallery-DPl8qZQu.js} +0 -0
- /package/dist/{graphic-BMtcGj5R.js → graphic-BbhCuiiE.js} +0 -0
- /package/dist/{graphic-d-_5qmyr.js → graphic-nXH5ifxc.js} +0 -0
- /package/dist/{graphics-eur3JZ_7.js → graphics-Dp8pQzs-.js} +0 -0
- /package/dist/{grid-1-DOm2nS5Y.js → grid-1-DZUEMbtb.js} +0 -0
- /package/dist/{grid-2-D9XOIyFO.js → grid-2-BQ-9yylY.js} +0 -0
- /package/dist/{grid-3-CR1E0m9u.js → grid-3-BGhZrrCJ.js} +0 -0
- /package/dist/{grid-4-QKKeiUGc.js → grid-4-DY9N435A.js} +0 -0
- /package/dist/{grid-6-C5bCbXur.js → grid-6-B0BR3wbB.js} +0 -0
- /package/dist/{grid-9-FNxsRYRg.js → grid-9-BWhM7qat.js} +0 -0
- /package/dist/{grid-masonry-CuwXzdZ6.js → grid-masonry-1e9tYkSK.js} +0 -0
- /package/dist/{grid-masonry-9-CxLBpKCz.js → grid-masonry-9-DiiX1pQo.js} +0 -0
- /package/dist/{help-DkjfD818.js → help-CLfj4LQM.js} +0 -0
- /package/dist/{home-njHAfgwc.js → home-D6htLjOF.js} +0 -0
- /package/dist/{image-C2RlXeDP.js → image-DnYnaoeu.js} +0 -0
- /package/dist/{impact-high-C0SywXT1.js → impact-high-DuECIU0d.js} +0 -0
- /package/dist/{impact-low-yDd0jU4k.js → impact-low-DMtzvmWi.js} +0 -0
- /package/dist/{impact-medium-Cc_nInN7.js → impact-medium-B5-WfnV2.js} +0 -0
- /package/dist/{impact-very-high-DiOgG_Ji.js → impact-very-high-C1K1nCE9.js} +0 -0
- /package/dist/{impact-very-low-CYW4RgJO.js → impact-very-low-CXbiBK6E.js} +0 -0
- /package/dist/{info-NBFIJ3YI.js → info-Ca-64c_9.js} +0 -0
- /package/dist/{label-CTr8hHIv.js → label-D8X5FrVe.js} +0 -0
- /package/dist/{label-filled-CnTpOqvX.js → label-filled-DjSc-Fk4.js} +0 -0
- /package/dist/{language-UqPESR_Z.js → language-OE6ZfER_.js} +0 -0
- /package/dist/{latest-Cq12zjMs.js → latest-D0dlub5f.js} +0 -0
- /package/dist/{lightbulb-BpK9qU_u.js → lightbulb-DKJrsADi.js} +0 -0
- /package/dist/{list-DKcsNf15.js → list-BviTrZEl.js} +0 -0
- /package/dist/{list-search-BzZuYf_P.js → list-search-Ck6anukf.js} +0 -0
- /package/dist/{lock-BFfHVSog.js → lock-C5vUwbkA.js} +0 -0
- /package/dist/{mail-pagEqHtM.js → mail-CtA-d2d0.js} +0 -0
- /package/dist/{menu-j4cvnLP8.js → menu-DFzmvE6J.js} +0 -0
- /package/dist/{minus-CGsJ-jkT.js → minus-COmVHb9S.js} +0 -0
- /package/dist/{more-horizontal-CDZjG5h8.js → more-horizontal-DzHbd3yn.js} +0 -0
- /package/dist/{more-vertical-YUehtvol.js → more-vertical-CiJm6ZaV.js} +0 -0
- /package/dist/{move-CiU3PwqY.js → move-CUyDTrlz.js} +0 -0
- /package/dist/{move-up-down-H-qHtTwO.js → move-up-down-3AiMDXGu.js} +0 -0
- /package/dist/{navigation-DmqoQINO.js → navigation-BryXzz7G.js} +0 -0
- /package/dist/{note-BZ3q-D4L.js → note-CXIfkCb0.js} +0 -0
- /package/dist/{offline-CLl0pwpv.js → offline-BlqqTvjx.js} +0 -0
- /package/dist/{package-iJOVTpPH.js → package-BEkSqrZt.js} +0 -0
- /package/dist/{package-D_Bh8bgp.js → package-pKbuF39E.js} +0 -0
- /package/dist/{paper-plane-DcYms0cj.js → paper-plane-CwVjTgAB.js} +0 -0
- /package/dist/{pause-COAxeJRm.js → pause-D-nbILiS.js} +0 -0
- /package/dist/{pdf-BweFqxRM.js → pdf-C7o5LP5D.js} +0 -0
- /package/dist/{pen-CmBOMgX_.js → pen-5O6IZM5k.js} +0 -0
- /package/dist/{pen-check-BApB0Zi2.js → pen-check-GQoVyZ_V.js} +0 -0
- /package/dist/{people-D07vIou7.js → people-CFA1u84D.js} +0 -0
- /package/dist/{phone-B9TyVbBj.js → phone-BmL2p-7F.js} +0 -0
- /package/dist/{picture-D7kBYru_.js → picture-BBiWVmta.js} +0 -0
- /package/dist/{picture-DJRwU5Gl.js → picture-jf1PkZfY.js} +0 -0
- /package/dist/{pin-BlBzA8ov.js → pin-CTaBntUQ.js} +0 -0
- /package/dist/{planning-BhE-A4FO.js → planning-s3sRV6ix.js} +0 -0
- /package/dist/{plus-CmEv_iHA.js → plus-Dm-ZxxHJ.js} +0 -0
- /package/dist/{print-ChdLXKHj.js → print-B5fjHJZL.js} +0 -0
- /package/dist/{refresh-C7k19NtO.js → refresh-gU5ZZuG6.js} +0 -0
- /package/dist/{reset-CpXqaOj5.js → reset-CwU1iGF5.js} +0 -0
- /package/dist/{responsive-CKNXzAo1.js → responsive-BHNmDmM6.js} +0 -0
- /package/dist/{rubix-thema-Cmk-5-bm.js → rubix-thema-BZvVEFud.js} +0 -0
- /package/dist/{save-BX3-Z5qP.js → save-mTHDeUnL.js} +0 -0
- /package/dist/{saved-search-Be8D9tJ9.js → saved-search-DJO4_yPH.js} +0 -0
- /package/dist/{search-BeIwOzJl.js → search-B5yHBLf_.js} +0 -0
- /package/dist/{settings-CLChu_zl.js → settings-Hb_Y7Y53.js} +0 -0
- /package/dist/{share-j6ezShBH.js → share-OpdW8ZmZ.js} +0 -0
- /package/dist/{share-alternative-BD-WQYvk.js → share-alternative-C3pSVTYb.js} +0 -0
- /package/dist/{sidebar-CPe20Xae.js → sidebar-DtAUGBof.js} +0 -0
- /package/dist/{slack-BjvLF16S.js → slack-mCoCq7b9.js} +0 -0
- /package/dist/{slider-config-CTzwxojK.js → slider-config-yjKG-9r9.js} +0 -0
- /package/dist/{spellcheck-thqRUMx9.js → spellcheck-bP4DPCKJ.js} +0 -0
- /package/dist/src/assets/icons/{alert-fill.vue → alert-filled.vue} +0 -0
- /package/dist/src/assets/icons/{bell-fill.vue → bell-filled.vue} +0 -0
- /package/dist/src/assets/icons/{comment-fill.vue → comment-filled.vue} +0 -0
- /package/dist/src/assets/icons/{image focus point.vue → image-focus-point.vue} +0 -0
- /package/dist/src/assets/icons/{saved-search-fill.vue → saved-search-filled.vue} +0 -0
- /package/dist/src/assets/icons/{sidebar-fill.vue → sidebar-filled.vue} +0 -0
- /package/dist/src/assets/icons/{video overlay.vue → video-overlay.vue} +0 -0
- /package/dist/{standard-view-dE52BPUm.js → standard-view-CN0ixRE4.js} +0 -0
- /package/dist/{star-uv_o0S9H.js → star-BKWqck4u.js} +0 -0
- /package/dist/{star-filled-BqrpxMqq.js → star-filled-CdXMXBn7.js} +0 -0
- /package/dist/{stop-CrmQCpqp.js → stop-B8l9lmwT.js} +0 -0
- /package/dist/{story-BdUCZQmb.js → story-Cxy8EkgB.js} +0 -0
- /package/dist/{story-DEvV0oQv.js → story-DOxZDwJp.js} +0 -0
- /package/dist/{sync-CPmOdu5b.js → sync-BW_fAqt6.js} +0 -0
- /package/dist/{tasks-TKH8SUBe.js → tasks-DLNuebMi.js} +0 -0
- /package/dist/{text-7i2atLMM.js → text-Bsl2QZz3.js} +0 -0
- /package/dist/{text-BMhu0paW.js → text-CPSps-qh.js} +0 -0
- /package/dist/{thumbs-down-LH8SIeIF.js → thumbs-down-pSf_ND98.js} +0 -0
- /package/dist/{thumbs-up-WZQzpqKr.js → thumbs-up-Braz70N6.js} +0 -0
- /package/dist/{thumbs-up-double-SeGWEXZ_.js → thumbs-up-double-C6foUkOq.js} +0 -0
- /package/dist/{topic-63EhQ_l1.js → topic-BamlhBNV.js} +0 -0
- /package/dist/{union-DKjbjP-9.js → union-CYw04THu.js} +0 -0
- /package/dist/{upload-yjh9wxAA.js → upload-BL_iLqTa.js} +0 -0
- /package/dist/{user-need-divert-me-B_cSVEIY.js → user-need-divert-me-2RaqdMMH.js} +0 -0
- /package/dist/{user-need-educate-me-DOgCmShA.js → user-need-educate-me-CRi42bIc.js} +0 -0
- /package/dist/{user-need-give-me-perspective-2wacZI2F.js → user-need-give-me-perspective-BIF7v9vF.js} +0 -0
- /package/dist/{user-need-help-me-D4VE0IcH.js → user-need-help-me-O0XSLzP-.js} +0 -0
- /package/dist/{user-need-touch-me-u3n8c5IH.js → user-need-touch-me-BueJ3SSh.js} +0 -0
- /package/dist/{user-need-update-me-BcDyXzME.js → user-need-update-me-DP574fsn.js} +0 -0
- /package/dist/{video-BViz7WnQ.js → video-CWHoNlON.js} +0 -0
- /package/dist/{video-hhs4-tLq.js → video-DhS7zpNF.js} +0 -0
- /package/dist/{view-C9Xks5Gy.js → view-Bc5W8beK.js} +0 -0
- /package/dist/{view-off-BuSbQwX0.js → view-off-DquC2i3E.js} +0 -0
- /package/dist/{volume-up-BLQXZI5X.js → volume-up-DEzoW7Bq.js} +0 -0
- /package/src/assets/icons/{alert-fill.vue → alert-filled.vue} +0 -0
- /package/src/assets/icons/{bell-fill.vue → bell-filled.vue} +0 -0
- /package/src/assets/icons/{comment-fill.vue → comment-filled.vue} +0 -0
- /package/src/assets/icons/{image focus point.vue → image-focus-point.vue} +0 -0
- /package/src/assets/icons/{saved-search-fill.vue → saved-search-filled.vue} +0 -0
- /package/src/assets/icons/{sidebar-fill.vue → sidebar-filled.vue} +0 -0
- /package/src/assets/icons/{video overlay.vue → video-overlay.vue} +0 -0
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div
|
|
3
|
-
:class="cn('relative', $attrs.class as string)"
|
|
4
|
-
:data-testid="$attrs['data-testid']"
|
|
5
|
-
>
|
|
2
|
+
<div :class="cn('relative', $attrs.class)">
|
|
6
3
|
<UiLabel
|
|
7
4
|
v-if="$slots.default || label"
|
|
8
|
-
:for="
|
|
5
|
+
:for="uniqueId"
|
|
9
6
|
:class="
|
|
10
7
|
cn(
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
`pointer-events-none absolute left-3 z-1 origin-left translate-y-4 px-1 text-neutral-muted transition-all duration-150 select-none [&:has(+:is(input,textarea):where(:enabled:hover))]:text-neutral-subtle [&:has(+:is(input,textarea):where(:focus))]:text-primary [&:has(+:is(input,textarea):where(:read-only:enabled:hover))]:text-neutral-subtle [&:has(+:is(input,textarea):where(:read-only:focus))]:text-neutral-subtle [&:has(+:is(input,textarea):where([aria-invalid='true']))]:text-error [&:has(+:is(input,textarea):where([aria-invalid='true']:enabled:hover))]:text-error-hover [&:has(+:is(input,textarea):where([aria-invalid='true']:focus))]:text-error-hover [&:has(+[data-is-label-raised])]:-translate-y-1/2 [&:has(+[data-is-label-raised])]:bg-neutral [&:has(+[data-is-label-raised])]:text-xs`,
|
|
9
|
+
{
|
|
10
|
+
'[&:has(+:is(input,textarea):where(:focus))]:text-neutral-subtle':
|
|
11
|
+
inputStatus === 'info',
|
|
12
|
+
'text-orange-default [&:has(+:is(input,textarea):where(:enabled:hover))]:text-orange-dark [&:has(+:is(input,textarea):where(:focus))]:text-orange-dark':
|
|
13
|
+
inputStatus === 'warning',
|
|
14
|
+
},
|
|
14
15
|
)
|
|
15
16
|
"
|
|
16
17
|
>
|
|
@@ -21,330 +22,130 @@
|
|
|
21
22
|
|
|
22
23
|
<textarea
|
|
23
24
|
v-if="isTextarea"
|
|
24
|
-
:id="
|
|
25
|
-
ref="inputRef"
|
|
25
|
+
:id="uniqueId"
|
|
26
26
|
v-model="model"
|
|
27
|
-
:aria-invalid="
|
|
28
|
-
:aria-errormessage="
|
|
29
|
-
|
|
30
|
-
:readonly="readonly"
|
|
31
|
-
:disabled="disabled"
|
|
32
|
-
class="peer block h-24 w-full rounded-t-sm p-4 text-sm text-gray-900 outline-hidden transition duration-150 placeholder:text-gray-400 disabled:bg-gray-100 disabled:opacity-70"
|
|
33
|
-
:class="
|
|
34
|
-
cn(
|
|
35
|
-
componentClass,
|
|
36
|
-
disabled ? 'cursor-not-allowed' : '',
|
|
37
|
-
readonly && isUiAutocomplete ? 'cursor-pointer' : '',
|
|
38
|
-
)
|
|
27
|
+
:aria-invalid="inputStatus === 'error'"
|
|
28
|
+
:aria-errormessage="
|
|
29
|
+
inputStatus === 'error' ? `${uniqueId}-extra` : undefined
|
|
39
30
|
"
|
|
40
|
-
:
|
|
41
|
-
|
|
31
|
+
:aria-label="label"
|
|
32
|
+
class="h-24"
|
|
33
|
+
:class="componentClass"
|
|
42
34
|
data-testid="input-value"
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
35
|
+
v-bind="{ ...$attrs, class: null }"
|
|
36
|
+
:data-is-label-raised="
|
|
37
|
+
$attrs.placeholder || isFocused || model ? '' : undefined
|
|
38
|
+
"
|
|
39
|
+
@focus="isFocused = true"
|
|
40
|
+
@blur="isFocused = false"
|
|
47
41
|
/>
|
|
48
42
|
<input
|
|
49
43
|
v-else
|
|
50
|
-
:id="
|
|
51
|
-
ref="inputRef"
|
|
44
|
+
:id="uniqueId"
|
|
52
45
|
v-model="model"
|
|
53
|
-
:aria-invalid="
|
|
54
|
-
:aria-errormessage="
|
|
55
|
-
|
|
56
|
-
:readonly="readonly"
|
|
57
|
-
:disabled="disabled"
|
|
58
|
-
class="peer block h-14 w-full rounded-t-sm p-4 text-sm text-gray-900 outline-hidden transition duration-150 placeholder:text-gray-400 disabled:bg-gray-50 disabled:opacity-70"
|
|
59
|
-
:class="
|
|
60
|
-
cn(
|
|
61
|
-
componentClass,
|
|
62
|
-
disabled ? 'cursor-not-allowed' : '',
|
|
63
|
-
type === 'time' ? 'disabledTime' : '',
|
|
64
|
-
readonly && isUiAutocomplete ? 'cursor-pointer' : '',
|
|
65
|
-
)
|
|
46
|
+
:aria-invalid="inputStatus === 'error'"
|
|
47
|
+
:aria-errormessage="
|
|
48
|
+
inputStatus === 'error' ? `${uniqueId}-extra` : undefined
|
|
66
49
|
"
|
|
50
|
+
:aria-label="label"
|
|
51
|
+
class="h-14"
|
|
52
|
+
:class="componentClass"
|
|
67
53
|
:type="type"
|
|
68
|
-
|
|
69
|
-
:is-date-time-picker="isDateTimePicker"
|
|
70
|
-
:placeholder="placeholder"
|
|
71
|
-
v-bind="{ ...$attrs, class: null, 'data-testid': null }"
|
|
54
|
+
autocomplete="on"
|
|
72
55
|
data-testid="input-value"
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
56
|
+
v-bind="{ ...$attrs, class: null }"
|
|
57
|
+
:data-is-label-raised="
|
|
58
|
+
$attrs.placeholder || isFocused || model ? '' : undefined
|
|
59
|
+
"
|
|
60
|
+
@focus="isFocused = true"
|
|
61
|
+
@blur="isFocused = false"
|
|
77
62
|
/>
|
|
78
63
|
|
|
79
64
|
<div
|
|
80
|
-
v-if="
|
|
81
|
-
|
|
82
|
-
status === 'error' ||
|
|
83
|
-
status === 'warning' ||
|
|
84
|
-
status === 'info'
|
|
85
|
-
"
|
|
86
|
-
:id="addonTextId"
|
|
65
|
+
v-if="$slots.extra && inputStatus !== undefined"
|
|
66
|
+
:id="`${uniqueId}-extra`"
|
|
87
67
|
:class="
|
|
88
68
|
cn(
|
|
89
|
-
'rounded-b-sm px-4 py-1 text-xs/normal font-medium transition-all duration-150 ease-in-out peer-disabled:opacity-70 peer-aria-invalid:bg-
|
|
90
|
-
|
|
69
|
+
'rounded-b-sm px-4 py-1 text-xs/normal font-medium transition-all duration-150 ease-in-out peer-disabled:opacity-70 peer-aria-invalid:bg-error peer-aria-invalid:text-neutral peer-enabled:peer-aria-invalid:peer-hover:bg-error-hover peer-enabled:peer-aria-invalid:peer-focus:bg-error-hover',
|
|
70
|
+
{
|
|
71
|
+
'bg-neutral-faint text-neutral-primary': inputStatus === 'info',
|
|
72
|
+
'bg-orange-default text-neutral-primary peer-focus:bg-orange-dark peer-enabled:peer-hover:bg-orange-dark':
|
|
73
|
+
inputStatus === 'warning',
|
|
74
|
+
},
|
|
91
75
|
)
|
|
92
76
|
"
|
|
93
77
|
>
|
|
94
|
-
<slot
|
|
95
|
-
|
|
96
|
-
<template v-else>
|
|
97
|
-
{{ addonText }}
|
|
98
|
-
</template>
|
|
78
|
+
<slot name="extra" />
|
|
99
79
|
</div>
|
|
100
80
|
|
|
101
81
|
<slot name="buttons" />
|
|
102
|
-
<svg
|
|
103
|
-
v-if="chevron"
|
|
104
|
-
class="pointer-events-none absolute top-4 right-4 size-6 fill-current text-gray-900"
|
|
105
|
-
viewBox="0 0 16 16"
|
|
106
|
-
fill="none"
|
|
107
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
108
|
-
>
|
|
109
|
-
<path
|
|
110
|
-
d="M8 10.3333C7.82934 10.3333 7.65867 10.268 7.52867 10.138L4.862 7.4713C4.60134 7.21063 4.60134 6.7893 4.862 6.52863C5.12267 6.26796 5.544 6.26796 5.80467 6.52863L8.008 8.73196L10.2033 6.61196C10.4693 6.35663 10.89 6.36396 11.146 6.62863C11.402 6.8933 11.3947 7.31596 11.13 7.5713L8.46334 10.146C8.33334 10.2713 8.16667 10.3333 8 10.3333Z"
|
|
111
|
-
/>
|
|
112
|
-
</svg>
|
|
113
82
|
</div>
|
|
114
83
|
</template>
|
|
115
84
|
|
|
116
85
|
<script setup lang="ts">
|
|
117
|
-
import {
|
|
118
|
-
import { computed, onBeforeUpdate, onMounted, ref } from "vue";
|
|
86
|
+
import { computed, ref, useId } from "vue";
|
|
119
87
|
|
|
120
88
|
import { cn } from "../../utils/cn.ts";
|
|
121
89
|
import UiLabel from "../UiLabel/UiLabel.vue";
|
|
122
90
|
|
|
123
|
-
type UiInputStatus = "default" | "info" | "readonly" | "warning" | "error";
|
|
124
|
-
|
|
125
91
|
defineOptions({
|
|
126
92
|
inheritAttrs: false,
|
|
127
93
|
});
|
|
128
94
|
|
|
129
|
-
|
|
130
|
-
buttons?: () => any;
|
|
95
|
+
defineSlots<{
|
|
131
96
|
/**
|
|
132
97
|
* Label content.
|
|
133
98
|
*/
|
|
134
99
|
default?: () => any;
|
|
135
100
|
/**
|
|
136
|
-
*
|
|
101
|
+
* Extra content.
|
|
137
102
|
*/
|
|
138
|
-
|
|
103
|
+
extra?: () => any;
|
|
104
|
+
buttons?: () => any;
|
|
139
105
|
}>();
|
|
140
106
|
|
|
141
|
-
const
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
107
|
+
const {
|
|
108
|
+
id = undefined,
|
|
109
|
+
type = "text",
|
|
110
|
+
label = undefined,
|
|
111
|
+
isTextarea = false,
|
|
112
|
+
inputStatus = undefined,
|
|
113
|
+
} = defineProps<{
|
|
114
|
+
id?: string;
|
|
115
|
+
type?:
|
|
116
|
+
| "date"
|
|
117
|
+
| "datetime-local"
|
|
118
|
+
| "email"
|
|
119
|
+
| "number"
|
|
120
|
+
| "password"
|
|
121
|
+
| "search"
|
|
122
|
+
| "tel"
|
|
123
|
+
| "text"
|
|
124
|
+
| "time"
|
|
125
|
+
| "url"
|
|
126
|
+
// Allows arbitrary strings while still offering autocompletion on the explicitly listed strings.
|
|
127
|
+
| (string & {});
|
|
128
|
+
label?: string;
|
|
129
|
+
isTextarea?: boolean;
|
|
130
|
+
inputStatus?: "info" | "warning" | "error";
|
|
146
131
|
}>();
|
|
147
132
|
|
|
148
|
-
const props = withDefaults(
|
|
149
|
-
defineProps<{
|
|
150
|
-
id?: string;
|
|
151
|
-
type?:
|
|
152
|
-
| "date"
|
|
153
|
-
| "datetime-local"
|
|
154
|
-
| "email"
|
|
155
|
-
| "number"
|
|
156
|
-
| "password"
|
|
157
|
-
| "search"
|
|
158
|
-
| "tel"
|
|
159
|
-
| "text"
|
|
160
|
-
| "time"
|
|
161
|
-
| "url"
|
|
162
|
-
// Allows arbitrary strings while still offering autocompletion on the explicitly listed strings.
|
|
163
|
-
| (string & {});
|
|
164
|
-
label?: string;
|
|
165
|
-
placeholder?: string;
|
|
166
|
-
autofocus?: boolean;
|
|
167
|
-
chevron?: boolean;
|
|
168
|
-
readonly?: boolean;
|
|
169
|
-
disabled?: boolean;
|
|
170
|
-
isDateTimePicker?: boolean;
|
|
171
|
-
autocomplete?: string;
|
|
172
|
-
/**
|
|
173
|
-
* Use the `errors` slot for better flexibility instead.
|
|
174
|
-
*/
|
|
175
|
-
errorMessage?: string;
|
|
176
|
-
warningMessage?: string;
|
|
177
|
-
isTextarea?: boolean;
|
|
178
|
-
infoText?: string;
|
|
179
|
-
inputStatus?: UiInputStatus;
|
|
180
|
-
isUiAutocomplete?: boolean;
|
|
181
|
-
}>(),
|
|
182
|
-
{
|
|
183
|
-
id: undefined,
|
|
184
|
-
type: "text",
|
|
185
|
-
label: "",
|
|
186
|
-
placeholder: undefined,
|
|
187
|
-
autofocus: false,
|
|
188
|
-
chevron: false,
|
|
189
|
-
readonly: false,
|
|
190
|
-
disabled: false,
|
|
191
|
-
isDateTimePicker: false,
|
|
192
|
-
autocomplete: "on",
|
|
193
|
-
errorMessage: "",
|
|
194
|
-
warningMessage: "",
|
|
195
|
-
isTextarea: false,
|
|
196
|
-
infoText: "",
|
|
197
|
-
inputStatus: "default",
|
|
198
|
-
isUiAutocomplete: false,
|
|
199
|
-
},
|
|
200
|
-
);
|
|
201
|
-
|
|
202
133
|
const model = defineModel<string>();
|
|
203
134
|
|
|
204
|
-
const inputRef = ref<HTMLInputElement>();
|
|
205
|
-
const hasErrorsSlot = ref(false);
|
|
206
135
|
const isFocused = ref(false);
|
|
207
136
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
137
|
+
const defaultId = useId();
|
|
138
|
+
const uniqueId = computed(() => id ?? `id-${defaultId}`);
|
|
139
|
+
|
|
140
|
+
const componentClass = computed(() =>
|
|
141
|
+
cn(
|
|
142
|
+
"peer block w-full rounded-sm border border-neutral-faint p-4 text-sm text-neutral-primary outline-hidden transition duration-150 placeholder:text-neutral-soft read-only:border-neutral-faint focus:border-2 focus:border-primary focus:p-inputFocused not-read-only:enabled:cursor-pointer enabled:hover:border-neutral-subtle enabled:hover:focus:border-primary disabled:bg-neutral-whisper disabled:opacity-70 aria-invalid:rounded-b-none aria-invalid:border-2 aria-invalid:border-error aria-invalid:focus:border-error-hover aria-invalid:enabled:hover:border-error-hover",
|
|
143
|
+
{
|
|
144
|
+
"rounded-b-none focus:border-neutral-subtle enabled:hover:border-neutral-subtle":
|
|
145
|
+
inputStatus === "info",
|
|
146
|
+
"rounded-b-none border-2 border-orange-default focus:border-orange-dark enabled:hover:border-orange-dark":
|
|
147
|
+
inputStatus === "warning",
|
|
148
|
+
},
|
|
149
|
+
),
|
|
218
150
|
);
|
|
219
|
-
|
|
220
|
-
const addonText = computed((): string => {
|
|
221
|
-
if (status.value === "error") {
|
|
222
|
-
return props.errorMessage;
|
|
223
|
-
}
|
|
224
|
-
if (status.value === "warning") {
|
|
225
|
-
return props.warningMessage;
|
|
226
|
-
}
|
|
227
|
-
if (status.value === "info") {
|
|
228
|
-
return props.infoText;
|
|
229
|
-
}
|
|
230
|
-
return "";
|
|
231
|
-
});
|
|
232
|
-
|
|
233
|
-
const labelColorClass = computed(() => {
|
|
234
|
-
return {
|
|
235
|
-
default: `
|
|
236
|
-
text-gray-500
|
|
237
|
-
[*:has(+:is(input,textarea):where(:enabled:hover))]:text-gray-700
|
|
238
|
-
[*:has(+:is(input,textarea):where(:focus))]:text-blue-default
|
|
239
|
-
`,
|
|
240
|
-
info: `
|
|
241
|
-
text-gray-500
|
|
242
|
-
[*:has(+:is(input,textarea):where(:enabled:hover))]:text-gray-700
|
|
243
|
-
[*:has(+:is(input,textarea):where(:focus))]:text-gray-700
|
|
244
|
-
`,
|
|
245
|
-
readonly: `
|
|
246
|
-
text-gray-500
|
|
247
|
-
[*:has(+:is(input,textarea):where(:enabled:hover))]:text-gray-700
|
|
248
|
-
[*:has(+:is(input,textarea):where(:focus))]:text-gray-700
|
|
249
|
-
`,
|
|
250
|
-
warning: `
|
|
251
|
-
text-orange-default
|
|
252
|
-
[*:has(+:is(input,textarea):where(:enabled:hover))]:text-orange-dark
|
|
253
|
-
[*:has(+:is(input,textarea):where(:focus))]:text-orange-dark
|
|
254
|
-
`,
|
|
255
|
-
error: `
|
|
256
|
-
text-alert-red-default
|
|
257
|
-
[*:has(+:is(input,textarea):where(:enabled:hover))]:text-alert-red-dark
|
|
258
|
-
[*:has(+:is(input,textarea):where(:focus))]:text-alert-red-dark
|
|
259
|
-
`,
|
|
260
|
-
}[status.value];
|
|
261
|
-
});
|
|
262
|
-
|
|
263
|
-
const addonClass = computed(() => {
|
|
264
|
-
return {
|
|
265
|
-
default: ``,
|
|
266
|
-
readonly: ``,
|
|
267
|
-
error: ``,
|
|
268
|
-
warning: `
|
|
269
|
-
bg-orange-default
|
|
270
|
-
text-gray-900
|
|
271
|
-
peer-focus:bg-orange-dark
|
|
272
|
-
peer-enabled:peer-hover:bg-orange-dark
|
|
273
|
-
`,
|
|
274
|
-
info: `
|
|
275
|
-
bg-gray-300
|
|
276
|
-
text-gray-900
|
|
277
|
-
`,
|
|
278
|
-
}[status.value];
|
|
279
|
-
});
|
|
280
|
-
|
|
281
|
-
const componentClass = computed(() => {
|
|
282
|
-
return {
|
|
283
|
-
default: `
|
|
284
|
-
rounded-b-sm
|
|
285
|
-
border
|
|
286
|
-
border-gray-300
|
|
287
|
-
focus:border-2
|
|
288
|
-
focus:p-inputFocused
|
|
289
|
-
enabled:hover:border-gray-700
|
|
290
|
-
enabled:focus:border-blue-default
|
|
291
|
-
`,
|
|
292
|
-
readonly: `
|
|
293
|
-
rounded-b-sm
|
|
294
|
-
border
|
|
295
|
-
border-gray-300
|
|
296
|
-
`,
|
|
297
|
-
error: `
|
|
298
|
-
border-2
|
|
299
|
-
border-alert-red-default
|
|
300
|
-
enabled:focus:border-alert-red-dark
|
|
301
|
-
enabled:hover:border-alert-red-dark
|
|
302
|
-
`,
|
|
303
|
-
warning: `
|
|
304
|
-
border-2
|
|
305
|
-
border-orange-default
|
|
306
|
-
enabled:focus:border-orange-dark
|
|
307
|
-
enabled:hover:border-orange-dark
|
|
308
|
-
`,
|
|
309
|
-
info: `
|
|
310
|
-
border
|
|
311
|
-
border-gray-300
|
|
312
|
-
enabled:focus:border-gray-700
|
|
313
|
-
enabled:hover:border-gray-700
|
|
314
|
-
`,
|
|
315
|
-
}[status.value];
|
|
316
|
-
});
|
|
317
|
-
|
|
318
|
-
const isLabelRaised = computed((): boolean => {
|
|
319
|
-
return !!props.placeholder || isFocused.value || !!model.value;
|
|
320
|
-
});
|
|
321
|
-
|
|
322
|
-
onMounted(() => {
|
|
323
|
-
if (props.autofocus) {
|
|
324
|
-
inputRef.value?.focus();
|
|
325
|
-
}
|
|
326
|
-
});
|
|
327
|
-
|
|
328
|
-
const updateValue = (event: Event): void => {
|
|
329
|
-
const input = event.target as HTMLInputElement | HTMLTextAreaElement;
|
|
330
|
-
emit("input", input.value);
|
|
331
|
-
};
|
|
332
|
-
|
|
333
|
-
const handleFocus = (event: FocusEvent): void => {
|
|
334
|
-
isFocused.value = true;
|
|
335
|
-
emit("focus", event);
|
|
336
|
-
};
|
|
337
|
-
|
|
338
|
-
const handleBlur = (event: FocusEvent): void => {
|
|
339
|
-
isFocused.value = false;
|
|
340
|
-
emit("blur", event);
|
|
341
|
-
};
|
|
342
|
-
|
|
343
|
-
const handleKeyUp = (event: KeyboardEvent): void => {
|
|
344
|
-
emit("keyup", event);
|
|
345
|
-
};
|
|
346
|
-
|
|
347
|
-
defineExpose({
|
|
348
|
-
inputRef,
|
|
349
|
-
});
|
|
350
151
|
</script>
|
|
@@ -22,12 +22,3 @@ Wraps the native `label` element. Currently only used to provide some default st
|
|
|
22
22
|
<UiInput name="name" required />
|
|
23
23
|
</UiLabel>
|
|
24
24
|
```
|
|
25
|
-
|
|
26
|
-
**Associate with checkbox**:
|
|
27
|
-
|
|
28
|
-
```vue
|
|
29
|
-
<UiLabel class="flex">
|
|
30
|
-
<UiCheckbox name="terms" required />
|
|
31
|
-
I have read and accept the terms and conditions
|
|
32
|
-
</UiLabel>
|
|
33
|
-
```
|
|
@@ -5,3 +5,25 @@
|
|
|
5
5
|
<slot />
|
|
6
6
|
</ul>
|
|
7
7
|
</template>
|
|
8
|
+
|
|
9
|
+
<script lang="ts">
|
|
10
|
+
import { onMounted } from "vue";
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated
|
|
14
|
+
* Please replace with your own component
|
|
15
|
+
*/
|
|
16
|
+
export default {
|
|
17
|
+
name: "UiList",
|
|
18
|
+
setup() {
|
|
19
|
+
onMounted(() => {
|
|
20
|
+
if (window.location.origin.includes("local")) {
|
|
21
|
+
// eslint-disable-next-line no-console
|
|
22
|
+
console.warn(
|
|
23
|
+
"Component is deprecated. It will be removed in a future update.",
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
</script>
|
|
@@ -1,110 +1,90 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<li
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
:class="
|
|
4
|
+
cn(
|
|
5
|
+
'flex cursor-pointer list-none items-center gap-2 px-4 py-2 text-sm/normal text-neutral-emphasis select-none hover:text-primary focus:outline-hidden focus-visible:focus-outline focus-visible:-outline-offset-2',
|
|
6
|
+
{
|
|
7
|
+
'cursor-default text-neutral-medium': disabled,
|
|
8
|
+
'is-selected': selected,
|
|
9
|
+
'py-3': checkboxSize === 'md',
|
|
10
|
+
},
|
|
11
|
+
overrideClasses,
|
|
12
|
+
$attrs.class,
|
|
13
|
+
)
|
|
14
|
+
"
|
|
7
15
|
tabindex="0"
|
|
8
|
-
|
|
9
|
-
@click.prevent.stop="handleClick"
|
|
16
|
+
@click.prevent.stop="$emit('list-item-click', value, true)"
|
|
10
17
|
>
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
"
|
|
18
|
+
<UiCheckbox
|
|
19
|
+
v-if="checkBoxMenu"
|
|
20
|
+
:appearance="checkboxAppearance"
|
|
21
|
+
:model-value="isChecked"
|
|
22
|
+
:disabled="disabled"
|
|
23
|
+
:size="checkboxSize"
|
|
24
|
+
@click.stop="$emit('list-item-click', value, false)"
|
|
19
25
|
>
|
|
20
|
-
<span class="
|
|
21
|
-
|
|
22
|
-
<UiCheckbox
|
|
23
|
-
:color="checkBoxColor"
|
|
24
|
-
:checked="isChecked"
|
|
25
|
-
:disabled="disabled"
|
|
26
|
-
:size="checkboxSize"
|
|
27
|
-
/>
|
|
28
|
-
</span>
|
|
29
|
-
<UiIcon
|
|
30
|
-
v-if="iconName"
|
|
31
|
-
:name="iconName"
|
|
32
|
-
size-classes="mr-2 h-4 w-4"
|
|
33
|
-
></UiIcon>
|
|
34
|
-
<img
|
|
35
|
-
v-if="imageSrc"
|
|
36
|
-
class="mr-2 w-4"
|
|
37
|
-
:class="{
|
|
38
|
-
'aspect-square': imageShape === 'square',
|
|
39
|
-
'aspect-square rounded-full object-center':
|
|
40
|
-
imageShape === 'rounded',
|
|
41
|
-
}"
|
|
42
|
-
:src="imageSrc"
|
|
43
|
-
:alt="value"
|
|
44
|
-
/>
|
|
45
|
-
<slot />
|
|
46
|
-
</span>
|
|
26
|
+
<span class="sr-only"><slot /></span>
|
|
27
|
+
</UiCheckbox>
|
|
47
28
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
29
|
+
<UiIcon v-if="iconName" :name="iconName" size="sm" />
|
|
30
|
+
|
|
31
|
+
<img
|
|
32
|
+
v-if="imageSrc"
|
|
33
|
+
class="size-4"
|
|
34
|
+
:class="{
|
|
35
|
+
'rounded-full object-center': imageShape === 'rounded',
|
|
36
|
+
}"
|
|
37
|
+
:src="imageSrc"
|
|
38
|
+
alt=""
|
|
39
|
+
/>
|
|
40
|
+
|
|
41
|
+
<slot />
|
|
42
|
+
|
|
43
|
+
<UiIcon
|
|
44
|
+
v-if="selected && selectable"
|
|
45
|
+
class="ml-auto"
|
|
46
|
+
name="checkmark"
|
|
47
|
+
:size="iconSize"
|
|
48
|
+
/>
|
|
52
49
|
</li>
|
|
53
50
|
</template>
|
|
54
51
|
|
|
55
52
|
<script setup lang="ts">
|
|
56
|
-
import { computed } from "vue";
|
|
57
|
-
|
|
58
53
|
import { cn } from "../../utils/cn.ts";
|
|
59
54
|
import UiCheckbox from "../UiCheckbox/UiCheckbox.vue";
|
|
60
55
|
import UiIcon, { type UiIconName } from "../UiIcon/UiIcon.vue";
|
|
61
56
|
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
checkboxSize: "medium",
|
|
91
|
-
disabled: false,
|
|
92
|
-
},
|
|
93
|
-
);
|
|
94
|
-
|
|
95
|
-
const emit = defineEmits<{
|
|
96
|
-
"list-item-click": [string];
|
|
57
|
+
const {
|
|
58
|
+
value = "",
|
|
59
|
+
checkBoxMenu = false,
|
|
60
|
+
selected = false,
|
|
61
|
+
selectable = false,
|
|
62
|
+
overrideClasses = undefined,
|
|
63
|
+
iconName = undefined,
|
|
64
|
+
iconSize = "md",
|
|
65
|
+
imageSrc = undefined,
|
|
66
|
+
imageShape = "rounded",
|
|
67
|
+
checkboxAppearance = "primary",
|
|
68
|
+
checkboxSize = "md",
|
|
69
|
+
isChecked = false,
|
|
70
|
+
disabled = false,
|
|
71
|
+
} = defineProps<{
|
|
72
|
+
value?: string;
|
|
73
|
+
checkBoxMenu?: boolean;
|
|
74
|
+
selected?: boolean;
|
|
75
|
+
selectable?: boolean;
|
|
76
|
+
overrideClasses?: string;
|
|
77
|
+
iconName?: UiIconName;
|
|
78
|
+
imageSrc?: string;
|
|
79
|
+
imageShape?: "rounded" | "square";
|
|
80
|
+
iconSize?: "sm" | "md" | "lg";
|
|
81
|
+
checkboxAppearance?: "primary" | "secondary";
|
|
82
|
+
checkboxSize?: "sm" | "md";
|
|
83
|
+
isChecked?: boolean;
|
|
84
|
+
disabled?: boolean;
|
|
97
85
|
}>();
|
|
98
|
-
const itemClasses = computed(() => {
|
|
99
|
-
return [
|
|
100
|
-
props.selected ? "is-selected" : "",
|
|
101
|
-
props.disabled ? "text-gray-600" : "text-gray-800",
|
|
102
|
-
props.selectable ? "pr-9" : "pr-4",
|
|
103
|
-
props.checkboxSize === "medium" ? "py-3 px-4" : "px-4 py-2",
|
|
104
|
-
];
|
|
105
|
-
});
|
|
106
86
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
};
|
|
87
|
+
defineEmits<{
|
|
88
|
+
"list-item-click": [value: string, shouldCloseMenu: boolean];
|
|
89
|
+
}>();
|
|
110
90
|
</script>
|