@leavepulse/ui 0.59.0 → 0.61.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 +8 -0
- package/dist/assets/{LpCommandPalette-BM_IyzwB.css → LpCommandPalette-DA5pmuPi.css} +21 -21
- package/dist/assets/{LpTable-B_QCQCbB.css → LpTable-DpXyPzs8.css} +19 -19
- package/dist/chunks/{ContextMenuItems-CioDScj3.js → ContextMenuItems-qXReFtQW.js} +1 -1
- package/dist/chunks/{LayoutCanvas-BcGLJVBq.js → LayoutCanvas-t7LWFCEn.js} +1 -1
- package/dist/chunks/{LayoutNode-BkBn6dvM.js → LayoutNode-DHsE6GwM.js} +1 -1
- package/dist/chunks/{LpActionBar-DCN-_pZP.js → LpActionBar-BsSp66S_.js} +2 -2
- package/dist/chunks/{LpAddressInput-D-H94m4q.js → LpAddressInput-CzdZguBo.js} +7 -7
- package/dist/chunks/{LpAlert-CXMn1GYE.js → LpAlert--KLL4NLk.js} +1 -1
- package/dist/chunks/{LpAppShell-BeMuKEjh.js → LpAppShell-BXMNDEpF.js} +3 -3
- package/dist/chunks/{LpAutocomplete-hJ_6CHlh.js → LpAutocomplete-D9mY5Tqk.js} +102 -37
- package/dist/chunks/{LpAvatar-CeW4Z5CL.js → LpAvatar-K6MOMfgn.js} +2 -2
- package/dist/chunks/{LpBreadcrumbs-BLzOEgAF.js → LpBreadcrumbs-CndzPYiG.js} +1 -1
- package/dist/chunks/{LpButton-vhlwmpBy.js → LpButton-CJSD7N0Z.js} +1 -1
- package/dist/chunks/{LpCalendar-BLoE8Qm7.js → LpCalendar-CXVDbb2M.js} +1 -1
- package/dist/chunks/{LpCard-Gbr8a1xK.js → LpCard-D9HVgX8Y.js} +1 -1
- package/dist/chunks/{LpCheckbox-B_C8sOoT.js → LpCheckbox-DV9W6T3H.js} +1 -1
- package/dist/chunks/{LpCodeBlock-D6zhp30a.js → LpCodeBlock-t6MLA3fb.js} +1 -1
- package/dist/chunks/{LpColorPicker-CVXwjEtX.js → LpColorPicker-BO1ZTY51.js} +2 -2
- package/dist/chunks/{LpConfirmDialog-DkgIT-Xg.js → LpConfirmDialog-tkgyY3eu.js} +3 -3
- package/dist/chunks/{LpConfirmHost-CYzXWFOI.js → LpConfirmHost-CoYIcUdl.js} +1 -1
- package/dist/chunks/{LpContextMenu-DRFd-iyc.js → LpContextMenu-Cv_F2iCG.js} +20 -5
- package/dist/chunks/{LpDatePicker-B-VMHMgy.js → LpDatePicker-DxdrVNCG.js} +3 -3
- package/dist/chunks/{LpDateRangePicker-B68KPKPl.js → LpDateRangePicker-DjeaqikC.js} +2 -2
- package/dist/chunks/{LpDisclosure-Ct-VBHxt.js → LpDisclosure-s8cQ7KQq.js} +1 -1
- package/dist/chunks/{LpDrawer-Rc6eAJrr.js → LpDrawer-C97yoWmh.js} +1 -1
- package/dist/chunks/{LpDropdownMenu-BoJQsjzt.js → LpDropdownMenu-CbyYu4Rw.js} +11 -4
- package/dist/chunks/{LpEmptyState-CBwwkkdA.js → LpEmptyState-CX8fdGSU.js} +1 -1
- package/dist/chunks/{LpFieldNotice-9hH4ITZa.js → LpFieldNotice-B--RzKfj.js} +1 -1
- package/dist/chunks/{LpFileTree-Bs57DhVa.js → LpFileTree-DTwUj0L-.js} +2 -2
- package/dist/chunks/{LpFileTreeNode-XgJW65v5.js → LpFileTreeNode-D-XLPZ6T.js} +3 -3
- package/dist/chunks/{LpFormField-BpQ6WJPe.js → LpFormField-DMPPL1jF.js} +1 -1
- package/dist/chunks/{LpHintLayer-B5-6FyEf.js → LpHintLayer-DsclGYcD.js} +1 -1
- package/dist/chunks/{LpHints-BqoZXHZk.js → LpHints-BTpvisgP.js} +10 -4
- package/dist/chunks/{LpIcon-B5guGKrW.js → LpIcon-CTuDVTYv.js} +1 -1
- package/dist/chunks/{LpInput-WvyP02ID.js → LpInput-C7FHxzj2.js} +2 -2
- package/dist/chunks/{LpLightbox-Dq-e36uT.js → LpLightbox-DiksFa4L.js} +1 -1
- package/dist/chunks/{LpLogViewer-B92bAftG.js → LpLogViewer-D9UgNz2m.js} +2 -2
- package/dist/chunks/{LpMapPicker-BH5csaBt.js → LpMapPicker-DybIlWnF.js} +1 -1
- package/dist/chunks/{LpMediaGallery-B1kDypJ-.js → LpMediaGallery-Cic9UHsa.js} +2 -2
- package/dist/chunks/{LpModal-DvGD6kEe.js → LpModal-QFfctZsj.js} +1 -1
- package/dist/chunks/{LpModalNav-B-_zRTS-.js → LpModalNav-D4rmflQn.js} +4 -4
- package/dist/chunks/{LpNotificationBell-63pvatBj.js → LpNotificationBell-CyylOlZR.js} +4 -4
- package/dist/chunks/{LpNumberField-CJPjmoDz.js → LpNumberField-BFSRVGkJ.js} +1 -1
- package/dist/chunks/{LpPagination-DehAaJLY.js → LpPagination-BFl0I7tL.js} +1 -1
- package/dist/chunks/{LpPasswordInput-BK25_vNG.js → LpPasswordInput-C1G4k_r0.js} +2 -2
- package/dist/chunks/{LpPhoneInput-Bxg7a_qD.js → LpPhoneInput-CZrpVxla.js} +2 -2
- package/dist/chunks/{LpPie-Coa2GMHt.js → LpPie-B2deu8CI.js} +2 -2
- package/dist/chunks/{LpRangeCalendar-D5sDID9W.js → LpRangeCalendar-COeOYF52.js} +1 -1
- package/dist/chunks/{LpSection-B19VPYmr.js → LpSection-BAkbf0OK.js} +1 -1
- package/dist/chunks/{LpSegmented-DbrUjuSA.js → LpSegmented-DslFku0N.js} +1 -1
- package/dist/chunks/{LpSelect-DynjWK1A.js → LpSelect-C4OXN_q3.js} +1 -1
- package/dist/chunks/{LpSidebar-CKamWtPo.js → LpSidebar-D8tub3bt.js} +3 -3
- package/dist/chunks/{LpSidebarNav-Y4LV0ZEn.js → LpSidebarNav-BBSRg34G.js} +2 -2
- package/dist/chunks/{LpStat-BS2TEXYK.js → LpStat-oYk6V1LZ.js} +1 -1
- package/dist/chunks/{LpStepper-BSglWF45.js → LpStepper-YgHGzgfD.js} +1 -1
- package/dist/chunks/LpSwap-D82jiecV.js +38 -0
- package/dist/chunks/{LpTableFilter-CwHXVxJt.js → LpTableFilter-Ba-rS4H1.js} +2 -2
- package/dist/chunks/{LpTabs-D01b8jBI.js → LpTabs-00v3VQx4.js} +1 -1
- package/dist/chunks/{LpTagsInput-CHbQoAAA.js → LpTagsInput-Sc56iy_j.js} +3 -3
- package/dist/chunks/{LpTextarea-Bz2IWhTH.js → LpTextarea-CQZccQI3.js} +1 -1
- package/dist/chunks/{LpThemeSwitcher-CbzL6ipO.js → LpThemeSwitcher-ZFFftBQn.js} +2 -2
- package/dist/chunks/{LpTimeField-DvGXgdES.js → LpTimeField-BTEt0kvL.js} +1 -1
- package/dist/chunks/{LpToaster-C9EacEfR.js → LpToaster-D3OisETH.js} +2 -2
- package/dist/chunks/{LpTour-D7m9ZxNk.js → LpTour-C29-1wha.js} +4 -1
- package/dist/chunks/{MenuTitle-B9HdaBwE.js → MenuTitle-FeC6I24N.js} +1 -1
- package/dist/chunks/{TourCard-DCHOjr6e.js → TourCard-AjN0uhs1.js} +2 -2
- package/dist/chunks/{icons-QqBscG5I.js → icons-CuO3W46H.js} +1 -1
- package/dist/component-names.d.ts +1 -1
- package/dist/components/ContextMenuItems.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.d.ts +24 -0
- package/dist/components/LpAutocomplete.vue.js +1 -1
- package/dist/components/LpAvatar.vue.js +1 -1
- package/dist/components/LpBreadcrumbs.vue.js +1 -1
- package/dist/components/LpButton.vue.js +1 -1
- package/dist/components/LpCalendar.vue.js +1 -1
- package/dist/components/LpCard.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/LpColorPicker.vue.js +1 -1
- package/dist/components/LpCommandPalette.vue.js +30 -19
- package/dist/components/LpConfirmDialog.vue.js +1 -1
- package/dist/components/LpConfirmHost.vue.js +1 -1
- package/dist/components/LpContextMenu.vue.d.ts +7 -2
- package/dist/components/LpContextMenu.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/LpDrawer.vue.js +1 -1
- package/dist/components/LpDropdownMenu.vue.d.ts +7 -2
- package/dist/components/LpDropdownMenu.vue.js +1 -1
- package/dist/components/LpDropzone.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 +4 -2
- package/dist/components/LpInput.vue.js +1 -1
- package/dist/components/LpLightbox.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.js +1 -1
- package/dist/components/LpNumberField.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/LpPasswordInput.vue.js +1 -1
- package/dist/components/LpPhoneInput.vue.js +1 -1
- package/dist/components/LpPie.vue.js +1 -1
- package/dist/components/LpRangeCalendar.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/LpStat.vue.js +1 -1
- package/dist/components/LpStepper.vue.js +1 -1
- package/dist/components/LpSwap.vue.d.ts +19 -0
- package/dist/components/LpSwap.vue.js +4 -0
- package/dist/components/LpTable.vue.js +13 -11
- package/dist/components/LpTableFilter.vue.js +1 -1
- package/dist/components/LpTabs.vue.js +1 -1
- package/dist/components/LpTagsInput.vue.js +1 -1
- package/dist/components/LpTextarea.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/LpTour.vue.js +1 -1
- package/dist/components/MenuTitle.vue.js +1 -1
- package/dist/components/TourCard.vue.js +1 -1
- package/dist/composables/useHintSystem.d.ts +67 -0
- package/dist/composables/useHintSystem.js +110 -12
- package/dist/composables/useToast.d.ts +13 -4
- package/dist/composables/useToast.js +13 -2
- package/dist/icons-all.js +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.js +101 -95
- package/package.json +2 -1
- package/src/component-names.ts +1 -0
- package/src/components/LpAutocomplete.vue +110 -24
- package/src/components/LpCommandPalette.vue +26 -4
- package/src/components/LpContextMenu.vue +22 -1
- package/src/components/LpDropdownMenu.vue +13 -2
- package/src/components/LpHints.vue +7 -1
- package/src/components/LpSwap.vue +45 -0
- package/src/components/LpTable.vue +2 -1
- package/src/components/LpToaster.vue +1 -1
- package/src/components/LpTour.vue +3 -0
- package/src/composables/useHintSystem.ts +152 -12
- package/src/composables/useToast.ts +32 -5
- package/src/index.ts +5 -2
- package/src/kit-icons.ts +1 -1
- package/src/tokens/selection.css +20 -0
package/README.md
CHANGED
|
@@ -161,6 +161,14 @@ scroll restoration and anchor jumps keep working:
|
|
|
161
161
|
|
|
162
162
|
Hide a specific scrollbar with the `lp-scrollbar-none` class.
|
|
163
163
|
|
|
164
|
+
Selected text takes the operating system's accent unless told otherwise (on
|
|
165
|
+
Linux that is the GTK theme, so it can come out red or green next to the kit
|
|
166
|
+
palette). Opt into the theme's colour the same way:
|
|
167
|
+
|
|
168
|
+
```css
|
|
169
|
+
@import "@leavepulse/ui/selection.css"; /* after the tokens — reads --color-brand */
|
|
170
|
+
```
|
|
171
|
+
|
|
164
172
|
## Develop
|
|
165
173
|
|
|
166
174
|
```bash
|
|
@@ -5,81 +5,81 @@
|
|
|
5
5
|
* pane from its right edge as it grows. Animating the columns themselves made
|
|
6
6
|
* every line of the list and the pane re-wrap on every frame.
|
|
7
7
|
*/
|
|
8
|
-
.lp-cmd-dialog[data-v-
|
|
8
|
+
.lp-cmd-dialog[data-v-a545acf6] {
|
|
9
9
|
--lp-cmd-list: min(92vw, 40rem);
|
|
10
10
|
--lp-cmd-pane: max(0px, min(26rem, 96vw - var(--lp-cmd-list)));
|
|
11
11
|
width: var(--lp-cmd-list);
|
|
12
12
|
}
|
|
13
|
-
.lp-cmd-split[data-v-
|
|
13
|
+
.lp-cmd-split[data-v-a545acf6] {
|
|
14
14
|
transition:
|
|
15
15
|
width 300ms var(--ease-emphasized, ease),
|
|
16
16
|
min-height 300ms var(--ease-emphasized, ease);
|
|
17
17
|
}
|
|
18
18
|
@media (min-width: 768px) {
|
|
19
|
-
.lp-cmd-split .lp-cmd-list[data-v-
|
|
19
|
+
.lp-cmd-split .lp-cmd-list[data-v-a545acf6] {
|
|
20
20
|
flex: 0 0 auto;
|
|
21
21
|
/* the dialog's 1px border on each side */
|
|
22
22
|
width: calc(var(--lp-cmd-list) - 2px);
|
|
23
23
|
}
|
|
24
|
-
.lp-cmd-dialog[data-pane="open"][data-v-
|
|
24
|
+
.lp-cmd-dialog[data-pane="open"][data-v-a545acf6] {
|
|
25
25
|
width: calc(var(--lp-cmd-list) + var(--lp-cmd-pane));
|
|
26
26
|
min-height: min(76vh, 36rem);
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
|
-
.lp-cmd-pane[data-v-
|
|
29
|
+
.lp-cmd-pane[data-v-a545acf6] {
|
|
30
30
|
width: var(--lp-cmd-pane);
|
|
31
31
|
}
|
|
32
32
|
/*
|
|
33
33
|
* The pane rides in from the right edge while the dialog opens up to it, and
|
|
34
34
|
* leaves the same way, for as long as the dialog takes to close over it.
|
|
35
35
|
*/
|
|
36
|
-
.lp-cmd-pane-enter-active[data-v-
|
|
37
|
-
.lp-cmd-pane-leave-active[data-v-
|
|
36
|
+
.lp-cmd-pane-enter-active[data-v-a545acf6],
|
|
37
|
+
.lp-cmd-pane-leave-active[data-v-a545acf6] {
|
|
38
38
|
transition:
|
|
39
39
|
transform 300ms var(--ease-emphasized, ease),
|
|
40
40
|
opacity 300ms ease;
|
|
41
41
|
}
|
|
42
|
-
.lp-cmd-pane-enter-from[data-v-
|
|
43
|
-
.lp-cmd-pane-leave-to[data-v-
|
|
42
|
+
.lp-cmd-pane-enter-from[data-v-a545acf6],
|
|
43
|
+
.lp-cmd-pane-leave-to[data-v-a545acf6] {
|
|
44
44
|
opacity: 0;
|
|
45
45
|
transform: translateX(40%);
|
|
46
46
|
}
|
|
47
|
-
.lp-cmd-para[data-v-
|
|
48
|
-
animation: lp-cmd-para-in-
|
|
47
|
+
.lp-cmd-para[data-v-a545acf6] {
|
|
48
|
+
animation: lp-cmd-para-in-a545acf6 260ms ease-out both;
|
|
49
49
|
}
|
|
50
|
-
@keyframes lp-cmd-para-in-
|
|
50
|
+
@keyframes lp-cmd-para-in-a545acf6 {
|
|
51
51
|
from {
|
|
52
52
|
opacity: 0;
|
|
53
53
|
transform: translateY(4px);
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
@media (prefers-reduced-motion: reduce) {
|
|
57
|
-
.lp-cmd-split[data-v-
|
|
58
|
-
.lp-cmd-pane-enter-active[data-v-
|
|
59
|
-
.lp-cmd-pane-leave-active[data-v-
|
|
57
|
+
.lp-cmd-split[data-v-a545acf6],
|
|
58
|
+
.lp-cmd-pane-enter-active[data-v-a545acf6],
|
|
59
|
+
.lp-cmd-pane-leave-active[data-v-a545acf6] {
|
|
60
60
|
transition: none;
|
|
61
61
|
}
|
|
62
|
-
.lp-cmd-para[data-v-
|
|
62
|
+
.lp-cmd-para[data-v-a545acf6] {
|
|
63
63
|
animation: none;
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
|
-
.lp-cmd-excerpt[data-v-
|
|
66
|
+
.lp-cmd-excerpt[data-v-a545acf6] {
|
|
67
67
|
display: -webkit-box;
|
|
68
68
|
-webkit-box-orient: vertical;
|
|
69
69
|
overflow: hidden;
|
|
70
70
|
}
|
|
71
71
|
/* Each result eases in; honours reduced motion. */
|
|
72
|
-
.lp-cmd-item[data-v-
|
|
73
|
-
animation: lp-cmd-in-
|
|
72
|
+
.lp-cmd-item[data-v-a545acf6] {
|
|
73
|
+
animation: lp-cmd-in-a545acf6 140ms ease-out both;
|
|
74
74
|
}
|
|
75
|
-
@keyframes lp-cmd-in-
|
|
75
|
+
@keyframes lp-cmd-in-a545acf6 {
|
|
76
76
|
from {
|
|
77
77
|
opacity: 0;
|
|
78
78
|
transform: translateY(3px);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
@media (prefers-reduced-motion: reduce) {
|
|
82
|
-
.lp-cmd-item[data-v-
|
|
82
|
+
.lp-cmd-item[data-v-a545acf6] {
|
|
83
83
|
animation: none;
|
|
84
84
|
}
|
|
85
85
|
}
|
|
@@ -11,17 +11,17 @@
|
|
|
11
11
|
* fade before closing the gap and the whole list lurches at the end instead of
|
|
12
12
|
* gliding.
|
|
13
13
|
*/
|
|
14
|
-
.lp-row-enter-active[data-v-
|
|
15
|
-
.lp-row-leave-active[data-v-
|
|
14
|
+
.lp-row-enter-active[data-v-a9d69d56],
|
|
15
|
+
.lp-row-leave-active[data-v-a9d69d56] {
|
|
16
16
|
transition:
|
|
17
17
|
opacity var(--duration-fast) var(--ease-emphasized),
|
|
18
18
|
transform var(--duration-fast) var(--ease-emphasized);
|
|
19
19
|
}
|
|
20
|
-
.lp-row-move[data-v-
|
|
20
|
+
.lp-row-move[data-v-a9d69d56] {
|
|
21
21
|
transition: transform var(--duration-medium) var(--ease-emphasized);
|
|
22
22
|
}
|
|
23
|
-
.lp-row-enter-from[data-v-
|
|
24
|
-
.lp-row-leave-to[data-v-
|
|
23
|
+
.lp-row-enter-from[data-v-a9d69d56],
|
|
24
|
+
.lp-row-leave-to[data-v-a9d69d56] {
|
|
25
25
|
opacity: 0;
|
|
26
26
|
transform: translateX(-0.5rem);
|
|
27
27
|
}
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
* drops out of the table layout entirely. Nothing sits below this row to be
|
|
36
36
|
* dragged around, so simply not animating its exit costs nothing.
|
|
37
37
|
*/
|
|
38
|
-
.lp-row-empty.lp-row-leave-active[data-v-
|
|
38
|
+
.lp-row-empty.lp-row-leave-active[data-v-a9d69d56] {
|
|
39
39
|
display: none;
|
|
40
40
|
}
|
|
41
41
|
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
* once anything is selected. An earlier version collapsed the column to nothing
|
|
55
55
|
* and floated the hover box over the first cell, where it sat on the text.
|
|
56
56
|
*/
|
|
57
|
-
.lp-tick[data-v-
|
|
57
|
+
.lp-tick[data-v-a9d69d56] {
|
|
58
58
|
display: flex;
|
|
59
59
|
align-items: center;
|
|
60
60
|
max-width: 0;
|
|
@@ -66,17 +66,17 @@
|
|
|
66
66
|
padding var(--duration-medium) var(--ease-emphasized),
|
|
67
67
|
opacity var(--duration-fast) ease;
|
|
68
68
|
}
|
|
69
|
-
.lp-tick-open[data-v-
|
|
69
|
+
.lp-tick-open[data-v-a9d69d56] {
|
|
70
70
|
max-width: 3.25rem;
|
|
71
71
|
padding-inline: 1rem;
|
|
72
72
|
opacity: 1;
|
|
73
73
|
}
|
|
74
|
-
.lp-tick-hidden[data-v-
|
|
75
|
-
.lp-tick-cue[data-v-
|
|
74
|
+
.lp-tick-hidden[data-v-a9d69d56],
|
|
75
|
+
.lp-tick-cue[data-v-a9d69d56] {
|
|
76
76
|
opacity: 0;
|
|
77
77
|
}
|
|
78
|
-
tr:hover .lp-tick-cue[data-v-
|
|
79
|
-
.lp-tick-cue[data-v-
|
|
78
|
+
tr:hover .lp-tick-cue[data-v-a9d69d56],
|
|
79
|
+
.lp-tick-cue[data-v-a9d69d56]:focus-within {
|
|
80
80
|
opacity: 1;
|
|
81
81
|
}
|
|
82
82
|
|
|
@@ -84,24 +84,24 @@ tr:hover .lp-tick-cue[data-v-344d1bc2],
|
|
|
84
84
|
turned down the rows change without animating rather than not changing. */
|
|
85
85
|
/* Only where there is a hover to reveal it; a finger long-presses instead. */
|
|
86
86
|
@media (hover: none) {
|
|
87
|
-
tr:hover .lp-tick-cue[data-v-
|
|
87
|
+
tr:hover .lp-tick-cue[data-v-a9d69d56] {
|
|
88
88
|
opacity: 0;
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
/* Nor is there anything for the column's width to hold until then: on a
|
|
92
92
|
touch screen it stays closed until a long press starts selecting, and
|
|
93
93
|
eases open like the rest of the column. */
|
|
94
|
-
.lp-tick-hidden[data-v-
|
|
95
|
-
.lp-tick-cue[data-v-
|
|
94
|
+
.lp-tick-hidden[data-v-a9d69d56],
|
|
95
|
+
.lp-tick-cue[data-v-a9d69d56] {
|
|
96
96
|
max-width: 0;
|
|
97
97
|
padding-inline: 0;
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
@media (prefers-reduced-motion: reduce) {
|
|
101
|
-
.lp-row-enter-active[data-v-
|
|
102
|
-
.lp-row-leave-active[data-v-
|
|
103
|
-
.lp-row-move[data-v-
|
|
104
|
-
.lp-tick[data-v-
|
|
101
|
+
.lp-row-enter-active[data-v-a9d69d56],
|
|
102
|
+
.lp-row-leave-active[data-v-a9d69d56],
|
|
103
|
+
.lp-row-move[data-v-a9d69d56],
|
|
104
|
+
.lp-tick[data-v-a9d69d56] {
|
|
105
105
|
transition: none;
|
|
106
106
|
}
|
|
107
107
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, resolveComponent, openBlock, createElementBlock, Fragment, renderList, createBlock, unref, createCommentVNode, withCtx, createVNode, normalizeClass, createElementVNode, createTextVNode, toDisplayString, withModifiers } from "vue";
|
|
2
2
|
import { ContextMenuSeparator, ContextMenuSub, ContextMenuSubTrigger, ContextMenuPortal, ContextMenuSubContent, ContextMenuCheckboxItem, ContextMenuItem } from "reka-ui";
|
|
3
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
3
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
4
4
|
const _hoisted_1 = { class: "flex items-center gap-2" };
|
|
5
5
|
const _hoisted_2 = { class: "flex items-center gap-2" };
|
|
6
6
|
const _hoisted_3 = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, ref, computed, openBlock, createElementBlock, createVNode, withCtx, renderSlot, normalizeProps, guardReactiveProps } from "vue";
|
|
2
|
-
import { _ as _sfc_main$1 } from "./LayoutNode-
|
|
2
|
+
import { _ as _sfc_main$1 } from "./LayoutNode-DHsE6GwM.js";
|
|
3
3
|
import { resizeAt, setActiveTab, reorderTab, removeBlock, moveLeaf } from "../layout/tree.js";
|
|
4
4
|
import { layoutController } from "../layout/useLayout.js";
|
|
5
5
|
const _hoisted_1 = { class: "flex min-h-0 min-w-0 flex-1" };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent, computed, ref, onBeforeUnmount, resolveComponent, openBlock, createElementBlock, normalizeClass, Fragment, renderList, createVNode, normalizeStyle, withCtx, renderSlot, mergeProps, createElementVNode, createCommentVNode, createBlock, unref, withModifiers, toDisplayString } from "vue";
|
|
2
2
|
import { useReducedMotion, Motion } from "motion-v";
|
|
3
3
|
import { blockTitle } from "../layout/registry.js";
|
|
4
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
4
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
5
5
|
const _hoisted_1 = ["onPointerdown"];
|
|
6
6
|
const _hoisted_2 = {
|
|
7
7
|
key: 1,
|
|
@@ -2,8 +2,8 @@ import { defineComponent, useSlots, computed, ref, watch, onBeforeUnmount, openB
|
|
|
2
2
|
import { useLabels } from "../composables/useLpConfig.js";
|
|
3
3
|
import { useBarStack } from "../components/actionBar.js";
|
|
4
4
|
import { CLOSE_ICON } from "../components/dropdown.js";
|
|
5
|
-
import { _ as _sfc_main$2 } from "./LpButton-
|
|
6
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
5
|
+
import { _ as _sfc_main$2 } from "./LpButton-CJSD7N0Z.js";
|
|
6
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
7
7
|
const _hoisted_1 = ["aria-label"];
|
|
8
8
|
const _hoisted_2 = {
|
|
9
9
|
key: 1,
|
|
@@ -2,13 +2,13 @@ import { defineComponent, defineAsyncComponent, computed, watch, ref, onMounted,
|
|
|
2
2
|
import { useAsyncTask } from "../composables/useAsyncTask.js";
|
|
3
3
|
import { OSM_TILES, createNominatimProvider, emptyAddress, formatAddress } from "../components/address.js";
|
|
4
4
|
import { flagEmoji, loadCountries } from "../components/countries.js";
|
|
5
|
-
import { _ as _sfc_main$2 } from "./LpAutocomplete-
|
|
6
|
-
import { _ as _sfc_main$3 } from "./LpButton-
|
|
7
|
-
import { _ as _sfc_main$1 } from "./LpFormField-
|
|
8
|
-
import { _ as _sfc_main$4 } from "./LpIcon-
|
|
9
|
-
import { _ as _sfc_main$5 } from "./LpInput-
|
|
10
|
-
import { _ as _sfc_main$7 } from "./LpModal-
|
|
11
|
-
import { _ as _sfc_main$6 } from "./LpSelect-
|
|
5
|
+
import { _ as _sfc_main$2 } from "./LpAutocomplete-D9mY5Tqk.js";
|
|
6
|
+
import { _ as _sfc_main$3 } from "./LpButton-CJSD7N0Z.js";
|
|
7
|
+
import { _ as _sfc_main$1 } from "./LpFormField-DMPPL1jF.js";
|
|
8
|
+
import { _ as _sfc_main$4 } from "./LpIcon-CTuDVTYv.js";
|
|
9
|
+
import { _ as _sfc_main$5 } from "./LpInput-C7FHxzj2.js";
|
|
10
|
+
import { _ as _sfc_main$7 } from "./LpModal-QFfctZsj.js";
|
|
11
|
+
import { _ as _sfc_main$6 } from "./LpSelect-C4OXN_q3.js";
|
|
12
12
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
13
13
|
const _hoisted_1 = { class: "flex items-stretch gap-2" };
|
|
14
14
|
const _hoisted_2 = { class: "grid gap-3 sm:grid-cols-[minmax(0,1fr)_10rem]" };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, createVNode, createElementVNode, toDisplayString, createCommentVNode, renderSlot } from "vue";
|
|
2
2
|
import { tv } from "tailwind-variants";
|
|
3
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
3
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
4
4
|
const _hoisted_1 = ["role"];
|
|
5
5
|
const _hoisted_2 = { class: "min-w-0" };
|
|
6
6
|
const _hoisted_3 = {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { defineComponent, computed, ref, useId, watch, openBlock, createElementBlock, mergeProps, unref, createElementVNode, withModifiers, toDisplayString, createVNode, createSlots, withCtx, renderSlot, normalizeProps, guardReactiveProps, normalizeClass, createBlock } from "vue";
|
|
2
2
|
import { useLabels } from "../composables/useLpConfig.js";
|
|
3
|
-
import { _ as _sfc_main$2 } from "./LpButton-
|
|
4
|
-
import { _ as _sfc_main$3 } from "./LpIcon-
|
|
3
|
+
import { _ as _sfc_main$2 } from "./LpButton-CJSD7N0Z.js";
|
|
4
|
+
import { _ as _sfc_main$3 } from "./LpIcon-CTuDVTYv.js";
|
|
5
5
|
import { _ as _sfc_main$5 } from "./LpScrollArea-Hz3-JWUG.js";
|
|
6
6
|
import { _ as _sfc_main$4 } from "./LpShift-DXNsauQZ.js";
|
|
7
|
-
import { _ as _sfc_main$1 } from "./LpSidebar-
|
|
7
|
+
import { _ as _sfc_main$1 } from "./LpSidebar-D8tub3bt.js";
|
|
8
8
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
9
9
|
const _hoisted_1 = ["href"];
|
|
10
10
|
const _hoisted_2 = { class: "flex min-w-0 flex-1 flex-col" };
|
|
@@ -1,18 +1,27 @@
|
|
|
1
|
-
import { defineComponent, computed, useAttrs, ref, watch, openBlock, createBlock, unref, normalizeStyle, normalizeClass, withCtx, createVNode, createCommentVNode,
|
|
1
|
+
import { defineComponent, computed, useAttrs, ref, watch, openBlock, createBlock, unref, normalizeStyle, normalizeClass, withCtx, createVNode, createElementBlock, createCommentVNode, createElementVNode, mergeProps, Transition, toDisplayString, withModifiers, createTextVNode, Fragment, renderList, nextTick } from "vue";
|
|
2
2
|
import { ComboboxRoot, ComboboxAnchor, ComboboxInput, ComboboxPortal, ComboboxContent, ComboboxViewport, ComboboxEmpty, ComboboxItem } from "reka-ui";
|
|
3
3
|
import { useFieldControl } from "../composables/useField.js";
|
|
4
4
|
import { useInputFilter } from "../composables/useInputFilter.js";
|
|
5
5
|
import { useLabels } from "../composables/useLpConfig.js";
|
|
6
6
|
import { CLOSE_ICON, POPOVER_PANEL, OPTION_ITEM } from "../components/dropdown.js";
|
|
7
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
8
|
-
const _hoisted_1 = ["
|
|
9
|
-
const _hoisted_2 = {
|
|
7
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
8
|
+
const _hoisted_1 = ["src"];
|
|
9
|
+
const _hoisted_2 = { class: "relative flex min-w-0 flex-1 self-stretch" };
|
|
10
|
+
const _hoisted_3 = {
|
|
10
11
|
key: 0,
|
|
11
|
-
class: "
|
|
12
|
+
class: "pointer-events-none absolute inset-0 flex min-w-0 items-center gap-1.5",
|
|
13
|
+
"aria-hidden": "true"
|
|
12
14
|
};
|
|
13
|
-
const
|
|
14
|
-
const _hoisted_4 = { class: "truncate" };
|
|
15
|
+
const _hoisted_4 = ["aria-label"];
|
|
15
16
|
const _hoisted_5 = {
|
|
17
|
+
key: 0,
|
|
18
|
+
class: "px-3 py-4 text-center text-sm italic text-muted"
|
|
19
|
+
};
|
|
20
|
+
const _hoisted_6 = { class: "flex min-w-0 items-center gap-2.5" };
|
|
21
|
+
const _hoisted_7 = ["src"];
|
|
22
|
+
const _hoisted_8 = { class: "flex min-w-0 flex-col" };
|
|
23
|
+
const _hoisted_9 = { class: "truncate" };
|
|
24
|
+
const _hoisted_10 = {
|
|
16
25
|
key: 0,
|
|
17
26
|
class: "truncate text-xs text-muted"
|
|
18
27
|
};
|
|
@@ -35,7 +44,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
35
44
|
filter: { type: Boolean, default: true },
|
|
36
45
|
minChars: { default: 1 },
|
|
37
46
|
pattern: {},
|
|
38
|
-
restrict: {}
|
|
47
|
+
restrict: {},
|
|
48
|
+
selected: {}
|
|
39
49
|
},
|
|
40
50
|
emits: ["update:modelValue", "select"],
|
|
41
51
|
setup(__props, { emit: __emit }) {
|
|
@@ -78,6 +88,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
78
88
|
});
|
|
79
89
|
const open = ref(false);
|
|
80
90
|
const focused = ref(false);
|
|
91
|
+
const showSelected = computed(() => !!props.selected?.label && !focused.value);
|
|
92
|
+
const draft = ref(null);
|
|
93
|
+
const showImage = computed(() => !!props.selected?.image && (!focused.value || draft.value !== null));
|
|
81
94
|
const canOpen = computed(
|
|
82
95
|
() => text.value.length >= props.minChars && (props.loading || filtered.value.length > 0)
|
|
83
96
|
);
|
|
@@ -96,21 +109,33 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
96
109
|
function onInput(event) {
|
|
97
110
|
filterInput(event);
|
|
98
111
|
typing.value = true;
|
|
112
|
+
draft.value = null;
|
|
99
113
|
text.value = event.target.value;
|
|
100
114
|
}
|
|
101
|
-
function onFocus() {
|
|
115
|
+
function onFocus(event) {
|
|
102
116
|
typing.value = false;
|
|
103
117
|
focused.value = true;
|
|
118
|
+
if (props.selected?.label) {
|
|
119
|
+
draft.value = props.selected.label;
|
|
120
|
+
const input = event.target;
|
|
121
|
+
void nextTick(() => input.select());
|
|
122
|
+
}
|
|
104
123
|
if (canOpen.value) open.value = true;
|
|
105
124
|
}
|
|
125
|
+
function onBlur() {
|
|
126
|
+
focused.value = false;
|
|
127
|
+
draft.value = null;
|
|
128
|
+
}
|
|
106
129
|
function choose(opt) {
|
|
107
130
|
typing.value = false;
|
|
131
|
+
draft.value = null;
|
|
108
132
|
emit("update:modelValue", opt.value);
|
|
109
133
|
emit("select", opt.value);
|
|
110
134
|
open.value = false;
|
|
111
135
|
}
|
|
112
136
|
function clear() {
|
|
113
137
|
typing.value = false;
|
|
138
|
+
draft.value = null;
|
|
114
139
|
emit("update:modelValue", "");
|
|
115
140
|
open.value = false;
|
|
116
141
|
}
|
|
@@ -134,34 +159,66 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
134
159
|
]])
|
|
135
160
|
}, {
|
|
136
161
|
default: withCtx(() => [
|
|
137
|
-
__props.icon ? (openBlock(),
|
|
162
|
+
__props.icon || __props.selected?.image ? (openBlock(), createElementBlock("span", {
|
|
138
163
|
key: 0,
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
164
|
+
class: normalizeClass(["relative grid shrink-0 place-items-center", __props.selected?.image ? "size-5" : "size-4"])
|
|
165
|
+
}, [
|
|
166
|
+
__props.icon ? (openBlock(), createBlock(_sfc_main$1, {
|
|
167
|
+
key: 0,
|
|
168
|
+
name: __props.icon,
|
|
169
|
+
size: 16,
|
|
170
|
+
class: normalizeClass(["col-start-1 row-start-1 text-muted transition-[opacity,scale] duration-[var(--duration-fast)] motion-reduce:transition-none", showImage.value ? "scale-75 opacity-0" : "opacity-100"])
|
|
171
|
+
}, null, 8, ["name", "class"])) : createCommentVNode("", true),
|
|
172
|
+
__props.selected?.image ? (openBlock(), createElementBlock("img", {
|
|
173
|
+
key: 1,
|
|
174
|
+
src: __props.selected.image,
|
|
175
|
+
alt: "",
|
|
176
|
+
class: normalizeClass(["col-start-1 row-start-1 size-5 rounded-full object-cover transition-[opacity,scale] duration-[var(--duration-fast)] motion-reduce:transition-none", showImage.value ? "opacity-100" : "scale-75 opacity-0"])
|
|
177
|
+
}, null, 10, _hoisted_1)) : createCommentVNode("", true)
|
|
178
|
+
], 2)) : createCommentVNode("", true),
|
|
179
|
+
createElementVNode("div", _hoisted_2, [
|
|
180
|
+
createVNode(unref(ComboboxInput), mergeProps(inputAttrs.value, {
|
|
181
|
+
id: unref(field).id,
|
|
182
|
+
"model-value": draft.value ?? text.value,
|
|
183
|
+
placeholder: __props.placeholder,
|
|
184
|
+
disabled: unref(field).disabled,
|
|
185
|
+
required: unref(field).required || void 0,
|
|
186
|
+
"aria-invalid": isInvalidState.value || void 0,
|
|
187
|
+
"aria-describedby": unref(field).describedBy,
|
|
188
|
+
class: ["lp-autofill min-w-0 flex-1 self-stretch bg-transparent outline-none placeholder:text-muted", showSelected.value && "text-transparent placeholder:text-transparent"],
|
|
189
|
+
onBeforeinput: unref(onBeforeInput),
|
|
190
|
+
onPaste: unref(onPaste),
|
|
191
|
+
onCompositionend: unref(onCompositionEnd),
|
|
192
|
+
onInput,
|
|
193
|
+
onFocus,
|
|
194
|
+
onBlur
|
|
195
|
+
}), null, 16, ["id", "model-value", "placeholder", "disabled", "required", "aria-invalid", "aria-describedby", "class", "onBeforeinput", "onPaste", "onCompositionend"]),
|
|
196
|
+
createVNode(Transition, {
|
|
197
|
+
"enter-active-class": "transition-opacity duration-[var(--duration-fast)] motion-reduce:transition-none",
|
|
198
|
+
"leave-active-class": "transition-opacity duration-[var(--duration-fast)] motion-reduce:transition-none",
|
|
199
|
+
"enter-from-class": "opacity-0",
|
|
200
|
+
"leave-to-class": "opacity-0"
|
|
201
|
+
}, {
|
|
202
|
+
default: withCtx(() => [
|
|
203
|
+
__props.selected?.label ? (openBlock(), createElementBlock("span", _hoisted_3, [
|
|
204
|
+
createElementVNode("span", {
|
|
205
|
+
class: normalizeClass(["max-w-full shrink-0 truncate", showSelected.value ? "" : "invisible"])
|
|
206
|
+
}, toDisplayString(__props.selected.label), 3),
|
|
207
|
+
__props.selected.hint ? (openBlock(), createElementBlock("span", {
|
|
208
|
+
key: 0,
|
|
209
|
+
class: normalizeClass(["min-w-0 truncate text-sm text-muted transition-[opacity,translate] duration-[var(--duration-fast)] motion-reduce:transition-none", showSelected.value ? "opacity-100" : "-translate-x-1 opacity-0"])
|
|
210
|
+
}, toDisplayString(__props.selected.hint), 3)) : createCommentVNode("", true)
|
|
211
|
+
])) : createCommentVNode("", true)
|
|
212
|
+
]),
|
|
213
|
+
_: 1
|
|
214
|
+
})
|
|
215
|
+
]),
|
|
159
216
|
__props.clearable && hasValue.value ? (openBlock(), createElementBlock("button", {
|
|
160
217
|
key: 1,
|
|
161
218
|
type: "button",
|
|
162
219
|
class: "group flex shrink-0 items-center text-muted outline-none transition-colors duration-[var(--duration-fast)] hover:text-ink",
|
|
163
220
|
"aria-label": unref(labels).clear,
|
|
164
|
-
onPointerdown: _cache[
|
|
221
|
+
onPointerdown: _cache[0] || (_cache[0] = withModifiers(() => {
|
|
165
222
|
}, ["prevent"])),
|
|
166
223
|
onClick: clear
|
|
167
224
|
}, [
|
|
@@ -170,7 +227,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
170
227
|
size: 16,
|
|
171
228
|
class: normalizeClass(unref(CLOSE_ICON))
|
|
172
229
|
}, null, 8, ["class"])
|
|
173
|
-
], 40,
|
|
230
|
+
], 40, _hoisted_4)) : createCommentVNode("", true)
|
|
174
231
|
]),
|
|
175
232
|
_: 1
|
|
176
233
|
}, 8, ["class"]),
|
|
@@ -181,13 +238,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
181
238
|
position: "popper",
|
|
182
239
|
"side-offset": 6,
|
|
183
240
|
class: normalizeClass([unref(POPOVER_PANEL), "z-(--z-popover) max-h-72 w-(--reka-combobox-trigger-width) overflow-hidden"]),
|
|
184
|
-
onOpenAutoFocus: _cache[
|
|
241
|
+
onOpenAutoFocus: _cache[1] || (_cache[1] = withModifiers(() => {
|
|
185
242
|
}, ["prevent"]))
|
|
186
243
|
}, {
|
|
187
244
|
default: withCtx(() => [
|
|
188
245
|
createVNode(unref(ComboboxViewport), { class: "max-h-72 overflow-y-auto p-1" }, {
|
|
189
246
|
default: withCtx(() => [
|
|
190
|
-
__props.loading ? (openBlock(), createElementBlock("div",
|
|
247
|
+
__props.loading ? (openBlock(), createElementBlock("div", _hoisted_5, toDisplayString(__props.loadingText), 1)) : (openBlock(), createBlock(unref(ComboboxEmpty), {
|
|
191
248
|
key: 1,
|
|
192
249
|
class: "px-3 py-4 text-center text-sm italic text-muted"
|
|
193
250
|
}, {
|
|
@@ -205,9 +262,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
205
262
|
onSelect: withModifiers(($event) => choose(opt), ["prevent"])
|
|
206
263
|
}, {
|
|
207
264
|
default: withCtx(() => [
|
|
208
|
-
createElementVNode("span",
|
|
209
|
-
|
|
210
|
-
|
|
265
|
+
createElementVNode("span", _hoisted_6, [
|
|
266
|
+
opt.image ? (openBlock(), createElementBlock("img", {
|
|
267
|
+
key: 0,
|
|
268
|
+
src: opt.image,
|
|
269
|
+
alt: "",
|
|
270
|
+
class: "size-6 shrink-0 rounded-full object-cover"
|
|
271
|
+
}, null, 8, _hoisted_7)) : createCommentVNode("", true),
|
|
272
|
+
createElementVNode("span", _hoisted_8, [
|
|
273
|
+
createElementVNode("span", _hoisted_9, toDisplayString(opt.label ?? opt.value), 1),
|
|
274
|
+
opt.description ? (openBlock(), createElementBlock("span", _hoisted_10, toDisplayString(opt.description), 1)) : createCommentVNode("", true)
|
|
275
|
+
])
|
|
211
276
|
])
|
|
212
277
|
]),
|
|
213
278
|
_: 2
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { defineComponent, computed, ref, onMounted, openBlock, createBlock, withCtx, createVNode, unref, mergeProps, createCommentVNode, createElementBlock, Fragment, createTextVNode, toDisplayString } from "vue";
|
|
2
2
|
import { AvatarRoot, AvatarImage, AvatarFallback } from "reka-ui";
|
|
3
3
|
import { tv } from "tailwind-variants";
|
|
4
|
-
import { _ as _sfc_main$1 } from "./LpContextMenu-
|
|
5
|
-
import { _ as _sfc_main$2 } from "./LpIcon-
|
|
4
|
+
import { _ as _sfc_main$1 } from "./LpContextMenu-Cv_F2iCG.js";
|
|
5
|
+
import { _ as _sfc_main$2 } from "./LpIcon-CTuDVTYv.js";
|
|
6
6
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
7
7
|
const __default__ = { inheritAttrs: false };
|
|
8
8
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createElementBlock, mergeProps, unref, createElementVNode, normalizeClass, Fragment, renderList, createBlock, createCommentVNode, resolveDynamicComponent, withCtx, toDisplayString } from "vue";
|
|
2
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
2
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
3
3
|
import { useLabels, useLinkComponent } from "../composables/useLpConfig.js";
|
|
4
4
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
5
5
|
import { resolveLink } from "../components/link.js";
|
|
@@ -2,7 +2,7 @@ import { defineComponent, computed, openBlock, createBlock, resolveDynamicCompon
|
|
|
2
2
|
import { tv } from "tailwind-variants";
|
|
3
3
|
import { useLinkComponent } from "../composables/useLpConfig.js";
|
|
4
4
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
5
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
5
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
6
6
|
import { resolveLink } from "../components/link.js";
|
|
7
7
|
const __default__ = { inheritAttrs: false };
|
|
8
8
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createBlock, unref, mergeProps, withCtx, createVNode, normalizeClass, createElementBlock, Fragment, renderList, createTextVNode, toDisplayString } from "vue";
|
|
2
2
|
import { today, getLocalTimeZone, parseDate } from "@internationalized/date";
|
|
3
3
|
import { CalendarRoot, CalendarHeader, CalendarPrev, CalendarHeading, CalendarNext, CalendarGrid, CalendarGridHead, CalendarGridRow, CalendarHeadCell, CalendarGridBody, CalendarCell, CalendarCellTrigger } from "reka-ui";
|
|
4
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
4
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
5
5
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
6
6
|
const __default__ = { inheritAttrs: false };
|
|
7
7
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent, computed, openBlock, createBlock, withCtx, resolveDynamicComponent, mergeProps, unref, renderSlot } from "vue";
|
|
2
2
|
import { tv } from "tailwind-variants";
|
|
3
3
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
4
|
-
import { _ as _sfc_main$1 } from "./LpContextMenu-
|
|
4
|
+
import { _ as _sfc_main$1 } from "./LpContextMenu-Cv_F2iCG.js";
|
|
5
5
|
const __default__ = { inheritAttrs: false };
|
|
6
6
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
7
7
|
...__default__,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, openBlock, createElementBlock, mergeProps, unref, createVNode, withCtx, renderSlot, createTextVNode, toDisplayString } from "vue";
|
|
2
2
|
import { CheckboxRoot, CheckboxIndicator } from "reka-ui";
|
|
3
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
3
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
4
4
|
import { useFieldControl } from "../composables/useField.js";
|
|
5
5
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
6
6
|
const __default__ = { inheritAttrs: false };
|
|
@@ -2,7 +2,7 @@ import { defineComponent, computed, reactive, watch, ref, openBlock, createEleme
|
|
|
2
2
|
import { useClipboard } from "../composables/useClipboard.js";
|
|
3
3
|
import { tokenizeLines } from "../components/codeHighlight.js";
|
|
4
4
|
import { useLabels } from "../composables/useLpConfig.js";
|
|
5
|
-
import { _ as _sfc_main$1 } from "./LpIcon-
|
|
5
|
+
import { _ as _sfc_main$1 } from "./LpIcon-CTuDVTYv.js";
|
|
6
6
|
import { useMergedAttrs } from "../composables/useMergedClass.js";
|
|
7
7
|
const _hoisted_1 = {
|
|
8
8
|
key: 0,
|
|
@@ -5,8 +5,8 @@ import { useFieldControl } from "../composables/useField.js";
|
|
|
5
5
|
import { DEFAULT_SWATCHES, formatColor, opaqueCss, parseColor, rgbToHsv, isLight, clampHsv } from "../components/color.js";
|
|
6
6
|
import { useClipboard } from "../composables/useClipboard.js";
|
|
7
7
|
import { POPOVER_PANEL } from "../components/dropdown.js";
|
|
8
|
-
import { _ as _sfc_main$1 } from "./LpContextMenu-
|
|
9
|
-
import { _ as _sfc_main$2 } from "./LpIcon-
|
|
8
|
+
import { _ as _sfc_main$1 } from "./LpContextMenu-Cv_F2iCG.js";
|
|
9
|
+
import { _ as _sfc_main$2 } from "./LpIcon-CTuDVTYv.js";
|
|
10
10
|
import { _ as _sfc_main$3 } from "./LpRollingText-DB7upf-5.js";
|
|
11
11
|
const _hoisted_1 = ["id", "disabled", "aria-label", "aria-invalid", "aria-describedby"];
|
|
12
12
|
const _hoisted_2 = { class: "min-w-0 flex-1 truncate font-mono text-xs text-muted-strong" };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { defineComponent, computed, ref, watch, openBlock, createBlock, createSlots, withCtx, renderSlot, createElementBlock, toDisplayString, createCommentVNode, createVNode, createTextVNode, unref, createElementVNode, normalizeClass, nextTick } from "vue";
|
|
2
2
|
import { useLabels } from "../composables/useLpConfig.js";
|
|
3
|
-
import { _ as _sfc_main$2 } from "./LpButton-
|
|
4
|
-
import { _ as _sfc_main$3 } from "./LpIcon-
|
|
5
|
-
import { _ as _sfc_main$1 } from "./LpModal-
|
|
3
|
+
import { _ as _sfc_main$2 } from "./LpButton-CJSD7N0Z.js";
|
|
4
|
+
import { _ as _sfc_main$3 } from "./LpIcon-CTuDVTYv.js";
|
|
5
|
+
import { _ as _sfc_main$1 } from "./LpModal-QFfctZsj.js";
|
|
6
6
|
const _hoisted_1 = { class: "inline-flex items-center gap-2.5" };
|
|
7
7
|
const _hoisted_2 = {
|
|
8
8
|
key: 0,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, computed, ref, watch, openBlock, createBlock, createCommentVNode } from "vue";
|
|
2
2
|
import { confirmQueue, settleConfirm } from "../components/confirm.js";
|
|
3
|
-
import { _ as _sfc_main$1 } from "./LpConfirmDialog-
|
|
3
|
+
import { _ as _sfc_main$1 } from "./LpConfirmDialog-tkgyY3eu.js";
|
|
4
4
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
5
5
|
__name: "LpConfirmHost",
|
|
6
6
|
props: {
|