agnosticui-core 2.0.0-alpha.15 → 2.0.0-alpha.16

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 (91) hide show
  1. package/dist/{VueCombobox.vue_vue_type_script_setup_true_lang-C7gDMrYJ.js → VueCombobox.vue_vue_type_script_setup_true_lang-BSTZGX2X.js} +15 -13
  2. package/dist/{VueInput.vue_vue_type_script_setup_true_lang-cOALNmlO.js → VueInput.vue_vue_type_script_setup_true_lang-fMqllTsp.js} +1 -0
  3. package/dist/{VueRating.vue_vue_type_script_setup_true_lang-CICncp71.js → VueRating.vue_vue_type_script_setup_true_lang-Bm2nRrqr.js} +11 -9
  4. package/dist/{VueSelectionButtonGroup.vue_vue_type_script_setup_true_lang-CLuww2Ac.js → VueSelectionButtonGroup.vue_vue_type_script_setup_true_lang-DwYrIMVO.js} +15 -11
  5. package/dist/VueSelectionCardGroup.vue_vue_type_script_setup_true_lang-D5CycLY5.js +40 -0
  6. package/dist/{VueToggle.vue_vue_type_script_setup_true_lang-BxrvAsse.js → VueToggle.vue_vue_type_script_setup_true_lang-DLPCBOqZ.js} +18 -16
  7. package/dist/components/Checkbox/core/_Checkbox.d.ts +14 -2
  8. package/dist/components/Checkbox/core/_Checkbox.d.ts.map +1 -1
  9. package/dist/components/Checkbox/core/_Checkbox.js +58 -43
  10. package/dist/components/Combobox/core/_Combobox.d.ts +24 -1
  11. package/dist/components/Combobox/core/_Combobox.d.ts.map +1 -1
  12. package/dist/components/Combobox/core/_Combobox.js +140 -91
  13. package/dist/components/Combobox/vue/VueCombobox.js +1 -1
  14. package/dist/components/Combobox/vue/index.js +1 -1
  15. package/dist/components/Input/core/_Input.d.ts +21 -2
  16. package/dist/components/Input/core/_Input.d.ts.map +1 -1
  17. package/dist/components/Input/core/_Input.js +37 -9
  18. package/dist/components/Input/vue/VueInput.js +1 -1
  19. package/dist/components/Input/vue/index.js +1 -1
  20. package/dist/components/Radio/core/_Radio.d.ts +24 -2
  21. package/dist/components/Radio/core/_Radio.d.ts.map +1 -1
  22. package/dist/components/Radio/core/_Radio.js +119 -89
  23. package/dist/components/Rating/core/_Rating.d.ts +23 -2
  24. package/dist/components/Rating/core/_Rating.d.ts.map +1 -1
  25. package/dist/components/Rating/core/_Rating.js +97 -64
  26. package/dist/components/Rating/vue/VueRating.js +1 -1
  27. package/dist/components/Rating/vue/VueRating.vue.d.ts +2 -0
  28. package/dist/components/Rating/vue/VueRating.vue.d.ts.map +1 -1
  29. package/dist/components/Rating/vue/index.js +1 -1
  30. package/dist/components/Select/core/_Select.d.ts +20 -2
  31. package/dist/components/Select/core/_Select.d.ts.map +1 -1
  32. package/dist/components/Select/core/_Select.js +97 -67
  33. package/dist/components/SelectionButtonGroup/core/_SelectionButtonGroup.d.ts +21 -2
  34. package/dist/components/SelectionButtonGroup/core/_SelectionButtonGroup.d.ts.map +1 -1
  35. package/dist/components/SelectionButtonGroup/core/_SelectionButtonGroup.js +74 -38
  36. package/dist/components/SelectionButtonGroup/vue/VueSelectionButtonGroup.js +1 -1
  37. package/dist/components/SelectionButtonGroup/vue/VueSelectionButtonGroup.vue.d.ts +7 -0
  38. package/dist/components/SelectionButtonGroup/vue/VueSelectionButtonGroup.vue.d.ts.map +1 -1
  39. package/dist/components/SelectionButtonGroup/vue/index.js +1 -1
  40. package/dist/components/SelectionCardGroup/core/_SelectionCardGroup.d.ts +12 -2
  41. package/dist/components/SelectionCardGroup/core/_SelectionCardGroup.d.ts.map +1 -1
  42. package/dist/components/SelectionCardGroup/core/_SelectionCardGroup.js +73 -46
  43. package/dist/components/SelectionCardGroup/vue/VueSelectionCardGroup.js +1 -1
  44. package/dist/components/SelectionCardGroup/vue/VueSelectionCardGroup.vue.d.ts +7 -0
  45. package/dist/components/SelectionCardGroup/vue/VueSelectionCardGroup.vue.d.ts.map +1 -1
  46. package/dist/components/SelectionCardGroup/vue/index.js +1 -1
  47. package/dist/components/Slider/core/_Slider.d.ts +10 -16
  48. package/dist/components/Slider/core/_Slider.d.ts.map +1 -1
  49. package/dist/components/Slider/core/_Slider.js +28 -39
  50. package/dist/components/Toggle/core/_Toggle.d.ts +21 -6
  51. package/dist/components/Toggle/core/_Toggle.d.ts.map +1 -1
  52. package/dist/components/Toggle/core/_Toggle.js +30 -9
  53. package/dist/components/Toggle/vue/VueToggle.js +1 -1
  54. package/dist/components/Toggle/vue/VueToggle.vue.d.ts.map +1 -1
  55. package/dist/components/Toggle/vue/index.js +1 -1
  56. package/dist/shared/face-mixin.d.ts +76 -0
  57. package/dist/shared/face-mixin.d.ts.map +1 -0
  58. package/dist/shared/face-mixin.js +68 -0
  59. package/dist/test-setup.js +340 -255
  60. package/package.json +1 -1
  61. package/src/components/Checkbox/core/_Checkbox.ts +40 -5
  62. package/src/components/Combobox/core/_Combobox.ts +83 -1
  63. package/src/components/Combobox/vue/VueCombobox.vue +1 -0
  64. package/src/components/Drawer/v1/dialog--drawer-bottom.hbs +48 -0
  65. package/src/components/Drawer/v1/dialog--drawer-end.hbs +48 -0
  66. package/src/components/Drawer/v1/dialog--drawer-start.hbs +48 -0
  67. package/src/components/Drawer/v1/dialog--drawer-top.hbs +48 -0
  68. package/src/components/Drawer/v1/dialog-demo.css +13 -0
  69. package/src/components/Drawer/v1/dialog.config.yml +5 -0
  70. package/src/components/Drawer/v1/dialog.css +99 -0
  71. package/src/components/Drawer/v1/dialog.hbs +48 -0
  72. package/src/components/Drawer/v1/drawer-animations.css +52 -0
  73. package/src/components/Drawer/v1/drawer.css +50 -0
  74. package/src/components/Input/core/_Input.ts +49 -2
  75. package/src/components/Radio/core/_Radio.ts +61 -4
  76. package/src/components/Rating/core/_Rating.ts +62 -5
  77. package/src/components/Rating/vue/VueRating.vue +3 -0
  78. package/src/components/Select/core/_Select.ts +53 -4
  79. package/src/components/SelectionButtonGroup/core/_SelectionButtonGroup.ts +78 -5
  80. package/src/components/SelectionButtonGroup/vue/VueSelectionButtonGroup.vue +7 -0
  81. package/src/components/SelectionCardGroup/core/_SelectionCardGroup.ts +69 -5
  82. package/src/components/SelectionCardGroup/vue/VueSelectionCardGroup.vue +7 -0
  83. package/src/components/Slider/core/_Slider.ts +28 -28
  84. package/src/components/Toggle/core/_Toggle.ts +49 -9
  85. package/src/components/Toggle/vue/VueToggle.vue +2 -0
  86. package/src/shared/face-mixin.ts +203 -0
  87. package/dist/VueSelectionCardGroup.vue_vue_type_script_setup_true_lang-B2uA4jdK.js +0 -36
  88. package/dist/components/Input/core/_Input.BACKUP.d.ts +0 -114
  89. package/dist/components/Input/core/_Input.BACKUP.d.ts.map +0 -1
  90. package/dist/components/Input/core/_Input.BACKUP.js +0 -511
  91. package/src/components/Input/core/_Input.BACKUP.ts +0 -710
