@brumaombra/ui-vintage 0.4.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) 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/ChineseFlag-CVrOCbRz.js +18 -0
  9. package/dist/{Collection-Coi6nyvb.js → Collection-4P3HQ4uU.js} +1 -1
  10. package/dist/{ConfigProvider-D2O0Jles.js → ConfigProvider-DYO65bNW.js} +1 -1
  11. package/dist/DatePicker.vue_vue_type_script_setup_true_lang-C2Ug81pX.js +88 -0
  12. package/dist/DialogClose-DxCTEp0d.js +36 -0
  13. package/dist/{DialogPortal-D81oXsCY.js → DialogPortal-BiMJAKLg.js} +1 -1
  14. package/dist/{DialogTitle-CLuntLBB.js → DialogTitle-jKgSCoXM.js} +10 -6
  15. package/dist/{DialogTitle.vue_vue_type_script_setup_true_lang-BG4dvMRo.js → DialogTitle.vue_vue_type_script_setup_true_lang-CycrzAMT.js} +33 -10
  16. package/dist/{DialogTrigger-BQbSAHMb.js → DialogTrigger-Cb3rLcid.js} +5 -35
  17. package/dist/EmptyStateCard.vue_vue_type_script_setup_true_lang-BYKX6WRQ.js +59 -0
  18. package/dist/EnglishFlag-BrpG8XMW.js +18 -0
  19. package/dist/{FocusScope-DYbCtSNc.js → FocusScope-mzbqk6Y_.js} +8 -14
  20. package/dist/FrenchFlag-CUdQacS3.js +35 -0
  21. package/dist/GermanFlag-Bc1CeEHw.js +35 -0
  22. package/dist/HugeiconsIcon.vue-By2RXWWz.js +111 -0
  23. package/dist/{Input.vue_vue_type_script_setup_true_lang-6SfPeT8d.js → Input.vue_vue_type_script_setup_true_lang-BdjbS5s7.js} +1 -1
  24. package/dist/ItalianFlag-BAdg13z7.js +34 -0
  25. package/dist/JapaneseFlag-Dnd2ITzZ.js +27 -0
  26. package/dist/{Label.vue_vue_type_script_setup_true_lang-pMIzCHzV.js → Label.vue_vue_type_script_setup_true_lang-CdLIMAdF.js} +2 -2
  27. package/dist/LandingContent.vue_vue_type_script_setup_true_lang-Wgtl_yeD.js +21 -0
  28. package/dist/LandingFooter.vue_vue_type_script_setup_true_lang-CDy30mYg.js +159 -0
  29. package/dist/LandingNavbar.vue_vue_type_script_setup_true_lang-0jX2tmdb.js +59 -0
  30. package/dist/LandingShell.vue_vue_type_script_setup_true_lang-BXwdQR24.js +49 -0
  31. package/dist/LoadMoreButton.vue_vue_type_script_setup_true_lang-CGhFcsF-.js +61 -0
  32. package/dist/LoadingStateCard.vue_vue_type_script_setup_true_lang-DwyQjtZ3.js +53 -0
  33. package/dist/{MessageToast-C1L25W2l.js → MessageToast-uKrMyOZf.js} +15 -12
  34. package/dist/{NativeSelectOption.vue_vue_type_script_setup_true_lang-COnFRt8g.js → NativeSelectOption.vue_vue_type_script_setup_true_lang-CNcUI9Yh.js} +4 -3
  35. 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
  36. package/dist/{PopperContent-h-thLTz8.js → PopperContent-DUJ8a4i0.js} +4 -4
  37. package/dist/Presence-CTmUEdMR.js +168 -0
  38. package/dist/Progress.vue_vue_type_script_setup_true_lang-BDJfyW-d.js +188 -0
  39. package/dist/RussianFlag-Cnc4PHmq.js +29 -0
  40. package/dist/{Separator.vue_vue_type_script_setup_true_lang-CMRkdntA.js → Separator.vue_vue_type_script_setup_true_lang-D9BozdWD.js} +1 -1
  41. 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
  42. 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
  43. package/dist/SpanishFlag-Dy-C9kGk.js +28 -0
  44. package/dist/{Switch.vue_vue_type_script_setup_true_lang-BG6nkPSO.js → Switch.vue_vue_type_script_setup_true_lang-C8mqOepU.js} +7 -6
  45. package/dist/{Teleport-CV0tKbq5.js → Teleport-DTOwRCqx.js} +7 -185
  46. package/dist/TimePicker.vue_vue_type_script_setup_true_lang-tbOoMfZu.js +51 -0
  47. package/dist/{TooltipTrigger.vue_vue_type_script_setup_true_lang-DEPKysA_.js → TooltipTrigger.vue_vue_type_script_setup_true_lang-BMdZRPa3.js} +9 -6
  48. package/dist/{VisuallyHiddenInput-1G1IEkBL.js → VisuallyHiddenInput-D5eipDQU.js} +1 -1
  49. package/dist/alert-dialog.js +7 -6
  50. package/dist/alert.js +8 -18
  51. package/dist/badge.js +9 -36
  52. package/dist/breadcrumb.js +159 -0
  53. package/dist/busy-indicator.js +1 -1
  54. package/dist/busy.js +1 -1
  55. package/dist/button.js +11 -7
  56. package/dist/calendar.js +1 -1
  57. package/dist/card-grid.js +58 -0
  58. package/dist/card.js +9 -6
  59. package/dist/chip.js +47 -0
  60. package/dist/color-tokens-D9BviGPK.js +40 -0
  61. package/dist/command.js +17 -33
  62. package/dist/components/card-grid/CardGrid.vue.d.ts +88 -0
  63. package/dist/components/card-grid/index.d.ts +2 -0
  64. package/dist/components/chip/Chip.vue.d.ts +17 -0
  65. package/dist/components/chip/index.d.ts +2 -0
  66. package/dist/components/confirm-dialog/confirm-dialog-state.d.ts +11 -8
  67. package/dist/components/dashboard-shell/DashboardShell.vue.d.ts +12 -2
  68. package/dist/components/data-list/DataList.vue.d.ts +21 -0
  69. package/dist/components/data-list/DataListItem.vue.d.ts +21 -0
  70. package/dist/components/data-list/DataListLabel.vue.d.ts +21 -0
  71. package/dist/components/data-list/DataListText.vue.d.ts +21 -0
  72. package/dist/components/data-list/DataListValue.vue.d.ts +21 -0
  73. package/dist/components/data-list/index.d.ts +5 -0
  74. package/dist/components/empty-state-card/EmptyStateCard.vue.d.ts +73 -0
  75. package/dist/components/empty-state-card/index.d.ts +2 -0
  76. package/dist/components/info-card/InfoCard.vue.d.ts +46 -0
  77. package/dist/components/info-card/index.d.ts +2 -0
  78. package/dist/components/landing/landing-content/LandingContent.vue.d.ts +2 -3
  79. package/dist/components/landing/landing-footer/LandingFooter.vue.d.ts +5 -10
  80. package/dist/components/landing/landing-navbar/LandingNavbar.vue.d.ts +8 -1
  81. package/dist/components/landing/landing-shell/LandingShell.vue.d.ts +0 -1
  82. package/dist/components/language-flag/LanguageFlag.vue.d.ts +14 -0
  83. package/dist/components/language-flag/flags/ChineseFlag.vue.d.ts +2 -0
  84. package/dist/components/language-flag/flags/EnglishFlag.vue.d.ts +2 -0
  85. package/dist/components/language-flag/flags/FrenchFlag.vue.d.ts +2 -0
  86. package/dist/components/language-flag/flags/GermanFlag.vue.d.ts +2 -0
  87. package/dist/components/language-flag/flags/ItalianFlag.vue.d.ts +2 -0
  88. package/dist/components/language-flag/flags/JapaneseFlag.vue.d.ts +2 -0
  89. package/dist/components/language-flag/flags/RussianFlag.vue.d.ts +2 -0
  90. package/dist/components/language-flag/flags/SpanishFlag.vue.d.ts +2 -0
  91. package/dist/components/language-flag/index.d.ts +10 -0
  92. package/dist/components/language-selector/LanguageSelector.vue.d.ts +31 -0
  93. package/dist/components/language-selector/index.d.ts +3 -0
  94. package/dist/components/load-more-button/LoadMoreButton.vue.d.ts +36 -0
  95. package/dist/components/load-more-button/index.d.ts +2 -0
  96. package/dist/components/loading-state-card/LoadingStateCard.vue.d.ts +55 -0
  97. package/dist/components/loading-state-card/index.d.ts +2 -0
  98. package/dist/components/message-dialog/message-dialog-state.d.ts +9 -7
  99. package/dist/components/message-toast/index.d.ts +1 -1
  100. package/dist/components/message-toast/message-toast-state.d.ts +3 -3
  101. package/dist/components/page-header/PageHeader.vue.d.ts +48 -0
  102. package/dist/components/page-header/index.d.ts +2 -0
  103. package/dist/components/progress-component/ProgressComponent.vue.d.ts +47 -0
  104. package/dist/components/progress-component/index.d.ts +2 -0
  105. package/dist/components/single-value-card/SingleValueCard.vue.d.ts +40 -0
  106. package/dist/components/single-value-card/index.d.ts +2 -0
  107. package/dist/components/slider-form-component/SliderFormComponent.vue.d.ts +2 -2
  108. package/dist/components/text-link/TextLink.vue.d.ts +35 -0
  109. package/dist/components/text-link/index.d.ts +2 -0
  110. package/dist/components/theme-selector/ThemeSelector.vue.d.ts +2 -0
  111. package/dist/components/theme-selector/index.d.ts +2 -0
  112. package/dist/components/ui/alert/Alert.vue.d.ts +2 -2
  113. package/dist/components/ui/alert/index.d.ts +6 -5
  114. package/dist/components/ui/badge/Badge.vue.d.ts +7 -20
  115. package/dist/components/ui/badge/index.d.ts +0 -5
  116. package/dist/components/ui/breadcrumb/Breadcrumb.vue.d.ts +21 -0
  117. package/dist/components/ui/breadcrumb/BreadcrumbEllipsis.vue.d.ts +21 -0
  118. package/dist/components/ui/breadcrumb/BreadcrumbItem.vue.d.ts +21 -0
  119. package/dist/components/ui/breadcrumb/BreadcrumbLink.vue.d.ts +24 -0
  120. package/dist/components/ui/breadcrumb/BreadcrumbList.vue.d.ts +21 -0
  121. package/dist/components/ui/breadcrumb/BreadcrumbPage.vue.d.ts +21 -0
  122. package/dist/components/ui/breadcrumb/BreadcrumbSeparator.vue.d.ts +21 -0
  123. package/dist/components/ui/breadcrumb/index.d.ts +7 -0
  124. package/dist/components/ui/button/index.d.ts +6 -6
  125. package/dist/components/ui/card/Card.vue.d.ts +3 -0
  126. package/dist/components/ui/card/CardText.vue.d.ts +21 -0
  127. package/dist/components/ui/card/index.d.ts +1 -0
  128. package/dist/components/ui/date-picker/DatePicker.vue.d.ts +2 -0
  129. package/dist/components/ui/date-time-picker/DateTimePicker.vue.d.ts +27 -0
  130. package/dist/components/ui/date-time-picker/index.d.ts +2 -0
  131. package/dist/components/ui/dialog/DialogContent.vue.d.ts +4 -1
  132. package/dist/components/ui/dialog/DialogFooter.vue.d.ts +1 -4
  133. package/dist/components/ui/dialog/DialogScrollContent.vue.d.ts +4 -1
  134. package/dist/components/ui/field/index.d.ts +4 -4
  135. package/dist/components/ui/progress/Progress.vue.d.ts +9 -0
  136. package/dist/components/ui/progress/index.d.ts +1 -0
  137. package/dist/components/ui/scroll-area/ScrollArea.vue.d.ts +22 -0
  138. package/dist/components/ui/scroll-area/ScrollBar.vue.d.ts +9 -0
  139. package/dist/components/ui/scroll-area/index.d.ts +2 -0
  140. package/dist/components/ui/select/SelectItemContent.vue.d.ts +15 -0
  141. package/dist/components/ui/select/SelectValueContent.vue.d.ts +16 -0
  142. package/dist/components/ui/select/index.d.ts +2 -0
  143. package/dist/components/ui/sidebar/index.d.ts +4 -4
  144. package/dist/components/ui/table/Table.vue.d.ts +21 -0
  145. package/dist/components/ui/table/TableBody.vue.d.ts +21 -0
  146. package/dist/components/ui/table/TableCaption.vue.d.ts +21 -0
  147. package/dist/components/ui/table/TableCell.vue.d.ts +21 -0
  148. package/dist/components/ui/table/TableEmpty.vue.d.ts +24 -0
  149. package/dist/components/ui/table/TableFooter.vue.d.ts +21 -0
  150. package/dist/components/ui/table/TableHead.vue.d.ts +21 -0
  151. package/dist/components/ui/table/TableHeader.vue.d.ts +21 -0
  152. package/dist/components/ui/table/TableRow.vue.d.ts +21 -0
  153. package/dist/components/ui/table/index.d.ts +9 -0
  154. package/dist/components/ui/tabs/Tabs.vue.d.ts +28 -0
  155. package/dist/components/ui/tabs/TabsContent.vue.d.ts +22 -0
  156. package/dist/components/ui/tabs/TabsList.vue.d.ts +22 -0
  157. package/dist/components/ui/tabs/TabsTrigger.vue.d.ts +22 -0
  158. package/dist/components/ui/tabs/index.d.ts +4 -0
  159. package/dist/components/ui/textarea/Textarea.vue.d.ts +12 -0
  160. package/dist/components/ui/textarea/index.d.ts +1 -0
  161. package/dist/components/ui/time-picker/TimePicker.vue.d.ts +21 -0
  162. package/dist/components/ui/time-picker/index.d.ts +2 -0
  163. package/dist/confirm-dialog.js +15 -11
  164. package/dist/createContext-BabAT1K8.js +19 -0
  165. package/dist/dashboard-shell.js +88 -38
  166. package/dist/data-list.js +97 -0
  167. package/dist/date-picker.js +3 -82
  168. package/dist/date-time-picker.js +140 -0
  169. package/dist/dialog.js +36 -29
  170. package/dist/empty-state-card.js +5 -0
  171. package/dist/error-page.js +8 -6
  172. package/dist/field.js +2 -2
  173. package/dist/getActiveElement-Bmy6QsUb.js +9 -0
  174. package/dist/i18n/en.json.d.ts +57 -0
  175. package/dist/i18n/it.json.d.ts +57 -0
  176. package/dist/i18n.js +148 -0
  177. package/dist/{index-qGMU40e1.js → index-DDJjWaIl.js} +64 -0
  178. package/dist/{index-Cq9Ekgtb.js → index-Dw56kNV0.js} +10 -10
  179. package/dist/index.min-CZ9FIOXr.js +23 -0
  180. package/dist/info-card.js +65 -0
  181. package/dist/input.js +1 -1
  182. package/dist/label.js +1 -1
  183. package/dist/landing-content.js +5 -0
  184. package/dist/landing-footer.js +5 -0
  185. package/dist/landing-navbar.js +5 -0
  186. package/dist/landing-shell.js +5 -0
  187. package/dist/landing.js +9 -237
  188. package/dist/language-flag.js +60 -0
  189. package/dist/language-selector.js +168 -0
  190. package/dist/lib/color-tokens.d.ts +6 -0
  191. package/dist/lib/i18n.d.ts +222 -0
  192. package/dist/load-more-button.js +5 -0
  193. package/dist/loading-state-card.js +5 -0
  194. package/dist/message-dialog.js +34 -18
  195. package/dist/message-toast.js +2 -2
  196. package/dist/native-select.js +1 -1
  197. package/dist/nullish-D3tMkl6i.js +6 -0
  198. package/dist/page-header.js +57 -0
  199. package/dist/popover.js +4 -4
  200. package/dist/progress-component.js +51 -0
  201. package/dist/progress.js +4 -0
  202. package/dist/scroll-area.js +1080 -0
  203. package/dist/select.js +149 -53
  204. package/dist/separator.js +1 -1
  205. package/dist/sheet.js +3 -2
  206. package/dist/sidebar.js +10 -9
  207. package/dist/single-value-card.js +64 -0
  208. package/dist/slider-form-component.js +2 -2
  209. package/dist/slider.js +1 -1
  210. package/dist/style.css +822 -144
  211. package/dist/switch-form-component.js +2 -2
  212. package/dist/switch.js +1 -1
  213. package/dist/table.js +193 -0
  214. package/dist/tabs.js +658 -0
  215. package/dist/text-link.js +39 -0
  216. package/dist/textarea.js +37 -0
  217. package/dist/theme-selector.js +159 -0
  218. package/dist/time-picker.js +5 -0
  219. package/dist/tooltip.js +2 -2
  220. package/dist/{useDirection-SIyEYNxv.js → useDirection-B2bMgzzV.js} +1 -1
  221. package/dist/{useFocusGuards-WYWvpJy2.js → useFocusGuards-2C1jyYW5.js} +1 -1
  222. package/dist/{useFormControl-CyoJwp9r.js → useFormControl-DZ4LnB9F.js} +1 -1
  223. package/dist/{useForwardExpose-BiRQH8eO.js → useForwardExpose-BcX3VRdS.js} +1 -1
  224. package/dist/{useForwardPropsEmits-DmumnZO5.js → useForwardPropsEmits-GlUGKcIz.js} +1 -17
  225. package/dist/useId-CF6wz41D.js +16 -0
  226. package/dist/useNonce-CWj1JlPB.js +12 -0
  227. package/dist/{usePrimitiveElement-Bk3ZOslv.js → usePrimitiveElement-BCpwlakH.js} +1 -1
  228. package/dist/{useSize-BLYTFgnQ.js → useSize-DUgGY9t1.js} +1 -1
  229. package/dist/{useTypeahead-KTl4-oeq.js → useTypeahead-4RK0Emcv.js} +2 -2
  230. package/dist/{utils-BXBXPGDA.js → utils-DbR1EZn-.js} +1 -1
  231. package/dist/utils-hdwtyAF3.js +44 -0
  232. package/package.json +111 -2
  233. package/dist/HugeiconsIcon.vue-CurGbgrJ.js +0 -125
