@quidgest/ui 0.11.0 → 0.12.1

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 (200) hide show
  1. package/dist/manifest/components.json +24 -0
  2. package/dist/ui.css +27 -2
  3. package/dist/ui.esm.js +700 -654
  4. package/dist/ui.js +8 -5
  5. package/dist/ui.min.css +1 -1
  6. package/dist/ui.min.js +147 -133
  7. package/dist/ui.scss +28 -3
  8. package/esm/components/QButton/QButton.d.ts +92 -0
  9. package/esm/components/QButton/QButton.d.ts.map +1 -0
  10. package/esm/components/QButton/QButton.vue.js +87 -0
  11. package/esm/components/QButton/QButton.vue2.js +4 -0
  12. package/esm/components/QButton/index.d.ts +4 -0
  13. package/esm/components/QButton/index.d.ts.map +1 -0
  14. package/esm/components/QButtonGroup/QButtonGroup.d.ts +51 -0
  15. package/esm/components/QButtonGroup/QButtonGroup.d.ts.map +1 -0
  16. package/esm/components/QButtonGroup/QButtonGroup.vue.js +41 -0
  17. package/esm/components/QButtonGroup/QButtonGroup.vue2.js +4 -0
  18. package/esm/components/QButtonGroup/index.d.ts +4 -0
  19. package/esm/components/QButtonGroup/index.d.ts.map +1 -0
  20. package/esm/components/QButtonToggle/QButtonToggle.d.ts +81 -0
  21. package/esm/components/QButtonToggle/QButtonToggle.d.ts.map +1 -0
  22. package/esm/components/QButtonToggle/QButtonToggle.vue.js +58 -0
  23. package/esm/components/QButtonToggle/QButtonToggle.vue2.js +4 -0
  24. package/esm/components/QButtonToggle/index.d.ts +4 -0
  25. package/esm/components/QButtonToggle/index.d.ts.map +1 -0
  26. package/esm/components/QCombobox/QCombobox.d.ts +524 -0
  27. package/esm/components/QCombobox/QCombobox.d.ts.map +1 -0
  28. package/esm/components/QCombobox/QCombobox.vue.js +381 -0
  29. package/esm/components/QCombobox/QCombobox.vue2.js +4 -0
  30. package/esm/components/QCombobox/index.d.ts +4 -0
  31. package/esm/components/QCombobox/index.d.ts.map +1 -0
  32. package/esm/components/QField/QField.d.ts +89 -0
  33. package/esm/components/QField/QField.d.ts.map +1 -0
  34. package/esm/components/QField/QField.vue.js +81 -0
  35. package/esm/components/QField/QField.vue2.js +4 -0
  36. package/esm/components/QField/index.d.ts +5 -0
  37. package/esm/components/QField/index.d.ts.map +1 -0
  38. package/esm/components/QField/index.js +6 -0
  39. package/esm/components/QIcon/InlineSvg.d.ts +110 -0
  40. package/esm/components/QIcon/InlineSvg.d.ts.map +1 -0
  41. package/esm/components/QIcon/InlineSvg.js +139 -0
  42. package/esm/components/QIcon/QIcon.d.ts +50 -0
  43. package/esm/components/QIcon/QIcon.d.ts.map +1 -0
  44. package/esm/components/QIcon/QIcon.vue.js +36 -0
  45. package/esm/components/QIcon/QIcon.vue2.js +4 -0
  46. package/esm/components/QIcon/QIconFont.d.ts +57 -0
  47. package/esm/components/QIcon/QIconFont.d.ts.map +1 -0
  48. package/esm/components/QIcon/QIconFont.vue.js +29 -0
  49. package/esm/components/QIcon/QIconFont.vue2.js +4 -0
  50. package/esm/components/QIcon/QIconImg.d.ts +38 -0
  51. package/esm/components/QIcon/QIconImg.d.ts.map +1 -0
  52. package/esm/components/QIcon/QIconImg.vue.js +22 -0
  53. package/esm/components/QIcon/QIconImg.vue2.js +4 -0
  54. package/esm/components/QIcon/QIconSvg.d.ts +72 -0
  55. package/esm/components/QIcon/QIconSvg.d.ts.map +1 -0
  56. package/esm/components/QIcon/QIconSvg.vue.js +34 -0
  57. package/esm/components/QIcon/QIconSvg.vue2.js +4 -0
  58. package/esm/components/QIcon/index.d.ts +8 -0
  59. package/esm/components/QIcon/index.d.ts.map +1 -0
  60. package/esm/components/QIcon/index.js +15 -0
  61. package/esm/components/QInputGroup/QInputGroup.d.ts +85 -0
  62. package/esm/components/QInputGroup/QInputGroup.d.ts.map +1 -0
  63. package/esm/components/QInputGroup/QInputGroup.vue.js +79 -0
  64. package/esm/components/QInputGroup/QInputGroup.vue2.js +4 -0
  65. package/esm/components/QInputGroup/index.d.ts +4 -0
  66. package/esm/components/QInputGroup/index.d.ts.map +1 -0
  67. package/esm/components/QLineLoader/QLineLoader.d.ts +32 -0
  68. package/esm/components/QLineLoader/QLineLoader.d.ts.map +1 -0
  69. package/esm/components/QLineLoader/QLineLoader.vue.js +22 -0
  70. package/esm/components/QLineLoader/QLineLoader.vue2.js +4 -0
  71. package/esm/components/QLineLoader/index.d.ts +4 -0
  72. package/esm/components/QLineLoader/index.d.ts.map +1 -0
  73. package/esm/components/QList/QList.d.ts +159 -0
  74. package/esm/components/QList/QList.d.ts.map +1 -0
  75. package/esm/components/QList/QList.vue.js +187 -0
  76. package/esm/components/QList/QList.vue2.js +4 -0
  77. package/esm/components/QList/QListItem.d.ts +89 -0
  78. package/esm/components/QList/QListItem.d.ts.map +1 -0
  79. package/esm/components/QList/QListItem.vue.js +102 -0
  80. package/esm/components/QList/QListItem.vue2.js +4 -0
  81. package/esm/components/QList/QListItemGroup.d.ts +43 -0
  82. package/esm/components/QList/QListItemGroup.d.ts.map +1 -0
  83. package/esm/components/QList/QListItemGroup.vue.js +29 -0
  84. package/esm/components/QList/QListItemGroup.vue2.js +4 -0
  85. package/esm/components/QList/index.d.ts +7 -0
  86. package/esm/components/QList/index.d.ts.map +1 -0
  87. package/esm/components/QList/index.js +12 -0
  88. package/esm/components/QOverlay/QOverlay.d.ts +236 -0
  89. package/esm/components/QOverlay/QOverlay.d.ts.map +1 -0
  90. package/esm/components/QOverlay/QOverlay.vue.js +250 -0
  91. package/esm/components/QOverlay/QOverlay.vue2.js +4 -0
  92. package/esm/components/QOverlay/index.d.ts +4 -0
  93. package/esm/components/QOverlay/index.d.ts.map +1 -0
  94. package/esm/components/QOverlay/index.js +6 -0
  95. package/esm/components/QPopover/QPopover.d.ts +132 -0
  96. package/esm/components/QPopover/QPopover.d.ts.map +1 -0
  97. package/esm/components/QPopover/QPopover.vue.js +71 -0
  98. package/esm/components/QPopover/QPopover.vue2.js +4 -0
  99. package/esm/components/QPopover/index.d.ts +4 -0
  100. package/esm/components/QPopover/index.d.ts.map +1 -0
  101. package/esm/components/QSelect/QSelect.d.ts +265 -0
  102. package/esm/components/QSelect/QSelect.d.ts.map +1 -0
  103. package/esm/components/QSelect/QSelect.vue.js +317 -0
  104. package/esm/components/QSelect/QSelect.vue2.js +4 -0
  105. package/esm/components/QSelect/index.d.ts +4 -0
  106. package/esm/components/QSelect/index.d.ts.map +1 -0
  107. package/esm/components/QSkeletonLoader/QSkeletonLoader.d.ts +46 -0
  108. package/esm/components/QSkeletonLoader/QSkeletonLoader.d.ts.map +1 -0
  109. package/esm/components/QSkeletonLoader/QSkeletonLoader.vue.js +39 -0
  110. package/esm/components/QSkeletonLoader/QSkeletonLoader.vue2.js +4 -0
  111. package/esm/components/QSkeletonLoader/index.d.ts +4 -0
  112. package/esm/components/QSkeletonLoader/index.d.ts.map +1 -0
  113. package/esm/components/QSpinnerLoader/QSpinnerLoader.d.ts +39 -0
  114. package/esm/components/QSpinnerLoader/QSpinnerLoader.d.ts.map +1 -0
  115. package/esm/components/QSpinnerLoader/QSpinnerLoader.vue.js +26 -0
  116. package/esm/components/QSpinnerLoader/QSpinnerLoader.vue2.js +4 -0
  117. package/esm/components/QSpinnerLoader/index.d.ts +4 -0
  118. package/esm/components/QSpinnerLoader/index.d.ts.map +1 -0
  119. package/esm/components/QSpinnerLoader/index.js +6 -0
  120. package/esm/components/QTextField/QTextField.d.ts +162 -0
  121. package/esm/components/QTextField/QTextField.d.ts.map +1 -0
  122. package/esm/components/QTextField/QTextField.vue.js +99 -0
  123. package/esm/components/QTextField/QTextField.vue2.js +4 -0
  124. package/esm/components/QTextField/index.d.ts +4 -0
  125. package/esm/components/QTextField/index.d.ts.map +1 -0
  126. package/esm/components/QTextField/index.js +6 -0
  127. package/esm/components/QThemeProvider/QThemeProvider.d.ts +25 -0
  128. package/esm/components/QThemeProvider/QThemeProvider.d.ts.map +1 -0
  129. package/esm/components/QThemeProvider/QThemeProvider.vue.js +24 -0
  130. package/esm/components/QThemeProvider/QThemeProvider.vue2.js +4 -0
  131. package/esm/components/QThemeProvider/index.d.ts +4 -0
  132. package/esm/components/QThemeProvider/index.d.ts.map +1 -0
  133. package/esm/components/QTooltip/QTooltip.d.ts +189 -0
  134. package/esm/components/QTooltip/QTooltip.d.ts.map +1 -0
  135. package/esm/components/QTooltip/QTooltip.vue.js +74 -0
  136. package/esm/components/QTooltip/QTooltip.vue2.js +4 -0
  137. package/esm/components/QTooltip/index.d.ts +4 -0
  138. package/esm/components/QTooltip/index.d.ts.map +1 -0
  139. package/esm/components/index.d.ts +18 -0
  140. package/esm/components/index.d.ts.map +1 -0
  141. package/esm/components/index.js +46 -0
  142. package/esm/composables/defaults.d.ts +25 -0
  143. package/esm/composables/defaults.d.ts.map +1 -0
  144. package/esm/composables/defaults.js +33 -0
  145. package/esm/composables/index.d.ts +2 -0
  146. package/esm/composables/index.d.ts.map +1 -0
  147. package/esm/composables/overlay.d.ts +116 -0
  148. package/esm/composables/overlay.d.ts.map +1 -0
  149. package/esm/composables/overlay.js +142 -0
  150. package/esm/composables/theme.d.ts +18 -0
  151. package/esm/composables/theme.d.ts.map +1 -0
  152. package/esm/composables/theme.js +20 -0
  153. package/esm/composables/uid.d.ts +8 -0
  154. package/esm/composables/uid.d.ts.map +1 -0
  155. package/esm/composables/uid.js +7 -0
  156. package/esm/framework.d.ts +29 -0
  157. package/esm/framework.d.ts.map +1 -0
  158. package/esm/framework.js +47 -0
  159. package/esm/index.d.ts +35 -0
  160. package/esm/index.d.ts.map +1 -0
  161. package/esm/index.js +12 -0
  162. package/esm/templates/index.d.ts +2 -0
  163. package/esm/templates/index.d.ts.map +1 -0
  164. package/esm/templates/index.js +5 -0
  165. package/esm/templates/theme.d.ts +5 -0
  166. package/esm/templates/theme.d.ts.map +1 -0
  167. package/esm/templates/theme.js +67 -0
  168. package/esm/types/primitive.d.ts +2 -0
  169. package/esm/types/primitive.d.ts.map +1 -0
  170. package/esm/utils/color.d.ts +105 -0
  171. package/esm/utils/color.d.ts.map +1 -0
  172. package/esm/utils/color.js +14 -0
  173. package/esm/utils/getCurrentInstance.d.ts +2 -0
  174. package/esm/utils/getCurrentInstance.d.ts.map +1 -0
  175. package/esm/utils/getElement.d.ts +6 -0
  176. package/esm/utils/getElement.d.ts.map +1 -0
  177. package/esm/utils/getElement.js +6 -0
  178. package/esm/utils/isEmpty.d.ts +2 -0
  179. package/esm/utils/isEmpty.d.ts.map +1 -0
  180. package/esm/utils/isEmpty.js +6 -0
  181. package/esm/utils/isObject.d.ts +2 -0
  182. package/esm/utils/isObject.d.ts.map +1 -0
  183. package/esm/utils/isObject.js +6 -0
  184. package/esm/utils/merge.d.ts +2 -0
  185. package/esm/utils/merge.d.ts.map +1 -0
  186. package/esm/utils/merge.js +21 -0
  187. package/esm/utils/setupPropsProxy.d.ts +12 -0
  188. package/esm/utils/setupPropsProxy.d.ts.map +1 -0
  189. package/esm/utils/setupPropsProxy.js +32 -0
  190. package/esm/utils/string.d.ts +7 -0
  191. package/esm/utils/string.d.ts.map +1 -0
  192. package/esm/utils/string.js +6 -0
  193. package/esm/utils/theme.d.ts +22 -0
  194. package/esm/utils/theme.d.ts.map +1 -0
  195. package/esm/utils/theme.js +40 -0
  196. package/package.json +48 -50
  197. package/dist/index.d.ts +0 -4076
  198. package/dist/ui.esm.js.map +0 -1
  199. package/dist/ui.js.map +0 -1
  200. package/dist/ui.min.js.map +0 -1
