@brumaombra/ui-vintage 0.4.0 → 0.5.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.
Files changed (220) hide show
  1. package/dist/{AlertDialogTitle.vue_vue_type_script_setup_true_lang-Ca0g2mVz.js → AlertDialogTitle.vue_vue_type_script_setup_true_lang-_UW48pv7.js} +6 -5
  2. package/dist/{Busy-D1u_LUYu.js → Busy-BaCc_Jo8.js} +2 -1
  3. package/dist/{CalendarPrevButton.vue_vue_type_script_setup_true_lang-BA4Aw_Sl.js → CalendarPrevButton.vue_vue_type_script_setup_true_lang-DdzS6YGM.js} +18 -11
  4. package/dist/Card.vue_vue_type_script_setup_true_lang-D0pFVflK.js +30 -0
  5. package/dist/{Card.vue_vue_type_script_setup_true_lang-6ol3rxy1.js → CardContent.vue_vue_type_script_setup_true_lang-dBzO0q1t.js} +3 -8
  6. package/dist/{CardFooter.vue_vue_type_script_setup_true_lang-B1eS9wge.js → CardFooter.vue_vue_type_script_setup_true_lang-B5EqgrgN.js} +1 -19
  7. package/dist/CardText.vue_vue_type_script_setup_true_lang-DbDhSd3h.js +22 -0
  8. package/dist/{Collection-Coi6nyvb.js → Collection-4P3HQ4uU.js} +1 -1
  9. package/dist/{ConfigProvider-D2O0Jles.js → ConfigProvider-DYO65bNW.js} +1 -1
  10. package/dist/DatePicker.vue_vue_type_script_setup_true_lang-C2Ug81pX.js +88 -0
  11. package/dist/DialogClose-DxCTEp0d.js +36 -0
  12. package/dist/{DialogPortal-D81oXsCY.js → DialogPortal-BiMJAKLg.js} +1 -1
  13. package/dist/{DialogTitle-CLuntLBB.js → DialogTitle-jKgSCoXM.js} +10 -6
  14. package/dist/{DialogTitle.vue_vue_type_script_setup_true_lang-BG4dvMRo.js → DialogTitle.vue_vue_type_script_setup_true_lang-CycrzAMT.js} +33 -10
  15. package/dist/{DialogTrigger-BQbSAHMb.js → DialogTrigger-Cb3rLcid.js} +5 -35
  16. package/dist/EmptyStateCard.vue_vue_type_script_setup_true_lang-BYKX6WRQ.js +59 -0
  17. package/dist/{FocusScope-DYbCtSNc.js → FocusScope-mzbqk6Y_.js} +8 -14
  18. package/dist/HugeiconsIcon.vue-By2RXWWz.js +111 -0
  19. package/dist/{Input.vue_vue_type_script_setup_true_lang-6SfPeT8d.js → Input.vue_vue_type_script_setup_true_lang-BdjbS5s7.js} +1 -1
  20. package/dist/{Label.vue_vue_type_script_setup_true_lang-pMIzCHzV.js → Label.vue_vue_type_script_setup_true_lang-CdLIMAdF.js} +2 -2
  21. package/dist/LandingContent.vue_vue_type_script_setup_true_lang-Wgtl_yeD.js +21 -0
  22. package/dist/LandingFooter.vue_vue_type_script_setup_true_lang-CDy30mYg.js +159 -0
  23. package/dist/LandingNavbar.vue_vue_type_script_setup_true_lang-0jX2tmdb.js +59 -0
  24. package/dist/LandingShell.vue_vue_type_script_setup_true_lang-BXwdQR24.js +49 -0
  25. package/dist/LanguageFlag.vue_vue_type_script_setup_true_lang-CgszKeNv.js +68 -0
  26. package/dist/LoadMoreButton.vue_vue_type_script_setup_true_lang-CGhFcsF-.js +61 -0
  27. package/dist/LoadingStateCard.vue_vue_type_script_setup_true_lang-DwyQjtZ3.js +53 -0
  28. package/dist/{MessageToast-C1L25W2l.js → MessageToast-uKrMyOZf.js} +15 -12
  29. package/dist/{NativeSelectOption.vue_vue_type_script_setup_true_lang-COnFRt8g.js → NativeSelectOption.vue_vue_type_script_setup_true_lang-CNcUI9Yh.js} +4 -3
  30. package/dist/{PopoverTrigger.vue_vue_type_script_setup_true_lang-DFZJvU_P.js → PopoverTrigger.vue_vue_type_script_setup_true_lang-Cf33q_yT.js} +11 -8
  31. package/dist/{PopperContent-h-thLTz8.js → PopperContent-DUJ8a4i0.js} +4 -4
  32. package/dist/Presence-CTmUEdMR.js +168 -0
  33. package/dist/Progress.vue_vue_type_script_setup_true_lang-BDJfyW-d.js +188 -0
  34. package/dist/{Separator.vue_vue_type_script_setup_true_lang-CMRkdntA.js → Separator.vue_vue_type_script_setup_true_lang-D9BozdWD.js} +1 -1
  35. package/dist/{SheetTitle.vue_vue_type_script_setup_true_lang-BQbpsE2c.js → SheetTitle.vue_vue_type_script_setup_true_lang-Ja7-gmXd.js} +4 -4
  36. package/dist/{Slider.vue_vue_type_script_setup_true_lang-C_CsSGAt.js → Slider.vue_vue_type_script_setup_true_lang-CSOSwGGr.js} +10 -9
  37. package/dist/{Switch.vue_vue_type_script_setup_true_lang-BG6nkPSO.js → Switch.vue_vue_type_script_setup_true_lang-C8mqOepU.js} +7 -6
  38. package/dist/{Teleport-CV0tKbq5.js → Teleport-DTOwRCqx.js} +7 -185
  39. package/dist/TimePicker.vue_vue_type_script_setup_true_lang-tbOoMfZu.js +51 -0
  40. package/dist/{TooltipTrigger.vue_vue_type_script_setup_true_lang-DEPKysA_.js → TooltipTrigger.vue_vue_type_script_setup_true_lang-BMdZRPa3.js} +9 -6
  41. package/dist/{VisuallyHiddenInput-1G1IEkBL.js → VisuallyHiddenInput-D5eipDQU.js} +1 -1
  42. package/dist/alert-dialog.js +7 -6
  43. package/dist/alert.js +8 -18
  44. package/dist/badge.js +9 -36
  45. package/dist/breadcrumb.js +159 -0
  46. package/dist/busy-indicator.js +1 -1
  47. package/dist/busy.js +1 -1
  48. package/dist/button.js +11 -7
  49. package/dist/calendar.js +1 -1
  50. package/dist/card-grid.js +58 -0
  51. package/dist/card.js +9 -6
  52. package/dist/chip.js +47 -0
  53. package/dist/color-tokens-D9BviGPK.js +40 -0
  54. package/dist/command.js +17 -33
  55. package/dist/components/card-grid/CardGrid.vue.d.ts +88 -0
  56. package/dist/components/card-grid/index.d.ts +2 -0
  57. package/dist/components/chip/Chip.vue.d.ts +17 -0
  58. package/dist/components/chip/index.d.ts +2 -0
  59. package/dist/components/confirm-dialog/confirm-dialog-state.d.ts +11 -8
  60. package/dist/components/dashboard-shell/DashboardShell.vue.d.ts +12 -2
  61. package/dist/components/data-list/DataList.vue.d.ts +21 -0
  62. package/dist/components/data-list/DataListItem.vue.d.ts +21 -0
  63. package/dist/components/data-list/DataListLabel.vue.d.ts +21 -0
  64. package/dist/components/data-list/DataListText.vue.d.ts +21 -0
  65. package/dist/components/data-list/DataListValue.vue.d.ts +21 -0
  66. package/dist/components/data-list/index.d.ts +5 -0
  67. package/dist/components/empty-state-card/EmptyStateCard.vue.d.ts +73 -0
  68. package/dist/components/empty-state-card/index.d.ts +2 -0
  69. package/dist/components/info-card/InfoCard.vue.d.ts +46 -0
  70. package/dist/components/info-card/index.d.ts +2 -0
  71. package/dist/components/landing/landing-content/LandingContent.vue.d.ts +2 -3
  72. package/dist/components/landing/landing-footer/LandingFooter.vue.d.ts +5 -10
  73. package/dist/components/landing/landing-navbar/LandingNavbar.vue.d.ts +8 -1
  74. package/dist/components/landing/landing-shell/LandingShell.vue.d.ts +0 -1
  75. package/dist/components/language-flag/LanguageFlag.vue.d.ts +14 -0
  76. package/dist/components/language-flag/flags/EnglishFlag.vue.d.ts +2 -0
  77. package/dist/components/language-flag/flags/ItalianFlag.vue.d.ts +2 -0
  78. package/dist/components/language-flag/index.d.ts +4 -0
  79. package/dist/components/language-selector/LanguageSelector.vue.d.ts +35 -0
  80. package/dist/components/language-selector/index.d.ts +3 -0
  81. package/dist/components/load-more-button/LoadMoreButton.vue.d.ts +36 -0
  82. package/dist/components/load-more-button/index.d.ts +2 -0
  83. package/dist/components/loading-state-card/LoadingStateCard.vue.d.ts +55 -0
  84. package/dist/components/loading-state-card/index.d.ts +2 -0
  85. package/dist/components/message-dialog/message-dialog-state.d.ts +9 -7
  86. package/dist/components/message-toast/index.d.ts +1 -1
  87. package/dist/components/message-toast/message-toast-state.d.ts +3 -3
  88. package/dist/components/page-header/PageHeader.vue.d.ts +48 -0
  89. package/dist/components/page-header/index.d.ts +2 -0
  90. package/dist/components/progress-component/ProgressComponent.vue.d.ts +47 -0
  91. package/dist/components/progress-component/index.d.ts +2 -0
  92. package/dist/components/single-value-card/SingleValueCard.vue.d.ts +40 -0
  93. package/dist/components/single-value-card/index.d.ts +2 -0
  94. package/dist/components/slider-form-component/SliderFormComponent.vue.d.ts +2 -2
  95. package/dist/components/text-link/TextLink.vue.d.ts +35 -0
  96. package/dist/components/text-link/index.d.ts +2 -0
  97. package/dist/components/theme-selector/ThemeSelector.vue.d.ts +2 -0
  98. package/dist/components/theme-selector/index.d.ts +2 -0
  99. package/dist/components/ui/alert/Alert.vue.d.ts +2 -2
  100. package/dist/components/ui/alert/index.d.ts +6 -5
  101. package/dist/components/ui/badge/Badge.vue.d.ts +7 -20
  102. package/dist/components/ui/badge/index.d.ts +0 -5
  103. package/dist/components/ui/breadcrumb/Breadcrumb.vue.d.ts +21 -0
  104. package/dist/components/ui/breadcrumb/BreadcrumbEllipsis.vue.d.ts +21 -0
  105. package/dist/components/ui/breadcrumb/BreadcrumbItem.vue.d.ts +21 -0
  106. package/dist/components/ui/breadcrumb/BreadcrumbLink.vue.d.ts +24 -0
  107. package/dist/components/ui/breadcrumb/BreadcrumbList.vue.d.ts +21 -0
  108. package/dist/components/ui/breadcrumb/BreadcrumbPage.vue.d.ts +21 -0
  109. package/dist/components/ui/breadcrumb/BreadcrumbSeparator.vue.d.ts +21 -0
  110. package/dist/components/ui/breadcrumb/index.d.ts +7 -0
  111. package/dist/components/ui/button/index.d.ts +6 -6
  112. package/dist/components/ui/card/Card.vue.d.ts +3 -0
  113. package/dist/components/ui/card/CardText.vue.d.ts +21 -0
  114. package/dist/components/ui/card/index.d.ts +1 -0
  115. package/dist/components/ui/date-picker/DatePicker.vue.d.ts +2 -0
  116. package/dist/components/ui/date-time-picker/DateTimePicker.vue.d.ts +27 -0
  117. package/dist/components/ui/date-time-picker/index.d.ts +2 -0
  118. package/dist/components/ui/dialog/DialogContent.vue.d.ts +4 -1
  119. package/dist/components/ui/dialog/DialogFooter.vue.d.ts +1 -4
  120. package/dist/components/ui/dialog/DialogScrollContent.vue.d.ts +4 -1
  121. package/dist/components/ui/field/index.d.ts +4 -4
  122. package/dist/components/ui/progress/Progress.vue.d.ts +9 -0
  123. package/dist/components/ui/progress/index.d.ts +1 -0
  124. package/dist/components/ui/scroll-area/ScrollArea.vue.d.ts +22 -0
  125. package/dist/components/ui/scroll-area/ScrollBar.vue.d.ts +9 -0
  126. package/dist/components/ui/scroll-area/index.d.ts +2 -0
  127. package/dist/components/ui/select/SelectItemContent.vue.d.ts +15 -0
  128. package/dist/components/ui/select/SelectValueContent.vue.d.ts +16 -0
  129. package/dist/components/ui/select/index.d.ts +2 -0
  130. package/dist/components/ui/sidebar/index.d.ts +4 -4
  131. package/dist/components/ui/table/Table.vue.d.ts +21 -0
  132. package/dist/components/ui/table/TableBody.vue.d.ts +21 -0
  133. package/dist/components/ui/table/TableCaption.vue.d.ts +21 -0
  134. package/dist/components/ui/table/TableCell.vue.d.ts +21 -0
  135. package/dist/components/ui/table/TableEmpty.vue.d.ts +24 -0
  136. package/dist/components/ui/table/TableFooter.vue.d.ts +21 -0
  137. package/dist/components/ui/table/TableHead.vue.d.ts +21 -0
  138. package/dist/components/ui/table/TableHeader.vue.d.ts +21 -0
  139. package/dist/components/ui/table/TableRow.vue.d.ts +21 -0
  140. package/dist/components/ui/table/index.d.ts +9 -0
  141. package/dist/components/ui/tabs/Tabs.vue.d.ts +28 -0
  142. package/dist/components/ui/tabs/TabsContent.vue.d.ts +22 -0
  143. package/dist/components/ui/tabs/TabsList.vue.d.ts +22 -0
  144. package/dist/components/ui/tabs/TabsTrigger.vue.d.ts +22 -0
  145. package/dist/components/ui/tabs/index.d.ts +4 -0
  146. package/dist/components/ui/textarea/Textarea.vue.d.ts +12 -0
  147. package/dist/components/ui/textarea/index.d.ts +1 -0
  148. package/dist/components/ui/time-picker/TimePicker.vue.d.ts +21 -0
  149. package/dist/components/ui/time-picker/index.d.ts +2 -0
  150. package/dist/confirm-dialog.js +15 -11
  151. package/dist/createContext-BabAT1K8.js +19 -0
  152. package/dist/dashboard-shell.js +88 -38
  153. package/dist/data-list.js +97 -0
  154. package/dist/date-picker.js +3 -82
  155. package/dist/date-time-picker.js +140 -0
  156. package/dist/dialog.js +36 -29
  157. package/dist/empty-state-card.js +5 -0
  158. package/dist/error-page.js +8 -6
  159. package/dist/field.js +2 -2
  160. package/dist/getActiveElement-Bmy6QsUb.js +9 -0
  161. package/dist/i18n/en.json.d.ts +57 -0
  162. package/dist/i18n/it.json.d.ts +57 -0
  163. package/dist/i18n.js +148 -0
  164. package/dist/{index-qGMU40e1.js → index-DDJjWaIl.js} +64 -0
  165. package/dist/{index-Cq9Ekgtb.js → index-Dw56kNV0.js} +10 -10
  166. package/dist/index.min-CZ9FIOXr.js +23 -0
  167. package/dist/info-card.js +65 -0
  168. package/dist/input.js +1 -1
  169. package/dist/label.js +1 -1
  170. package/dist/landing-content.js +5 -0
  171. package/dist/landing-footer.js +5 -0
  172. package/dist/landing-navbar.js +5 -0
  173. package/dist/landing-shell.js +5 -0
  174. package/dist/landing.js +9 -237
  175. package/dist/language-flag.js +7 -0
  176. package/dist/language-selector.js +123 -0
  177. package/dist/lib/color-tokens.d.ts +6 -0
  178. package/dist/lib/i18n.d.ts +222 -0
  179. package/dist/load-more-button.js +5 -0
  180. package/dist/loading-state-card.js +5 -0
  181. package/dist/message-dialog.js +34 -18
  182. package/dist/message-toast.js +2 -2
  183. package/dist/native-select.js +1 -1
  184. package/dist/nullish-D3tMkl6i.js +6 -0
  185. package/dist/page-header.js +57 -0
  186. package/dist/popover.js +4 -4
  187. package/dist/progress-component.js +51 -0
  188. package/dist/progress.js +4 -0
  189. package/dist/scroll-area.js +1080 -0
  190. package/dist/select.js +149 -53
  191. package/dist/separator.js +1 -1
  192. package/dist/sheet.js +3 -2
  193. package/dist/sidebar.js +10 -9
  194. package/dist/single-value-card.js +64 -0
  195. package/dist/slider-form-component.js +2 -2
  196. package/dist/slider.js +1 -1
  197. package/dist/style.css +822 -144
  198. package/dist/switch-form-component.js +2 -2
  199. package/dist/switch.js +1 -1
  200. package/dist/table.js +193 -0
  201. package/dist/tabs.js +658 -0
  202. package/dist/text-link.js +39 -0
  203. package/dist/textarea.js +37 -0
  204. package/dist/theme-selector.js +159 -0
  205. package/dist/time-picker.js +5 -0
  206. package/dist/tooltip.js +2 -2
  207. package/dist/{useDirection-SIyEYNxv.js → useDirection-B2bMgzzV.js} +1 -1
  208. package/dist/{useFocusGuards-WYWvpJy2.js → useFocusGuards-2C1jyYW5.js} +1 -1
  209. package/dist/{useFormControl-CyoJwp9r.js → useFormControl-DZ4LnB9F.js} +1 -1
  210. package/dist/{useForwardExpose-BiRQH8eO.js → useForwardExpose-BcX3VRdS.js} +1 -1
  211. package/dist/{useForwardPropsEmits-DmumnZO5.js → useForwardPropsEmits-GlUGKcIz.js} +1 -17
  212. package/dist/useId-CF6wz41D.js +16 -0
  213. package/dist/useNonce-CWj1JlPB.js +12 -0
  214. package/dist/{usePrimitiveElement-Bk3ZOslv.js → usePrimitiveElement-BCpwlakH.js} +1 -1
  215. package/dist/{useSize-BLYTFgnQ.js → useSize-DUgGY9t1.js} +1 -1
  216. package/dist/{useTypeahead-KTl4-oeq.js → useTypeahead-4RK0Emcv.js} +2 -2
  217. package/dist/{utils-BXBXPGDA.js → utils-DbR1EZn-.js} +1 -1
  218. package/dist/utils-hdwtyAF3.js +44 -0
  219. package/package.json +111 -2
  220. package/dist/HugeiconsIcon.vue-CurGbgrJ.js +0 -125
