@illinois-grad/grad-vue 2.5.0 → 2.5.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 (41) hide show
  1. package/custom-elements.json +539 -1
  2. package/dist/components/GButton.vue.d.ts +9 -0
  3. package/dist/components/GCheckboxGroup.vue.d.ts +120 -0
  4. package/dist/components/GCurrencyInput.vue.d.ts +15 -2
  5. package/dist/components/GDateInput.vue.d.ts +15 -2
  6. package/dist/components/GDateRangeInput.vue.d.ts +15 -2
  7. package/dist/components/GEmailInput.vue.d.ts +2 -2
  8. package/dist/components/GFileInput.vue.d.ts +138 -0
  9. package/dist/components/GForm.vue.d.ts +13 -0
  10. package/dist/components/GHamburgerMenu.vue.d.ts +13 -0
  11. package/dist/components/GModal.vue.d.ts +0 -6
  12. package/dist/components/GPopover.vue.d.ts +24 -8
  13. package/dist/components/GSelect.vue.d.ts +14 -1
  14. package/dist/components/GSelectButton.vue.d.ts +14 -1
  15. package/dist/components/GSidebar.vue.d.ts +14 -0
  16. package/dist/components/GSubmitButton.vue.d.ts +15 -0
  17. package/dist/components/GTextInput.vue.d.ts +15 -2
  18. package/dist/components/GTextarea.vue.d.ts +170 -0
  19. package/dist/components/GTooltip.vue.d.ts +37 -0
  20. package/dist/compose/tooltipDom.d.ts +6 -0
  21. package/dist/compose/useCustomElementAttrs.d.ts +14 -0
  22. package/dist/compose/useFormField.d.ts +4 -0
  23. package/dist/compose/useOverlayFocus.d.ts +1 -1
  24. package/dist/compose/useWebComponentForm.d.ts +2 -0
  25. package/dist/compose/useWebComponentSidebar.d.ts +9 -0
  26. package/dist/grad-vue-_KJazv6D.js +3829 -0
  27. package/dist/grad-vue-_KJazv6D.js.map +1 -0
  28. package/dist/grad-vue-elements.css +2 -1
  29. package/dist/grad-vue-elements.d.ts +12 -0
  30. package/dist/grad-vue-elements.js +8435 -9418
  31. package/dist/grad-vue-elements.js.map +1 -1
  32. package/dist/grad-vue.css +2 -1
  33. package/dist/grad-vue.d.ts +8 -1
  34. package/dist/grad-vue.js +2 -240
  35. package/dist/plugin.d.ts +4 -1
  36. package/dist/plugin.js +9 -12
  37. package/dist/plugin.js.map +1 -1
  38. package/package.json +1 -1
  39. package/dist/grad-vue.js.map +0 -1
  40. package/dist/main-D8BC78tE.js +0 -3394
  41. package/dist/main-D8BC78tE.js.map +0 -1
