@leavepulse/ui 0.77.1 → 0.77.3

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.
Files changed (142) hide show
  1. package/dist/chunks/{DropzoneLinkField-BvWe0rHt.js → DropzoneLinkField-C-9BCGJn.js} +2 -2
  2. package/dist/chunks/{FieldWrapper-D-GtSx5F.js → FieldWrapper-CORPzo9s.js} +1 -1
  3. package/dist/chunks/{LpActionBar-DlzVMdxD.js → LpActionBar-BP1ld7-S.js} +2 -2
  4. package/dist/chunks/{LpAddressInput-BmOTL66n.js → LpAddressInput-E8KtwU7-.js} +4 -4
  5. package/dist/chunks/{LpAlert-D65nvFrR.js → LpAlert-n5XPAZfv.js} +2 -2
  6. package/dist/chunks/{LpAppShell-4gV7G84j.js → LpAppShell-Dgejipzz.js} +4 -4
  7. package/dist/chunks/{LpAutocomplete-DOu7FN5P.js → LpAutocomplete-C-SpPfBG.js} +2 -0
  8. package/dist/chunks/{LpBadge-DCikN2YX.js → LpBadge-wUYLN4U9.js} +1 -1
  9. package/dist/chunks/{LpBottomNav-BcFnSRiz.js → LpBottomNav-CbNQQPuL.js} +1 -1
  10. package/dist/chunks/{LpBreadcrumbs-DiniBg15.js → LpBreadcrumbs-DPdbth-c.js} +1 -1
  11. package/dist/chunks/{LpButton-Di-mz7qu.js → LpButton-CFb44IjC.js} +1 -1
  12. package/dist/chunks/{LpCard-BhB1Hs2Y.js → LpCard-r13WRqox.js} +1 -1
  13. package/dist/chunks/{LpCheckbox-BY1CTjz-.js → LpCheckbox-Cs4SHaHX.js} +1 -1
  14. package/dist/chunks/{LpCodeBlock-Cfrq_Pii.js → LpCodeBlock-DRC8VbXW.js} +1 -1
  15. package/dist/chunks/{LpCodeDisplay-iNbGnmji.js → LpCodeDisplay-CE9TxCA4.js} +4 -4
  16. package/dist/chunks/{LpConfirmDialog-2RwmGR5h.js → LpConfirmDialog-DlD45Bi_.js} +1 -1
  17. package/dist/chunks/{LpConfirmHost-CAadxI-d.js → LpConfirmHost-BIWjBLmI.js} +1 -1
  18. package/dist/chunks/{LpCopyButton-dwWGc2kq.js → LpCopyButton-xF7wFVoU.js} +1 -1
  19. package/dist/chunks/{LpCountdown-Lr1F0ivE.js → LpCountdown-DgeY3cLG.js} +1 -1
  20. package/dist/chunks/{LpDataList-UYvxUUOF.js → LpDataList-Jxyl9H5w.js} +1 -1
  21. package/dist/chunks/{LpEditable-Cn1g8jZO.js → LpEditable-Cy6GLbFx.js} +2 -2
  22. package/dist/chunks/{LpFileTree-DSPVLCUr.js → LpFileTree-CooHinsC.js} +1 -1
  23. package/dist/chunks/{LpFileTreeNode-Bf7g4yzG.js → LpFileTreeNode-cT6BIWvz.js} +3 -3
  24. package/dist/chunks/{LpFormField-CT2WrjeU.js → LpFormField-Ch69Jd-X.js} +1 -1
  25. package/dist/chunks/{LpHintLayer-BLTfhG1V.js → LpHintLayer-CgObdUsM.js} +2 -2
  26. package/dist/chunks/{LpHints-XUrXxG-I.js → LpHints-Bz-BlaSl.js} +3 -3
  27. package/dist/chunks/{LpInfraNode-CovQ07Bz.js → LpInfraNode-46XOCkfq.js} +2 -2
  28. package/dist/chunks/{LpInput-BVws0fKl.js → LpInput-Tw-yxT4I.js} +1 -1
  29. package/dist/chunks/{LpLightbox-DtPQalMu.js → LpLightbox-B95yu22B.js} +2 -2
  30. package/dist/chunks/{LpLoader-BTubl9h6.js → LpLoader-DVwkOmt9.js} +1 -1
  31. package/dist/chunks/{LpLogViewer-C0LXbxkJ.js → LpLogViewer-ngqkns4m.js} +3 -3
  32. package/dist/chunks/{LpMapPicker-BHQeQIYM.js → LpMapPicker-DRGgh89B.js} +1 -1
  33. package/dist/chunks/{LpMediaGallery-D9yp_TSr.js → LpMediaGallery-Bkram-MO.js} +1 -1
  34. package/dist/chunks/{LpModalNav-DLuo9WNP.js → LpModalNav-BGvs2y5Q.js} +2 -2
  35. package/dist/chunks/{LpNotificationBell-BSL6bG5g.js → LpNotificationBell-B0034Lk-.js} +3 -3
  36. package/dist/chunks/{LpPaletteTheme-Dn7y0b7u.js → LpPaletteTheme-DiLYKQiZ.js} +3 -3
  37. package/dist/chunks/{LpPasswordInput-ck-SUAZo.js → LpPasswordInput-BkHKQDhM.js} +2 -2
  38. package/dist/chunks/{LpPie-EiPCuK-Y.js → LpPie-DrZepi0p.js} +2 -2
  39. package/dist/chunks/{LpPipeline-PqXZATqf.js → LpPipeline-B3aOVOkV.js} +2 -2
  40. package/dist/chunks/{LpRepeater-COgFLjI8.js → LpRepeater-D7ZmnIYd.js} +2 -2
  41. package/dist/chunks/{LpScramble-DoJPeIJM.js → LpScramble-Bn9OoOtC.js} +1 -1
  42. package/dist/chunks/{LpSecretField-DQ0XsXOU.js → LpSecretField-BbmqM9ye.js} +6 -6
  43. package/dist/chunks/{LpShift-Bi4VB7yd.js → LpShift-CCq7dofl.js} +2 -2
  44. package/dist/chunks/{LpSidebar-DzcojgKg.js → LpSidebar-DzE1783C.js} +2 -2
  45. package/dist/chunks/{LpSidebarNav-DX_rDmsW.js → LpSidebarNav-DE3PhXVP.js} +2 -2
  46. package/dist/chunks/{LpSidebarRow-DMyPZkVB.js → LpSidebarRow-BRYhNDSo.js} +1 -1
  47. package/dist/chunks/{LpStat-C6tiaChL.js → LpStat-f2LfDCJ4.js} +1 -1
  48. package/dist/chunks/{LpStatus-Bm8HtCGH.js → LpStatus-DglxttQ7.js} +2 -2
  49. package/dist/chunks/{LpStepMark-BVwtjCFD.js → LpStepMark-DpzKVyh8.js} +1 -1
  50. package/dist/chunks/{LpStepper-0K8anqck.js → LpStepper-DpsocBNJ.js} +1 -1
  51. package/dist/chunks/{LpSwap-DuVu1CTs.js → LpSwap-C96c0LWh.js} +1 -1
  52. package/dist/chunks/{LpSwitch-DLXJfGir.js → LpSwitch-BnXd1llc.js} +1 -1
  53. package/dist/chunks/{LpTabFace-BdNV3A7p.js → LpTabFace-DPCwKkH2.js} +1 -1
  54. package/dist/chunks/{LpTableFilter-BwbVCEeg.js → LpTableFilter-CiVBpaq0.js} +3 -3
  55. package/dist/chunks/{LpTagsInput-xSWftwra.js → LpTagsInput-C-mDG648.js} +2 -2
  56. package/dist/chunks/{LpTextarea-Pj0ZYNSY.js → LpTextarea-TE-yZv2U.js} +1 -1
  57. package/dist/chunks/{LpThemeStudio-BwX4uf3g.js → LpThemeStudio-BpORDvH6.js} +2 -2
  58. package/dist/chunks/{LpThemeSwitcher-Byurs98d.js → LpThemeSwitcher-BnEn_mvf.js} +2 -2
  59. package/dist/chunks/{LpToaster-DDzV1B2H.js → LpToaster-IwTXjbbU.js} +1 -1
  60. package/dist/chunks/{LpTopologyCanvas-BlfSGRbI.js → LpTopologyCanvas-B1gIbS0n.js} +1 -1
  61. package/dist/chunks/{LpTour-CXA3FCey.js → LpTour-BZq-mUMv.js} +1 -1
  62. package/dist/chunks/{LpTruncate-Dg04QB9v.js → LpTruncate-CflAIwiJ.js} +1 -1
  63. package/dist/chunks/{LpUptimeBar-iKt3rELK.js → LpUptimeBar-DqNvvMBK.js} +2 -2
  64. package/dist/chunks/{RevealToggle-FTHOyJMg.js → RevealToggle-BEit1n6Z.js} +1 -1
  65. package/dist/chunks/{TourCard-DV9wnmvR.js → TourCard-DNclH3u_.js} +3 -3
  66. package/dist/components/DropzoneLinkField.vue.js +1 -1
  67. package/dist/components/FieldWrapper.vue.js +1 -1
  68. package/dist/components/LpActionBar.vue.js +1 -1
  69. package/dist/components/LpAddressInput.vue.js +1 -1
  70. package/dist/components/LpAlert.vue.js +1 -1
  71. package/dist/components/LpAppShell.vue.js +1 -1
  72. package/dist/components/LpAutocomplete.vue.js +1 -1
  73. package/dist/components/LpBadge.vue.js +1 -1
  74. package/dist/components/LpBottomNav.vue.js +1 -1
  75. package/dist/components/LpBreadcrumbs.vue.js +1 -1
  76. package/dist/components/LpButton.vue.js +1 -1
  77. package/dist/components/LpCard.vue.js +1 -1
  78. package/dist/components/LpChart.vue.js +2 -2
  79. package/dist/components/LpCheckbox.vue.js +1 -1
  80. package/dist/components/LpCodeBlock.vue.js +1 -1
  81. package/dist/components/LpCodeDisplay.vue.js +1 -1
  82. package/dist/components/LpCommandPalette.vue.js +2 -2
  83. package/dist/components/LpConfirmDialog.vue.js +1 -1
  84. package/dist/components/LpConfirmHost.vue.js +1 -1
  85. package/dist/components/LpCopyButton.vue.js +1 -1
  86. package/dist/components/LpCountdown.vue.js +1 -1
  87. package/dist/components/LpDataList.vue.js +1 -1
  88. package/dist/components/LpDropzone.vue.js +1 -1
  89. package/dist/components/LpEditable.vue.js +1 -1
  90. package/dist/components/LpFileTree.vue.js +1 -1
  91. package/dist/components/LpFileTreeNode.vue.js +1 -1
  92. package/dist/components/LpFormField.vue.js +1 -1
  93. package/dist/components/LpHintLayer.vue.js +1 -1
  94. package/dist/components/LpHints.vue.js +1 -1
  95. package/dist/components/LpImageEditor.vue.js +1 -1
  96. package/dist/components/LpInfraNode.vue.js +1 -1
  97. package/dist/components/LpInput.vue.js +1 -1
  98. package/dist/components/LpLightbox.vue.js +1 -1
  99. package/dist/components/LpLoader.vue.js +1 -1
  100. package/dist/components/LpLogViewer.vue.js +1 -1
  101. package/dist/components/LpMapPicker.vue.js +1 -1
  102. package/dist/components/LpMediaGallery.vue.js +1 -1
  103. package/dist/components/LpModalNav.vue.js +1 -1
  104. package/dist/components/LpNotificationBell.vue.js +1 -1
  105. package/dist/components/LpPaletteTheme.vue.js +1 -1
  106. package/dist/components/LpPasswordInput.vue.js +1 -1
  107. package/dist/components/LpPie.vue.js +1 -1
  108. package/dist/components/LpPipeline.vue.js +1 -1
  109. package/dist/components/LpRepeater.vue.js +1 -1
  110. package/dist/components/LpScramble.vue.js +1 -1
  111. package/dist/components/LpSecretField.vue.js +1 -1
  112. package/dist/components/LpShift.vue.js +1 -1
  113. package/dist/components/LpSidebar.vue.js +1 -1
  114. package/dist/components/LpSidebarNav.vue.js +1 -1
  115. package/dist/components/LpSidebarRow.vue.js +1 -1
  116. package/dist/components/LpStat.vue.js +1 -1
  117. package/dist/components/LpStatus.vue.js +1 -1
  118. package/dist/components/LpStepMark.vue.js +1 -1
  119. package/dist/components/LpStepper.vue.js +1 -1
  120. package/dist/components/LpSwap.vue.js +1 -1
  121. package/dist/components/LpSwitch.vue.js +1 -1
  122. package/dist/components/LpTabFace.vue.js +1 -1
  123. package/dist/components/LpTable.vue.js +6 -6
  124. package/dist/components/LpTableFilter.vue.js +1 -1
  125. package/dist/components/LpTabs.vue.js +1 -1
  126. package/dist/components/LpTagsInput.vue.js +1 -1
  127. package/dist/components/LpTextarea.vue.js +1 -1
  128. package/dist/components/LpThemeStudio.vue.js +1 -1
  129. package/dist/components/LpThemeSwitcher.vue.js +1 -1
  130. package/dist/components/LpToaster.vue.js +1 -1
  131. package/dist/components/LpTopologyCanvas.vue.js +1 -1
  132. package/dist/components/LpTour.vue.js +1 -1
  133. package/dist/components/LpTruncate.vue.js +1 -1
  134. package/dist/components/LpUptimeBar.vue.js +1 -1
  135. package/dist/components/RevealToggle.vue.js +1 -1
  136. package/dist/components/TourCard.vue.js +1 -1
  137. package/dist/composables/useShift.js +6 -3
  138. package/dist/index.js +56 -56
  139. package/package.json +1 -1
  140. package/src/components/LpAutocomplete.vue +5 -0
  141. package/src/components/LpShift.vue +0 -7
  142. package/src/composables/useShift.ts +11 -3
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpStat-C6tiaChL.js";
1
+ import { _ as _sfc_main } from "../chunks/LpStat-f2LfDCJ4.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpStatus-Bm8HtCGH.js";
1
+ import { _ as _sfc_main } from "../chunks/LpStatus-DglxttQ7.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpStepMark-BVwtjCFD.js";
1
+ import { _ as _sfc_main } from "../chunks/LpStepMark-DpzKVyh8.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpStepper-0K8anqck.js";
1
+ import { _ as _sfc_main } from "../chunks/LpStepper-DpsocBNJ.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpSwap-DuVu1CTs.js";
1
+ import { _ as _sfc_main } from "../chunks/LpSwap-C96c0LWh.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpSwitch-DLXJfGir.js";
1
+ import { _ as _sfc_main } from "../chunks/LpSwitch-BnXd1llc.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpTabFace-BdNV3A7p.js";
1
+ import { _ as _sfc_main } from "../chunks/LpTabFace-DPCwKkH2.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,19 +1,19 @@
1
1
  import { defineComponent, computed, useAttrs, ref, shallowRef, watch, onMounted, onBeforeUnmount, useId, h, openBlock, createElementBlock, normalizeClass, createVNode, withCtx, createTextVNode, toDisplayString, createCommentVNode, Fragment, renderList, createBlock, createElementVNode, Transition, renderSlot, mergeProps, normalizeStyle, TransitionGroup, unref, withModifiers, nextTick } from "vue";
