@bridge-ui/vue 0.6.0 → 0.8.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 (129) hide show
  1. package/ai/skills/bridge-ui-forms/SKILL.md +1 -1
  2. package/dist/Adapters/I18n/useI18nAdapter.d.ts +1 -1
  3. package/dist/Adapters/I18n/useI18nAdapter.js +4 -1
  4. package/dist/Components/Accordion/Accordion.vue_vue_type_script_setup_true_lang.js +1 -1
  5. package/dist/Components/Accordion/accordion.types.d.ts +2 -2
  6. package/dist/Components/Alert/Alert.vue_vue_type_script_setup_true_lang.js +13 -13
  7. package/dist/Components/Alert/alert.types.d.ts +7 -4
  8. package/dist/Components/Alert/composables/useAlert.d.ts +1 -0
  9. package/dist/Components/Alert/composables/useAlert.js +60 -57
  10. package/dist/Components/Autocomplete/Autocomplete.vue.d.ts +1 -1
  11. package/dist/Components/Autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +1 -0
  12. package/dist/Components/Autocomplete/composables/useAutocomplete.d.ts +5 -3
  13. package/dist/Components/BaseField/BaseField.vue_vue_type_script_setup_true_lang.js +33 -28
  14. package/dist/Components/BaseField/BaseFieldCorner.js +5 -0
  15. package/dist/Components/BaseField/BaseFieldCorner.vue.d.ts +17 -0
  16. package/dist/Components/BaseField/BaseFieldCorner.vue_vue_type_script_setup_true_lang.js +17 -0
  17. package/dist/Components/BaseField/baseField.types.d.ts +19 -6
  18. package/dist/Components/BaseField/composables/useBaseField.d.ts +7 -3
  19. package/dist/Components/BaseField/composables/useBaseField.js +71 -68
  20. package/dist/Components/Button/Button.vue_vue_type_script_setup_true_lang.js +24 -25
  21. package/dist/Components/Button/composables/useButton.d.ts +3 -1
  22. package/dist/Components/Button/composables/useButton.js +46 -40
  23. package/dist/Components/Calendar/composables/useCalendar.d.ts +1 -1
  24. package/dist/Components/CalendarDate/composables/useCalendarDate.d.ts +1 -1
  25. package/dist/Components/CalendarMonth/composables/useCalendarMonth.d.ts +1 -1
  26. package/dist/Components/CalendarRange/composables/useCalendarRange.d.ts +1 -1
  27. package/dist/Components/CalendarYear/composables/useCalendarYear.d.ts +1 -1
  28. package/dist/Components/ColorField/ColorField.vue.d.ts +1 -1
  29. package/dist/Components/ColorField/ColorField.vue_vue_type_script_setup_true_lang.js +1 -0
  30. package/dist/Components/ColorField/composables/useColorField.d.ts +6 -4
  31. package/dist/Components/ColorPicker/composables/useColorPicker.d.ts +1 -1
  32. package/dist/Components/DataTable/DataTable.vue_vue_type_script_setup_true_lang.js +154 -131
  33. package/dist/Components/DataTable/DataTablePagination.js +5 -0
  34. package/dist/Components/DataTable/DataTablePagination.vue.d.ts +24 -0
  35. package/dist/Components/DataTable/DataTablePagination.vue_vue_type_script_setup_true_lang.js +40 -0
  36. package/dist/Components/DataTable/composables/useDataTable.d.ts +9 -4
  37. package/dist/Components/DataTable/composables/useDataTable.js +299 -280
  38. package/dist/Components/DataTable/composables/useDataTablePagination.d.ts +69 -0
  39. package/dist/Components/DataTable/composables/useDataTablePagination.js +130 -0
  40. package/dist/Components/DataTable/dataTable.types.d.ts +27 -12
  41. package/dist/Components/DataTable/dataTablePagination.types.d.ts +169 -0
  42. package/dist/Components/DataTable/index.d.ts +2 -1
  43. package/dist/Components/DateField/DateField.vue_vue_type_script_setup_true_lang.js +1 -0
  44. package/dist/Components/DateField/composables/useDateField.d.ts +6 -4
  45. package/dist/Components/DatePicker/composables/useDatePicker.d.ts +1 -1
  46. package/dist/Components/DateRangeField/DateRangeField.vue_vue_type_script_setup_true_lang.js +1 -0
  47. package/dist/Components/DateRangeField/composables/useDateRangeField.d.ts +6 -4
  48. package/dist/Components/DateRangePicker/composables/useDateRangePicker.d.ts +1 -1
  49. package/dist/Components/DateTimeField/DateTimeField.vue_vue_type_script_setup_true_lang.js +1 -0
  50. package/dist/Components/DateTimeField/composables/useDateTimeField.d.ts +6 -4
  51. package/dist/Components/DateTimePicker/composables/useDateTimePicker.d.ts +1 -1
  52. package/dist/Components/DateTimeRangeField/DateTimeRangeField.vue_vue_type_script_setup_true_lang.js +1 -0
  53. package/dist/Components/DateTimeRangeField/composables/useDateTimeRangeField.d.ts +6 -4
  54. package/dist/Components/DateTimeRangePicker/composables/useDateTimeRangePicker.d.ts +1 -1
  55. package/dist/Components/FormControl/composables/useFormControl.d.ts +3 -1
  56. package/dist/Components/FormControl/composables/useFormControl.js +39 -38
  57. package/dist/Components/FormField/FilledFormField.vue.d.ts +7 -7
  58. package/dist/Components/FormField/FilledFormField.vue_vue_type_script_setup_true_lang.js +32 -27
  59. package/dist/Components/FormField/FormFieldCorner.js +5 -0
  60. package/dist/Components/FormField/FormFieldCorner.vue.d.ts +17 -0
  61. package/dist/Components/FormField/FormFieldCorner.vue_vue_type_script_setup_true_lang.js +17 -0
  62. package/dist/Components/FormField/NotchedFormField.vue.d.ts +7 -7
  63. package/dist/Components/FormField/NotchedFormField.vue_vue_type_script_setup_true_lang.js +14 -9
  64. package/dist/Components/FormField/OutlinedFormField.vue.d.ts +7 -7
  65. package/dist/Components/FormField/OutlinedFormField.vue_vue_type_script_setup_true_lang.js +32 -27
  66. package/dist/Components/FormField/StackedFormField.vue.d.ts +6 -6
  67. package/dist/Components/FormField/StackedFormField.vue_vue_type_script_setup_true_lang.js +14 -9
  68. package/dist/Components/FormField/UnderlinedFormField.vue.d.ts +7 -7
  69. package/dist/Components/FormField/UnderlinedFormField.vue_vue_type_script_setup_true_lang.js +32 -27
  70. package/dist/Components/FormField/composables/useFormField.d.ts +8 -4
  71. package/dist/Components/FormField/composables/useFormField.js +153 -143
  72. package/dist/Components/FormField/formField.types.d.ts +18 -6
  73. package/dist/Components/Listbox/Listbox.vue.d.ts +1 -1
  74. package/dist/Components/NumberField/NumberField.vue_vue_type_script_setup_true_lang.js +1 -0
  75. package/dist/Components/NumberField/composables/useNumberField.d.ts +5 -3
  76. package/dist/Components/OtpField/OtpField.vue.d.ts +1 -8
  77. package/dist/Components/OtpField/OtpField.vue_vue_type_script_setup_true_lang.js +7 -6
  78. package/dist/Components/OtpField/composables/useOtpField.d.ts +4 -2
  79. package/dist/Components/Pagination/Pagination.vue_vue_type_script_setup_true_lang.js +6 -6
  80. package/dist/Components/Pagination/composables/usePagination.d.ts +4 -2
  81. package/dist/Components/Pagination/composables/usePagination.js +125 -127
  82. package/dist/Components/Pagination/pagination.types.d.ts +5 -5
  83. package/dist/Components/PasswordField/PasswordField.vue_vue_type_script_setup_true_lang.js +1 -0
  84. package/dist/Components/PasswordField/composables/usePasswordField.d.ts +5 -3
  85. package/dist/Components/Select/Select.vue_vue_type_script_setup_true_lang.js +1 -0
  86. package/dist/Components/Select/composables/useSelect.d.ts +5 -3
  87. package/dist/Components/Sidebar/composables/useSidebarList.js +1 -1
  88. package/dist/Components/Sidebar/composables/useSidebarShell.js +1 -1
  89. package/dist/Components/Slider/Slider.vue_vue_type_script_setup_true_lang.js +1 -0
  90. package/dist/Components/Slider/composables/useSlider.d.ts +5 -3
  91. package/dist/Components/Tabs/Tabs.vue_vue_type_script_setup_true_lang.js +2 -2
  92. package/dist/Components/Tabs/composables/useTabs.js +16 -10
  93. package/dist/Components/Tabs/tabs.types.d.ts +3 -3
  94. package/dist/Components/TextField/TextField.vue_vue_type_script_setup_true_lang.js +1 -0
  95. package/dist/Components/TextField/composables/useTextField.d.ts +5 -3
  96. package/dist/Components/Textarea/Textarea.vue_vue_type_script_setup_true_lang.js +1 -0
  97. package/dist/Components/Textarea/composables/useTextarea.d.ts +5 -3
  98. package/dist/Components/TimeField/TimeField.vue_vue_type_script_setup_true_lang.js +1 -0
  99. package/dist/Components/TimeField/composables/useTimeField.d.ts +6 -4
  100. package/dist/Components/TimePanel/composables/useTimePanel.d.ts +1 -1
  101. package/dist/Components/TimePicker/composables/useTimePicker.d.ts +1 -1
  102. package/dist/Components/TimeRangeField/TimeRangeField.vue_vue_type_script_setup_true_lang.js +1 -0
  103. package/dist/Components/TimeRangeField/composables/useTimeRangeField.d.ts +6 -4
  104. package/dist/Components/TimeRangePicker/composables/useTimeRangePicker.d.ts +1 -1
  105. package/dist/Components/Tooltip/composables/useTooltip.d.ts +1 -1
  106. package/dist/Utils/index.d.ts +11 -2
  107. package/dist/Utils/index.js +31 -27
  108. package/dist/augments.d.ts +8 -8
  109. package/dist/index.d.ts +1 -1
  110. package/dist/index.js +4 -4
  111. package/docs/components/Accordion.md +1 -1
  112. package/docs/components/Alert.md +4 -2
  113. package/docs/components/BaseField.md +19 -18
  114. package/docs/components/BridgeUIProvider.md +14 -7
  115. package/docs/components/DataTable.md +5 -11
  116. package/docs/components/FormControl.md +1 -1
  117. package/docs/components/FormField.md +28 -27
  118. package/docs/components/I18n.md +65 -24
  119. package/docs/components/Pagination.md +5 -3
  120. package/docs/components/Table.md +2 -2
  121. package/docs/components/Tabs.md +24 -6
  122. package/docs/examples/i18n-dictionary.ts +28 -10
  123. package/docs/examples/i18n-vue-i18n.ts +7 -6
  124. package/docs/examples/icon-fontawesome.ts +4 -0
  125. package/docs/examples/icon-heroicons.ts +5 -1
  126. package/docs/examples/icon-lucide.ts +4 -0
  127. package/docs/examples/icon-phosphor.ts +4 -0
  128. package/docs/examples/icon-tabler.ts +4 -0
  129. package/package.json +2 -2