@@ -1,6 +1,6 @@
1
- import { defineComponent as m, ref as v, createElementBlock as h, openBlock as x, renderSlot as g } from "vue";
1
+ import { defineComponent as v, ref as m, createElementBlock as g, openBlock as h, renderSlot as x } from "vue";
2
2
  import "./components/Combobox/core/Combobox.js";
3
- const y = [".labelHidden", ".labelPosition", ".noLabel", ".disabled", ".invalid", ".clearable", ".readonly", ".required", ".loading", ".multiple", ".closeOnSelect", ".options", ".value", ".defaultValue", ".maxOptionsVisible", "placeholder", "label", "ariaLabel", "helpText", "errorMessage", "autocomplete", "filterMode", "size", "variant", "loadingText", "noResultsText"], T = /* @__PURE__ */ m({
3
+ const y = [".labelHidden", ".labelPosition", ".noLabel", ".disabled", ".invalid", ".clearable", ".readonly", ".required", ".validationMessages", ".loading", ".multiple", ".closeOnSelect", ".options", ".value", ".defaultValue", ".maxOptionsVisible", "placeholder", "label", "ariaLabel", "helpText", "errorMessage", "autocomplete", "filterMode", "size", "variant", "loadingText", "noResultsText"], M = /* @__PURE__ */ v({
4
4
  __name: "VueCombobox",
5
5
  props: {
6
6
  options: { default: () => [] },
@@ -30,16 +30,17 @@ const y = [".labelHidden", ".labelPosition", ".noLabel", ".disabled", ".invalid"
30
30
  maxOptionsVisible: { default: 3 },
31
31
  loading: { type: Boolean, default: !1 },
32
32
  loadingText: { default: "Loading..." },
33
- noResultsText: { default: "No results found" }
33
+ noResultsText: { default: "No results found" },
34
+ validationMessages: {}
34
35
  },
35
36
  emits: ["change", "select", "search", "open", "close", "focus", "blur", "update:value"],
36
- setup(e, { expose: n, emit: d }) {
37
- const a = d, t = v(), i = (l) => {
37
+ setup(e, { expose: n, emit: i }) {
38
+ const a = i, t = m(), d = (l) => {
38
39
  const o = l;
39
40
  a("change", o.detail), a("update:value", o.detail.value);
40
- }, u = (l) => {
41
- a("select", l.detail);
42
41
  }, s = (l) => {
42
+ a("select", l.detail);
43
+ }, u = (l) => {
43
44
  a("search", l.detail);
44
45
  }, c = (l) => {
45
46
  a("open", l.detail);
@@ -58,7 +59,7 @@ const y = [".labelHidden", ".labelPosition", ".noLabel", ".disabled", ".invalid"
58
59
  toggle: () => t.value?.toggle?.(),
59
60
  selectOption: (l) => t.value?.selectOption?.(l),
60
61
  clearSelection: () => t.value?.clearSelection?.()
61
- }), (l, o) => (x(), h("ag-combobox", {
62
+ }), (l, o) => (h(), g("ag-combobox", {
62
63
  ref_key: "comboboxRef",
63
64
  ref: t,
64
65
  ".labelHidden": e.labelHidden,
@@ -69,6 +70,7 @@ const y = [".labelHidden", ".labelPosition", ".noLabel", ".disabled", ".invalid"
69
70
  ".clearable": e.clearable,
70
71
  ".readonly": e.readonly,
71
72
  ".required": e.required,
73
+ ".validationMessages": e.validationMessages,
72
74
  ".loading": e.loading,
73
75
  ".multiple": e.multiple,
74
76
  ".closeOnSelect": e.closeOnSelect,
@@ -87,18 +89,18 @@ const y = [".labelHidden", ".labelPosition", ".noLabel", ".disabled", ".invalid"
87
89
  variant: e.variant,
88
90
  loadingText: e.loadingText,
89
91
  noResultsText: e.noResultsText,
90
- onChange: i,
91
- onSelect: u,
92
- onSearch: s,
92
+ onChange: d,
93
+ onSelect: s,
94
+ onSearch: u,
93
95
  onOpen: c,
94
96
  onClose: f,
95
97
  onFocus: r,
96
98
  onBlur: b
97
99
  }, [
98
- g(l.$slots, "default")
100
+ x(l.$slots, "default")
99
101
  ], 40, y));
100
102
  }
101
103
  });
102
104
  export {
103
- T as _
105
+ M as _
104
106
  };
@@ -14,6 +14,7 @@ const g = [".value", ".labelHidden", ".noLabel", ".capsule", ".rounded", ".under
14
14
  labelPosition: {},
15
15
  noLabel: { type: Boolean, default: !1 },
16
16
  ariaLabel: { default: "" },
17
+ name: {},
17
18
  type: { default: "text" },
18
19
  value: { default: "" },
19
20
  placeholder: { default: "" },
@@ -1,6 +1,6 @@
1
- import { defineComponent as r, ref as u, createElementBlock as s, openBlock as f, mergeProps as m, renderSlot as c } from "vue";
1
+ import { defineComponent as r, ref as s, createElementBlock as u, openBlock as f, mergeProps as v, renderSlot as m } from "vue";
2
2
  import "./components/Rating/core/Rating.js";
3
- const v = [".value", ".readonly", ".allowClear", ".required", ".invalid", "max", "precision", "variant", "size", "name", "label", "labelPosition", "labelHidden", "noLabel", "errorMessage", "helpText"], h = /* @__PURE__ */ r({
3
+ const c = [".value", ".readonly", ".allowClear", ".required", ".invalid", ".validationMessages", "max", "precision", "variant", "size", "name", "label", "labelPosition", "labelHidden", "noLabel", "errorMessage", "helpText"], h = /* @__PURE__ */ r({
4
4
  __name: "VueRating",
5
5
  props: {
6
6
  value: { default: 0 },
@@ -18,24 +18,26 @@ const v = [".value", ".readonly", ".allowClear", ".required", ".invalid", "max",
18
18
  required: { type: Boolean, default: !1 },
19
19
  invalid: { type: Boolean, default: !1 },
20
20
  errorMessage: { default: "" },
21
- helpText: { default: "" }
21
+ helpText: { default: "" },
22
+ validationMessages: {}
22
23
  },
23
24
  emits: ["update:value", "change", "hover"],
24
25
  setup(e, { emit: n }) {
25
- const t = n, o = u(), i = (a) => {
26
+ const t = n, i = s(), o = (a) => {
26
27
  const l = a;
27
28
  t("change", l.detail), t("update:value", l.detail.newValue);
28
29
  }, d = (a) => {
29
30
  t("hover", a.detail);
30
31
  };
31
- return (a, l) => (f(), s("ag-rating", m({
32
+ return (a, l) => (f(), u("ag-rating", v({
32
33
  ref_key: "ratingRef",
33
- ref: o,
34
+ ref: i,
34
35
  ".value": e.value,
35
36
  ".readonly": e.readonly,
36
37
  ".allowClear": e.allowClear,
37
38
  ".required": e.required,
38
39
  ".invalid": e.invalid,
40
+ ".validationMessages": e.validationMessages,
39
41
  max: e.max,
40
42
  precision: e.precision,
41
43
  variant: e.variant,
@@ -47,11 +49,11 @@ const v = [".value", ".readonly", ".allowClear", ".required", ".invalid", "max",
47
49
  noLabel: e.noLabel,
48
50
  errorMessage: e.errorMessage,
49
51
  helpText: e.helpText,
50
- onRatingChange: i,
52
+ onRatingChange: o,
51
53
  onRatingHover: d
52
54
  }, a.$attrs), [
53
- c(a.$slots, "default")
54
- ], 48, v));
55
+ m(a.$slots, "default")
56
+ ], 48, c));
55
57
  }
56
58
  });
57
59
  export {
@@ -1,6 +1,6 @@
1
- import { defineComponent as u, createElementBlock as s, openBlock as i, mergeProps as o, renderSlot as c } from "vue";
1
+ import { defineComponent as s, createElementBlock as u, openBlock as i, mergeProps as o, renderSlot as c } from "vue";
2
2
  import "./components/SelectionButtonGroup/core/SelectionButtonGroup.js";
3
- const m = ["type", "name", "legend", "legend-hidden", "theme", "size", "shape", "value", "values", ".disabled"], g = /* @__PURE__ */ u({
3
+ const g = ["type", "name", "legend", "legend-hidden", "theme", "size", "shape", "value", "values", ".disabled", ".required", ".validationMessages"], h = /* @__PURE__ */ s({
4
4
  __name: "VueSelectionButtonGroup",
5
5
  props: {
6
6
  type: { default: "radio" },
@@ -12,15 +12,17 @@ const m = ["type", "name", "legend", "legend-hidden", "theme", "size", "shape",
12
12
  shape: { default: "" },
13
13
  value: { default: "" },
14
14
  values: { default: () => [] },
15
- disabled: { type: Boolean, default: !1 }
15
+ disabled: { type: Boolean, default: !1 },
16
+ required: { type: Boolean, default: !1 },
17
+ validationMessages: {}
16
18
  },
17
19
  emits: ["selection-change", "update:value", "update:values"],
18
20
  setup(e, { emit: d }) {
19
- const l = d, n = (a) => {
20
- const t = a.detail;
21
- l("selection-change", t), t.selectedValues.length <= 1 && l("update:value", t.selectedValues[0] || ""), l("update:values", t.selectedValues);
21
+ const l = d, n = (t) => {
22
+ const a = t.detail;
23
+ l("selection-change", a), a.selectedValues.length <= 1 && l("update:value", a.selectedValues[0] || ""), l("update:values", a.selectedValues);
22
24
  };
23
- return (a, t) => (i(), s("ag-selection-button-group", o({
25
+ return (t, a) => (i(), u("ag-selection-button-group", o({
24
26
  type: e.type,
25
27
  name: e.name,
26
28
  legend: e.legend,
@@ -31,12 +33,14 @@ const m = ["type", "name", "legend", "legend-hidden", "theme", "size", "shape",
31
33
  value: e.value,
32
34
  values: e.values,
33
35
  ".disabled": e.disabled,
36
+ ".required": e.required,
37
+ ".validationMessages": e.validationMessages,
34
38
  onSelectionChange: n
35
- }, a.$attrs), [
36
- c(a.$slots, "default")
37
- ], 48, m));
39
+ }, t.$attrs), [
40
+ c(t.$slots, "default")
41
+ ], 48, g));
38
42
  }
39
43
  });
40
44
  export {
41
- g as _
45
+ h as _
42
46
  };
@@ -0,0 +1,40 @@
1
+ import { defineComponent as s, createElementBlock as i, openBlock as u, mergeProps as o, renderSlot as c } from "vue";
2
+ import "./components/SelectionCardGroup/core/SelectionCardGroup.js";
3
+ const g = ["type", "name", "legend", "legend-hidden", "value", "values", ".disabled", ".required", ".validationMessages"], v = /* @__PURE__ */ s({
4
+ __name: "VueSelectionCardGroup",
5
+ props: {
6
+ type: { default: "radio" },
7
+ name: { default: "" },
8
+ legend: { default: "" },
9
+ legendHidden: { type: Boolean, default: !1 },
10
+ value: { default: "" },
11
+ values: { default: () => [] },
12
+ disabled: { type: Boolean, default: !1 },
13
+ required: { type: Boolean, default: !1 },
14
+ validationMessages: {}
15
+ },
16
+ emits: ["selection-change", "update:value", "update:values"],
17
+ setup(e, { emit: t }) {
18
+ const d = t, n = (l) => {
19
+ const a = l.detail;
20
+ d("selection-change", a), a.selectedValues.length <= 1 && d("update:value", a.selectedValues[0] || ""), d("update:values", a.selectedValues);
21
+ };
22
+ return (l, a) => (u(), i("ag-selection-card-group", o({
23
+ type: e.type,
24
+ name: e.name,
25
+ legend: e.legend,
26
+ "legend-hidden": e.legendHidden,
27
+ value: e.value,
28
+ values: e.values,
29
+ ".disabled": e.disabled,
30
+ ".required": e.required,
31
+ ".validationMessages": e.validationMessages,
32
+ onSelectionChange: n
33
+ }, l.$attrs), [
34
+ c(l.$slots, "default")
35
+ ], 48, g));
36
+ }
37
+ });
38
+ export {
39
+ v as _
40
+ };
@@ -1,6 +1,6 @@
1
- import { defineComponent as r, ref as u, watch as f, createElementBlock as s, openBlock as g, mergeProps as h } from "vue";
1
+ import { defineComponent as s, ref as g, watch as u, createElementBlock as f, openBlock as r, mergeProps as h } from "vue";
2
2
  import "./components/Toggle/core/Toggle.js";
3
- const b = ["label", ".labelPosition", ".labelHidden", ".noLabel", "size", "variant", ".checked", ".disabled", ".readonly", ".required", ".invalid", "errorMessage", "helpText", "name", "value"], v = /* @__PURE__ */ r({
3
+ const b = ["label", ".labelPosition", ".labelHidden", ".noLabel", "size", "variant", ".checked", ".disabled", ".readonly", ".required", ".invalid", "errorMessage", "helpText", "name", "value", ".validationMessages"], m = /* @__PURE__ */ s({
4
4
  __name: "VueToggle",
5
5
  props: {
6
6
  label: {},
@@ -17,24 +17,25 @@ const b = ["label", ".labelPosition", ".labelHidden", ".noLabel", "size", "varia
17
17
  errorMessage: { default: "" },
18
18
  helpText: { default: "" },
19
19
  name: {},
20
- value: {}
20
+ value: {},
21
+ validationMessages: {}
21
22
  },
22
23
  emits: ["click", "toggle-change", "update:checked"],
23
24
  setup(e, { emit: d }) {
24
- const o = e, t = d, a = u(), i = (l) => {
25
- t("click", l);
26
- }, c = (l) => {
27
- const n = l;
25
+ const i = e, t = d, l = g(), o = (a) => {
26
+ t("click", a);
27
+ }, c = (a) => {
28
+ const n = a;
28
29
  t("toggle-change", n.detail), t("update:checked", n.detail.checked);
29
30
  };
30
- return f(
31
- () => o.checked,
32
- (l) => {
33
- a.value && a.value.checked !== l && (a.value.checked = l);
31
+ return u(
32
+ () => i.checked,
33
+ (a) => {
34
+ l.value && l.value.checked !== a && (l.value.checked = a);
34
35
  }
35
- ), (l, n) => (g(), s("ag-toggle", h({
36
+ ), (a, n) => (r(), f("ag-toggle", h({
36
37
  ref_key: "toggleRef",
37
- ref: a,
38
+ ref: l,
38
39
  label: e.label,
39
40
  ".labelPosition": e.labelPosition,
40
41
  ".labelHidden": e.labelHidden,
@@ -50,11 +51,12 @@ const b = ["label", ".labelPosition", ".labelHidden", ".noLabel", "size", "varia
50
51
  helpText: e.helpText,
51
52
  name: e.name,
52
53
  value: e.value,
53
- onClick: i,
54
+ ".validationMessages": e.validationMessages,
55
+ onClick: o,
54
56
  onToggleChange: c
55
- }, l.$attrs), null, 48, b));
57
+ }, a.$attrs), null, 48, b));
56
58
  }
57
59
  });
58
60
  export {
59
- v as _
61
+ m as _
60
62
  };
@@ -32,9 +32,9 @@ export interface CheckboxProps {
32
32
  onClick?: (event: MouseEvent) => void;
33
33
  onChange?: (event: CheckboxChangeEvent) => void;
34
34
  }
35
- export declare class AgCheckbox extends LitElement implements CheckboxProps {
35
+ declare const AgCheckbox_base: (new (...args: any[]) => import('../../../shared/face-mixin').FaceMixinInterface) & typeof LitElement;
36
+ export declare class AgCheckbox extends AgCheckbox_base implements CheckboxProps {
36
37
  static styles: import('lit').CSSResult[];
37
- name: string;
38
38
  value: string;
39
39
  checked: boolean;
40
40
  indeterminate: boolean;
@@ -56,6 +56,17 @@ export declare class AgCheckbox extends LitElement implements CheckboxProps {
56
56
  * Expose the internal focusable element for FormControl ARIA wiring
57
57
  */
58
58
  get controlElement(): HTMLElement | null;
59
+ /**
60
+ * FACE lifecycle: called when the parent form is reset.
61
+ * Restores checked and indeterminate to their default states.
62
+ */
63
+ formResetCallback(): void;
64
+ /**
65
+ * Sync validity to ElementInternals by delegating to the inner
66
+ * <input type="checkbox">. Required validation is handled natively
67
+ * by the inner input; we just mirror its state.
68
+ */
69
+ private _syncValidity;
59
70
  updated(changedProperties: Map<string, unknown>): void;
60
71
  private handleClick;
61
72
  private handleChange;
@@ -74,4 +85,5 @@ export declare class AgCheckbox extends LitElement implements CheckboxProps {
74
85
  render(): import('lit').TemplateResult<1>;
75
86
  firstUpdated(): void;
76
87
  }
88
+ export {};
77
89
  //# sourceMappingURL=_Checkbox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/components/Checkbox/core/_Checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AAQrD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AACxD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC;AAG7E,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAAG,WAAW,CAAC,yBAAyB,CAAC,CAAC;AAEzE;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAEhC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;CACjD;AAED,qBAAa,UAAW,SAAQ,UAAW,YAAW,aAAa;IACjE,OAAgB,MAAM,4BAsOpB;IAGM,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAGd,OAAO,EAAE,OAAO,CAAC;IAGjB,aAAa,EAAE,OAAO,CAAC;IAGvB,QAAQ,EAAE,OAAO,CAAC;IAGlB,IAAI,EAAE,YAAY,CAAC;IAGnB,KAAK,EAAE,aAAa,CAAC;IAGrB,SAAS,EAAE,MAAM,CAAC;IAGlB,aAAa,EAAE,KAAK,GAAG,OAAO,CAAC;IAI/B,QAAQ,EAAE,OAAO,CAAC;IAGlB,OAAO,EAAE,OAAO,CAAC;IAGjB,YAAY,EAAE,MAAM,CAAC;IAGrB,QAAQ,EAAE,MAAM,CAAC;IAGjB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAGtC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAGxD,OAAO,CAAC,IAAI,CAAuC;IAEnD,OAAO,CAAC,QAAQ,CAAC,CAAmB;;IAmBpC;;OAEG;IACH,IAAI,cAAc,IAAI,WAAW,GAAG,IAAI,CAEvC;IAEQ,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IASxD,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,YAAY;IAmCpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IASlB,MAAM;IAqEN,YAAY;CAQtB"}
1
+ {"version":3,"file":"_Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/components/Checkbox/core/_Checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;AASrD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AACxD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,CAAC;AAG7E,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAAG,WAAW,CAAC,yBAAyB,CAAC,CAAC;AAEzE;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC;IAEhC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;CACjD;;AAED,qBAAa,UAAW,SAAQ,eAAsB,YAAW,aAAa;IAC5E,OAAgB,MAAM,4BAsOpB;IAGM,KAAK,EAAE,MAAM,CAAC;IAGd,OAAO,EAAE,OAAO,CAAC;IAGjB,aAAa,EAAE,OAAO,CAAC;IAGvB,QAAQ,EAAE,OAAO,CAAC;IAGlB,IAAI,EAAE,YAAY,CAAC;IAGnB,KAAK,EAAE,aAAa,CAAC;IAGrB,SAAS,EAAE,MAAM,CAAC;IAGlB,aAAa,EAAE,KAAK,GAAG,OAAO,CAAC;IAI/B,QAAQ,EAAE,OAAO,CAAC;IAGlB,OAAO,EAAE,OAAO,CAAC;IAGjB,YAAY,EAAE,MAAM,CAAC;IAGrB,QAAQ,EAAE,MAAM,CAAC;IAGjB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAGtC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAGxD,OAAO,CAAC,IAAI,CAAuC;IAEnD,OAAO,CAAC,QAAQ,CAAC,CAAmB;;IAkBpC;;OAEG;IACH,IAAI,cAAc,IAAI,WAAW,GAAG,IAAI,CAEvC;IAID;;;OAGG;IACM,iBAAiB,IAAI,IAAI;IAOlC;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAMZ,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAexD,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,YAAY;IAuCpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IASlB,MAAM;IAqEN,YAAY;CAYtB"}
@@ -1,15 +1,16 @@
1
- import { LitElement as p, css as u, nothing as l, html as c } from "lit";
1
+ import { LitElement as p, css as u, nothing as c, html as l } from "lit";
2
2
  import { n as r } from "../../../property-CemaeiRl.js";
3
3
  import { formControlStyles as f } from "../../../shared/form-control-styles.js";
4
- import { createFormControlIds as g, buildAriaDescribedBy as x } from "../../../shared/form-control-utils.js";
5
- var m = Object.defineProperty, t = (d, a, o, s) => {
4
+ import { createFormControlIds as g, buildAriaDescribedBy as m } from "../../../shared/form-control-utils.js";
5
+ import { FaceMixin as x, syncInnerInputValidity as k } from "../../../shared/face-mixin.js";
6
+ var v = Object.defineProperty, a = (d, t, o, s) => {
6
7
  for (var i = void 0, n = d.length - 1, b; n >= 0; n--)
7
- (b = d[n]) && (i = b(a, o, i) || i);
8
- return i && m(a, o, i), i;
8
+ (b = d[n]) && (i = b(t, o, i) || i);
9
+ return i && v(t, o, i), i;
9
10
  };
10
- const h = class h extends p {
11
+ const h = class h extends x(p) {
11
12
  constructor() {
12
- super(), this._ids = g("ag-checkbox"), this.name = "", this.value = "", this.checked = !1, this.indeterminate = !1, this.disabled = !1, this.size = "medium", this.theme = "primary", this.labelText = "", this.labelPosition = "end", this.required = !1, this.invalid = !1, this.errorMessage = "", this.helpText = "";
13
+ super(), this._ids = g("ag-checkbox"), this.value = "", this.checked = !1, this.indeterminate = !1, this.disabled = !1, this.size = "medium", this.theme = "primary", this.labelText = "", this.labelPosition = "end", this.required = !1, this.invalid = !1, this.errorMessage = "", this.helpText = "";
13
14
  }
14
15
  /**
15
16
  * Expose the internal focusable element for FormControl ARIA wiring
@@ -17,19 +18,36 @@ const h = class h extends p {
17
18
  get controlElement() {
18
19
  return this.inputRef || null;
19
20
  }
20
- updated(a) {
21
- super.updated(a), a.has("indeterminate") && this.inputRef && (this.inputRef.indeterminate = this.indeterminate);
21
+ // ─── FACE ─────────────────────────────────────────────────────────────────
22
+ /**
23
+ * FACE lifecycle: called when the parent form is reset.
24
+ * Restores checked and indeterminate to their default states.
25
+ */
26
+ formResetCallback() {
27
+ this.checked = !1, this.indeterminate = !1, this._internals.setFormValue(null), this._internals.setValidity({});
22
28
  }
23
- handleClick(a) {
24
- this.onClick && this.onClick(a);
29
+ /**
30
+ * Sync validity to ElementInternals by delegating to the inner
31
+ * <input type="checkbox">. Required validation is handled natively
32
+ * by the inner input; we just mirror its state.
33
+ */
34
+ _syncValidity() {
35
+ k(this._internals, this.inputRef);
25
36
  }
26
- handleChange(a) {
37
+ // ─── End FACE ─────────────────────────────────────────────────────────────
38
+ updated(t) {
39
+ super.updated(t), t.has("indeterminate") && this.inputRef && (this.inputRef.indeterminate = this.indeterminate), (t.has("checked") || t.has("indeterminate")) && (this._internals.setFormValue(this.checked ? this.value || "on" : null), this._syncValidity());
40
+ }
41
+ handleClick(t) {
42
+ this.onClick && this.onClick(t);
43
+ }
44
+ handleChange(t) {
27
45
  if (this.disabled) {
28
- a.preventDefault();
46
+ t.preventDefault();
29
47
  return;
30
48
  }
31
- const o = a.target;
32
- this.checked = o.checked, this.indeterminate && (this.indeterminate = !1);
49
+ const o = t.target;
50
+ this.checked = o.checked, this.indeterminate && (this.indeterminate = !1), this._internals.setFormValue(this.checked ? this.value || "on" : null), this._syncValidity();
33
51
  const s = new CustomEvent("change", {
34
52
  detail: {
35
53
  checked: this.checked,
@@ -46,7 +64,7 @@ const h = class h extends p {
46
64
  * Render helper text
47
65
  */
48
66
  _renderHelper() {
49
- return this.helpText ? c`
67
+ return this.helpText ? l`
50
68
  <div
51
69
  id="${this._ids.helperId}"
52
70
  class="ag-form-control__helper ag-checkbox__helper"
@@ -54,13 +72,13 @@ const h = class h extends p {
54
72
  >
55
73
  ${this.helpText}
56
74
  </div>
57
- ` : l;
75
+ ` : c;
58
76
  }
59
77
  /**
60
78
  * Render error text
61
79
  */
62
80
  _renderError() {
63
- return !this.invalid || !this.errorMessage ? l : c`
81
+ return !this.invalid || !this.errorMessage ? c : l`
64
82
  <div
65
83
  id="${this._ids.errorId}"
66
84
  class="ag-form-control__error ag-checkbox__error"
@@ -74,7 +92,7 @@ const h = class h extends p {
74
92
  * Build ARIA describedby attribute
75
93
  */
76
94
  _getAriaDescribedBy() {
77
- return x({
95
+ return m({
78
96
  helperId: this._ids.helperId,
79
97
  errorId: this._ids.errorId,
80
98
  hasHelper: !!this.helpText,
@@ -82,7 +100,7 @@ const h = class h extends p {
82
100
  });
83
101
  }
84
102
  render() {
85
- const a = `
103
+ const t = `
86
104
  checkbox-wrapper
87
105
  ${this.labelPosition === "start" ? "checkbox-wrapper--label-start" : ""}
88
106
  `, o = `
@@ -93,11 +111,11 @@ const h = class h extends p {
93
111
  checkbox-label-copy
94
112
  checkbox-label-copy--${this.size}
95
113
  `, i = this._getAriaDescribedBy();
96
- return c`
114
+ return l`
97
115
  <div class="ag-checkbox-container">
98
116
  <label
99
117
  for="${this._ids.inputId}"
100
- class=${a.trim()}
118
+ class=${t.trim()}
101
119
  part="ag-checkbox-wrapper"
102
120
  >
103
121
  <input
@@ -114,7 +132,7 @@ const h = class h extends p {
114
132
  aria-label="${this.labelText || "Checkbox"}"
115
133
  aria-required="${this.required ? "true" : "false"}"
116
134
  aria-invalid="${this.invalid ? "true" : "false"}"
117
- aria-describedby="${i || l}"
135
+ aria-describedby="${i || c}"
118
136
  aria-checked=${this.indeterminate ? "mixed" : this.checked ? "true" : "false"}
119
137
  @click=${this.handleClick}
120
138
  @change=${this.handleChange}
@@ -125,8 +143,8 @@ const h = class h extends p {
125
143
  aria-hidden="true"
126
144
  ></span>
127
145
  <span class=${s.trim()} part="ag-checkbox-label">
128
- ${this.labelText || c`<slot></slot>`}
129
- ${this.required ? c`<span class="ag-form-control__required" aria-label="required">*</span>` : l}
146
+ ${this.labelText || l`<slot></slot>`}
147
+ ${this.required ? l`<span class="ag-form-control__required" aria-label="required">*</span>` : c}
130
148
  </span>
131
149
  </label>
132
150
  ${this._renderHelper()}
@@ -137,7 +155,7 @@ const h = class h extends p {
137
155
  firstUpdated() {
138
156
  this.inputRef = this.shadowRoot?.querySelector(
139
157
  ".checkbox-input"
140
- ), this.inputRef && this.indeterminate && (this.inputRef.indeterminate = this.indeterminate);
158
+ ), this.inputRef && this.indeterminate && (this.inputRef.indeterminate = this.indeterminate), this._internals.setFormValue(this.checked ? this.value || "on" : null), this._syncValidity();
141
159
  }
142
160
  };
143
161
  h.styles = [
@@ -372,49 +390,46 @@ h.styles = [
372
390
  `
373
391
  ];
374
392
  let e = h;
375
- t([
376
- r({ type: String })
377
- ], e.prototype, "name");
378
- t([
393
+ a([
379
394
  r({ type: String })
380
395
  ], e.prototype, "value");
381
- t([
396
+ a([
382
397
  r({ type: Boolean, reflect: !0 })
383
398
  ], e.prototype, "checked");
384
- t([
399
+ a([
385
400
  r({ type: Boolean, reflect: !0 })
386
401
  ], e.prototype, "indeterminate");
387
- t([
402
+ a([
388
403
  r({ type: Boolean, reflect: !0 })
389
404
  ], e.prototype, "disabled");
390
- t([
405
+ a([
391
406
  r({ type: String })
392
407
  ], e.prototype, "size");
393
- t([
408
+ a([
394
409
  r({ type: String })
395
410
  ], e.prototype, "theme");
396
- t([
411
+ a([
397
412
  r({ type: String })
398
413
  ], e.prototype, "labelText");
399
- t([
414
+ a([
400
415
  r({ type: String })
401
416
  ], e.prototype, "labelPosition");
402
- t([
417
+ a([
403
418
  r({ type: Boolean, reflect: !0 })
404
419
  ], e.prototype, "required");
405
- t([
420
+ a([
406
421
  r({ type: Boolean, reflect: !0 })
407
422
  ], e.prototype, "invalid");
408
- t([
423
+ a([
409
424
  r({ type: String, attribute: "error-message" })
410
425
  ], e.prototype, "errorMessage");
411
- t([
426
+ a([
412
427
  r({ type: String, attribute: "help-text" })
413
428
  ], e.prototype, "helpText");
414
- t([
429
+ a([
415
430
  r({ attribute: !1 })
416
431
  ], e.prototype, "onClick");
417
- t([
432
+ a([
418
433
  r({ attribute: !1 })
419
434
  ], e.prototype, "onChange");
420
435
  export {
@@ -1,4 +1,5 @@
1
1
  import { LitElement } from 'lit';
2
+ import { ValidationMessages } from '../../../shared/face-mixin';
2
3
  import { LabelPosition } from '../../../shared/form-control-utils';
3
4
 
4
5
  export interface ComboboxOption {
@@ -69,7 +70,9 @@ export interface ComboboxProps {
69
70
  onClose?: (event: ComboboxCloseEvent) => void;
70
71
  onFocus?: (event: FocusEvent) => void;
71
72
  onBlur?: (event: FocusEvent) => void;
73
+ validationMessages?: ValidationMessages;
72
74
  }
75
+ declare const AgCombobox_base: (new (...args: any[]) => import('../../../shared/face-mixin').FaceMixinInterface) & typeof LitElement;
73
76
  /**
74
77
  * @element ag-combobox
75
78
  * @fires {ComboboxChangeEvent} change - Fired when value changes
@@ -90,7 +93,7 @@ export interface ComboboxProps {
90
93
  * @csspart ag-combobox-help-text - Help text element
91
94
  * @csspart ag-combobox-error-message - Error message element
92
95
  */
93
- export declare class AgCombobox extends LitElement implements ComboboxProps {
96
+ export declare class AgCombobox extends AgCombobox_base implements ComboboxProps {
94
97
  static styles: import('lit').CSSResult[];
95
98
  options: ComboboxOption[];
96
99
  private _value;
@@ -129,6 +132,7 @@ export declare class AgCombobox extends LitElement implements ComboboxProps {
129
132
  onClose?: (event: ComboboxCloseEvent) => void;
130
133
  onFocus?: (event: FocusEvent) => void;
131
134
  onBlur?: (event: FocusEvent) => void;
135
+ validationMessages: ValidationMessages | undefined;
132
136
  private _open;
133
137
  private _searchTerm;
134
138
  private _filteredOptions;
@@ -150,6 +154,7 @@ export declare class AgCombobox extends LitElement implements ComboboxProps {
150
154
  disconnectedCallback(): void;
151
155
  private _isDefaultValueInitialized;
152
156
  willUpdate(changedProperties: Map<string, unknown>): void;
157
+ updated(changedProperties: Map<string, unknown>): void;
153
158
  focus(): void;
154
159
  blur(): void;
155
160
  open(): void;
@@ -157,6 +162,23 @@ export declare class AgCombobox extends LitElement implements ComboboxProps {
157
162
  toggle(): void;
158
163
  selectOption(optionOrValue: ComboboxOption | string): void;
159
164
  clearSelection(): void;
165
+ /**
166
+ * Sync the form value to ElementInternals.
167
+ * Single: submits the selected value string, or null if nothing selected.
168
+ * Multiple: submits all selected values via FormData overload.
169
+ * Typed text that hasn't been committed via selectOption() is never submitted.
170
+ */
171
+ private _syncFormValue;
172
+ /**
173
+ * Sync validity. Required with no selection = valueMissing.
174
+ */
175
+ private _syncValidity;
176
+ firstUpdated(): void;
177
+ /**
178
+ * FACE lifecycle: called when the parent form is reset.
179
+ * Clears selection and re-syncs form value.
180
+ */
181
+ formResetCallback(): void;
160
182
  private _selectionChanged;
161
183
  private _renderSelectedTags;
162
184
  private _handleTagRemove;
@@ -181,4 +203,5 @@ export declare class AgCombobox extends LitElement implements ComboboxProps {
181
203
  private renderLabel;
182
204
  render(): import('lit').TemplateResult<1>;
183
205
  }
206
+ export {};
184
207
  //# sourceMappingURL=_Combobox.d.ts.map