2
2
  import { usePaletteScope, suppressPaletteDiscovery, usePaletteCommands } from "../composables/usePaletteCommands.js";
3
3
  import { menuPaletteCommands } from "./commandPalette.js";
4
- import { _ as _sfc_main$1 } from "../chunks/LpDataList-UYvxUUOF.js";
5
- import { _ as _sfc_main$9 } from "../chunks/LpCheckbox-BY1CTjz-.js";
4
+ import { _ as _sfc_main$1 } from "../chunks/LpDataList-Jxyl9H5w.js";
5
+ import { _ as _sfc_main$9 } from "../chunks/LpCheckbox-Cs4SHaHX.js";
6
6
  import { _ as _sfc_main$8 } from "../chunks/LpContextMenu-rx2tCjwk.js";
7
7
  import { _ as _sfc_main$d } from "../chunks/LpEmptyState-EQHiRYhG.js";
8
- import { _ as _sfc_main$5 } from "../chunks/LpBadge-DCikN2YX.js";
8
+ import { _ as _sfc_main$5 } from "../chunks/LpBadge-wUYLN4U9.js";
9
9
  import { _ as _sfc_main$3 } from "../chunks/LpIcon--5WSb3jJ.js";
10
10
  import { _ as _sfc_main$c } from "../chunks/LpSkeleton-BB6XIV-w.js";
