@idds/vue 1.0.52

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 (119) hide show
  1. package/README.md +313 -0
  2. package/dist/components/Accordion.vue.d.ts +85 -0
  3. package/dist/components/Accordion.vue.d.ts.map +1 -0
  4. package/dist/components/AccordionCard.vue.d.ts +66 -0
  5. package/dist/components/AccordionCard.vue.d.ts.map +1 -0
  6. package/dist/components/AccordionGroup.vue.d.ts +64 -0
  7. package/dist/components/AccordionGroup.vue.d.ts.map +1 -0
  8. package/dist/components/ActionDropdown.vue.d.ts +58 -0
  9. package/dist/components/ActionDropdown.vue.d.ts.map +1 -0
  10. package/dist/components/Alert.vue.d.ts +80 -0
  11. package/dist/components/Alert.vue.d.ts.map +1 -0
  12. package/dist/components/Avatar.vue.d.ts +70 -0
  13. package/dist/components/Avatar.vue.d.ts.map +1 -0
  14. package/dist/components/Badge.vue.d.ts +104 -0
  15. package/dist/components/Badge.vue.d.ts.map +1 -0
  16. package/dist/components/BottomSheet.vue.d.ts +48 -0
  17. package/dist/components/BottomSheet.vue.d.ts.map +1 -0
  18. package/dist/components/Breadcrumb.vue.d.ts +62 -0
  19. package/dist/components/Breadcrumb.vue.d.ts.map +1 -0
  20. package/dist/components/Button.vue.d.ts +102 -0
  21. package/dist/components/Button.vue.d.ts.map +1 -0
  22. package/dist/components/ButtonGroup.vue.d.ts +66 -0
  23. package/dist/components/ButtonGroup.vue.d.ts.map +1 -0
  24. package/dist/components/Card.vue.d.ts +115 -0
  25. package/dist/components/Card.vue.d.ts.map +1 -0
  26. package/dist/components/Checkbox.vue.d.ts +73 -0
  27. package/dist/components/Checkbox.vue.d.ts.map +1 -0
  28. package/dist/components/Chip.vue.d.ts +76 -0
  29. package/dist/components/Chip.vue.d.ts.map +1 -0
  30. package/dist/components/Collapse.vue.d.ts +60 -0
  31. package/dist/components/Collapse.vue.d.ts.map +1 -0
  32. package/dist/components/DatePicker.vue.d.ts +109 -0
  33. package/dist/components/DatePicker.vue.d.ts.map +1 -0
  34. package/dist/components/Divider.vue.d.ts +43 -0
  35. package/dist/components/Divider.vue.d.ts.map +1 -0
  36. package/dist/components/Drawer.vue.d.ts +91 -0
  37. package/dist/components/Drawer.vue.d.ts.map +1 -0
  38. package/dist/components/Dropdown.vue.d.ts +72 -0
  39. package/dist/components/Dropdown.vue.d.ts.map +1 -0
  40. package/dist/components/FieldInputTable.vue.d.ts +52 -0
  41. package/dist/components/FieldInputTable.vue.d.ts.map +1 -0
  42. package/dist/components/FileUpload.vue.d.ts +131 -0
  43. package/dist/components/FileUpload.vue.d.ts.map +1 -0
  44. package/dist/components/InputSearch.vue.d.ts +76 -0
  45. package/dist/components/InputSearch.vue.d.ts.map +1 -0
  46. package/dist/components/LinearProgressIndicator.vue.d.ts +47 -0
  47. package/dist/components/LinearProgressIndicator.vue.d.ts.map +1 -0
  48. package/dist/components/Modal.vue.d.ts +87 -0
  49. package/dist/components/Modal.vue.d.ts.map +1 -0
  50. package/dist/components/MonthPicker.vue.d.ts +69 -0
  51. package/dist/components/MonthPicker.vue.d.ts.map +1 -0
  52. package/dist/components/MultipleChoiceGrid.vue.d.ts +61 -0
  53. package/dist/components/MultipleChoiceGrid.vue.d.ts.map +1 -0
  54. package/dist/components/Pagination.vue.d.ts +99 -0
  55. package/dist/components/Pagination.vue.d.ts.map +1 -0
  56. package/dist/components/PasswordInput.vue.d.ts +68 -0
  57. package/dist/components/PasswordInput.vue.d.ts.map +1 -0
  58. package/dist/components/PhoneInput.vue.d.ts +89 -0
  59. package/dist/components/PhoneInput.vue.d.ts.map +1 -0
  60. package/dist/components/ProgressBar.vue.d.ts +75 -0
  61. package/dist/components/ProgressBar.vue.d.ts.map +1 -0
  62. package/dist/components/RadioInput.vue.d.ts +65 -0
  63. package/dist/components/RadioInput.vue.d.ts.map +1 -0
  64. package/dist/components/SelectDropdown.vue.d.ts +127 -0
  65. package/dist/components/SelectDropdown.vue.d.ts.map +1 -0
  66. package/dist/components/Skeleton.vue.d.ts +46 -0
  67. package/dist/components/Skeleton.vue.d.ts.map +1 -0
  68. package/dist/components/Spinner.vue.d.ts +58 -0
  69. package/dist/components/Spinner.vue.d.ts.map +1 -0
  70. package/dist/components/Stepper.vue.d.ts +49 -0
  71. package/dist/components/Stepper.vue.d.ts.map +1 -0
  72. package/dist/components/TabHorizontal.vue.d.ts +84 -0
  73. package/dist/components/TabHorizontal.vue.d.ts.map +1 -0
  74. package/dist/components/TabVertical.vue.d.ts +84 -0
  75. package/dist/components/TabVertical.vue.d.ts.map +1 -0
  76. package/dist/components/Table.vue.d.ts +160 -0
  77. package/dist/components/Table.vue.d.ts.map +1 -0
  78. package/dist/components/TableProgressBar.vue.d.ts +54 -0
  79. package/dist/components/TableProgressBar.vue.d.ts.map +1 -0
  80. package/dist/components/TextArea.vue.d.ts +121 -0
  81. package/dist/components/TextArea.vue.d.ts.map +1 -0
  82. package/dist/components/TextField.vue.d.ts +129 -0
  83. package/dist/components/TextField.vue.d.ts.map +1 -0
  84. package/dist/components/ThemeToggle.vue.d.ts +38 -0
  85. package/dist/components/ThemeToggle.vue.d.ts.map +1 -0
  86. package/dist/components/TimePicker.vue.d.ts +132 -0
  87. package/dist/components/TimePicker.vue.d.ts.map +1 -0
  88. package/dist/components/Toast.vue.d.ts +52 -0
  89. package/dist/components/Toast.vue.d.ts.map +1 -0
  90. package/dist/components/ToastProvider.vue.d.ts +12 -0
  91. package/dist/components/ToastProvider.vue.d.ts.map +1 -0
  92. package/dist/components/Toggle.vue.d.ts +71 -0
  93. package/dist/components/Toggle.vue.d.ts.map +1 -0
  94. package/dist/components/Tooltip.vue.d.ts +118 -0
  95. package/dist/components/Tooltip.vue.d.ts.map +1 -0
  96. package/dist/components/YearPicker.vue.d.ts +81 -0
  97. package/dist/components/YearPicker.vue.d.ts.map +1 -0
  98. package/dist/components/types.d.ts +5 -0
  99. package/dist/components/types.d.ts.map +1 -0
  100. package/dist/composables/useToast.d.ts +9 -0
  101. package/dist/composables/useToast.d.ts.map +1 -0
  102. package/dist/index.cjs.js +27 -0
  103. package/dist/index.cjs.js.map +1 -0
  104. package/dist/index.css +1 -0
  105. package/dist/index.d.ts +6239 -0
  106. package/dist/index.d.ts.map +1 -0
  107. package/dist/index.es.js +10403 -0
  108. package/dist/index.es.js.map +1 -0
  109. package/dist/index.umd.js +27 -0
  110. package/dist/index.umd.js.map +1 -0
  111. package/dist/main.d.ts +2 -0
  112. package/dist/main.d.ts.map +1 -0
  113. package/dist/themes/index.d.ts +41 -0
  114. package/dist/themes/index.d.ts.map +1 -0
  115. package/dist/utils/fileValidation.d.ts +57 -0
  116. package/dist/utils/fileValidation.d.ts.map +1 -0
  117. package/dist/utils/security.d.ts +61 -0
  118. package/dist/utils/security.d.ts.map +1 -0
  119. package/package.json +64 -0