@@ -1,42 +1,47 @@
1
1
  import { hasNamedSlot as e, hasSlotOrProp as t, isPropPresent as n } from "../../Utils/slotOrProp.js";
2
2
  import r from "../Icon/Icon.js";
3
- import i from "./FormFieldLabel.js";
4
- import { Fragment as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createSlots as l, createTextVNode as u, createVNode as d, defineComponent as f, guardReactiveProps as p, mergeProps as m, normalizeProps as h, openBlock as g, renderSlot as _, toDisplayString as v, unref as y, useSlots as b, withCtx as x } from "vue";
3
+ import i from "./FormFieldCorner.js";
4
+ import a from "./FormFieldLabel.js";
5
+ import { Fragment as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createSlots as u, createTextVNode as d, createVNode as f, defineComponent as p, guardReactiveProps as m, mergeProps as h, normalizeProps as g, openBlock as _, renderSlot as v, toDisplayString as y, unref as b, useSlots as x, withCtx as S } from "vue";
5
6
  //#region src/Components/FormField/OutlinedFormField.vue?vue&type=script&setup=true&lang.ts
6
- var S = [
7
+ var C = [
7
8
  "data-invalid",
8
9
  "aria-disabled",
9
10
  "aria-readonly"
10
- ], C = ["id"], w = ["id", "aria-hidden"], T = /*@__PURE__*/ f({
11
+ ], w = ["id"], T = ["id", "aria-hidden"], E = /*@__PURE__*/ p({
11
12
  __name: "OutlinedFormField",
12
13
  props: { api: {} },
13
- setup(f) {
14
- let T = b();
15
- return (b, E) => (g(), s("div", m(f.api.rootBind.value, {
16
- "data-invalid": f.api.invalidated.value || void 0,
17
- "aria-disabled": f.api.isDisabled.value || void 0,
18
- "aria-readonly": f.api.isReadonly.value || void 0
14
+ setup(p) {
15
+ let E = x();
16
+ return (x, D) => (_(), c("div", h(p.api.rootBind.value, {
17
+ "data-invalid": p.api.invalidated.value || void 0,
18
+ "aria-disabled": p.api.isDisabled.value || void 0,
19
+ "aria-readonly": p.api.isReadonly.value || void 0
19
20
  }), [
20
- y(t)(y(T), "label", f.api.merged.value.label) || y(t)(y(T), "corner", f.api.merged.value.corner) ? (g(), s("div", h(m({ key: 0 }, f.api.headerBind.value)), [d(i, { api: f.api }, l({ _: 2 }, [y(e)(y(T), "label") ? {
21
+ b(t)(b(E), "label", p.api.merged.value.label) || b(t)(b(E), "corner", p.api.merged.value.corner) ? (_(), c("div", g(h({ key: 0 }, p.api.headerBind.value)), [f(a, { api: p.api }, u({ _: 2 }, [b(e)(b(E), "label") ? {
21
22
  name: "label",
22
- fn: x(() => [_(b.$slots, "label")]),
23
+ fn: S(() => [v(x.$slots, "label")]),
23
24
  key: "0"
24
- } : void 0]), 1032, ["api"]), y(t)(y(T), "corner", f.api.merged.value.corner) ? (g(), s("span", h(m({ key: 0 }, f.api.cornerBind.value)), [y(e)(y(T), "corner") ? _(b.$slots, "corner", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.corner) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.corner), 1)], 64)) : o("", !0)], 16)) : o("", !0)], 16)) : o("", !0),
25
- c("div", h(p(f.api.containerBind.value)), [
26
- y(e)(y(T), "start") ? (g(), s("div", h(m({ key: 0 }, f.api.startSlotBind.value)), [_(b.$slots, "start")], 16)) : y(n)(f.api.merged.value.start) ? (g(), s("div", h(m({ key: 1 }, f.api.startBind.value)), v(f.api.merged.value.start), 17)) : f.api.merged.value.startIcon ? (g(), s("div", h(m({ key: 2 }, f.api.startBind.value)), [d(y(r), m({ size: f.api.merged.value.size }, f.api.startIconBind.value, { icon: f.api.merged.value.startIcon }), null, 16, ["size", "icon"])], 16)) : o("", !0),
27
- _(b.$slots, "default"),
28
- y(e)(y(T), "end") ? (g(), s("div", h(m({ key: 3 }, f.api.endSlotBind.value)), [_(b.$slots, "end")], 16)) : y(n)(f.api.merged.value.end) ? (g(), s("div", h(m({ key: 4 }, f.api.endBind.value)), v(f.api.merged.value.end), 17)) : f.api.invalidated.value && f.api.merged.value.showErrorIcon !== !1 ? (g(), s("div", h(m({ key: 5 }, f.api.endBind.value)), [d(y(r), m({
29
- icon: f.api.errorIcon.value,
30
- size: f.api.merged.value.size
31
- }, f.api.endIconBind.value), null, 16, ["icon", "size"])], 16)) : f.api.merged.value.endIcon ? (g(), s("div", h(m({ key: 6 }, f.api.endBind.value)), [d(y(r), m({ size: f.api.merged.value.size }, f.api.endIconBind.value, { icon: f.api.merged.value.endIcon }), null, 16, ["size", "icon"])], 16)) : o("", !0)
25
+ } : void 0]), 1032, ["api"]), f(i, { api: p.api }, u({ _: 2 }, [b(e)(b(E), "corner") ? {
26
+ name: "corner",
27
+ fn: S(() => [v(x.$slots, "corner")]),
28
+ key: "0"
29
+ } : void 0]), 1032, ["api"])], 16)) : s("", !0),
30
+ l("div", g(m(p.api.containerBind.value)), [
31
+ b(e)(b(E), "start") ? (_(), c("div", g(h({ key: 0 }, p.api.startSlotBind.value)), [v(x.$slots, "start")], 16)) : b(n)(p.api.merged.value.start) ? (_(), c("div", g(h({ key: 1 }, p.api.startBind.value)), y(p.api.merged.value.start), 17)) : p.api.merged.value.startIcon ? (_(), c("div", g(h({ key: 2 }, p.api.startBind.value)), [f(b(r), h({ size: p.api.merged.value.size }, p.api.startIconBind.value, { icon: p.api.merged.value.startIcon }), null, 16, ["size", "icon"])], 16)) : s("", !0),
32
+ v(x.$slots, "default"),
33
+ b(e)(b(E), "end") ? (_(), c("div", g(h({ key: 3 }, p.api.endSlotBind.value)), [v(x.$slots, "end")], 16)) : b(n)(p.api.merged.value.end) ? (_(), c("div", g(h({ key: 4 }, p.api.endBind.value)), y(p.api.merged.value.end), 17)) : p.api.invalidated.value && p.api.merged.value.showErrorIcon !== !1 ? (_(), c("div", g(h({ key: 5 }, p.api.endBind.value)), [f(b(r), h({
34
+ icon: p.api.errorIcon.value,
35
+ size: p.api.merged.value.size
36
+ }, p.api.endIconBind.value), null, 16, ["icon", "size"])], 16)) : p.api.merged.value.endIcon ? (_(), c("div", g(h({ key: 6 }, p.api.endBind.value)), [f(b(r), h({ size: p.api.merged.value.size }, p.api.endIconBind.value, { icon: p.api.merged.value.endIcon }), null, 16, ["size", "icon"])], 16)) : s("", !0)
32
37
  ], 16),
33
- !f.api.invalidated.value && y(t)(y(T), "description", f.api.merged.value.description) ? (g(), s("p", m({ key: 1 }, f.api.descriptionBind.value, { id: `${f.api.controlId.value}-description` }), [y(e)(y(T), "description") ? _(b.$slots, "description", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.description) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.description), 1)], 64)) : o("", !0)], 16, C)) : o("", !0),
34
- f.api.merged.value.hideErrorMessage ? o("", !0) : (g(), s("p", m({ key: 2 }, f.api.errorBind.value, {
35
- id: `${f.api.controlId.value}-error`,
36
- "aria-hidden": !f.api.showErrorMessageContent.value || void 0
37
- }), [f.api.showErrorMessageContent.value ? (g(), s(a, { key: 0 }, [y(e)(y(T), "errorMessage") ? _(b.$slots, "errorMessage", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.errorMessage) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.errorMessage), 1)], 64)) : o("", !0)], 64)) : o("", !0)], 16, w))
38
- ], 16, S));
38
+ p.api.showDescriptionContent.value ? (_(), c("p", h({ key: 1 }, p.api.descriptionBind.value, { id: `${p.api.controlId.value}-description` }), [b(e)(b(E), "description") ? v(x.$slots, "description", {}, void 0, void 0, 0) : b(n)(p.api.merged.value.description) ? (_(), c(o, { key: 1 }, [d(y(p.api.merged.value.description), 1)], 64)) : s("", !0)], 16, w)) : s("", !0),
39
+ p.api.showErrorMessageRow.value ? (_(), c("p", h({ key: 2 }, p.api.errorBind.value, {
40
+ id: `${p.api.controlId.value}-error`,
41
+ "aria-hidden": !p.api.showErrorMessageContent.value || void 0
42
+ }), [p.api.showErrorMessageContent.value ? (_(), c(o, { key: 0 }, [b(e)(b(E), "errorMessage") ? v(x.$slots, "errorMessage", {}, void 0, void 0, 0) : b(n)(p.api.merged.value.errorMessage) ? (_(), c(o, { key: 1 }, [d(y(p.api.merged.value.errorMessage), 1)], 64)) : s("", !0)], 64)) : s("", !0)], 16, T)) : s("", !0)
43
+ ], 16, C));
39
44
  }