11
11
  import { _ as _sfc_main$e } from "../chunks/LpPagination-BIIiYHXR.js";
12
12
  import { _ as _sfc_main$a } from "../chunks/LpPopover-DmZ3wUtP.js";
13
13
  import { _ as _sfc_main$7 } from "../chunks/LpScrollArea-MyEnVB_5.js";
14
14
  import { _ as _sfc_main$6 } from "../chunks/LpRollingText-B54Pje7P.js";
15
- import { _ as _sfc_main$4 } from "../chunks/LpShift-Bi4VB7yd.js";
16
- import { _ as _sfc_main$b } from "../chunks/LpTableFilter-BwbVCEeg.js";
15
+ import { _ as _sfc_main$4 } from "../chunks/LpShift-CCq7dofl.js";
16
+ import { _ as _sfc_main$b } from "../chunks/LpTableFilter-CiVBpaq0.js";
17
17
  import { useKitStorage } from "../composables/usePersisted.js";
18
18
  import { useAsyncTask } from "../composables/useAsyncTask.js";
19
19
  import { useTableFacets } from "./tableFacets.js";
@@ -23,7 +23,7 @@ import { useRovingFocus } from "../composables/useRovingFocus.js";
23
23
  import { useLabels } from "../composables/useLpConfig.js";
24
24
  import { useResizeObserver } from "../composables/useResizeObserver.js";
25
25
  import { compareValues } from "./tableSort.js";
