@vuecs/forms 4.0.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 (90) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +43 -0
  3. package/dist/components/constants.d.ts +5 -0
  4. package/dist/components/constants.d.ts.map +1 -0
  5. package/dist/components/form-checkbox/FormCheckbox.vue.d.ts +205 -0
  6. package/dist/components/form-checkbox/FormCheckbox.vue.d.ts.map +1 -0
  7. package/dist/components/form-checkbox/index.d.ts +5 -0
  8. package/dist/components/form-checkbox/index.d.ts.map +1 -0
  9. package/dist/components/form-checkbox-group/FormCheckboxGroup.vue.d.ts +170 -0
  10. package/dist/components/form-checkbox-group/FormCheckboxGroup.vue.d.ts.map +1 -0
  11. package/dist/components/form-checkbox-group/index.d.ts +5 -0
  12. package/dist/components/form-checkbox-group/index.d.ts.map +1 -0
  13. package/dist/components/form-group/FormGroup.vue.d.ts +218 -0
  14. package/dist/components/form-group/FormGroup.vue.d.ts.map +1 -0
  15. package/dist/components/form-group/index.d.ts +5 -0
  16. package/dist/components/form-group/index.d.ts.map +1 -0
  17. package/dist/components/form-input/FormInput.vue.d.ts +195 -0
  18. package/dist/components/form-input/FormInput.vue.d.ts.map +1 -0
  19. package/dist/components/form-input/index.d.ts +5 -0
  20. package/dist/components/form-input/index.d.ts.map +1 -0
  21. package/dist/components/form-number/FormNumber.vue.d.ts +268 -0
  22. package/dist/components/form-number/FormNumber.vue.d.ts.map +1 -0
  23. package/dist/components/form-number/index.d.ts +5 -0
  24. package/dist/components/form-number/index.d.ts.map +1 -0
  25. package/dist/components/form-pin/FormPin.vue.d.ts +221 -0
  26. package/dist/components/form-pin/FormPin.vue.d.ts.map +1 -0
  27. package/dist/components/form-pin/index.d.ts +5 -0
  28. package/dist/components/form-pin/index.d.ts.map +1 -0
  29. package/dist/components/form-radio/FormRadio.vue.d.ts +170 -0
  30. package/dist/components/form-radio/FormRadio.vue.d.ts.map +1 -0
  31. package/dist/components/form-radio/index.d.ts +5 -0
  32. package/dist/components/form-radio/index.d.ts.map +1 -0
  33. package/dist/components/form-radio-group/FormRadioGroup.vue.d.ts +172 -0
  34. package/dist/components/form-radio-group/FormRadioGroup.vue.d.ts.map +1 -0
  35. package/dist/components/form-radio-group/index.d.ts +5 -0
  36. package/dist/components/form-radio-group/index.d.ts.map +1 -0
  37. package/dist/components/form-select/FormSelect.vue.d.ts +172 -0
  38. package/dist/components/form-select/FormSelect.vue.d.ts.map +1 -0
  39. package/dist/components/form-select/index.d.ts +5 -0
  40. package/dist/components/form-select/index.d.ts.map +1 -0
  41. package/dist/components/form-select-search/FormSelectSearch.vue.d.ts +272 -0
  42. package/dist/components/form-select-search/FormSelectSearch.vue.d.ts.map +1 -0
  43. package/dist/components/form-select-search/FormSelectSearchEntry.vue.d.ts +40 -0
  44. package/dist/components/form-select-search/FormSelectSearchEntry.vue.d.ts.map +1 -0
  45. package/dist/components/form-select-search/index.d.ts +6 -0
  46. package/dist/components/form-select-search/index.d.ts.map +1 -0
  47. package/dist/components/form-select-search/type.d.ts +10 -0
  48. package/dist/components/form-select-search/type.d.ts.map +1 -0
  49. package/dist/components/form-slider/FormSlider.vue.d.ts +227 -0
  50. package/dist/components/form-slider/FormSlider.vue.d.ts.map +1 -0
  51. package/dist/components/form-slider/index.d.ts +5 -0
  52. package/dist/components/form-slider/index.d.ts.map +1 -0
  53. package/dist/components/form-switch/FormSwitch.vue.d.ts +204 -0
  54. package/dist/components/form-switch/FormSwitch.vue.d.ts.map +1 -0
  55. package/dist/components/form-switch/index.d.ts +5 -0
  56. package/dist/components/form-switch/index.d.ts.map +1 -0
  57. package/dist/components/form-tags/FormTags.vue.d.ts +255 -0
  58. package/dist/components/form-tags/FormTags.vue.d.ts.map +1 -0
  59. package/dist/components/form-tags/index.d.ts +5 -0
  60. package/dist/components/form-tags/index.d.ts.map +1 -0
  61. package/dist/components/form-textarea/FormTextarea.vue.d.ts +89 -0
  62. package/dist/components/form-textarea/FormTextarea.vue.d.ts.map +1 -0
  63. package/dist/components/form-textarea/index.d.ts +5 -0
  64. package/dist/components/form-textarea/index.d.ts.map +1 -0
  65. package/dist/components/index.d.ts +18 -0
  66. package/dist/components/index.d.ts.map +1 -0
  67. package/dist/components/type.d.ts +17 -0
  68. package/dist/components/type.d.ts.map +1 -0
  69. package/dist/components/validation-group/ValidationGroup.vue.d.ts +119 -0
  70. package/dist/components/validation-group/ValidationGroup.vue.d.ts.map +1 -0
  71. package/dist/components/validation-group/index.d.ts +5 -0
  72. package/dist/components/validation-group/index.d.ts.map +1 -0
  73. package/dist/composables/index.d.ts +2 -0
  74. package/dist/composables/index.d.ts.map +1 -0
  75. package/dist/composables/use-submit-button.d.ts +63 -0
  76. package/dist/composables/use-submit-button.d.ts.map +1 -0
  77. package/dist/index.d.ts +24 -0
  78. package/dist/index.d.ts.map +1 -0
  79. package/dist/index.mjs +1764 -0
  80. package/dist/index.mjs.map +1 -0
  81. package/dist/style.css +791 -0
  82. package/dist/type.d.ts +3 -0
  83. package/dist/type.d.ts.map +1 -0
  84. package/dist/types/index.d.ts +2 -0
  85. package/dist/types/index.d.ts.map +1 -0
  86. package/dist/types/option.d.ts +40 -0
  87. package/dist/types/option.d.ts.map +1 -0
  88. package/dist/vue.d.ts +20 -0
  89. package/dist/vue.d.ts.map +1 -0
  90. package/package.json +68 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormRadio.vue.d.ts","sourceRoot":"","sources":["../../../src/components/form-radio/FormRadio.vue"],"names":[],"mappings":"AA6IA,OAAO,KAAK,EACR,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EAChB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAOvE,MAAM,MAAM,qBAAqB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,OAAO,QAAQ,aAAa,CAAC;IACzB,UAAU,aAAa;QACnB,SAAS,CAAC,EAAE,sBAAsB,CAAC,qBAAqB,CAAC,CAAC;KAC7D;IACD,UAAU,iBAAiB;QACvB,SAAS,CAAC,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;KACzD;CACJ;AAED,eAAO,MAAM,sBAAsB,EAAE,wBAAwB,CAAC,qBAAqB,CAWlF,CAAC;AAIF,MAAM,MAAM,uBAAuB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACtC,KAAK,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,QAAA,MAAM,cAAc;IAChB,2DAA2D;;cAEN,QAAQ,CAAC,eAAe,CAAC;;;IAG9E,sEAAsE;;;;;IAEtE,mDAAmD;;;;;IAEnD,0DAA0D;;;;;IAE1D,mGAAmG;;;;;IAEnG,6DAA6D;;;;;IAE7D,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;;;IACnF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;CAC1D,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC,OAAO,cAAc,CAAC,CAAC;wBAEtD,OAAO,YAAY;AAAxC,wBAAyC;AAQzC,QAAA,MAAM,YAAY;IA/Bd,2DAA2D;;cAEN,QAAQ,CAAC,eAAe,CAAC;;;IAG9E,sEAAsE;;;;;IAEtE,mDAAmD;;;;;IAEnD,0DAA0D;;;;;IAE1D,mGAAmG;;;;;IAEnG,6DAA6D;;;;;IAE7D,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;;;IACnF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;;;;IAlBvD,2DAA2D;;cAEN,QAAQ,CAAC,eAAe,CAAC;;;IAG9E,sEAAsE;;;;;IAEtE,mDAAmD;;;;;IAEnD,0DAA0D;;;;;IAE1D,mGAAmG;;;;;IAEnG,6DAA6D;;;;;IAE7D,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;;;IACnF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;;;;;;;;;;WAkB5C,uBAAuB;eACnB,2BAA2B;yEA2C5C,CAAC"}