40
45
  });
41
46
  //#endregion
42
- export { T as default };
47
+ export { E as default };
@@ -2,21 +2,21 @@ import { UseFormFieldReturn } from './composables/useFormField';
2
2
  type __VLS_Props = {
3
3
  api: UseFormFieldReturn;
4
4
  };
5
- declare var __VLS_1: {}, __VLS_10: {}, __VLS_12: {}, __VLS_19: {}, __VLS_31: {}, __VLS_33: {}, __VLS_35: {};
5
+ declare var __VLS_1: {}, __VLS_10: {}, __VLS_19: {}, __VLS_26: {}, __VLS_38: {}, __VLS_40: {}, __VLS_42: {};
6
6
  type __VLS_Slots = {} & {
7
7
  start?: (props: typeof __VLS_1) => any;
8
8
  } & {
9
9
  label?: (props: typeof __VLS_10) => any;
10
10
  } & {
11
- corner?: (props: typeof __VLS_12) => any;
11
+ corner?: (props: typeof __VLS_19) => any;
12
12
  } & {
13
- default?: (props: typeof __VLS_19) => any;
13
+ default?: (props: typeof __VLS_26) => any;
14
14
  } & {
15
- end?: (props: typeof __VLS_31) => any;
15
+ end?: (props: typeof __VLS_38) => any;
16
16
  } & {
17
- description?: (props: typeof __VLS_33) => any;
17
+ description?: (props: typeof __VLS_40) => any;
18
18
  } & {
19
- errorMessage?: (props: typeof __VLS_35) => any;
19
+ errorMessage?: (props: typeof __VLS_42) => any;
20
20
  };