26
- import { _ as _sfc_main$2 } from "../chunks/LpButton-Di-mz7qu.js";
26
+ import { _ as _sfc_main$2 } from "../chunks/LpButton-CFb44IjC.js";
27
27
  import { toCsv, downloadFile, fileStem } from "./exportData.js";
28
28
  import { toHiddenSets, sameHidden, summarizeShown, parseTableState, mergeRestored, serializeTableState, fromHiddenSets } from "./tableFilter.js";
29
29
  import { resolveRowMenu } from "./tableRowMenu.js";
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpTableFilter-BwbVCEeg.js";
1
+ import { _ as _sfc_main } from "../chunks/LpTableFilter-CiVBpaq0.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -7,7 +7,7 @@ import { useStepHistory } from "../composables/useOverlayHistory.js";
7
7
  import { prefersReducedMotion } from "../composables/easing.js";
8
8
  import { _ as _sfc_main$1 } from "../chunks/LpContextMenu-rx2tCjwk.js";
9
9
  import { _ as _sfc_main$3 } from "../chunks/LpSkeleton-BB6XIV-w.js";
10
- import { _ as _sfc_main$2 } from "../chunks/LpTabFace-BdNV3A7p.js";
10
+ import { _ as _sfc_main$2 } from "../chunks/LpTabFace-DPCwKkH2.js";
11
11
  import { pickTab, BOTTOM_BAR, BOTTOM_ITEM, BOTTOM_MARKER } from "./tabs.js";
12
12
  import { _ as _export_sfc } from "../chunks/_plugin-vue_export-helper-1tPrXgE0.js";
13
13
  import '../assets/LpTabs-CJ0rYQbx.css';const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpTagsInput-xSWftwra.js";
1
+ import { _ as _sfc_main } from "../chunks/LpTagsInput-C-mDG648.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpTextarea-Pj0ZYNSY.js";
1
+ import { _ as _sfc_main } from "../chunks/LpTextarea-TE-yZv2U.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpThemeStudio-BwX4uf3g.js";
1
+ import { _ as _sfc_main } from "../chunks/LpThemeStudio-BpORDvH6.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpThemeSwitcher-Byurs98d.js";
1
+ import { _ as _sfc_main } from "../chunks/LpThemeSwitcher-BnEn_mvf.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpToaster-DDzV1B2H.js";
1
+ import { _ as _sfc_main } from "../chunks/LpToaster-IwTXjbbU.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpTopologyCanvas-BlfSGRbI.js";
1
+ import { _ as _sfc_main } from "../chunks/LpTopologyCanvas-B1gIbS0n.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpTour-CXA3FCey.js";
1
+ import { _ as _sfc_main } from "../chunks/LpTour-BZq-mUMv.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpTruncate-Dg04QB9v.js";
1
+ import { _ as _sfc_main } from "../chunks/LpTruncate-CflAIwiJ.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/LpUptimeBar-iKt3rELK.js";
1
+ import { _ as _sfc_main } from "../chunks/LpUptimeBar-DqNvvMBK.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/RevealToggle-FTHOyJMg.js";
1
+ import { _ as _sfc_main } from "../chunks/RevealToggle-BEit1n6Z.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../chunks/TourCard-DV9wnmvR.js";
1
+ import { _ as _sfc_main } from "../chunks/TourCard-DNclH3u_.js";
2
2
  export {
3
3
  _sfc_main as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { ref, watch, toValue, onBeforeUnmount } from "vue";
1
+ import { ref, watch, toValue, onBeforeUnmount, nextTick } from "vue";
2
2
  import { prefersReducedMotion } from "./easing.js";
3
3
  const TWEEN_MS = 160;
4
4
  const RETARGET_AFTER_MS = 40;
@@ -78,8 +78,11 @@ function useShift(options = {}) {
78
78
  resizing.value = false;
79
79
  if (wantsHeight()) node.style.height = "";
80
80
  if (wantsWidth()) node.style.width = "";
81
- lastHeight = node.offsetHeight;
82
- lastWidth = node.offsetWidth;
81
+ void nextTick(() => {
82
+ if (inFlight) return;
83
+ lastHeight = node.offsetHeight;
84
+ lastWidth = node.offsetWidth;
85
+ });
83
86
  }, wait);
84
87
  }
85
88
  let scrollHost = null;
package/dist/index.js CHANGED
@@ -1,22 +1,22 @@
1
1
  import { _ } from "./chunks/LayoutCanvas-CNOAUk7D.js";
2
- import { _ as _2 } from "./chunks/LpAddressInput-BmOTL66n.js";
3
- import { _ as _3 } from "./chunks/LpMapPicker-BHQeQIYM.js";
2
+ import { _ as _2 } from "./chunks/LpAddressInput-E8KtwU7-.js";
3
+ import { _ as _3 } from "./chunks/LpMapPicker-DRGgh89B.js";
4
4
  import { OSM_TILES, createNominatimProvider, emptyAddress, formatAddress, project, tileUrl, unproject } from "./components/address.js";
5
- import { _ as _4 } from "./chunks/LpActionBar-DlzVMdxD.js";
6
- import { _ as _5 } from "./chunks/LpAlert-D65nvFrR.js";
7
- import { _ as _6 } from "./chunks/LpAppShell-4gV7G84j.js";
8
- import { _ as _7 } from "./chunks/LpAutocomplete-DOu7FN5P.js";
5
+ import { _ as _4 } from "./chunks/LpActionBar-BP1ld7-S.js";
6
+ import { _ as _5 } from "./chunks/LpAlert-n5XPAZfv.js";
7
+ import { _ as _6 } from "./chunks/LpAppShell-Dgejipzz.js";
8
+ import { _ as _7 } from "./chunks/LpAutocomplete-C-SpPfBG.js";
9
9
  import { _ as _8 } from "./chunks/LpAvatar-Cg6Az3wz.js";
