@xleddyl/443-components-vue 0.1.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 (215) hide show
  1. package/README.md +81 -20
  2. package/dist/chart/BarChart.vue.d.ts +6 -6
  3. package/dist/chart/ChartLegend.vue.d.ts +16 -16
  4. package/dist/chart/ChartPanel.vue +10 -6
  5. package/dist/chart/ChartPanel.vue.d.ts +6 -8
  6. package/dist/chart/ChartSummary.vue.d.ts +6 -6
  7. package/dist/chart/DoughnutChart.vue.d.ts +6 -6
  8. package/dist/chart/LineChart.vue.d.ts +6 -6
  9. package/dist/components/core/Button.vue +3 -1
  10. package/dist/components/core/Button.vue.d.ts +6 -6
  11. package/dist/components/core/FormField.vue.d.ts +6 -6
  12. package/dist/components/core/Icon.vue +9 -1
  13. package/dist/components/core/Icon.vue.d.ts +4 -4
  14. package/dist/components/core/Input.vue +6 -3
  15. package/dist/components/core/Input.vue.d.ts +18 -19
  16. package/dist/components/core/Kbd.vue.d.ts +6 -6
  17. package/dist/components/core/Root.vue.d.ts +10 -10
  18. package/dist/components/core/Spinner.vue +7 -3
  19. package/dist/components/core/Spinner.vue.d.ts +6 -7
  20. package/dist/components/core/Textarea.vue +36 -23
  21. package/dist/components/core/Textarea.vue.d.ts +31 -21
  22. package/dist/components/core/VisuallyHidden.vue.d.ts +10 -10
  23. package/dist/components/data/Avatar.vue +4 -2
  24. package/dist/components/data/Avatar.vue.d.ts +6 -6
  25. package/dist/components/data/AvatarGroup.vue +5 -2
  26. package/dist/components/data/AvatarGroup.vue.d.ts +7 -8
  27. package/dist/components/data/Badge.vue.d.ts +6 -6
  28. package/dist/components/data/DescriptionList.vue +7 -3
  29. package/dist/components/data/DescriptionList.vue.d.ts +7 -8
  30. package/dist/components/data/FilterPills.vue +13 -4
  31. package/dist/components/data/FilterPills.vue.d.ts +16 -18
  32. package/dist/components/data/Pagination.vue +23 -14
  33. package/dist/components/data/Pagination.vue.d.ts +16 -23
  34. package/dist/components/data/Stat.vue +9 -6
  35. package/dist/components/data/Stat.vue.d.ts +10 -13
  36. package/dist/components/data/Table.vue +12 -7
  37. package/dist/components/data/Tag.vue +7 -4
  38. package/dist/components/data/Tag.vue.d.ts +16 -17
  39. package/dist/components/data/Timeline.vue.d.ts +6 -6
  40. package/dist/components/data/Tree.vue +5 -2
  41. package/dist/components/data/Tree.vue.d.ts +16 -17
  42. package/dist/components/feedback/Alert.vue +5 -2
  43. package/dist/components/feedback/Alert.vue.d.ts +14 -15
  44. package/dist/components/feedback/EmptyState.vue.d.ts +7 -7
  45. package/dist/components/feedback/LoadingOverlay.vue +8 -4
  46. package/dist/components/feedback/LoadingOverlay.vue.d.ts +6 -7
  47. package/dist/components/feedback/Meter.vue.d.ts +6 -6
  48. package/dist/components/feedback/Progress.vue +6 -3
  49. package/dist/components/feedback/Progress.vue.d.ts +6 -7
  50. package/dist/components/feedback/ProgressRing.vue +5 -2
  51. package/dist/components/feedback/ProgressRing.vue.d.ts +6 -7
  52. package/dist/components/feedback/Skeleton.vue.d.ts +6 -6
  53. package/dist/components/forms/Calendar.vue +16 -11
  54. package/dist/components/forms/Calendar.vue.d.ts +17 -21
  55. package/dist/components/forms/ColorInput.vue +8 -4
  56. package/dist/components/forms/ColorInput.vue.d.ts +18 -20
  57. package/dist/components/forms/Combobox.vue +31 -19
  58. package/dist/components/forms/Combobox.vue.d.ts +2 -2
  59. package/dist/components/forms/DateInput.vue.d.ts +16 -16
  60. package/dist/components/forms/DatePicker.vue +17 -11
  61. package/dist/components/forms/DatePicker.vue.d.ts +14 -18
  62. package/dist/components/forms/FileInput.vue +23 -13
  63. package/dist/components/forms/FileInput.vue.d.ts +17 -23
  64. package/dist/components/forms/InputAddon.vue.d.ts +6 -6
  65. package/dist/components/forms/InputGroup.vue.d.ts +6 -6
  66. package/dist/components/forms/NumberInput.vue +15 -10
  67. package/dist/components/forms/NumberInput.vue.d.ts +16 -19
  68. package/dist/components/forms/PasswordInput.vue +21 -13
  69. package/dist/components/forms/PasswordInput.vue.d.ts +14 -20
  70. package/dist/components/forms/PinInput.vue +7 -2
  71. package/dist/components/forms/PinInput.vue.d.ts +18 -16
  72. package/dist/components/forms/Radio.vue.d.ts +6 -6
  73. package/dist/components/forms/Slider.vue.d.ts +18 -18
  74. package/dist/components/forms/Switch.vue.d.ts +16 -16
  75. package/dist/components/forms/TimeInput.vue.d.ts +16 -16
  76. package/dist/components/layout/Accordion.vue.d.ts +16 -16
  77. package/dist/components/layout/AppShell.vue +11 -6
  78. package/dist/components/layout/AppShell.vue.d.ts +16 -19
  79. package/dist/components/layout/Breadcrumbs.vue +5 -2
  80. package/dist/components/layout/Breadcrumbs.vue.d.ts +6 -7
  81. package/dist/components/layout/Card.vue.d.ts +8 -8
  82. package/dist/components/layout/CopyButton.vue +11 -6
  83. package/dist/components/layout/CopyButton.vue.d.ts +16 -18
  84. package/dist/components/layout/Grid.vue.d.ts +7 -7
  85. package/dist/components/layout/NavLink.vue.d.ts +10 -10
  86. package/dist/components/layout/PageHeader.vue.d.ts +6 -6
  87. package/dist/components/layout/Separator.vue.d.ts +6 -6
  88. package/dist/components/layout/Sidebar.vue +10 -5
  89. package/dist/components/layout/Sidebar.vue.d.ts +7 -11
  90. package/dist/components/layout/SidebarSection.vue.d.ts +6 -6
  91. package/dist/components/layout/Stack.vue.d.ts +10 -10
  92. package/dist/components/layout/Tabs.vue.d.ts +16 -16
  93. package/dist/components/layout/ThemeSwitch.vue +12 -6
  94. package/dist/components/layout/ThemeSwitch.vue.d.ts +6 -7
  95. package/dist/components/layout/Toolbar.vue.d.ts +6 -6
  96. package/dist/components/overlays/CommandPalette.vue +38 -24
  97. package/dist/components/overlays/CommandPalette.vue.d.ts +18 -30
  98. package/dist/components/overlays/ConfirmDialog.vue +14 -9
  99. package/dist/components/overlays/ConfirmDialog.vue.d.ts +12 -15
  100. package/dist/components/overlays/ConfirmHost.vue +6 -3
  101. package/dist/components/overlays/ConfirmHost.vue.d.ts +16 -16
  102. package/dist/components/overlays/ContextMenu.vue +6 -3
  103. package/dist/components/overlays/ContextMenu.vue.d.ts +11 -13
  104. package/dist/components/overlays/Drawer.vue +1 -1
  105. package/dist/components/overlays/Drawer.vue.d.ts +10 -11
  106. package/dist/components/overlays/DropdownMenu.vue.d.ts +10 -10
  107. package/dist/components/overlays/HoverCard.vue.d.ts +16 -16
  108. package/dist/components/overlays/Modal.vue +1 -1
  109. package/dist/components/overlays/Modal.vue.d.ts +10 -11
  110. package/dist/components/overlays/OverlayHost.vue.d.ts +1 -1
  111. package/dist/components/overlays/Popover.vue.d.ts +16 -16
  112. package/dist/components/overlays/Toaster.vue +8 -4
  113. package/dist/components/overlays/Toaster.vue.d.ts +8 -10
  114. package/dist/components/overlays/Tooltip.vue.d.ts +6 -6
  115. package/dist/components/templates/AccountMenu.vue +5 -2
  116. package/dist/components/templates/AccountMenu.vue.d.ts +18 -19
  117. package/dist/components/templates/AppearanceSettings.vue +26 -12
  118. package/dist/components/templates/AppearanceSettings.vue.d.ts +7 -11
  119. package/dist/components/templates/AuthLayout.vue +11 -7
  120. package/dist/components/templates/AuthLayout.vue.d.ts +6 -9
  121. package/dist/components/templates/Brand.vue.d.ts +10 -10
  122. package/dist/components/templates/DashboardLayout.vue +25 -16
  123. package/dist/components/templates/DashboardLayout.vue.d.ts +12 -24
  124. package/dist/components/templates/DashboardPage.vue +7 -3
  125. package/dist/components/templates/DashboardPage.vue.d.ts +6 -7
  126. package/dist/components/templates/DetailPage.vue +14 -8
  127. package/dist/components/templates/DetailPage.vue.d.ts +14 -18
  128. package/dist/components/templates/EmptyPage.vue +15 -8
  129. package/dist/components/templates/EmptyPage.vue.d.ts +7 -11
  130. package/dist/components/templates/ErrorPage.vue +32 -25
  131. package/dist/components/templates/ErrorPage.vue.d.ts +6 -6
  132. package/dist/components/templates/FormPage.vue +19 -11
  133. package/dist/components/templates/FormPage.vue.d.ts +3 -3
  134. package/dist/components/templates/ListPage.vue +39 -23
  135. package/dist/components/templates/ListPage.vue.d.ts +2 -2
  136. package/dist/components/templates/NotFoundPage.vue +4 -4
  137. package/dist/components/templates/NotFoundPage.vue.d.ts +1 -1
  138. package/dist/components/templates/SaveBar.vue +20 -11
  139. package/dist/components/templates/SaveBar.vue.d.ts +16 -19
  140. package/dist/components/templates/SettingsGroup.vue.d.ts +7 -7
  141. package/dist/components/templates/SettingsModal.vue +29 -21
  142. package/dist/components/templates/SettingsModal.vue.d.ts +15 -25
  143. package/dist/components/templates/SettingsPage.vue +8 -5
  144. package/dist/components/templates/SettingsPage.vue.d.ts +18 -21
  145. package/dist/components/templates/SettingsSection.vue +7 -3
  146. package/dist/components/templates/SettingsSection.vue.d.ts +8 -9
  147. package/dist/composables/core.d.ts +1 -0
  148. package/dist/composables/core.mjs +1 -0
  149. package/dist/composables/useAlert.mjs +3 -1
  150. package/dist/composables/useConfirm.mjs +5 -3
  151. package/dist/composables/useDirtyGuard.mjs +7 -5
  152. package/dist/composables/useForm.d.ts +4 -1
  153. package/dist/composables/useForm.mjs +33 -16
  154. package/dist/composables/useIcons.d.ts +4 -0
  155. package/dist/composables/useIcons.mjs +10 -0
  156. package/dist/composables/useLocale.d.ts +11 -0
  157. package/dist/composables/useLocale.mjs +26 -0
  158. package/dist/composables/usePasswordStrength.mjs +11 -7
  159. package/dist/composables/usePrompt.mjs +3 -1
  160. package/dist/editor/RichTextEditor.vue +20 -14
  161. package/dist/editor/RichTextEditor.vue.d.ts +22 -15
  162. package/dist/editor/index.d.ts +0 -1
  163. package/dist/editor/index.mjs +0 -1
  164. package/dist/editor/types.d.ts +3 -18
  165. package/dist/grid/DataGrid.vue +11 -2
  166. package/dist/grid/GridToolbar.vue +6 -2
  167. package/dist/grid/GridToolbar.vue.d.ts +21 -20
  168. package/dist/grid/cells/BadgeCell.vue.d.ts +6 -6
  169. package/dist/grid/cells/BooleanCell.vue +5 -2
  170. package/dist/grid/cells/BooleanCell.vue.d.ts +6 -6
  171. package/dist/grid/cells/DateCell.vue +4 -1
  172. package/dist/grid/cells/DateCell.vue.d.ts +6 -6
  173. package/dist/grid/cells/ImageCell.vue.d.ts +6 -6
  174. package/dist/grid/cells/LinkCell.vue.d.ts +6 -6
  175. package/dist/grid/index.d.ts +0 -1
  176. package/dist/grid/index.mjs +0 -1
  177. package/dist/grid/types.d.ts +5 -17
  178. package/dist/icons/collections.d.ts +39 -0
  179. package/dist/icons/collections.mjs +67 -0
  180. package/dist/index.d.ts +4 -1
  181. package/dist/index.mjs +11 -1
  182. package/dist/internal/feedback/LoadingHost.vue +6 -3
  183. package/dist/internal/feedback/LoadingHost.vue.d.ts +0 -1
  184. package/dist/internal/forms/files.mjs +1 -1
  185. package/dist/internal/forms/standard-schema.d.ts +26 -0
  186. package/dist/internal/forms/standard-schema.mjs +21 -0
  187. package/dist/internal/keys.d.ts +4 -1
  188. package/dist/internal/keys.mjs +2 -0
  189. package/dist/internal/overlays/DialogFrame.vue +5 -2
  190. package/dist/internal/overlays/DialogFrame.vue.d.ts +14 -14
  191. package/dist/internal/overlays/MenuList.vue.d.ts +16 -16
  192. package/dist/internal/overlays/OverlayView.vue.d.ts +16 -16
  193. package/dist/internal/overlays/confirm.d.ts +3 -0
  194. package/dist/locale/en.d.ts +2 -0
  195. package/dist/locale/en.mjs +284 -0
  196. package/dist/locale/index.d.ts +16 -0
  197. package/dist/locale/index.mjs +50 -0
  198. package/dist/locale/it.d.ts +2 -0
  199. package/dist/locale/it.mjs +284 -0
  200. package/dist/locale/types.d.ts +292 -0
  201. package/dist/locale/types.mjs +0 -0
  202. package/dist/nuxt/module.d.ts +18 -4
  203. package/dist/nuxt/module.mjs +138 -9
  204. package/dist/nuxt/runtime/layouts/auth.vue.d.ts +16 -16
  205. package/dist/nuxt/runtime/layouts/dashboard.vue.d.ts +16 -16
  206. package/dist/nuxt/runtime/locale.d.ts +2 -0
  207. package/dist/nuxt/runtime/locale.mjs +20 -0
  208. package/dist/nuxt/runtime/theme.mjs +3 -3
  209. package/dist/styles/core/icon.css +4 -0
  210. package/dist/styles/core/textarea.css +21 -0
  211. package/package.json +1 -1
  212. package/dist/editor/messages.d.ts +0 -2
  213. package/dist/editor/messages.mjs +0 -18
  214. package/dist/grid/messages.d.ts +0 -3
  215. package/dist/grid/messages.mjs +0 -21