21
21
  declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
22
22
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1,5 +1,6 @@
1
- import { hasNamedSlot as e, hasSlotOrProp as t, isPropPresent as n } from "../../Utils/slotOrProp.js";
2
- import r from "../Icon/Icon.js";
1
+ import { hasNamedSlot as e, isPropPresent as t } from "../../Utils/slotOrProp.js";
2
+ import n from "../Icon/Icon.js";
3
+ import r from "./FormFieldCorner.js";
3
4
  import i from "./FormFieldLabel.js";
4
5
  import { Fragment as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createSlots as l, createTextVNode as u, createVNode as d, defineComponent as f, guardReactiveProps as p, mergeProps as m, normalizeProps as h, openBlock as g, renderSlot as _, toDisplayString as v, unref as y, useSlots as b, withCtx as x } from "vue";
5
6
  //#region src/Components/FormField/StackedFormField.vue?vue&type=script&setup=true&lang.ts
@@ -23,21 +24,25 @@ var S = [
23
24
  name: "label",
24
25
  fn: x(() => [_(b.$slots, "label")]),
25
26
  key: "0"
26
- } : void 0]), 1032, ["api"]), y(t)(y(T), "corner", f.api.merged.value.corner) ? (g(), s("span", h(m({ key: 0 }, f.api.cornerBind.value)), [y(e)(y(T), "corner") ? _(b.$slots, "corner", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.corner) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.corner), 1)], 64)) : o("", !0)], 16)) : o("", !0)], 16)) : o("", !0), c("div", h(p(f.api.stackedInputRowBind.value)), [
27
- y(n)(f.api.merged.value.start) ? (g(), s("div", h(m({ key: 0 }, f.api.startBind.value)), v(f.api.merged.value.start), 17)) : f.api.merged.value.startIcon ? (g(), s("div", h(m({ key: 1 }, f.api.startBind.value)), [d(y(r), m({ size: f.api.merged.value.size }, f.api.startIconBind.value, { icon: f.api.merged.value.startIcon }), null, 16, ["size", "icon"])], 16)) : o("", !0),
27
+ } : void 0]), 1032, ["api"]), d(r, { api: f.api }, l({ _: 2 }, [y(e)(y(T), "corner") ? {
28
+ name: "corner",
29
+ fn: x(() => [_(b.$slots, "corner")]),
30
+ key: "0"
31
+ } : void 0]), 1032, ["api"])], 16)) : o("", !0), c("div", h(p(f.api.stackedInputRowBind.value)), [
32
+ y(t)(f.api.merged.value.start) ? (g(), s("div", h(m({ key: 0 }, f.api.startBind.value)), v(f.api.merged.value.start), 17)) : f.api.merged.value.startIcon ? (g(), s("div", h(m({ key: 1 }, f.api.startBind.value)), [d(y(n), m({ size: f.api.merged.value.size }, f.api.startIconBind.value, { icon: f.api.merged.value.startIcon }), null, 16, ["size", "icon"])], 16)) : o("", !0),
28
33
  _(b.$slots, "default"),
29
- y(n)(f.api.merged.value.end) ? (g(), s("div", h(m({ key: 2 }, f.api.endBind.value)), v(f.api.merged.value.end), 17)) : f.api.invalidated.value && f.api.merged.value.showErrorIcon !== !1 ? (g(), s("div", h(m({ key: 3 }, f.api.endBind.value)), [d(y(r), m({
34
+ y(t)(f.api.merged.value.end) ? (g(), s("div", h(m({ key: 2 }, f.api.endBind.value)), v(f.api.merged.value.end), 17)) : f.api.invalidated.value && f.api.merged.value.showErrorIcon !== !1 ? (g(), s("div", h(m({ key: 3 }, f.api.endBind.value)), [d(y(n), m({
30
35
  icon: f.api.errorIcon.value,
31
36
  size: f.api.merged.value.size
32
- }, f.api.endIconBind.value), null, 16, ["icon", "size"])], 16)) : f.api.merged.value.endIcon ? (g(), s("div", h(m({ key: 4 }, f.api.endBind.value)), [d(y(r), m({ size: f.api.merged.value.size }, f.api.endIconBind.value, { icon: f.api.merged.value.endIcon }), null, 16, ["size", "icon"])], 16)) : o("", !0)
37
+ }, f.api.endIconBind.value), null, 16, ["icon", "size"])], 16)) : f.api.merged.value.endIcon ? (g(), s("div", h(m({ key: 4 }, f.api.endBind.value)), [d(y(n), m({ size: f.api.merged.value.size }, f.api.endIconBind.value, { icon: f.api.merged.value.endIcon }), null, 16, ["size", "icon"])], 16)) : o("", !0)
33
38
  ], 16)], 16),