@@ -0,0 +1,5 @@
1
+ import FormRadio from './FormRadio.vue';
2
+ export { FormRadio as VCFormRadio };
3
+ export { formRadioThemeDefaults } from './FormRadio.vue';
4
+ export type { FormRadioProps, FormRadioThemeClasses, FormRadioDefaults, FormRadioLabelSlotProps, FormRadioIndicatorSlotProps, } from './FormRadio.vue';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/form-radio/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAE,SAAS,IAAI,WAAW,EAAE,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,YAAY,EACR,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,2BAA2B,GAC9B,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,172 @@
1
+ import type { ComponentThemeDefinition, ThemeClassesOverride, ThemeElementDefinition, VariantValues } from '@vuecs/core';
2
+ import type { AcceptableValue } from 'reka-ui';
3
+ import type { ExtractPublicPropTypes, PropType } from 'vue';
4
+ import type { FormOption } from '../../types/option';
5
+ export type FormRadioGroupThemeClasses = {
6
+ root: string;
7
+ };
8
+ declare module '@vuecs/core' {
9
+ interface ThemeElements {
10
+ formRadioGroup?: ThemeElementDefinition<FormRadioGroupThemeClasses>;
11
+ }
12
+ }
13
+ export declare const formRadioGroupThemeDefaults: ComponentThemeDefinition<FormRadioGroupThemeClasses>;
14
+ export type FormRadioGroupOrientation = 'vertical' | 'horizontal';
15
+ declare const formRadioGroupProps: {
16
+ /** Controlled selected value. */
17
+ modelValue: {
18
+ type: PropType<AcceptableValue | undefined>;
19
+ default: any;
20
+ };
21
+ /** Optional declarative shorthand — when set, renders one `<VCFormRadio>` per option. Mutually exclusive with the default slot. */
22
+ options: {
23
+ type: PropType<FormOption[]>;
24
+ default: any;
25
+ };
26
+ /** Disables every radio in the group. */
27
+ disabled: {
28
+ type: BooleanConstructor;
29
+ default: boolean;
30
+ };
31
+ /** Marks the group as required for native form validation. */
32
+ required: {
33
+ type: BooleanConstructor;
34
+ default: boolean;
35
+ };
36
+ /** Form-field name for HTML form submission. */
37
+ name: {
38
+ type: StringConstructor;
39
+ default: any;
40
+ };
41
+ /** Vuecs convention: vertical-stacked layout (Reka leaves this unset; vuecs styles the column variant in `vc-form-radio-group`). */
42
+ orientation: {
43
+ type: PropType<FormRadioGroupOrientation>;
44
+ default: string;
45
+ };
46
+ /** When `true`, arrow-key navigation wraps from last to first item. */
47
+ loop: {
48
+ type: BooleanConstructor;
49
+ default: boolean;
50
+ };
51
+ /** Theme-class overrides for this component instance. */
52
+ themeClass: {
53
+ type: PropType<ThemeClassesOverride<FormRadioGroupThemeClasses>>;
54
+ default: any;
55
+ };
56
+ /** Theme variant values for this component instance. */
57
+ themeVariant: {
58
+ type: PropType<VariantValues>;
59
+ default: any;
60
+ };
61
+ };
62
+ export type FormRadioGroupProps = ExtractPublicPropTypes<typeof formRadioGroupProps>;
63
+ declare const _default: typeof __VLS_export;
64
+ export default _default;
65
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
66
+ /** Controlled selected value. */
67
+ modelValue: {
68
+ type: PropType<AcceptableValue | undefined>;
69
+ default: any;
70
+ };
71
+ /** Optional declarative shorthand — when set, renders one `<VCFormRadio>` per option. Mutually exclusive with the default slot. */
72
+ options: {
73
+ type: PropType<FormOption[]>;
74
+ default: any;
75
+ };
76
+ /** Disables every radio in the group. */
77
+ disabled: {
78
+ type: BooleanConstructor;
79
+ default: boolean;
80
+ };
81
+ /** Marks the group as required for native form validation. */
82
+ required: {
83
+ type: BooleanConstructor;
84
+ default: boolean;
85
+ };
86
+ /** Form-field name for HTML form submission. */
87
+ name: {
88
+ type: StringConstructor;
89
+ default: any;
90
+ };
91
+ /** Vuecs convention: vertical-stacked layout (Reka leaves this unset; vuecs styles the column variant in `vc-form-radio-group`). */
92
+ orientation: {
93
+ type: PropType<FormRadioGroupOrientation>;
94
+ default: string;
95
+ };
96
+ /** When `true`, arrow-key navigation wraps from last to first item. */
97
+ loop: {
98
+ type: BooleanConstructor;
99
+ default: boolean;
100
+ };
101
+ /** Theme-class overrides for this component instance. */
102
+ themeClass: {
103
+ type: PropType<ThemeClassesOverride<FormRadioGroupThemeClasses>>;
104
+ default: any;
105
+ };
106
+ /** Theme variant values for this component instance. */
107
+ themeVariant: {
108
+ type: PropType<VariantValues>;
109
+ default: any;
110
+ };
111
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
112
+ [key: string]: any;
113
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
114
+ /** Controlled selected value. */
115
+ modelValue: {
116
+ type: PropType<AcceptableValue | undefined>;
117
+ default: any;
118
+ };
119
+ /** Optional declarative shorthand — when set, renders one `<VCFormRadio>` per option. Mutually exclusive with the default slot. */
120
+ options: {
121
+ type: PropType<FormOption[]>;
122
+ default: any;
123
+ };
124
+ /** Disables every radio in the group. */
125
+ disabled: {
126
+ type: BooleanConstructor;
127
+ default: boolean;
128
+ };
129
+ /** Marks the group as required for native form validation. */
130
+ required: {
131
+ type: BooleanConstructor;
132
+ default: boolean;
133
+ };
134
+ /** Form-field name for HTML form submission. */
135
+ name: {
136
+ type: StringConstructor;
137
+ default: any;
138
+ };
139
+ /** Vuecs convention: vertical-stacked layout (Reka leaves this unset; vuecs styles the column variant in `vc-form-radio-group`). */
140
+ orientation: {
141
+ type: PropType<FormRadioGroupOrientation>;
142
+ default: string;
143
+ };
144
+ /** When `true`, arrow-key navigation wraps from last to first item. */
145
+ loop: {
146
+ type: BooleanConstructor;
147
+ default: boolean;
148
+ };
149
+ /** Theme-class overrides for this component instance. */
150
+ themeClass: {
151
+ type: PropType<ThemeClassesOverride<FormRadioGroupThemeClasses>>;
152
+ default: any;
153
+ };
154
+ /** Theme variant values for this component instance. */
155
+ themeVariant: {
156
+ type: PropType<VariantValues>;
157
+ default: any;
158
+ };
159
+ }>> & Readonly<{
160
+ "onUpdate:modelValue"?: (...args: any[]) => any;
161
+ }>, {
162
+ modelValue: AcceptableValue;
163
+ disabled: boolean;
164
+ required: boolean;
165
+ name: string;
166
+ themeClass: ThemeClassesOverride<FormRadioGroupThemeClasses>;
167
+ themeVariant: VariantValues;
168
+ orientation: FormRadioGroupOrientation;
169
+ loop: boolean;
170
+ options: FormOption[];
171
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
172
+ //# sourceMappingURL=FormRadioGroup.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormRadioGroup.vue.d.ts","sourceRoot":"","sources":["../../../src/components/form-radio-group/FormRadioGroup.vue"],"names":[],"mappings":"AA2GA,OAAO,KAAK,EACR,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EAChB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAM5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,MAAM,MAAM,0BAA0B,GAAG;IACrC,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,OAAO,QAAQ,aAAa,CAAC;IACzB,UAAU,aAAa;QACnB,cAAc,CAAC,EAAE,sBAAsB,CAAC,0BAA0B,CAAC,CAAC;KACvE;CACJ;AAED,eAAO,MAAM,2BAA2B,EAAE,wBAAwB,CAAC,0BAA0B,CAAgD,CAAC;AAE9I,MAAM,MAAM,yBAAyB,GAAG,UAAU,GAAG,YAAY,CAAC;AAElE,QAAA,MAAM,mBAAmB;IACrB,iCAAiC;;cAEoB,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAC;;;IAG1F,mIAAmI;;cACzG,QAAQ,CAAC,UAAU,EAAE,CAAC;;;IAChD,yCAAyC;;;;;IAEzC,8DAA8D;;;;;IAE9D,gDAAgD;;;;;IAEhD,oIAAoI;;cAEhH,QAAQ,CAAC,yBAAyB,CAAC;;;IAGvD,uEAAuE;;;;;IAEvE,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;;;IACxF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;CAC1D,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,OAAO,mBAAmB,CAAC,CAAC;wBAEhE,OAAO,YAAY;AAAxC,wBAAyC;AAQzC,QAAA,MAAM,YAAY;IApCd,iCAAiC;;cAEoB,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAC;;;IAG1F,mIAAmI;;cACzG,QAAQ,CAAC,UAAU,EAAE,CAAC;;;IAChD,yCAAyC;;;;;IAEzC,8DAA8D;;;;;IAE9D,gDAAgD;;;;;IAEhD,oIAAoI;;cAEhH,QAAQ,CAAC,yBAAyB,CAAC;;;IAGvD,uEAAuE;;;;;IAEvE,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;;;IACxF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;;;;IAvBvD,iCAAiC;;cAEoB,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAC;;;IAG1F,mIAAmI;;cACzG,QAAQ,CAAC,UAAU,EAAE,CAAC;;;IAChD,yCAAyC;;;;;IAEzC,8DAA8D;;;;;IAE9D,gDAAgD;;;;;IAEhD,oIAAoI;;cAEhH,QAAQ,CAAC,yBAAyB,CAAC;;;IAGvD,uEAAuE;;;;;IAEvE,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;;;IACxF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;4EAoDzD,CAAC"}
@@ -0,0 +1,5 @@
1
+ import FormRadioGroup from './FormRadioGroup.vue';
2
+ export { FormRadioGroup as VCFormRadioGroup };
3
+ export { formRadioGroupThemeDefaults } from './FormRadioGroup.vue';
4
+ export type { FormRadioGroupProps, FormRadioGroupThemeClasses, FormRadioGroupOrientation } from './FormRadioGroup.vue';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/form-radio-group/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,cAAc,IAAI,gBAAgB,EAAE,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,172 @@
1
+ import type { ComponentDefaultValues, ComponentThemeDefinition, ThemeClassesOverride, ThemeElementDefinition, VariantValues } from '@vuecs/core';
2
+ import type { AcceptableValue } from 'reka-ui';
3
+ import type { ExtractPublicPropTypes, PropType, VNode } from 'vue';
4
+ import { type FormOptionItems } from '../../types/option';
5
+ export type FormSelectThemeClasses = {
6
+ trigger: string;
7
+ value: string;
8
+ icon: string;
9
+ content: string;
10
+ viewport: string;
11
+ item: string;
12
+ itemIndicator: string;
13
+ group: string;
14
+ groupLabel: string;
15
+ separator: string;
16
+ };
17
+ export type FormSelectDefaults = {
18
+ /**
19
+ * Placeholder text rendered inside the trigger when no option is selected.
20
+ */
21
+ placeholder: string;
22
+ };
23
+ declare module '@vuecs/core' {
24
+ interface ThemeElements {
25
+ formSelect?: ThemeElementDefinition<FormSelectThemeClasses>;
26
+ }
27
+ interface ComponentDefaults {
28
+ formSelect?: ComponentDefaultValues<FormSelectDefaults>;
29
+ }
30
+ }
31
+ export declare const formSelectThemeDefaults: ComponentThemeDefinition<FormSelectThemeClasses>;
32
+ declare const formSelectProps: {
33
+ /** Controlled selected value. */
34
+ modelValue: {
35
+ type: PropType<AcceptableValue | undefined>;
36
+ default: any;
37
+ };
38
+ /** Options rendered inside the dropdown (flat list or grouped). */
39
+ options: {
40
+ type: PropType<FormOptionItems>;
41
+ required: boolean;
42
+ };
43
+ /** Placeholder text rendered inside the trigger when no option is selected. Falls back to the global `formSelect.placeholder` default. */
44
+ placeholder: {
45
+ type: StringConstructor;
46
+ default: any;
47
+ };
48
+ /** When `true`, blocks user interaction with the trigger. */
49
+ disabled: {
50
+ type: BooleanConstructor;
51
+ default: boolean;
52
+ };
53
+ /** `name` attribute submitted with the owning form. */
54
+ name: {
55
+ type: StringConstructor;
56
+ default: any;
57
+ };
58
+ /** When `true`, the field must be set before the owning form can submit. */
59
+ required: {
60
+ type: BooleanConstructor;
61
+ default: boolean;
62
+ };
63
+ /** Theme-class overrides for this component instance. */
64
+ themeClass: {
65
+ type: PropType<ThemeClassesOverride<FormSelectThemeClasses>>;
66
+ default: any;
67
+ };
68
+ /** Theme variant values for this component instance. */
69
+ themeVariant: {
70
+ type: PropType<VariantValues>;
71
+ default: any;
72
+ };
73
+ };
74
+ export type FormSelectProps = ExtractPublicPropTypes<typeof formSelectProps>;
75
+ declare const _default: typeof __VLS_export;
76
+ export default _default;
77
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
78
+ /** Controlled selected value. */
79
+ modelValue: {
80
+ type: PropType<AcceptableValue | undefined>;
81
+ default: any;
82
+ };
83
+ /** Options rendered inside the dropdown (flat list or grouped). */
84
+ options: {
85
+ type: PropType<FormOptionItems>;
86
+ required: boolean;
87
+ };
88
+ /** Placeholder text rendered inside the trigger when no option is selected. Falls back to the global `formSelect.placeholder` default. */
89
+ placeholder: {
90
+ type: StringConstructor;
91
+ default: any;
92
+ };
93
+ /** When `true`, blocks user interaction with the trigger. */
94
+ disabled: {
95
+ type: BooleanConstructor;
96
+ default: boolean;
97
+ };
98
+ /** `name` attribute submitted with the owning form. */
99
+ name: {
100
+ type: StringConstructor;
101
+ default: any;
102
+ };
103
+ /** When `true`, the field must be set before the owning form can submit. */
104
+ required: {
105
+ type: BooleanConstructor;
106
+ default: boolean;
107
+ };
108
+ /** Theme-class overrides for this component instance. */
109
+ themeClass: {
110
+ type: PropType<ThemeClassesOverride<FormSelectThemeClasses>>;
111
+ default: any;
112
+ };
113
+ /** Theme variant values for this component instance. */
114
+ themeVariant: {
115
+ type: PropType<VariantValues>;
116
+ default: any;
117
+ };
118
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
119
+ [key: string]: any;
120
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
121
+ /** Controlled selected value. */
122
+ modelValue: {
123
+ type: PropType<AcceptableValue | undefined>;
124
+ default: any;
125
+ };
126
+ /** Options rendered inside the dropdown (flat list or grouped). */
127
+ options: {
128
+ type: PropType<FormOptionItems>;
129
+ required: boolean;
130
+ };
131
+ /** Placeholder text rendered inside the trigger when no option is selected. Falls back to the global `formSelect.placeholder` default. */
132
+ placeholder: {
133
+ type: StringConstructor;
134
+ default: any;
135
+ };
136
+ /** When `true`, blocks user interaction with the trigger. */
137
+ disabled: {
138
+ type: BooleanConstructor;
139
+ default: boolean;
140
+ };
141
+ /** `name` attribute submitted with the owning form. */
142
+ name: {
143
+ type: StringConstructor;
144
+ default: any;
145
+ };
146
+ /** When `true`, the field must be set before the owning form can submit. */
147
+ required: {
148
+ type: BooleanConstructor;
149
+ default: boolean;
150
+ };
151
+ /** Theme-class overrides for this component instance. */
152
+ themeClass: {
153
+ type: PropType<ThemeClassesOverride<FormSelectThemeClasses>>;
154
+ default: any;
155
+ };
156
+ /** Theme variant values for this component instance. */
157
+ themeVariant: {
158
+ type: PropType<VariantValues>;
159
+ default: any;
160
+ };
161
+ }>> & Readonly<{
162
+ "onUpdate:modelValue"?: (...args: any[]) => any;
163
+ }>, {
164
+ modelValue: AcceptableValue;
165
+ disabled: boolean;
166
+ required: boolean;
167
+ name: string;
168
+ themeClass: ThemeClassesOverride<FormSelectThemeClasses>;
169
+ themeVariant: VariantValues;
170
+ placeholder: string;
171
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
172
+ //# sourceMappingURL=FormSelect.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormSelect.vue.d.ts","sourceRoot":"","sources":["../../../src/components/form-select/FormSelect.vue"],"names":[],"mappings":"AAqMA,OAAO,KAAK,EACR,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EAChB,MAAM,aAAa,CAAC;AAerB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EACR,sBAAsB,EACtB,QAAQ,EACR,KAAK,EAER,MAAM,KAAK,CAAC;AAMb,OAAO,EAGH,KAAK,eAAe,EAEvB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,sBAAsB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC7B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,OAAO,QAAQ,aAAa,CAAC;IACzB,UAAU,aAAa;QACnB,UAAU,CAAC,EAAE,sBAAsB,CAAC,sBAAsB,CAAC,CAAC;KAC/D;IACD,UAAU,iBAAiB;QACvB,UAAU,CAAC,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;KAC3D;CACJ;AAED,eAAO,MAAM,uBAAuB,EAAE,wBAAwB,CAAC,sBAAsB,CAapF,CAAC;AAmCF,QAAA,MAAM,eAAe;IACjB,iCAAiC;;cAEoB,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAC;;;IAG1F,mEAAmE;;cAEhD,QAAQ,CAAC,eAAe,CAAC;;;IAG5C,0IAA0I;;;;;IAE1I,6DAA6D;;;;;IAE7D,uDAAuD;;;;;IAEvD,4EAA4E;;;;;IAE5E,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;;;IACpF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;CAC1D,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,sBAAsB,CAAC,OAAO,eAAe,CAAC,CAAC;wBAExD,OAAO,YAAY;AAAxC,wBAAyC;AAQzC,QAAA,MAAM,YAAY;IAlCd,iCAAiC;;cAEoB,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAC;;;IAG1F,mEAAmE;;cAEhD,QAAQ,CAAC,eAAe,CAAC;;;IAG5C,0IAA0I;;;;;IAE1I,6DAA6D;;;;;IAE7D,uDAAuD;;;;;IAEvD,4EAA4E;;;;;IAE5E,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;;;IACpF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;;;;IArBvD,iCAAiC;;cAEoB,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAC;;;IAG1F,mEAAmE;;cAEhD,QAAQ,CAAC,eAAe,CAAC;;;IAG5C,0IAA0I;;;;;IAE1I,6DAA6D;;;;;IAE7D,uDAAuD;;;;;IAEvD,4EAA4E;;;;;IAE5E,yDAAyD;;cAC3B,QAAQ,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;;;IACpF,wDAAwD;;cACxB,QAAQ,CAAC,aAAa,CAAC;;;;;;;;;;;;;4EA0DzD,CAAC"}
@@ -0,0 +1,5 @@
1
+ import FormSelect from './FormSelect.vue';
2
+ export { FormSelect as VCFormSelect };
3
+ export { formSelectThemeDefaults } from './FormSelect.vue';
4
+ export type { FormSelectProps, FormSelectThemeClasses, FormSelectDefaults } from './FormSelect.vue';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/form-select/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAE1C,OAAO,EAAE,UAAU,IAAI,YAAY,EAAE,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,272 @@
1
+ import type { ComponentThemeDefinition, ThemeClassesOverride, ThemeElementDefinition, VariantValues } from '@vuecs/core';
2
+ import type { AcceptableValue } from 'reka-ui';
3
+ import type { ExtractPublicPropTypes, PropType } from 'vue';
4
+ import type { FormOption } from '../../types/option';
5
+ export type FormSelectSearchThemeClasses = {
6
+ root: string;
7
+ input: string;
8
+ content: string;
9
+ item: string;
10
+ itemActive: string;
11
+ itemCurrent: string;
12
+ itemDescription: string;
13
+ selected: string;
14
+ selectedItem: string;
15
+ selectedItemRemove: string;
16
+ };
17
+ declare module '@vuecs/core' {
18
+ interface ThemeElements {
19
+ formSelectSearch?: ThemeElementDefinition<FormSelectSearchThemeClasses>;
20
+ }
21
+ }
22
+ export declare const formSelectSearchThemeDefaults: ComponentThemeDefinition<FormSelectSearchThemeClasses>;
23
+ declare const formSelectSearchProps: {
24
+ /** Controlled selected value(s) — single value or array for multi-select. */
25
+ modelValue: {
26
+ type: PropType<AcceptableValue | AcceptableValue[] | undefined>;
27
+ default: any;
28
+ };
29
+ /** Options shown in the dropdown. */
30
+ options: {
31
+ type: PropType<FormOption[]>;
32
+ default: () => any[];
33
+ };
34
+ /** Placeholder shown in the search input when empty. */
35
+ placeholder: {
36
+ type: StringConstructor;
37
+ required: boolean;
38
+ default: string;
39
+ };
40
+ /** When `true`, blocks user interaction with the input and chips. */
41
+ disabled: {
42
+ type: BooleanConstructor;
43
+ required: boolean;
44
+ default: boolean;
45
+ };
46
+ /** Initial page size for the virtualised dropdown list. */
47
+ maxItems: {
48
+ type: NumberConstructor;
49
+ required: boolean;
50
+ default: number;
51
+ };
52
+ /** Number of items to append per infinite-scroll step. */
53
+ scrollDistance: {
54
+ type: NumberConstructor;
55
+ required: boolean;
56
+ default: number;
57
+ };
58
+ /**
59
+ * Whether to close the dropdown after a pick. When unset:
60
+ * - single-select closes (matches the native `<select>` mental model)
61
+ * - multi-select stays open (so the user can pick several without re-opening)
62
+ *
63
+ * Set explicitly (`true` / `false`) to override the mode-default.
64
+ */
65
+ closeOnSelect: {
66
+ type: PropType<boolean | undefined>;
67
+ default: any;
68
+ };
69
+ /** Theme-class overrides for this component instance. */
70
+ themeClass: {
71
+ type: PropType<ThemeClassesOverride<FormSelectSearchThemeClasses>>;
72
+ default: any;
73
+ };
74
+ /** Theme variant values for this component instance. */
75
+ themeVariant: {
76
+ type: PropType<VariantValues>;
77
+ default: any;
78
+ };
79
+ };
80
+ export type FormSelectSearchProps = ExtractPublicPropTypes<typeof formSelectSearchProps>;
81
+ declare const _default: typeof __VLS_export;
82
+ export default _default;
83
+ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
84
+ /** Controlled selected value(s) — single value or array for multi-select. */
85
+ modelValue: {
86
+ type: PropType<AcceptableValue | AcceptableValue[] | undefined>;
87
+ default: any;
88
+ };
89
+ /** Options shown in the dropdown. */
90
+ options: {
91
+ type: PropType<FormOption[]>;
92
+ default: () => any[];
93
+ };
94
+ /** Placeholder shown in the search input when empty. */
95
+ placeholder: {
96
+ type: StringConstructor;
97
+ required: boolean;
98
+ default: string;
99
+ };
100
+ /** When `true`, blocks user interaction with the input and chips. */
101
+ disabled: {
102
+ type: BooleanConstructor;
103
+ required: boolean;
104
+ default: boolean;
105
+ };
106
+ /** Initial page size for the virtualised dropdown list. */
107
+ maxItems: {
108
+ type: NumberConstructor;
109
+ required: boolean;
110
+ default: number;
111
+ };
112
+ /** Number of items to append per infinite-scroll step. */
113
+ scrollDistance: {
114
+ type: NumberConstructor;
115
+ required: boolean;
116
+ default: number;
117
+ };
118
+ /**
119
+ * Whether to close the dropdown after a pick. When unset:
120
+ * - single-select closes (matches the native `<select>` mental model)
121
+ * - multi-select stays open (so the user can pick several without re-opening)
122
+ *
123
+ * Set explicitly (`true` / `false`) to override the mode-default.
124
+ */
125
+ closeOnSelect: {
126
+ type: PropType<boolean | undefined>;
127
+ default: any;
128
+ };
129
+ /** Theme-class overrides for this component instance. */
130
+ themeClass: {
131
+ type: PropType<ThemeClassesOverride<FormSelectSearchThemeClasses>>;
132
+ default: any;
133
+ };
134
+ /** Theme variant values for this component instance. */
135
+ themeVariant: {
136
+ type: PropType<VariantValues>;
137
+ default: any;
138
+ };
139
+ }>, {
140
+ theme: import("vue").ComputedRef<FormSelectSearchThemeClasses>;
141
+ listElement: import("vue").Ref<HTMLElement, HTMLElement>;
142
+ inputElement: import("vue").Ref<HTMLElement, HTMLElement>;
143
+ isMulti: import("vue").ComputedRef<boolean>;
144
+ toggle: (option: FormOption) => void;
145
+ currentIndex: import("vue").Ref<number, number>;
146
+ q: import("vue").Ref<string, string>;
147
+ items: import("vue").Ref<{
148
+ value: AcceptableValue;
149
+ label: string;
150
+ disabled?: boolean;
151
+ description?: string;
152
+ icon?: string;
153
+ meta?: Record<string, unknown>;
154
+ }[], FormOption[] | {
155
+ value: AcceptableValue;
156
+ label: string;
157
+ disabled?: boolean;
158
+ description?: string;
159
+ icon?: string;
160
+ meta?: Record<string, unknown>;
161
+ }[]>;
162
+ selected: import("vue").Ref<{
163
+ value: AcceptableValue;
164
+ label: string;
165
+ disabled?: boolean;
166
+ description?: string;
167
+ icon?: string;
168
+ meta?: Record<string, unknown>;
169
+ }[], FormOption[] | {
170
+ value: AcceptableValue;
171
+ label: string;
172
+ disabled?: boolean;
173
+ description?: string;
174
+ icon?: string;
175
+ meta?: Record<string, unknown>;
176
+ }[]>;
177
+ display: () => void;
178
+ onFocus: () => void;
179
+ onKeyUp: (ev: globalThis.KeyboardEvent) => void;
180
+ onKeyDown: (ev: globalThis.KeyboardEvent) => void;
181
+ isDisplayed: import("vue").Ref<boolean, boolean>;
182
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
183
+ /** Controlled selected value(s) — single value or array for multi-select. */
184
+ modelValue: {
185
+ type: PropType<AcceptableValue | AcceptableValue[] | undefined>;
186
+ default: any;
187
+ };
188
+ /** Options shown in the dropdown. */
189
+ options: {
190
+ type: PropType<FormOption[]>;
191
+ default: () => any[];
192
+ };
193
+ /** Placeholder shown in the search input when empty. */
194
+ placeholder: {
195
+ type: StringConstructor;
196
+ required: boolean;
197
+ default: string;
198
+ };
199
+ /** When `true`, blocks user interaction with the input and chips. */
200
+ disabled: {
201
+ type: BooleanConstructor;
202
+ required: boolean;
203
+ default: boolean;
204
+ };
205
+ /** Initial page size for the virtualised dropdown list. */
206
+ maxItems: {
207
+ type: NumberConstructor;
208
+ required: boolean;
209
+ default: number;
210
+ };
211
+ /** Number of items to append per infinite-scroll step. */
212
+ scrollDistance: {
213
+ type: NumberConstructor;
214
+ required: boolean;
215
+ default: number;
216
+ };
217
+ /**
218
+ * Whether to close the dropdown after a pick. When unset:
219
+ * - single-select closes (matches the native `<select>` mental model)
220
+ * - multi-select stays open (so the user can pick several without re-opening)
221
+ *
222
+ * Set explicitly (`true` / `false`) to override the mode-default.
223
+ */
224
+ closeOnSelect: {
225
+ type: PropType<boolean | undefined>;
226
+ default: any;
227
+ };
228
+ /** Theme-class overrides for this component instance. */
229
+ themeClass: {
230
+ type: PropType<ThemeClassesOverride<FormSelectSearchThemeClasses>>;
231
+ default: any;
232
+ };
233
+ /** Theme variant values for this component instance. */
234
+ themeVariant: {
235
+ type: PropType<VariantValues>;
236
+ default: any;
237
+ };
238
+ }>> & Readonly<{
239
+ "onUpdate:modelValue"?: (...args: any[]) => any;
240
+ onChange?: (...args: any[]) => any;
241
+ }>, {
242
+ modelValue: AcceptableValue | AcceptableValue[];
243
+ disabled: boolean;
244
+ themeClass: ThemeClassesOverride<FormSelectSearchThemeClasses>;
245
+ themeVariant: VariantValues;
246
+ placeholder: string;
247
+ options: FormOption[];
248
+ maxItems: number;
249
+ scrollDistance: number;
250
+ closeOnSelect: boolean;
251
+ }, {}, {
252
+ FormSelectSearchEntry: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
253
+ entry: {
254
+ type: PropType<FormOption>;
255
+ required: boolean;
256
+ };
257
+ selected: {
258
+ type: PropType<FormOption[]>;
259
+ };
260
+ }>, {
261
+ active: import("vue").ComputedRef<boolean>;
262
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
263
+ entry: {
264
+ type: PropType<FormOption>;
265
+ required: boolean;
266
+ };
267
+ selected: {
268
+ type: PropType<FormOption[]>;
269
+ };
270
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
271
+ }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
272
+ //# sourceMappingURL=FormSelectSearch.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormSelectSearch.vue.d.ts","sourceRoot":"","sources":["../../../src/components/form-select-search/FormSelectSearch.vue"],"names":[],"mappings":"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"}