@@ -0,0 +1,120 @@
1
+ export interface CheckboxOption {
2
+ label: string;
3
+ value: string;
4
+ disabled?: boolean;
5
+ hint?: string;
6
+ }
7
+ /**
8
+ * A group of checkboxes (or radio buttons) with styling for a label,
9
+ * instructions, and error messages.
10
+ *
11
+ * When more than one option is provided (or `radio` mode is used), a
12
+ * `fieldset` + `legend` provides semantic grouping. With a single checkbox
13
+ * a plain `div` is rendered instead.
14
+ *
15
+ * Each option renders as a native `<input type="checkbox">` (or
16
+ * `type="radio"` when `radio` is `true`) so that keyboard navigation and
17
+ * browser/assistive-technology support come for free.
18
+ *
19
+ * In standard Vue usage, this registers with the nearest parent `GForm` via
20
+ * injection. In custom-elements mode, use matching `form-key` values to pair
21
+ * with a `GForm`.
22
+ *
23
+ * Errors are provided as an array of strings or computed values.
24
+ * Multiple errors will all be displayed.
25
+ */
26
+ declare const _default: typeof __VLS_export;
27
+ export default _default;
28
+ declare const __VLS_export: import("vue").DefineComponent<{
29
+ /**
30
+ * Legend / accessible label for the group
31
+ * @demo Checkbox Group
32
+ */
33
+ label?: string;
34
+ /**
35
+ * List of checkbox options
36
+ */
37
+ options: CheckboxOption[];
38
+ /**
39
+ * Instructions shown below the legend
40
+ * @demo
41
+ */
42
+ instructions?: string;
43
+ /**
44
+ * Error messages array (supports multiple validation errors)
45
+ */
46
+ errors?: string[];
47
+ /**
48
+ * Mark the group as required
49
+ * @demo
50
+ */
51
+ required?: boolean;
52
+ /**
53
+ * Render as radio buttons (single-select)
54
+ * @demo
55
+ */
56
+ radio?: boolean;
57
+ /**
58
+ * Name for form registration and native input `name` attribute
59
+ */
60
+ name?: string;
61
+ /**
62
+ * Form channel key for custom elements mode
63
+ */
64
+ formKey?: string;
65
+ } & {
66
+ modelValue?: string[];
67
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
68
+ "update:modelValue": (value: string[]) => any;
69
+ change: (value: string[]) => any;
70
+ }, string, import("vue").PublicProps, Readonly<{
71
+ /**
72
+ * Legend / accessible label for the group
73
+ * @demo Checkbox Group
74
+ */
75
+ label?: string;
76
+ /**
77
+ * List of checkbox options
78
+ */
79
+ options: CheckboxOption[];
80
+ /**
81
+ * Instructions shown below the legend
82
+ * @demo
83
+ */
84
+ instructions?: string;
85
+ /**
86
+ * Error messages array (supports multiple validation errors)
87
+ */
88
+ errors?: string[];
89
+ /**
90
+ * Mark the group as required
91
+ * @demo
92
+ */
93
+ required?: boolean;
94
+ /**
95
+ * Render as radio buttons (single-select)
96
+ * @demo
97
+ */
98
+ radio?: boolean;
99
+ /**
100
+ * Name for form registration and native input `name` attribute
101
+ */
102
+ name?: string;
103
+ /**
104
+ * Form channel key for custom elements mode
105
+ */
106
+ formKey?: string;
107
+ } & {
108
+ modelValue?: string[];
109
+ }> & Readonly<{
110
+ "onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
111
+ onChange?: ((value: string[]) => any) | undefined;
112
+ }>, {
113
+ label: string;
114
+ radio: boolean;
115
+ name: string;
116
+ instructions: string;
117
+ errors: string[];
118
+ required: boolean;
119
+ formKey: string;
120
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -3,6 +3,10 @@
3
3
  *
4
4
  * This component is a wrapper around a text input with a prefix and
5
5
  * appropriate input type for currency values.
6
+ *
7
+ * In standard Vue usage, this registers with the nearest parent `GForm` via
8
+ * injection. In custom-elements mode, use matching `form-key` values to pair
9
+ * with a `GForm`.
6
10
  */
7
11
  declare const _default: typeof __VLS_export;
8
12
  export default _default;
@@ -35,6 +39,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
35
39
  * Name for form registration
36
40
  */
37
41
  name?: string;
42
+ /**
43
+ * Form channel key for custom elements mode
44
+ */
45
+ formKey?: string;
38
46
  } & {
39
47
  modelValue?: string | null;
40
48
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -68,6 +76,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
68
76
  * Name for form registration
69
77
  */
70
78
  name?: string;
79
+ /**
80
+ * Form channel key for custom elements mode
81
+ */
82
+ formKey?: string;
71
83
  } & {
72
84
  modelValue?: string | null;
73
85
  }> & Readonly<{
@@ -76,7 +88,8 @@ declare const __VLS_export: import("vue").DefineComponent<{
76
88
  label: string;
77
89
  placeholder: string;
78
90
  name: string;
79
- disabled: boolean;
80
- errors: string[];
81
91
  instructions: string;
92
+ errors: string[];
93
+ formKey: string;
94
+ disabled: boolean;
82
95
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -3,6 +3,10 @@
3
3
  *
4
4
  * This component is a wrapper around GTextInput with type="date" for
5
5
  * proper date selection using the browser's native date picker.
6
+ *
7
+ * In standard Vue usage, this registers with the nearest parent `GForm` via
8
+ * injection. In custom-elements mode, use matching `form-key` values to pair
9
+ * with a `GForm`.
6
10
  */
7
11
  declare const _default: typeof __VLS_export;
8
12
  export default _default;
@@ -35,6 +39,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
35
39
  * Name for form registration
36
40
  */
37
41
  name?: string;
42
+ /**
43
+ * Form channel key for custom elements mode
44
+ */
45
+ formKey?: string;
38
46
  } & {
39
47
  modelValue?: string | null;
40
48
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -68,6 +76,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
68
76
  * Name for form registration
69
77
  */
70
78
  name?: string;
79
+ /**
80
+ * Form channel key for custom elements mode
81
+ */
82
+ formKey?: string;
71
83
  } & {
72
84
  modelValue?: string | null;
73
85
  }> & Readonly<{
@@ -76,7 +88,8 @@ declare const __VLS_export: import("vue").DefineComponent<{
76
88
  label: string;
77
89
  placeholder: string;
78
90
  name: string;
79
- disabled: boolean;
80
- errors: string[];
81
91
  instructions: string;
92
+ errors: string[];
93
+ formKey: string;
94
+ disabled: boolean;
82
95
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -3,6 +3,10 @@
3
3
  *
4
4
  * This component uses two GDateInput components laid out horizontally
5
5
  * to allow selecting a date range.
6
+ *
7
+ * In standard Vue usage, this registers with the nearest parent `GForm` via
8
+ * injection. In custom-elements mode, use matching `form-key` values to pair
9
+ * with a `GForm`.
6
10
  */
7
11
  declare const _default: typeof __VLS_export;
8
12
  export default _default;
@@ -40,6 +44,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
40
44
  * Name for form registration
41
45
  */
42
46
  name?: string;
47
+ /**
48
+ * Form channel key for custom elements mode
49
+ */
50
+ formKey?: string;
43
51
  } & {
44
52
  modelValue?: {
45
53
  start: string | null;
@@ -84,6 +92,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
84
92
  * Name for form registration
85
93
  */
86
94
  name?: string;
95
+ /**
96
+ * Form channel key for custom elements mode
97
+ */
98
+ formKey?: string;
87
99
  } & {
88
100
  modelValue?: {
89
101
  start: string | null;
@@ -97,9 +109,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
97
109
  }>, {
98
110
  label: string;
99
111
  name: string;
100
- disabled: boolean;
101
- errors: string[];
102
112
  instructions: string;
113
+ errors: string[];
114
+ formKey: string;
115
+ disabled: boolean;
103
116
  startLabel: string;
104
117
  endLabel: string;
105
118
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -76,7 +76,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
76
76
  label: string;
77
77
  placeholder: string;
78
78
  name: string;
79
- disabled: boolean;
80
- errors: string[];
81
79
  instructions: string;
80
+ errors: string[];
81
+ disabled: boolean;
82
82
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -0,0 +1,138 @@
1
+ /**
2
+ * A file input component for accessible file uploads.
3
+ *
4
+ * If `label` is omitted, an accessible label must be provided some other way.
5
+ *
6
+ * In standard Vue usage, this registers with the nearest parent `GForm` via
7
+ * injection. In custom-elements mode, use matching `form-key` values to pair
8
+ * with a `GForm`.
9
+ *
10
+ * Errors are provided as an array of strings. Multiple errors will all be
11
+ * displayed. Client-side validation errors from `maxFileSize` and `maxFiles`
12
+ * are shown alongside any provided `errors`.
13
+ */
14
+ declare const _default: typeof __VLS_export;
15
+ export default _default;
16
+ declare const __VLS_export: import("vue").DefineComponent<{
17
+ /**
18
+ * Label
19
+ * @demo Upload File
20
+ */
21
+ label?: string;
22
+ /**
23
+ * Instructions
24
+ * @demo
25
+ */
26
+ instructions?: string;
27
+ /**
28
+ * Disabled
29
+ * @demo
30
+ */
31
+ disabled?: boolean;
32
+ /**
33
+ * Error messages array (supports multiple validation errors)
34
+ */
35
+ errors?: string[];
36
+ /**
37
+ * Required
38
+ * @demo
39
+ */
40
+ required?: boolean;
41
+ /**
42
+ * Name for form registration
43
+ */
44
+ name?: string;
45
+ /**
46
+ * Form channel key for custom elements mode
47
+ */
48
+ formKey?: string;
49
+ /**
50
+ * Accepted file types (e.g. ".pdf,.docx" or "image/*")
51
+ * @demo
52
+ */
53
+ accept?: string;
54
+ /**
55
+ * Allow multiple file selection
56
+ * @demo
57
+ */
58
+ multiple?: boolean;
59
+ /**
60
+ * Maximum file size in bytes for client-side validation
61
+ * @demo
62
+ */
63
+ maxFileSize?: number;
64
+ /**
65
+ * Maximum number of files allowed for client-side validation
66
+ * @demo
67
+ */
68
+ maxFiles?: number;
69
+ } & {
70
+ modelValue?: File[];
71
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
72
+ "update:modelValue": (value: File[]) => any;
73
+ change: (files: File[]) => any;
74
+ }, string, import("vue").PublicProps, Readonly<{
75
+ /**
76
+ * Label
77
+ * @demo Upload File
78
+ */
79
+ label?: string;
80
+ /**
81
+ * Instructions
82
+ * @demo
83
+ */
84
+ instructions?: string;
85
+ /**
86
+ * Disabled
87
+ * @demo
88
+ */
89
+ disabled?: boolean;
90
+ /**
91
+ * Error messages array (supports multiple validation errors)
92
+ */
93
+ errors?: string[];
94
+ /**
95
+ * Required
96
+ * @demo
97
+ */
98
+ required?: boolean;
99
+ /**
100
+ * Name for form registration
101
+ */
102
+ name?: string;
103
+ /**
104
+ * Form channel key for custom elements mode
105
+ */
106
+ formKey?: string;
107
+ /**
108
+ * Accepted file types (e.g. ".pdf,.docx" or "image/*")
109
+ * @demo
110
+ */
111
+ accept?: string;
112
+ /**
113
+ * Allow multiple file selection
114
+ * @demo
115
+ */
116
+ multiple?: boolean;
117
+ /**
118
+ * Maximum file size in bytes for client-side validation
119
+ * @demo
120
+ */
121
+ maxFileSize?: number;
122
+ /**
123
+ * Maximum number of files allowed for client-side validation
124
+ * @demo
125
+ */
126
+ maxFiles?: number;
127
+ } & {
128
+ modelValue?: File[];
129
+ }> & Readonly<{
130
+ "onUpdate:modelValue"?: ((value: File[]) => any) | undefined;
131
+ onChange?: ((files: File[]) => any) | undefined;
132
+ }>, {
133
+ instructions: string;
134
+ errors: string[];
135
+ required: boolean;
136
+ disabled: boolean;
137
+ multiple: boolean;
138
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -11,6 +11,8 @@
11
11
  * - Reactive error handling by providing a computed list of errors
12
12
  * - Optionally manage your own form state in a parent component by providing a
13
13
  * `form` injection
14
+ * - In web components mode, use the `form-key` prop to pair a form with
15
+ * matching inputs/buttons across custom element app boundaries
14
16
  *
15
17
  * ### Basic example
16
18
  *
@@ -36,6 +38,11 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
36
38
  * @demo
37
39
  */
38
40
  method?: string;
41
+ /**
42
+ * Form channel key for custom elements mode
43
+ * @demo
44
+ */
45
+ formKey?: string;
39
46
  } & {
40
47
  modelValue?: Record<string, any>;
41
48
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -52,12 +59,18 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
52
59
  * @demo
53
60
  */
54
61
  method?: string;
62
+ /**
63
+ * Form channel key for custom elements mode
64
+ * @demo
65
+ */
66
+ formKey?: string;
55
67
  } & {
56
68
  modelValue?: Record<string, any>;
57
69
  }> & Readonly<{
58
70
  onSubmit?: ((values: Record<string, any>) => any) | undefined;
59
71
  "onUpdate:modelValue"?: ((value: Record<string, any>) => any) | undefined;
60
72
  }>, {
73
+ formKey: string;
61
74
  action: string;
62
75
  method: string;
63
76
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
@@ -25,6 +25,8 @@
25
25
  *
26
26
  * > [!NOTE]
27
27
  * > This button hides itself automatically according to the useSidebar media query.
28
+ * > In web components mode, use the `sidebar-key` prop to pair this menu with a
29
+ * > matching GSidebar instance.
28
30
  */
29
31
  declare const _default: typeof __VLS_export;
30
32
  export default _default;
@@ -34,6 +36,11 @@ declare const __VLS_export: import("vue").DefineComponent<{
34
36
  * @demo
35
37
  */
36
38
  label?: string;
39
+ /**
40
+ * Sidebar channel key for custom elements mode
41
+ * @demo
42
+ */
43
+ sidebarKey?: string;
37
44
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
38
45
  toggle: () => any;
39
46
  }, string, import("vue").PublicProps, Readonly<{
@@ -42,8 +49,14 @@ declare const __VLS_export: import("vue").DefineComponent<{
42
49
  * @demo
43
50
  */
44
51
  label?: string;
52
+ /**
53
+ * Sidebar channel key for custom elements mode
54
+ * @demo
55
+ */
56
+ sidebarKey?: string;
45
57
  }> & Readonly<{
46
58
  onToggle?: (() => any) | undefined;
47
59
  }>, {
48
60
  label: string;
61
+ sidebarKey: string;
49
62
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -26,12 +26,6 @@
26
26
  *
27
27
  * Adding a dimming overlay behind modals can be done by placing `GOverlay`
28
28
  * at the end of the page structure.
29
- *
30
- * > [!WARNING]
31
- * > There are some shenanigans in the modal and overlay implementation in order
32
- * > to support Nuxt without including it as a dependency. Specifically, the refs
33
- * > to store the state of the overlay stack is added to `window._g_overlay_stack_state`
34
- * > when `document` is defined. That makes it only load in the client.
35
29
  */
36
30
  declare const _default: typeof __VLS_export;
37
31
  export default _default;
@@ -2,11 +2,14 @@
2
2
  * Popover that appears next to or over a trigger element, staying visible
3
3
  * in the viewport as much as possible.
4
4
  *
5
- * **Slot** `trigger` must have an interactive element for which
6
- * the only interaction is to open the popover. The trigger element is also used
7
- * for `aria-labelledby`. The trigger is passed a prop `toggle` which is a function
5
+ * **Slot** `trigger` is optional. When provided, it should contain an
6
+ * interactive element for opening the popover and it is used for
7
+ * `aria-labelledby`. The trigger is passed a prop `toggle` which is a function
8
8
  * that toggles the popover's open state.
9
9
  *
10
+ * Without a trigger slot, open the popover programmatically via `show()` or
11
+ * `toggle()` on the component instance / custom element.
12
+ *
10
13
  * **Slot** `default` is the content of the popover.
11
14
  *
12
15
  * Example:
@@ -30,25 +33,38 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
30
33
  * @demo
31
34
  */
32
35
  minimal?: boolean;
33
- } & {
36
+ /**
37
+ * v-model binding for the open state. Also works as a plain
38
+ * prop/attribute in custom-element mode where `defineModel`
39
+ * would revert local state.
40
+ */
34
41
  modelValue?: boolean;
35
- }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
42
+ }, {
43
+ show: () => void;
44
+ hide: () => void;
45
+ toggle: () => void;
46
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
47
+ "update:modelValue": (...args: any[]) => void;
36
48
  show: (...args: any[]) => void;
37
49
  hide: (...args: any[]) => void;
38
- "update:modelValue": (value: boolean) => void;
39
50
  }, string, import("vue").PublicProps, Readonly<{
40
51
  /**
41
52
  * Render without padding
42
53
  * @demo
43
54
  */
44
55
  minimal?: boolean;
45
- } & {
56
+ /**
57
+ * v-model binding for the open state. Also works as a plain
58
+ * prop/attribute in custom-element mode where `defineModel`
59
+ * would revert local state.
60
+ */
46
61
  modelValue?: boolean;
47
62
  }> & Readonly<{
48
- "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
63
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
49
64
  onShow?: ((...args: any[]) => any) | undefined;
50
65
  onHide?: ((...args: any[]) => any) | undefined;
51
66
  }>, {
67
+ modelValue: boolean;
52
68
  minimal: boolean;
53
69
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
54
70
  trigger?: (props: {
@@ -2,6 +2,10 @@
2
2
  * By default, this component behaves like a normal select element with
3
3
  * custom styling.
4
4
  *
5
+ * In standard Vue usage, this registers with the nearest parent `GForm` via
6
+ * injection. In custom-elements mode, use matching `form-key` values to pair
7
+ * with a `GForm`.
8
+ *
5
9
  * The component can be marked `searchable` to enable search functionality.
6
10
  * This turns it into a text input that filters the options. Filtering is
7
11
  * done with a simple lower-case string search.
@@ -64,6 +68,10 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
64
68
  * Error messages array (supports multiple validation errors)
65
69
  */
66
70
  errors?: string[];
71
+ /**
72
+ * Form channel key for custom elements mode
73
+ */
74
+ formKey?: string;
67
75
  } & {
68
76
  modelValue?: string | number | null;
69
77
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -122,6 +130,10 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
122
130
  * Error messages array (supports multiple validation errors)
123
131
  */
124
132
  errors?: string[];
133
+ /**
134
+ * Form channel key for custom elements mode
135
+ */
136
+ formKey?: string;
125
137
  } & {
126
138
  modelValue?: string | number | null;
127
139
  }> & Readonly<{
@@ -129,8 +141,9 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
129
141
  onChange?: ((...args: any[]) => any) | undefined;
130
142
  }>, {
131
143
  name: string;
132
- disabled: boolean;
133
144
  errors: string[];
145
+ formKey: string;
146
+ disabled: boolean;
134
147
  searchable: boolean;
135
148
  compact: boolean;
136
149
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
@@ -1,6 +1,10 @@
1
1
  /**
2
2
  * This component is just a radio button group with special styling.
3
3
  *
4
+ * In standard Vue usage, this registers with the nearest parent `GForm` via
5
+ * injection. In custom-elements mode, use matching `form-key` values to pair
6
+ * with a `GForm`.
7
+ *
4
8
  * Use the `options` prop to provide a list of choices. Each option can
5
9
  * be a string or an object with `label` and `value` properties.
6
10
  *
@@ -40,6 +44,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
40
44
  * Error messages array (supports multiple validation errors)
41
45
  */
42
46
  errors?: string[];
47
+ /**
48
+ * Form channel key for custom elements mode
49
+ */
50
+ formKey?: string;
43
51
  } & {
44
52
  modelValue?: string | number;
45
53
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -76,6 +84,10 @@ declare const __VLS_export: import("vue").DefineComponent<{
76
84
  * Error messages array (supports multiple validation errors)
77
85
  */
78
86
  errors?: string[];
87
+ /**
88
+ * Form channel key for custom elements mode
89
+ */
90
+ formKey?: string;
79
91
  } & {
80
92
  modelValue?: string | number;
81
93
  }> & Readonly<{
@@ -84,6 +96,7 @@ declare const __VLS_export: import("vue").DefineComponent<{
84
96
  }>, {
85
97
  size: "small" | "medium" | "large";
86
98
  name: string;
87
- disabled: boolean;
88
99
  errors: string[];
100
+ formKey: string;
101
+ disabled: boolean;
89
102
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -11,6 +11,9 @@
11
11
  * The sidebar can be made collapsible by providing the `sidebar` injected
12
12
  * object from `useSidebar`. See the [Hamburger Menu Documentation](#use-sidebar)
13
13
  * for details.
14
+ *
15
+ * In web components mode, use the `sidebar-key` prop to pair this sidebar
16
+ * with a matching GHamburgerMenu instance.
14
17
  */
15
18
  declare const _default: typeof __VLS_export;
16
19
  export default _default;
@@ -45,6 +48,11 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
45
48
  * @demo
46
49
  */
47
50
  width?: string;
51
+ /**
52
+ * Sidebar channel key for custom elements mode
53
+ * @demo
54
+ */
55
+ sidebarKey?: string;
48
56
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
49
57
  /**
50
58
  * Custom background color
@@ -76,9 +84,15 @@ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
76
84
  * @demo
77
85
  */
78
86
  width?: string;
87
+ /**
88
+ * Sidebar channel key for custom elements mode
89
+ * @demo
90
+ */
91
+ sidebarKey?: string;
79
92
  }> & Readonly<{}>, {
80
93
  width: string;
81
94
  theme: "light" | "dark";
95
+ sidebarKey: string;
82
96
  backgroundColor: string;
83
97
  backgroundImage: string;
84
98
  topOffset: string;