10
- import { _ as _9 } from "./chunks/LpBadge-DCikN2YX.js";
11
- import { _ as _10 } from "./chunks/LpBreadcrumbs-DiniBg15.js";
12
- import { _ as _11 } from "./chunks/LpButton-Di-mz7qu.js";
10
+ import { _ as _9 } from "./chunks/LpBadge-wUYLN4U9.js";
11
+ import { _ as _10 } from "./chunks/LpBreadcrumbs-DPdbth-c.js";
12
+ import { _ as _11 } from "./chunks/LpButton-CFb44IjC.js";
13
13
  import { _ as _12 } from "./chunks/LpCalendar-CuoWks-0.js";
14
- import { _ as _13 } from "./chunks/LpCard-BhB1Hs2Y.js";
14
+ import { _ as _13 } from "./chunks/LpCard-r13WRqox.js";
15
15
  import { default as default2 } from "./components/LpChart.vue.js";
16
16
  import { backgroundOf, csvField, downloadFile, fileStem, inlineSvg, resolveCssColor, svgToPng, toCsv } from "./components/exportData.js";
17
17
  import { CHART_PALETTE, axisTicks, chartSummary, formatTick, markerIndex, niceScale, resolveSlices } from "./components/chart.js";
18
- import { _ as _14 } from "./chunks/LpCheckbox-BY1CTjz-.js";
19
- import { _ as _15 } from "./chunks/LpCodeBlock-Cfrq_Pii.js";
18
+ import { _ as _14 } from "./chunks/LpCheckbox-Cs4SHaHX.js";
19
+ import { _ as _15 } from "./chunks/LpCodeBlock-DRC8VbXW.js";
20
20
  import { tokenizeLines } from "./components/codeHighlight.js";
21
21
  import { _ as _16 } from "./chunks/LpColorPicker-1y1QJHZR.js";
22
22
  import { DEFAULT_SWATCHES, clampHsv, formatColor, hsvToHsl, hsvToRgb, isLight, normalizeHue, opaqueCss, parseColor, parseHex, rgbToHex, rgbToHsv } from "./components/color.js";
@@ -30,8 +30,8 @@ import { default as default6 } from "./components/LpPaletteStats.vue.js";
30
30
  import { default as default7 } from "./components/LpPaletteSwatches.vue.js";
31
31
  import { default as default8 } from "./components/LpKeys.vue.js";
32
32
  import { comboKeys, comboSteps } from "./components/keys.js";
33
- import { _ as _18 } from "./chunks/LpConfirmDialog-2RwmGR5h.js";
34
- import { _ as _19 } from "./chunks/LpConfirmHost-CAadxI-d.js";
33
+ import { _ as _18 } from "./chunks/LpConfirmDialog-DlD45Bi_.js";
34
+ import { _ as _19 } from "./chunks/LpConfirmHost-BIWjBLmI.js";
35
35
  import { confirm, useConfirm } from "./components/confirm.js";
36
36
  import { _ as _20 } from "./chunks/LpContextMenu-rx2tCjwk.js";
37
37
  import { _ as _21 } from "./chunks/LpDatePicker-CA0QTfBC.js";
@@ -44,31 +44,31 @@ import { _ as _26 } from "./chunks/LpDrawer-CrG8t_KP.js";
44
44
  import { _ as _27 } from "./chunks/LpDropdownMenu-Dl7Z4ZhS.js";
45
45
  import { default as default9 } from "./components/LpDropzone.vue.js";
46
46
  import { _ as _28 } from "./chunks/LpEmptyState-EQHiRYhG.js";
47
- import { _ as _29 } from "./chunks/LpFileTree-DSPVLCUr.js";
47
+ import { _ as _29 } from "./chunks/LpFileTree-CooHinsC.js";
48
48
  import { ancestorIds, checkStateOf, checkedCount, computeStats, fileIcon, formatModified, formatSize, sortNodes, subtreeIds, subtreeSize } from "./components/fileTree.js";
49
49
  import { _ as _30 } from "./chunks/LpFieldNotice-CzQ2_5rQ.js";
50
- import { _ as _31 } from "./chunks/LpFormField-CT2WrjeU.js";
50
+ import { _ as _31 } from "./chunks/LpFormField-Ch69Jd-X.js";
51
51
  import { _ as _32 } from "./chunks/LpIcon--5WSb3jJ.js";
52
52
  import { i, b, a, c } from "./chunks/icons-DMITlfw5.js";
53
53
  import { default as default10 } from "./components/LpImageEditor.vue.js";
54
- import { _ as _33 } from "./chunks/LpInfraNode-CovQ07Bz.js";
55
- import { _ as _34 } from "./chunks/LpInput-BVws0fKl.js";
56
- import { _ as _35 } from "./chunks/LpLightbox-DtPQalMu.js";
54
+ import { _ as _33 } from "./chunks/LpInfraNode-46XOCkfq.js";
55
+ import { _ as _34 } from "./chunks/LpInput-Tw-yxT4I.js";
56
+ import { _ as _35 } from "./chunks/LpLightbox-B95yu22B.js";
57
57
  import { fileNameOf } from "./components/lightbox.js";
58
58
  import { _ as _36 } from "./chunks/LpLink-Krkjhe_y.js";
59
- import { _ as _37 } from "./chunks/LpLogViewer-C0LXbxkJ.js";
59
+ import { _ as _37 } from "./chunks/LpLogViewer-ngqkns4m.js";
60
60
  import { countLevels, matchPositions, matchesTerm, ringWindow, stepMatch } from "./components/logSearch.js";
61
- import { _ as _38 } from "./chunks/LpMediaGallery-D9yp_TSr.js";
61
+ import { _ as _38 } from "./chunks/LpMediaGallery-Bkram-MO.js";
62
62
  import { _ as _39 } from "./chunks/LpModal-CoGhLTyH.js";
63
- import { _ as _40 } from "./chunks/LpModalNav-DLuo9WNP.js";
64
- import { _ as _41 } from "./chunks/LpNotificationBell-BSL6bG5g.js";
63
+ import { _ as _40 } from "./chunks/LpModalNav-BGvs2y5Q.js";
64
+ import { _ as _41 } from "./chunks/LpNotificationBell-B0034Lk-.js";
65
65
  import { _ as _42 } from "./chunks/LpNumberField-e0IBkWU1.js";
66
66
  import { _ as _43 } from "./chunks/LpTimeField-BawSVsmt.js";