@@ -0,0 +1,123 @@
1
+ import { defineComponent, ref, computed, openBlock, createBlock, unref, withCtx, createVNode, createCommentVNode, createElementBlock, Fragment, renderList, createElementVNode, toDisplayString, normalizeClass } from "vue";
2
+ import { useI18n } from "vue-i18n";
3
+ import { T as TWr } from "./index.min-CZ9FIOXr.js";
4
+ import { H as HugeiconsIcon } from "./HugeiconsIcon.vue-By2RXWWz.js";
5
+ import { Button as _sfc_main$3 } from "./button.js";
6
+ import { Command as _sfc_main$6, CommandList as _sfc_main$7, CommandGroup as _sfc_main$8, CommandItem as _sfc_main$9 } from "./command.js";
7
+ import { _ as _sfc_main$1, a as _sfc_main$2, b as _sfc_main$5 } from "./PopoverTrigger.vue_vue_type_script_setup_true_lang-Cf33q_yT.js";
8
+ import { _ as _sfc_main$4 } from "./LanguageFlag.vue_vue_type_script_setup_true_lang-CgszKeNv.js";
9
+ const _hoisted_1 = { class: "flex-1" };
10
+ const _sfc_main = /* @__PURE__ */ defineComponent({
11
+ __name: "LanguageSelector",
12
+ props: {
13
+ modelValue: { type: String, default: "" },
14
+ languages: {
15
+ type: Array,
16
+ default: () => []
17
+ }
18
+ },
19
+ emits: ["update:modelValue", "select"],
20
+ setup(__props, { emit: __emit }) {
21
+ const props = __props;
22
+ const emits = __emit;
23
+ const { t } = useI18n();
24
+ const isOpen = ref(false);
25
+ const normalizedLanguages = computed(() => {
26
+ return props.languages.map((language) => ({
27
+ code: language.code,
28
+ label: language.label,
29
+ flagCode: language.flagCode || language.code
30
+ }));
31
+ });
32
+ const currentLanguage = computed(() => {
33
+ return normalizedLanguages.value.find((language) => language.code === props.modelValue) || normalizedLanguages.value[0] || null;
34
+ });
35
+ const handleSelectLanguage = (language) => {
36
+ emits("update:modelValue", language);
37
+ emits("select", language);
38
+ isOpen.value = false;
39
+ };
40
+ return (_ctx, _cache) => {
41
+ return openBlock(), createBlock(unref(_sfc_main$1), {
42
+ open: isOpen.value,
43
+ "onUpdate:open": _cache[0] || (_cache[0] = ($event) => isOpen.value = $event)
44
+ }, {
45
+ default: withCtx(() => [
46
+ createVNode(unref(_sfc_main$2), { "as-child": "" }, {
47
+ default: withCtx(() => [
48
+ createVNode(unref(_sfc_main$3), {
49
+ variant: "secondary",
50
+ size: "icon",
51
+ "aria-label": unref(t)("ui.language.ariaLabel")
52
+ }, {
53
+ default: withCtx(() => [
54
+ currentLanguage.value ? (openBlock(), createBlock(unref(_sfc_main$4), {
55
+ key: 0,
56
+ code: currentLanguage.value.flagCode,
57
+ class: "h-4 w-[1.35rem] rounded-[2px]"
58
+ }, null, 8, ["code"])) : createCommentVNode("", true)
59
+ ]),
60
+ _: 1
61
+ }, 8, ["aria-label"])
62
+ ]),
63
+ _: 1
64
+ }),
65
+ createVNode(unref(_sfc_main$5), {
66
+ side: "bottom",
67
+ align: "end",
68
+ "side-offset": 8,
69
+ class: "w-44 !p-0"
70
+ }, {
71
+ default: withCtx(() => [
72
+ createVNode(unref(_sfc_main$6), {
73
+ "model-value": props.modelValue
74
+ }, {
75
+ default: withCtx(() => [
76
+ createVNode(unref(_sfc_main$7), null, {
77
+ default: withCtx(() => [
78
+ createVNode(unref(_sfc_main$8), {
79
+ heading: unref(t)("ui.language.title")
80
+ }, {
81
+ default: withCtx(() => [
82
+ (openBlock(true), createElementBlock(Fragment, null, renderList(normalizedLanguages.value, (option) => {
83
+ return openBlock(), createBlock(unref(_sfc_main$9), {
84
+ key: option.code,
85
+ value: option.code,
86
+ onSelect: ($event) => handleSelectLanguage(option.code)
87
+ }, {
88
+ default: withCtx(() => [
89
+ createVNode(unref(_sfc_main$4), {
90
+ code: option.flagCode,
91
+ class: "h-4 w-[1.35rem] rounded-[2px]"
92
+ }, null, 8, ["code"]),
93
+ createElementVNode("span", _hoisted_1, toDisplayString(option.label), 1),
94
+ createVNode(unref(HugeiconsIcon), {
95
+ icon: unref(TWr),
96
+ class: normalizeClass(["ml-auto size-4 shrink-0", props.modelValue === option.code ? "opacity-100" : "opacity-0"])
97
+ }, null, 8, ["icon", "class"])
98
+ ]),
99
+ _: 2
100
+ }, 1032, ["value", "onSelect"]);
101
+ }), 128))
102
+ ]),
103
+ _: 1
104
+ }, 8, ["heading"])
105
+ ]),
106
+ _: 1
107
+ })
108
+ ]),
109
+ _: 1
110
+ }, 8, ["model-value"])
111
+ ]),
112
+ _: 1
113
+ })
114
+ ]),
115
+ _: 1
116
+ }, 8, ["open"]);
117
+ };
118
+ }
119
+ });
120
+ export {
121
+ _sfc_main as LanguageSelector,
122
+ _sfc_main as default
123
+ };
@@ -0,0 +1,6 @@
1
+ export type ToneColor = "gray" | "green" | "red" | "blue" | "yellow";
2
+ export type ButtonVariantName = "primary" | "secondary" | "ghost" | "link" | ToneColor;
3
+ export declare const getSurfaceToneClasses: (color: ToneColor) => string;
4
+ export declare const getInteractiveSurfaceToneClasses: (color: ToneColor) => string;
5
+ export declare const buttonVariantClasses: Record<ButtonVariantName, string>;
6
+ export declare const getButtonVariantClasses: (variant: ButtonVariantName) => string;
@@ -0,0 +1,222 @@
1
+ export declare const uiVintageMessages: {
2
+ readonly en: {
3
+ ui: {
4
+ common: {
5
+ empty: {
6
+ title: string;
7
+ description: string;
8
+ };
9
+ loading: {
10
+ title: string;
11
+ description: string;
12
+ };
13
+ };
14
+ buttons: {
15
+ all: string;
16
+ close: string;
17
+ cancel: string;
18
+ delete: string;
19
+ confirm: string;
20
+ filter: string;
21
+ search: string;
22
+ apply: string;
23
+ clear: string;
24
+ loading: string;
25
+ loadMore: string;
26
+ save: string;
27
+ update: string;
28
+ goBack: string;
29
+ };
30
+ theme: {
31
+ light: string;
32
+ dark: string;
33
+ auto: string;
34
+ title: string;
35
+ ariaLabel: string;
36
+ };
37
+ language: {
38
+ title: string;
39
+ ariaLabel: string;
40
+ };
41
+ footer: {
42
+ madeWith: string;
43
+ by: string;
44
+ allRightsReserved: string;
45
+ };
46
+ select: {
47
+ defaultPlaceholder: string;
48
+ };
49
+ messageDialog: {
50
+ error: string;
51
+ success: string;
52
+ info: string;
53
+ warning: string;
54
+ };
55
+ };
56
+ };
57
+ readonly it: {
58
+ ui: {
59
+ common: {
60
+ empty: {
61
+ title: string;
62
+ description: string;
63
+ };
64
+ loading: {
65
+ title: string;
66
+ description: string;
67
+ };
68
+ };
69
+ buttons: {
70
+ all: string;
71
+ close: string;
72
+ cancel: string;
73
+ delete: string;
74
+ confirm: string;
75
+ filter: string;
76
+ search: string;
77
+ apply: string;
78
+ clear: string;
79
+ loading: string;
80
+ loadMore: string;
81
+ save: string;
82
+ update: string;
83
+ goBack: string;
84
+ };
85
+ theme: {
86
+ light: string;
87
+ dark: string;
88
+ auto: string;
89
+ title: string;
90
+ ariaLabel: string;
91
+ };
92
+ language: {
93
+ title: string;
94
+ ariaLabel: string;
95
+ };
96
+ footer: {
97
+ madeWith: string;
98
+ by: string;
99
+ allRightsReserved: string;
100
+ };
101
+ select: {
102
+ defaultPlaceholder: string;
103
+ };
104
+ messageDialog: {
105
+ error: string;
106
+ success: string;
107
+ info: string;
108
+ warning: string;
109
+ };
110
+ };
111
+ };
112
+ };
113
+ export declare const getUiVintageMessagesForLocale: (locale: keyof typeof uiVintageMessages) => {
114
+ ui: {
115
+ common: {
116
+ empty: {
117
+ title: string;
118
+ description: string;
119
+ };
120
+ loading: {
121
+ title: string;
122
+ description: string;
123
+ };
124
+ };
125
+ buttons: {
126
+ all: string;
127
+ close: string;
128
+ cancel: string;
129
+ delete: string;
130
+ confirm: string;
131
+ filter: string;
132
+ search: string;
133
+ apply: string;
134
+ clear: string;
135
+ loading: string;
136
+ loadMore: string;
137
+ save: string;
138
+ update: string;
139
+ goBack: string;
140
+ };
141
+ theme: {
142
+ light: string;
143
+ dark: string;
144
+ auto: string;
145
+ title: string;
146
+ ariaLabel: string;
147
+ };
148
+ language: {
149
+ title: string;
150
+ ariaLabel: string;
151
+ };
152
+ footer: {
153
+ madeWith: string;
154
+ by: string;
155
+ allRightsReserved: string;
156
+ };
157
+ select: {
158
+ defaultPlaceholder: string;
159
+ };
160
+ messageDialog: {
161
+ error: string;
162
+ success: string;
163
+ info: string;
164
+ warning: string;
165
+ };
166
+ };
167
+ } | {
168
+ ui: {
169
+ common: {
170
+ empty: {
171
+ title: string;
172
+ description: string;
173
+ };
174
+ loading: {
175
+ title: string;
176
+ description: string;
177
+ };
178
+ };
179
+ buttons: {
180
+ all: string;
181
+ close: string;
182
+ cancel: string;
183
+ delete: string;
184
+ confirm: string;
185
+ filter: string;
186
+ search: string;
187
+ apply: string;
188
+ clear: string;
189
+ loading: string;
190
+ loadMore: string;
191
+ save: string;
192
+ update: string;
193
+ goBack: string;
194
+ };
195
+ theme: {
196
+ light: string;
197
+ dark: string;
198
+ auto: string;
199
+ title: string;
200
+ ariaLabel: string;
201
+ };
202
+ language: {
203
+ title: string;
204
+ ariaLabel: string;
205
+ };
206
+ footer: {
207
+ madeWith: string;
208
+ by: string;
209
+ allRightsReserved: string;
210
+ };
211
+ select: {
212
+ defaultPlaceholder: string;
213
+ };
214
+ messageDialog: {
215
+ error: string;
216
+ success: string;
217
+ info: string;
218
+ warning: string;
219
+ };
220
+ };
221
+ };
222
+ export declare const getUiVintageRuntimeMessage: (path: string, fallback: string) => string;
@@ -0,0 +1,5 @@
1
+ import { _, _ as _2 } from "./LoadMoreButton.vue_vue_type_script_setup_true_lang-CGhFcsF-.js";
2
+ export {
3
+ _ as LoadMoreButton,
4
+ _2 as default
5
+ };
@@ -0,0 +1,5 @@
1
+ import { _, _ as _2 } from "./LoadingStateCard.vue_vue_type_script_setup_true_lang-DwyQjtZ3.js";
2
+ export {
3
+ _ as LoadingStateCard,
4
+ _2 as default
5
+ };
@@ -1,7 +1,9 @@
1
- import { reactive, render, h, markRaw, defineComponent, computed, openBlock, createBlock, unref, withCtx, createElementVNode, normalizeClass, resolveDynamicComponent, createVNode, createTextVNode, toDisplayString, createCommentVNode } from "vue";
2
- import { A as AE, $ as $o, T as TWr, H as HugeiconsIcon } from "./HugeiconsIcon.vue-CurGbgrJ.js";
3
- import { _ as _sfc_main$1, a as _sfc_main$2, b as _sfc_main$3, c as _sfc_main$4, d as _sfc_main$5, e as _sfc_main$6 } from "./AlertDialogTitle.vue_vue_type_script_setup_true_lang-Ca0g2mVz.js";
1
+ import { reactive, render, h, markRaw, defineComponent, computed, openBlock, createBlock, unref, withCtx, createElementVNode, normalizeClass, createVNode, createTextVNode, toDisplayString, createCommentVNode } from "vue";
2
+ import { H as HugeiconsIcon } from "./HugeiconsIcon.vue-By2RXWWz.js";
3
+ import { A as AE, $ as $o, T as TWr } from "./index.min-CZ9FIOXr.js";
4
+ import { _ as _sfc_main$1, a as _sfc_main$2, b as _sfc_main$3, c as _sfc_main$4, d as _sfc_main$5, e as _sfc_main$6 } from "./AlertDialogTitle.vue_vue_type_script_setup_true_lang-_UW48pv7.js";
4
5
  import { Button as _sfc_main$7 } from "./button.js";