@@ -1,84 +1,5 @@
1
- import { defineComponent, ref, computed, openBlock, createBlock, unref, withCtx, createVNode, normalizeClass, createTextVNode, toDisplayString } from "vue";
2
- import { $ as $14e0f24ef4ac5c92$export$d0bdf45af03a6ea3, l as $14e0f24ef4ac5c92$export$aa8b41735afcabd2, m as $fb18d541ea1ad717$export$ad991b66133851cf, _ as _sfc_main$5 } from "./CalendarPrevButton.vue_vue_type_script_setup_true_lang-BA4Aw_Sl.js";
3
- import { H as HugeiconsIcon, c as cL } from "./HugeiconsIcon.vue-CurGbgrJ.js";
4
- import { c as cn } from "./utils-Bz4m9VPB.js";
5
- import { Button as _sfc_main$3 } from "./button.js";
6
- import { _ as _sfc_main$1, a as _sfc_main$2, b as _sfc_main$4 } from "./PopoverTrigger.vue_vue_type_script_setup_true_lang-DFZJvU_P.js";
7
- const _sfc_main = /* @__PURE__ */ defineComponent({
8
- __name: "DatePicker",
9
- props: {
10
- defaultValue: {},
11
- modelValue: {},
12
- placeholder: { default: "Pick a date" },
13
- disabled: { type: Boolean, default: false },
14
- class: {},
15
- contentClass: {}
16
- },
17
- emits: ["update:modelValue"],
18
- setup(__props, { emit: __emit }) {
19
- const props = __props;
20
- const emits = __emit;
21
- const internalDate = ref(props.defaultValue);
22
- const isControlled = computed(() => props.modelValue !== void 0);
23
- const date = computed({
24
- get: () => isControlled.value ? props.modelValue : internalDate.value,
25
- set: (value) => {
26
- if (!isControlled.value)
27
- internalDate.value = value;
28
- emits("update:modelValue", value);
29
- }
30
- });
31
- const defaultPlaceholder = computed(() => date.value ?? $14e0f24ef4ac5c92$export$d0bdf45af03a6ea3($14e0f24ef4ac5c92$export$aa8b41735afcabd2()));
32
- const formatter = new $fb18d541ea1ad717$export$ad991b66133851cf("en-US", {
33
- dateStyle: "long"
34
- });
35
- return (_ctx, _cache) => {
36
- return openBlock(), createBlock(unref(_sfc_main$1), null, {
37
- default: withCtx(({ close }) => [
38
- createVNode(unref(_sfc_main$2), { "as-child": "" }, {
39
- default: withCtx(() => [
40
- createVNode(unref(_sfc_main$3), {
41
- variant: "outline",
42
- disabled: _ctx.disabled,
43
- class: normalizeClass(unref(cn)("w-[240px] justify-start text-left font-normal", !date.value && "text-muted-foreground", props.class))
44
- }, {
45
- default: withCtx(() => [
46
- createVNode(unref(HugeiconsIcon), {
47
- icon: unref(cL),
48
- class: "size-4"
49
- }, null, 8, ["icon"]),
50
- createTextVNode(" " + toDisplayString(date.value ? unref(formatter).format(date.value.toDate(unref($14e0f24ef4ac5c92$export$aa8b41735afcabd2)())) : _ctx.placeholder), 1)
51
- ]),
52
- _: 1
53
- }, 8, ["disabled", "class"])
54
- ]),
55
- _: 1
56
- }),
57
- createVNode(unref(_sfc_main$4), {
58
- class: normalizeClass(unref(cn)("w-auto p-0", props.contentClass)),
59
- align: "start"
60
- }, {
61
- default: withCtx(() => [
62
- createVNode(unref(_sfc_main$5), {
63
- modelValue: date.value,
64
- "onUpdate:modelValue": [
65
- _cache[0] || (_cache[0] = ($event) => date.value = $event),
66
- close
67
- ],
68
- "default-placeholder": defaultPlaceholder.value,
69
- layout: "month-and-year",
70
- "initial-focus": ""
71
- }, null, 8, ["modelValue", "default-placeholder", "onUpdate:modelValue"])
72
- ]),
73
- _: 2
74
- }, 1032, ["class"])
75
- ]),
76
- _: 1
77
- });
78
- };
79
- }
80
- });
1
+ import { _, _ as _2 } from "./DatePicker.vue_vue_type_script_setup_true_lang-C2Ug81pX.js";
81
2
  export {
82
- _sfc_main as DatePicker,
83
- _sfc_main as default
3
+ _ as DatePicker,
4
+ _2 as default
84
5
  };