34
39
  y(e)(y(T), "end") ? (g(), s("div", h(m({ key: 1 }, f.api.endSlotBind.value)), [_(b.$slots, "end")], 16)) : o("", !0)
35
40
  ], 16),
36
- !f.api.invalidated.value && y(t)(y(T), "description", f.api.merged.value.description) ? (g(), s("p", m({ key: 0 }, f.api.descriptionBind.value, { id: `${f.api.controlId.value}-description` }), [y(e)(y(T), "description") ? _(b.$slots, "description", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.description) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.description), 1)], 64)) : o("", !0)], 16, C)) : o("", !0),
37
- f.api.merged.value.hideErrorMessage ? o("", !0) : (g(), s("p", m({ key: 1 }, f.api.errorBind.value, {
41
+ f.api.showDescriptionContent.value ? (g(), s("p", m({ key: 0 }, f.api.descriptionBind.value, { id: `${f.api.controlId.value}-description` }), [y(e)(y(T), "description") ? _(b.$slots, "description", {}, void 0, void 0, 0) : y(t)(f.api.merged.value.description) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.description), 1)], 64)) : o("", !0)], 16, C)) : o("", !0),
42
+ f.api.showErrorMessageRow.value ? (g(), s("p", m({ key: 1 }, f.api.errorBind.value, {
38
43
  id: `${f.api.controlId.value}-error`,
39
44
  "aria-hidden": !f.api.showErrorMessageContent.value || void 0
40
- }), [f.api.showErrorMessageContent.value ? (g(), s(a, { key: 0 }, [y(e)(y(T), "errorMessage") ? _(b.$slots, "errorMessage", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.errorMessage) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.errorMessage), 1)], 64)) : o("", !0)], 64)) : o("", !0)], 16, w))
45
+ }), [f.api.showErrorMessageContent.value ? (g(), s(a, { key: 0 }, [y(e)(y(T), "errorMessage") ? _(b.$slots, "errorMessage", {}, void 0, void 0, 0) : y(t)(f.api.merged.value.errorMessage) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.errorMessage), 1)], 64)) : o("", !0)], 64)) : o("", !0)], 16, w)) : o("", !0)
41
46
  ], 16, S));
