@astrake/lumora-ui 0.2.0 → 0.2.2

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 (187) hide show
  1. package/CHANGELOG.md +44 -1
  2. package/dist/LuCodeBlock.vue_vue_type_script_setup_true_lang-BdXflBkJ.js +1672 -0
  3. package/dist/LuEmbeddedStatusBar.vue_vue_type_script_setup_true_lang-D4rqklgo.js +218 -0
  4. package/dist/LuOverlay.vue_vue_type_script_setup_true_lang-C5jhqCgy.js +221 -0
  5. package/dist/components/LuAlert.vue.d.ts +20 -0
  6. package/dist/components/LuAvatar.vue.d.ts +19 -0
  7. package/dist/components/LuBadge.vue.d.ts +16 -0
  8. package/dist/components/LuBreadcrumb.vue.d.ts +16 -0
  9. package/dist/components/LuButton.vue.d.ts +24 -0
  10. package/dist/components/LuCard.vue.d.ts +18 -0
  11. package/dist/components/LuCheckbox.vue.d.ts +27 -0
  12. package/dist/components/LuCodeBlock.vue.d.ts +26 -0
  13. package/dist/components/LuCollapsible.vue.d.ts +25 -0
  14. package/dist/components/LuDivider.vue.d.ts +8 -0
  15. package/dist/components/LuForm.types.d.ts +18 -0
  16. package/dist/components/LuForm.vue.d.ts +55 -0
  17. package/dist/components/LuIcon.vue.d.ts +18 -0
  18. package/dist/components/LuInput.vue.d.ts +26 -0
  19. package/dist/components/LuLink.vue.d.ts +23 -0
  20. package/dist/components/LuMenu.vue.d.ts +26 -0
  21. package/dist/components/LuMenuItem.vue.d.ts +20 -0
  22. package/dist/components/LuModal.vue.d.ts +32 -0
  23. package/dist/components/LuPageHeader.vue.d.ts +10 -0
  24. package/dist/components/LuPagination.vue.d.ts +18 -0
  25. package/dist/components/LuProgressBar.vue.d.ts +7 -0
  26. package/dist/components/LuRadio.vue.d.ts +18 -0
  27. package/dist/components/LuRadioGroup.types.d.ts +8 -0
  28. package/dist/components/LuRadioGroup.vue.d.ts +24 -0
  29. package/dist/components/LuSelect.vue.d.ts +18 -0
  30. package/dist/components/LuSkeleton.vue.d.ts +5 -0
  31. package/dist/components/LuSpinner.vue.d.ts +5 -0
  32. package/dist/components/LuSwitch.vue.d.ts +15 -0
  33. package/dist/components/LuTab.vue.d.ts +16 -0
  34. package/dist/components/LuTabList.vue.d.ts +15 -0
  35. package/dist/components/LuTabPanel.vue.d.ts +16 -0
  36. package/dist/components/LuTable.vue.d.ts +15 -0
  37. package/dist/components/LuTableBody.vue.d.ts +15 -0
  38. package/dist/components/LuTableCell.vue.d.ts +15 -0
  39. package/dist/components/LuTableHead.vue.d.ts +15 -0
  40. package/dist/components/LuTableHeadCell.vue.d.ts +15 -0
  41. package/dist/components/LuTableRow.vue.d.ts +15 -0
  42. package/dist/components/LuTabs.vue.d.ts +20 -0
  43. package/dist/components/LuTag.vue.d.ts +20 -0
  44. package/dist/components/LuText.vue.d.ts +16 -0
  45. package/dist/components/LuTextarea.vue.d.ts +14 -0
  46. package/dist/components/LuThemeSelect.vue.d.ts +2 -0
  47. package/dist/components/LuThemeSwitch.vue.d.ts +2 -0
  48. package/dist/components/LuToggleButton.vue.d.ts +16 -0
  49. package/dist/components/LuToggleGroup.vue.d.ts +20 -0
  50. package/dist/components/LuTooltip.vue.d.ts +19 -0
  51. package/dist/components/__tests__/LuForm.test.d.ts +1 -0
  52. package/dist/components/_all.d.ts +3 -0
  53. package/dist/components/index.js +47 -0
  54. package/{src/composables/index.ts → dist/composables/index.d.ts} +1 -1
  55. package/dist/composables/index.js +31 -0
  56. package/dist/composables/useRail.d.ts +6 -0
  57. package/dist/composables/useShiki.d.ts +2 -0
  58. package/dist/composables/useSplit.d.ts +4 -0
  59. package/dist/composables/useTheme.d.ts +7 -0
  60. package/dist/context-CGS7Ou_x.js +36 -0
  61. package/dist/context.d.ts +8 -0
  62. package/{src/index.ts → dist/index.d.ts} +0 -1
  63. package/dist/index.js +166 -0
  64. package/dist/layout/LuDock.vue.d.ts +9 -0
  65. package/dist/layout/LuDockItem.vue.d.ts +16 -0
  66. package/dist/layout/LuFill.vue.d.ts +18 -0
  67. package/dist/layout/LuFixed.vue.d.ts +18 -0
  68. package/dist/layout/LuGrid.vue.d.ts +22 -0
  69. package/dist/layout/LuOverlay.vue.d.ts +15 -0
  70. package/dist/layout/LuScroll.vue.d.ts +15 -0
  71. package/dist/layout/LuSplit.vue.d.ts +16 -0
  72. package/dist/layout/LuSplitPane.vue.d.ts +18 -0
  73. package/dist/layout/LuSplitResizer.vue.d.ts +5 -0
  74. package/dist/layout/LuStack.vue.d.ts +25 -0
  75. package/{src/layout/index.ts → dist/layout/index.d.ts} +1 -14
  76. package/dist/layout/index.js +14 -0
  77. package/dist/plugin.d.ts +6 -0
  78. package/dist/shell/desktop/LuDesktopRailBar.vue.d.ts +17 -0
  79. package/dist/shell/desktop/LuDesktopRailItem.vue.d.ts +18 -0
  80. package/dist/shell/desktop/LuDesktopShell.vue.d.ts +23 -0
  81. package/dist/shell/desktop/LuDesktopSidebar.vue.d.ts +21 -0
  82. package/dist/shell/desktop/LuDesktopStatusBar.vue.d.ts +15 -0
  83. package/dist/shell/desktop/LuDesktopTopBar.vue.d.ts +15 -0
  84. package/dist/shell/embedded/LuEmbeddedShell.vue.d.ts +19 -0
  85. package/dist/shell/embedded/LuEmbeddedStatusBar.vue.d.ts +17 -0
  86. package/dist/shell/embedded/LuEmbeddedTopBar.vue.d.ts +19 -0
  87. package/{src/shell/index.ts → dist/shell/index.d.ts} +0 -1
  88. package/dist/shell/index.js +15 -0
  89. package/dist/shell/mobile/LuMobileHeader.vue.d.ts +19 -0
  90. package/dist/shell/mobile/LuMobileNavBar.vue.d.ts +15 -0
  91. package/dist/shell/mobile/LuMobileShell.vue.d.ts +21 -0
  92. package/dist/skins/components.d.ts +2 -0
  93. package/dist/skins/default.d.ts +2 -0
  94. package/dist/skins/index.js +446 -0
  95. package/dist/skins/layout.d.ts +2 -0
  96. package/dist/skins/shell/desktop.d.ts +2 -0
  97. package/dist/skins/shell/embedded.d.ts +2 -0
  98. package/dist/skins/shell/mobile.d.ts +2 -0
  99. package/dist/tailwind.d.ts +1 -0
  100. package/dist/tailwind.js +13 -0
  101. package/dist/types.d.ts +15 -0
  102. package/dist/useShiki-DPOJfneq.js +30 -0
  103. package/dist/utils.d.ts +10 -0
  104. package/package.json +37 -12
  105. package/src/lumora.css +32 -0
  106. package/src/components/LuAlert.vue +0 -33
  107. package/src/components/LuAvatar.vue +0 -22
  108. package/src/components/LuBadge.vue +0 -15
  109. package/src/components/LuBreadcrumb.vue +0 -63
  110. package/src/components/LuButton.vue +0 -58
  111. package/src/components/LuCard.vue +0 -27
  112. package/src/components/LuCheckbox.vue +0 -94
  113. package/src/components/LuCodeBlock.vue +0 -168
  114. package/src/components/LuCollapsible.vue +0 -34
  115. package/src/components/LuDivider.vue +0 -18
  116. package/src/components/LuForm.types.ts +0 -24
  117. package/src/components/LuForm.vue +0 -121
  118. package/src/components/LuIcon.vue +0 -39
  119. package/src/components/LuInput.vue +0 -82
  120. package/src/components/LuLink.vue +0 -47
  121. package/src/components/LuMenu.vue +0 -86
  122. package/src/components/LuMenuItem.vue +0 -37
  123. package/src/components/LuModal.vue +0 -115
  124. package/src/components/LuPageHeader.vue +0 -24
  125. package/src/components/LuPagination.vue +0 -118
  126. package/src/components/LuProgressBar.vue +0 -21
  127. package/src/components/LuRadio.vue +0 -55
  128. package/src/components/LuRadioGroup.types.ts +0 -10
  129. package/src/components/LuRadioGroup.vue +0 -66
  130. package/src/components/LuSelect.vue +0 -67
  131. package/src/components/LuSkeleton.vue +0 -15
  132. package/src/components/LuSpinner.vue +0 -36
  133. package/src/components/LuSwitch.vue +0 -76
  134. package/src/components/LuTab.vue +0 -26
  135. package/src/components/LuTabList.vue +0 -15
  136. package/src/components/LuTabPanel.vue +0 -19
  137. package/src/components/LuTable.vue +0 -15
  138. package/src/components/LuTableBody.vue +0 -15
  139. package/src/components/LuTableCell.vue +0 -15
  140. package/src/components/LuTableHead.vue +0 -15
  141. package/src/components/LuTableHeadCell.vue +0 -15
  142. package/src/components/LuTableRow.vue +0 -15
  143. package/src/components/LuTabs.vue +0 -30
  144. package/src/components/LuTag.vue +0 -35
  145. package/src/components/LuText.vue +0 -18
  146. package/src/components/LuTextarea.vue +0 -62
  147. package/src/components/LuThemeSelect.vue +0 -26
  148. package/src/components/LuThemeSwitch.vue +0 -22
  149. package/src/components/LuToggleButton.vue +0 -35
  150. package/src/components/LuToggleGroup.vue +0 -27
  151. package/src/components/LuTooltip.vue +0 -36
  152. package/src/components/__tests__/LuForm.test.ts +0 -206
  153. package/src/composables/useRail.ts +0 -24
  154. package/src/composables/useSplit.ts +0 -17
  155. package/src/composables/useTheme.ts +0 -36
  156. package/src/context.ts +0 -39
  157. package/src/layout/LuDock.vue +0 -56
  158. package/src/layout/LuDockItem.vue +0 -20
  159. package/src/layout/LuFill.vue +0 -27
  160. package/src/layout/LuFixed.vue +0 -27
  161. package/src/layout/LuGrid.vue +0 -45
  162. package/src/layout/LuOverlay.vue +0 -17
  163. package/src/layout/LuScroll.vue +0 -19
  164. package/src/layout/LuSplit.vue +0 -23
  165. package/src/layout/LuSplitPane.vue +0 -32
  166. package/src/layout/LuSplitResizer.vue +0 -19
  167. package/src/layout/LuStack.vue +0 -29
  168. package/src/plugin.ts +0 -28
  169. package/src/shell/desktop/LuDesktopRailBar.vue +0 -23
  170. package/src/shell/desktop/LuDesktopRailItem.vue +0 -23
  171. package/src/shell/desktop/LuDesktopShell.vue +0 -25
  172. package/src/shell/desktop/LuDesktopSidebar.vue +0 -36
  173. package/src/shell/desktop/LuDesktopStatusBar.vue +0 -15
  174. package/src/shell/desktop/LuDesktopTopBar.vue +0 -15
  175. package/src/shell/embedded/LuEmbeddedShell.vue +0 -20
  176. package/src/shell/embedded/LuEmbeddedStatusBar.vue +0 -16
  177. package/src/shell/embedded/LuEmbeddedTopBar.vue +0 -17
  178. package/src/shell/mobile/LuMobileHeader.vue +0 -17
  179. package/src/shell/mobile/LuMobileNavBar.vue +0 -15
  180. package/src/shell/mobile/LuMobileShell.vue +0 -21
  181. package/src/skins/default.ts +0 -426
  182. package/src/tailwind.ts +0 -25
  183. package/src/types.ts +0 -18
  184. package/src/utils.ts +0 -95
  185. package/tsconfig.json +0 -10
  186. /package/{src/components/index.ts → dist/components/index.d.ts} +0 -0
  187. /package/{src/skins/index.ts → dist/skins/index.d.ts} +0 -0
