@leavepulse/ui 0.69.0 → 0.70.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +37 -0
- package/dist/assets/LoaderMark-DxBV2iDJ.css +43 -0
- package/dist/assets/LpActivityLine-B3EwNQEB.css +33 -0
- package/dist/assets/{LpCommandPalette-DxyjhYn_.css → LpCommandPalette-u-zOxKWa.css} +21 -31
- package/dist/assets/LpDock-Cbh0wQUv.css +17 -0
- package/dist/assets/{LpDropzone-Qb8k7cg4.css → LpDropzone-Bb1vBTeU.css} +12 -17
- package/dist/assets/{LpImageEditor-CElPDzpF.css → LpImageEditor-XM5bAziW.css} +6 -6
- package/dist/assets/LpLogViewer-BDNW6P52.css +38 -0
- package/dist/assets/{LpPalettePreview-CJmAKgYW.css → LpPalettePreview-B9VKDrvA.css} +2 -7
- package/dist/assets/LpShinyText-D69cBYDR.css +61 -0
- package/dist/assets/LpStatus-430OGTZY.css +17 -0
- package/dist/assets/LpStepMark-Drvx33Vg.css +10 -0
- package/dist/assets/{LpTable-BPERfJIk.css → LpTable-DHxEQ_-3.css} +19 -19
- package/dist/assets/LpTabs-BJ-nrJuI.css +18 -0
- package/dist/assets/LpTextReveal-DjI1MsDS.css +35 -0
- package/dist/assets/LpTypewriter-CXAm9Nca.css +27 -0
- package/dist/chunks/AttentionDot-DCBf4aWg.js +25 -0
- package/dist/chunks/{ContextMenuItems-B7XFHksm.js → ContextMenuItems-B5uE8Znw.js} +1 -1
- package/dist/chunks/{DropzoneLinkField-CjkrpDqO.js → DropzoneLinkField-Bw8Flkhk.js} +2 -2
- package/dist/chunks/FieldWrapper-BiennROB.js +43 -0
- package/dist/chunks/{LayoutCanvas-DF9CovaK.js → LayoutCanvas-BsJIzhdd.js} +1 -1
- package/dist/chunks/{LayoutNode-D9bIFzk0.js → LayoutNode-DJVhkSGk.js} +6 -8
- package/dist/chunks/LegendSwatch-BhRjrtzv.js +18 -0
- package/dist/chunks/LoaderMark-C1dubiKn.js +85 -0
- package/dist/chunks/{LpActionBar-MPKMu3pz.js → LpActionBar-CzOFar5t.js} +14 -20
- package/dist/chunks/LpActivityLine-CJvzrNpj.js +95 -0
- package/dist/chunks/{LpAddressInput-DG0BTqdH.js → LpAddressInput-CNnLTDZg.js} +7 -7
- package/dist/chunks/LpAlert-C5igj802.js +119 -0
- package/dist/chunks/{LpAppShell-DPh1756q.js → LpAppShell-CEUAB8kK.js} +15 -16
- package/dist/chunks/{LpAutocomplete-Dgn6hw3p.js → LpAutocomplete-D92niDHE.js} +15 -32
- package/dist/chunks/{LpAvatar-Bs0Fb1lC.js → LpAvatar-CLPl-qOF.js} +18 -6
- package/dist/chunks/LpBadge-HOEPBYmi.js +126 -0
- package/dist/chunks/LpBreadcrumbs-DYoPc3P4.js +144 -0
- package/dist/chunks/{LpButton-DNR-YAq5.js → LpButton-CVxBfGjd.js} +12 -4
- package/dist/chunks/{LpCalendar-BLya39Fh.js → LpCalendar-pVL91-Pl.js} +1 -1
- package/dist/chunks/{LpCard-Bf71NXZq.js → LpCard-CqKLnEhl.js} +18 -8
- package/dist/chunks/{LpCheckbox-Da5oZPHo.js → LpCheckbox-DHc2bHDe.js} +9 -6
- package/dist/chunks/{LpCodeBlock-lLbmslfs.js → LpCodeBlock-BGsQhxw8.js} +24 -32
- package/dist/chunks/LpCodeDisplay-CIKKT2iW.js +189 -0
- package/dist/chunks/LpCollapse-CWS9M_lm.js +115 -0
- package/dist/chunks/{LpColorPicker-DtEfBAcK.js → LpColorPicker-DFugXNUi.js} +10 -5
- package/dist/chunks/{LpConfirmDialog-D7s4jakB.js → LpConfirmDialog-CfGCux8m.js} +3 -3
- package/dist/chunks/{LpConfirmHost-DrYI5y1K.js → LpConfirmHost-exB7JmcO.js} +1 -1
- package/dist/chunks/{LpContextMenu-CRnjoqSt.js → LpContextMenu-COwOwRgI.js} +13 -5
- package/dist/chunks/LpCopyButton-DzHjnFs0.js +133 -0
- package/dist/chunks/LpCountdown-Dtq1ihlJ.js +231 -0
- package/dist/chunks/LpDataList-B-5nHfNw.js +120 -0
- package/dist/chunks/LpDatePicker-BUe1VUC0.js +168 -0
- package/dist/chunks/LpDateRangePicker-C_k65vGR.js +126 -0
- package/dist/chunks/{LpDisclosure-6AplYBub.js → LpDisclosure-DOarzlAG.js} +22 -11
- package/dist/chunks/{LpDrawer-Q4SOxM4s.js → LpDrawer-DGNKRsGq.js} +9 -4
- package/dist/chunks/{LpDropdownMenu-DWTt0ooM.js → LpDropdownMenu-CRgrhdAH.js} +10 -5
- package/dist/chunks/LpEditable-DTqLt2lT.js +236 -0
- package/dist/chunks/{LpEmptyState-om1UnFjV.js → LpEmptyState-KTKipws2.js} +1 -1
- package/dist/chunks/{LpFieldNotice-CHuDeLjc.js → LpFieldNotice-CurbNuXI.js} +1 -1
- package/dist/chunks/{LpFileTree-CW24YsVX.js → LpFileTree-DMISXVHC.js} +5 -3
- package/dist/chunks/{LpFileTreeNode-BXhTHaKW.js → LpFileTreeNode-CPXB_Yy3.js} +42 -55
- package/dist/chunks/{LpFormField-DPb47HEm.js → LpFormField-BWwgm1E4.js} +23 -9
- package/dist/chunks/LpFrame-BVQCQLDI.js +155 -0
- package/dist/chunks/LpGauge-Bk8TwJj0.js +204 -0
- package/dist/chunks/LpGlowBorder-B8V-QzIl.js +40 -0
- package/dist/chunks/{LpHintExample-C1eKYdeL.js → LpHintExample-9Py0wc-L.js} +11 -34
- package/dist/chunks/{LpHintLayer-7UOdWQG3.js → LpHintLayer-p4hqzdyA.js} +27 -14
- package/dist/chunks/{LpHints-BUtBp9-w.js → LpHints-CCrhRfy9.js} +3 -3
- package/dist/chunks/LpHoverCard-spGxyw7T.js +130 -0
- package/dist/chunks/{LpIcon-6tSrZ3Zy.js → LpIcon-HJP5xMz4.js} +1 -1
- package/dist/chunks/LpIdenticon-BzdC_qz9.js +63 -0
- package/dist/chunks/{LpInfraNode-Ds_8SZgN.js → LpInfraNode-CUC3t4na.js} +39 -25
- package/dist/chunks/{LpInput-CUyr6PIE.js → LpInput-CDuwODJG.js} +44 -18
- package/dist/chunks/{LpLightbox-B9J8rzsj.js → LpLightbox-XJ0LpTcZ.js} +69 -69
- package/dist/chunks/LpLoader-DjJEX8hL.js +92 -0
- package/dist/chunks/{LpLogViewer-4QFc-sVN.js → LpLogViewer-elZHbj85.js} +225 -129
- package/dist/chunks/LpMagnetic-CtXKLa2Y.js +62 -0
- package/dist/chunks/{LpMapPicker-BTbkFeSG.js → LpMapPicker-BtIl7NOM.js} +34 -31
- package/dist/chunks/LpMasonry--k0571qG.js +185 -0
- package/dist/chunks/{LpMediaGallery-CuPcscx3.js → LpMediaGallery-D5swlmZ_.js} +3 -3
- package/dist/chunks/{LpModal-hk1noDcr.js → LpModal-eBMt2Fqn.js} +8 -3
- package/dist/chunks/{LpModalNav-DQd2keZm.js → LpModalNav-D4Z0wVHR.js} +4 -4
- package/dist/chunks/{LpNotificationBell-X84PJIxD.js → LpNotificationBell-DPZmP5dM.js} +32 -48
- package/dist/chunks/LpNumberField-B9k-h2HE.js +140 -0
- package/dist/chunks/{LpNumberFlow-z4WPZcZu.js → LpNumberFlow-Cfyh033Q.js} +8 -28
- package/dist/chunks/{LpOtpInput-PbeNJ5In.js → LpOtpInput-CeBPsM7D.js} +2 -1
- package/dist/chunks/{LpPagination-Bx-VG4Ag.js → LpPagination-VNCX6pFC.js} +37 -6
- package/dist/chunks/{LpPalettePreview-CFav_7co.js → LpPalettePreview-BNB8T_MY.js} +1 -1
- package/dist/chunks/{LpPasswordInput-CbnXitAS.js → LpPasswordInput-DTV18FIh.js} +20 -20
- package/dist/chunks/{LpPhoneInput-DP69HONS.js → LpPhoneInput-C60tx1tC.js} +12 -7
- package/dist/chunks/{LpPie-yLF9-aDR.js → LpPie-CFuV7pZv.js} +158 -47
- package/dist/chunks/LpPipeline-D81yh_NX.js +329 -0
- package/dist/chunks/{LpPopover-DVnkHaOu.js → LpPopover-BEIcqb9p.js} +8 -3
- package/dist/chunks/{LpProgress-CA86wxXu.js → LpProgress-CE-m5OpD.js} +23 -63
- package/dist/chunks/LpQuota-2Sw_gqcJ.js +162 -0
- package/dist/chunks/{LpRadioGroup-8S5hf8lE.js → LpRadioGroup-CGBr5nIp.js} +1 -1
- package/dist/chunks/{LpRangeCalendar-ByQi-WUz.js → LpRangeCalendar-c5qj7YcC.js} +1 -1
- package/dist/chunks/{LpRangeSlider-C1yF9-nP.js → LpRangeSlider-Dv6lNvHY.js} +6 -2
- package/dist/chunks/LpRelativeTime-CKzVqAo9.js +73 -0
- package/dist/chunks/LpRepeater-D0VjmD6y.js +140 -0
- package/dist/chunks/LpRevealOnScroll-DcQjexLy.js +76 -0
- package/dist/chunks/LpScramble-TDO5Kdou.js +85 -0
- package/dist/chunks/LpSecretField-DMfdJ1cQ.js +307 -0
- package/dist/chunks/{LpSection-BmRXe6ZP.js → LpSection-BW4xJ-Li.js} +1 -1
- package/dist/chunks/{LpSegmented-CW3bFHM4.js → LpSegmented-BO99Sr4m.js} +11 -14
- package/dist/chunks/{LpSelect-BCyDYoih.js → LpSelect-B4f_yRi5.js} +93 -108
- package/dist/chunks/LpShaderBackdrop-Bote0iuy.js +332 -0
- package/dist/chunks/LpShinyText-DX2ajtWq.js +48 -0
- package/dist/chunks/{LpSidebar-DfIiS-lB.js → LpSidebar-D-M0Y_7U.js} +5 -3
- package/dist/chunks/{LpSidebarNav-C5FDNI0t.js → LpSidebarNav-DF-TYxOV.js} +3 -3
- package/dist/chunks/{LpSlider-Cuzmrd7p.js → LpSlider-DuoRpOrH.js} +6 -2
- package/dist/chunks/{LpSparkline-DXT4KrSi.js → LpSparkline-CExIRDb3.js} +32 -27
- package/dist/chunks/LpSpotlight-4F3NeUMY.js +41 -0
- package/dist/chunks/{LpStat-iBMF5QNk.js → LpStat-B2ix1Q7t.js} +38 -35
- package/dist/chunks/LpStatus-C7kx5PKE.js +86 -0
- package/dist/chunks/LpStepMark-DK-5BKAt.js +101 -0
- package/dist/chunks/LpStepper-DRFfdJaq.js +76 -0
- package/dist/chunks/{LpSwap-D82jiecV.js → LpSwap-DzE6M3Mg.js} +1 -1
- package/dist/chunks/LpSwitch-DrzKrZZV.js +112 -0
- package/dist/chunks/{LpTableFilter-CuIbgdW0.js → LpTableFilter-DyvHGbOk.js} +3 -2
- package/dist/chunks/{LpTableOfContents-C_4VBktT.js → LpTableOfContents-rYvo8z5T.js} +34 -21
- package/dist/chunks/{LpTagsInput-DiXrpYeE.js → LpTagsInput-DgpBFRV2.js} +68 -71
- package/dist/chunks/LpTextReveal-CtAnOUkp.js +140 -0
- package/dist/chunks/{LpTextarea-xoQd5Lnp.js → LpTextarea-DiWjeVoJ.js} +12 -11
- package/dist/chunks/{LpThemeProvider-CQ2jC9TA.js → LpThemeProvider-DcbfOxsU.js} +1 -1
- package/dist/chunks/LpThemeStudio-DguwHdGt.js +416 -0
- package/dist/chunks/LpThemeStudioSection-BwhqYDLf.js +20 -0
- package/dist/chunks/LpThemeSwitcher-D5uz0MhK.js +278 -0
- package/dist/chunks/{LpTimeField-MFgAsNc5.js → LpTimeField-BFQVf_PW.js} +13 -5
- package/dist/chunks/{LpToaster-C4zE9zB7.js → LpToaster-Wv9ksj4q.js} +49 -82
- package/dist/chunks/{LpTooltip-suFCM34F.js → LpTooltip-Cz8SQwRt.js} +8 -3
- package/dist/chunks/{LpTopologyCanvas-6ozNrQKh.js → LpTopologyCanvas-ZhKthfgz.js} +1 -1
- package/dist/chunks/{LpTour-BUp3Jt2e.js → LpTour-NfRJNEIP.js} +24 -18
- package/dist/chunks/LpTruncate-D_5Pfv5B.js +112 -0
- package/dist/chunks/LpTypewriter-BCL_a6wE.js +159 -0
- package/dist/chunks/{LpUptimeBar-B6kHw4Cj.js → LpUptimeBar-DWegV2p6.js} +9 -8
- package/dist/chunks/{LpVideoBackdrop-qWRYBOTQ.js → LpVideoBackdrop-DS1wGv-X.js} +7 -8
- package/dist/chunks/{MenuTitle-obgek0B7.js → MenuTitle-BjQZX8tQ.js} +1 -1
- package/dist/chunks/OptionContent-CmYUUeWj.js +40 -0
- package/dist/chunks/PickerField-CHRS1h7K.js +116 -0
- package/dist/chunks/RevealToggle-C-KzaQGJ.js +65 -0
- package/dist/chunks/StepConnector-37OgEOXA.js +41 -0
- package/dist/chunks/TourCard-BXuVHsfn.js +123 -0
- package/dist/chunks/backdrop-Dkf2vM81.js +59 -0
- package/dist/chunks/{icons-DVhZ_plB.js → icons-4IywzkHk.js} +1 -1
- package/dist/chunks/{useTheme-2qHG8NEU.js → useTheme-BOV_-AiY.js} +9 -65
- package/dist/component-names.d.ts +1 -1
- package/dist/components/AttentionDot.vue.d.ts +9 -0
- package/dist/components/AttentionDot.vue.js +4 -0
- package/dist/components/ContextMenuItems.vue.js +1 -1
- package/dist/components/DropzoneLinkField.vue.js +1 -1
- package/dist/components/FieldWrapper.vue.d.ts +25 -0
- package/dist/components/FieldWrapper.vue.js +4 -0
- package/dist/components/LayoutCanvas.vue.js +1 -1
- package/dist/components/LayoutNode.vue.d.ts +4 -4
- package/dist/components/LayoutNode.vue.js +1 -1
- package/dist/components/LegendSwatch.vue.d.ts +6 -0
- package/dist/components/LegendSwatch.vue.js +4 -0
- package/dist/components/LoaderMark.vue.d.ts +12 -0
- package/dist/components/LoaderMark.vue.js +4 -0
- package/dist/components/LpActionBar.vue.js +1 -1
- package/dist/components/LpActivityLine.vue.d.ts +58 -0
- package/dist/components/LpActivityLine.vue.js +4 -0
- package/dist/components/LpAddressInput.vue.js +1 -1
- package/dist/components/LpAlert.vue.d.ts +2 -2
- package/dist/components/LpAlert.vue.js +1 -1
- package/dist/components/LpAppShell.vue.d.ts +8 -7
- package/dist/components/LpAppShell.vue.js +1 -1
- package/dist/components/LpAutocomplete.vue.js +1 -1
- package/dist/components/LpAvatar.vue.d.ts +16 -0
- package/dist/components/LpAvatar.vue.js +1 -1
- package/dist/components/LpBadge.vue.d.ts +19 -5
- package/dist/components/LpBadge.vue.js +1 -1
- package/dist/components/LpBreadcrumbs.vue.js +1 -1
- package/dist/components/LpButton.vue.d.ts +2 -2
- package/dist/components/LpButton.vue.js +1 -1
- package/dist/components/LpCalendar.vue.js +1 -1
- package/dist/components/LpCard.vue.d.ts +24 -0
- package/dist/components/LpCard.vue.js +1 -1
- package/dist/components/LpChart.vue.js +107 -138
- package/dist/components/LpCheckbox.vue.d.ts +2 -2
- package/dist/components/LpCheckbox.vue.js +1 -1
- package/dist/components/LpCodeBlock.vue.js +1 -1
- package/dist/components/LpCodeDisplay.vue.d.ts +89 -0
- package/dist/components/LpCodeDisplay.vue.js +4 -0
- package/dist/components/LpCollapse.vue.d.ts +58 -0
- package/dist/components/LpCollapse.vue.js +4 -0
- package/dist/components/LpColorPicker.vue.d.ts +2 -2
- package/dist/components/LpColorPicker.vue.js +1 -1
- package/dist/components/LpCommandPalette.vue.js +34 -23
- package/dist/components/LpConfirmDialog.vue.js +1 -1
- package/dist/components/LpConfirmHost.vue.js +1 -1
- package/dist/components/LpContextMenu.vue.js +1 -1
- package/dist/components/LpCopyButton.vue.d.ts +82 -0
- package/dist/components/LpCopyButton.vue.js +4 -0
- package/dist/components/LpCountdown.vue.d.ts +100 -0
- package/dist/components/LpCountdown.vue.js +4 -0
- package/dist/components/LpDataList.vue.d.ts +66 -0
- package/dist/components/LpDataList.vue.js +4 -0
- package/dist/components/LpDatePicker.vue.d.ts +1 -1
- package/dist/components/LpDatePicker.vue.js +1 -1
- package/dist/components/LpDateRangePicker.vue.d.ts +1 -1
- package/dist/components/LpDateRangePicker.vue.js +1 -1
- package/dist/components/LpDisclosure.vue.js +1 -1
- package/dist/components/LpDock.vue.d.ts +74 -0
- package/dist/components/LpDock.vue.js +204 -0
- package/dist/components/LpDrawer.vue.js +1 -1
- package/dist/components/LpDropdownMenu.vue.js +1 -1
- package/dist/components/LpDropzone.vue.d.ts +8 -1
- package/dist/components/LpDropzone.vue.js +36 -15
- package/dist/components/LpEditable.vue.d.ts +85 -0
- package/dist/components/LpEditable.vue.js +4 -0
- package/dist/components/LpEmptyState.vue.js +1 -1
- package/dist/components/LpFieldNotice.vue.js +1 -1
- package/dist/components/LpFileTree.vue.js +1 -1
- package/dist/components/LpFileTreeNode.vue.js +1 -1
- package/dist/components/LpFormField.vue.js +1 -1
- package/dist/components/LpFrame.vue.d.ts +22 -0
- package/dist/components/LpFrame.vue.js +4 -0
- package/dist/components/LpGauge.vue.d.ts +116 -0
- package/dist/components/LpGauge.vue.js +4 -0
- package/dist/components/LpGlowBorder.vue.d.ts +47 -0
- package/dist/components/LpGlowBorder.vue.js +4 -0
- package/dist/components/LpHintExample.vue.d.ts +2 -2
- package/dist/components/LpHintExample.vue.js +1 -1
- package/dist/components/LpHintLayer.vue.js +1 -1
- package/dist/components/LpHints.vue.js +1 -1
- package/dist/components/LpHoverCard.vue.d.ts +60 -0
- package/dist/components/LpHoverCard.vue.js +4 -0
- package/dist/components/LpIcon.vue.js +1 -1
- package/dist/components/LpIdenticon.vue.d.ts +37 -0
- package/dist/components/LpIdenticon.vue.js +4 -0
- package/dist/components/LpImageEditor.vue.js +13 -19
- package/dist/components/LpInfraNode.vue.js +1 -1
- package/dist/components/LpInput.vue.d.ts +10 -0
- package/dist/components/LpInput.vue.js +1 -1
- package/dist/components/LpLightbox.vue.js +1 -1
- package/dist/components/LpLoader.vue.d.ts +106 -0
- package/dist/components/LpLoader.vue.js +4 -0
- package/dist/components/LpLogViewer.vue.js +1 -1
- package/dist/components/LpMagnetic.vue.d.ts +28 -0
- package/dist/components/LpMagnetic.vue.js +4 -0
- package/dist/components/LpMapPicker.vue.js +1 -1
- package/dist/components/LpMasonry.vue.d.ts +42 -0
- package/dist/components/LpMasonry.vue.js +4 -0
- package/dist/components/LpMediaGallery.vue.js +1 -1
- package/dist/components/LpModal.vue.js +1 -1
- package/dist/components/LpModalNav.vue.js +1 -1
- package/dist/components/LpNotificationBell.vue.d.ts +15 -6
- package/dist/components/LpNotificationBell.vue.js +1 -1
- package/dist/components/LpNumberField.vue.d.ts +57 -0
- package/dist/components/LpNumberField.vue.js +1 -1
- package/dist/components/LpNumberFlow.vue.js +1 -1
- package/dist/components/LpOtpInput.vue.d.ts +12 -4
- package/dist/components/LpOtpInput.vue.js +1 -1
- package/dist/components/LpPagination.vue.js +1 -1
- package/dist/components/LpPaletteFacts.vue.js +1 -1
- package/dist/components/LpPaletteHeader.vue.js +2 -2
- package/dist/components/LpPalettePreview.vue.js +1 -1
- package/dist/components/LpPaletteStats.vue.js +1 -1
- package/dist/components/LpPasswordInput.vue.d.ts +12 -1
- package/dist/components/LpPasswordInput.vue.js +1 -1
- package/dist/components/LpPhoneInput.vue.js +1 -1
- package/dist/components/LpPie.vue.d.ts +3 -1
- package/dist/components/LpPie.vue.js +1 -1
- package/dist/components/LpPipeline.vue.d.ts +91 -0
- package/dist/components/LpPipeline.vue.js +4 -0
- package/dist/components/LpPopover.vue.d.ts +2 -2
- package/dist/components/LpPopover.vue.js +1 -1
- package/dist/components/LpProgress.vue.d.ts +11 -4
- package/dist/components/LpProgress.vue.js +1 -1
- package/dist/components/LpQuota.vue.d.ts +68 -0
- package/dist/components/LpQuota.vue.js +4 -0
- package/dist/components/LpRadioGroup.vue.js +1 -1
- package/dist/components/LpRangeCalendar.vue.js +1 -1
- package/dist/components/LpRangeSlider.vue.js +1 -1
- package/dist/components/LpRelativeTime.vue.d.ts +41 -0
- package/dist/components/LpRelativeTime.vue.js +4 -0
- package/dist/components/LpRepeater.vue.d.ts +48 -0
- package/dist/components/LpRepeater.vue.js +4 -0
- package/dist/components/LpRevealOnScroll.vue.d.ts +67 -0
- package/dist/components/LpRevealOnScroll.vue.js +4 -0
- package/dist/components/LpRollingText.vue.d.ts +1 -1
- package/dist/components/LpScramble.vue.d.ts +55 -0
- package/dist/components/LpScramble.vue.js +4 -0
- package/dist/components/LpScrollArea.vue.d.ts +1 -1
- package/dist/components/LpSecretField.vue.d.ts +108 -0
- package/dist/components/LpSecretField.vue.js +4 -0
- package/dist/components/LpSection.vue.js +1 -1
- package/dist/components/LpSegmented.vue.js +1 -1
- package/dist/components/LpSelect.vue.d.ts +2 -0
- package/dist/components/LpSelect.vue.js +1 -1
- package/dist/components/LpShaderBackdrop.vue.d.ts +39 -0
- package/dist/components/LpShaderBackdrop.vue.js +4 -0
- package/dist/components/LpShinyText.vue.d.ts +39 -0
- package/dist/components/LpShinyText.vue.js +4 -0
- package/dist/components/LpShortcutsDialog.vue.js +1 -1
- package/dist/components/LpSidebar.vue.js +1 -1
- package/dist/components/LpSidebarNav.vue.js +1 -1
- package/dist/components/LpSlider.vue.js +1 -1
- package/dist/components/LpSparkline.vue.d.ts +4 -3
- package/dist/components/LpSparkline.vue.js +1 -1
- package/dist/components/LpSpotlight.vue.d.ts +37 -0
- package/dist/components/LpSpotlight.vue.js +4 -0
- package/dist/components/LpStat.vue.js +1 -1
- package/dist/components/LpStatus.vue.d.ts +65 -0
- package/dist/components/LpStatus.vue.js +4 -0
- package/dist/components/LpStepMark.vue.d.ts +31 -0
- package/dist/components/LpStepMark.vue.js +4 -0
- package/dist/components/LpStepper.vue.js +1 -1
- package/dist/components/LpSwap.vue.js +1 -1
- package/dist/components/LpSwitch.vue.d.ts +2 -2
- package/dist/components/LpSwitch.vue.js +1 -1
- package/dist/components/LpTable.vue.js +104 -120
- package/dist/components/LpTableFilter.vue.js +1 -1
- package/dist/components/LpTableOfContents.vue.d.ts +6 -1
- package/dist/components/LpTableOfContents.vue.js +1 -1
- package/dist/components/LpTabs.vue.d.ts +5 -5
- package/dist/components/LpTabs.vue.js +25 -33
- package/dist/components/LpTagsInput.vue.js +1 -1
- package/dist/components/LpTextReveal.vue.d.ts +58 -0
- package/dist/components/LpTextReveal.vue.js +4 -0
- package/dist/components/LpTextarea.vue.js +1 -1
- package/dist/components/LpThemeProvider.vue.js +1 -1
- package/dist/components/LpThemeStudio.vue.d.ts +54 -0
- package/dist/components/LpThemeStudio.vue.js +4 -0
- package/dist/components/LpThemeStudioSection.vue.d.ts +16 -0
- package/dist/components/LpThemeStudioSection.vue.js +4 -0
- package/dist/components/LpThemeSwitcher.vue.d.ts +32 -1
- package/dist/components/LpThemeSwitcher.vue.js +1 -1
- package/dist/components/LpTimeField.vue.d.ts +2 -0
- package/dist/components/LpTimeField.vue.js +1 -1
- package/dist/components/LpToaster.vue.js +1 -1
- package/dist/components/LpTooltip.vue.d.ts +2 -2
- package/dist/components/LpTooltip.vue.js +1 -1
- package/dist/components/LpTopologyCanvas.vue.js +1 -1
- package/dist/components/LpTour.vue.js +1 -1
- package/dist/components/LpTruncate.vue.d.ts +34 -0
- package/dist/components/LpTruncate.vue.js +4 -0
- package/dist/components/LpTypewriter.vue.d.ts +61 -0
- package/dist/components/LpTypewriter.vue.js +4 -0
- package/dist/components/LpUptimeBar.vue.js +1 -1
- package/dist/components/LpVideoBackdrop.vue.js +1 -1
- package/dist/components/MenuTitle.vue.js +1 -1
- package/dist/components/OptionContent.vue.d.ts +7 -0
- package/dist/components/OptionContent.vue.js +4 -0
- package/dist/components/PickerField.vue.d.ts +43 -0
- package/dist/components/PickerField.vue.js +4 -0
- package/dist/components/RevealToggle.vue.d.ts +21 -0
- package/dist/components/RevealToggle.vue.js +4 -0
- package/dist/components/StepConnector.vue.d.ts +19 -0
- package/dist/components/StepConnector.vue.js +4 -0
- package/dist/components/TourCard.vue.js +1 -1
- package/dist/components/badge.d.ts +1 -0
- package/dist/components/badge.js +4 -0
- package/dist/components/chart.d.ts +5 -1
- package/dist/components/chart.js +2 -21
- package/dist/components/dateRange.d.ts +11 -0
- package/dist/components/dateRange.js +12 -0
- package/dist/components/dock.d.ts +19 -0
- package/dist/components/dock.js +16 -0
- package/dist/components/dropdown.d.ts +10 -1
- package/dist/components/dropdown.js +7 -2
- package/dist/components/fieldText.d.ts +38 -0
- package/dist/components/fieldText.js +53 -0
- package/dist/components/fileTree.d.ts +7 -3
- package/dist/components/fileTree.js +12 -18
- package/dist/components/format.d.ts +41 -0
- package/dist/components/format.js +67 -0
- package/dist/components/identicon.d.ts +38 -0
- package/dist/components/identicon.js +85 -0
- package/dist/components/masonry.d.ts +32 -0
- package/dist/components/masonry.js +40 -0
- package/dist/components/menuWhen.js +1 -1
- package/dist/components/meter.d.ts +64 -0
- package/dist/components/meter.js +53 -0
- package/dist/components/otp.d.ts +1 -1
- package/dist/components/otp.js +7 -2
- package/dist/components/pipeline.d.ts +55 -0
- package/dist/components/pipeline.js +51 -0
- package/dist/components/quota.d.ts +57 -0
- package/dist/components/quota.js +40 -0
- package/dist/components/relativeTime.d.ts +24 -0
- package/dist/components/relativeTime.js +56 -0
- package/dist/components/reveal.d.ts +18 -0
- package/dist/components/reveal.js +32 -0
- package/dist/components/scramble.d.ts +68 -0
- package/dist/components/scramble.js +58 -0
- package/dist/components/shaderBackdrop.d.ts +20 -0
- package/dist/components/shaderBackdrop.js +156 -0
- package/dist/components/slider.d.ts +5 -0
- package/dist/components/slider.js +24 -0
- package/dist/components/slotText.d.ts +2 -0
- package/dist/components/slotText.js +9 -0
- package/dist/components/status.d.ts +14 -0
- package/dist/components/status.js +22 -0
- package/dist/components/tableFacets.d.ts +8 -0
- package/dist/components/tableFacets.js +19 -0
- package/dist/components/textSplit.d.ts +17 -0
- package/dist/components/textSplit.js +24 -0
- package/dist/components/timeSpan.d.ts +78 -0
- package/dist/components/timeSpan.js +85 -0
- package/dist/components/tone.d.ts +43 -0
- package/dist/components/tone.js +82 -0
- package/dist/components/tour.js +3 -2
- package/dist/components/typewriter.d.ts +36 -0
- package/dist/components/typewriter.js +53 -0
- package/dist/components/videoBackdrop.js +5 -6
- package/dist/composables/easing.d.ts +22 -1
- package/dist/composables/easing.js +42 -1
- package/dist/composables/pseudoLocale.d.ts +15 -0
- package/dist/composables/pseudoLocale.js +96 -0
- package/dist/composables/scroll.js +5 -3
- package/dist/composables/useClipboard.d.ts +4 -1
- package/dist/composables/useClipboard.js +12 -2
- package/dist/composables/useField.d.ts +8 -0
- package/dist/composables/useField.js +5 -0
- package/dist/composables/useForm.js +19 -5
- package/dist/composables/useInView.d.ts +11 -0
- package/dist/composables/useInView.js +39 -0
- package/dist/composables/useLoadingGate.d.ts +8 -0
- package/dist/composables/useLoadingGate.js +38 -0
- package/dist/composables/useLpConfig.d.ts +10 -0
- package/dist/composables/useLpConfig.js +11 -1
- package/dist/composables/useMediaQuery.js +3 -1
- package/dist/composables/useNow.d.ts +16 -0
- package/dist/composables/useNow.js +39 -0
- package/dist/composables/usePersisted.js +14 -7
- package/dist/composables/usePillTransition.d.ts +5 -2
- package/dist/composables/usePillTransition.js +4 -3
- package/dist/composables/usePointerFrame.d.ts +18 -0
- package/dist/composables/usePointerFrame.js +31 -0
- package/dist/composables/useReducedMotion.d.ts +2 -0
- package/dist/composables/useReducedMotion.js +7 -0
- package/dist/composables/useRepeater.d.ts +17 -0
- package/dist/composables/useRepeater.js +31 -0
- package/dist/composables/useResizeObserver.d.ts +8 -0
- package/dist/composables/useResizeObserver.js +33 -0
- package/dist/composables/useRevealedValue.d.ts +31 -0
- package/dist/composables/useRevealedValue.js +26 -0
- package/dist/composables/useScramble.d.ts +42 -0
- package/dist/composables/useScramble.js +76 -0
- package/dist/composables/useShift.js +2 -10
- package/dist/composables/useSpotlight.d.ts +18 -0
- package/dist/composables/useSpotlight.js +53 -0
- package/dist/composables/useTilt.js +26 -18
- package/dist/composables/useTween.d.ts +43 -0
- package/dist/composables/useTween.js +69 -0
- package/dist/composables/useView.d.ts +18 -0
- package/dist/composables/useView.js +61 -0
- package/dist/icons-all.js +1 -1
- package/dist/index.d.ts +98 -1
- package/dist/index.js +262 -104
- package/dist/theme/define.d.ts +12 -0
- package/dist/theme/studio.d.ts +90 -0
- package/package.json +5 -2
- package/src/component-names.ts +33 -0
- package/src/components/AttentionDot.vue +27 -0
- package/src/components/FieldWrapper.vue +38 -0
- package/src/components/LayoutNode.vue +5 -9
- package/src/components/LegendSwatch.vue +15 -0
- package/src/components/LoaderMark.vue +90 -0
- package/src/components/LpActionBar.vue +12 -20
- package/src/components/LpActivityLine.vue +186 -0
- package/src/components/LpAlert.vue +54 -24
- package/src/components/LpAppShell.vue +7 -11
- package/src/components/LpAutocomplete.vue +16 -14
- package/src/components/LpAvatar.vue +17 -2
- package/src/components/LpBadge.vue +77 -13
- package/src/components/LpBreadcrumbs.vue +101 -35
- package/src/components/LpButton.vue +15 -3
- package/src/components/LpCard.vue +30 -7
- package/src/components/LpChart.vue +143 -154
- package/src/components/LpCheckbox.vue +10 -4
- package/src/components/LpCodeBlock.vue +11 -19
- package/src/components/LpCodeDisplay.vue +228 -0
- package/src/components/LpCollapse.vue +162 -0
- package/src/components/LpColorPicker.vue +10 -1
- package/src/components/LpCommandPalette.vue +38 -24
- package/src/components/LpContextMenu.vue +10 -1
- package/src/components/LpCopyButton.vue +185 -0
- package/src/components/LpCountdown.vue +308 -0
- package/src/components/LpDataList.vue +154 -0
- package/src/components/LpDatePicker.vue +53 -104
- package/src/components/LpDateRangePicker.vue +49 -95
- package/src/components/LpDisclosure.vue +58 -36
- package/src/components/LpDock.vue +274 -0
- package/src/components/LpDrawer.vue +10 -1
- package/src/components/LpDropdownMenu.vue +10 -1
- package/src/components/LpDropzone.vue +34 -13
- package/src/components/LpEditable.vue +293 -0
- package/src/components/LpFileTree.vue +5 -1
- package/src/components/LpFileTreeNode.vue +25 -50
- package/src/components/LpFormField.vue +22 -3
- package/src/components/LpFrame.vue +200 -0
- package/src/components/LpGauge.vue +287 -0
- package/src/components/LpGlowBorder.vue +60 -0
- package/src/components/LpHintExample.vue +9 -32
- package/src/components/LpHintLayer.vue +13 -3
- package/src/components/LpHoverCard.vue +175 -0
- package/src/components/LpIdenticon.vue +69 -0
- package/src/components/LpImageEditor.vue +15 -18
- package/src/components/LpInfraNode.vue +27 -16
- package/src/components/LpInput.vue +30 -16
- package/src/components/LpLightbox.vue +44 -23
- package/src/components/LpLoader.vue +145 -0
- package/src/components/LpLogViewer.vue +311 -82
- package/src/components/LpMagnetic.vue +97 -0
- package/src/components/LpMapPicker.vue +26 -28
- package/src/components/LpMasonry.vue +247 -0
- package/src/components/LpModal.vue +10 -1
- package/src/components/LpNotificationBell.vue +33 -49
- package/src/components/LpNumberField.vue +79 -14
- package/src/components/LpNumberFlow.vue +10 -35
- package/src/components/LpOtpInput.vue +7 -2
- package/src/components/LpPagination.vue +38 -4
- package/src/components/LpPalettePreview.vue +2 -7
- package/src/components/LpPasswordInput.vue +16 -14
- package/src/components/LpPhoneInput.vue +12 -3
- package/src/components/LpPie.vue +197 -36
- package/src/components/LpPipeline.vue +366 -0
- package/src/components/LpPopover.vue +10 -1
- package/src/components/LpProgress.vue +22 -84
- package/src/components/LpQuota.vue +197 -0
- package/src/components/LpRangeSlider.vue +5 -1
- package/src/components/LpRelativeTime.vue +90 -0
- package/src/components/LpRepeater.vue +80 -0
- package/src/components/LpRevealOnScroll.vue +125 -0
- package/src/components/LpScramble.vue +107 -0
- package/src/components/LpSecretField.vue +313 -0
- package/src/components/LpSegmented.vue +3 -10
- package/src/components/LpSelect.vue +78 -64
- package/src/components/LpShaderBackdrop.vue +434 -0
- package/src/components/LpShinyText.vue +139 -0
- package/src/components/LpSidebar.vue +2 -0
- package/src/components/LpSlider.vue +5 -1
- package/src/components/LpSparkline.vue +55 -37
- package/src/components/LpSpotlight.vue +51 -0
- package/src/components/LpStat.vue +6 -2
- package/src/components/LpStatus.vue +127 -0
- package/src/components/LpStepMark.vue +138 -0
- package/src/components/LpStepper.vue +37 -43
- package/src/components/LpSwap.vue +2 -2
- package/src/components/LpSwitch.vue +15 -22
- package/src/components/LpTable.vue +47 -63
- package/src/components/LpTableFilter.vue +1 -0
- package/src/components/LpTableOfContents.vue +53 -29
- package/src/components/LpTabs.vue +10 -21
- package/src/components/LpTagsInput.vue +53 -37
- package/src/components/LpTextReveal.vue +236 -0
- package/src/components/LpTextarea.vue +11 -11
- package/src/components/LpThemeStudio.vue +216 -0
- package/src/components/LpThemeStudioSection.vue +16 -0
- package/src/components/LpThemeSwitcher.vue +156 -47
- package/src/components/LpTimeField.vue +9 -1
- package/src/components/LpToaster.vue +63 -83
- package/src/components/LpTooltip.vue +10 -1
- package/src/components/LpTour.vue +24 -13
- package/src/components/LpTruncate.vue +135 -0
- package/src/components/LpTypewriter.vue +236 -0
- package/src/components/LpUptimeBar.vue +6 -5
- package/src/components/LpVideoBackdrop.vue +15 -13
- package/src/components/OptionContent.vue +17 -0
- package/src/components/PickerField.vue +58 -0
- package/src/components/RevealToggle.vue +51 -0
- package/src/components/StepConnector.vue +54 -0
- package/src/components/TourCard.vue +29 -16
- package/src/components/badge.ts +8 -0
- package/src/components/chart.ts +8 -23
- package/src/components/dateRange.ts +25 -0
- package/src/components/dock.ts +31 -0
- package/src/components/dropdown.ts +15 -3
- package/src/components/fieldText.ts +95 -0
- package/src/components/fileTree.ts +19 -21
- package/src/components/format.ts +136 -0
- package/src/components/identicon.ts +160 -0
- package/src/components/masonry.ts +73 -0
- package/src/components/meter.ts +122 -0
- package/src/components/otp.ts +14 -3
- package/src/components/pipeline.ts +101 -0
- package/src/components/quota.ts +111 -0
- package/src/components/relativeTime.ts +118 -0
- package/src/components/reveal.ts +56 -0
- package/src/components/scramble.ts +138 -0
- package/src/components/shaderBackdrop.ts +208 -0
- package/src/components/slider.ts +30 -0
- package/src/components/slotText.ts +13 -0
- package/src/components/status.ts +46 -0
- package/src/components/tableFacets.ts +25 -0
- package/src/components/textSplit.ts +55 -0
- package/src/components/timeSpan.ts +183 -0
- package/src/components/tone.ts +144 -0
- package/src/components/tour.ts +3 -2
- package/src/components/typewriter.ts +104 -0
- package/src/components/videoBackdrop.ts +7 -6
- package/src/composables/easing.ts +66 -1
- package/src/composables/pseudoLocale.ts +105 -0
- package/src/composables/scroll.ts +6 -3
- package/src/composables/useClipboard.ts +25 -3
- package/src/composables/useField.ts +12 -0
- package/src/composables/useForm.ts +27 -6
- package/src/composables/useInView.ts +61 -0
- package/src/composables/useLoadingGate.ts +63 -0
- package/src/composables/useLpConfig.ts +20 -1
- package/src/composables/useMediaQuery.ts +6 -2
- package/src/composables/useNow.ts +84 -0
- package/src/composables/usePersisted.ts +19 -8
- package/src/composables/usePillTransition.ts +21 -13
- package/src/composables/usePointerFrame.ts +72 -0
- package/src/composables/useReducedMotion.ts +22 -0
- package/src/composables/useRepeater.ts +44 -0
- package/src/composables/useResizeObserver.ts +59 -0
- package/src/composables/useRevealedValue.ts +84 -0
- package/src/composables/useScramble.ts +152 -0
- package/src/composables/useShift.ts +10 -16
- package/src/composables/useSpotlight.ts +82 -0
- package/src/composables/useTilt.ts +40 -23
- package/src/composables/useTween.ts +149 -0
- package/src/composables/useView.ts +93 -0
- package/src/index.css +1 -0
- package/src/index.ts +143 -1
- package/src/kit-icons.ts +1 -1
- package/src/theme/define.ts +65 -0
- package/src/theme/studio.ts +202 -0
- package/src/tokens/effects.css +151 -0
- package/src/tokens/tokens.css +131 -39
- package/src/tokens/utilities.css +81 -0
- package/dist/assets/LpTabs-Bk7v4bZz.css +0 -18
- package/dist/chunks/LpAlert-BdvxvcWE.js +0 -85
- package/dist/chunks/LpBadge-Fe0D1bYx.js +0 -62
- package/dist/chunks/LpBreadcrumbs-rzOKkLiI.js +0 -98
- package/dist/chunks/LpDatePicker-BMfM454Y.js +0 -243
- package/dist/chunks/LpDateRangePicker-CNb9X3eL.js +0 -195
- package/dist/chunks/LpNumberField-DO1ufKvE.js +0 -107
- package/dist/chunks/LpStepper-C2slwObu.js +0 -90
- package/dist/chunks/LpSwitch-CZy9_IoA.js +0 -132
- package/dist/chunks/LpThemeSwitcher-CDoziW0z.js +0 -166
- package/dist/chunks/TourCard-BKI7X9-r.js +0 -105
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { defineComponent, computed, ref, watch, onBeforeUnmount, openBlock, createElementBlock, mergeProps, unref, Fragment, renderList, createVNode, withCtx, createBlock, resolveDynamicComponent, renderSlot, createCommentVNode, createElementVNode, normalizeClass } from "vue";
|
|
2
|
+
import { prefersReducedMotion } from "../composables/easing.js";
|
|
3
|
+
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
4
|
+
import { springStep, springSettled } from "../composables/usePillTransition.js";
|
|
5
|
+
import { useRovingFocus } from "../composables/useRovingFocus.js";
|
|
6
|
+
import { dockSize } from "./dock.js";
|
|
7
|
+
import { _ as _sfc_main$2 } from "../chunks/LpIcon-HJP5xMz4.js";
|
|
8
|
+
import { _ as _sfc_main$1 } from "../chunks/LpTooltip-Cz8SQwRt.js";
|
|
9
|
+
import { _ as _export_sfc } from "../chunks/_plugin-vue_export-helper-1tPrXgE0.js";
|
|
10
|
+
import '../assets/LpDock-Cbh0wQUv.css';const _hoisted_1 = ["aria-orientation", "data-orientation"];
|
|
11
|
+
const __default__ = { inheritAttrs: false };
|
|
12
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
13
|
+
...__default__,
|
|
14
|
+
__name: "LpDock",
|
|
15
|
+
props: {
|
|
16
|
+
items: {},
|
|
17
|
+
active: {},
|
|
18
|
+
orientation: { default: "horizontal" },
|
|
19
|
+
size: { default: 44 },
|
|
20
|
+
magnify: { default: 72 },
|
|
21
|
+
reach: { default: 150 },
|
|
22
|
+
tooltipSide: {},
|
|
23
|
+
focusAt: { default: null }
|
|
24
|
+
},
|
|
25
|
+
emits: ["select"],
|
|
26
|
+
setup(__props, { emit: __emit }) {
|
|
27
|
+
const props = __props;
|
|
28
|
+
const emit = __emit;
|
|
29
|
+
const vertical = computed(() => props.orientation === "vertical");
|
|
30
|
+
const { class: classes, attrs: rest } = useMergedAttrs(
|
|
31
|
+
() => [
|
|
32
|
+
"lp-skin-panel inline-flex rounded-card border border-line bg-surface-raised p-1.5 gap-1.5",
|
|
33
|
+
vertical.value ? "flex-col items-start" : "flex-row items-end"
|
|
34
|
+
].join(" ")
|
|
35
|
+
);
|
|
36
|
+
const activeIds = computed(() => new Set(Array.isArray(props.active) ? props.active : props.active ? [props.active] : []));
|
|
37
|
+
function select(id) {
|
|
38
|
+
const item = props.items.find((entry) => entry.id === id);
|
|
39
|
+
if (item && !item.disabled) emit("select", id, item);
|
|
40
|
+
}
|
|
41
|
+
const roving = useRovingFocus(
|
|
42
|
+
() => props.items.map((item) => ({ id: item.id, label: item.label, disabled: item.disabled })),
|
|
43
|
+
{ orientation: props.orientation, onActivate: select }
|
|
44
|
+
);
|
|
45
|
+
const buttons = /* @__PURE__ */ new Map();
|
|
46
|
+
const springs = /* @__PURE__ */ new Map();
|
|
47
|
+
const bar = ref(null);
|
|
48
|
+
let pointer = null;
|
|
49
|
+
let frame = 0;
|
|
50
|
+
let lastTime = 0;
|
|
51
|
+
function setButton(id, el) {
|
|
52
|
+
if (el instanceof HTMLElement) buttons.set(id, el);
|
|
53
|
+
else buttons.delete(id);
|
|
54
|
+
}
|
|
55
|
+
function centreOf(el) {
|
|
56
|
+
const rect = el.getBoundingClientRect();
|
|
57
|
+
return vertical.value ? rect.top + rect.height / 2 : rect.left + rect.width / 2;
|
|
58
|
+
}
|
|
59
|
+
function targetFor(el) {
|
|
60
|
+
if (pointer === null) return props.size;
|
|
61
|
+
return dockSize(props.size, Math.max(props.size, props.magnify), pointer - centreOf(el), props.reach);
|
|
62
|
+
}
|
|
63
|
+
function step(time) {
|
|
64
|
+
frame = 0;
|
|
65
|
+
const dt = lastTime ? (time - lastTime) / 1e3 : 1 / 60;
|
|
66
|
+
lastTime = time;
|
|
67
|
+
let moving = false;
|
|
68
|
+
const targets = /* @__PURE__ */ new Map();
|
|
69
|
+
for (const [id, el] of buttons) targets.set(id, targetFor(el));
|
|
70
|
+
for (const [id, el] of buttons) {
|
|
71
|
+
const target = targets.get(id);
|
|
72
|
+
const next = springStep(springs.get(id) ?? { value: props.size, velocity: 0 }, target, "pill", dt);
|
|
73
|
+
const settled = springSettled(next, target);
|
|
74
|
+
const value = settled ? target : next.value;
|
|
75
|
+
springs.set(id, settled ? { value: target, velocity: 0 } : next);
|
|
76
|
+
el.style.setProperty("--lp-dock-size", `${value.toFixed(2)}px`);
|
|
77
|
+
if (!settled) moving = true;
|
|
78
|
+
}
|
|
79
|
+
if (moving) frame = requestAnimationFrame(step);
|
|
80
|
+
else lastTime = 0;
|
|
81
|
+
}
|
|
82
|
+
function kick() {
|
|
83
|
+
if (!frame) frame = requestAnimationFrame(step);
|
|
84
|
+
}
|
|
85
|
+
function magnifying() {
|
|
86
|
+
return props.magnify > props.size && !prefersReducedMotion();
|
|
87
|
+
}
|
|
88
|
+
function onPointerMove(event) {
|
|
89
|
+
if (event.pointerType !== "mouse" || props.focusAt !== null || !magnifying()) return;
|
|
90
|
+
pointer = vertical.value ? event.clientY : event.clientX;
|
|
91
|
+
kick();
|
|
92
|
+
}
|
|
93
|
+
function onPointerLeave() {
|
|
94
|
+
if (props.focusAt !== null) return;
|
|
95
|
+
pointer = null;
|
|
96
|
+
kick();
|
|
97
|
+
}
|
|
98
|
+
function onFocusIn(event) {
|
|
99
|
+
const target = event.target;
|
|
100
|
+
if (!target?.matches(":focus-visible") || props.focusAt !== null || !magnifying()) return;
|
|
101
|
+
pointer = centreOf(target);
|
|
102
|
+
kick();
|
|
103
|
+
}
|
|
104
|
+
function onFocusOut(event) {
|
|
105
|
+
if (bar.value?.contains(event.relatedTarget) || props.focusAt !== null) return;
|
|
106
|
+
pointer = null;
|
|
107
|
+
kick();
|
|
108
|
+
}
|
|
109
|
+
watch(
|
|
110
|
+
() => props.focusAt,
|
|
111
|
+
(at) => {
|
|
112
|
+
if (at === null) {
|
|
113
|
+
pointer = null;
|
|
114
|
+
} else if (bar.value && magnifying()) {
|
|
115
|
+
const rect = bar.value.getBoundingClientRect();
|
|
116
|
+
pointer = (vertical.value ? rect.top : rect.left) + at;
|
|
117
|
+
}
|
|
118
|
+
kick();
|
|
119
|
+
},
|
|
120
|
+
{ flush: "post" }
|
|
121
|
+
);
|
|
122
|
+
onBeforeUnmount(() => {
|
|
123
|
+
if (frame) cancelAnimationFrame(frame);
|
|
124
|
+
});
|
|
125
|
+
const dotSide = computed(() => vertical.value ? "left" : "bottom");
|
|
126
|
+
const tipSide = computed(() => props.tooltipSide ?? (vertical.value ? "right" : "top"));
|
|
127
|
+
return (_ctx, _cache) => {
|
|
128
|
+
return openBlock(), createElementBlock("div", mergeProps({
|
|
129
|
+
ref: (el) => {
|
|
130
|
+
bar.value = el;
|
|
131
|
+
unref(roving).setContainer(el);
|
|
132
|
+
},
|
|
133
|
+
role: "toolbar",
|
|
134
|
+
"aria-orientation": __props.orientation,
|
|
135
|
+
class: unref(classes),
|
|
136
|
+
style: { "--lp-dock-rest": `${__props.size}px` },
|
|
137
|
+
"data-orientation": __props.orientation
|
|
138
|
+
}, unref(rest), {
|
|
139
|
+
onKeydown: _cache[0] || (_cache[0] = //@ts-ignore
|
|
140
|
+
(...args) => unref(roving).onKeydown && unref(roving).onKeydown(...args)),
|
|
141
|
+
onPointermove: onPointerMove,
|
|
142
|
+
onPointerleave: onPointerLeave,
|
|
143
|
+
onFocusin: onFocusIn,
|
|
144
|
+
onFocusout: onFocusOut
|
|
145
|
+
}), [
|
|
146
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item) => {
|
|
147
|
+
return openBlock(), createElementBlock("div", {
|
|
148
|
+
key: item.id,
|
|
149
|
+
class: "relative flex shrink-0 items-center justify-center"
|
|
150
|
+
}, [
|
|
151
|
+
createVNode(_sfc_main$1, {
|
|
152
|
+
content: item.label,
|
|
153
|
+
label: "",
|
|
154
|
+
side: tipSide.value,
|
|
155
|
+
delay: 0
|
|
156
|
+
}, {
|
|
157
|
+
default: withCtx(() => [
|
|
158
|
+
(openBlock(), createBlock(resolveDynamicComponent(item.href && !item.disabled ? "a" : "button"), mergeProps({
|
|
159
|
+
ref_for: true,
|
|
160
|
+
ref: (el) => setButton(item.id, el),
|
|
161
|
+
type: item.href ? void 0 : "button",
|
|
162
|
+
href: item.disabled ? void 0 : item.href,
|
|
163
|
+
disabled: item.href ? void 0 : item.disabled,
|
|
164
|
+
"aria-disabled": item.disabled || void 0,
|
|
165
|
+
"aria-current": activeIds.value.has(item.id) ? "true" : void 0
|
|
166
|
+
}, { ref_for: true }, unref(roving).itemProps(item.id), {
|
|
167
|
+
class: "lp-dock-item flex items-center justify-center rounded-control bg-surface-soft text-ink outline-none transition-colors duration-(--duration-fast) hover:bg-surface-hover focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 aria-disabled:opacity-50",
|
|
168
|
+
onClick: ($event) => select(item.id)
|
|
169
|
+
}), {
|
|
170
|
+
default: withCtx(() => [
|
|
171
|
+
renderSlot(_ctx.$slots, "icon", {
|
|
172
|
+
item,
|
|
173
|
+
active: activeIds.value.has(item.id)
|
|
174
|
+
}, () => [
|
|
175
|
+
item.icon ? (openBlock(), createBlock(_sfc_main$2, {
|
|
176
|
+
key: 0,
|
|
177
|
+
name: item.icon,
|
|
178
|
+
class: "size-[52%]",
|
|
179
|
+
"aria-hidden": "true"
|
|
180
|
+
}, null, 8, ["name"])) : createCommentVNode("", true)
|
|
181
|
+
], true)
|
|
182
|
+
]),
|
|
183
|
+
_: 2
|
|
184
|
+
}, 1040, ["type", "href", "disabled", "aria-disabled", "aria-current", "onClick"]))
|
|
185
|
+
]),
|
|
186
|
+
_: 2
|
|
187
|
+
}, 1032, ["content", "side"]),
|
|
188
|
+
createElementVNode("span", {
|
|
189
|
+
"aria-hidden": "true",
|
|
190
|
+
class: normalizeClass(["pointer-events-none absolute size-1 rounded-pill bg-brand transition-[opacity,scale] duration-(--duration-medium) ease-(--ease-emphasized)", [
|
|
191
|
+
dotSide.value === "bottom" ? "-bottom-1 left-1/2 -translate-x-1/2" : "-left-1 top-1/2 -translate-y-1/2",
|
|
192
|
+
activeIds.value.has(item.id) ? "opacity-100 scale-100" : "opacity-0 scale-0"
|
|
193
|
+
]])
|
|
194
|
+
}, null, 2)
|
|
195
|
+
]);
|
|
196
|
+
}), 128))
|
|
197
|
+
], 16, _hoisted_1);
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
const LpDock = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-0f41b35e"]]);
|
|
202
|
+
export {
|
|
203
|
+
LpDock as default
|
|
204
|
+
};
|
|
@@ -47,10 +47,14 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
|
|
|
47
47
|
keys: string;
|
|
48
48
|
invalid: string;
|
|
49
49
|
}>;
|
|
50
|
+
} & {
|
|
51
|
+
linking?: boolean;
|
|
50
52
|
}, {
|
|
51
53
|
browse: () => void | undefined;
|
|
52
54
|
link: () => void;
|
|
53
|
-
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
55
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
56
|
+
"update:linking": (value: boolean) => any;
|
|
57
|
+
} & {
|
|
54
58
|
link: (url: string) => any;
|
|
55
59
|
files: (files: File[]) => any;
|
|
56
60
|
rejected: (reason: {
|
|
@@ -104,9 +108,12 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
|
|
|
104
108
|
keys: string;
|
|
105
109
|
invalid: string;
|
|
106
110
|
}>;
|
|
111
|
+
} & {
|
|
112
|
+
linking?: boolean;
|
|
107
113
|
}> & Readonly<{
|
|
108
114
|
onLink?: ((url: string) => any) | undefined;
|
|
109
115
|
onFiles?: ((files: File[]) => any) | undefined;
|
|
116
|
+
"onUpdate:linking"?: ((value: boolean) => any) | undefined;
|
|
110
117
|
onRejected?: ((reason: {
|
|
111
118
|
file: File;
|
|
112
119
|
cause: "type" | "size";
|
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import { defineComponent, ref, computed, watch, useId, onMounted, onBeforeUnmount, openBlock, createElementBlock, withModifiers, normalizeStyle, normalizeClass, unref, createElementVNode, mergeProps, createVNode, Transition, withCtx, renderSlot, toDisplayString, createCommentVNode, createTextVNode, Fragment, nextTick } from "vue";
|
|
1
|
+
import { defineComponent, ref, computed, useModel, watch, useId, onMounted, onBeforeUnmount, openBlock, createElementBlock, withModifiers, normalizeStyle, normalizeClass, unref, createElementVNode, mergeProps, createVNode, Transition, withCtx, renderSlot, toDisplayString, createCommentVNode, createTextVNode, Fragment, mergeModels, nextTick } from "vue";
|
|
2
2
|
import { HINT_SIGNALS, noteDropzone } from "../composables/useHintSystem.js";
|
|
3
3
|
import { hints } from "../composables/useHints.js";
|
|
4
4
|
import { useLabels } from "../composables/useLpConfig.js";
|
|
5
5
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
6
6
|
import { useReveal } from "../composables/useReveal.js";
|
|
7
7
|
import { PopoverRoot, PopoverAnchor, PopoverPortal, PopoverContent } from "reka-ui";
|
|
8
|
-
import { _ as _sfc_main$1 } from "../chunks/DropzoneLinkField-
|
|
8
|
+
import { _ as _sfc_main$1 } from "../chunks/DropzoneLinkField-Bw8Flkhk.js";
|
|
9
9
|
import { POPOVER_PANEL } from "./dropdown.js";
|
|
10
|
-
import { _ as _sfc_main$2 } from "../chunks/LpIcon-
|
|
10
|
+
import { _ as _sfc_main$2 } from "../chunks/LpIcon-HJP5xMz4.js";
|
|
11
|
+
import { usePortalTarget, useOutsideGuard } from "../composables/useView.js";
|
|
11
12
|
import { _ as _export_sfc } from "../chunks/_plugin-vue_export-helper-1tPrXgE0.js";
|
|
12
|
-
import '../assets/LpDropzone-
|
|
13
|
+
import '../assets/LpDropzone-Bb1vBTeU.css';const _hoisted_1 = ["aria-disabled"];
|
|
13
14
|
const _hoisted_2 = ["disabled", "aria-labelledby"];
|
|
14
15
|
const _hoisted_3 = ["id"];
|
|
15
16
|
const _hoisted_4 = {
|
|
@@ -26,7 +27,7 @@ const __default__ = { inheritAttrs: false };
|
|
|
26
27
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
27
28
|
...__default__,
|
|
28
29
|
__name: "LpDropzone",
|
|
29
|
-
props: {
|
|
30
|
+
props: /* @__PURE__ */ mergeModels({
|
|
30
31
|
accept: { default: "" },
|
|
31
32
|
multiple: { type: Boolean, default: false },
|
|
32
33
|
disabled: { type: Boolean },
|
|
@@ -40,8 +41,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
40
41
|
animate: { type: Boolean, default: true },
|
|
41
42
|
links: { type: Boolean },
|
|
42
43
|
labels: {}
|
|
43
|
-
},
|
|
44
|
-
|
|
44
|
+
}, {
|
|
45
|
+
"linking": { type: Boolean, ...{ default: false } },
|
|
46
|
+
"linkingModifiers": {}
|
|
47
|
+
}),
|
|
48
|
+
emits: /* @__PURE__ */ mergeModels(["files", "rejected", "link"], ["update:linking"]),
|
|
45
49
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
46
50
|
const props = __props;
|
|
47
51
|
const TONES = {
|
|
@@ -154,7 +158,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
154
158
|
direct();
|
|
155
159
|
emit("link", url);
|
|
156
160
|
}
|
|
157
|
-
const linking =
|
|
161
|
+
const linking = useModel(__props, "linking");
|
|
158
162
|
const draft = ref("");
|
|
159
163
|
const invalid = ref(false);
|
|
160
164
|
const linkField = ref(null);
|
|
@@ -162,19 +166,32 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
162
166
|
const floating = ref(false);
|
|
163
167
|
const pressTarget = ref(null);
|
|
164
168
|
const heldHeight = ref(null);
|
|
165
|
-
function
|
|
166
|
-
if (!props.links || props.disabled) return;
|
|
169
|
+
function measure() {
|
|
167
170
|
const zone = revealAnchor.value;
|
|
168
171
|
floating.value = (zone?.offsetWidth ?? 0) < IN_PLACE_MIN;
|
|
169
172
|
heldHeight.value = floating.value ? null : zone?.offsetHeight ?? null;
|
|
173
|
+
}
|
|
174
|
+
let byUser = false;
|
|
175
|
+
function startLink() {
|
|
176
|
+
if (!props.links || props.disabled) return;
|
|
177
|
+
byUser = true;
|
|
178
|
+
measure();
|
|
170
179
|
linking.value = true;
|
|
171
180
|
invalid.value = false;
|
|
172
181
|
}
|
|
182
|
+
watch(
|
|
183
|
+
linking,
|
|
184
|
+
(open) => {
|
|
185
|
+
if (open && !byUser) measure();
|
|
186
|
+
if (!open) byUser = false;
|
|
187
|
+
},
|
|
188
|
+
{ flush: "sync" }
|
|
189
|
+
);
|
|
173
190
|
function contentBack() {
|
|
174
191
|
if (!linking.value) heldHeight.value = null;
|
|
175
192
|
}
|
|
176
193
|
watch(linkField, (field) => {
|
|
177
|
-
if (field && linking.value) field.focus();
|
|
194
|
+
if (field && linking.value && byUser) field.focus();
|
|
178
195
|
});
|
|
179
196
|
function stopLink(refocus = true) {
|
|
180
197
|
linking.value = false;
|
|
@@ -260,6 +277,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
260
277
|
over.value ? "lp-dropzone--over" : "",
|
|
261
278
|
props.animate && !revealed.value ? "lp-dropzone--waiting" : ""
|
|
262
279
|
].join(" "));
|
|
280
|
+
const portalTo = usePortalTarget();
|
|
281
|
+
const guardOutside = useOutsideGuard();
|
|
263
282
|
return (_ctx, _cache) => {
|
|
264
283
|
return openBlock(), createElementBlock("div", {
|
|
265
284
|
ref_key: "revealAnchor",
|
|
@@ -363,9 +382,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
363
382
|
createVNode(unref(PopoverAnchor), {
|
|
364
383
|
reference: unref(revealAnchor) ?? void 0
|
|
365
384
|
}, null, 8, ["reference"]),
|
|
366
|
-
createVNode(unref(PopoverPortal),
|
|
385
|
+
createVNode(unref(PopoverPortal), { to: unref(portalTo) }, {
|
|
367
386
|
default: withCtx(() => [
|
|
368
387
|
createVNode(unref(PopoverContent), {
|
|
388
|
+
onInteractOutside: unref(guardOutside),
|
|
389
|
+
onEscapeKeyDown: unref(guardOutside),
|
|
369
390
|
"collision-padding": 8,
|
|
370
391
|
side: "bottom",
|
|
371
392
|
align: "start",
|
|
@@ -387,10 +408,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
387
408
|
}, null, 8, ["modelValue", "invalid", "labels"])
|
|
388
409
|
]),
|
|
389
410
|
_: 1
|
|
390
|
-
}, 8, ["class"])
|
|
411
|
+
}, 8, ["onInteractOutside", "onEscapeKeyDown", "class"])
|
|
391
412
|
]),
|
|
392
413
|
_: 1
|
|
393
|
-
})
|
|
414
|
+
}, 8, ["to"])
|
|
394
415
|
]),
|
|
395
416
|
_: 1
|
|
396
417
|
}, 8, ["open"]),
|
|
@@ -410,7 +431,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
410
431
|
};
|
|
411
432
|
}
|
|
412
433
|
});
|
|
413
|
-
const LpDropzone = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
434
|
+
const LpDropzone = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-46c9a55a"]]);
|
|
414
435
|
export {
|
|
415
436
|
LpDropzone as default
|
|
416
437
|
};
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
declare const _default: typeof __VLS_export;
|
|
2
|
+
export default _default;
|
|
3
|
+
export interface EditableLabels extends Record<string, string> {
|
|
4
|
+
edit: string;
|
|
5
|
+
empty: string;
|
|
6
|
+
saving: string;
|
|
7
|
+
failed: string;
|
|
8
|
+
}
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<{
|
|
10
|
+
modelValue?: string;
|
|
11
|
+
/** What the text is, for assistive tech ("Server name"). */
|
|
12
|
+
label?: string;
|
|
13
|
+
/** Shown when the text is empty; clicking it starts editing. */
|
|
14
|
+
placeholder?: string;
|
|
15
|
+
/** A textarea; Enter adds a line and Ctrl/⌘+Enter commits. */
|
|
16
|
+
multiline?: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Persists the new text. May be async and may throw: a throw reopens the
|
|
19
|
+
* field with the typed text and shows the error's message.
|
|
20
|
+
*/
|
|
21
|
+
save?: (value: string) => unknown;
|
|
22
|
+
/**
|
|
23
|
+
* Checks the text before saving. Return an error message to refuse it
|
|
24
|
+
* (the field stays open with the message under it), anything else to accept.
|
|
25
|
+
*/
|
|
26
|
+
validate?: (value: string) => string | true | void | null | undefined;
|
|
27
|
+
/** Trim spaces around the text on commit. */
|
|
28
|
+
trim?: boolean;
|
|
29
|
+
/** Refuse an empty commit (with the `required` message) instead of saving "". */
|
|
30
|
+
required?: boolean;
|
|
31
|
+
maxlength?: number;
|
|
32
|
+
disabled?: boolean;
|
|
33
|
+
/** Shown as text, never editable — for a viewer without the right to change it. */
|
|
34
|
+
readonly?: boolean;
|
|
35
|
+
size?: "sm" | "md" | "lg";
|
|
36
|
+
labels?: Partial<EditableLabels & {
|
|
37
|
+
required: string;
|
|
38
|
+
}>;
|
|
39
|
+
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
40
|
+
edit: () => any;
|
|
41
|
+
cancel: () => any;
|
|
42
|
+
error: (error: unknown) => any;
|
|
43
|
+
"update:modelValue": (value: string) => any;
|
|
44
|
+
saved: (value: string) => any;
|
|
45
|
+
}, string, import("vue").PublicProps, Readonly<{
|
|
46
|
+
modelValue?: string;
|
|
47
|
+
/** What the text is, for assistive tech ("Server name"). */
|
|
48
|
+
label?: string;
|
|
49
|
+
/** Shown when the text is empty; clicking it starts editing. */
|
|
50
|
+
placeholder?: string;
|
|
51
|
+
/** A textarea; Enter adds a line and Ctrl/⌘+Enter commits. */
|
|
52
|
+
multiline?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Persists the new text. May be async and may throw: a throw reopens the
|
|
55
|
+
* field with the typed text and shows the error's message.
|
|
56
|
+
*/
|
|
57
|
+
save?: (value: string) => unknown;
|
|
58
|
+
/**
|
|
59
|
+
* Checks the text before saving. Return an error message to refuse it
|
|
60
|
+
* (the field stays open with the message under it), anything else to accept.
|
|
61
|
+
*/
|
|
62
|
+
validate?: (value: string) => string | true | void | null | undefined;
|
|
63
|
+
/** Trim spaces around the text on commit. */
|
|
64
|
+
trim?: boolean;
|
|
65
|
+
/** Refuse an empty commit (with the `required` message) instead of saving "". */
|
|
66
|
+
required?: boolean;
|
|
67
|
+
maxlength?: number;
|
|
68
|
+
disabled?: boolean;
|
|
69
|
+
/** Shown as text, never editable — for a viewer without the right to change it. */
|
|
70
|
+
readonly?: boolean;
|
|
71
|
+
size?: "sm" | "md" | "lg";
|
|
72
|
+
labels?: Partial<EditableLabels & {
|
|
73
|
+
required: string;
|
|
74
|
+
}>;
|
|
75
|
+
}> & Readonly<{
|
|
76
|
+
onEdit?: (() => any) | undefined;
|
|
77
|
+
onCancel?: (() => any) | undefined;
|
|
78
|
+
onError?: ((error: unknown) => any) | undefined;
|
|
79
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
80
|
+
onSaved?: ((value: string) => any) | undefined;
|
|
81
|
+
}>, {
|
|
82
|
+
size: "sm" | "md" | "lg";
|
|
83
|
+
trim: boolean;
|
|
84
|
+
modelValue: string;
|
|
85
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
declare const _default: typeof __VLS_export;
|
|
2
|
+
export default _default;
|
|
3
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
|
|
4
|
+
/** Fixed height (px or any CSS length). Without it the frame grows with its content. */
|
|
5
|
+
height?: number | string;
|
|
6
|
+
/** Read by assistive technology for the frame as a whole. */
|
|
7
|
+
title?: string;
|
|
8
|
+
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
|
|
9
|
+
/** Fixed height (px or any CSS length). Without it the frame grows with its content. */
|
|
10
|
+
height?: number | string;
|
|
11
|
+
/** Read by assistive technology for the frame as a whole. */
|
|
12
|
+
title?: string;
|
|
13
|
+
}> & Readonly<{}>, {
|
|
14
|
+
title: string;
|
|
15
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
|
|
16
|
+
default?: (props: {}) => any;
|
|
17
|
+
}>;
|
|
18
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
19
|
+
new (): {
|
|
20
|
+
$slots: S;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { type MeterThreshold, type MeterTone } from "./meter";
|
|
2
|
+
export type GaugeLabels = {
|
|
3
|
+
/** Appended to the spoken value when the reading is in a warning step. */
|
|
4
|
+
warning: string;
|
|
5
|
+
/** Appended to the spoken value when the reading is in a danger step. */
|
|
6
|
+
danger: string;
|
|
7
|
+
};
|
|
8
|
+
declare const _default: typeof __VLS_export;
|
|
9
|
+
export default _default;
|
|
10
|
+
declare const __VLS_export: import("vue").DefineComponent<{
|
|
11
|
+
value: number;
|
|
12
|
+
min?: number;
|
|
13
|
+
max?: number;
|
|
14
|
+
/**
|
|
15
|
+
* Steps of the scale, in the gauge's own units: from each `at` upward the
|
|
16
|
+
* arc takes that tone. Unset, the capacity scale applies (warning from 80%
|
|
17
|
+
* of the range, danger from 90%), which is what a resource gauge wants. A
|
|
18
|
+
* score where higher is better lists its own steps:
|
|
19
|
+
* `[{ at: 0, tone: 'danger' }, { at: 50, tone: 'warning' }, { at: 80, tone: 'ok' }]`.
|
|
20
|
+
*/
|
|
21
|
+
thresholds?: MeterThreshold[];
|
|
22
|
+
/**
|
|
23
|
+
* A fixed tone instead of the scale. For a gauge whose reading is neither
|
|
24
|
+
* good nor bad (a temperature, a position), where colouring it by
|
|
25
|
+
* thresholds would invent a judgement.
|
|
26
|
+
*/
|
|
27
|
+
tone?: MeterTone;
|
|
28
|
+
/** What is measured, printed under the figure ("CPU", "Disk"). Also the accessible name. */
|
|
29
|
+
label?: string;
|
|
30
|
+
/** Printed after the figure, smaller ("%", "°C", "ms"). */
|
|
31
|
+
unit?: string;
|
|
32
|
+
/** Decimal places of the figure. */
|
|
33
|
+
decimals?: number;
|
|
34
|
+
/**
|
|
35
|
+
* Says the figure differently ("1.2k", "3/8"). Overrides `decimals`; the
|
|
36
|
+
* figure still rolls, since the formatted string is what LpNumberFlow animates.
|
|
37
|
+
*/
|
|
38
|
+
format?: (value: number) => string;
|
|
39
|
+
/** `semi` (default) sweeps across the top; `full` is a 270° dial open at the bottom. */
|
|
40
|
+
variant?: "semi" | "full";
|
|
41
|
+
/** Width in px. The height follows from the shape. */
|
|
42
|
+
size?: number;
|
|
43
|
+
/** Arc thickness in px. Defaults to a share of `size`. */
|
|
44
|
+
thickness?: number;
|
|
45
|
+
/** Print `min` and `max` under the ends of the arc. On by default for `semi`, where they sit naturally. */
|
|
46
|
+
showRange?: boolean;
|
|
47
|
+
/** Notch the track where each threshold starts, so the reader sees how far the next step is. */
|
|
48
|
+
showThresholds?: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Sweep up from the floor when first seen, instead of appearing already
|
|
51
|
+
* at the reading. Later changes always ease from where the needle is.
|
|
52
|
+
*/
|
|
53
|
+
animateOnMount?: boolean;
|
|
54
|
+
/** Sweep length in ms, shared by the arc and the figure. */
|
|
55
|
+
duration?: number;
|
|
56
|
+
locale?: string;
|
|
57
|
+
labels?: Partial<GaugeLabels>;
|
|
58
|
+
}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
|
|
59
|
+
value: number;
|
|
60
|
+
min?: number;
|
|
61
|
+
max?: number;
|
|
62
|
+
/**
|
|
63
|
+
* Steps of the scale, in the gauge's own units: from each `at` upward the
|
|
64
|
+
* arc takes that tone. Unset, the capacity scale applies (warning from 80%
|
|
65
|
+
* of the range, danger from 90%), which is what a resource gauge wants. A
|
|
66
|
+
* score where higher is better lists its own steps:
|
|
67
|
+
* `[{ at: 0, tone: 'danger' }, { at: 50, tone: 'warning' }, { at: 80, tone: 'ok' }]`.
|
|
68
|
+
*/
|
|
69
|
+
thresholds?: MeterThreshold[];
|
|
70
|
+
/**
|
|
71
|
+
* A fixed tone instead of the scale. For a gauge whose reading is neither
|
|
72
|
+
* good nor bad (a temperature, a position), where colouring it by
|
|
73
|
+
* thresholds would invent a judgement.
|
|
74
|
+
*/
|
|
75
|
+
tone?: MeterTone;
|
|
76
|
+
/** What is measured, printed under the figure ("CPU", "Disk"). Also the accessible name. */
|
|
77
|
+
label?: string;
|
|
78
|
+
/** Printed after the figure, smaller ("%", "°C", "ms"). */
|
|
79
|
+
unit?: string;
|
|
80
|
+
/** Decimal places of the figure. */
|
|
81
|
+
decimals?: number;
|
|
82
|
+
/**
|
|
83
|
+
* Says the figure differently ("1.2k", "3/8"). Overrides `decimals`; the
|
|
84
|
+
* figure still rolls, since the formatted string is what LpNumberFlow animates.
|
|
85
|
+
*/
|
|
86
|
+
format?: (value: number) => string;
|
|
87
|
+
/** `semi` (default) sweeps across the top; `full` is a 270° dial open at the bottom. */
|
|
88
|
+
variant?: "semi" | "full";
|
|
89
|
+
/** Width in px. The height follows from the shape. */
|
|
90
|
+
size?: number;
|
|
91
|
+
/** Arc thickness in px. Defaults to a share of `size`. */
|
|
92
|
+
thickness?: number;
|
|
93
|
+
/** Print `min` and `max` under the ends of the arc. On by default for `semi`, where they sit naturally. */
|
|
94
|
+
showRange?: boolean;
|
|
95
|
+
/** Notch the track where each threshold starts, so the reader sees how far the next step is. */
|
|
96
|
+
showThresholds?: boolean;
|
|
97
|
+
/**
|
|
98
|
+
* Sweep up from the floor when first seen, instead of appearing already
|
|
99
|
+
* at the reading. Later changes always ease from where the needle is.
|
|
100
|
+
*/
|
|
101
|
+
animateOnMount?: boolean;
|
|
102
|
+
/** Sweep length in ms, shared by the arc and the figure. */
|
|
103
|
+
duration?: number;
|
|
104
|
+
locale?: string;
|
|
105
|
+
labels?: Partial<GaugeLabels>;
|
|
106
|
+
}> & Readonly<{}>, {
|
|
107
|
+
duration: number;
|
|
108
|
+
size: number;
|
|
109
|
+
max: number;
|
|
110
|
+
min: number;
|
|
111
|
+
variant: "semi" | "full";
|
|
112
|
+
decimals: number;
|
|
113
|
+
animateOnMount: boolean;
|
|
114
|
+
showRange: boolean;
|
|
115
|
+
showThresholds: boolean;
|
|
116
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|