67
67
  import { _ as _44 } from "./chunks/LpNumberFlow-Vqj0tP7B.js";
68
68
  import { _ as _45 } from "./chunks/LpOtpInput-CeBPsM7D.js";
69
69
  import { _ as _46 } from "./chunks/LpPagination-BIIiYHXR.js";
70
- import { _ as _47 } from "./chunks/LpPasswordInput-ck-SUAZo.js";
71
- import { _ as _48 } from "./chunks/LpPie-EiPCuK-Y.js";
70
+ import { _ as _47 } from "./chunks/LpPasswordInput-BkHKQDhM.js";
71
+ import { _ as _48 } from "./chunks/LpPie-DrZepi0p.js";
72
72
  import { _ as _49 } from "./chunks/LpPhoneInput-CETEp5W7.js";
73
73
  import { filterCountries, flagEmoji, loadCountries, matchCountryByValue } from "./components/countries.js";
74
74
  import { _ as _50 } from "./chunks/LpPopover-DmZ3wUtP.js";
@@ -82,11 +82,11 @@ import { _ as _57 } from "./chunks/LpSection-DFK_uoJE.js";
82
82
  import { _ as _58 } from "./chunks/LpSelect-Cxq4yBGd.js";
83
83
  import { fitChips, toggledValues } from "./components/select.js";
84
84
  import { _ as _59 } from "./chunks/LpServiceNode-D8uJ8sGk.js";
85
- import { _ as _60 } from "./chunks/LpShift-Bi4VB7yd.js";
86
- import { _ as _61 } from "./chunks/LpSwap-DuVu1CTs.js";
85
+ import { _ as _60 } from "./chunks/LpShift-CCq7dofl.js";
86
+ import { _ as _61 } from "./chunks/LpSwap-C96c0LWh.js";
87
87
  import { _ as _62 } from "./chunks/LpHintExample-9Py0wc-L.js";
88
88
  import { default as default11 } from "./components/LpShortcutsDialog.vue.js";
89
- import { _ as _63 } from "./chunks/LpSidebar-DzcojgKg.js";
89
+ import { _ as _63 } from "./chunks/LpSidebar-DzE1783C.js";
90
90
  import { _ as _64 } from "./chunks/LpContextSwitcher-Dwh6dyID.js";
91
91
  import { _ as _65 } from "./chunks/LpSkeleton-BB6XIV-w.js";
92
92
  import { _ as _66 } from "./chunks/LpSlider-DxYoCJJO.js";
@@ -94,9 +94,9 @@ import { _ as _67 } from "./chunks/LpRangeSlider-CM-0ZITZ.js";
94
94
  import { _ as _68 } from "./chunks/LpVideoBackdrop-DS1wGv-X.js";
95
95
  import { formatClipTime, isNativeLoop, planLoop, seamProgress, seamReached } from "./components/videoBackdrop.js";
96
96
  import { _ as _69 } from "./chunks/LpSparkline-CExIRDb3.js";
97
- import { _ as _70 } from "./chunks/LpStat-C6tiaChL.js";
98
- import { _ as _71 } from "./chunks/LpStepper-0K8anqck.js";
99
- import { _ as _72 } from "./chunks/LpSwitch-DLXJfGir.js";
97
+ import { _ as _70 } from "./chunks/LpStat-f2LfDCJ4.js";
98
+ import { _ as _71 } from "./chunks/LpStepper-DpsocBNJ.js";
99
+ import { _ as _72 } from "./chunks/LpSwitch-BnXd1llc.js";
100
100
  import { default as default12 } from "./components/LpTable.vue.js";
101
101
  import { compareValues } from "./components/tableSort.js";
102
102
  import { filterRows, showOnly, shownValues } from "./components/tableFilter.js";
@@ -104,22 +104,22 @@ import { useTableFilterChoice } from "./composables/useTableFilterChoice.js";
104
104
  import { resolveRowMenu } from "./components/tableRowMenu.js";
105
105
  import { _ as _73 } from "./chunks/LpTableOfContents-BN5zvpnx.js";
106
106
  import { default as default13 } from "./components/LpTabs.vue.js";
107
- import { _ as _74 } from "./chunks/LpBottomNav-BcFnSRiz.js";
108
- import { _ as _75 } from "./chunks/LpTagsInput-xSWftwra.js";
107
+ import { _ as _74 } from "./chunks/LpBottomNav-CbNQQPuL.js";
108
+ import { _ as _75 } from "./chunks/LpTagsInput-C-mDG648.js";
109
109
  import { addTags, splitTags } from "./components/tags.js";
110
- import { _ as _76 } from "./chunks/LpTextarea-Pj0ZYNSY.js";
111
- import { _ as _77 } from "./chunks/LpThemeSwitcher-Byurs98d.js";
110
+ import { _ as _76 } from "./chunks/LpTextarea-TE-yZv2U.js";
111
+ import { _ as _77 } from "./chunks/LpThemeSwitcher-BnEn_mvf.js";
112
112
  import { _ as _78 } from "./chunks/LpTilt-B7KHX1zH.js";
113
- import { _ as _79 } from "./chunks/LpToaster-DDzV1B2H.js";
113
+ import { _ as _79 } from "./chunks/LpToaster-IwTXjbbU.js";
114
114
  import { _ as _80 } from "./chunks/LpTooltip-BcBvIx4z.js";
115
- import { _ as _81 } from "./chunks/LpTour-CXA3FCey.js";
115
+ import { _ as _81 } from "./chunks/LpTour-BZq-mUMv.js";
116
116
  import { holeOf, openContextMenu, panelsAround } from "./components/tour.js";
117
- import { _ as _82 } from "./chunks/LpHintLayer-BLTfhG1V.js";
118
- import { _ as _83 } from "./chunks/LpHints-XUrXxG-I.js";
117
+ import { _ as _82 } from "./chunks/LpHintLayer-CgObdUsM.js";
118
+ import { _ as _83 } from "./chunks/LpHints-Bz-BlaSl.js";
119
119
  import { HINT_SIGNALS, contextMenuTip, createHintSystem, dropzoneTip, hintKey, hintSummary, hotkeyTip, localHintStorage, noteDropzone, noteHotkeyTarget, paletteTip, provideHintSystem, runningHintSystem, useHintSystem } from "./composables/useHintSystem.js";