@@ -28,7 +28,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
28
28
  dir?: string | undefined | undefined;
29
29
  draggable?: (boolean | "true" | "false") | undefined;
30
30
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
31
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
31
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
32
32
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
33
33
  id?: string | undefined | undefined;
34
34
  inert?: (boolean | "true" | "false") | undefined;
@@ -73,7 +73,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
73
73
  'aria-colindex'?: (string | number) | undefined;
74
74
  'aria-colspan'?: (string | number) | undefined;
75
75
  'aria-controls'?: string | undefined | undefined;
76
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
76
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
77
77
  'aria-describedby'?: string | undefined | undefined;
78
78
  'aria-details'?: string | undefined | undefined;
79
79
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -82,7 +82,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
82
82
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
83
83
  'aria-flowto'?: string | undefined | undefined;
84
84
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
85
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
85
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
86
86
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
87
87
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
88
88
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -227,7 +227,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
227
227
  dir?: string | undefined | undefined;
228
228
  draggable?: (boolean | "true" | "false") | undefined;
229
229
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
230
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
230
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
231
231
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
232
232
  id?: string | undefined | undefined;
233
233
  inert?: (boolean | "true" | "false") | undefined;
@@ -272,7 +272,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
272
272
  'aria-colindex'?: (string | number) | undefined;