package/README.md ADDED
@@ -0,0 +1,313 @@
1
+ # @idds/vue
2
+
3
+ Vue 3 UI component library for INA Digital Design System.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @idds/vue
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ### Basic Setup
14
+
15
+ ```vue
16
+ <template>
17
+ <div>
18
+ <Button variant="primary" size="md">Click me</Button>
19
+ <TextField v-model="value" label="Name" placeholder="Enter your name" />
20
+ </div>
21
+ </template>
22
+
23
+ <script setup>
24
+ import { ref } from 'vue';
25
+ import { Button, TextField } from '@idds/vue';
26
+ import '@idds/vue/index.css';
27
+
28
+ const value = ref('');
29
+ </script>
30
+ ```
31
+
32
+ ### Import Individual Components
33
+
34
+ ```vue
35
+ <script setup>
36
+ import { Button, TextField, SelectDropdown } from '@idds/vue';
37
+ </script>
38
+ ```
39
+
40
+ ### Import All Components
41
+
42
+ ```vue
43
+ <script setup>
44
+ import InaDigitalUI from '@idds/vue';
45
+
46
+ // Use components
47
+ const { Button, TextField, SelectDropdown } = InaDigitalUI;
48
+ </script>
49
+ ```
50
+
51
+ ## Components
52
+
53
+ ### Button
54
+
55
+ ```vue
56
+ <Button
57
+ variant="primary"
58
+ size="md"
59
+ :disabled="false"
60
+ :loading="false"
61
+ @click="handleClick"
62
+ >
63
+ Button Text
64
+ </Button>
65
+ ```
66
+
67
+ **Props:**
68
+
69
+ - `variant`: 'primary' | 'secondary' | 'tertiary' | 'ghost' | 'danger'
70
+ - `size`: 'sm' | 'md' | 'lg'
71
+ - `disabled`: boolean
72
+ - `loading`: boolean
73
+ - `type`: 'button' | 'submit' | 'reset'
74
+ - `tag`: string
75
+
76
+ ### TextField
77
+
78
+ ```vue
79
+ <TextField
80
+ v-model="value"
81
+ label="Email"
82
+ placeholder="Enter your email"
83
+ type="email"
84
+ size="md"
85
+ :disabled="false"
86
+ :readonly="false"
87
+ :required="true"
88
+ :show-clear-button="true"
89
+ @input="handleInput"
90
+ />
91
+ ```
92
+
93
+ **Props:**
94
+
95
+ - `modelValue`: string
96
+ - `label`: string
97
+ - `placeholder`: string
98
+ - `type`: 'text' | 'email' | 'password' | 'number' | 'tel' | 'url'
99
+ - `size`: 'sm' | 'md' | 'lg'
100
+ - `status`: 'neutral' | 'success' | 'error' | 'warning'
101
+ - `statusMessage`: string
102
+ - `disabled`: boolean
103
+ - `readonly`: boolean
104
+ - `required`: boolean
105
+ - `maxLength`: number
106
+ - `showCharCount`: boolean
107
+ - `showClearButton`: boolean
108
+ - `prefixIcon`: Component
109
+ - `debounce`: number
110
+
111
+ ### PasswordInput
112
+
113
+ ```vue
114
+ <PasswordInput
115
+ v-model="password"
116
+ label="Password"
117
+ placeholder="Enter your password"
118
+ size="md"
119
+ :show-char-count="true"
120
+ :max-length="20"
121
+ />
122
+ ```
123
+
124
+ **Props:**
125
+
126
+ - `modelValue`: string
127
+ - `label`: string
128
+ - `placeholder`: string
129
+ - `size`: 'sm' | 'md' | 'lg'
130
+ - `status`: 'neutral' | 'success' | 'error' | 'warning'
131
+ - `statusMessage`: string
132
+ - `disabled`: boolean
133
+ - `readonly`: boolean
134
+ - `required`: boolean
135
+ - `maxLength`: number
136
+ - `showCharCount`: boolean
137
+
138
+ ### SelectDropdown
139
+
140
+ ```vue
141
+ <SelectDropdown
142
+ v-model="selected"
143
+ :options="options"
144
+ label="Select Option"
145
+ placeholder="Choose an option"
146
+ size="md"
147
+ :multiple="false"
148
+ indicator="check"
149
+ />
150
+ ```
151
+
152
+ **Props:**
153
+
154
+ - `modelValue`: any | any[]
155
+ - `options`: SelectOption[]
156
+ - `label`: string
157
+ - `placeholder`: string
158
+ - `size`: 'sm' | 'md' | 'lg'
159
+ - `status`: 'neutral' | 'success' | 'error' | 'warning'
160
+ - `statusMessage`: string
161
+ - `disabled`: boolean
162
+ - `required`: boolean
163
+ - `multiple`: boolean
164
+ - `indicator`: 'check' | 'radio'
165
+ - `searchable`: boolean
166
+ - `clearable`: boolean
167
+
168
+ ### TimePicker
169
+
170
+ ```vue
171
+ <TimePicker v-model="time" label="Time" placeholder="Select time" size="md" />
172
+ ```
173
+
174
+ **Props:**
175
+
176
+ - `modelValue`: string
177
+ - `label`: string
178
+ - `placeholder`: string
179
+ - `size`: 'sm' | 'md' | 'lg'
180
+ - `status`: 'neutral' | 'success' | 'error' | 'warning'
181
+ - `statusMessage`: string
182
+ - `disabled`: boolean
183
+ - `readonly`: boolean
184
+ - `required`: boolean
185
+
186
+ ### YearPicker
187
+
188
+ ```vue
189
+ <YearPicker
190
+ v-model="year"
191
+ label="Year"
192
+ placeholder="Select year"
193
+ size="md"
194
+ :min-year="2000"
195
+ :max-year="2030"
196
+ :show-icon="true"
197
+ :show-clear-button="true"
198
+ />
199
+ ```
200
+
201
+ **Props:**
202
+
203
+ - `modelValue`: number
204
+ - `label`: string
205
+ - `placeholder`: string
206
+ - `size`: 'sm' | 'md' | 'lg'
207
+ - `status`: 'neutral' | 'success' | 'error' | 'warning'
208
+ - `statusMessage`: string
209
+ - `disabled`: boolean
210
+ - `readonly`: boolean
211
+ - `required`: boolean
212
+ - `minYear`: number
213
+ - `maxYear`: number
214
+ - `showIcon`: boolean
215
+ - `showClearButton`: boolean
216
+
217
+ ### MonthPicker
218
+
219
+ ```vue
220
+ <MonthPicker
221
+ v-model="month"
222
+ label="Month"
223
+ placeholder="Select month"
224
+ size="md"
225
+ :show-icon="true"
226
+ :show-clear-button="true"
227
+ />
228
+ ```
229
+
230
+ **Props:**
231
+
232
+ - `modelValue`: number
233
+ - `label`: string
234
+ - `placeholder`: string
235
+ - `size`: 'sm' | 'md' | 'lg'
236
+ - `status`: 'neutral' | 'success' | 'error' | 'warning'
237
+ - `statusMessage`: string
238
+ - `disabled`: boolean
239
+ - `readonly`: boolean
240
+ - `required`: boolean
241
+ - `showIcon`: boolean
242
+ - `showClearButton`: boolean
243
+
244
+ ### DatePicker
245
+
246
+ ```vue
247
+ <DatePicker
248
+ v-model="date"
249
+ mode="single"
250
+ label="Date"
251
+ placeholder="date picker"
252
+ size="md"
253
+ :show-icon="true"
254
+ :show-clear-button="true"
255
+ date-format="DD/MM/YYYY"
256
+ />
257
+ ```
258
+
259
+ **Props:**
260
+
261
+ - `modelValue`: string | [string, string] | string[]
262
+ - `mode`: 'single' | 'range' | 'multiple'
263
+ - `label`: string
264
+ - `placeholder`: string
265
+ - `size`: 'sm' | 'md' | 'lg'
266
+ - `status`: 'neutral' | 'success' | 'error' | 'warning'
267
+ - `statusMessage`: string
268
+ - `disabled`: boolean
269
+ - `readonly`: boolean
270
+ - `required`: boolean
271
+ - `showIcon`: boolean
272
+ - `showClearButton`: boolean
273
+ - `dateFormat`: string
274
+ - `minDate`: Date
275
+ - `maxDate`: Date
276
+ - `disabledDates`: Date[]
277
+
278
+ ## Theme System
279
+
280
+ ### Setting Brand Theme
281
+
282
+ ```javascript
283
+ import { setBrandTheme } from '@idds/vue';
284
+
285
+ // Set brand theme
286
+ setBrandTheme('brandname');
287
+
288
+ // Remove brand theme (use default)
289
+ setBrandTheme(null);
290
+ ```
291
+
292
+ ## Development
293
+
294
+ ```bash
295
+ # Install dependencies
296
+ npm install
297
+
298
+ # Start development server
299
+ npm run dev
300
+
301
+ # Build for production
302
+ npm run build
303
+
304
+ # Type checking
305
+ npm run type-check
306
+
307
+ # Linting
308
+ npm run lint
309
+ ```
310
+
311
+ ## License
312
+
313
+ MIT
@@ -0,0 +1,85 @@
1
+
2
+ export interface AccordionProps {
3
+ /**
4
+ * Judul atau header yang selalu muncul.
5
+ * Bisa berupa teks atau slot dengan nama "title".
6
+ */
7
+ title?: string;
8
+ /**
9
+ * Konten body yang muncul saat accordion dalam keadaan terbuka.
10
+ */
11
+ children?: any;
12
+ /**
13
+ * Apakah accordion terbuka secara default.
14
+ */
15
+ defaultOpen?: boolean;
16
+ /**
17
+ * Apakah accordion dalam mode controlled.
18
+ * Jika true, state dikontrol oleh parent (AccordionGroup).
19
+ */
20
+ open?: boolean;
21
+ /**
22
+ * Callback ketika accordion di-toggle.
23
+ */
24
+ onToggle?: (isOpen: boolean) => void;
25
+ /**
26
+ * Apakah accordion disabled.
27
+ */
28
+ disabled?: boolean;
29
+ /**
30
+ * ClassName tambahan untuk container utama Accordion (opsional).
31
+ */
32
+ className?: string;
33
+ }
34
+ declare function __VLS_template(): {
35
+ title?(_: {}): any;
36
+ default?(_: {}): any;
37
+ };
38
+ declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AccordionProps>, {
39
+ title: string;
40
+ defaultOpen: boolean;
41
+ open: any;
42
+ disabled: boolean;
43
+ className: string;
44
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
45
+ toggle: (isOpen: boolean) => void;
46
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AccordionProps>, {
47
+ title: string;
48
+ defaultOpen: boolean;
49
+ open: any;
50
+ disabled: boolean;
51
+ className: string;
52
+ }>>> & Readonly<{
53
+ onToggle?: (isOpen: boolean) => any;
54
+ }>, {
55
+ disabled: boolean;
56
+ title: string;
57
+ defaultOpen: boolean;
58
+ open: boolean;
59
+ className: string;
60
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
61
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
62
+ export default _default;
63
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
64
+ type __VLS_TypePropsToRuntimeProps<T> = {
65
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
66
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
67
+ } : {
68
+ type: import('vue').PropType<T[K]>;
69
+ required: true;
70
+ };
71
+ };
72
+ type __VLS_WithDefaults<P, D> = {
73
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
74
+ default: D[K];
75
+ }> : P[K];
76
+ };
77
+ type __VLS_Prettify<T> = {
78
+ [K in keyof T]: T[K];
79
+ } & {};
80
+ type __VLS_WithTemplateSlots<T, S> = T & {
81
+ new (): {
82
+ $slots: S;
83
+ };
84
+ };
85
+ //# sourceMappingURL=Accordion.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Accordion.vue.d.ts","sourceRoot":"","sources":["../../src/components/Accordion.vue"],"names":[],"mappings":"AAgDA;AAGA,OAAO,uCAAuC,CAAC;AAG/C,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC;IAEf;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAErC;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAwJD,iBAAS,cAAc;mBAoHK,GAAG;qBACD,GAAG;EAKhC;AAcD,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;cAtSR,OAAO;WA1BV,MAAM;iBAUA,OAAO;UAMd,OAAO;eAeF,MAAM;4EAwSlB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAAvG,wBAAwG;AACxG,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;AACxD,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
@@ -0,0 +1,66 @@
1
+ import { Component } from 'vue';
2
+
3
+ export interface AccordionCardProps {
4
+ title?: string;
5
+ subtitle?: string;
6
+ icon?: Component;
7
+ defaultOpen?: boolean;
8
+ variant?: 'default' | 'bordered' | 'filled';
9
+ size?: 'sm' | 'md' | 'lg';
10
+ disabled?: boolean;
11
+ }
12
+ declare function __VLS_template(): {
13
+ title?(_: {}): any;
14
+ default?(_: {}): any;
15
+ };
16
+ declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AccordionCardProps>, {
17
+ title: string;
18
+ subtitle: string;
19
+ defaultOpen: boolean;
20
+ variant: string;
21
+ size: string;
22
+ disabled: boolean;
23
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
24
+ toggle: (isOpen: boolean) => void;
25
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AccordionCardProps>, {
26
+ title: string;
27
+ subtitle: string;
28
+ defaultOpen: boolean;
29
+ variant: string;
30
+ size: string;
31
+ disabled: boolean;
32
+ }>>> & Readonly<{
33
+ onToggle?: (isOpen: boolean) => any;
34
+ }>, {
35
+ size: "sm" | "md" | "lg";
36
+ disabled: boolean;
37
+ title: string;
38
+ defaultOpen: boolean;
39
+ subtitle: string;
40
+ variant: "default" | "bordered" | "filled";
41
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
42
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
43
+ export default _default;
44
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
45
+ type __VLS_TypePropsToRuntimeProps<T> = {
46
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
47
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
48
+ } : {
49
+ type: import('vue').PropType<T[K]>;
50
+ required: true;
51
+ };
52
+ };
53
+ type __VLS_WithDefaults<P, D> = {
54
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
55
+ default: D[K];
56
+ }> : P[K];
57
+ };
58
+ type __VLS_Prettify<T> = {
59
+ [K in keyof T]: T[K];
60
+ } & {};
61
+ type __VLS_WithTemplateSlots<T, S> = T & {
62
+ new (): {
63
+ $slots: S;
64
+ };
65
+ };
66
+ //# sourceMappingURL=AccordionCard.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionCard.vue.d.ts","sourceRoot":"","sources":["../../src/components/AccordionCard.vue"],"names":[],"mappings":"AA4DA;AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,4CAA4C,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC5C,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA8DD,iBAAS,cAAc;mBA6MK,GAAG;qBACD,GAAG;EAGhC;AAcD,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;UA/RZ,IAAI,GAAG,IAAI,GAAG,IAAI;cACd,OAAO;WANV,MAAM;iBAGA,OAAO;cAFV,MAAM;aAGP,SAAS,GAAG,UAAU,GAAG,QAAQ;4EAuS3C,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAAvG,wBAAwG;AACxG,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;AACxD,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
@@ -0,0 +1,64 @@
1
+ export interface AccordionGroupProps {
2
+ /**
3
+ * Apakah multiple accordion bisa terbuka bersamaan.
4
+ * Default: false (hanya 1 yang terbuka)
5
+ * @deprecated Gunakan multipleOpen sebagai gantinya
6
+ */
7
+ multiple?: boolean;
8
+ /**
9
+ * Apakah multiple accordion bisa terbuka bersamaan.
10
+ * Default: false (hanya 1 yang terbuka, yang lain tertutup)
11
+ * Jika true, memungkinkan lebih dari 1 accordion terbuka dalam 1 group
12
+ */
13
+ multipleOpen?: boolean;
14
+ /**
15
+ * Index accordion yang terbuka secara default (hanya untuk single mode).
16
+ * Jika multipleOpen=true, gunakan defaultOpen pada masing-masing Accordion.
17
+ */
18
+ defaultIndex?: number;
19
+ }
20
+ declare function __VLS_template(): {
21
+ default?(_: {}): any;
22
+ };
23
+ declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AccordionGroupProps>, {
24
+ multiple: boolean;
25
+ multipleOpen: boolean;
26
+ defaultIndex: any;
27
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
28
+ change: (openIndexes: number[]) => void;
29
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AccordionGroupProps>, {
30
+ multiple: boolean;
31
+ multipleOpen: boolean;
32
+ defaultIndex: any;
33
+ }>>> & Readonly<{
34
+ onChange?: (openIndexes: number[]) => any;
35
+ }>, {
36
+ multiple: boolean;
37
+ multipleOpen: boolean;
38
+ defaultIndex: number;
39
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
40
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
41
+ export default _default;
42
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
43
+ type __VLS_TypePropsToRuntimeProps<T> = {
44
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
45
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
46
+ } : {
47
+ type: import('vue').PropType<T[K]>;
48
+ required: true;
49
+ };
50
+ };
51
+ type __VLS_WithDefaults<P, D> = {
52
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
53
+ default: D[K];
54
+ }> : P[K];
55
+ };
56
+ type __VLS_Prettify<T> = {
57
+ [K in keyof T]: T[K];
58
+ } & {};
59
+ type __VLS_WithTemplateSlots<T, S> = T & {
60
+ new (): {
61
+ $slots: S;
62
+ };
63
+ };
64
+ //# sourceMappingURL=AccordionGroup.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccordionGroup.vue.d.ts","sourceRoot":"","sources":["../../src/components/AccordionGroup.vue"],"names":[],"mappings":"AAKA;AAKA,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA2GD,iBAAS,cAAc;qBAsCM,GAAG;EAG/B;AASD,QAAA,MAAM,eAAe;;;;;;;;;;;;;cA3KR,OAAO;kBAOH,OAAO;kBAMP,MAAM;4EAqKrB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAAvG,wBAAwG;AACxG,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;AACxD,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
@@ -0,0 +1,58 @@
1
+
2
+ export interface ActionDropdownProps {
3
+ disabled?: boolean;
4
+ variant?: 'default' | 'primary' | 'secondary' | 'ghost';
5
+ size?: 'sm' | 'md' | 'lg';
6
+ placement?: 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end';
7
+ }
8
+ declare function __VLS_template(): {
9
+ trigger?(_: {}): any;
10
+ default?(_: {}): any;
11
+ };
12
+ declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<ActionDropdownProps>, {
13
+ disabled: boolean;
14
+ variant: string;
15
+ size: string;
16
+ placement: string;
17
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
18
+ open: () => void;
19
+ close: () => void;
20
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<ActionDropdownProps>, {
21
+ disabled: boolean;
22
+ variant: string;
23
+ size: string;
24
+ placement: string;
25
+ }>>> & Readonly<{
26
+ onOpen?: () => any;
27
+ onClose?: () => any;
28
+ }>, {
29
+ size: "sm" | "md" | "lg";
30
+ disabled: boolean;
31
+ variant: "default" | "primary" | "secondary" | "ghost";
32
+ placement: "bottom-start" | "bottom-end" | "top-start" | "top-end";
33
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
34
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
35
+ export default _default;
36
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
37
+ type __VLS_TypePropsToRuntimeProps<T> = {
38
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
39
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
40
+ } : {
41
+ type: import('vue').PropType<T[K]>;
42
+ required: true;
43
+ };
44
+ };
45
+ type __VLS_WithDefaults<P, D> = {
46
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
47
+ default: D[K];
48
+ }> : P[K];
49
+ };
50
+ type __VLS_Prettify<T> = {
51
+ [K in keyof T]: T[K];
52
+ } & {};
53
+ type __VLS_WithTemplateSlots<T, S> = T & {
54
+ new (): {
55
+ $slots: S;
56
+ };
57
+ };
58
+ //# sourceMappingURL=ActionDropdown.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionDropdown.vue.d.ts","sourceRoot":"","sources":["../../src/components/ActionDropdown.vue"],"names":[],"mappings":"AA4CA;AAGA,OAAO,6CAA6C,CAAC;AAErD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IACxD,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,CAAC;CACrE;AA+JD,iBAAS,cAAc;qBA4JO,GAAG;qBACH,GAAG;EAGhC;AAiBD,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;UAlVZ,IAAI,GAAG,IAAI,GAAG,IAAI;cAFd,OAAO;aACR,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO;eAE3C,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS;4EAwVnE,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAAvG,wBAAwG;AACxG,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;AACxD,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
@@ -0,0 +1,80 @@
1
+ import { Component } from 'vue';
2
+
3
+ export type AlertVariant = 'neutral' | 'info' | 'success' | 'caution' | 'critical';
4
+ export interface AlertProps {
5
+ /**
6
+ * Variant warna alert.
7
+ * - 'neutral' → Putih dengan border stroke-primary
8
+ * - 'info' → Biru (Guide)
9
+ * - 'success' → Hijau (Positive)
10
+ * - 'caution' → Oranye (Warning)
11
+ * - 'critical' → Merah (Negative)
12
+ */
13
+ variant?: AlertVariant;
14
+ /**
15
+ * Judul alert (singkat, biasanya satu baris).
16
+ */
17
+ title?: string;
18
+ /**
19
+ * Deskripsi/penjelasan di bawah judul (opsional, idealnya max dua baris).
20
+ */
21
+ message?: string;
22
+ /**
23
+ * Icon custom untuk menggantikan icon default variant.
24
+ */
25
+ icon?: Component;
26
+ /**
27
+ * Apakah alert bisa di-dismiss (menampilkan tombol close).
28
+ */
29
+ dismissible?: boolean;
30
+ /**
31
+ * Label untuk tombol dismiss (accessibility).
32
+ */
33
+ dismissLabel?: string;
34
+ }
35
+ declare function __VLS_template(): {
36
+ default?(_: {}): any;
37
+ actions?(_: {}): any;
38
+ };
39
+ declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AlertProps>, {
40
+ variant: string;
41
+ dismissible: boolean;
42
+ dismissLabel: string;
43
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
44
+ dismiss: () => void;
45
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AlertProps>, {
46
+ variant: string;
47
+ dismissible: boolean;
48
+ dismissLabel: string;
49
+ }>>> & Readonly<{
50
+ onDismiss?: () => any;
51
+ }>, {
52
+ variant: AlertVariant;
53
+ dismissible: boolean;
54
+ dismissLabel: string;
55
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
56
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
57
+ export default _default;
58
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
59
+ type __VLS_TypePropsToRuntimeProps<T> = {
60
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
61
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
62
+ } : {
63
+ type: import('vue').PropType<T[K]>;
64
+ required: true;
65
+ };
66
+ };
67
+ type __VLS_WithDefaults<P, D> = {
68
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
69
+ default: D[K];
70
+ }> : P[K];
71
+ };
72
+ type __VLS_Prettify<T> = {
73
+ [K in keyof T]: T[K];
74
+ } & {};
75
+ type __VLS_WithTemplateSlots<T, S> = T & {
76
+ new (): {
77
+ $slots: S;
78
+ };
79
+ };
80
+ //# sourceMappingURL=Alert.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Alert.vue.d.ts","sourceRoot":"","sources":["../../src/components/Alert.vue"],"names":[],"mappings":"AAqGA;AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,mCAAmC,CAAC;AAE3C,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;AAEnF,MAAM,WAAW,UAAU;IACzB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IAEvB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AA0CD,iBAAS,cAAc;qBA0OO,GAAG;qBACH,GAAG;EAGhC;AAYD,QAAA,MAAM,eAAe;;;;;;;;;;;;;aA9TT,YAAY;iBAoBR,OAAO;kBAKN,MAAM;4EA4SrB,CAAC;wBACkB,uBAAuB,CAAC,OAAO,eAAe,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAAvG,wBAAwG;AACxG,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;AACxD,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}