120
120
  import { _ as _84 } from "./chunks/LpTooltipProvider-CftjV7Xc.js";
121
- import { _ as _85 } from "./chunks/LpTopologyCanvas-BlfSGRbI.js";
122
- import { _ as _86 } from "./chunks/LpUptimeBar-iKt3rELK.js";
121
+ import { _ as _85 } from "./chunks/LpTopologyCanvas-B1gIbS0n.js";
122
+ import { _ as _86 } from "./chunks/LpUptimeBar-DqNvvMBK.js";
123
123
  import { deserializeLayout, serializeLayout } from "./layout/tree.js";
124
124
  import { addLeaf, addTab, countBlocks, countLeaves, makeLayout, moveLeaf, removeBlock, removeLeaf, reorderTab, resizeAt, setActiveTab } from "./layout/tree.js";
125
125
  import { blockTitle, defineBlocks } from "./layout/registry.js";
@@ -127,7 +127,7 @@ import { layoutController, useLayout } from "./layout/useLayout.js";
127
127
  import { a as parseTheme, s as serializeTheme } from "./chunks/LpThemeProvider-8MG6yqU9.js";
128
128
  import { D, _ as _87, T, b as b2, c as c2, d, e, f, g, l, h, n, i as i2, j, p, r, k, t, m, o, q, u, v } from "./chunks/LpThemeProvider-8MG6yqU9.js";
129
129
  import { G, N, d as d2, i as i3, s } from "./chunks/backdrop-Dkf2vM81.js";
130
- import { _ as _88, a as a2, b as b3, c as c3, d as d3, S, e as e2, u as u2, w } from "./chunks/LpThemeStudio-BwX4uf3g.js";
130
+ import { _ as _88, a as a2, b as b3, c as c3, d as d3, S, e as e2, u as u2, w } from "./chunks/LpThemeStudio-BpORDvH6.js";
131
131
  import { useClipboard } from "./composables/useClipboard.js";
132
132
  import { activeShortcuts, appleModifierLabel, findHotkeyConflicts, hotkeyConflicts, hotkeySteps, isAppleKeyboard, matchesHotkey, mergeShortcutGroups, parseCombo, pendingHotkey, sequenceProgress, useAppleKeyboard, useHotkeys } from "./composables/useHotkeys.js";
133
133
  import { anyModalOpen, topModalElement, useModalLayer } from "./components/modalDepth.js";
@@ -167,10 +167,10 @@ import { useToast } from "./composables/useToast.js";
167
167
  import { _ as _89 } from "./chunks/LpFrame-BVQCQLDI.js";
168
168
  import { _ as _90 } from "./chunks/LpThemeStudioSection-B7bt8Iyg.js";
169
169
  import { isInternalHref, resolveLink } from "./components/link.js";
170
- import { _ as _91 } from "./chunks/LpRepeater-COgFLjI8.js";
170
+ import { _ as _91 } from "./chunks/LpRepeater-D7ZmnIYd.js";
171
171
  import { _ as _92 } from "./chunks/LpGauge-KZaQ_FDR.js";
172
172
  import { _ as _93 } from "./chunks/LpQuota-Dk2MyI2Z.js";
173
- import { _ as _94 } from "./chunks/LpStatus-Bm8HtCGH.js";
173
+ import { _ as _94 } from "./chunks/LpStatus-DglxttQ7.js";
174
174
  import { _ as _95 } from "./chunks/LpRelativeTime-DwgCb5-8.js";
175
175
  import { _ as _96 } from "./chunks/LpActivityLine-CJvzrNpj.js";
176
176
  import { TONE_COLOR, TONE_SOFT, arcPath, capacityThresholds, meterFraction, toneAt } from "./components/meter.js";
@@ -179,20 +179,20 @@ import { formatAmount, quotaSegments, quotaState } from "./components/quota.js";
179
179
  import { compactNumber, decimalMark, formatBytes } from "./components/format.js";
180
180
  import { STATUS_LABELS, STATUS_LOOK } from "./components/status.js";
181
181
  import { formatRelativeTime } from "./components/relativeTime.js";
182
- import { _ as _97 } from "./chunks/LpPipeline-PqXZATqf.js";
183
- import { _ as _98 } from "./chunks/LpStepMark-BVwtjCFD.js";
182
+ import { _ as _97 } from "./chunks/LpPipeline-B3aOVOkV.js";
183
+ import { _ as _98 } from "./chunks/LpStepMark-DpzKVyh8.js";
184
184
  import { childProgress, connectorFilled, currentStepIndex, isSettled, overallStatus, stepElapsed } from "./components/pipeline.js";
185
- import { _ as _99 } from "./chunks/LpLoader-BTubl9h6.js";
185
+ import { _ as _99 } from "./chunks/LpLoader-DVwkOmt9.js";
186
186
  import { useLoadingGate } from "./composables/useLoadingGate.js";
187
187
  import { useNow } from "./composables/useNow.js";
188
- import { _ as _100 } from "./chunks/LpCountdown-Lr1F0ivE.js";
188
+ import { _ as _100 } from "./chunks/LpCountdown-DgeY3cLG.js";
189
189
  import { DEFAULT_MILESTONES, DEFAULT_UNIT_LABELS, ceilToSecond, crossedMilestone, formatElapsed, formatTime, msToNextSecond, splitTime, timeParts } from "./components/timeSpan.js";