273
273
  'aria-colspan'?: (string | number) | undefined;
274
274
  'aria-controls'?: string | undefined | undefined;
275
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
275
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
276
276
  'aria-describedby'?: string | undefined | undefined;
277
277
  'aria-details'?: string | undefined | undefined;
278
278
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -281,7 +281,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
281
281
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
282
282
  'aria-flowto'?: string | undefined | undefined;
283
283
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
284
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
284
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
285
285
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
286
286
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
287
287
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -412,7 +412,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
412
412
  }> & Readonly<{}>, {
413
413
  size: "sm" | "md";
414
414
  variant: "plain" | "card";
415
- level: 1 | 2 | 3 | 4 | 5 | 6;
415
+ level: 1 | 2 | 4 | 3 | 5 | 6;
416
416
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
417
417
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
418
418
  declare const _default: typeof __VLS_export;
@@ -10,9 +10,9 @@
10
10
  <Transition name="k-loading-overlay">
11
11
  <div v-if="loading" class="k-loading-overlay-layer">
12
12
  <span class="k-loading-overlay-indicator">
13
- <Spinner :size="spinnerSize" :label="label" />
13
+ <Spinner :size="spinnerSize" :label="text" />
14
14
  <span v-if="showLabel" class="k-loading-overlay-label" aria-hidden="true">{{
15
- label
15
+ text
16
16
  }}</span>
17
17
  </span>
18
18
  </div>
@@ -21,12 +21,16 @@
21
21
  </template>
22
22
 
23
23
  <script setup>
24
+ import { computed } from "vue";
25
+ import { useLocale } from "../../composables/useLocale";
24
26
  import Spinner from "../core/Spinner.vue";
25
- defineProps({
27
+ const props = defineProps({
26
28
  loading: { type: Boolean, required: false },
27
- label: { type: String, required: false, default: "Loading" },
29
+ label: { type: String, required: false },
28
30
  showLabel: { type: Boolean, required: false },
29
31
  blur: { type: Boolean, required: false },
30
32
  spinnerSize: { type: String, required: false, default: "md" }
31
33
  });
34
+ const { t } = useLocale();
35
+ const text = computed(() => props.label ?? t("common.loading"));
32
36
  </script>
@@ -17,7 +17,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
17
17
  dir?: string | undefined | undefined;
18
18
  draggable?: (boolean | "true" | "false") | undefined;
19
19
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
20
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
20
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
21
21
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
22
22
  id?: string | undefined | undefined;
23
23
  inert?: (boolean | "true" | "false") | undefined;
@@ -63,7 +63,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
63
63
  'aria-colindex'?: (string | number) | undefined;
64
64
  'aria-colspan'?: (string | number) | undefined;
65
65
  'aria-controls'?: string | undefined | undefined;
66
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
66
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
67
67
  'aria-describedby'?: string | undefined | undefined;
68
68
  'aria-details'?: string | undefined | undefined;
69
69
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -72,7 +72,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
72
72
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
73
73
  'aria-flowto'?: string | undefined | undefined;
74
74
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
75
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
75
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
76
76
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
77
77
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
78
78
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -215,7 +215,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
215
215
  dir?: string | undefined | undefined;
216
216
  draggable?: (boolean | "true" | "false") | undefined;
217
217
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
218
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
218
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
219
219
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
220
220
  id?: string | undefined | undefined;
221
221
  inert?: (boolean | "true" | "false") | undefined;
@@ -261,7 +261,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
261
261
  'aria-colindex'?: (string | number) | undefined;
262
262
  'aria-colspan'?: (string | number) | undefined;
263
263
  'aria-controls'?: string | undefined | undefined;
264
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
264
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
265
265
  'aria-describedby'?: string | undefined | undefined;
266
266
  'aria-details'?: string | undefined | undefined;
267
267
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -270,7 +270,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
270
270
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
271
271
  'aria-flowto'?: string | undefined | undefined;
272
272
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
273
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
273
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
274
274
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
275
275
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
276
276
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -399,7 +399,6 @@ declare const __VLS_base: import("vue").DefineComponent<{
399
399
  ref_for?: boolean | undefined | undefined;
400
400
  ref_key?: string | undefined | undefined;
401
401
  }> & Readonly<{}>, {
402
- label: string;
403
402
  spinnerSize: "xs" | "sm" | "md" | "lg";
404
403
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
405
404
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -20,7 +20,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
20
20
  dir?: string | undefined | undefined;
21
21
  draggable?: (boolean | "true" | "false") | undefined;
22
22
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
23
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
23
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
24
24
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
25
25
  inert?: (boolean | "true" | "false") | undefined;
26
26
  lang?: string | undefined | undefined;
@@ -65,7 +65,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
65
65
  'aria-colindex'?: (string | number) | undefined;
66
66
  'aria-colspan'?: (string | number) | undefined;
67
67
  'aria-controls'?: string | undefined | undefined;
68
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
68
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
69
69
  'aria-describedby'?: string | undefined | undefined;
70
70
  'aria-details'?: string | undefined | undefined;
71
71
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -74,7 +74,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
74
74
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
75
75
  'aria-flowto'?: string | undefined | undefined;
76
76
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
77
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
77
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
78
78
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
79
79
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
80
80
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -224,7 +224,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
224
224
  dir?: string | undefined | undefined;
225
225
  draggable?: (boolean | "true" | "false") | undefined;
226
226
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
227
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
227
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
228
228
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
229
229
  inert?: (boolean | "true" | "false") | undefined;
230
230
  lang?: string | undefined | undefined;
@@ -269,7 +269,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
269
269
  'aria-colindex'?: (string | number) | undefined;
270
270
  'aria-colspan'?: (string | number) | undefined;
271
271
  'aria-controls'?: string | undefined | undefined;
272
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
272
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
273
273
  'aria-describedby'?: string | undefined | undefined;
274
274
  'aria-details'?: string | undefined | undefined;
275
275
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -278,7 +278,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
278
278
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
279
279
  'aria-flowto'?: string | undefined | undefined;
280
280
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
281
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
281
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
282
282
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
283
283
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
284
284
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -5,7 +5,7 @@
5
5
  >
6
6
  <div v-if="showLabel || showValue" class="k-progress-head">
7
7
  <span v-if="showLabel" :id="labelId" class="k-progress-label">
8
- <slot name="label">{{ label }}</slot>
8
+ <slot name="label">{{ text }}</slot>
9
9
  </span>
10
10
  <span v-if="showValue && !indeterminate" class="k-progress-value" aria-hidden="true">{{
11
11
  displayValue
@@ -15,7 +15,7 @@
15
15
  class="k-progress-track"
16
16
  role="progressbar"
17
17
  :aria-labelledby="showLabel ? labelId : void 0"
18
- :aria-label="showLabel ? void 0 : label"
18
+ :aria-label="showLabel ? void 0 : text"
19
19
  aria-valuemin="0"
20
20
  :aria-valuemax="max"
21
21
  :aria-valuenow="indeterminate ? void 0 : clamped"
@@ -29,16 +29,19 @@
29
29
 
30
30
  <script setup>
31
31
  import { computed, useId } from "vue";
32
+ import { useLocale } from "../../composables/useLocale";
32
33
  const props = defineProps({
33
34
  value: { type: [Number, null], required: false, default: null },
34
35
  max: { type: Number, required: false, default: 100 },
35
- label: { type: String, required: false, default: "Progress" },
36
+ label: { type: String, required: false },
36
37
  showLabel: { type: Boolean, required: false },
37
38
  showValue: { type: Boolean, required: false },
38
39
  valueText: { type: Function, required: false },
39
40
  tone: { type: String, required: false, default: "accent" },
40
41
  size: { type: String, required: false, default: "sm" }
41
42
  });
43
+ const { t } = useLocale();
44
+ const text = computed(() => props.label ?? t("progress.label"));
42
45
  const labelId = useId();
43
46
  const indeterminate = computed(() => props.value === null || props.value === void 0);
44
47
  const clamped = computed(() => Math.min(Math.max(props.value ?? 0, 0), props.max));
@@ -22,7 +22,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
22
22
  dir?: string | undefined | undefined;
23
23
  draggable?: (boolean | "true" | "false") | undefined;
24
24
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
25
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
25
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
26
26
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
27
27
  id?: string | undefined | undefined;
28
28
  inert?: (boolean | "true" | "false") | undefined;
@@ -68,7 +68,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
68
68
  'aria-colindex'?: (string | number) | undefined;
69
69
  'aria-colspan'?: (string | number) | undefined;
70
70
  'aria-controls'?: string | undefined | undefined;
71
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
71
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
72
72
  'aria-describedby'?: string | undefined | undefined;
73
73
  'aria-details'?: string | undefined | undefined;
74
74
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -77,7 +77,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
77
77
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
78
78
  'aria-flowto'?: string | undefined | undefined;
79
79
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
80
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
80
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
81
81
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
82
82
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
83
83
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -223,7 +223,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
223
223
  dir?: string | undefined | undefined;
224
224
  draggable?: (boolean | "true" | "false") | undefined;
225
225
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
226
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
226
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
227
227
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
228
228
  id?: string | undefined | undefined;
229
229
  inert?: (boolean | "true" | "false") | undefined;
@@ -269,7 +269,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
269
269
  'aria-colindex'?: (string | number) | undefined;
270
270
  'aria-colspan'?: (string | number) | undefined;
271
271
  'aria-controls'?: string | undefined | undefined;
272
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
272
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
273
273
  'aria-describedby'?: string | undefined | undefined;
274
274
  'aria-details'?: string | undefined | undefined;
275
275
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -278,7 +278,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
278
278
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
279
279
  'aria-flowto'?: string | undefined | undefined;
280
280
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
281
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
281
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
282
282
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
283
283
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
284
284
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -410,7 +410,6 @@ declare const __VLS_base: import("vue").DefineComponent<{
410
410
  value: number | null;
411
411
  max: number;
412
412
  size: ProgressSize;
413
- label: string;
414
413
  tone: Tone;
415
414
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
416
415
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -3,7 +3,7 @@
3
3
  class="k-progress-ring"
4
4
  :class="[`k-progress-${tone}`, { 'is-indeterminate': indeterminate }]"
5
5
  role="progressbar"
6
- :aria-label="label"
6
+ :aria-label="text"
7
7
  aria-valuemin="0"
8
8
  :aria-valuemax="max"
9
9
  :aria-valuenow="indeterminate ? void 0 : clamped"
@@ -36,10 +36,11 @@
36
36
 
37
37
  <script setup>
38
38
  import { computed } from "vue";
39
+ import { useLocale } from "../../composables/useLocale";
39
40
  const props = defineProps({
40
41
  value: { type: [Number, null], required: false, default: null },
41
42
  max: { type: Number, required: false, default: 100 },
42
- label: { type: String, required: false, default: "Progress" },
43
+ label: { type: String, required: false },
43
44
  size: { type: [Number, String], required: false, default: "md" },
44
45
  thickness: { type: Number, required: false, default: 3 },
45
46
  showValue: { type: Boolean, required: false },
@@ -53,6 +54,8 @@ const sizeValue = computed(
53
54
  const radius = computed(() => 18 - props.thickness / 2);
54
55
  const circumference = computed(() => 2 * Math.PI * radius.value);
55
56
  const indeterminate = computed(() => props.value === null || props.value === void 0);
57
+ const { t } = useLocale();
58
+ const text = computed(() => props.label ?? t("progress.label"));
56
59
  const clamped = computed(() => Math.min(Math.max(props.value ?? 0, 0), props.max));
57
60
  const ratio = computed(() => props.max > 0 ? clamped.value / props.max : 0);
58
61
  const displayValue = computed(
@@ -24,7 +24,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
24
24
  dir?: string | undefined | undefined;
25
25
  draggable?: (boolean | "true" | "false") | undefined;
26
26
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
27
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
27
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
28
28
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
29
29
  id?: string | undefined | undefined;
30
30
  inert?: (boolean | "true" | "false") | undefined;
@@ -70,7 +70,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
70
70
  'aria-colindex'?: (string | number) | undefined;
71
71
  'aria-colspan'?: (string | number) | undefined;
72
72
  'aria-controls'?: string | undefined | undefined;
73
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
73
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
74
74
  'aria-describedby'?: string | undefined | undefined;
75
75
  'aria-details'?: string | undefined | undefined;
76
76
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -79,7 +79,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
79
79
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
80
80
  'aria-flowto'?: string | undefined | undefined;
81
81
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
82
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
82
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
83
83
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
84
84
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
85
85
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -225,7 +225,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
225
225
  dir?: string | undefined | undefined;
226
226
  draggable?: (boolean | "true" | "false") | undefined;
227
227
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
228
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
228
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
229
229
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
230
230
  id?: string | undefined | undefined;
231
231
  inert?: (boolean | "true" | "false") | undefined;
@@ -271,7 +271,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
271
271
  'aria-colindex'?: (string | number) | undefined;
272
272
  'aria-colspan'?: (string | number) | undefined;
273
273
  'aria-controls'?: string | undefined | undefined;
274
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
274
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
275
275
  'aria-describedby'?: string | undefined | undefined;
276
276
  'aria-details'?: string | undefined | undefined;
277
277
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -280,7 +280,7 @@ declare const __VLS_base: import("vue").DefineComponent<{
280
280
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
281
281
  'aria-flowto'?: string | undefined | undefined;
282
282
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
283
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
283
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
284
284
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
285
285
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
286
286
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -412,7 +412,6 @@ declare const __VLS_base: import("vue").DefineComponent<{
412
412
  value: number | null;
413
413
  max: number;
414
414
  size: number | "sm" | "md" | "lg";
415
- label: string;
416
415
  tone: Tone;
417
416
  thickness: number;
418
417
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -16,7 +16,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
16
16
  dir?: string | undefined | undefined;
17
17
  draggable?: (boolean | "true" | "false") | undefined;
18
18
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
19
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
19
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
20
20
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
21
21
  id?: string | undefined | undefined;
22
22
  inert?: (boolean | "true" | "false") | undefined;
@@ -62,7 +62,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
62
62
  'aria-colindex'?: (string | number) | undefined;
63
63
  'aria-colspan'?: (string | number) | undefined;
64
64
  'aria-controls'?: string | undefined | undefined;
65
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
65
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
66
66
  'aria-describedby'?: string | undefined | undefined;
67
67
  'aria-details'?: string | undefined | undefined;
68
68
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -71,7 +71,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
71
71
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
72
72
  'aria-flowto'?: string | undefined | undefined;
73
73
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
74
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
74
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
75
75
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
76
76
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
77
77
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -216,7 +216,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
216
216
  dir?: string | undefined | undefined;
217
217
  draggable?: (boolean | "true" | "false") | undefined;
218
218
  enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
219
- enterKeyHint?: "search" | "done" | "enter" | "go" | "next" | "previous" | "send" | undefined;
219
+ enterKeyHint?: "search" | "done" | "previous" | "next" | "enter" | "go" | "send" | undefined;
220
220
  hidden?: "" | (boolean | "true" | "false") | "hidden" | "until-found" | undefined;
221
221
  id?: string | undefined | undefined;
222
222
  inert?: (boolean | "true" | "false") | undefined;
@@ -262,7 +262,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
262
262
  'aria-colindex'?: (string | number) | undefined;
263
263
  'aria-colspan'?: (string | number) | undefined;
264
264
  'aria-controls'?: string | undefined | undefined;
265
- 'aria-current'?: "location" | "time" | (boolean | "true" | "false") | "page" | "step" | "date" | undefined;
265
+ 'aria-current'?: "page" | "location" | "time" | (boolean | "true" | "false") | "step" | "date" | undefined;
266
266
  'aria-describedby'?: string | undefined | undefined;
267
267
  'aria-details'?: string | undefined | undefined;
268
268
  'aria-disabled'?: (boolean | "true" | "false") | undefined;
@@ -271,7 +271,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
271
271
  'aria-expanded'?: (boolean | "true" | "false") | undefined;
272
272
  'aria-flowto'?: string | undefined | undefined;
273
273
  'aria-grabbed'?: (boolean | "true" | "false") | undefined;
274
- 'aria-haspopup'?: "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | "tree" | "grid" | undefined;
274
+ 'aria-haspopup'?: "grid" | "tree" | "dialog" | "menu" | (boolean | "true" | "false") | "listbox" | undefined;
275
275
  'aria-hidden'?: (boolean | "true" | "false") | undefined;
276
276
  'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
277
277
  'aria-keyshortcuts'?: string | undefined | undefined;
@@ -9,8 +9,8 @@
9
9
  variant="ghost"
10
10
  tone="neutral"
11
11
  icon="chevron-left"
12
- :aria-label="prevLabel"
13
- :title="prevLabel"
12
+ :aria-label="prevText"
13
+ :title="prevText"
14
14
  @click="shiftMonth(-1)"
15
15
  :disabled="!canGoPrev || disabled"
16
16
  />
@@ -20,8 +20,8 @@
20
20
  variant="ghost"
21
21
  tone="neutral"
22
22
  icon="chevron-right"
23
- :aria-label="nextLabel"
24
- :title="nextLabel"
23
+ :aria-label="nextText"
24
+ :title="nextText"
25
25
  @click="shiftMonth(1)"
26
26
  :disabled="!canGoNext || disabled"
27
27
  />
@@ -98,19 +98,24 @@ import {
98
98
  todayIso,
99
99
  weekdayNames
100
100
  } from "../../internal/forms/dates";
101
+ import { useLocale } from "../../composables/useLocale";
101
102
  import Button from "../core/Button.vue";
102
103
  const props = defineProps({
103
104
  range: { type: Boolean, required: false },
104
105
  min: { type: String, required: false },
105
106
  max: { type: String, required: false },
106
107
  isDateDisabled: { type: Function, required: false },
107
- locale: { type: String, required: false, default: "en-US" },
108
+ locale: { type: String, required: false },
108
109
  weekStartsOn: { type: Number, required: false },
109
- prevLabel: { type: String, required: false, default: "Previous month" },
110
- nextLabel: { type: String, required: false, default: "Next month" },
110
+ prevLabel: { type: String, required: false },
111
+ nextLabel: { type: String, required: false },
111
112
  disabled: { type: Boolean, required: false },
112
113
  readonly: { type: Boolean, required: false }
113
114
  });
115
+ const { locale: appLocale, t } = useLocale();
116
+ const resolvedLocale = computed(() => props.locale ?? appLocale.value.code);
117
+ const prevText = computed(() => props.prevLabel ?? t("calendar.previousMonth"));
118
+ const nextText = computed(() => props.nextLabel ?? t("calendar.nextMonth"));
114
119
  const model = defineModel({ type: null });
115
120
  const month = defineModel("month", { type: null });
116
121
  const emit = defineEmits(["select"]);
@@ -135,10 +140,10 @@ function initialFocus() {
135
140
  }
136
141
  const focusedDate = ref(initialFocus());
137
142
  let keyboardFocus = false;
138
- const weekStart = computed(() => props.weekStartsOn ?? resolveWeekStart(props.locale));
139
- const weekdays = computed(() => weekdayNames(props.locale, weekStart.value));
143
+ const weekStart = computed(() => props.weekStartsOn ?? resolveWeekStart(resolvedLocale.value));
144
+ const weekdays = computed(() => weekdayNames(resolvedLocale.value, weekStart.value));
140
145
  const heading = computed(
141
- () => formatIso(focusedDate.value, props.locale, { month: "long", year: "numeric" })
146
+ () => formatIso(focusedDate.value, resolvedLocale.value, { month: "long", year: "numeric" })
142
147
  );
143
148
  const canGoPrev = computed(
144
149
  () => !props.min || addDays(firstOfMonth(focusedDate.value), -1) >= props.min
@@ -170,7 +175,7 @@ const weeks = computed(() => {
170
175
  iso,
171
176
  inMonth,
172
177
  number: Number(iso.slice(8)),
173
- label: formatIso(iso, props.locale, {
178
+ label: formatIso(iso, resolvedLocale.value, {
174
179
  weekday: "long",
175
180
  year: "numeric",
176
181
  month: "long",