6
+ import { getUiVintageRuntimeMessage } from "./i18n.js";
5
7
  const messageDialogQueue = [];
6
8
  let nextMessageDialogId = 0;
7
9
  const DIALOG_CLOSE_DURATION_MS = 300;
@@ -87,10 +89,10 @@ const showMessageDialog = (options) => {
87
89
  enqueueMessageDialog({
88
90
  id: nextMessageDialogId += 1,
89
91
  options: {
90
- type: options.type ?? "Info",
92
+ type: options.type ?? "info",
91
93
  title: options.title ?? "",
92
94
  message: options.message,
93
- closeText: options.closeText ?? "Close",
95
+ closeText: options.closeText ?? "",
94
96
  icon: markIcon(options.icon),
95
97
  closeButtonIcon: markIcon(options.closeButtonIcon)
96
98
  },
@@ -104,25 +106,37 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
104
106
  __name: "MessageDialog",
105
107
  setup(__props) {
106
108
  const currentDialog = computed(() => messageDialogState.current);
109
+ const resolvedTitle = computed(() => {
110
+ const current = currentDialog.value;
111
+ if (!current) return "";
112
+ return current.options.title || getUiVintageRuntimeMessage(`ui.messageDialog.${current.options.type}`, "");
113
+ });
114
+ const resolvedCloseText = computed(() => {
115
+ const current = currentDialog.value;
116
+ if (!current) return getUiVintageRuntimeMessage("ui.buttons.close", "Close");
117
+ return current.options.closeText || getUiVintageRuntimeMessage("ui.buttons.close", "Close");
118
+ });
107
119
  const defaultMessageIcon = computed(() => {
108
120
  const current = currentDialog.value;
109
121
  if (!current) return AE;
110
- if (current.options.type === "Error") return $o;
111
- if (current.options.type === "Success") return TWr;
122
+ if (current.options.type === "error" || current.options.type === "warning") return $o;
123
+ if (current.options.type === "success") return TWr;
112
124
  return AE;
113
125
  });
114
126
  const messageIconClasses = computed(() => {
115
127
  const current = currentDialog.value;
116
128
  if (!current) return "border-[var(--border)] bg-[var(--bg-surface-light)] dark:bg-[var(--bg-surface-dark)]";
117
- if (current.options.type === "Error") return "border-red-200 bg-red-50 dark:border-red-900/50 dark:bg-red-950/30";
118
- if (current.options.type === "Success") return "border-green-200 bg-green-50 dark:border-green-900/50 dark:bg-green-950/30";
129
+ if (current.options.type === "error") return "border-red-200 bg-red-50 dark:border-red-900/50 dark:bg-red-950/30";
130
+ if (current.options.type === "warning") return "border-amber-200 bg-amber-50 dark:border-amber-900/50 dark:bg-amber-950/30";
131
+ if (current.options.type === "success") return "border-green-200 bg-green-50 dark:border-green-900/50 dark:bg-green-950/30";
119
132
  return "border-[var(--border)] bg-[var(--bg-surface-light)] dark:bg-[var(--bg-surface-dark)]";
120
133
  });
121
134
  const messageGlyphClasses = computed(() => {
122
135
  const current = currentDialog.value;
123
136
  if (!current) return "text-blue-600";
124
- if (current.options.type === "Error") return "text-red-600";
125
- if (current.options.type === "Success") return "text-green-600";
137
+ if (current.options.type === "error") return "text-red-600";
138
+ if (current.options.type === "warning") return "text-amber-600";
139
+ if (current.options.type === "success") return "text-green-600";
126
140
  return "text-blue-600";
127
141
  });
128
142
  const handleOpenChange = (open) => {
@@ -143,11 +157,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
143
157
  createElementVNode("div", {
144
158
  class: normalizeClass(["flex size-12 shrink-0 self-center items-center justify-center rounded border sm:size-10 sm:self-start", messageIconClasses.value])
145
159
  }, [
146
- currentDialog.value.options.icon ? (openBlock(), createBlock(resolveDynamicComponent(currentDialog.value.options.icon), {
160
+ currentDialog.value.options.icon ? (openBlock(), createBlock(unref(HugeiconsIcon), {
147
161
  key: 0,
162
+ icon: currentDialog.value.options.icon,
148
163
  "stroke-width": 1.8,
149
164
  class: normalizeClass(["size-6", messageGlyphClasses.value])
150
- }, null, 8, ["class"])) : (openBlock(), createBlock(unref(HugeiconsIcon), {
165
+ }, null, 8, ["icon", "class"])) : (openBlock(), createBlock(unref(HugeiconsIcon), {
151
166
  key: 1,
152
167
  icon: defaultMessageIcon.value,
153
168
  "stroke-width": 1.8,
@@ -158,7 +173,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
158
173
  default: withCtx(() => [
159
174
  createVNode(unref(_sfc_main$4), null, {
160
175
  default: withCtx(() => [
161
- createTextVNode(toDisplayString(currentDialog.value.options.title), 1)
176
+ createTextVNode(toDisplayString(resolvedTitle.value), 1)
162
177
  ]),
163
178
  _: 1
164
179
  }),
@@ -176,16 +191,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
176
191
  createVNode(unref(_sfc_main$6), { class: "items-end" }, {
177
192
  default: withCtx(() => [
178
193
  createVNode(unref(_sfc_main$7), {
179
- variant: "outline",
194
+ variant: "secondary",
180
195
  disabled: unref(messageDialogState).busy,
181
196
  onClick: unref(resolveActiveMessageDialog)
182
197
  }, {
183
198
  default: withCtx(() => [
184
- currentDialog.value.options.closeButtonIcon ? (openBlock(), createBlock(resolveDynamicComponent(currentDialog.value.options.closeButtonIcon), {
199
+ currentDialog.value.options.closeButtonIcon ? (openBlock(), createBlock(unref(HugeiconsIcon), {
185
200
  key: 0,
201
+ icon: currentDialog.value.options.closeButtonIcon,
186
202
  class: "size-4"
187
- })) : createCommentVNode("", true),
188
- createTextVNode(" " + toDisplayString(currentDialog.value.options.closeText), 1)
203
+ }, null, 8, ["icon"])) : createCommentVNode("", true),
204
+ createTextVNode(" " + toDisplayString(resolvedCloseText.value), 1)
189
205
  ]),
190
206
  _: 1
191
207
  }, 8, ["disabled", "onClick"])
@@ -23,7 +23,7 @@ const ensureMessageToastMounted = () => {
23
23
  return messageToastMountPromise;
24
24
  }
25
25
  messageToastMountPromise = (async () => {
26
- const { default: MessageToast } = await import("./MessageToast-C1L25W2l.js");
26
+ const { default: MessageToast } = await import("./MessageToast-uKrMyOZf.js");
27
27
  if (document.getElementById(MESSAGE_TOAST_ROOT_ID)) {
28
28
  return;
29
29
  }
@@ -74,7 +74,7 @@ const showMessageToast = (options) => {
74
74
  const duration = options.duration ?? DEFAULT_TOAST_DURATION_MS;
75
75
  messageToastState.current = {
76
76
  message: options.message,
77
- status: options.status ?? "success"
77
+ type: options.type ?? "success"
78
78
  };
79
79
  messageToastState.isOpen = false;
80
80
  void ensureMessageToastMounted().then(() => {
@@ -1,4 +1,4 @@
1
- import { _, a } from "./NativeSelectOption.vue_vue_type_script_setup_true_lang-COnFRt8g.js";
1
+ import { _, a } from "./NativeSelectOption.vue_vue_type_script_setup_true_lang-CNcUI9Yh.js";
2
2
  import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, renderSlot } from "vue";
3
3
  import { c as cn } from "./utils-Bz4m9VPB.js";
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -0,0 +1,6 @@
1
+ function isNullish(value) {
2
+ return value === null || value === void 0;
3
+ }
4
+ export {
5
+ isNullish as i
6
+ };
@@ -0,0 +1,57 @@
1
+ import { defineComponent, useSlots, computed, Comment, Text, openBlock, createElementBlock, createBlock, resolveDynamicComponent, normalizeClass, withCtx, createTextVNode, toDisplayString, renderSlot, createCommentVNode } from "vue";
2
+ const _hoisted_1 = { class: "flex flex-col gap-3 mb-6 sm:flex-row sm:justify-between sm:items-center sm:min-h-12 sm:gap-0" };
3
+ const _hoisted_2 = {
4
+ key: 0,
5
+ class: "w-full sm:w-auto"
6
+ };
7
+ const _sfc_main = /* @__PURE__ */ defineComponent({
8
+ __name: "PageHeader",
9
+ props: {
10
+ title: { type: String, required: true },
11
+ headingLevel: { type: Number, default: 1 },
12
+ size: { type: String, default: "large", validator: (value) => ["small", "medium", "large"].includes(String(value)) }
13
+ },
14
+ setup(__props) {
15
+ const props = __props;
16
+ const slots = useSlots();
17
+ const hasSlotContent = computed(() => {
18
+ if (!slots.default) return false;
19
+ return slots.default({}).some((vnode) => {
20
+ if (vnode.type === Comment) return false;
21
+ if (vnode.type === Text && typeof vnode.children === "string" && !vnode.children.trim()) return false;
22
+ return true;
23
+ });
24
+ });
25
+ const getSizeClasses = (size) => {
26
+ const baseClasses = "font-bold text-[var(--text-primary-light)] dark:text-[var(--text-primary-dark)]";
27
+ switch (size) {
28
+ case "small":
29
+ return `${baseClasses} text-base md:text-xl`;
30
+ case "medium":
31
+ return `${baseClasses} text-lg md:text-2xl`;
32
+ case "large":
33
+ default:
34
+ return `${baseClasses} text-xl md:text-3xl`;
35
+ }
36
+ };
37
+ return (_ctx, _cache) => {
38
+ return openBlock(), createElementBlock("div", _hoisted_1, [
39
+ (openBlock(), createBlock(resolveDynamicComponent(`h${__props.headingLevel}`), {
40
+ class: normalizeClass(getSizeClasses(props.size))
41
+ }, {
42
+ default: withCtx(() => [
43
+ createTextVNode(toDisplayString(props.title), 1)
44
+ ]),
45
+ _: 1
46
+ }, 8, ["class"])),
47
+ hasSlotContent.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
48
+ renderSlot(_ctx.$slots, "default")
49
+ ])) : createCommentVNode("", true)
50
+ ]);
51
+ };
52
+ }
53
+ });
54
+ export {
55
+ _sfc_main as PageHeader,
56
+ _sfc_main as default
57
+ };
package/dist/popover.js CHANGED
@@ -1,8 +1,8 @@
1
- import { i as injectPopoverRootContext } from "./PopoverTrigger.vue_vue_type_script_setup_true_lang-DFZJvU_P.js";
2
- import { _, b, a } from "./PopoverTrigger.vue_vue_type_script_setup_true_lang-DFZJvU_P.js";
1
+ import { i as injectPopoverRootContext } from "./PopoverTrigger.vue_vue_type_script_setup_true_lang-Cf33q_yT.js";
2
+ import { _, b, a } from "./PopoverTrigger.vue_vue_type_script_setup_true_lang-Cf33q_yT.js";
3
3
  import { defineComponent, onBeforeMount, onUnmounted, openBlock, createBlock, unref, normalizeProps, guardReactiveProps, withCtx, renderSlot, mergeProps } from "vue";
4
- import { u as useForwardExpose } from "./useForwardExpose-BiRQH8eO.js";
5
- import { P as PopperAnchor_default } from "./PopperContent-h-thLTz8.js";
4
+ import { u as useForwardExpose } from "./useForwardExpose-BcX3VRdS.js";
5
+ import { P as PopperAnchor_default } from "./PopperContent-DUJ8a4i0.js";
6
6
  var PopoverAnchor_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
7
7
  __name: "PopoverAnchor",
8
8
  props: {
@@ -0,0 +1,51 @@
1
+ import { defineComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, createVNode, unref, createCommentVNode } from "vue";
2
+ import { _ as _sfc_main$1 } from "./Progress.vue_vue_type_script_setup_true_lang-BDJfyW-d.js";
3
+ const _hoisted_1 = { class: "space-y-3" };
4
+ const _hoisted_2 = { class: "flex items-center justify-between" };
5
+ const _hoisted_3 = { class: "text-sm font-medium text-[var(--text-primary-light)] dark:text-[var(--text-primary-dark)]" };
6
+ const _hoisted_4 = { class: "text-sm font-medium text-[var(--text-primary-light)] dark:text-[var(--text-primary-dark)]" };
7
+ const _hoisted_5 = {
8
+ key: 0,
9
+ class: "flex items-center justify-between text-xs"
10
+ };
11
+ const _hoisted_6 = {
12
+ key: 0,
13
+ class: "text-[var(--text-secondary-light)] dark:text-[var(--text-secondary-dark)]"
14
+ };
15
+ const _hoisted_7 = {
16
+ key: 1,
17
+ class: "text-[var(--text-secondary-light)] dark:text-[var(--text-secondary-dark)]"
18
+ };
19
+ const _sfc_main = /* @__PURE__ */ defineComponent({
20
+ __name: "ProgressComponent",
21
+ props: {
22
+ title: { type: String, required: true },
23
+ bottomLeftLabel: { type: String, default: "" },
24
+ bottomRightLabel: { type: String, default: "" },
25
+ value: { type: Number, required: true },
26
+ max: { type: Number, required: true }
27
+ },
28
+ setup(__props) {
29
+ const props = __props;
30
+ return (_ctx, _cache) => {
31
+ return openBlock(), createElementBlock("div", _hoisted_1, [
32
+ createElementVNode("div", _hoisted_2, [
33
+ createElementVNode("span", _hoisted_3, toDisplayString(props.title), 1),
34
+ createElementVNode("span", _hoisted_4, toDisplayString(props.value) + " / " + toDisplayString(props.max), 1)
35
+ ]),
36
+ createVNode(unref(_sfc_main$1), {
37
+ "model-value": props.value,
38
+ max: props.max
39
+ }, null, 8, ["model-value", "max"]),
40
+ props.bottomLeftLabel || props.bottomRightLabel ? (openBlock(), createElementBlock("div", _hoisted_5, [
41
+ props.bottomLeftLabel ? (openBlock(), createElementBlock("span", _hoisted_6, toDisplayString(props.bottomLeftLabel), 1)) : createCommentVNode("", true),
42
+ props.bottomRightLabel ? (openBlock(), createElementBlock("span", _hoisted_7, toDisplayString(props.bottomRightLabel), 1)) : createCommentVNode("", true)
43
+ ])) : createCommentVNode("", true)
44
+ ]);
45
+ };
46
+ }
47
+ });
48
+ export {
49
+ _sfc_main as ProgressComponent,
50
+ _sfc_main as default
51
+ };
@@ -0,0 +1,4 @@
1
+ import { _ } from "./Progress.vue_vue_type_script_setup_true_lang-BDJfyW-d.js";
2
+ export {
3
+ _ as Progress
4
+ };