42
47
  }
43
48
  });
@@ -2,21 +2,21 @@ import { UseFormFieldReturn } from './composables/useFormField';
2
2
  type __VLS_Props = {
3
3
  api: UseFormFieldReturn;
4
4
  };
5
- declare var __VLS_8: {}, __VLS_10: {}, __VLS_12: {}, __VLS_19: {}, __VLS_21: {}, __VLS_33: {}, __VLS_35: {};
5
+ declare var __VLS_8: {}, __VLS_17: {}, __VLS_19: {}, __VLS_26: {}, __VLS_28: {}, __VLS_40: {}, __VLS_42: {};
6
6
  type __VLS_Slots = {} & {
7
7
  label?: (props: typeof __VLS_8) => any;
8
8
  } & {
9
- corner?: (props: typeof __VLS_10) => any;
9
+ corner?: (props: typeof __VLS_17) => any;
10
10
  } & {
11
- start?: (props: typeof __VLS_12) => any;
11
+ start?: (props: typeof __VLS_19) => any;
12
12
  } & {
13
- default?: (props: typeof __VLS_19) => any;
13
+ default?: (props: typeof __VLS_26) => any;
14
14
  } & {
15
- end?: (props: typeof __VLS_21) => any;
15
+ end?: (props: typeof __VLS_28) => any;
16
16
  } & {
17
- description?: (props: typeof __VLS_33) => any;
17
+ description?: (props: typeof __VLS_40) => any;
18
18
  } & {
19
- errorMessage?: (props: typeof __VLS_35) => any;
19
+ errorMessage?: (props: typeof __VLS_42) => any;
20
20
  };
21
21
  declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
22
22
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1,42 +1,47 @@
1
1
  import { hasNamedSlot as e, hasSlotOrProp as t, isPropPresent as n } from "../../Utils/slotOrProp.js";
2
2
  import r from "../Icon/Icon.js";
3
- import i from "./FormFieldLabel.js";
4
- import { Fragment as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createSlots as l, createTextVNode as u, createVNode as d, defineComponent as f, guardReactiveProps as p, mergeProps as m, normalizeProps as h, openBlock as g, renderSlot as _, toDisplayString as v, unref as y, useSlots as b, withCtx as x } from "vue";
3
+ import i from "./FormFieldCorner.js";
4
+ import a from "./FormFieldLabel.js";
5
+ import { Fragment as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createSlots as u, createTextVNode as d, createVNode as f, defineComponent as p, guardReactiveProps as m, mergeProps as h, normalizeProps as g, openBlock as _, renderSlot as v, toDisplayString as y, unref as b, useSlots as x, withCtx as S } from "vue";
5
6
  //#region src/Components/FormField/UnderlinedFormField.vue?vue&type=script&setup=true&lang.ts
