@dpa-id-components/dpa-shared-components 22.0.0-next.1 → 22.0.0-next.11
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/{activities-BxyZQp7R.js → activities-CNONG76g.js} +2 -2
- package/dist/{ai-CvQQ6hUw.js → ai-BORdA1tP.js} +2 -2
- package/dist/{alert-BeP6nqRf.js → alert-CEh7TpHk.js} +2 -2
- package/dist/{alert-filled-COSmQYAa.js → alert-filled-GUQ1sv5T.js} +2 -2
- package/dist/{alert-CdAp0ksh.js → alert-k4dRvZkA.js} +2 -2
- package/dist/{alert-octagon-Cd-_T4ON.js → alert-octagon-D6ymVrlL.js} +2 -2
- package/dist/{apps-CtY6nO4d.js → apps-31DLZEqJ.js} +2 -2
- package/dist/{archive-DmV6cQ50.js → archive-DxH0AmUn.js} +2 -2
- package/dist/{arrow-down-Cfib5c-0.js → arrow-down-B9xmpEKh.js} +2 -2
- package/dist/{arrow-left-CFSY8V--.js → arrow-left-w89ZP810.js} +2 -2
- package/dist/{arrow-nav-left-BRYPr4oj.js → arrow-nav-left-CsT11yHm.js} +2 -2
- package/dist/{arrow-nav-right-PqR7W08e.js → arrow-nav-right-CauLQRaf.js} +2 -2
- package/dist/{arrow-right-ByFSLzJb.js → arrow-right-Dj7Me-mB.js} +2 -2
- package/dist/{arrow-up-DfhQKYKi.js → arrow-up-C7yQWUg5.js} +2 -2
- package/dist/{arrowhead-left-BxBCmhZy.js → arrowhead-left-D3prb6lT.js} +2 -2
- package/dist/{arrowhead-right-D6Hk6b6x.js → arrowhead-right-DYkeDm5p.js} +2 -2
- package/dist/{arrowhead-top-wkcSxZmc.js → arrowhead-top-D6Yiw4OG.js} +2 -2
- package/dist/assets/icons/lock-filled.vue.d.ts +3 -0
- package/dist/assets/icons/play-filled.vue.d.ts +3 -0
- package/dist/{atmo-CqanVC-e.js → atmo-BYdaOrhT.js} +2 -2
- package/dist/{audio-DS8plcCU.js → audio-BLhGEnZc.js} +2 -2
- package/dist/{audio-Cgg6MUeM.js → audio-CaUo0DpR.js} +2 -2
- package/dist/{bag-B28jMR7E.js → bag-DfUnEdIG.js} +2 -2
- package/dist/{bell-k_sZgnpL.js → bell-BUoHDgUa.js} +2 -2
- package/dist/{bell-filled-7gfK8601.js → bell-filled-9k1Rm3vh.js} +2 -2
- package/dist/{book-CqUJ_JRz.js → book-DJ-BeeEm.js} +2 -2
- package/dist/{bookmark-D65iW--h.js → bookmark-C6STJXUN.js} +2 -2
- package/dist/{bookmark-filled-5lCW1BfF.js → bookmark-filled-CxwMfIfF.js} +2 -2
- package/dist/{box-BCDNtaq7.js → box-DFDPFTQ7.js} +2 -2
- package/dist/{bulb-12wSYpgA.js → bulb-qwe4TWu7.js} +2 -2
- package/dist/{call-CW04DyHi.js → call-CfOzRaYz.js} +2 -2
- package/dist/{camera-CbeyxVU5.js → camera-BCW_KVfC.js} +2 -2
- package/dist/{check-BpPjjXqx.js → check-CiZxunah.js} +2 -2
- package/dist/{checklist-CFCfO7IN.js → checklist-CKV_EHso.js} +2 -2
- package/dist/{checkmark-DhUksPvT.js → checkmark-BE0OoZGa.js} +2 -2
- package/dist/{checkmark-double-BNGXAUiT.js → checkmark-double-BJAvABOC.js} +2 -2
- package/dist/{chevron-down-BjZ6BFFp.js → chevron-down-B5PIbEio.js} +2 -2
- package/dist/{chevron-left-Z-D_OY2t.js → chevron-left-BPryaWHJ.js} +2 -2
- package/dist/{chevron-right-D1GfZQB6.js → chevron-right-CB2iqaCO.js} +2 -2
- package/dist/{chevron-up-DWZ1F8w0.js → chevron-up-NvAEC--2.js} +2 -2
- package/dist/{clipboard-CNCIToKK.js → clipboard-BsskWPLx.js} +2 -2
- package/dist/{clock-CqWSNhFX.js → clock-D3iR841r.js} +2 -2
- package/dist/{close-oHIGT_JQ.js → close-BwgoeQAp.js} +2 -2
- package/dist/{cloud-save-CWTQ5IHS.js → cloud-save-C1k851Z_.js} +2 -2
- package/dist/{code-BD5nOHqK.js → code-CbwDeiVM.js} +2 -2
- package/dist/{collapse-D6QeCZC7.js → collapse-BIUDbTyr.js} +2 -2
- package/dist/{color-palette-BpONORjj.js → color-palette-DUY9An-f.js} +2 -2
- package/dist/{comment-D5RZxZWG.js → comment-DUUDjk_v.js} +2 -2
- package/dist/{comment-filled-Cl_qZ6Fz.js → comment-filled-rvm3HWly.js} +2 -2
- package/dist/components/UiBadge/UiBadge.vue.d.ts +1 -1
- package/dist/components/UiButton/UiButton.vue.d.ts +1 -1
- package/dist/components/UiCheckbox/UiCheckbox.vue.d.ts +35 -32
- package/dist/components/UiDialog/UiDialog.vue.d.ts +1 -0
- package/dist/components/UiIcon/icons.d.ts +2 -0
- package/dist/components/UiInput/UiInput.vue.d.ts +35 -32
- package/dist/components/UiListItem/UiListItem.vue.d.ts +2 -3
- package/dist/components/UiMenu/UiMenu.vue.d.ts +1 -3
- package/dist/components/UiPopover/UiPopover.vue.d.ts +5 -1
- package/dist/components/UiToggleButton/UiToggleButton.vue.d.ts +1 -1
- package/dist/{copy-BDnlScSS.js → copy-DIcAlkg5.js} +2 -2
- package/dist/{copy-link-BSfa58Tb.js → copy-link-Dy9otjUI.js} +2 -2
- package/dist/{delete-dDyi0gau.js → delete-BI38E8vg.js} +2 -2
- package/dist/{download-B-ZTsIBv.js → download-COkMFqqt.js} +2 -2
- package/dist/{dpa-id-DRnjTcHI.js → dpa-id-lBIeVHgX.js} +2 -2
- package/dist/dpa-shared-components.d.ts +1 -1
- package/dist/dpa-shared-components.js +4339 -4120
- package/dist/{edit-BbFkVyRd.js → edit-DFZucLKb.js} +2 -2
- package/dist/{edit-add-CAPOsjts.js → edit-add-Cx7x5gfl.js} +2 -2
- package/dist/{eil-CzEP-9Lo.js → eil-BjfC8db7.js} +2 -2
- package/dist/{emoji-BjLqvypC.js → emoji-CZAa65rh.js} +2 -2
- package/dist/{emoji-add-BB4fB4th.js → emoji-add-Bdw-xZuW.js} +2 -2
- package/dist/{envelope-DftzB5Ol.js → envelope-BL-sHuqE.js} +2 -2
- package/dist/eslint.base.config.js +1 -4
- package/dist/{event-FR1JMgj6.js → event-C6fYIB3A.js} +2 -2
- package/dist/{expand-DaVQ0gpz.js → expand-CbaTiURl.js} +2 -2
- package/dist/{external-link-2Es0qWwd.js → external-link-DKF31dpS.js} +2 -2
- package/dist/{file-AHJ00f5M.js → file-DWQzWW7U.js} +2 -2
- package/dist/{file-pdf-CJDdjKS0.js → file-pdf-C4WTAvL4.js} +2 -2
- package/dist/{filter-CXjBFUUg.js → filter-kGJtnOhb.js} +2 -2
- package/dist/{flag-CbX4PUMS.js → flag-L7yd4mwV.js} +2 -2
- package/dist/{flag-filled-VmJW-U0p.js → flag-filled-CTDa2efs.js} +2 -2
- package/dist/{flags-Buo1j-9g.js → flags-Dl7zJKmO.js} +2 -2
- package/dist/{flash-Dlr5gL01.js → flash-DZhODZa2.js} +2 -2
- package/dist/{folder-DQwCjGZC.js → folder-9Uwlobw5.js} +2 -2
- package/dist/{folder-add-zPr2Gmtj.js → folder-add-BTNpiyeV.js} +2 -2
- package/dist/{folder-filled-D6pmcH0e.js → folder-filled-VCsVbqgw.js} +2 -2
- package/dist/{gallery-DPl8qZQu.js → gallery-CaJoU7iC.js} +2 -2
- package/dist/{gallery-CfUbckcB.js → gallery-D-A6Lk4l.js} +2 -2
- package/dist/{graphic-BbhCuiiE.js → graphic-BHfsGi2Y.js} +2 -2
- package/dist/{graphic-nXH5ifxc.js → graphic-BtBeBP53.js} +2 -2
- package/dist/{graphics-Dp8pQzs-.js → graphics-BQsurkrS.js} +2 -2
- package/dist/{grid-1-DZUEMbtb.js → grid-1-CYbZv-UT.js} +2 -2
- package/dist/{grid-2-BQ-9yylY.js → grid-2-BTFSXvzD.js} +2 -2
- package/dist/{grid-3-BGhZrrCJ.js → grid-3-BjlnBMzz.js} +2 -2
- package/dist/{grid-4-DY9N435A.js → grid-4-BQUX0ES8.js} +2 -2
- package/dist/{grid-6-B0BR3wbB.js → grid-6-CBmGEiqx.js} +2 -2
- package/dist/{grid-9-BWhM7qat.js → grid-9-B4NrxHyA.js} +2 -2
- package/dist/{grid-masonry-9-DiiX1pQo.js → grid-masonry-9-5-pMpPJP.js} +2 -2
- package/dist/{grid-masonry-1e9tYkSK.js → grid-masonry-CQKadmp9.js} +2 -2
- package/dist/{help-CLfj4LQM.js → help-DRp9OUcp.js} +2 -2
- package/dist/{home-D6htLjOF.js → home-BXPuwKXk.js} +2 -2
- package/dist/{image-DnYnaoeu.js → image-BuaeqPub.js} +2 -2
- package/dist/{image-focus-point-BJ7HhehR.js → image-focus-point-TJFo_N1n.js} +2 -2
- package/dist/{impact-high-DuECIU0d.js → impact-high-DVgcn-Ae.js} +2 -2
- package/dist/{impact-low-DMtzvmWi.js → impact-low-CsvuPmk_.js} +2 -2
- package/dist/{impact-medium-B5-WfnV2.js → impact-medium-GY_OHSc1.js} +2 -2
- package/dist/{impact-very-high-C1K1nCE9.js → impact-very-high-B3en_oYR.js} +2 -2
- package/dist/{impact-very-low-CXbiBK6E.js → impact-very-low-Bb-zEAGB.js} +2 -2
- package/dist/{info-Ca-64c_9.js → info-CaNyekC4.js} +2 -2
- package/dist/{info-filled-PYbvwGmZ.js → info-filled-BMA19BzN.js} +2 -2
- package/dist/{label-D8X5FrVe.js → label-Bw1zj9W1.js} +2 -2
- package/dist/{label-filled-DjSc-Fk4.js → label-filled-DrguwEbm.js} +2 -2
- package/dist/{language-OE6ZfER_.js → language-rz5Z2ZmC.js} +2 -2
- package/dist/{latest-D0dlub5f.js → latest-ChE2cmSz.js} +2 -2
- package/dist/{lightbulb-DKJrsADi.js → lightbulb-DNR4PX3F.js} +2 -2
- package/dist/{list-BviTrZEl.js → list-Cz72rNRB.js} +2 -2
- package/dist/{list-search-Ck6anukf.js → list-search-BFpET5qV.js} +2 -2
- package/dist/{lock-C5vUwbkA.js → lock-DJTDJhgw.js} +2 -2
- package/dist/lock-filled-DRjvJBj3.js +18 -0
- package/dist/{mail-CtA-d2d0.js → mail-Bkf5whgc.js} +2 -2
- package/dist/{map-filled-Y8JaYK4Y.js → map-filled-DOurRYP3.js} +2 -2
- package/dist/{map-FF2zfEGP.js → map-xA3002JW.js} +2 -2
- package/dist/{menu-DFzmvE6J.js → menu-2v2TRGv7.js} +2 -2
- package/dist/{minus-COmVHb9S.js → minus-BHrEG9BZ.js} +2 -2
- package/dist/{more-horizontal-DzHbd3yn.js → more-horizontal-BiLFHNjR.js} +2 -2
- package/dist/{more-vertical-CiJm6ZaV.js → more-vertical-MHbB9_He.js} +2 -2
- package/dist/{move-CUyDTrlz.js → move-C2Mel2Fs.js} +2 -2
- package/dist/{move-up-down-3AiMDXGu.js → move-up-down-CX9AFsb5.js} +2 -2
- package/dist/{navigation-BryXzz7G.js → navigation-BxUEjd2D.js} +2 -2
- package/dist/{note-CXIfkCb0.js → note-JDaeQ7KP.js} +2 -2
- package/dist/{offline-BlqqTvjx.js → offline-DTVkLzxG.js} +2 -2
- package/dist/{package-BEkSqrZt.js → package-Cqki3iBp.js} +2 -2
- package/dist/{package-pKbuF39E.js → package-a6wVeuDo.js} +2 -2
- package/dist/{paper-plane-CwVjTgAB.js → paper-plane-DAhJxCyF.js} +2 -2
- package/dist/{pause-D-nbILiS.js → pause-D9YWbY88.js} +2 -2
- package/dist/{pdf-C7o5LP5D.js → pdf-DYHgIGl5.js} +2 -2
- package/dist/{pen-5O6IZM5k.js → pen-DpSe4QTA.js} +2 -2
- package/dist/{pen-check-GQoVyZ_V.js → pen-check-B6w-qyKk.js} +2 -2
- package/dist/{people-CFA1u84D.js → people-L-RBpthJ.js} +2 -2
- package/dist/{phone-BmL2p-7F.js → phone-D9f_M1qn.js} +2 -2
- package/dist/{picture-jf1PkZfY.js → picture-CN4X8eKB.js} +2 -2
- package/dist/{picture-BBiWVmta.js → picture-CmfKLBKL.js} +2 -2
- package/dist/{pin-CTaBntUQ.js → pin-BxwEBnT3.js} +2 -2
- package/dist/{planning-s3sRV6ix.js → planning-f_b-yvy0.js} +2 -2
- package/dist/play-B3HQvb0Y.js +18 -0
- package/dist/play-filled-D5vhGrVt.js +18 -0
- package/dist/{plus-Dm-ZxxHJ.js → plus-C8VUl4nl.js} +2 -2
- package/dist/{print-B5fjHJZL.js → print-l0oxfj0P.js} +2 -2
- package/dist/{refresh-gU5ZZuG6.js → refresh-NFCjjw_E.js} +2 -2
- package/dist/{reset-CwU1iGF5.js → reset-ejMu30sL.js} +2 -2
- package/dist/{responsive-BHNmDmM6.js → responsive-DxkuLBT-.js} +2 -2
- package/dist/{rubix-thema-BZvVEFud.js → rubix-thema-C_AFU2TJ.js} +2 -2
- package/dist/{save-mTHDeUnL.js → save-CXjuYnpN.js} +2 -2
- package/dist/{saved-search-DJO4_yPH.js → saved-search-CFvfKYcT.js} +2 -2
- package/dist/{saved-search-filled-CNz5iwu_.js → saved-search-filled-CzEFnSAz.js} +2 -2
- package/dist/{search-B5yHBLf_.js → search-DCYa9f-a.js} +2 -2
- package/dist/{settings-Hb_Y7Y53.js → settings-D744QSWD.js} +2 -2
- package/dist/{share-OpdW8ZmZ.js → share-D4fImRnp.js} +2 -2
- package/dist/{share-alternative-C3pSVTYb.js → share-alternative-jYDTaOhB.js} +2 -2
- package/dist/{sidebar-DtAUGBof.js → sidebar-CymSOARn.js} +2 -2
- package/dist/{sidebar-filled-BnnqCUYl.js → sidebar-filled-gWTXdyC3.js} +2 -2
- package/dist/{slack-mCoCq7b9.js → slack-CxvOlRRy.js} +2 -2
- package/dist/{slider-config-yjKG-9r9.js → slider-config-D65lpbtz.js} +2 -2
- package/dist/{spellcheck-bP4DPCKJ.js → spellcheck-CAd06Iwp.js} +2 -2
- package/dist/{spinner-CrCQ6H6L.js → spinner-C2v5HebP.js} +2 -2
- package/dist/src/assets/icons/lock-filled.vue +13 -0
- package/dist/src/assets/icons/play-filled.vue +13 -0
- package/dist/src/assets/icons/play.vue +1 -1
- package/dist/src/components/DpaMediaItem/DpaMediaItem.spec.ts +12 -12
- package/dist/src/components/UiBadge/UiBadge.spec.ts +3 -3
- package/dist/src/components/UiBadge/UiBadge.stories.ts +1 -1
- package/dist/src/components/UiBadge/UiBadge.vue +3 -8
- package/dist/src/components/UiButton/README.md +8 -8
- package/dist/src/components/UiButton/UiButton.spec.ts +3 -1
- package/dist/src/components/UiButton/UiButton.stories.ts +18 -1
- package/dist/src/components/UiButton/UiButton.vue +12 -7
- package/dist/src/components/UiButtonGroup/UiButtonGroup.spec.ts +2 -2
- package/dist/src/components/UiButtonGroup/UiButtonGroup.stories.ts +9 -8
- package/dist/src/components/UiCard/UiCard.spec.ts +2 -2
- package/dist/src/components/UiCheckBoxGroup/UiCheckBoxGroup.spec.ts +4 -4
- package/dist/src/components/UiCheckbox/README.md +9 -9
- package/dist/src/components/UiCheckbox/UiCheckbox.stories.ts +21 -8
- package/dist/src/components/UiCheckbox/UiCheckbox.vue +6 -2
- package/dist/src/components/UiChip/UiChip.spec.ts +4 -4
- package/dist/src/components/UiChip/UiChip.vue +2 -2
- package/dist/src/components/UiCollapseNavigation/UiCollapseNavigation.spec.ts +2 -2
- package/dist/src/components/UiCollapseNavigation/UiCollapseNavigation.vue +1 -1
- package/dist/src/components/UiColorPicker/UiColorPicker.spec.ts +5 -5
- package/dist/src/components/UiDatePicker/UiDatePicker.spec.ts +12 -12
- package/dist/src/components/UiDatePicker/UiDatePicker.stories.ts +48 -28
- package/dist/src/components/UiDatePicker/UiDatePicker.vue +21 -21
- package/dist/src/components/UiDialog/UiDialog.spec.ts +5 -5
- package/dist/src/components/UiDialog/UiDialog.stories.ts +1 -0
- package/dist/src/components/UiDialog/UiDialog.vue +49 -1
- package/dist/src/components/UiFilterBadge/UiFilterBadge.spec.ts +6 -6
- package/dist/src/components/UiFilterButton/UiFilterButton.spec.ts +6 -6
- package/dist/src/components/UiIcon/UiIcon.spec.ts +4 -4
- package/dist/src/components/UiIcon/UiIcon.stories.ts +8 -4
- package/dist/src/components/UiIcon/UiIconLoading.vue +8 -1
- package/dist/src/components/UiIcon/icons.ts +2 -0
- package/dist/src/components/UiIconButton/UiIconButton.spec.ts +6 -6
- package/dist/src/components/UiInfoContent/UiInfoContent.spec.ts +6 -6
- package/dist/src/components/UiInput/README.md +28 -17
- package/dist/src/components/UiInput/UiInput.spec.ts +20 -0
- package/dist/src/components/UiInput/UiInput.stories.ts +34 -7
- package/dist/src/components/UiInput/UiInput.vue +7 -4
- package/dist/src/components/UiList/UiList.spec.ts +2 -2
- package/dist/src/components/UiListItem/README.md +0 -1
- package/dist/src/components/UiListItem/UiListItem.spec.ts +8 -8
- package/dist/src/components/UiListItem/UiListItem.vue +5 -8
- package/dist/src/components/UiMediaTypeIcon/UiMediaTypeIcon.stories.ts +8 -4
- package/dist/src/components/UiMediaTypeIcon/UiMediaTypeIcon.vue +1 -1
- package/dist/src/components/UiMenu/README.md +0 -2
- package/dist/src/components/UiMenu/UiMenu.spec.ts +5 -5
- package/dist/src/components/UiMenu/UiMenu.stories.ts +83 -146
- package/dist/src/components/UiMenu/UiMenu.vue +98 -102
- package/dist/src/components/UiOverlay/UiOverlay.spec.ts +2 -2
- package/dist/src/components/UiOverlayMenu/UiOverlayMenu.spec.ts +2 -2
- package/dist/src/components/UiPopover/UiPopover.stories.ts +1 -1
- package/dist/src/components/UiPopover/UiPopover.vue +30 -7
- package/dist/src/components/UiRadioButton/UiRadioButton.stories.ts +17 -8
- package/dist/src/components/UiRadioButton/UiRadioButton.vue +1 -1
- package/dist/src/components/UiRadioInputGroup/UiRadioInputGroup.spec.ts +4 -4
- package/dist/src/components/UiSearchBar/UiSearchBar.spec.ts +6 -6
- package/dist/src/components/UiSearchBar/UiSearchBar.vue +1 -1
- package/dist/src/components/UiSearchInput/UiSearchInput.spec.ts +4 -4
- package/dist/src/components/UiSection/UiSection.spec.ts +5 -5
- package/dist/src/components/UiSectionDivider/UiSectionDivider.spec.ts +3 -3
- package/dist/src/components/UiSelect/{UIiSelect.spec.ts → UiSelect.spec.ts} +16 -8
- package/dist/src/components/UiSelect/UiSelect.stories.ts +13 -6
- package/dist/src/components/UiSelect/UiSelect.vue +14 -2
- package/dist/src/components/UiSkeletonBox/UiSkeletonBox.spec.ts +2 -2
- package/dist/src/components/UiSnackbar/UiSnackbar.spec.ts +8 -8
- package/dist/src/components/UiSpinner/UiSpinner.spec.ts +4 -4
- package/dist/src/components/UiSpinner/UiSpinner.stories.ts +1 -1
- package/dist/src/components/UiSpinner/UiSpinner.vue +31 -32
- package/dist/src/components/UiTextButton/UiTextButton.spec.ts +11 -11
- package/dist/src/components/UiToggleButton/UiToggleButton.spec.ts +8 -8
- package/dist/src/components/UiToggleButton/UiToggleButton.vue +19 -31
- package/dist/src/components/UiTooltip/UiTooltip.spec.ts +9 -9
- package/dist/{standard-view-CN0ixRE4.js → standard-view-BoYytoMT.js} +2 -2
- package/dist/{star-filled-CdXMXBn7.js → star-filled-CpCXunl1.js} +2 -2
- package/dist/{star-BKWqck4u.js → star-h8P_5_mG.js} +2 -2
- package/dist/{stop-B8l9lmwT.js → stop-CUitimZI.js} +2 -2
- package/dist/{story-DOxZDwJp.js → story-DHD4LNQr.js} +2 -2
- package/dist/{story-Cxy8EkgB.js → story-DRn-XI6F.js} +2 -2
- package/dist/style.css +2 -2
- package/dist/{sync-BW_fAqt6.js → sync-Y2eA3WT_.js} +2 -2
- package/dist/{tasks-DLNuebMi.js → tasks-C2MvrwpO.js} +2 -2
- package/dist/{text-Bsl2QZz3.js → text-C4wZ-s0Z.js} +2 -2
- package/dist/{text-CPSps-qh.js → text-C7Bt0-5h.js} +2 -2
- package/dist/{thumbs-down-pSf_ND98.js → thumbs-down-DRz1ad6Z.js} +2 -2
- package/dist/{thumbs-up-Braz70N6.js → thumbs-up-Tt4RC_93.js} +2 -2
- package/dist/{thumbs-up-double-C6foUkOq.js → thumbs-up-double-BiN5UiKl.js} +2 -2
- package/dist/{topic-BamlhBNV.js → topic-D6_NwX-F.js} +2 -2
- package/dist/{union-CYw04THu.js → union-s1aVCIT5.js} +2 -2
- package/dist/{upload-BL_iLqTa.js → upload-Csz6PEGc.js} +2 -2
- package/dist/{user-need-divert-me-2RaqdMMH.js → user-need-divert-me-NGIF6wBc.js} +2 -2
- package/dist/{user-need-educate-me-CRi42bIc.js → user-need-educate-me-B5uX-I2R.js} +2 -2
- package/dist/{user-need-give-me-perspective-BIF7v9vF.js → user-need-give-me-perspective-D1ivktbZ.js} +2 -2
- package/dist/{user-need-help-me-O0XSLzP-.js → user-need-help-me-Re-fEjwm.js} +2 -2
- package/dist/{user-need-touch-me-BueJ3SSh.js → user-need-touch-me-D025Uac5.js} +2 -2
- package/dist/{user-need-update-me-DP574fsn.js → user-need-update-me-DU3SfxYI.js} +2 -2
- package/dist/{video-DhS7zpNF.js → video-07EjnCpD.js} +2 -2
- package/dist/{video-CWHoNlON.js → video-B0IVRe8t.js} +2 -2
- package/dist/{video-overlay-D6e61Eo7.js → video-overlay-blAbosdl.js} +2 -2
- package/dist/{view-Bc5W8beK.js → view-BrJ61_ek.js} +2 -2
- package/dist/{view-off-DquC2i3E.js → view-off-Chs7NQif.js} +2 -2
- package/dist/{volume-up-DEzoW7Bq.js → volume-up-BDZJhktI.js} +2 -2
- package/package.json +33 -33
- package/src/assets/icons/lock-filled.vue +13 -0
- package/src/assets/icons/play-filled.vue +13 -0
- package/src/assets/icons/play.vue +1 -1
- package/src/components/UiBadge/UiBadge.vue +3 -8
- package/src/components/UiButton/README.md +8 -8
- package/src/components/UiButton/UiButton.vue +12 -7
- package/src/components/UiCheckbox/README.md +9 -9
- package/src/components/UiCheckbox/UiCheckbox.vue +6 -2
- package/src/components/UiChip/UiChip.vue +2 -2
- package/src/components/UiCollapseNavigation/UiCollapseNavigation.vue +1 -1
- package/src/components/UiDatePicker/UiDatePicker.vue +21 -21
- package/src/components/UiDialog/UiDialog.vue +49 -1
- package/src/components/UiIcon/UiIconLoading.vue +8 -1
- package/src/components/UiIcon/icons.ts +2 -0
- package/src/components/UiInput/README.md +28 -17
- package/src/components/UiInput/UiInput.vue +7 -4
- package/src/components/UiListItem/README.md +0 -1
- package/src/components/UiListItem/UiListItem.vue +5 -8
- package/src/components/UiMediaTypeIcon/UiMediaTypeIcon.vue +1 -1
- package/src/components/UiMenu/README.md +0 -2
- package/src/components/UiMenu/UiMenu.vue +98 -102
- package/src/components/UiPopover/UiPopover.vue +30 -7
- package/src/components/UiRadioButton/UiRadioButton.vue +1 -1
- package/src/components/UiSearchBar/UiSearchBar.vue +1 -1
- package/src/components/UiSelect/UiSelect.vue +14 -2
- package/src/components/UiSpinner/UiSpinner.vue +31 -32
- package/src/components/UiToggleButton/UiToggleButton.vue +19 -31
- package/dist/play-CArB2O7k.js +0 -18
- /package/dist/{_plugin-vue_export-helper-BTgDAbhb.js → _plugin-vue_export-helper-B3ysoDQm.js} +0 -0
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
cn(
|
|
6
6
|
'fixed inset-0 m-auto w-120 rounded-2xl bg-surface-level-1 text-current shadow-lg backdrop:bg-shadow-strong',
|
|
7
7
|
$attrs.class,
|
|
8
|
+
{ animate },
|
|
8
9
|
)
|
|
9
10
|
"
|
|
10
11
|
@click.self="dialog?.requestClose()"
|
|
@@ -64,9 +65,14 @@ defineSlots<{
|
|
|
64
65
|
}) => any;
|
|
65
66
|
}>();
|
|
66
67
|
|
|
67
|
-
const {
|
|
68
|
+
const {
|
|
69
|
+
hasCloseButton = true,
|
|
70
|
+
closeLabel = undefined,
|
|
71
|
+
animate = false,
|
|
72
|
+
} = defineProps<{
|
|
68
73
|
hasCloseButton?: boolean;
|
|
69
74
|
closeLabel?: string;
|
|
75
|
+
animate?: boolean;
|
|
70
76
|
}>();
|
|
71
77
|
|
|
72
78
|
function close() {
|
|
@@ -87,3 +93,45 @@ defineExpose({
|
|
|
87
93
|
requestClose,
|
|
88
94
|
});
|
|
89
95
|
</script>
|
|
96
|
+
|
|
97
|
+
<style scoped>
|
|
98
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
99
|
+
/* Backdrop */
|
|
100
|
+
.animate::backdrop {
|
|
101
|
+
background: rgb(0 0 0 / 0%);
|
|
102
|
+
transition:
|
|
103
|
+
background 0.3s ease,
|
|
104
|
+
display 0.2s ease allow-discrete,
|
|
105
|
+
overlay 0.2s ease allow-discrete;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.animate[open]::backdrop {
|
|
109
|
+
background: rgb(0 0 0 / 50%);
|
|
110
|
+
|
|
111
|
+
@starting-style {
|
|
112
|
+
background: rgb(0 0 0 / 0%);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/* Dialog box — fade + scale */
|
|
117
|
+
.animate {
|
|
118
|
+
opacity: 0;
|
|
119
|
+
transform: scale(0.95);
|
|
120
|
+
transition:
|
|
121
|
+
opacity 0.2s ease,
|
|
122
|
+
transform 0.2s ease,
|
|
123
|
+
display 0.2s ease allow-discrete,
|
|
124
|
+
overlay 0.2s ease allow-discrete;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.animate[open] {
|
|
128
|
+
opacity: 1;
|
|
129
|
+
transform: scale(1);
|
|
130
|
+
|
|
131
|
+
@starting-style {
|
|
132
|
+
opacity: 0;
|
|
133
|
+
transform: scale(0.95);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
</style>
|
|
@@ -100,6 +100,7 @@ export const icons = {
|
|
|
100
100
|
"list": () => import("../../assets/icons/list.vue"),
|
|
101
101
|
"list-search": () => import("../../assets/icons/list-search.vue"),
|
|
102
102
|
"lock": () => import("../../assets/icons/lock.vue"),
|
|
103
|
+
"lock-filled": () => import("../../assets/icons/lock-filled.vue"),
|
|
103
104
|
"mail": () => import("../../assets/icons/mail.vue"),
|
|
104
105
|
"map": () => import("../../assets/icons/map.vue"),
|
|
105
106
|
"map-filled": () => import("../../assets/icons/map-filled.vue"),
|
|
@@ -124,6 +125,7 @@ export const icons = {
|
|
|
124
125
|
"pin": () => import("../../assets/icons/pin.vue"),
|
|
125
126
|
"planning": () => import("../../assets/icons/planning.vue"),
|
|
126
127
|
"play": () => import("../../assets/icons/play.vue"),
|
|
128
|
+
"play-filled": () => import("../../assets/icons/play-filled.vue"),
|
|
127
129
|
"plus": () => import("../../assets/icons/plus.vue"),
|
|
128
130
|
"print": () => import("../../assets/icons/print.vue"),
|
|
129
131
|
"refresh": () => import("../../assets/icons/refresh.vue"),
|
|
@@ -3,29 +3,40 @@
|
|
|
3
3
|
## Usage
|
|
4
4
|
|
|
5
5
|
```vue
|
|
6
|
-
<
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
6
|
+
<UiInput
|
|
7
|
+
id="postal-code"
|
|
8
|
+
name="postal_code"
|
|
9
|
+
value="04277"
|
|
10
|
+
required
|
|
11
|
+
placeholder="12345"
|
|
12
|
+
>
|
|
13
|
+
Postal code
|
|
14
|
+
</UiInput>
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
**Using `v-model`**:
|
|
18
|
+
|
|
19
|
+
```vue
|
|
20
|
+
<UiInput v-model="postalCode">
|
|
21
|
+
Postal code
|
|
22
|
+
</UiInput>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
**With `number` value**:
|
|
26
|
+
|
|
27
|
+
```vue
|
|
28
|
+
<UiInput v-model="count" type="number">
|
|
29
|
+
Count
|
|
30
|
+
</UiInput>
|
|
20
31
|
```
|
|
21
32
|
|
|
22
33
|
## API
|
|
23
34
|
|
|
24
35
|
### Models
|
|
25
36
|
|
|
26
|
-
| Name | Type
|
|
27
|
-
|
|
28
|
-
| _default_ | `string` | `undefined` | Sets the input value |
|
|
37
|
+
| Name | Type | Default | Description |
|
|
38
|
+
|-----------|--------------------|-------------|----------------------|
|
|
39
|
+
| _default_ | `string \| number` | `undefined` | Sets the input value |
|
|
29
40
|
|
|
30
41
|
### Props
|
|
31
42
|
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
data-testid="input-value"
|
|
35
35
|
v-bind="{ ...$attrs, class: null }"
|
|
36
36
|
:data-is-label-raised="
|
|
37
|
-
$attrs.placeholder || isFocused ||
|
|
37
|
+
$attrs.placeholder || isFocused || hasInput ? '' : undefined
|
|
38
38
|
"
|
|
39
39
|
@focus="isFocused = true"
|
|
40
40
|
@blur="isFocused = false"
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
data-testid="input-value"
|
|
56
56
|
v-bind="{ ...$attrs, class: null }"
|
|
57
57
|
:data-is-label-raised="
|
|
58
|
-
$attrs.placeholder || isFocused ||
|
|
58
|
+
$attrs.placeholder || isFocused || hasInput ? '' : undefined
|
|
59
59
|
"
|
|
60
60
|
@focus="isFocused = true"
|
|
61
61
|
@blur="isFocused = false"
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
</div>
|
|
83
83
|
</template>
|
|
84
84
|
|
|
85
|
-
<script setup lang="ts">
|
|
85
|
+
<script setup lang="ts" generic="ModelValue extends string | number">
|
|
86
86
|
import { computed, ref, useId } from "vue";
|
|
87
87
|
|
|
88
88
|
import { cn } from "../../utils/cn.ts";
|
|
@@ -130,8 +130,11 @@ const {
|
|
|
130
130
|
inputStatus?: "info" | "warning" | "error";
|
|
131
131
|
}>();
|
|
132
132
|
|
|
133
|
-
const model = defineModel<
|
|
133
|
+
const model = defineModel<ModelValue>();
|
|
134
134
|
|
|
135
|
+
const hasInput = computed(
|
|
136
|
+
() => model.value !== undefined && model.value !== "",
|
|
137
|
+
);
|
|
135
138
|
const isFocused = ref(false);
|
|
136
139
|
|
|
137
140
|
const defaultId = useId();
|
|
@@ -31,7 +31,6 @@
|
|
|
31
31
|
| `imageSrc` | `String` | `""` | Image to be displayed at the beginning of the list item. |
|
|
32
32
|
| `imageShape` | `"rounded" | "square"` | `"square"` | Shape pf the image to be displayed. |
|
|
33
33
|
| `checkboxColor` | `"blue" | "gray"` | `"blue"` | Checkbox color style. |
|
|
34
|
-
| `checkboxSize` | `"small" | "medium"` | `"medium"` | Checkbox size style. |
|
|
35
34
|
|
|
36
35
|
### Events
|
|
37
36
|
|
|
@@ -2,26 +2,25 @@
|
|
|
2
2
|
<li
|
|
3
3
|
:class="
|
|
4
4
|
cn(
|
|
5
|
-
'flex cursor-pointer list-none items-center gap-2 px-4 py-
|
|
5
|
+
'flex cursor-pointer list-none items-center gap-2 px-4 py-1.5 text-sm/normal text-neutral-emphasis select-none hover:text-primary focus:outline-hidden focus-visible:focus-outline focus-visible:-outline-offset-2',
|
|
6
6
|
{
|
|
7
7
|
'cursor-default text-neutral-medium': disabled,
|
|
8
8
|
'is-selected': selected,
|
|
9
|
-
'py-3': checkboxSize === 'md',
|
|
10
9
|
},
|
|
11
10
|
overrideClasses,
|
|
12
11
|
$attrs.class,
|
|
13
12
|
)
|
|
14
13
|
"
|
|
15
14
|
tabindex="0"
|
|
16
|
-
@click.prevent.stop="$emit('list-item-click', value
|
|
15
|
+
@click.prevent.stop="$emit('list-item-click', value)"
|
|
17
16
|
>
|
|
18
17
|
<UiCheckbox
|
|
19
18
|
v-if="checkBoxMenu"
|
|
20
19
|
:appearance="checkboxAppearance"
|
|
21
20
|
:model-value="isChecked"
|
|
22
21
|
:disabled="disabled"
|
|
23
|
-
|
|
24
|
-
@click.stop="$emit('list-item-click', value
|
|
22
|
+
size="sm"
|
|
23
|
+
@click.stop="$emit('list-item-click', value)"
|
|
25
24
|
>
|
|
26
25
|
<span class="sr-only"><slot /></span>
|
|
27
26
|
</UiCheckbox>
|
|
@@ -65,7 +64,6 @@ const {
|
|
|
65
64
|
imageSrc = undefined,
|
|
66
65
|
imageShape = "rounded",
|
|
67
66
|
checkboxAppearance = "primary",
|
|
68
|
-
checkboxSize = "md",
|
|
69
67
|
isChecked = false,
|
|
70
68
|
disabled = false,
|
|
71
69
|
} = defineProps<{
|
|
@@ -79,12 +77,11 @@ const {
|
|
|
79
77
|
imageShape?: "rounded" | "square";
|
|
80
78
|
iconSize?: "sm" | "md" | "lg";
|
|
81
79
|
checkboxAppearance?: "primary" | "secondary";
|
|
82
|
-
checkboxSize?: "sm" | "md";
|
|
83
80
|
isChecked?: boolean;
|
|
84
81
|
disabled?: boolean;
|
|
85
82
|
}>();
|
|
86
83
|
|
|
87
84
|
defineEmits<{
|
|
88
|
-
"list-item-click": [value: string
|
|
85
|
+
"list-item-click": [value: string];
|
|
89
86
|
}>();
|
|
90
87
|
</script>
|
|
@@ -89,7 +89,6 @@ const options = ref([
|
|
|
89
89
|
| `buttonAppearance` | `"primary"`, `"secondary"`, `"secondary-alt"`, or `"ghost"` | `"secondary-alt"` | |
|
|
90
90
|
| `listVariant` | `"checkbox" | "selectable" | "blank"` | `"blank"` | Menu style. |
|
|
91
91
|
| `checkboxColor` | `"blue" | "gray"` | `"blue"` | Checkbox color style. |
|
|
92
|
-
| `checkboxSize` | `"small" | "medium"` | `"medium"` | Checkbox size style. |
|
|
93
92
|
| `imageShape` | `"rounded" | "square"` | `"square"` | shape of image. |
|
|
94
93
|
| `hasResetOption` | `boolean` | `false` | Toggles option for a reset button |
|
|
95
94
|
| `resetLabel` | `string` | `""` | Sets text of reset button. |
|
|
@@ -142,7 +141,6 @@ Wraps the UiListItem and uses the same settings as in the original UiMenu, helps
|
|
|
142
141
|
| `listVariant?` | `"checkbox" | "selectable" | "blank"` | `blank` | Provide the list variant, same as in UiMenu.vue |
|
|
143
142
|
| `iconSize?` | `"small" | "medium" | "large"` | `small` | Provide the icon size, same as in UiMenu.vue |
|
|
144
143
|
| `imageShape?` | `"rounded" | "square"` | `square` | Provide the imageShape, same as in UiMenu.vue |
|
|
145
|
-
| `checkboxSize?` | `"small" | "medium"` | `medium` | Provide the checkboxSize, same as in UiMenu.vue |
|
|
146
144
|
| `checkboxColor?` | `"blue" | "gray"` | `blue` | Provide the checkboxColor, same as in UiMenu.vue |
|
|
147
145
|
|
|
148
146
|
#### Slots
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<UiPopover
|
|
2
|
+
<UiPopover
|
|
3
|
+
:initially-open="isOpen"
|
|
4
|
+
:animate
|
|
5
|
+
:placement="floatingUiPlacement"
|
|
6
|
+
@toggle="$event ? $emit('open') : $emit('close')"
|
|
7
|
+
>
|
|
3
8
|
<template #button="{ toggle, isOpen: isPopoverOpen }">
|
|
4
9
|
<UiButton
|
|
5
10
|
class="w-full justify-between"
|
|
6
11
|
:class="{
|
|
7
12
|
'border-neutral-subtle': isPopoverOpen,
|
|
8
13
|
}"
|
|
9
|
-
:appearance="active ? '
|
|
14
|
+
:appearance="active ? 'fill-emphasis' : buttonAppearance"
|
|
10
15
|
:disabled
|
|
11
16
|
:size="filterButtonSize"
|
|
12
17
|
data-testid="menu-button"
|
|
13
|
-
@click="
|
|
14
|
-
toggle();
|
|
15
|
-
isPopoverOpen ? $emit('close') : $emit('open');
|
|
16
|
-
"
|
|
18
|
+
@click="toggle"
|
|
17
19
|
>
|
|
18
20
|
<div class="flex items-center gap-2">
|
|
19
21
|
<UiIcon v-if="iconLeft" :name="iconLeft" size="sm" />
|
|
@@ -23,106 +25,98 @@
|
|
|
23
25
|
</UiButton>
|
|
24
26
|
</template>
|
|
25
27
|
|
|
26
|
-
<
|
|
28
|
+
<div
|
|
29
|
+
class="block w-max max-w-full divide-y overflow-hidden rounded-lg border border-neutral-faint bg-neutral text-base/6 shadow-md focus:outline-hidden sm:text-sm/5"
|
|
30
|
+
>
|
|
27
31
|
<div
|
|
28
|
-
|
|
32
|
+
v-if="hasSearch"
|
|
33
|
+
class="flex items-center gap-2 rounded-t-lg px-4 pt-2.5 pb-1.5 text-neutral-primary [&:has(>input:focus-visible)]:focus-outline [&:has(>input:focus-visible)]:-outline-offset-2"
|
|
29
34
|
>
|
|
30
|
-
<
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
:placeholder="searchPlaceholder"
|
|
46
|
-
data-testid="menu-search-input"
|
|
47
|
-
/>
|
|
48
|
-
</div>
|
|
35
|
+
<UiIcon
|
|
36
|
+
class="shrink-0 text-neutral-emphasis"
|
|
37
|
+
name="search"
|
|
38
|
+
size="sm"
|
|
39
|
+
/>
|
|
40
|
+
<input
|
|
41
|
+
ref="search-input"
|
|
42
|
+
v-model="queryModel"
|
|
43
|
+
type="text"
|
|
44
|
+
spellcheck="false"
|
|
45
|
+
class="w-full text-sm focus:outline-hidden"
|
|
46
|
+
:placeholder="searchPlaceholder"
|
|
47
|
+
data-testid="menu-search-input"
|
|
48
|
+
/>
|
|
49
|
+
</div>
|
|
49
50
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
51
|
+
<slot
|
|
52
|
+
v-bind="{
|
|
53
|
+
checkboxAppearance,
|
|
54
|
+
iconSize,
|
|
55
|
+
imageShape,
|
|
56
|
+
listVariant,
|
|
57
|
+
options,
|
|
58
|
+
groupedOptions,
|
|
59
|
+
}"
|
|
60
|
+
>
|
|
61
|
+
<ul
|
|
62
|
+
v-if="processedOptions.some(({ options }) => options.length > 0)"
|
|
63
|
+
class="max-h-80 overflow-y-auto"
|
|
64
|
+
data-testid="menu-option-list"
|
|
60
65
|
>
|
|
61
|
-
<
|
|
62
|
-
v-
|
|
63
|
-
|
|
64
|
-
data-testid="menu-option-list"
|
|
66
|
+
<template
|
|
67
|
+
v-for="group in processedOptions"
|
|
68
|
+
:key="`group-${group.groupLabel ?? 'default'}`"
|
|
65
69
|
>
|
|
66
|
-
<template
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
class="flex h-6 items-center bg-neutral-whisper px-4 text-xs font-semibold tracking-wider text-neutral-subtle uppercase"
|
|
74
|
-
>
|
|
75
|
-
{{ group.groupLabel }}
|
|
76
|
-
</li>
|
|
70
|
+
<template v-if="group.options.length > 0">
|
|
71
|
+
<li
|
|
72
|
+
v-if="group.groupLabel"
|
|
73
|
+
class="flex h-6 items-center bg-neutral-faint px-4 text-xs font-semibold tracking-wider text-neutral-subtle uppercase"
|
|
74
|
+
>
|
|
75
|
+
{{ group.groupLabel }}
|
|
76
|
+
</li>
|
|
77
77
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
:
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
selectOption(option);
|
|
99
|
-
if (shouldCloseMenu) {
|
|
100
|
-
close();
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
"
|
|
104
|
-
>{{ option.label }}</UiListItem
|
|
105
|
-
>
|
|
106
|
-
</template>
|
|
78
|
+
<UiListItem
|
|
79
|
+
v-for="(option, index) in group.options"
|
|
80
|
+
:key="`option-${option.value}`"
|
|
81
|
+
:selected="option.selected"
|
|
82
|
+
:selectable="listVariant === 'selectable'"
|
|
83
|
+
:is-checked="option.selected"
|
|
84
|
+
:check-box-menu="listVariant === 'checkbox'"
|
|
85
|
+
:icon-size="iconSize"
|
|
86
|
+
:image-shape="imageShape"
|
|
87
|
+
:image-src="option.imageSrc"
|
|
88
|
+
:icon-name="option.iconName"
|
|
89
|
+
:checkbox-appearance="checkboxAppearance"
|
|
90
|
+
class="hover:bg-neutral-whisper focus:bg-neutral-faint"
|
|
91
|
+
:class="{
|
|
92
|
+
'border-t': option.hasDividerAbove,
|
|
93
|
+
}"
|
|
94
|
+
:data-testid="`menu-option-button-${index}`"
|
|
95
|
+
@list-item-click="selectOption(option)"
|
|
96
|
+
>{{ option.label }}</UiListItem
|
|
97
|
+
>
|
|
107
98
|
</template>
|
|
108
|
-
</
|
|
109
|
-
</
|
|
99
|
+
</template>
|
|
100
|
+
</ul>
|
|
101
|
+
</slot>
|
|
110
102
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
103
|
+
<div v-if="hasResetOption" class="px-2 pt-1.5 pb-2 text-neutral-primary">
|
|
104
|
+
<UiButton
|
|
105
|
+
appearance="outline-emphasis"
|
|
106
|
+
:disabled="disabledReset"
|
|
107
|
+
icon-name="reset"
|
|
108
|
+
size="xs"
|
|
109
|
+
data-testid="menu-search-reset-button"
|
|
110
|
+
@click="
|
|
111
|
+
queryModel = '';
|
|
112
|
+
$emit('reset');
|
|
113
|
+
"
|
|
114
|
+
>
|
|
115
|
+
<UiIcon name="reset" />
|
|
116
|
+
{{ resetLabel }}
|
|
117
|
+
</UiButton>
|
|
124
118
|
</div>
|
|
125
|
-
</
|
|
119
|
+
</div>
|
|
126
120
|
</UiPopover>
|
|
127
121
|
</template>
|
|
128
122
|
|
|
@@ -158,7 +152,6 @@ export type UiMenuGroupedOption<Value = unknown> = {
|
|
|
158
152
|
defineSlots<{
|
|
159
153
|
default?: (props: {
|
|
160
154
|
checkboxAppearance: typeof checkboxAppearance;
|
|
161
|
-
checkboxSize: typeof checkboxSize;
|
|
162
155
|
iconSize: typeof iconSize;
|
|
163
156
|
imageShape: typeof imageShape;
|
|
164
157
|
listVariant: typeof listVariant;
|
|
@@ -180,7 +173,7 @@ const {
|
|
|
180
173
|
disabled = false,
|
|
181
174
|
active = false,
|
|
182
175
|
iconLeft = null,
|
|
183
|
-
buttonAppearance = "
|
|
176
|
+
buttonAppearance = "outline-subtle",
|
|
184
177
|
filterButtonSize = "sm",
|
|
185
178
|
defaultTitle = "",
|
|
186
179
|
multiLabel = "",
|
|
@@ -196,7 +189,6 @@ const {
|
|
|
196
189
|
// Menu
|
|
197
190
|
iconSize = "sm",
|
|
198
191
|
imageShape = "square",
|
|
199
|
-
checkboxSize = "md",
|
|
200
192
|
checkboxAppearance = "primary",
|
|
201
193
|
listVariant = "blank",
|
|
202
194
|
} = defineProps<{
|
|
@@ -210,7 +202,12 @@ const {
|
|
|
210
202
|
disabled?: boolean;
|
|
211
203
|
active?: boolean;
|
|
212
204
|
iconLeft?: UiIconName;
|
|
213
|
-
buttonAppearance?:
|
|
205
|
+
buttonAppearance?:
|
|
206
|
+
| "fill-emphasis"
|
|
207
|
+
| "fill-subtle"
|
|
208
|
+
| "outline-emphasis"
|
|
209
|
+
| "outline-subtle"
|
|
210
|
+
| "ghost";
|
|
214
211
|
filterButtonSize?: "sm" | "xs";
|
|
215
212
|
defaultTitle?: string;
|
|
216
213
|
multiLabel?: string;
|
|
@@ -226,7 +223,6 @@ const {
|
|
|
226
223
|
// Menu
|
|
227
224
|
iconSize?: "sm" | "md" | "lg";
|
|
228
225
|
imageShape?: "rounded" | "square";
|
|
229
|
-
checkboxSize?: "sm" | "md";
|
|
230
226
|
checkboxAppearance?: "primary" | "secondary";
|
|
231
227
|
listVariant?: "checkbox" | "selectable" | "blank";
|
|
232
228
|
}>();
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div ref="reference"
|
|
2
|
+
<div ref="reference" class="w-fit" @click="update">
|
|
3
3
|
<slot name="button" v-bind="{ open, close, toggle, isOpen }" />
|
|
4
4
|
|
|
5
5
|
<Transition :name="animate ? 'fade-up' : 'none'">
|
|
6
6
|
<div
|
|
7
|
-
v-
|
|
7
|
+
v-if="isOpen"
|
|
8
8
|
ref="floating"
|
|
9
9
|
:style="floatingStyles"
|
|
10
|
-
class="z-10 w-fit
|
|
10
|
+
class="z-10 w-fit [text-align:initial] [--transition-close-duration:100ms] [--transition-duration:200ms]"
|
|
11
11
|
:data-side="placement"
|
|
12
12
|
>
|
|
13
13
|
<slot v-bind="{ close }" />
|
|
@@ -25,9 +25,8 @@ import {
|
|
|
25
25
|
shift,
|
|
26
26
|
useFloating,
|
|
27
27
|
} from "@floating-ui/vue";
|
|
28
|
-
import {
|
|
29
|
-
|
|
30
|
-
import { vClickAway } from "../../directives/vClickAway.ts";
|
|
28
|
+
import { onClickOutside } from "@vueuse/core";
|
|
29
|
+
import { ref, useTemplateRef, watch } from "vue";
|
|
31
30
|
|
|
32
31
|
defineSlots<{
|
|
33
32
|
button: (props: {
|
|
@@ -61,9 +60,12 @@ const {
|
|
|
61
60
|
placement?: Placement;
|
|
62
61
|
}>();
|
|
63
62
|
|
|
63
|
+
const emit = defineEmits<{
|
|
64
|
+
toggle: [isOpen: boolean];
|
|
65
|
+
}>();
|
|
66
|
+
|
|
64
67
|
const reference = useTemplateRef("reference");
|
|
65
68
|
const floating = useTemplateRef("floating");
|
|
66
|
-
const isOpen = ref(initiallyOpen);
|
|
67
69
|
|
|
68
70
|
const { floatingStyles, update } = useFloating(reference, floating, {
|
|
69
71
|
placement,
|
|
@@ -71,6 +73,12 @@ const { floatingStyles, update } = useFloating(reference, floating, {
|
|
|
71
73
|
whileElementsMounted: autoUpdate,
|
|
72
74
|
});
|
|
73
75
|
|
|
76
|
+
const isOpen = ref(initiallyOpen);
|
|
77
|
+
|
|
78
|
+
watch(isOpen, (isOpen) => {
|
|
79
|
+
emit("toggle", isOpen);
|
|
80
|
+
});
|
|
81
|
+
|
|
74
82
|
function open() {
|
|
75
83
|
isOpen.value = true;
|
|
76
84
|
}
|
|
@@ -83,6 +91,21 @@ function toggle() {
|
|
|
83
91
|
isOpen.value = !isOpen.value;
|
|
84
92
|
}
|
|
85
93
|
|
|
94
|
+
onClickOutside(
|
|
95
|
+
floating,
|
|
96
|
+
() => {
|
|
97
|
+
if (isOpen.value) {
|
|
98
|
+
close();
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
ignore: [
|
|
103
|
+
// Ignore clicks on the reference element
|
|
104
|
+
reference,
|
|
105
|
+
],
|
|
106
|
+
},
|
|
107
|
+
);
|
|
108
|
+
|
|
86
109
|
defineExpose({ open, close });
|
|
87
110
|
</script>
|
|
88
111
|
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
<input
|
|
14
14
|
:id="uniqueId"
|
|
15
15
|
v-model="model"
|
|
16
|
-
class="inline-flex aspect-square appearance-none items-center justify-center rounded-full border-2 bg-neutral align-middle transition-colors after:size-2 after:rounded-full checked:after:content-['']
|
|
16
|
+
class="inline-flex aspect-square appearance-none items-center justify-center rounded-full border-2 bg-neutral align-middle transition-colors after:size-2 after:rounded-full checked:after:content-[''] enabled:cursor-pointer disabled:border-neutral-muted disabled:text-neutral-soft disabled:checked:after:bg-neutral-muted"
|
|
17
17
|
:class="{
|
|
18
18
|
'size-4': size === 'sm',
|
|
19
19
|
'size-5': size === 'md',
|