@@ -0,0 +1,218 @@
1
+ import { defineComponent as c, computed as n, openBlock as u, createElementBlock as v, mergeProps as p, renderSlot as a, createElementVNode as L, normalizeClass as S, ref as _, createCommentVNode as h, useSlots as D, Fragment as B } from "vue";
2
+ import { u as d } from "./context-CGS7Ou_x.js";
3
+ const y = /* @__PURE__ */ c({
4
+ __name: "LuDesktopShell",
5
+ props: {
6
+ variant: {}
7
+ },
8
+ setup(r) {
9
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuDesktopShell", t.variant)), e = n(() => s("LuDesktopShellContentWrapper")), o = n(() => s("LuDesktopShellMainContent"));
10
+ return (i, k) => (u(), v("div", p(i.$attrs, { class: l.value }), [
11
+ a(i.$slots, "topbar"),
12
+ L("div", {
13
+ class: S(e.value)
14
+ }, [
15
+ a(i.$slots, "rail"),
16
+ a(i.$slots, "sidebar"),
17
+ L("div", {
18
+ class: S(o.value)
19
+ }, [
20
+ a(i.$slots, "content")
21
+ ], 2)
22
+ ], 2),
23
+ a(i.$slots, "statusbar")
24
+ ], 16));
25
+ }
26
+ }), R = /* @__PURE__ */ c({
27
+ __name: "LuDesktopRailBar",
28
+ props: {
29
+ variant: {},
30
+ expanded: { type: Boolean },
31
+ expandOnHover: { type: Boolean }
32
+ },
33
+ setup(r) {
34
+ const t = r, s = _(!1), l = n(() => t.expanded || t.expandOnHover && s.value), e = ($) => {
35
+ s.value = $;
36
+ }, { resolveSkin: o } = d(), i = n(() => o("LuDesktopRailBar", t.variant)), k = n(() => o("LuDesktopRailBar", "expanded"));
37
+ return ($, m) => (u(), v("div", p($.$attrs, {
38
+ class: [i.value, l.value ? k.value : ""],
39
+ onMouseenter: m[0] || (m[0] = (b) => e(!0)),
40
+ onMouseleave: m[1] || (m[1] = (b) => e(!1))
41
+ }), [
42
+ a($.$slots, "default")
43
+ ], 16));
44
+ }
45
+ }), g = /* @__PURE__ */ c({
46
+ __name: "LuDesktopRailItem",
47
+ props: {
48
+ variant: {},
49
+ active: { type: Boolean }
50
+ },
51
+ setup(r) {
52
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuDesktopRailItem", t.variant)), e = n(() => s("LuDesktopRailItem", "active")), o = n(() => s("LuDesktopRailItemIcon", t.variant)), i = n(() => s("LuDesktopRailItemLabel", t.variant));
53
+ return (k, $) => (u(), v("div", p(k.$attrs, {
54
+ class: [l.value, r.active ? e.value : ""]
55
+ }), [
56
+ L("div", {
57
+ class: S(o.value)
58
+ }, [
59
+ a(k.$slots, "icon")
60
+ ], 2),
61
+ k.$slots.default ? (u(), v("div", {
62
+ key: 0,
63
+ class: S(i.value)
64
+ }, [
65
+ a(k.$slots, "default")
66
+ ], 2)) : h("", !0)
67
+ ], 16));
68
+ }
69
+ }), H = /* @__PURE__ */ c({
70
+ __name: "LuDesktopTopBar",
71
+ props: {
72
+ variant: {}
73
+ },
74
+ setup(r) {
75
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuDesktopTopBar", t.variant));
76
+ return (e, o) => (u(), v("div", p(e.$attrs, { class: l.value }), [
77
+ a(e.$slots, "default")
78
+ ], 16));
79
+ }
80
+ }), I = /* @__PURE__ */ c({
81
+ __name: "LuDesktopSidebar",
82
+ props: {
83
+ variant: {}
84
+ },
85
+ setup(r) {
86
+ const t = r, s = D(), l = n(() => !!s.header), e = n(() => !!s.content), o = n(() => !!s.footer), { resolveSkin: i } = d(), k = n(() => i("LuDesktopSidebar", t.variant)), $ = n(() => i("LuDesktopSidebarHeader", t.variant)), m = n(() => i("LuDesktopSidebarContent", t.variant)), b = n(() => i("LuDesktopSidebarFooter", t.variant));
87
+ return (f, C) => (u(), v("div", p(f.$attrs, { class: k.value }), [
88
+ l.value || e.value || o.value ? (u(), v(B, { key: 0 }, [
89
+ l.value ? (u(), v("div", {
90
+ key: 0,
91
+ class: S($.value)
92
+ }, [
93
+ a(f.$slots, "header")
94
+ ], 2)) : h("", !0),
95
+ L("div", {
96
+ class: S(m.value)
97
+ }, [
98
+ a(f.$slots, "content")
99
+ ], 2),
100
+ o.value ? (u(), v("div", {
101
+ key: 1,
102
+ class: S(b.value)
103
+ }, [
104
+ a(f.$slots, "footer")
105
+ ], 2)) : h("", !0)
106
+ ], 64)) : a(f.$slots, "default", { key: 1 })
107
+ ], 16));
108
+ }
109
+ }), N = /* @__PURE__ */ c({
110
+ __name: "LuDesktopStatusBar",
111
+ props: {
112
+ variant: {}
113
+ },
114
+ setup(r) {
115
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuDesktopStatusBar", t.variant));
116
+ return (e, o) => (u(), v("div", p(e.$attrs, { class: l.value }), [
117
+ a(e.$slots, "default")
118
+ ], 16));
119
+ }
120
+ }), T = /* @__PURE__ */ c({
121
+ __name: "LuMobileShell",
122
+ props: {
123
+ variant: {}
124
+ },
125
+ setup(r) {
126
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuMobileShell", t.variant)), e = n(() => s("LuMobileShellContent"));
127
+ return (o, i) => (u(), v("div", p(o.$attrs, { class: l.value }), [
128
+ a(o.$slots, "header"),
129
+ L("div", {
130
+ class: S(e.value)
131
+ }, [
132
+ a(o.$slots, "content")
133
+ ], 2),
134
+ a(o.$slots, "navbar"),
135
+ a(o.$slots, "drawer")
136
+ ], 16));
137
+ }
138
+ }), F = /* @__PURE__ */ c({
139
+ __name: "LuMobileHeader",
140
+ props: {
141
+ variant: {}
142
+ },
143
+ setup(r) {
144
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuMobileHeader", t.variant));
145
+ return (e, o) => (u(), v("div", p(e.$attrs, { class: l.value }), [
146
+ a(e.$slots, "left"),
147
+ a(e.$slots, "default"),
148
+ a(e.$slots, "right")
149
+ ], 16));
150
+ }
151
+ }), O = /* @__PURE__ */ c({
152
+ __name: "LuMobileNavBar",
153
+ props: {
154
+ variant: {}
155
+ },
156
+ setup(r) {
157
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuMobileNavBar", t.variant));
158
+ return (e, o) => (u(), v("div", p(e.$attrs, { class: l.value }), [
159
+ a(e.$slots, "default")
160
+ ], 16));
161
+ }
162
+ }), V = /* @__PURE__ */ c({
163
+ __name: "LuEmbeddedShell",
164
+ props: {
165
+ variant: {}
166
+ },
167
+ setup(r) {
168
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuEmbeddedShell", t.variant)), e = n(() => s("LuEmbeddedShellContent", t.variant));
169
+ return (o, i) => (u(), v("div", p(o.$attrs, { class: l.value }), [
170
+ a(o.$slots, "topbar"),
171
+ L("div", {
172
+ class: S(e.value)
173
+ }, [
174
+ a(o.$slots, "content")
175
+ ], 2),
176
+ a(o.$slots, "bottombar")
177
+ ], 16));
178
+ }
179
+ }), W = /* @__PURE__ */ c({
180
+ __name: "LuEmbeddedTopBar",
181
+ props: {
182
+ variant: {}
183
+ },
184
+ setup(r) {
185
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuEmbeddedTopBar", t.variant));
186
+ return (e, o) => (u(), v("div", p(e.$attrs, { class: l.value }), [
187
+ a(e.$slots, "left"),
188
+ a(e.$slots, "default"),
189
+ a(e.$slots, "right")
190
+ ], 16));
191
+ }
192
+ }), j = /* @__PURE__ */ c({
193
+ __name: "LuEmbeddedStatusBar",
194
+ props: {
195
+ variant: {}
196
+ },
197
+ setup(r) {
198
+ const t = r, { resolveSkin: s } = d(), l = n(() => s("LuEmbeddedStatusBar", t.variant));
199
+ return (e, o) => (u(), v("div", p(e.$attrs, { class: l.value }), [
200
+ a(e.$slots, "left"),
201
+ a(e.$slots, "right")
202
+ ], 16));
203
+ }
204
+ });
205
+ export {
206
+ R as _,
207
+ g as a,
208
+ y as b,
209
+ I as c,
210
+ N as d,
211
+ H as e,
212
+ V as f,
213
+ j as g,
214
+ W as h,
215
+ F as i,
216
+ O as j,
217
+ T as k
218
+ };
@@ -0,0 +1,221 @@
1
+ import { defineComponent as u, computed as c, openBlock as v, createBlock as $, resolveDynamicComponent as g, mergeProps as p, withCtx as k, renderSlot as f, h, Fragment as x, Comment as b, createElementBlock as _, provide as B, readonly as D, inject as C, ref as F, unref as j } from "vue";
2
+ import { u as d } from "./context-CGS7Ou_x.js";
3
+ const P = /* @__PURE__ */ u({
4
+ __name: "LuStack",
5
+ props: {
6
+ direction: {},
7
+ variant: {},
8
+ as: { default: "div" },
9
+ gap: {},
10
+ align: {},
11
+ justify: {}
12
+ },
13
+ setup(t) {
14
+ const e = t, { resolveSkin: o } = d(), r = {
15
+ center: "items-center",
16
+ start: "items-start",
17
+ end: "items-end",
18
+ stretch: "items-stretch",
19
+ baseline: "items-baseline"
20
+ }, s = {
21
+ center: "justify-center",
22
+ start: "justify-start",
23
+ end: "justify-end",
24
+ between: "justify-between",
25
+ around: "justify-around",
26
+ evenly: "justify-evenly"
27
+ }, l = c(() => {
28
+ const a = o("LuStack", e.direction ?? e.variant), n = e.gap !== void 0 ? `gap-${e.gap}` : "", i = e.align ? r[e.align] ?? "" : "", m = e.justify ? s[e.justify] ?? "" : "";
29
+ return [a, n, i, m].filter(Boolean).join(" ");
30
+ });
31
+ return (a, n) => (v(), $(g(t.as), p(a.$attrs, { class: l.value }), {
32
+ default: k(() => [
33
+ f(a.$slots, "default")
34
+ ]),
35
+ _: 3
36
+ }, 16, ["class"]));
37
+ }
38
+ }), O = /* @__PURE__ */ u({
39
+ __name: "LuGrid",
40
+ props: {
41
+ cols: {},
42
+ smCols: {},
43
+ mdCols: {},
44
+ lgCols: {},
45
+ variant: {},
46
+ as: { default: "div" }
47
+ },
48
+ setup(t) {
49
+ const e = t, o = c(() => {
50
+ const a = { 1: "grid-cols-1", 2: "grid-cols-2", 3: "grid-cols-3", 4: "grid-cols-4", 5: "grid-cols-5", 6: "grid-cols-6", 12: "grid-cols-12" }, n = e.smCols && a[e.smCols] ? `sm:${a[e.smCols]}` : "", i = e.mdCols && a[e.mdCols] ? `md:${a[e.mdCols]}` : "", m = e.lgCols && a[e.lgCols] ? `lg:${a[e.lgCols]}` : "";
51
+ return [n, i, m].filter(Boolean).join(" ");
52
+ }), { resolveSkin: r } = d(), s = c(() => [
53
+ r("LuGrid", e.variant),
54
+ o.value
55
+ ].filter(Boolean).join(" ")), l = c(
56
+ () => e.cols ? { gridTemplateColumns: `repeat(${e.cols}, minmax(0, 1fr))` } : {}
57
+ );
58
+ return (a, n) => (v(), $(g(t.as), p(a.$attrs, {
59
+ class: s.value,
60
+ style: l.value
61
+ }), {
62
+ default: k(() => [
63
+ f(a.$slots, "default")
64
+ ]),
65
+ _: 3
66
+ }, 16, ["class", "style"]));
67
+ }
68
+ }), R = u({
69
+ name: "LuDock",
70
+ props: {
71
+ variant: String
72
+ },
73
+ setup(t, { slots: e, attrs: o }) {
74
+ const { resolveSkin: r } = d(), s = c(() => r("LuDock", t.variant));
75
+ function l(a) {
76
+ let n = [];
77
+ for (const i of a)
78
+ Array.isArray(i) ? n.push(...l(i)) : i.type === x ? n.push(...l(i.children)) : i && i.type && i.type !== b && n.push(i);
79
+ return n;
80
+ }
81
+ return () => {
82
+ var m;
83
+ const a = e.default ? e.default() : [], n = l(a);
84
+ if (n.length === 0)
85
+ return h("div", { ...o, class: s.value });
86
+ let i = h("div", { class: "flex flex-col flex-1 min-h-0 min-w-0 overflow-hidden" }, [n[n.length - 1]]);
87
+ for (let y = n.length - 2; y >= 0; y--) {
88
+ const L = n[y], S = ((m = L.props) == null ? void 0 : m.dock) || "left", z = S === "top" || S === "bottom" ? "flex-col" : "flex-row", w = S === "top" || S === "left" ? [L, i] : [i, L];
89
+ i = h("div", { class: `flex ${z} flex-1 min-h-0 min-w-0 overflow-hidden` }, w);
90
+ }
91
+ return h("div", { ...o, class: s.value }, [i]);
92
+ };
93
+ }
94
+ }), T = /* @__PURE__ */ u({
95
+ __name: "LuDockItem",
96
+ props: {
97
+ dock: {},
98
+ variant: {}
99
+ },
100
+ setup(t) {
101
+ const e = t, { resolveSkin: o } = d(), r = c(() => [
102
+ o("LuDockItem", e.dock ?? e.variant)
103
+ ]);
104
+ return (s, l) => (v(), _("div", p(s.$attrs, { class: r.value }), [
105
+ f(s.$slots, "default")
106
+ ], 16));
107
+ }
108
+ }), V = /* @__PURE__ */ u({
109
+ __name: "LuSplit",
110
+ props: {
111
+ direction: {},
112
+ variant: {}
113
+ },
114
+ setup(t) {
115
+ const e = t, o = c(() => e.direction ?? "horizontal");
116
+ B("lu-split-direction", D(o));
117
+ const { resolveSkin: r } = d(), s = c(() => r("LuSplit", e.direction ?? e.variant));
118
+ return (l, a) => (v(), _("div", p(l.$attrs, { class: s.value }), [
119
+ f(l.$slots, "default")
120
+ ], 16));
121
+ }
122
+ }), E = /* @__PURE__ */ u({
123
+ __name: "LuSplitPane",
124
+ props: {
125
+ minSize: {},
126
+ maxSize: {},
127
+ defaultSize: {},
128
+ variant: {}
129
+ },
130
+ setup(t) {
131
+ const e = t, o = C("lu-split-direction", "horizontal"), r = F(e.defaultSize), s = c(() => {
132
+ if (r.value === void 0) return { flex: "1 1 0%" };
133
+ const n = `${r.value}px`;
134
+ return j(o) === "horizontal" ? { width: n, flex: `0 0 ${n}` } : { height: n, flex: `0 0 ${n}` };
135
+ }), { resolveSkin: l } = d(), a = c(() => l("LuSplitPane", e.variant));
136
+ return (n, i) => (v(), _("div", p(n.$attrs, {
137
+ class: a.value,
138
+ style: s.value
139
+ }), [
140
+ f(n.$slots, "default")
141
+ ], 16));
142
+ }
143
+ }), J = /* @__PURE__ */ u({
144
+ __name: "LuSplitResizer",
145
+ props: {
146
+ variant: {}
147
+ },
148
+ setup(t) {
149
+ const e = C("lu-split-direction", "horizontal"), { resolveSkin: o } = d(), r = c(() => [
150
+ o("LuSplitResizer", j(e) === "horizontal" ? "horizontal" : "vertical")
151
+ ]);
152
+ return (s, l) => (v(), _("div", p(s.$attrs, { class: r.value }), null, 16));
153
+ }
154
+ }), N = /* @__PURE__ */ u({
155
+ __name: "LuScroll",
156
+ props: {
157
+ variant: {}
158
+ },
159
+ setup(t) {
160
+ const e = t, { resolveSkin: o } = d(), r = c(() => [
161
+ o("LuScroll", e.variant)
162
+ ]);
163
+ return (s, l) => (v(), _("div", p(s.$attrs, { class: r.value }), [
164
+ f(s.$slots, "default")
165
+ ], 16));
166
+ }
167
+ }), U = /* @__PURE__ */ u({
168
+ __name: "LuFill",
169
+ props: {
170
+ variant: {},
171
+ as: { default: "div" }
172
+ },
173
+ setup(t) {
174
+ const e = t, { resolveSkin: o } = d(), r = c(() => o("LuFill", e.variant));
175
+ return (s, l) => (v(), $(g(t.as), p(s.$attrs, { class: r.value }), {
176
+ default: k(() => [
177
+ f(s.$slots, "default")
178
+ ]),
179
+ _: 3
180
+ }, 16, ["class"]));
181
+ }
182
+ }), Y = /* @__PURE__ */ u({
183
+ __name: "LuFixed",
184
+ props: {
185
+ variant: {},
186
+ as: { default: "div" }
187
+ },
188
+ setup(t) {
189
+ const e = t, { resolveSkin: o } = d(), r = c(() => o("LuFixed", e.variant));
190
+ return (s, l) => (v(), $(g(t.as), p(s.$attrs, { class: r.value }), {
191
+ default: k(() => [
192
+ f(s.$slots, "default")
193
+ ]),
194
+ _: 3
195
+ }, 16, ["class"]));
196
+ }
197
+ }), q = /* @__PURE__ */ u({
198
+ __name: "LuOverlay",
199
+ props: {
200
+ variant: {}
201
+ },
202
+ setup(t) {
203
+ const e = t, { resolveSkin: o } = d(), r = c(() => o("LuOverlay", e.variant));
204
+ return (s, l) => (v(), _("div", p(s.$attrs, { class: r.value }), [
205
+ f(s.$slots, "default")
206
+ ], 16));
207
+ }
208
+ });
209
+ export {
210
+ R as _,
211
+ T as a,
212
+ U as b,
213
+ Y as c,
214
+ O as d,
215
+ q as e,
216
+ N as f,
217
+ V as g,
218
+ E as h,
219
+ J as i,
220
+ P as j
221
+ };
@@ -0,0 +1,20 @@
1
+ type __VLS_Props = {
2
+ variant?: string;
3
+ icon?: string;
4
+ };
5
+ declare var __VLS_1: {}, __VLS_6: {}, __VLS_8: {};
6
+ type __VLS_Slots = {} & {
7
+ icon?: (props: typeof __VLS_1) => any;
8
+ } & {
9
+ default?: (props: typeof __VLS_6) => any;
10
+ } & {
11
+ action?: (props: typeof __VLS_8) => any;
12
+ };
13
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
15
+ export default _default;
16
+ type __VLS_WithSlots<T, S> = T & {
17
+ new (): {
18
+ $slots: S;
19
+ };
20
+ };
@@ -0,0 +1,19 @@
1
+ type __VLS_Props = {
2
+ variant?: string;
3
+ src?: string;
4
+ fallback?: string;
5
+ alt?: string;
6
+ size?: string;
7
+ };
8
+ declare var __VLS_1: {};
9
+ type __VLS_Slots = {} & {
10
+ default?: (props: typeof __VLS_1) => any;
11
+ };
12
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
14
+ export default _default;
15
+ type __VLS_WithSlots<T, S> = T & {
16
+ new (): {
17
+ $slots: S;
18
+ };
19
+ };
@@ -0,0 +1,16 @@
1
+ type __VLS_Props = {
2
+ variant?: string;
3
+ as?: string;
4
+ };
5
+ declare var __VLS_6: {};
6
+ type __VLS_Slots = {} & {
7
+ default?: (props: typeof __VLS_6) => any;
8
+ };
9
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
@@ -0,0 +1,16 @@
1
+ export interface LuBreadcrumbItem {
2
+ label: string;
3
+ href?: string;
4
+ to?: any;
5
+ current?: boolean;
6
+ icon?: string;
7
+ }
8
+ type __VLS_Props = {
9
+ items: LuBreadcrumbItem[];
10
+ variant?: string;
11
+ separatorIcon?: string;
12
+ };
13
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
14
+ separatorIcon: string;
15
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
16
+ export default _default;
@@ -0,0 +1,24 @@
1
+ type __VLS_Props = {
2
+ type?: "button" | "submit" | "reset";
3
+ disabled?: boolean;
4
+ variant?: string;
5
+ as?: string;
6
+ to?: any;
7
+ href?: string;
8
+ };
9
+ declare var __VLS_10: {};
10
+ type __VLS_Slots = {} & {
11
+ default?: (props: typeof __VLS_10) => any;
12
+ };
13
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
14
+ click: (event: MouseEvent) => any;
15
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
16
+ onClick?: ((event: MouseEvent) => any) | undefined;
17
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
19
+ export default _default;
20
+ type __VLS_WithSlots<T, S> = T & {
21
+ new (): {
22
+ $slots: S;
23
+ };
24
+ };
@@ -0,0 +1,18 @@
1
+ type __VLS_Props = {
2
+ variant?: string;
3
+ as?: string;
4
+ };
5
+ declare var __VLS_6: {};
6
+ type __VLS_Slots = {} & {
7
+ default?: (props: typeof __VLS_6) => any;
8
+ };
9
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
10
+ as: string;
11
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
13
+ export default _default;
14
+ type __VLS_WithSlots<T, S> = T & {
15
+ new (): {
16
+ $slots: S;
17
+ };
18
+ };
@@ -0,0 +1,27 @@
1
+ type __VLS_Props = {
2
+ modelValue?: boolean;
3
+ variant?: string;
4
+ name?: string;
5
+ label?: string;
6
+ error?: string | null;
7
+ };
8
+ declare var __VLS_1: {};
9
+ type __VLS_Slots = {} & {
10
+ default?: (props: typeof __VLS_1) => any;
11
+ };
12
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
13
+ blur: () => any;
14
+ "update:modelValue": (value: boolean) => any;
15
+ change: (value: boolean) => any;
16
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
17
+ onBlur?: (() => any) | undefined;
18
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
19
+ onChange?: ((value: boolean) => any) | undefined;
20
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
21
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
22
+ export default _default;
23
+ type __VLS_WithSlots<T, S> = T & {
24
+ new (): {
25
+ $slots: S;
26
+ };
27
+ };
@@ -0,0 +1,26 @@
1
+ type __VLS_Props = {
2
+ code: string;
3
+ lang?: string;
4
+ variant?: "default" | "preview";
5
+ layout?: "tabbed" | "split";
6
+ title?: string;
7
+ description?: string;
8
+ };
9
+ declare var __VLS_19: {}, __VLS_31: {};
10
+ type __VLS_Slots = {} & {
11
+ preview?: (props: typeof __VLS_19) => any;
12
+ } & {
13
+ preview?: (props: typeof __VLS_31) => any;
14
+ };
15
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
16
+ variant: "default" | "preview";
17
+ lang: string;
18
+ layout: "tabbed" | "split";
19
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
20
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
21
+ export default _default;
22
+ type __VLS_WithSlots<T, S> = T & {
23
+ new (): {
24
+ $slots: S;
25
+ };
26
+ };
@@ -0,0 +1,25 @@
1
+ type __VLS_Props = {
2
+ variant?: string;
3
+ modelValue?: boolean;
4
+ defaultOpen?: boolean;
5
+ };
6
+ declare var __VLS_1: {
7
+ isOpen: boolean;
8
+ }, __VLS_7: {};
9
+ type __VLS_Slots = {} & {
10
+ trigger?: (props: typeof __VLS_1) => any;
11
+ } & {
12
+ content?: (props: typeof __VLS_7) => any;
13
+ };
14
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
15
+ "update:modelValue": (val: boolean) => any;
16
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
17
+ "onUpdate:modelValue"?: ((val: boolean) => any) | undefined;
18
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
19
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
20
+ export default _default;
21
+ type __VLS_WithSlots<T, S> = T & {
22
+ new (): {
23
+ $slots: S;
24
+ };
25
+ };
@@ -0,0 +1,8 @@
1
+ type __VLS_Props = {
2
+ variant?: string;
3
+ orientation?: "horizontal" | "vertical";
4
+ };
5
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
6
+ orientation: "horizontal" | "vertical";
7
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ export default _default;
@@ -0,0 +1,18 @@
1
+ import type { InjectionKey, Ref } from "vue";
2
+ export type LuFormValidator = (value: unknown) => string | null | Promise<string | null>;
3
+ export type LuFormRules = Record<string, LuFormValidator | LuFormValidator[]>;
4
+ export type LuFormErrors = Record<string, string>;
5
+ export interface LuFormFieldRegistration {
6
+ name: string;
7
+ getValue: () => unknown;
8
+ setValue: (v: unknown) => void;
9
+ setError: (msg: string | null) => void;
10
+ }
11
+ export declare const LuFormContextKey: InjectionKey<LuFormContext>;
12
+ export interface LuFormContext {
13
+ register(field: LuFormFieldRegistration): void;
14
+ unregister(name: string): void;
15
+ getError(name: string): string | null;
16
+ validateOn: Readonly<Ref<"submit" | "blur" | "both">>;
17
+ disabled: Readonly<Ref<boolean>>;
18
+ }