@leavepulse/ui 0.78.3 → 0.80.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{LpCommandPalette-DDJKICKh.css → LpCommandPalette-C1LRFzbN.css} +19 -19
- package/dist/chunks/{ContextMenuItems-DmaKSJVv.js → ContextMenuItems-DLK4q-mm.js} +1 -1
- package/dist/chunks/{DropzoneLinkField-CyE7TJ5f.js → DropzoneLinkField-CcJu8De3.js} +1 -1
- package/dist/chunks/{FieldLeading-mr81aEAP.js → FieldLeading-CldGLINn.js} +1 -1
- package/dist/chunks/{FieldWrapper-DnuMTrqW.js → FieldWrapper-Cj8ZgoKp.js} +1 -1
- package/dist/chunks/{IconCloseButton-COZEsa9u.js → IconCloseButton-CV4iHRpy.js} +1 -1
- package/dist/chunks/{LayoutCanvas-CZKOltfA.js → LayoutCanvas-BQbq7Ekw.js} +1 -1
- package/dist/chunks/{LayoutNode-D2f7v683.js → LayoutNode-BMedRk3g.js} +1 -1
- package/dist/chunks/{LpActionBar-BGMk5KoG.js → LpActionBar-C7g52Cyo.js} +1 -1
- package/dist/chunks/{LpAddressInput-ft8fQOGx.js → LpAddressInput-1uakhQk5.js} +7 -7
- package/dist/chunks/{LpAlert-CjvTZIKF.js → LpAlert-DWFeR82L.js} +1 -1
- package/dist/chunks/{LpAppShell-DRHoQtr-.js → LpAppShell-InIK01Nn.js} +4 -4
- package/dist/chunks/{LpAutocomplete-CrZbd0uv.js → LpAutocomplete-DY3LvpB9.js} +4 -4
- package/dist/chunks/{LpAvatar-cQVsNk6F.js → LpAvatar-CEZmMcGh.js} +1 -1
- package/dist/chunks/{LpBadge-D5QQdDQ_.js → LpBadge-C_VqLHtg.js} +1 -1
- package/dist/chunks/{LpBottomNav-zxLGGbjm.js → LpBottomNav-4I89sPDZ.js} +1 -1
- package/dist/chunks/{LpBreadcrumbs-CIIBsygI.js → LpBreadcrumbs-1BBzrfxG.js} +1 -1
- package/dist/chunks/{LpCalendar-D4-LVjfF.js → LpCalendar-D2dcXjUK.js} +1 -1
- package/dist/chunks/{LpCheckbox-CCWCwD0y.js → LpCheckbox-CN-MEnbX.js} +2 -2
- package/dist/chunks/{LpCodeBlock-DBqy4RLd.js → LpCodeBlock-Cj7zk4QE.js} +2 -2
- package/dist/chunks/{LpCodeDisplay-D59uPwRb.js → LpCodeDisplay-COzosm77.js} +4 -4
- package/dist/chunks/{LpColorPicker-BONURBFN.js → LpColorPicker-BezW6DX1.js} +3 -3
- package/dist/chunks/{LpConfirmDialog-CnrmzkuN.js → LpConfirmDialog-D9GkDMYr.js} +2 -2
- package/dist/chunks/{LpConfirmHost-CwbObVGH.js → LpConfirmHost-BH7kf0dm.js} +1 -1
- package/dist/chunks/{LpContextMenu-Bx_IhQDS.js → LpContextMenu-bn5bc9t7.js} +2 -2
- package/dist/chunks/{LpContextSwitcher-1C1tExdl.js → LpContextSwitcher-CGr6ZAuq.js} +2 -2
- package/dist/chunks/{LpCopyButton-sAMvWeLP.js → LpCopyButton-BSr6YaFR.js} +1 -1
- package/dist/chunks/{LpDataList-CaVfsozH.js → LpDataList-Cv7ZUlyy.js} +2 -2
- package/dist/chunks/{LpDatePicker-C2AOtxgF.js → LpDatePicker-CR7vsb5M.js} +5 -5
- package/dist/chunks/{LpDateRangePicker-CiXdIAyh.js → LpDateRangePicker-B9fRO3G6.js} +3 -3
- package/dist/chunks/{LpDisclosure-DG7JCo-d.js → LpDisclosure-CE4mneaE.js} +1 -1
- package/dist/chunks/{LpDrawer-DXNQFpAA.js → LpDrawer-DU_5MqBz.js} +1 -1
- package/dist/chunks/{LpDropdownMenu-CLzxIOgM.js → LpDropdownMenu-_u6GPWhp.js} +2 -2
- package/dist/chunks/{LpEditable-DVT0Rh8F.js → LpEditable-DYoMayjt.js} +2 -2
- package/dist/chunks/{LpEmptyState-DurPF001.js → LpEmptyState-DpdHeSfz.js} +1 -1
- package/dist/chunks/{LpFieldNotice-DJ10cYIo.js → LpFieldNotice-DONFCWV7.js} +1 -1
- package/dist/chunks/{LpFileTree-CpNurwZp.js → LpFileTree-f5ktGqsN.js} +4 -4
- package/dist/chunks/{LpFileTreeNode-DdF8Cq-s.js → LpFileTreeNode-nbp-JwV9.js} +4 -4
- package/dist/chunks/{LpFormField-BKYn9dyP.js → LpFormField-Bz50_LZW.js} +1 -1
- package/dist/chunks/{LpHintLayer-BeKRsRon.js → LpHintLayer-B6bA5Cb_.js} +1 -1
- package/dist/chunks/{LpHints-qf3xYsza.js → LpHints-DyJ5hVcr.js} +3 -3
- package/dist/chunks/{LpIcon-C6JpQ5td.js → LpIcon-BCQLuHSP.js} +1 -1
- package/dist/chunks/{LpInfraNode-Bb5nbuFY.js → LpInfraNode-BS1RXYAs.js} +2 -2
- package/dist/chunks/{LpInput-CbI7z5fQ.js → LpInput-BjbXdjcW.js} +3 -3
- package/dist/chunks/{LpInspector-DO3fTCQ1.js → LpInspector-BIyJyM6r.js} +4 -4
- package/dist/chunks/{LpLightbox-CtDTQV01.js → LpLightbox-CSAJuUaJ.js} +2 -2
- package/dist/chunks/{LpLogInspector-CcSJSGan.js → LpLogInspector-OJEz1vod.js} +2 -2
- package/dist/chunks/{LpLogViewer-CWu49Dko.js → LpLogViewer-CRLwQpk0.js} +6 -6
- package/dist/chunks/{LpMapPicker-D5_YLLBC.js → LpMapPicker-DW2EnrCJ.js} +1 -1
- package/dist/chunks/{LpMediaGallery-BYEwySoF.js → LpMediaGallery-BNEYctDP.js} +3 -3
- package/dist/chunks/{LpModal-DDvrSAnf.js → LpModal-DdTqdf4x.js} +1 -1
- package/dist/chunks/{LpModalNav-DI3BW5ff.js → LpModalNav-BL7Dp0om.js} +3 -3
- package/dist/chunks/LpNotificationBell-d0F6MWxD.js +163 -0
- package/dist/chunks/LpNotificationFeed-BIe5lapb.js +470 -0
- package/dist/chunks/{LpNumberField-C8LfUz_R.js → LpNumberField-D5Dx-hzD.js} +3 -3
- package/dist/chunks/{LpOtpInput-B1X9l9no.js → LpOtpInput-BVl74Lfl.js} +1 -1
- package/dist/chunks/{LpPagination-snQ020xQ.js → LpPagination-D0wb-Uru.js} +1 -1
- package/dist/chunks/{LpPaletteTheme-B-xuZiKK.js → LpPaletteTheme-DdilCBXA.js} +2 -2
- package/dist/chunks/{LpPasswordInput-Duc_3wPv.js → LpPasswordInput-DUtqWMkA.js} +2 -2
- package/dist/chunks/{LpPhoneInput-CctcRK9K.js → LpPhoneInput-CalRjkqc.js} +3 -3
- package/dist/chunks/{LpPie-oVNHjsKD.js → LpPie-BVAEmVBT.js} +2 -2
- package/dist/chunks/{LpPipeline-BSXT6oUJ.js → LpPipeline-Dk7_sRP1.js} +2 -2
- package/dist/chunks/{LpQuota-CgWPgdVt.js → LpQuota-DKx0IZYA.js} +1 -1
- package/dist/chunks/{LpRadioGroup-DTM0nd9G.js → LpRadioGroup-E3SP6j9h.js} +2 -2
- package/dist/chunks/{LpRangeCalendar-BrqlGZzE.js → LpRangeCalendar-BFJFaen4.js} +1 -1
- package/dist/chunks/{LpRangeSlider-DJsEZXad.js → LpRangeSlider-b6ipywRB.js} +1 -1
- package/dist/chunks/{LpRepeater-Czib3rmv.js → LpRepeater-BLrw62Bh.js} +2 -2
- package/dist/chunks/{LpSecretField-BtlCk3IH.js → LpSecretField-BV8BNjKc.js} +5 -5
- package/dist/chunks/{LpSection-BfteipxU.js → LpSection-CghNNxIv.js} +1 -1
- package/dist/chunks/{LpSegmented-sskrJKJJ.js → LpSegmented-DjvrHL_G.js} +2 -2
- package/dist/chunks/{LpSelect-JFZehOkd.js → LpSelect-DYPimzAZ.js} +4 -4
- package/dist/chunks/{LpSidebar-CvRvVBTt.js → LpSidebar-D3S8rYFf.js} +4 -4
- package/dist/chunks/{LpSidebarNav-CE0jQS8i.js → LpSidebarNav-Dlse8vxT.js} +3 -3
- package/dist/chunks/{LpSidebarRow-DOTg1txp.js → LpSidebarRow-Cqd_6tGG.js} +3 -3
- package/dist/chunks/{LpSlider-C4ilCtZX.js → LpSlider-B9XIC75O.js} +1 -1
- package/dist/chunks/{LpStat-DPjc6_fX.js → LpStat-kyLRmX-m.js} +2 -2
- package/dist/chunks/{LpStatus-DGJFwk5F.js → LpStatus-szB2dWzM.js} +1 -1
- package/dist/chunks/{LpStepMark-Dw2MRTrt.js → LpStepMark-DP3CDSm9.js} +1 -1
- package/dist/chunks/{LpStepper-DNnh7lCu.js → LpStepper-BS3iaJIz.js} +1 -1
- package/dist/chunks/{LpSwitch-DyAYTchz.js → LpSwitch-DRFy8RNr.js} +1 -1
- package/dist/chunks/{LpTabFace-DQoV8mQG.js → LpTabFace-C9-OperL.js} +2 -2
- package/dist/chunks/{LpTableFilter-CJg5eIcV.js → LpTableFilter-CEIwLupk.js} +2 -2
- package/dist/chunks/{LpTagsInput-CkNxpNYa.js → LpTagsInput-ClDeF_aU.js} +5 -5
- package/dist/chunks/{LpTextarea-CFK_5QB8.js → LpTextarea-DEY6pUBy.js} +1 -1
- package/dist/chunks/{LpThemeStudio-R-wohbCY.js → LpThemeStudio-WY72Z1Db.js} +5 -5
- package/dist/chunks/{LpThemeSwitcher-Bzy15MCP.js → LpThemeSwitcher-9uCH9c-K.js} +3 -3
- package/dist/chunks/{LpTimeField-B5n0m8m0.js → LpTimeField-BmgxCzQO.js} +2 -2
- package/dist/chunks/{LpToaster-Ct_ZOhCh.js → LpToaster-DLKO-efn.js} +2 -2
- package/dist/chunks/{LpTopologyCanvas-BNgw9RyZ.js → LpTopologyCanvas-B-PhPa7k.js} +4 -4
- package/dist/chunks/{LpTour-ClKYhx4h.js → LpTour-ODlBcat2.js} +1 -1
- package/dist/chunks/{LpTruncate-ellq9RYM.js → LpTruncate--nhT0iUo.js} +1 -1
- package/dist/chunks/{LpWindow-B8YSRVTH.js → LpWindow-DJxE8Zl-.js} +2 -2
- package/dist/chunks/{LpWorkspaceSwitcher-ugv-fyig.js → LpWorkspaceSwitcher-Bpf41Bw5.js} +3 -3
- package/dist/chunks/{MenuTitle-Bh5dAdV1.js → MenuTitle-CMjvLsvC.js} +1 -1
- package/dist/chunks/{OptionContent-CGb8QlHA.js → OptionContent-DY8NaG8s.js} +1 -1
- package/dist/chunks/{PickerField-BM1dyafh.js → PickerField-CgfkaBgg.js} +1 -1
- package/dist/chunks/{RevealToggle-D_iyrB8d.js → RevealToggle-CPMXxaKv.js} +1 -1
- package/dist/chunks/{TourCard-DAzTYfav.js → TourCard-D4b3lMHi.js} +1 -1
- package/dist/chunks/icons-C1vppR4f.js +59 -0
- package/dist/component-names.d.ts +1 -1
- package/dist/components/ContextMenuItems.vue.js +1 -1
- package/dist/components/DropzoneLinkField.vue.js +1 -1
- package/dist/components/FieldLeading.vue.js +1 -1
- package/dist/components/FieldWrapper.vue.js +1 -1
- package/dist/components/IconCloseButton.vue.js +1 -1
- package/dist/components/LayoutCanvas.vue.js +1 -1
- package/dist/components/LayoutNode.vue.js +1 -1
- package/dist/components/LpActionBar.vue.js +1 -1
- package/dist/components/LpAddressInput.vue.js +1 -1
- package/dist/components/LpAlert.vue.js +1 -1
- package/dist/components/LpAppShell.vue.js +1 -1
- package/dist/components/LpAutocomplete.vue.js +1 -1
- package/dist/components/LpAvatar.vue.js +1 -1
- package/dist/components/LpBadge.vue.js +1 -1
- package/dist/components/LpBottomNav.vue.js +1 -1
- package/dist/components/LpBreadcrumbs.vue.js +1 -1
- package/dist/components/LpCalendar.vue.js +1 -1
- package/dist/components/LpChart.vue.js +2 -2
- package/dist/components/LpCheckbox.vue.js +1 -1
- package/dist/components/LpCodeBlock.vue.js +1 -1
- package/dist/components/LpCodeDisplay.vue.js +1 -1
- package/dist/components/LpColorPicker.vue.js +1 -1
- package/dist/components/LpCommandPalette.vue.d.ts +22 -1
- package/dist/components/LpCommandPalette.vue.js +36 -16
- 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/LpContextSwitcher.vue.js +1 -1
- package/dist/components/LpCopyButton.vue.js +1 -1
- package/dist/components/LpDataList.vue.js +1 -1
- package/dist/components/LpDatePicker.vue.js +1 -1
- package/dist/components/LpDateRangePicker.vue.js +1 -1
- package/dist/components/LpDisclosure.vue.js +1 -1
- package/dist/components/LpDock.vue.js +1 -1
- package/dist/components/LpDrawer.vue.js +1 -1
- package/dist/components/LpDropdownMenu.vue.js +1 -1
- package/dist/components/LpDropzone.vue.js +2 -2
- package/dist/components/LpEditable.vue.js +1 -1
- 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/LpHintLayer.vue.js +1 -1
- package/dist/components/LpHints.vue.js +1 -1
- package/dist/components/LpIcon.vue.js +1 -1
- package/dist/components/LpImageEditor.vue.js +1 -1
- package/dist/components/LpInfraNode.vue.js +1 -1
- package/dist/components/LpInput.vue.js +1 -1
- package/dist/components/LpInspector.vue.js +1 -1
- package/dist/components/LpLightbox.vue.js +1 -1
- package/dist/components/LpLogInspector.vue.js +1 -1
- package/dist/components/LpLogViewer.vue.js +1 -1
- package/dist/components/LpMapPicker.vue.js +1 -1
- 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 +28 -64
- package/dist/components/LpNotificationBell.vue.js +1 -1
- package/dist/components/LpNotificationFeed.vue.d.ts +78 -0
- package/dist/components/LpNotificationFeed.vue.js +4 -0
- package/dist/components/LpNumberField.vue.js +1 -1
- 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/LpPaletteTheme.vue.js +1 -1
- package/dist/components/LpPasswordInput.vue.js +1 -1
- package/dist/components/LpPhoneInput.vue.js +1 -1
- package/dist/components/LpPie.vue.js +1 -1
- package/dist/components/LpPipeline.vue.js +1 -1
- package/dist/components/LpQuota.vue.js +1 -1
- 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/LpRepeater.vue.js +1 -1
- package/dist/components/LpSecretField.vue.js +1 -1
- package/dist/components/LpSection.vue.js +1 -1
- package/dist/components/LpSegmented.vue.js +1 -1
- package/dist/components/LpSelect.vue.js +1 -1
- 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/LpSidebarRow.vue.js +1 -1
- package/dist/components/LpSlider.vue.js +1 -1
- package/dist/components/LpStat.vue.js +1 -1
- package/dist/components/LpStatus.vue.js +1 -1
- package/dist/components/LpStepMark.vue.js +1 -1
- package/dist/components/LpStepper.vue.js +1 -1
- package/dist/components/LpSwitch.vue.js +1 -1
- package/dist/components/LpTabFace.vue.js +1 -1
- package/dist/components/LpTable.vue.js +9 -9
- package/dist/components/LpTableFilter.vue.js +1 -1
- package/dist/components/LpTabs.vue.js +2 -2
- package/dist/components/LpTagsInput.vue.js +1 -1
- package/dist/components/LpTextarea.vue.js +1 -1
- package/dist/components/LpThemeStudio.vue.js +1 -1
- package/dist/components/LpThemeSwitcher.vue.js +1 -1
- package/dist/components/LpTimeField.vue.js +1 -1
- package/dist/components/LpToaster.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.js +1 -1
- package/dist/components/LpWindow.vue.js +1 -1
- package/dist/components/LpWorkspaceSwitcher.vue.js +1 -1
- package/dist/components/MenuTitle.vue.js +1 -1
- package/dist/components/OptionContent.vue.js +1 -1
- package/dist/components/PickerField.vue.js +1 -1
- package/dist/components/RevealToggle.vue.js +1 -1
- package/dist/components/TourCard.vue.js +1 -1
- package/dist/components/commandPalette.d.ts +14 -0
- package/dist/components/commandPalette.js +42 -0
- package/dist/components/menuWhen.js +1 -1
- package/dist/components/notifications.d.ts +156 -0
- package/dist/components/notifications.js +59 -0
- package/dist/components/relativeTime.js +6 -1
- package/dist/composables/useAsyncTask.d.ts +6 -1
- package/dist/composables/useAsyncTask.js +4 -1
- package/dist/icons-all.js +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +208 -206
- package/package.json +1 -1
- package/src/component-names.ts +1 -0
- package/src/components/LpCommandPalette.vue +64 -14
- package/src/components/LpNotificationBell.vue +105 -279
- package/src/components/LpNotificationFeed.vue +404 -0
- package/src/components/commandPalette.ts +62 -0
- package/src/components/notifications.ts +197 -0
- package/src/components/relativeTime.ts +13 -1
- package/src/composables/useAsyncTask.ts +10 -2
- package/src/index.ts +6 -1
- package/src/kit-icons.ts +1 -1
- package/dist/chunks/LpNotificationBell-DUbVyK6R.js +0 -311
- package/dist/chunks/icons-CYfcpSDS.js +0 -59
|
@@ -15,8 +15,8 @@ import { _ as _sfc_main$8 } from "../chunks/ChartRangeSelector-HO0sMMz6.js";
|
|
|
15
15
|
import { clampRange, chartView, sourceOf, slotOf, ZOOM_STEP, zoomRange } from "./chartWindow.js";
|
|
16
16
|
import { PANEL_SURFACE } from "./dropdown.js";
|
|
17
17
|
import { _ as _sfc_main$2 } from "../chunks/LegendSwatch-BhRjrtzv.js";
|
|
18
|
-
import { _ as _sfc_main$3 } from "../chunks/LpContextMenu-
|
|
19
|
-
import { _ as _sfc_main$6 } from "../chunks/LpEmptyState-
|
|
18
|
+
import { _ as _sfc_main$3 } from "../chunks/LpContextMenu-bn5bc9t7.js";
|
|
19
|
+
import { _ as _sfc_main$6 } from "../chunks/LpEmptyState-DpdHeSfz.js";
|
|
20
20
|
import { _ as _sfc_main$7 } from "../chunks/LpShift-DAgS_d2x.js";
|
|
21
21
|
import { _ as _sfc_main$5 } from "../chunks/LpSkeleton-BB6XIV-w.js";
|
|
22
22
|
import { _ as _sfc_main$4 } from "../chunks/LpSwap-M7nFeW3C.js";
|
|
@@ -188,8 +188,27 @@ export interface CommandPrompt {
|
|
|
188
188
|
* after the palette closed, is discarded and never reaches the list, so a
|
|
189
189
|
* fetcher does not need to check the signal itself. Checking it before an
|
|
190
190
|
* expensive step is only a saving.
|
|
191
|
+
*
|
|
192
|
+
* A fetcher that gathers from sources of different speeds (a local index, a
|
|
193
|
+
* database, a slow remote) can return an async iterable instead — an async
|
|
194
|
+
* generator is the easy way — and yield as it goes, so the quick sources show
|
|
195
|
+
* without waiting for the slow one. Each batch is the whole list so far and
|
|
196
|
+
* replaces the one before; the last is the answer. The search keeps its
|
|
197
|
+
* loading bar until the iterable ends, the highlight stays on the row it was
|
|
198
|
+
* on as rows are added, and when the query moves on the signal aborts and the
|
|
199
|
+
* iterable is closed (`return()`) — a generator parked in an `await` only
|
|
200
|
+
* closes at its next `yield`, running its `finally` there, so pass the signal
|
|
201
|
+
* on to what it awaits. A throw after some batches keeps them on screen, with
|
|
202
|
+
* a line saying the rest could not be fetched:
|
|
203
|
+
*
|
|
204
|
+
* async function* search(q, signal) {
|
|
205
|
+
* const local = index.find(q)
|
|
206
|
+
* yield local
|
|
207
|
+
* const remote = await api.search(q, { signal })
|
|
208
|
+
* yield [...local, ...remote]
|
|
209
|
+
* }
|
|
191
210
|
*/
|
|
192
|
-
export type CommandFetcher = (query: string, signal: AbortSignal, parsed: PaletteQuery) => Command[] | Promise<Command[]>;
|
|
211
|
+
export type CommandFetcher = (query: string, signal: AbortSignal, parsed: PaletteQuery) => Command[] | Promise<Command[]> | AsyncIterable<Command[]>;
|
|
193
212
|
/** Footer hints and the mode chip, spelled out so an app can translate them. */
|
|
194
213
|
export type PaletteLabels = Partial<Record<PaletteMode, string>> & {
|
|
195
214
|
navigate: string;
|
|
@@ -209,6 +228,8 @@ export type PaletteLabels = Partial<Record<PaletteMode, string>> & {
|
|
|
209
228
|
searching: string;
|
|
210
229
|
/** Shown when `search` (or a fetching mode) threw. */
|
|
211
230
|
searchFailed: string;
|
|
231
|
+
/** Shown under streamed results when the fetcher threw after some of them; defaults to "Some results could not be loaded." */
|
|
232
|
+
searchIncomplete?: string;
|
|
212
233
|
retry: string;
|
|
213
234
|
/** The row that unfolds a group cut by `groupLimit`; `{count}` is how many are hidden. */
|
|
214
235
|
showMore: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, computed, h, shallowRef, ref, watch, useId, useSlots, onBeforeUnmount, nextTick, openBlock, createBlock, unref, withCtx, createVNode, normalizeStyle, normalizeClass, withModifiers, createTextVNode, toDisplayString, createElementVNode, createElementBlock, Fragment, renderList,
|
|
1
|
+
import { defineComponent, computed, h, shallowRef, ref, watch, useId, useSlots, onBeforeUnmount, nextTick, openBlock, createBlock, unref, withCtx, createVNode, normalizeStyle, normalizeClass, withModifiers, createTextVNode, toDisplayString, createElementVNode, createCommentVNode, createElementBlock, Fragment, renderList, withDirectives, withKeys, vModelText, resolveDynamicComponent, vShow, Transition, renderSlot } from "vue";
|
|
2
2
|
import { useModelOverlayHistory } from "../composables/useOverlayHistory.js";
|
|
3
3
|
import { nodeWindow } from "../composables/realm.js";
|
|
4
4
|
import { clamp } from "../composables/clamp.js";
|
|
@@ -7,8 +7,8 @@ import { usePaletteScope, suppressPaletteDiscovery, mergePaletteCommands } from
|
|
|
7
7
|
import { useToast } from "../composables/useToast.js";
|
|
8
8
|
import { _ as _sfc_main$3 } from "../chunks/LpButton-DSHioIfD.js";
|
|
9
9
|
import { _ as _sfc_main$6 } from "../chunks/PalettePreviewBoundary-B0Hhu3Yw.js";
|
|
10
|
-
import { _ as _sfc_main$5 } from "../chunks/LpAvatar-
|
|
11
|
-
import { _ as _sfc_main$1 } from "../chunks/LpIcon-
|
|
10
|
+
import { _ as _sfc_main$5 } from "../chunks/LpAvatar-CEZmMcGh.js";
|
|
11
|
+
import { _ as _sfc_main$1 } from "../chunks/LpIcon-BCQLuHSP.js";
|
|
12
12
|
import { _ as _sfc_main$2 } from "../chunks/LpLoader-Bf1yZwaU.js";
|
|
13
13
|
import { _ as _sfc_main$4 } from "../chunks/LpScrollArea-CqvwfZs2.js";
|
|
14
14
|
import MenuShortcut from "./MenuShortcut.vue.js";
|
|
@@ -23,10 +23,10 @@ import { runningHintSystem, HINT_SIGNALS } from "../composables/useHintSystem.js
|
|
|
23
23
|
import { useModalLayer } from "./modalDepth.js";
|
|
24
24
|
import { useLabels } from "../composables/useLpConfig.js";
|
|
25
25
|
import { parsePaletteQuery, parseCommandQuery, searchCommandItems, applyQueryFilters, highlightParts } from "./commandSearch.js";
|
|
26
|
-
import { PALETTE_MODES, modeChipLabel, fallbackRows, readRecent, resolveRecentItems, recentVisible, commandHasPreview, matchModePrefix, isSafeHref, absoluteHref, commandKey, recentKey, pushRecent, moreRowId, toRecentItem } from "./commandPalette.js";
|
|
26
|
+
import { PALETTE_MODES, modeChipLabel, settleFetched, fallbackRows, readRecent, resolveRecentItems, recentVisible, commandHasPreview, matchModePrefix, isSafeHref, absoluteHref, commandKey, recentKey, pushRecent, moreRowId, toRecentItem } from "./commandPalette.js";
|
|
27
27
|
import { useView, usePortalTarget, useOutsideGuard, viewWindow } from "../composables/useView.js";
|
|
28
28
|
import { _ as _export_sfc } from "../chunks/_plugin-vue_export-helper-1tPrXgE0.js";
|
|
29
|
-
import '../assets/LpCommandPalette-
|
|
29
|
+
import '../assets/LpCommandPalette-C1LRFzbN.css';const _hoisted_1 = { class: "relative flex shrink-0 items-center gap-2.5 border-b border-line px-4" };
|
|
30
30
|
const _hoisted_2 = ["title", "onClick"];
|
|
31
31
|
const _hoisted_3 = ["readonly", "aria-label", "aria-expanded", "aria-controls", "aria-activedescendant", "placeholder", "onKeydown"];
|
|
32
32
|
const _hoisted_4 = { class: "shrink-0 rounded-small border border-line px-1.5 py-0.5 text-[10px] text-muted" };
|
|
@@ -190,6 +190,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
190
190
|
back: "back",
|
|
191
191
|
searching: "Searching…",
|
|
192
192
|
searchFailed: "Search is unavailable right now.",
|
|
193
|
+
searchIncomplete: "Some results could not be loaded.",
|
|
193
194
|
retry: "Retry",
|
|
194
195
|
showMore: "Show {count} more",
|
|
195
196
|
actions: "actions",
|
|
@@ -342,24 +343,34 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
342
343
|
task.cancel();
|
|
343
344
|
}
|
|
344
345
|
const failed = ref(false);
|
|
346
|
+
const incomplete = ref(false);
|
|
345
347
|
function refresh(keepRows = false) {
|
|
346
348
|
cancel();
|
|
347
349
|
if (!keepRows) found.value = [];
|
|
348
350
|
failed.value = false;
|
|
351
|
+
incomplete.value = false;
|
|
349
352
|
const run2 = fetcher();
|
|
350
353
|
if (!run2) return;
|
|
351
354
|
const parsed = parsePaletteQuery(query.value.trim());
|
|
352
355
|
const q = parsed.text;
|
|
353
356
|
const inMode = mode.value !== null;
|
|
354
357
|
if (!inMode && q.length < Math.max(1, props.minChars)) return;
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
358
|
+
let streamed = false;
|
|
359
|
+
task.run(
|
|
360
|
+
(signal, emit2) => settleFetched(run2(q, signal, parsed), signal, (rows) => {
|
|
361
|
+
streamed = true;
|
|
362
|
+
emit2(rows);
|
|
363
|
+
}),
|
|
364
|
+
{
|
|
365
|
+
delay: props.debounce,
|
|
366
|
+
apply: (hits) => found.value = hits,
|
|
367
|
+
fail: () => {
|
|
368
|
+
if (!streamed) found.value = [];
|
|
369
|
+
incomplete.value = streamed;
|
|
370
|
+
failed.value = true;
|
|
371
|
+
}
|
|
361
372
|
}
|
|
362
|
-
|
|
373
|
+
);
|
|
363
374
|
}
|
|
364
375
|
const source = computed(() => mode.value ? modeItems.value : rootCommands.value);
|
|
365
376
|
const local = computed(() => {
|
|
@@ -851,6 +862,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
851
862
|
modeItems.value = [];
|
|
852
863
|
found.value = [];
|
|
853
864
|
failed.value = false;
|
|
865
|
+
incomplete.value = false;
|
|
854
866
|
if (o) {
|
|
855
867
|
await nextTick();
|
|
856
868
|
if (props.open) inputRef.value?.focus();
|
|
@@ -917,7 +929,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
917
929
|
_: 1
|
|
918
930
|
}),
|
|
919
931
|
createElementVNode("div", _hoisted_1, [
|
|
920
|
-
!
|
|
932
|
+
!executing.value && !unref(validating) ? (openBlock(), createBlock(_sfc_main$1, {
|
|
921
933
|
key: 0,
|
|
922
934
|
name: "lucide:search",
|
|
923
935
|
size: 18,
|
|
@@ -926,9 +938,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
926
938
|
key: 1,
|
|
927
939
|
size: "inline",
|
|
928
940
|
delay: 0,
|
|
929
|
-
labels: { loading:
|
|
941
|
+
labels: { loading: unref(text).running },
|
|
930
942
|
class: "shrink-0 text-[18px] text-muted"
|
|
931
943
|
}, null, 8, ["labels"])),
|
|
944
|
+
unref(searching) ? (openBlock(), createBlock(_sfc_main$2, {
|
|
945
|
+
key: 2,
|
|
946
|
+
variant: "bar",
|
|
947
|
+
size: "sm",
|
|
948
|
+
tone: "brand",
|
|
949
|
+
labels: { loading: unref(text).searching },
|
|
950
|
+
class: "pointer-events-none absolute inset-x-0 -bottom-px"
|
|
951
|
+
}, null, 8, ["labels"])) : createCommentVNode("", true),
|
|
932
952
|
(openBlock(true), createElementBlock(Fragment, null, renderList(trail.value, (step, i) => {
|
|
933
953
|
return openBlock(), createElementBlock("button", {
|
|
934
954
|
key: step.id,
|
|
@@ -1164,7 +1184,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1164
1184
|
size: 15,
|
|
1165
1185
|
class: "shrink-0"
|
|
1166
1186
|
}),
|
|
1167
|
-
createElementVNode("span", null, toDisplayString(unref(text).searchFailed), 1),
|
|
1187
|
+
createElementVNode("span", null, toDisplayString(incomplete.value ? unref(text).searchIncomplete : unref(text).searchFailed), 1),
|
|
1168
1188
|
createElementVNode("button", {
|
|
1169
1189
|
type: "button",
|
|
1170
1190
|
class: "rounded-inner px-1.5 py-0.5 font-medium text-brand outline-none transition-colors hover:bg-brand-soft focus-visible:ring-2 focus-visible:ring-ring",
|
|
@@ -1343,7 +1363,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1343
1363
|
};
|
|
1344
1364
|
}
|
|
1345
1365
|
});
|
|
1346
|
-
const LpCommandPalette = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
1366
|
+
const LpCommandPalette = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-63099a19"]]);
|
|
1347
1367
|
export {
|
|
1348
1368
|
LpCommandPalette as default
|
|
1349
1369
|
};
|
|
@@ -5,7 +5,7 @@ import { springStep, springSettled } from "../composables/usePillTransition.js";
|
|
|
5
5
|
import { useRovingFocus } from "../composables/useRovingFocus.js";
|
|
6
6
|
import { isHTMLElement } from "../composables/realm.js";
|
|
7
7
|
import { dockSize } from "./dock.js";
|
|
8
|
-
import { _ as _sfc_main$2 } from "../chunks/LpIcon-
|
|
8
|
+
import { _ as _sfc_main$2 } from "../chunks/LpIcon-BCQLuHSP.js";
|
|
9
9
|
import { _ as _sfc_main$1 } from "../chunks/LpTooltip-Bz_rrq5S.js";
|
|
10
10
|
import { _ as _export_sfc } from "../chunks/_plugin-vue_export-helper-1tPrXgE0.js";
|
|
11
11
|
import '../assets/LpDock-Dw82tWVD.css';const _hoisted_1 = ["aria-orientation", "data-orientation"];
|
|
@@ -6,9 +6,9 @@ import { useLabels } from "../composables/useLpConfig.js";
|
|
|
6
6
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
7
7
|
import { useReveal } from "../composables/useReveal.js";
|
|
8
8
|
import { PopoverRoot, PopoverAnchor, PopoverPortal, PopoverContent } from "reka-ui";
|
|
9
|
-
import { _ as _sfc_main$1 } from "../chunks/DropzoneLinkField-
|
|
9
|
+
import { _ as _sfc_main$1 } from "../chunks/DropzoneLinkField-CcJu8De3.js";
|
|
10
10
|
import { POPOVER_PANEL } from "./dropdown.js";
|
|
11
|
-
import { _ as _sfc_main$2 } from "../chunks/LpIcon-
|
|
11
|
+
import { _ as _sfc_main$2 } from "../chunks/LpIcon-BCQLuHSP.js";
|
|
12
12
|
import { inTextField } from "../composables/textEntry.js";
|
|
13
13
|
import { useView, usePortalTarget, useOutsideGuard, viewWindow } from "../composables/useView.js";
|
|
14
14
|
import { _ as _export_sfc } from "../chunks/_plugin-vue_export-helper-1tPrXgE0.js";
|
|
@@ -9,7 +9,7 @@ import "./commandSearch.js";
|
|
|
9
9
|
import "reka-ui";
|
|
10
10
|
import "../composables/useHints.js";
|
|
11
11
|
import "../composables/useHintSystem.js";
|
|
12
|
-
import { _ as _sfc_main$1 } from "../chunks/LpIcon-
|
|
12
|
+
import { _ as _sfc_main$1 } from "../chunks/LpIcon-BCQLuHSP.js";
|
|
13
13
|
import '../assets/MenuShortcut-Cyub0frr.css';import '../assets/LpKeys-C5VMcBOW.css';import '../assets/LpImageEditor-Bgu20XLs.css';/* empty css */
|
|
14
14
|
/* empty css */
|
|
15
15
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|