@@ -0,0 +1,140 @@
1
+ import { defineComponent, ref, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, createVNode } from "vue";
2
+ import { l as $14e0f24ef4ac5c92$export$aa8b41735afcabd2, n as $11d87f3f76e88657$export$93522d1a439f3617, o as $11d87f3f76e88657$export$e57ff100d91bd4b9 } from "./CalendarPrevButton.vue_vue_type_script_setup_true_lang-DdzS6YGM.js";
3
+ import { c as cn } from "./utils-Bz4m9VPB.js";
4
+ import { _ as _sfc_main$1 } from "./DatePicker.vue_vue_type_script_setup_true_lang-C2Ug81pX.js";
5
+ import { _ as _sfc_main$2 } from "./TimePicker.vue_vue_type_script_setup_true_lang-tbOoMfZu.js";
6
+ const _sfc_main = /* @__PURE__ */ defineComponent({
7
+ __name: "DateTimePicker",
8
+ props: {
9
+ defaultValue: { default: null },
10
+ modelValue: {},
11
+ minDate: { default: null },
12
+ maxDate: { default: null },
13
+ step: { default: 60 },
14
+ disabled: { type: Boolean, default: false },
15
+ datePlaceholder: { default: "Pick a date" },
16
+ class: {},
17
+ datePickerClass: {},
18
+ timePickerClass: {},
19
+ datePickerContentClass: {}
20
+ },
21
+ emits: ["update:modelValue"],
22
+ setup(__props, { emit: __emit }) {
23
+ const props = __props;
24
+ const emits = __emit;
25
+ const localTimeZone = $14e0f24ef4ac5c92$export$aa8b41735afcabd2();
26
+ const internalValue = ref(props.defaultValue);
27
+ const isControlled = computed(() => props.modelValue !== void 0);
28
+ const value = computed({
29
+ get: () => (isControlled.value ? props.modelValue : internalValue.value) ?? null,
30
+ set: (nextValue) => {
31
+ const resolvedValue = clampDate(nextValue);
32
+ if (!isControlled.value)
33
+ internalValue.value = resolvedValue;
34
+ emits("update:modelValue", resolvedValue);
35
+ }
36
+ });
37
+ const toPickerDateValue = (date) => {
38
+ if (!(date instanceof Date) || Number.isNaN(date.getTime()))
39
+ return void 0;
40
+ return $11d87f3f76e88657$export$93522d1a439f3617($11d87f3f76e88657$export$e57ff100d91bd4b9(date, localTimeZone));
41
+ };
42
+ const toTimeString = (date) => {
43
+ if (!(date instanceof Date) || Number.isNaN(date.getTime()))
44
+ return "";
45
+ return `${String(date.getHours()).padStart(2, "0")}:${String(date.getMinutes()).padStart(2, "0")}`;
46
+ };
47
+ const buildDate = (dateValue2, timeValue2) => {
48
+ if (!dateValue2)
49
+ return null;
50
+ const [hours = "0", minutes = "0"] = (timeValue2 || "00:00").split(":");
51
+ const nextDate = new Date(
52
+ dateValue2.year,
53
+ dateValue2.month - 1,
54
+ dateValue2.day,
55
+ Number(hours),
56
+ Number(minutes),
57
+ 0,
58
+ 0
59
+ );
60
+ return Number.isNaN(nextDate.getTime()) ? null : nextDate;
61
+ };
62
+ const areSameCalendarDay = (left, right) => {
63
+ if (!left || !right)
64
+ return false;
65
+ return left.year === right.year && left.month === right.month && left.day === right.day;
66
+ };
67
+ const clampDate = (date) => {
68
+ if (!date)
69
+ return null;
70
+ if (props.minDate && date.getTime() < props.minDate.getTime())
71
+ return new Date(props.minDate);
72
+ if (props.maxDate && date.getTime() > props.maxDate.getTime())
73
+ return new Date(props.maxDate);
74
+ return date;
75
+ };
76
+ const getFallbackDate = () => value.value ?? props.minDate ?? props.maxDate ?? /* @__PURE__ */ new Date();
77
+ const dateValue = computed({
78
+ get: () => toPickerDateValue(value.value),
79
+ set: (nextDateValue) => {
80
+ if (!nextDateValue) {
81
+ value.value = null;
82
+ return;
83
+ }
84
+ const fallbackTime = toTimeString(value.value ?? props.minDate ?? props.maxDate);
85
+ value.value = buildDate(nextDateValue, fallbackTime);
86
+ }
87
+ });
88
+ const timeValue = computed({
89
+ get: () => toTimeString(value.value),
90
+ set: (nextTimeValue) => {
91
+ value.value = buildDate(toPickerDateValue(getFallbackDate()), nextTimeValue || toTimeString(getFallbackDate()));
92
+ }
93
+ });
94
+ const minDateValue = computed(() => toPickerDateValue(props.minDate));
95
+ const maxDateValue = computed(() => toPickerDateValue(props.maxDate));
96
+ const minTimeValue = computed(() => {
97
+ const selectedDate = dateValue.value;
98
+ const minimumDate = minDateValue.value;
99
+ return areSameCalendarDay(selectedDate, minimumDate) ? toTimeString(props.minDate) : void 0;
100
+ });
101
+ const maxTimeValue = computed(() => {
102
+ const selectedDate = dateValue.value;
103
+ const maximumDate = maxDateValue.value;
104
+ return areSameCalendarDay(selectedDate, maximumDate) ? toTimeString(props.maxDate) : void 0;
105
+ });
106
+ return (_ctx, _cache) => {
107
+ return openBlock(), createElementBlock("div", {
108
+ class: normalizeClass(unref(cn)("grid grid-cols-1 gap-3 md:grid-cols-[minmax(0,1.35fr)_minmax(0,1fr)]", props.class))
109
+ }, [
110
+ createElementVNode("div", null, [
111
+ createVNode(unref(_sfc_main$1), {
112
+ modelValue: dateValue.value,
113
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => dateValue.value = $event),
114
+ disabled: props.disabled,
115
+ placeholder: props.datePlaceholder,
116
+ "min-value": minDateValue.value,
117
+ "max-value": maxDateValue.value,
118
+ class: normalizeClass(unref(cn)("w-full", props.datePickerClass)),
119
+ "content-class": props.datePickerContentClass
120
+ }, null, 8, ["modelValue", "disabled", "placeholder", "min-value", "max-value", "class", "content-class"])
121
+ ]),
122
+ createElementVNode("div", null, [
123
+ createVNode(unref(_sfc_main$2), {
124
+ modelValue: timeValue.value,
125
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => timeValue.value = $event),
126
+ disabled: props.disabled,
127
+ step: props.step,
128
+ min: minTimeValue.value,
129
+ max: maxTimeValue.value,
130
+ class: normalizeClass(unref(cn)("w-full", props.timePickerClass))
131
+ }, null, 8, ["modelValue", "disabled", "step", "min", "max", "class"])
132
+ ])
133
+ ], 2);
134
+ };
135
+ }
136
+ });
137
+ export {
138
+ _sfc_main as DateTimePicker,
139
+ _sfc_main as default
140
+ };
package/dist/dialog.js CHANGED
@@ -1,12 +1,13 @@
1
- import { _, a, b, c, d, e } from "./DialogTitle.vue_vue_type_script_setup_true_lang-BG4dvMRo.js";
2
- import { defineComponent, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot, createElementBlock, normalizeClass, createVNode, createTextVNode, createCommentVNode } from "vue";
3
- import { D as DialogClose_default, a as DialogTrigger_default } from "./DialogTrigger-BQbSAHMb.js";
1
+ import { _, a, b, c, d, e } from "./DialogTitle.vue_vue_type_script_setup_true_lang-CycrzAMT.js";
2
+ import { defineComponent, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot, createElementBlock, normalizeClass, createVNode, createElementVNode, createCommentVNode } from "vue";
3
+ import { D as DialogClose_default } from "./DialogClose-DxCTEp0d.js";
4
4
  import { c as cn } from "./utils-Bz4m9VPB.js";