6
- var S = [
7
+ var C = [
7
8
  "data-invalid",
8
9
  "aria-disabled",
9
10
  "aria-readonly"
10
- ], C = ["id"], w = ["id", "aria-hidden"], T = /*@__PURE__*/ f({
11
+ ], w = ["id"], T = ["id", "aria-hidden"], E = /*@__PURE__*/ p({
11
12
  __name: "UnderlinedFormField",
12
13
  props: { api: {} },
13
- setup(f) {
14
- let T = b();
15
- return (b, E) => (g(), s("div", m(f.api.rootBind.value, {
16
- "data-invalid": f.api.invalidated.value || void 0,
17
- "aria-disabled": f.api.isDisabled.value || void 0,
18
- "aria-readonly": f.api.isReadonly.value || void 0
14
+ setup(p) {
15
+ let E = x();
16
+ return (x, D) => (_(), c("div", h(p.api.rootBind.value, {
17
+ "data-invalid": p.api.invalidated.value || void 0,
18
+ "aria-disabled": p.api.isDisabled.value || void 0,
19
+ "aria-readonly": p.api.isReadonly.value || void 0
19
20
  }), [
20
- y(t)(y(T), "label", f.api.merged.value.label) || y(t)(y(T), "corner", f.api.merged.value.corner) ? (g(), s("div", h(m({ key: 0 }, f.api.headerBind.value)), [d(i, { api: f.api }, l({ _: 2 }, [y(e)(y(T), "label") ? {
21
+ b(t)(b(E), "label", p.api.merged.value.label) || b(t)(b(E), "corner", p.api.merged.value.corner) ? (_(), c("div", g(h({ key: 0 }, p.api.headerBind.value)), [f(a, { api: p.api }, u({ _: 2 }, [b(e)(b(E), "label") ? {
21
22
  name: "label",
22
- fn: x(() => [_(b.$slots, "label")]),
23
+ fn: S(() => [v(x.$slots, "label")]),
23
24
  key: "0"
24
- } : void 0]), 1032, ["api"]), y(t)(y(T), "corner", f.api.merged.value.corner) ? (g(), s("span", h(m({ key: 0 }, f.api.cornerBind.value)), [y(e)(y(T), "corner") ? _(b.$slots, "corner", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.corner) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.corner), 1)], 64)) : o("", !0)], 16)) : o("", !0)], 16)) : o("", !0),
25
- c("div", h(p(f.api.containerBind.value)), [
26
- y(e)(y(T), "start") ? (g(), s("div", h(m({ key: 0 }, f.api.startSlotBind.value)), [_(b.$slots, "start")], 16)) : y(n)(f.api.merged.value.start) ? (g(), s("div", h(m({ key: 1 }, f.api.startBind.value)), v(f.api.merged.value.start), 17)) : f.api.merged.value.startIcon ? (g(), s("div", h(m({ key: 2 }, f.api.startBind.value)), [d(y(r), m({ size: f.api.merged.value.size }, f.api.startIconBind.value, { icon: f.api.merged.value.startIcon }), null, 16, ["size", "icon"])], 16)) : o("", !0),
27
- _(b.$slots, "default"),
28
- y(e)(y(T), "end") ? (g(), s("div", h(m({ key: 3 }, f.api.endSlotBind.value)), [_(b.$slots, "end")], 16)) : y(n)(f.api.merged.value.end) ? (g(), s("div", h(m({ key: 4 }, f.api.endBind.value)), v(f.api.merged.value.end), 17)) : f.api.invalidated.value && f.api.merged.value.showErrorIcon !== !1 ? (g(), s("div", h(m({ key: 5 }, f.api.endBind.value)), [d(y(r), m({
29
- icon: f.api.errorIcon.value,
30
- size: f.api.merged.value.size
31
- }, f.api.endIconBind.value), null, 16, ["icon", "size"])], 16)) : f.api.merged.value.endIcon ? (g(), s("div", h(m({ key: 6 }, f.api.endBind.value)), [d(y(r), m({ size: f.api.merged.value.size }, f.api.endIconBind.value, { icon: f.api.merged.value.endIcon }), null, 16, ["size", "icon"])], 16)) : o("", !0)
25
+ } : void 0]), 1032, ["api"]), f(i, { api: p.api }, u({ _: 2 }, [b(e)(b(E), "corner") ? {
26
+ name: "corner",
27
+ fn: S(() => [v(x.$slots, "corner")]),
28
+ key: "0"
29
+ } : void 0]), 1032, ["api"])], 16)) : s("", !0),
30
+ l("div", g(m(p.api.containerBind.value)), [
31
+ b(e)(b(E), "start") ? (_(), c("div", g(h({ key: 0 }, p.api.startSlotBind.value)), [v(x.$slots, "start")], 16)) : b(n)(p.api.merged.value.start) ? (_(), c("div", g(h({ key: 1 }, p.api.startBind.value)), y(p.api.merged.value.start), 17)) : p.api.merged.value.startIcon ? (_(), c("div", g(h({ key: 2 }, p.api.startBind.value)), [f(b(r), h({ size: p.api.merged.value.size }, p.api.startIconBind.value, { icon: p.api.merged.value.startIcon }), null, 16, ["size", "icon"])], 16)) : s("", !0),
32
+ v(x.$slots, "default"),
33
+ b(e)(b(E), "end") ? (_(), c("div", g(h({ key: 3 }, p.api.endSlotBind.value)), [v(x.$slots, "end")], 16)) : b(n)(p.api.merged.value.end) ? (_(), c("div", g(h({ key: 4 }, p.api.endBind.value)), y(p.api.merged.value.end), 17)) : p.api.invalidated.value && p.api.merged.value.showErrorIcon !== !1 ? (_(), c("div", g(h({ key: 5 }, p.api.endBind.value)), [f(b(r), h({
34
+ icon: p.api.errorIcon.value,
35
+ size: p.api.merged.value.size
36
+ }, p.api.endIconBind.value), null, 16, ["icon", "size"])], 16)) : p.api.merged.value.endIcon ? (_(), c("div", g(h({ key: 6 }, p.api.endBind.value)), [f(b(r), h({ size: p.api.merged.value.size }, p.api.endIconBind.value, { icon: p.api.merged.value.endIcon }), null, 16, ["size", "icon"])], 16)) : s("", !0)
32
37
  ], 16),
33
- !f.api.invalidated.value && y(t)(y(T), "description", f.api.merged.value.description) ? (g(), s("p", m({ key: 1 }, f.api.descriptionBind.value, { id: `${f.api.controlId.value}-description` }), [y(e)(y(T), "description") ? _(b.$slots, "description", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.description) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.description), 1)], 64)) : o("", !0)], 16, C)) : o("", !0),
34
- f.api.merged.value.hideErrorMessage ? o("", !0) : (g(), s("p", m({ key: 2 }, f.api.errorBind.value, {
35
- id: `${f.api.controlId.value}-error`,
36
- "aria-hidden": !f.api.showErrorMessageContent.value || void 0
37
- }), [f.api.showErrorMessageContent.value ? (g(), s(a, { key: 0 }, [y(e)(y(T), "errorMessage") ? _(b.$slots, "errorMessage", {}, void 0, void 0, 0) : y(n)(f.api.merged.value.errorMessage) ? (g(), s(a, { key: 1 }, [u(v(f.api.merged.value.errorMessage), 1)], 64)) : o("", !0)], 64)) : o("", !0)], 16, w))
38
- ], 16, S));
38
+ p.api.showDescriptionContent.value ? (_(), c("p", h({ key: 1 }, p.api.descriptionBind.value, { id: `${p.api.controlId.value}-description` }), [b(e)(b(E), "description") ? v(x.$slots, "description", {}, void 0, void 0, 0) : b(n)(p.api.merged.value.description) ? (_(), c(o, { key: 1 }, [d(y(p.api.merged.value.description), 1)], 64)) : s("", !0)], 16, w)) : s("", !0),
39
+ p.api.showErrorMessageRow.value ? (_(), c("p", h({ key: 2 }, p.api.errorBind.value, {
40
+ id: `${p.api.controlId.value}-error`,
41
+ "aria-hidden": !p.api.showErrorMessageContent.value || void 0
42
+ }), [p.api.showErrorMessageContent.value ? (_(), c(o, { key: 0 }, [b(e)(b(E), "errorMessage") ? v(x.$slots, "errorMessage", {}, void 0, void 0, 0) : b(n)(p.api.merged.value.errorMessage) ? (_(), c(o, { key: 1 }, [d(y(p.api.merged.value.errorMessage), 1)], 64)) : s("", !0)], 64)) : s("", !0)], 16, T)) : s("", !0)
43
+ ], 16, C));
39
44
  }