@@ -0,0 +1,265 @@
1
+ import { QFieldSize } from '../QField';
2
+ import { Icon } from '../QIcon';
3
+ import { QListItemGroupProps, QListItemProps } from '../QList';
4
+ import { Primitive } from '../../types/primitive';
5
+
6
+ export type QSelectProps = {
7
+ /**
8
+ * The field unique identifier.
9
+ */
10
+ id?: string;
11
+ /**
12
+ * The label of the input.
13
+ */
14
+ label?: string;
15
+ /**
16
+ * Whether the value of the component can be cleared.
17
+ */
18
+ clearable?: boolean;
19
+ /**
20
+ * Whether the select is readonly.
21
+ */
22
+ readonly?: boolean;
23
+ /**
24
+ * Whether the select is disabled.
25
+ */
26
+ disabled?: boolean;
27
+ /**
28
+ * If set to true, an asterisk (*) is displayed
29
+ * to indicate that the field is required.
30
+ */
31
+ required?: boolean;
32
+ /**
33
+ * Whether the items of the list are being loaded.
34
+ */
35
+ loading?: boolean;
36
+ /**
37
+ * The icons of the component.
38
+ */
39
+ icons?: Icons;
40
+ /**
41
+ * The list of available items for selection.
42
+ */
43
+ items: (Omit<QListItemProps, 'value' | 'label'> & {
44
+ [key: string]: any;
45
+ })[];
46
+ /**
47
+ * The item groups used for organizing the available items.
48
+ */
49
+ groups?: (QListItemGroupProps & {
50
+ id: string;
51
+ })[];
52
+ /**
53
+ * Property on each item that contains its value.
54
+ */
55
+ itemValue?: string;
56
+ /**
57
+ * Property on each item that contains its title.
58
+ */
59
+ itemLabel?: string;
60
+ /**
61
+ * The value to be used in comparisons,
62
+ * used to check if the field has a selected item.
63
+ */
64
+ emptyValue?: Primitive;
65
+ /**
66
+ * The size category of the input.
67
+ */
68
+ size?: QFieldSize;
69
+ /**
70
+ * Necessary strings to be used in labels and buttons of the component.
71
+ */
72
+ texts?: Texts;
73
+ /**
74
+ * Custom set of classes to apply to the component.
75
+ */
76
+ class?: string | unknown[];
77
+ };
78
+ declare const DEFAULT_TEXTS: {
79
+ placeholder: string;
80
+ };
81
+ declare const DEFAULT_ICONS: Record<string, Icon>;
82
+ type Texts = typeof DEFAULT_TEXTS;
83
+ type Icons = typeof DEFAULT_ICONS;
84
+ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
85
+ modelValue: import('vue').PropType<any>;
86
+ size: {
87
+ type: import('vue').PropType<QFieldSize>;
88
+ default: undefined;
89
+ };
90
+ class: {
91
+ type: import('vue').PropType<string | unknown[]>;
92
+ default: string;
93
+ };
94
+ label: {
95
+ type: import('vue').PropType<string>;
96
+ default: string;
97
+ };
98
+ disabled: {
99
+ type: import('vue').PropType<boolean>;
100
+ };
101
+ loading: {
102
+ type: import('vue').PropType<boolean>;
103
+ };
104
+ required: {
105
+ type: import('vue').PropType<boolean>;
106
+ };
107
+ icons: {
108
+ type: import('vue').PropType<Record<string, Icon>>;
109
+ default: () => Record<string, Icon>;
110
+ };
111
+ items: {
112
+ type: import('vue').PropType<(Omit<QListItemProps, "label" | "value"> & {
113
+ [key: string]: any;
114
+ })[]>;
115
+ required: true;
116
+ };
117
+ groups: {
118
+ type: import('vue').PropType<(QListItemGroupProps & {
119
+ id: string;
120
+ })[]>;
121
+ default: () => never[];
122
+ };
123
+ itemValue: {
124
+ type: import('vue').PropType<string>;
125
+ default: string;
126
+ };
127
+ itemLabel: {
128
+ type: import('vue').PropType<string>;
129
+ default: string;
130
+ };
131
+ id: {
132
+ type: import('vue').PropType<string>;
133
+ default: undefined;
134
+ };
135
+ readonly: {
136
+ type: import('vue').PropType<boolean>;
137
+ };
138
+ clearable: {
139
+ type: import('vue').PropType<boolean>;
140
+ };
141
+ emptyValue: {
142
+ type: import('vue').PropType<Primitive>;
143
+ default: undefined;
144
+ };
145
+ texts: {
146
+ type: import('vue').PropType<{
147
+ placeholder: string;
148
+ }>;
149
+ default: () => {
150
+ placeholder: string;
151
+ };
152
+ };
153
+ }, {}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
154
+ "before-show": () => void;
155
+ "before-hide": () => void;
156
+ show: () => void;
157
+ hide: () => void;
158
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
159
+ modelValue: import('vue').PropType<any>;
160
+ size: {
161
+ type: import('vue').PropType<QFieldSize>;
162
+ default: undefined;
163
+ };
164
+ class: {
165
+ type: import('vue').PropType<string | unknown[]>;
166
+ default: string;
167
+ };
168
+ label: {
169
+ type: import('vue').PropType<string>;
170
+ default: string;
171
+ };
172
+ disabled: {
173
+ type: import('vue').PropType<boolean>;
174
+ };
175
+ loading: {
176
+ type: import('vue').PropType<boolean>;
177
+ };
178
+ required: {
179
+ type: import('vue').PropType<boolean>;
180
+ };
181
+ icons: {
182
+ type: import('vue').PropType<Record<string, Icon>>;
183
+ default: () => Record<string, Icon>;
184
+ };
185
+ items: {
186
+ type: import('vue').PropType<(Omit<QListItemProps, "label" | "value"> & {
187
+ [key: string]: any;
188
+ })[]>;
189
+ required: true;
190
+ };
191
+ groups: {
192
+ type: import('vue').PropType<(QListItemGroupProps & {
193
+ id: string;
194
+ })[]>;
195
+ default: () => never[];
196
+ };
197
+ itemValue: {
198
+ type: import('vue').PropType<string>;
199
+ default: string;
200
+ };
201
+ itemLabel: {
202
+ type: import('vue').PropType<string>;
203
+ default: string;
204
+ };
205
+ id: {
206
+ type: import('vue').PropType<string>;
207
+ default: undefined;
208
+ };
209
+ readonly: {
210
+ type: import('vue').PropType<boolean>;
211
+ };
212
+ clearable: {
213
+ type: import('vue').PropType<boolean>;
214
+ };
215
+ emptyValue: {
216
+ type: import('vue').PropType<Primitive>;
217
+ default: undefined;
218
+ };
219
+ texts: {
220
+ type: import('vue').PropType<{
221
+ placeholder: string;
222
+ }>;
223
+ default: () => {
224
+ placeholder: string;
225
+ };
226
+ };
227
+ }>> & {
228
+ "onBefore-show"?: (() => any) | undefined;
229
+ "onBefore-hide"?: (() => any) | undefined;
230
+ onShow?: (() => any) | undefined;
231
+ onHide?: (() => any) | undefined;
232
+ }, {
233
+ size: QFieldSize;
234
+ class: string | unknown[];
235
+ label: string;
236
+ icons: Record<string, Icon>;
237
+ groups: (QListItemGroupProps & {
238
+ id: string;
239
+ })[];
240
+ itemValue: string;
241
+ itemLabel: string;
242
+ id: string;
243
+ emptyValue: Primitive;
244
+ texts: {
245
+ placeholder: string;
246
+ };
247
+ }, {}>, {
248
+ prepend?(_: {}): any;
249
+ append?(_: {}): any;
250
+ extras?(_: {}): any;
251
+ "body.prepend"?(_: {}): any;
252
+ item?(_: {
253
+ item: Omit<QListItemProps, "label" | "value"> & {
254
+ [key: string]: any;
255
+ };
256
+ }): any;
257
+ "body.append"?(_: {}): any;
258
+ }>;
259
+ export default _default;
260
+ type __VLS_WithTemplateSlots<T, S> = T & {
261
+ new (): {
262
+ $slots: S;
263
+ };
264
+ };
265
+ //# sourceMappingURL=QSelect.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QSelect.vue.d.ts","sourceRoot":"","sources":["../../../src/components/QSelect/QSelect.vue"],"names":[],"mappings":"AAuHA;AAWC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAC7E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAMlD,MAAM,MAAM,YAAY,GAAG;IAC1B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAA;IAEb;;OAEG;IACH,KAAK,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG;QAGjD,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAClB,CAAC,EAAE,CAAA;IAEJ;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,mBAAmB,GAAG;QAC/B,EAAE,EAAE,MAAM,CAAA;KACV,CAAC,EAAE,CAAA;IAEJ;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;OAGG;IACH,UAAU,CAAC,EAAE,SAAS,CAAA;IAEtB;;OAEG;IACH,IAAI,CAAC,EAAE,UAAU,CAAA;IAEjB;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAA;IAEb;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;CAC1B,CAAA;AAKD,QAAA,MAAM,aAAa;;CAElB,CAAA;AAGD,QAAA,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAOvC,CAAA;AAED,KAAK,KAAK,GAAG,OAAO,aAAa,CAAA;AACjC,KAAK,KAAK,GAAG,OAAO,aAAa,CAAA;;gBAmMtB,OAAO,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAA3B,OAAO,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBA2VT,GAAG;oBACJ,GAAG;oBACH,GAAG;4BACK,GAAG;;;;;QACZ,GAAG;2BACM,GAAG;;AAliBxC,wBAmlBI;AASJ,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
@@ -0,0 +1,317 @@
1
+ import { defineComponent as J, mergeModels as D, useModel as Y, ref as m, computed as _, watch as Z, nextTick as ee, openBlock as t, createElementBlock as p, Fragment as I, createVNode as v, unref as i, normalizeClass as le, withModifiers as F, createSlots as oe, withCtx as s, renderSlot as u, createBlock as k, normalizeProps as C, guardReactiveProps as M, createCommentVNode as g, toDisplayString as U, createTextVNode as ae, mergeProps as te, createElementVNode as ie } from "vue";
2
+ import A from "../QButton/QButton.vue.js";
3
+ import "../QField/index.js";
4
+ import "../QIcon/index.js";
5
+ import "../QList/index.js";
6
+ import "../QOverlay/index.js";
7
+ import "../QSpinnerLoader/index.js";
8
+ import ne from "../QField/QField.vue.js";
9
+ import L from "../QIcon/QIcon.vue.js";
10
+ import se from "../QOverlay/QOverlay.vue.js";
11
+ import de from "../QSpinnerLoader/QSpinnerLoader.vue.js";
12
+ import re from "../QList/QList.vue.js";
13
+ const ue = {
14
+ key: 0,
15
+ class: "q-select__value"
16
+ }, ce = {
17
+ key: 1,
18
+ class: "q-select__placeholder"
19
+ }, fe = ["data-key"], me = {
20
+ key: 0,
21
+ class: "q-select__loader"
22
+ }, pe = {
23
+ placeholder: "Choose..."
24
+ }, ve = {
25
+ chevron: {
26
+ icon: "chevron-down"
27
+ },
28
+ clear: {
29
+ icon: "close"
30
+ }
31
+ }, Le = /* @__PURE__ */ J({
32
+ __name: "QSelect",
33
+ props: /* @__PURE__ */ D({
34
+ id: { default: void 0 },
35
+ label: { default: "" },
36
+ clearable: { type: Boolean },
37
+ readonly: { type: Boolean },
38
+ disabled: { type: Boolean },
39
+ required: { type: Boolean },
40
+ loading: { type: Boolean },
41
+ icons: { default: () => ve },
42
+ items: {},
43
+ groups: { default: () => [] },
44
+ itemValue: { default: "key" },
45
+ itemLabel: { default: "label" },
46
+ emptyValue: { type: [String, Number, Boolean, Symbol], default: void 0 },
47
+ size: { default: void 0 },
48
+ texts: { default: () => pe },
49
+ class: { default: "" }
50
+ }, {
51
+ modelValue: {
52
+ type: [String, Number, Boolean, Symbol]
53
+ },
54
+ modelModifiers: {}
55
+ }),
56
+ emits: /* @__PURE__ */ D(["before-show", "before-hide", "show", "hide"], ["update:modelValue"]),
57
+ setup(x, { emit: O }) {
58
+ const l = x, y = O, c = Y(x, "modelValue"), a = m(!1), h = m(""), b = m(null), w = m(null), V = m(null), P = _(() => d.value === void 0), d = _(
59
+ () => {
60
+ var e;
61
+ return (e = l.items) == null ? void 0 : e.find((o) => o[l.itemValue] === c.value);
62
+ }
63
+ ), K = _(
64
+ () => d.value ? d.value[l.itemLabel] : ""
65
+ ), $ = _(
66
+ () => l.clearable && !l.readonly && !l.disabled && !l.loading
67
+ );
68
+ function S(e) {
69
+ c.value = e, E();
70
+ }
71
+ function q() {
72
+ $.value && S(l.emptyValue);
73
+ }
74
+ function H(e) {
75
+ var o, r, f;
76
+ !((o = V.value) != null && o.contains(e.relatedTarget)) && !((f = (r = b.value) == null ? void 0 : r.fieldRef) != null && f.contains(e.relatedTarget)) && E();
77
+ }
78
+ function Q() {
79
+ a.value || (y("before-show"), a.value = !0);
80
+ }
81
+ function E() {
82
+ a.value && (y("before-hide"), a.value = !1);
83
+ }
84
+ function T() {
85
+ l.readonly || l.disabled || (a.value ? E() : Q());
86
+ }
87
+ let B;
88
+ function z(e) {
89
+ if (!(!e.key || l.readonly || l.disabled)) {
90
+ if (window.clearTimeout(B), ["Enter", " ", "ArrowDown", "ArrowUp", "Home", "End"].includes(e.key) && (e.preventDefault(), e.stopPropagation()), ["Enter", " "].includes(e.key) && (a.value = !0), ["Escape", "Tab"].includes(e.key) && (a.value ? a.value = !1 : $.value && e.key === "Escape" && q()), e.key === "Delete" && l.clearable && q(), /^[a-z]$/i.test(e.key)) {
91
+ h.value += e.key.toLowerCase();
92
+ for (let o = 0; o < l.items.length; o++)
93
+ if (l.items[o][l.itemLabel].toLowerCase().startsWith(h.value)) {
94
+ G(o);
95
+ break;
96
+ }
97
+ }
98
+ B = window.setTimeout(function() {
99
+ h.value = "";
100
+ }, 500);
101
+ }
102
+ }
103
+ function W() {
104
+ var e;
105
+ l.loading ? (e = V.value) == null || e.focus() : N(), y("show");
106
+ }
107
+ function X() {
108
+ j(), y("hide");
109
+ }
110
+ function j() {
111
+ var e, o;
112
+ (o = (e = b.value) == null ? void 0 : e.fieldRef) == null || o.focus();
113
+ }
114
+ function N() {
115
+ var e;
116
+ (e = w.value) == null || e.$el.focus();
117
+ }
118
+ function G(e) {
119
+ var o;
120
+ (o = w.value) == null || o.focusItem(e);
121
+ }
122
+ return Z(
123
+ () => l.loading,
124
+ (e) => {
125
+ !e && a.value && ee(N);
126
+ }
127
+ ), (e, o) => {
128
+ var r, f;
129
+ return t(), p(
130
+ I,
131
+ null,
132
+ [
133
+ v(i(ne), {
134
+ id: l.id,
135
+ label: l.label,
136
+ required: l.required,
137
+ ref_key: "triggerEl",
138
+ ref: b,
139
+ role: "combobox",
140
+ tabindex: l.disabled ? -1 : 0,
141
+ class: le([
142
+ "q-select",
143
+ {
144
+ "q-select--readonly": l.readonly,
145
+ "q-select--disabled": l.disabled,
146
+ "q-select--expanded": a.value
147
+ },
148
+ l.class
149
+ ]),
150
+ readonly: l.readonly,
151
+ disabled: l.disabled,
152
+ "data-loading": l.loading,
153
+ "aria-expanded": a.value,
154
+ "aria-haspopup": "listbox",
155
+ size: l.size,
156
+ onClick: T,
157
+ onKeydown: F(z, ["stop"])
158
+ }, oe({
159
+ append: s(() => [
160
+ u(e.$slots, "append"),
161
+ $.value && c.value ? (t(), k(i(A), {
162
+ key: 0,
163
+ class: "q-select__clear",
164
+ "b-style": "plain",
165
+ borderless: "",
166
+ tabindex: "-1",
167
+ onClick: q
168
+ }, {
169
+ default: s(() => [
170
+ v(
171
+ i(L),
172
+ C(M(l.icons.clear)),
173
+ null,
174
+ 16
175
+ /* FULL_PROPS */
176
+ )
177
+ ]),
178
+ _: 1
179
+ /* STABLE */
180
+ })) : g("v-if", !0),
181
+ l.readonly ? g("v-if", !0) : (t(), k(i(A), {
182
+ key: 1,
183
+ class: "q-select__chevron",
184
+ "b-style": "plain",
185
+ borderless: "",
186
+ tabindex: "-1",
187
+ disabled: l.disabled,
188
+ onClick: T
189
+ }, {
190
+ default: s(() => [
191
+ v(
192
+ i(L),
193
+ C(M(l.icons.chevron)),
194
+ null,
195
+ 16
196
+ /* FULL_PROPS */
197
+ )
198
+ ]),
199
+ _: 1
200
+ /* STABLE */
201
+ }, 8, ["disabled"]))
202
+ ]),
203
+ default: s(() => [
204
+ P.value ? (t(), p("span", ce, [
205
+ !l.readonly && !l.disabled ? (t(), p(
206
+ I,
207
+ { key: 0 },
208
+ [
209
+ ae(
210
+ U(e.texts.placeholder),
211
+ 1
212
+ /* TEXT */
213
+ )
214
+ ],
215
+ 64
216
+ /* STABLE_FRAGMENT */
217
+ )) : g("v-if", !0)
218
+ ])) : (t(), p(
219
+ "span",
220
+ ue,
221
+ U(K.value),
222
+ 1
223
+ /* TEXT */
224
+ ))
225
+ ]),
226
+ _: 2
227
+ /* DYNAMIC */
228
+ }, [
229
+ (r = d.value) != null && r.icon || e.$slots.prepend ? {
230
+ name: "prepend",
231
+ fn: s(() => {
232
+ var n, R;
233
+ return [
234
+ u(e.$slots, "prepend"),
235
+ (n = d.value) != null && n.icon ? (t(), k(
236
+ i(L),
237
+ C(te({ key: 0 }, (R = d.value) == null ? void 0 : R.icon)),
238
+ null,
239
+ 16
240
+ /* FULL_PROPS */
241
+ )) : g("v-if", !0)
242
+ ];
243
+ }),
244
+ key: "0"
245
+ } : void 0,
246
+ e.$slots.extras ? {
247
+ name: "extras",
248
+ fn: s(() => [
249
+ u(e.$slots, "extras")
250
+ ]),
251
+ key: "1"
252
+ } : void 0
253
+ ]), 1032, ["id", "label", "required", "tabindex", "class", "readonly", "disabled", "data-loading", "aria-expanded", "size"]),
254
+ v(i(se), {
255
+ modelValue: a.value,
256
+ "onUpdate:modelValue": o[1] || (o[1] = (n) => a.value = n),
257
+ spy: "",
258
+ trigger: "manual",
259
+ placement: "bottom-start",
260
+ width: "anchor",
261
+ "scroll-lock": "",
262
+ anchor: (f = b.value) == null ? void 0 : f.$el,
263
+ offset: 2,
264
+ onEnter: W,
265
+ onLeave: X
266
+ }, {
267
+ default: s(() => [
268
+ ie("div", {
269
+ ref_key: "contentRef",
270
+ ref: V,
271
+ "data-testid": "combobox-dropdown",
272
+ "data-key": l.id,
273
+ class: "q-select__body",
274
+ tabindex: "-1",
275
+ onFocusout: H,
276
+ onKeydown: F(z, ["stop"])
277
+ }, [
278
+ u(e.$slots, "body.prepend"),
279
+ l.loading ? (t(), p("div", me, [
280
+ v(i(de), { size: 24 })
281
+ ])) : (t(), k(i(re), {
282
+ key: 1,
283
+ ref_key: "listRef",
284
+ ref: w,
285
+ class: "q-select__items",
286
+ modelValue: c.value,
287
+ "onUpdate:modelValue": [
288
+ o[0] || (o[0] = (n) => c.value = n),
289
+ S
290
+ ],
291
+ items: l.items,
292
+ groups: e.groups,
293
+ "item-label": l.itemLabel,
294
+ "item-value": l.itemValue
295
+ }, {
296
+ item: s(({ item: n }) => [
297
+ u(e.$slots, "item", { item: n })
298
+ ]),
299
+ _: 3
300
+ /* FORWARDED */
301
+ }, 8, ["modelValue", "items", "groups", "item-label", "item-value"])),
302
+ u(e.$slots, "body.append")
303
+ ], 40, fe)
304
+ ]),
305
+ _: 3
306
+ /* FORWARDED */
307
+ }, 8, ["modelValue", "anchor"])
308
+ ],
309
+ 64
310
+ /* STABLE_FRAGMENT */
311
+ );
312
+ };
313
+ }
314
+ });
315
+ export {
316
+ Le as default
317
+ };
@@ -0,0 +1,4 @@
1
+ import f from "./QSelect.vue.js";
2
+ export {
3
+ f as default
4
+ };
@@ -0,0 +1,4 @@
1
+ import { default as QSelect } from './QSelect';
2
+
3
+ export { QSelect };
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/QSelect/index.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,eAAe,CAAA;AAQnC,OAAO,EAAE,OAAO,EAAE,CAAA"}
@@ -0,0 +1,46 @@
1
+ export type QSkeletonLoaderProps = {
2
+ /**
3
+ * The type of the skeleton.
4
+ */
5
+ type?: 'text' | 'icon';
6
+ /**
7
+ * The width of the skeleton.
8
+ */
9
+ width?: string | number;
10
+ /**
11
+ * The height of the skeleton.
12
+ */
13
+ height?: string | number;
14
+ };
15
+ declare const _default: import('vue').DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<QSkeletonLoaderProps>, {
16
+ type: undefined;
17
+ width: undefined;
18
+ height: undefined;
19
+ }>, {}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<QSkeletonLoaderProps>, {
20
+ type: undefined;
21
+ width: undefined;
22
+ height: undefined;
23
+ }>>>, {
24
+ type: "text" | "icon";
25
+ height: string | number;
26
+ width: string | number;
27
+ }, {}>;
28
+ export default _default;
29
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
30
+ type __VLS_TypePropsToRuntimeProps<T> = {
31
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
32
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
33
+ } : {
34
+ type: import('vue').PropType<T[K]>;
35
+ required: true;
36
+ };
37
+ };
38
+ type __VLS_WithDefaults<P, D> = {
39
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
40
+ default: D[K];
41
+ }> : P[K];
42
+ };
43
+ type __VLS_Prettify<T> = {
44
+ [K in keyof T]: T[K];
45
+ } & {};
46
+ //# sourceMappingURL=QSkeletonLoader.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QSkeletonLoader.vue.d.ts","sourceRoot":"","sources":["../../../src/components/QSkeletonLoader/QSkeletonLoader.vue"],"names":[],"mappings":"AAOA;AAIC,MAAM,MAAM,oBAAoB,GAAG;IAClC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAEtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAEvB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACxB,CAAA;;;;;;;;;;;;;;AAgFF,wBAMG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { defineComponent as i, computed as n, openBlock as a, createElementBlock as r, normalizeClass as c, normalizeStyle as h, createElementVNode as p } from "vue";
2
+ const u = /* @__PURE__ */ p(
3
+ "div",
4
+ { class: "q-skeleton-loader__bone" },
5
+ null,
6
+ -1
7
+ /* HOISTED */
8
+ ), m = [
9
+ u
10
+ ], f = /* @__PURE__ */ i({
11
+ __name: "QSkeletonLoader",
12
+ props: {
13
+ type: { default: void 0 },
14
+ width: { default: void 0 },
15
+ height: { default: void 0 }
16
+ },
17
+ setup(l) {
18
+ const e = l, s = n(() => e.type ? `q-skeleton-loader--${e.type}` : void 0), d = n(() => {
19
+ const t = typeof e.width == "number" ? `${e.width}px` : e.width, o = typeof e.height == "number" ? `${e.height}px` : e.height;
20
+ return {
21
+ width: t,
22
+ height: o
23
+ };
24
+ });
25
+ return (t, o) => (a(), r(
26
+ "div",
27
+ {
28
+ class: c(["q-skeleton-loader", s.value]),
29
+ style: h(d.value)
30
+ },
31
+ m,
32
+ 6
33
+ /* CLASS, STYLE */
34
+ ));
35
+ }
36
+ });
37
+ export {
38
+ f as default
39
+ };
@@ -0,0 +1,4 @@
1
+ import f from "./QSkeletonLoader.vue.js";
2
+ export {
3
+ f as default
4
+ };