5
+ import { u as useForwardPropsEmits } from "./useForwardPropsEmits-GlUGKcIz.js";
6
+ import { D as DialogOverlay_default, a as DialogContent_default } from "./DialogTitle-jKgSCoXM.js";
7
+ import { D as DialogPortal_default } from "./DialogPortal-BiMJAKLg.js";
5
8
  import { Button as _sfc_main$4 } from "./button.js";
6
- import { u as useForwardPropsEmits } from "./useForwardPropsEmits-DmumnZO5.js";
7
- import { D as DialogOverlay_default, a as DialogContent_default } from "./DialogTitle-CLuntLBB.js";
8
- import { D as DialogPortal_default } from "./DialogPortal-D81oXsCY.js";
9
- import { r as reactiveOmit } from "./index-qGMU40e1.js";
9
+ import { r as reactiveOmit } from "./index-DDJjWaIl.js";
10
+ import { D as DialogTrigger_default } from "./DialogTrigger-Cb3rLcid.js";
10
11
  const _sfc_main$3 = /* @__PURE__ */ defineComponent({
11
12
  __name: "DialogClose",
12
13
  props: {
@@ -28,31 +29,16 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
28
29
  const _sfc_main$2 = /* @__PURE__ */ defineComponent({
29
30
  __name: "DialogFooter",
30
31
  props: {
31
- class: {},
32
- showCloseButton: { type: Boolean, default: false }
32
+ class: {}
33
33
  },
34
34
  setup(__props) {
35
35
  const props = __props;
36
36
  return (_ctx, _cache) => {
37
37
  return openBlock(), createElementBlock("div", {
38
38
  "data-slot": "dialog-footer",
39
- class: normalizeClass(unref(cn)("flex flex-col-reverse gap-3 border-t border-border pt-4 sm:flex-row-reverse", props.class))
39
+ class: normalizeClass(unref(cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", props.class))
40
40
  }, [
41
- renderSlot(_ctx.$slots, "default"),
42
- _ctx.showCloseButton ? (openBlock(), createBlock(unref(DialogClose_default), {
43
- key: 0,
44
- "as-child": ""
45
- }, {
46
- default: withCtx(() => [
47
- createVNode(unref(_sfc_main$4), { variant: "outline" }, {
48
- default: withCtx(() => _cache[0] || (_cache[0] = [
49
- createTextVNode(" Close ")
50
- ])),
51
- _: 1
52
- })
53
- ]),
54
- _: 1
55
- })) : createCommentVNode("", true)
41
+ renderSlot(_ctx.$slots, "default")
56
42
  ], 2);
57
43
  };
58
44
  }
@@ -67,7 +53,8 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
67
53
  disableOutsidePointerEvents: { type: Boolean },
68
54
  asChild: { type: Boolean },
69
55
  as: {},
70
- class: {}
56
+ class: {},
57
+ showCloseButton: { type: Boolean, default: false }
71
58
  },
72
59
  emits: ["escapeKeyDown", "pointerDownOutside", "focusOutside", "interactOutside", "openAutoFocus", "closeAutoFocus"],
73
60
  setup(__props, { emit: __emit }) {
@@ -78,11 +65,11 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
78
65
  return (_ctx, _cache) => {
79
66
  return openBlock(), createBlock(unref(DialogPortal_default), null, {
80
67
  default: withCtx(() => [
81
- createVNode(unref(DialogOverlay_default), { class: "fixed inset-0 z-50 grid place-items-center overflow-y-auto bg-black/45 backdrop-blur-[2px] transition-[opacity,backdrop-filter] ease-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0" }, {
68
+ createVNode(unref(DialogOverlay_default), { class: "fixed inset-0 isolate z-50 grid place-items-center overflow-y-auto bg-black/45 backdrop-blur-[2px] transition-[opacity,backdrop-filter] ease-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0" }, {
82
69
  default: withCtx(() => [
83
70
  createVNode(unref(DialogContent_default), mergeProps({
84
71
  class: unref(cn)(
85
- "relative z-50 my-8 grid w-[95%] max-w-lg gap-0 overflow-hidden rounded border border-border bg-card text-card-foreground shadow-2xl duration-200 md:w-full",
72
+ "relative z-50 my-6 grid w-full max-w-[calc(100%-2rem)] gap-4 rounded border border-border bg-card p-6 text-card-foreground outline-none duration-200 sm:max-w-[425px]",
86
73
  props.class
87
74
  )
88
75
  }, { ..._ctx.$attrs, ...unref(forwarded) }, {
@@ -95,7 +82,27 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
95
82
  })
96
83
  }), {
97
84
  default: withCtx(() => [
98
- renderSlot(_ctx.$slots, "default")
85
+ renderSlot(_ctx.$slots, "default"),
86
+ props.showCloseButton ? (openBlock(), createBlock(unref(DialogClose_default), {
87
+ key: 0,
88
+ "data-slot": "dialog-close",
89
+ "as-child": ""
90
+ }, {
91
+ default: withCtx(() => [
92
+ createVNode(unref(_sfc_main$4), {
93
+ variant: "ghost",
94
+ size: "icon-sm",
95
+ class: "absolute top-4 right-4 p-0.5"
96
+ }, {
97
+ default: withCtx(() => _cache[1] || (_cache[1] = [
98
+ createElementVNode("span", { "aria-hidden": "true" }, "X", -1),
99
+ createElementVNode("span", { class: "sr-only" }, "Close", -1)
100
+ ])),
101
+ _: 1
102
+ })
103
+ ]),
104
+ _: 1
105
+ })) : createCommentVNode("", true)
99
106
  ]),
100
107
  _: 3
101
108
  }, 16, ["class"])
@@ -0,0 +1,5 @@
1
+ import { _, _ as _2 } from "./EmptyStateCard.vue_vue_type_script_setup_true_lang-BYKX6WRQ.js";
2
+ export {
3
+ _ as EmptyStateCard,
4
+ _2 as default
5
+ };
@@ -1,9 +1,11 @@
1
1
  import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, createBlock, createCommentVNode, createElementVNode, renderSlot, createVNode, withCtx, toDisplayString, createTextVNode } from "vue";
2
- import { H as HugeiconsIcon, m as mn } from "./HugeiconsIcon.vue-CurGbgrJ.js";
2
+ import { m as mn } from "./index.min-CZ9FIOXr.js";
3
+ import { H as HugeiconsIcon } from "./HugeiconsIcon.vue-By2RXWWz.js";
3
4
  import { B as BackgroundGrid } from "./BackgroundGrid-BJDDcLzF.js";
4
5
  import { Button as _sfc_main$4 } from "./button.js";
5
- import { _ as _sfc_main$1 } from "./Card.vue_vue_type_script_setup_true_lang-6ol3rxy1.js";
6
- import { _ as _sfc_main$2, a as _sfc_main$3 } from "./CardFooter.vue_vue_type_script_setup_true_lang-B1eS9wge.js";
6
+ import { _ as _sfc_main$1 } from "./Card.vue_vue_type_script_setup_true_lang-D0pFVflK.js";
7
+ import { _ as _sfc_main$2 } from "./CardContent.vue_vue_type_script_setup_true_lang-dBzO0q1t.js";
8
+ import { _ as _sfc_main$3 } from "./CardFooter.vue_vue_type_script_setup_true_lang-B5EqgrgN.js";
7
9
  import { c as cn } from "./utils-Bz4m9VPB.js";
8
10
  const _hoisted_1 = { class: "relative z-10 mx-auto flex min-h-screen w-full max-w-6xl items-center justify-center px-4 py-10 sm:px-6 lg:px-8" };
9
11
  const _hoisted_2 = { class: "w-full max-w-xl" };
@@ -12,8 +14,8 @@ const _hoisted_3 = {
12
14
  class: "mb-4 flex justify-end gap-3"
13
15
  };
14
16
  const _hoisted_4 = { class: "text-sm font-semibold uppercase tracking-[0.24em] text-[var(--button-primary-light)] dark:text-[var(--button-primary-dark)]" };
15
- const _hoisted_5 = { class: "mt-3 text-2xl font-bold" };
16
- const _hoisted_6 = { class: "mt-4 text-sm leading-7 text-[var(--text-secondary-light)] dark:text-[var(--text-secondary-dark)] sm:text-base" };
17
+ const _hoisted_5 = { class: "text-2xl font-bold mt-3" };
18
+ const _hoisted_6 = { class: "text-sm leading-7 text-[var(--text-secondary-light)] dark:text-[var(--text-secondary-dark)] sm:text-base mt-4" };
17
19
  const _sfc_main = /* @__PURE__ */ defineComponent({
18
20
  __name: "ErrorPage",
19
21
  props: {
@@ -81,7 +83,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
81
83
  renderSlot(_ctx.$slots, "actions", { onAction: handleAction }, () => [
82
84
  props.showDefaultAction ? (openBlock(), createBlock(unref(_sfc_main$4), {
83
85
  key: 0,
84
- variant: "default",
86
+ variant: "primary",
85
87
  onClick: handleAction
86
88
  }, {
87
89
  default: withCtx(() => [
package/dist/field.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { c as cva } from "./index-FpH8cK6B.js";
2
2
  import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, renderSlot, computed, Fragment, createTextVNode, toDisplayString, renderList, createCommentVNode, createBlock, withCtx, createVNode } from "vue";
3
3
  import { c as cn } from "./utils-Bz4m9VPB.js";
4
- import { _ as _sfc_main$a } from "./Label.vue_vue_type_script_setup_true_lang-pMIzCHzV.js";
5
- import { _ as _sfc_main$b } from "./Separator.vue_vue_type_script_setup_true_lang-CMRkdntA.js";
4
+ import { _ as _sfc_main$a } from "./Label.vue_vue_type_script_setup_true_lang-CdLIMAdF.js";
5
+ import { _ as _sfc_main$b } from "./Separator.vue_vue_type_script_setup_true_lang-D9BozdWD.js";
6
6
  const _hoisted_1$3 = ["data-orientation"];
7
7
  const _sfc_main$9 = /* @__PURE__ */ defineComponent({
8
8
  __name: "Field",
@@ -0,0 +1,9 @@
1
+ function getActiveElement() {
2
+ let activeElement = document.activeElement;
3
+ if (activeElement == null) return null;
4
+ while (activeElement != null && activeElement.shadowRoot != null && activeElement.shadowRoot.activeElement != null) activeElement = activeElement.shadowRoot.activeElement;
5
+ return activeElement;
6
+ }
7
+ export {
8
+ getActiveElement as g
9
+ };
@@ -0,0 +1,57 @@
1
+ declare const _default: {
2
+ "ui": {
3
+ "common": {
4
+ "empty": {
5
+ "title": "Nothing here yet",
6
+ "description": "There is no content to show right now."
7
+ },
8
+ "loading": {
9
+ "title": "Loading...",
10
+ "description": "Please wait a moment while we load the content."
11
+ }
12
+ },
13
+ "buttons": {
14
+ "all": "All",
15
+ "close": "Close",
16
+ "cancel": "Cancel",
17
+ "delete": "Delete",
18
+ "confirm": "Confirm",
19
+ "filter": "Filter",
20
+ "search": "Search",
21
+ "apply": "Apply",
22
+ "clear": "Clear",
23
+ "loading": "Loading",
24
+ "loadMore": "Load more",
25
+ "save": "Save",
26
+ "update": "Update",
27
+ "goBack": "Go back"
28
+ },
29
+ "theme": {
30
+ "light": "Light",
31
+ "dark": "Dark",
32
+ "auto": "Auto",
33
+ "title": "Choose theme",
34
+ "ariaLabel": "Toggle theme selector"
35
+ },
36
+ "language": {
37
+ "title": "Choose language",
38
+ "ariaLabel": "Language selector"
39
+ },
40
+ "footer": {
41
+ "madeWith": "Made with",
42
+ "by": "by",
43
+ "allRightsReserved": "All rights reserved."
44
+ },
45
+ "select": {
46
+ "defaultPlaceholder": "Select an option"
47
+ },
48
+ "messageDialog": {
49
+ "error": "Error",
50
+ "success": "Success",
51
+ "info": "Information",
52
+ "warning": "Warning"
53
+ }
54
+ }
55
+ };
56
+
57
+ export default _default;
@@ -0,0 +1,57 @@
1
+ declare const _default: {
2
+ "ui": {
3
+ "common": {
4
+ "empty": {
5
+ "title": "Non c'è ancora niente qui",
6
+ "description": "Al momento non c'è alcun contenuto da mostrare."
7
+ },
8
+ "loading": {
9
+ "title": "Caricamento...",
10
+ "description": "Attendi un momento mentre carichiamo il contenuto."
11
+ }
12
+ },
13
+ "buttons": {
14
+ "all": "Tutti",
15
+ "close": "Chiudi",
16
+ "cancel": "Annulla",
17
+ "delete": "Elimina",
18
+ "confirm": "Conferma",
19
+ "filter": "Filtra",
20
+ "search": "Cerca",
21
+ "apply": "Applica",
22
+ "clear": "Pulisci",
23
+ "loading": "Caricamento",
24
+ "loadMore": "Carica altro",
25
+ "save": "Salva",
26
+ "update": "Aggiorna",
27
+ "goBack": "Torna indietro"
28
+ },
29
+ "theme": {
30
+ "light": "Chiaro",
31
+ "dark": "Scuro",
32
+ "auto": "Automatico",
33
+ "title": "Scegli tema",
34
+ "ariaLabel": "Selettore tema"
35
+ },
36
+ "language": {
37
+ "title": "Scegli lingua",
38
+ "ariaLabel": "Selettore lingua"
39
+ },
40
+ "footer": {
41
+ "madeWith": "Fatto con",
42
+ "by": "da",
43
+ "allRightsReserved": "Tutti i diritti riservati."
44
+ },
45
+ "select": {
46
+ "defaultPlaceholder": "Seleziona un'opzione"
47
+ },
48
+ "messageDialog": {
49
+ "error": "Errore",
50
+ "success": "Successo",
51
+ "info": "Informazione",
52
+ "warning": "Attenzione"
53
+ }
54
+ }
55
+ };
56
+
57
+ export default _default;
package/dist/i18n.js ADDED
@@ -0,0 +1,148 @@
1
+ const ui$1 = {
2
+ common: {
3
+ empty: {
4
+ title: "Nothing here yet",
5
+ description: "There is no content to show right now."
6
+ },
7
+ loading: {
8
+ title: "Loading...",
9
+ description: "Please wait a moment while we load the content."
10
+ }
11
+ },
12
+ buttons: {
13
+ all: "All",
14
+ close: "Close",
15
+ cancel: "Cancel",
16
+ "delete": "Delete",
17
+ confirm: "Confirm",
18
+ filter: "Filter",
19
+ search: "Search",
20
+ apply: "Apply",
21
+ clear: "Clear",
22
+ loading: "Loading",
23
+ loadMore: "Load more",
24
+ save: "Save",
25
+ update: "Update",
26
+ goBack: "Go back"
27
+ },
28
+ theme: {
29
+ light: "Light",
30
+ dark: "Dark",
31
+ auto: "Auto",
32
+ title: "Choose theme",
33
+ ariaLabel: "Toggle theme selector"
34
+ },
35
+ language: {
36
+ title: "Choose language",
37
+ ariaLabel: "Language selector"
38
+ },
39
+ footer: {
40
+ madeWith: "Made with",
41
+ by: "by",
42
+ allRightsReserved: "All rights reserved."
43
+ },
44
+ select: {
45
+ defaultPlaceholder: "Select an option"
46
+ },
47
+ messageDialog: {
48
+ error: "Error",
49
+ success: "Success",
50
+ info: "Information",
51
+ warning: "Warning"
52
+ }
53
+ };
54
+ const en = {
55
+ ui: ui$1
56
+ };
57
+ const ui = {
58
+ common: {
59
+ empty: {
60
+ title: "Non c'è ancora niente qui",
61
+ description: "Al momento non c'è alcun contenuto da mostrare."
62
+ },
63
+ loading: {
64
+ title: "Caricamento...",
65
+ description: "Attendi un momento mentre carichiamo il contenuto."
66
+ }
67
+ },
68
+ buttons: {
69
+ all: "Tutti",
70
+ close: "Chiudi",
71
+ cancel: "Annulla",
72
+ "delete": "Elimina",
73
+ confirm: "Conferma",
74
+ filter: "Filtra",
75
+ search: "Cerca",
76
+ apply: "Applica",
77
+ clear: "Pulisci",
78
+ loading: "Caricamento",
79
+ loadMore: "Carica altro",
80
+ save: "Salva",
81
+ update: "Aggiorna",
82
+ goBack: "Torna indietro"
83
+ },
84
+ theme: {
85
+ light: "Chiaro",
86
+ dark: "Scuro",
87
+ auto: "Automatico",
88
+ title: "Scegli tema",
89
+ ariaLabel: "Selettore tema"
90
+ },
91
+ language: {
92
+ title: "Scegli lingua",
93
+ ariaLabel: "Selettore lingua"
94
+ },
95
+ footer: {
96
+ madeWith: "Fatto con",
97
+ by: "da",
98
+ allRightsReserved: "Tutti i diritti riservati."
99
+ },
100
+ select: {
101
+ defaultPlaceholder: "Seleziona un'opzione"
102
+ },
103
+ messageDialog: {
104
+ error: "Errore",
105
+ success: "Successo",
106
+ info: "Informazione",
107
+ warning: "Attenzione"
108
+ }
109
+ };
110
+ const it = {
111
+ ui
112
+ };
113
+ const uiVintageMessages = {
114
+ en,
115
+ it
116
+ };
117
+ const getUiVintageMessagesForLocale = (locale) => {
118
+ return uiVintageMessages[locale];
119
+ };
120
+ const getUiVintageRuntimeLocale = () => {
121
+ let browserLocale = "en";
122
+ if (typeof document !== "undefined" && document.documentElement.lang) {
123
+ browserLocale = document.documentElement.lang;
124
+ } else if (typeof navigator !== "undefined" && navigator.language) {
125
+ browserLocale = navigator.language;
126
+ }
127
+ if (browserLocale.toLowerCase().startsWith("it")) {
128
+ return "it";
129
+ }
130
+ return "en";
131
+ };
132
+ const getUiVintageRuntimeMessage = (path, fallback) => {
133
+ const localeMessages = uiVintageMessages[getUiVintageRuntimeLocale()];
134
+ const segments = path.split(".");
135
+ let currentValue = localeMessages;
136
+ for (const segment of segments) {
137
+ if (!currentValue || typeof currentValue !== "object" || !(segment in currentValue)) {
138
+ return fallback;
139
+ }
140
+ currentValue = currentValue[segment];
141
+ }
142
+ return typeof currentValue === "string" ? currentValue : fallback;
143
+ };
144
+ export {
145
+ getUiVintageMessagesForLocale,
146
+ getUiVintageRuntimeMessage,
147
+ uiVintageMessages
148
+ };