40
45
  });
41
46
  //#endregion
42
- export { T as default };
47
+ export { E as default };
@@ -6,8 +6,10 @@ export type FormFieldReservedSlotName = Exclude<keyof FormFieldSlots, "default">
6
6
  export type FormFieldOptions = {
7
7
  /**
8
8
  * Public registry key that owns FormField chrome defaults/tokens.
9
+ * Defaults to `FormField`; public fields pass their own key so chrome
10
+ * cascades (`FormField` → `TextField`, …).
9
11
  */
10
- componentName?: "Select" | "Textarea" | "DateField" | "TextField" | "TimeField" | "ColorField" | "NumberField" | "Autocomplete" | "DateTimeField" | "PasswordField" | "DateRangeField" | "TimeRangeField" | "DateTimeRangeField";
12
+ componentName?: "Select" | "Textarea" | "DateField" | "FormField" | "TextField" | "TimeField" | "ColorField" | "NumberField" | "Autocomplete" | "DateTimeField" | "PasswordField" | "DateRangeField" | "TimeRangeField" | "DateTimeRangeField";
11
13
  /**
12
14
  * Native control rendered by the field composable (`<input>` vs `<textarea>`).
13
15
  *
@@ -24,7 +26,7 @@ export type FormFieldOptions = {
24
26
  */
25
27
  reservedSlots?: () => undefined | readonly FormFieldReservedSlotName[];
26
28
  };
27
- export declare const formFieldBridgeKeys: readonly ["end", "size", "color", "error", "label", "start", "corner", "classes", "endIcon", "rounded", "variant", "disabled", "readonly", "required", "errorIcon", "startIcon", "customProps", "description", "errorMessage", "showErrorIcon", "hideErrorMessage"];
29
+ export declare const formFieldBridgeKeys: readonly ["end", "size", "color", "error", "label", "start", "corner", "classes", "endIcon", "rounded", "variant", "disabled", "readonly", "required", "errorIcon", "startIcon", "customProps", "description", "errorMessage", "showErrorIcon", "hideErrorMessage", "showDescriptionOnError"];
28
30
  type FormFieldLibDefaults = LibDefaultsShape<FormFieldOwnProps, "size" | "color" | "rounded" | "variant" | "errorIcon" | "showErrorIcon">;
29
31
  type FormFieldMerged = MergeLibDefaults<FormFieldOwnProps, FormFieldLibDefaults>;
30
32
  export declare function useFormField(props: MaybeRefOrGetter<Omit<FormFieldOwnProps, "field">>, libDefaults: FormFieldLibDefaults, options?: FormFieldOptions): {
@@ -447,11 +449,10 @@ export declare function useFormField(props: MaybeRefOrGetter<Omit<FormFieldOwnPr
447
449
  onTransitionend?: ((payload: TransitionEvent) => void) | undefined;
448
450
  onTransitionrun?: ((payload: TransitionEvent) => void) | undefined;
449
451
  onTransitionstart?: ((payload: TransitionEvent) => void) | undefined;
450
- }, Partial<Omit<Omit<FormFieldOwnProps, "field">, "error" | "color" | "end" | "size" | "classes" | "customProps" | "rounded" | "variant" | "label" | "disabled" | "required" | "corner" | "description" | "errorMessage" | "start" | "endIcon" | "errorIcon" | "hideErrorMessage" | "readonly" | "showErrorIcon" | "startIcon">>>>;
452
+ }, Partial<Omit<Omit<FormFieldOwnProps, "field">, "error" | "color" | "end" | "size" | "classes" | "customProps" | "rounded" | "variant" | "label" | "disabled" | "required" | "corner" | "description" | "errorMessage" | "start" | "endIcon" | "errorIcon" | "hideErrorMessage" | "readonly" | "showDescriptionOnError" | "showErrorIcon" | "startIcon">>>>;
451
453
  isNotched: import('vue').ComputedRef<boolean>;
452
454
  isStacked: import('vue').ComputedRef<boolean>;
453
455
  startBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", HTMLAttributes | undefined, {}>>;
454
- cornerBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", HTMLAttributes | undefined, {}>>;
455
456
  headerBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", HTMLAttributes | undefined, {}>>;
456
457
  isDisabled: import('vue').ComputedRef<boolean>;
457
458
  isReadonly: import('vue').ComputedRef<boolean>;
@@ -469,9 +470,12 @@ export declare function useFormField(props: MaybeRefOrGetter<Omit<FormFieldOwnPr
469
470
  ariaDescribedBy: import('vue').ComputedRef<string | undefined>;
470
471
  descriptionBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", HTMLAttributes | undefined, {}>>;
471
472
  stackedBodyBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", {}, {}>>;
473
+ fieldCornerProps: import('vue').ComputedRef<LabelProps>;
472
474
  hasInsetLabelRow: import('vue').ComputedRef<boolean>;
473
475
  insetLabelRowBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", HTMLAttributes | undefined, {}>>;
474
476
  stackedInputRowBind: import('vue').ComputedRef<import('@bridge-ui/core/Utils').MergePartBind<object, "class", {}, {}>>;
477
+ showErrorMessageRow: import('vue').ComputedRef<boolean>;
478
+ showDescriptionContent: import('vue').ComputedRef<boolean>;
475
479
  showErrorMessageContent: import('vue').ComputedRef<boolean>;
476
480
  reservesErrorMessageSpace: import('vue').ComputedRef<boolean>;
477
481
  };