190
- import { _ as _101 } from "./chunks/LpCopyButton-dwWGc2kq.js";
191
- import { _ as _102 } from "./chunks/LpSecretField-DQ0XsXOU.js";
192
- import { _ as _103 } from "./chunks/LpDataList-UYvxUUOF.js";
193
- import { _ as _104 } from "./chunks/LpEditable-Cn1g8jZO.js";
194
- import { _ as _105 } from "./chunks/LpTruncate-Dg04QB9v.js";
195
- import { _ as _106 } from "./chunks/LpCodeDisplay-iNbGnmji.js";
190
+ import { _ as _101 } from "./chunks/LpCopyButton-xF7wFVoU.js";
191
+ import { _ as _102 } from "./chunks/LpSecretField-BbmqM9ye.js";
192
+ import { _ as _103 } from "./chunks/LpDataList-Jxyl9H5w.js";
193
+ import { _ as _104 } from "./chunks/LpEditable-Cy6GLbFx.js";
194
+ import { _ as _105 } from "./chunks/LpTruncate-CflAIwiJ.js";
195
+ import { _ as _106 } from "./chunks/LpCodeDisplay-CE9TxCA4.js";
196
196
  import { formatRemaining, groupCode, middleTruncate, normalizeCode } from "./components/fieldText.js";
197
197
  import { _ as _107 } from "./chunks/LpHoverCard-spGxyw7T.js";
198
198
  import { _ as _108 } from "./chunks/LpIdenticon-BzdC_qz9.js";
@@ -204,7 +204,7 @@ import { pseudoLocalize } from "./composables/pseudoLocale.js";
204
204
  import { _ as _111 } from "./chunks/LpTextReveal-CtAnOUkp.js";
205
205
  import { _ as _112 } from "./chunks/LpShinyText-DX2ajtWq.js";
206
206
  import { _ as _113 } from "./chunks/LpTypewriter-BCL_a6wE.js";
207
- import { _ as _114 } from "./chunks/LpScramble-DoJPeIJM.js";
207
+ import { _ as _114 } from "./chunks/LpScramble-Bn9OoOtC.js";
208
208
  import { useScramble } from "./composables/useScramble.js";
209
209
  import { useInView } from "./composables/useInView.js";
210
210
  import { SCRAMBLE_GLYPHS, graphemes, planScramble, randomGlyph, scrambleFrame, seededRandom, settledCells } from "./components/scramble.js";
@@ -221,7 +221,7 @@ import { spotlightPoint, useSpotlight } from "./composables/useSpotlight.js";
221
221
  import { _ as _120 } from "./chunks/LpCommandScope-CtUhJe8T.js";
222
222
  import { createPaletteRegistry, mergePaletteCommands, usePaletteCommands, vPalette } from "./composables/usePaletteCommands.js";
223
223
  import { u as u3 } from "./chunks/palette-Co8tSASo.js";
224
- import { _ as _121 } from "./chunks/LpPaletteTheme-Dn7y0b7u.js";
224
+ import { _ as _121 } from "./chunks/LpPaletteTheme-DiLYKQiZ.js";
225
225
  const UI_CONFIG_VERSION = 1;
226
226
  function serializeConfig(config) {
227
227
  const out = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leavepulse/ui",
3
- "version": "0.77.1",
3
+ "version": "0.77.3",
4
4
  "type": "module",
5
5
  "description": "LeavePulse token-driven Vue component kit.",
6
6
  "repository": {
@@ -389,6 +389,10 @@ usePaletteControl({ disabled: () => field.value.disabled, invalid: () => field.v
389
389
  </button>
390
390
  </ComboboxAnchor>
391
391
 
392
+ <!-- A press on the list keeps focus in the field. Otherwise the field
393
+ blurs before the click lands, and a host that settles its text on
394
+ blur (back to the last pick) empties the list under the pointer: the
395
+ option clicked is gone and the choice is lost. -->
392
396
  <ComboboxPortal :to="portalTo">
393
397
  <ComboboxContent
394
398
  @interact-outside="guardOutside"
@@ -398,6 +402,7 @@ usePaletteControl({ disabled: () => field.value.disabled, invalid: () => field.v
398
402
  :side-offset="6"
399
403
  :class="[POPOVER_PANEL, 'z-(--z-popover) max-h-72 w-(--reka-combobox-trigger-width) overflow-hidden']"
400
404
  @open-auto-focus.prevent
405
+ @mousedown.prevent
401
406
  >
402
407
  <ComboboxViewport class="max-h-72 overflow-y-auto p-1">
403
408
  <div v-if="loading" class="px-3 py-4 text-center text-sm italic text-muted">
@@ -295,15 +295,8 @@ defineExpose({ resizing })
295
295
  content spills past the easing edge. Dropped once settled, so nothing
296
296
  that legitimately overflows — a dropdown, a focus ring — is clipped at
297
297
  rest. -->
298
- <!-- `flow-root` always: a child's margin stays inside the box whether or not
299
- it is clipping. Without it the margin collapsed through the box at rest
300
- but was held in while `overflow-hidden` was on, so the box measured
301
- taller mid-tween than settled, and any text change inside (a ticking
302
- counter) set off a tween to the other figure, every time: a pause
303
- banner with `mb-4` jumped 16px once a second. -->
304
298
  <div
305
299
  ref="el"
306
- class="flow-root"
307
300
  :class="[
308
301
  tweening && !disabled
309
302
  ? `${transitionClass} duration-fast ease-[var(--ease-emphasized)] motion-reduce:transition-none`
@@ -1,4 +1,4 @@
1
- import { onBeforeUnmount, ref, toValue, watch, type MaybeRefOrGetter, type Ref } from "vue"
1
+ import { nextTick, onBeforeUnmount, ref, toValue, watch, type MaybeRefOrGetter, type Ref } from "vue"
2
2
  import { prefersReducedMotion } from "./easing"
3
3
 
4
4
  /*
@@ -235,8 +235,16 @@ export function useShift(
235
235
  if (wantsWidth()) node.style.width = ""
236
236
  // Re-read rather than trusting the target: the layout around may have
237
237
  // moved meanwhile, and the next tween has to start from where it sits.
238
- lastHeight = node.offsetHeight
239
- lastWidth = node.offsetWidth
238
+ // Read after the render that drops the tween's clip, not before: the
239
+ // clip holds a child's margin inside the box, so a box measured with it
240
+ // still on came out taller than it settles (a banner with `mb-4`: 54
241
+ // against 38), and every text change after that, a ticking counter,
242
+ // eased between the two figures once a tick.
243
+ void nextTick(() => {
244
+ if (inFlight) return
245
+ lastHeight = node.offsetHeight
246
+ lastWidth = node.offsetWidth
247
+ })
240
248
  }, wait)
241
249
  }
242
250