@velkymx/vibeui 0.8.1 → 0.9.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.
- package/README.md +171 -9
- package/dist/components/VibeAlert.vue.d.ts +12 -2
- package/dist/components/VibeAutocomplete.vue.d.ts +46 -0
- package/dist/components/VibeButton.vue.d.ts +4 -4
- package/dist/components/VibeDataTable.vue.d.ts +6 -6
- package/dist/components/VibeDatePicker.vue.d.ts +122 -0
- package/dist/components/VibeDraggable.vue.d.ts +81 -0
- package/dist/components/VibeDroppable.vue.d.ts +74 -0
- package/dist/components/VibeFileInput.vue.d.ts +133 -0
- package/dist/components/VibeFormCheckbox.vue.d.ts +1 -1
- package/dist/components/VibeFormDatepicker.vue.d.ts +1 -1
- package/dist/components/VibeFormGroup.vue.d.ts +1 -1
- package/dist/components/VibeFormInput.vue.d.ts +1 -1
- package/dist/components/VibeFormRadio.vue.d.ts +1 -1
- package/dist/components/VibeFormSelect.vue.d.ts +1 -1
- package/dist/components/VibeFormSpinbutton.vue.d.ts +1 -1
- package/dist/components/VibeFormSwitch.vue.d.ts +1 -1
- package/dist/components/VibeFormTextarea.vue.d.ts +1 -1
- package/dist/components/VibeFormWysiwyg.vue.d.ts +2 -2
- package/dist/components/VibeResizable.vue.d.ts +144 -0
- package/dist/components/VibeSkeleton.vue.d.ts +53 -0
- package/dist/components/VibeSlider.vue.d.ts +78 -0
- package/dist/components/VibeSortable.vue.d.ts +40 -0
- package/dist/components/VibeStepper.vue.d.ts +132 -0
- package/dist/components/VibeTab.vue.d.ts +45 -0
- package/dist/components/VibeTabs.vue.d.ts +82 -0
- package/dist/components/VibeToast.vue.d.ts +11 -0
- package/dist/components/VibeToastHost.vue.d.ts +15 -0
- package/dist/components/dndStore.d.ts +6 -0
- package/dist/components/index.d.ts +14 -1
- package/dist/composables/useForm.d.ts +22 -0
- package/dist/composables/usePosition.d.ts +20 -0
- package/dist/composables/useToast.d.ts +52 -0
- package/dist/directives/vTooltip.d.ts +25 -0
- package/dist/index.d.ts +6 -0
- package/dist/types.d.ts +11 -4
- package/dist/vibeui.css +1 -1
- package/dist/vibeui.es.js +4257 -1827
- package/dist/vibeui.umd.js +1 -1
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -39,9 +39,41 @@ import 'bootstrap/dist/css/bootstrap.min.css';
|
|
|
39
39
|
createApp(App).use(VibeUI).mount('#app');
|
|
40
40
|
```
|
|
41
41
|
|
|
42
|
+
## What's New in v0.9
|
|
43
|
+
|
|
44
|
+
A big release driven by real-app migration feedback and a jQuery UI parity push.
|
|
45
|
+
|
|
46
|
+
**New components**
|
|
47
|
+
- `VibeFileInput` — file picker with drag-drop, accept enforcement, size limit
|
|
48
|
+
- `VibeSkeleton` — text / rect / circle / card loading placeholders with shimmer
|
|
49
|
+
- `VibeDatePicker` — calendar popover with single + range mode, keyboard nav
|
|
50
|
+
- `VibeAutocomplete` — search-as-you-type, sync or async source, debounced
|
|
51
|
+
- `VibeTabs` / `VibeTab` — tab container with content switching, lazy mode
|
|
52
|
+
- `VibeStepper` — multi-step wizard with sync/async guards
|
|
53
|
+
- `VibeSortable` — drag-to-reorder list
|
|
54
|
+
- `VibeDraggable` / `VibeDroppable` — kanban / builder primitives
|
|
55
|
+
- `VibeResizable` — corner / edge handle resizing with aspect / grid
|
|
56
|
+
- `VibeSlider` — single + range slider with handle swap, track click, keyboard
|
|
57
|
+
- `VibeToastHost` — host component for the new toast service
|
|
58
|
+
|
|
59
|
+
**New composables / directive**
|
|
60
|
+
- `useForm` — multi-field forms with reactive `fields`, `errors`, `touched`
|
|
61
|
+
- `useToast` — `toast.success() / error() / warn() / info() / dismiss()`
|
|
62
|
+
- `usePosition` — floating-ui-backed anchor positioning
|
|
63
|
+
- `v-vibe-tooltip` — inline tooltip directive
|
|
64
|
+
|
|
65
|
+
**API improvements**
|
|
66
|
+
- `VibeAlert`: rich slot content; `dismissible` (correctly spelled) alias
|
|
67
|
+
- `VibeButton`: `variant="link"`
|
|
68
|
+
- `VibeDataTable`: generic columns (`DataTableColumn<MyRow>`)
|
|
69
|
+
- `VibeFormSelect`: typed primitive option values (`null`, `undefined`, `boolean`)
|
|
70
|
+
- `VibeFormWysiwyg`: toolbar string presets (`'minimal' | 'standard' | 'full'`)
|
|
71
|
+
|
|
72
|
+
**Dependency**: `@floating-ui/dom` added (used by `usePosition`).
|
|
73
|
+
|
|
42
74
|
## Advanced Interactivity
|
|
43
75
|
|
|
44
|
-
VibeUI
|
|
76
|
+
VibeUI fully abstracts Bootstrap's JavaScript — you don't manually initialize tooltips, modals, or collapses. Touch devices get sensible defaults out of the box.
|
|
45
77
|
|
|
46
78
|
```vue
|
|
47
79
|
<template>
|
|
@@ -51,6 +83,9 @@ VibeUI v0.8.0 is optimized for mobile and hybrid apps, and fully abstracts Boots
|
|
|
51
83
|
<VibeButton>Hover or Tap Me</VibeButton>
|
|
52
84
|
</VibeTooltip>
|
|
53
85
|
|
|
86
|
+
<!-- Or as a directive (v0.9) -->
|
|
87
|
+
<VibeButton v-vibe-tooltip="'Inline tooltip'">Save</VibeButton>
|
|
88
|
+
|
|
54
89
|
<!-- Full v-model support for Modals with Android back button support -->
|
|
55
90
|
<VibeModal v-model="showModal" title="Hello!">
|
|
56
91
|
Fully reactive, automated, and hybrid-ready.
|
|
@@ -70,23 +105,150 @@ VibeUI handles accessibility and IDs for you.
|
|
|
70
105
|
<VibeFormInput v-model="email" type="email" />
|
|
71
106
|
</VibeFormGroup>
|
|
72
107
|
|
|
73
|
-
<!-- New in v0.8.0: Input Groups -->
|
|
74
108
|
<VibeInputGroup prepend="@">
|
|
75
109
|
<VibeFormInput v-model="username" noWrapper />
|
|
76
110
|
</VibeInputGroup>
|
|
111
|
+
|
|
112
|
+
<!-- New in v0.9: useForm composable for multi-field state -->
|
|
113
|
+
<script setup>
|
|
114
|
+
import { useForm, validators } from '@velkymx/vibeui'
|
|
115
|
+
const { fields, errors, validate, isDirty } = useForm({ name: '', email: '' })
|
|
116
|
+
</script>
|
|
77
117
|
</template>
|
|
78
118
|
```
|
|
79
119
|
|
|
120
|
+
## Toasts (v0.9 service form)
|
|
121
|
+
|
|
122
|
+
```ts
|
|
123
|
+
import { useToast } from '@velkymx/vibeui'
|
|
124
|
+
|
|
125
|
+
const toast = useToast()
|
|
126
|
+
toast.success('Saved')
|
|
127
|
+
toast.error('Network error', { delay: 8000 })
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Mount `<VibeToastHost />` once at the root and dispatch from anywhere.
|
|
131
|
+
|
|
80
132
|
## Components
|
|
81
133
|
|
|
82
|
-
VibeUI
|
|
134
|
+
VibeUI ships every major Bootstrap 5.3 component plus an interaction suite (drag/drop, sortable, resizable, slider, calendar) that fills the gap left by jQuery UI.
|
|
135
|
+
|
|
136
|
+
### Layout
|
|
137
|
+
|
|
138
|
+
| Component | Description |
|
|
139
|
+
|-----------|-------------|
|
|
140
|
+
| `VibeContainer` | Bootstrap container w/ breakpoints |
|
|
141
|
+
| `VibeRow` | Grid row |
|
|
142
|
+
| `VibeCol` | Grid column |
|
|
143
|
+
|
|
144
|
+
### Core
|
|
145
|
+
|
|
146
|
+
| Component | Doc |
|
|
147
|
+
|-----------|-----|
|
|
148
|
+
| `VibeAlert` | [docs](./docs/components/core/alert.md) |
|
|
149
|
+
| `VibeBadge` | [docs](./docs/components/core/badge.md) |
|
|
150
|
+
| `VibeButton` | [docs](./docs/components/core/button.md) |
|
|
151
|
+
| `VibeButtonGroup` | [docs](./docs/components/core/button-group.md) |
|
|
152
|
+
| `VibeCloseButton` | [docs](./docs/components/core/close-button.md) |
|
|
153
|
+
| `VibeIcon` | Bootstrap-icons wrapper |
|
|
154
|
+
| `VibeLink` | [docs](./docs/components/core/link.md) |
|
|
155
|
+
| `VibePlaceholder` | [docs](./docs/components/core/placeholder.md) |
|
|
156
|
+
| `VibeSkeleton` *(v0.9)* | [docs](./docs/components/core/skeleton.md) |
|
|
157
|
+
| `VibeSpinner` | [docs](./docs/components/core/spinner.md) |
|
|
158
|
+
|
|
159
|
+
### Navigation
|
|
160
|
+
|
|
161
|
+
| Component | Doc |
|
|
162
|
+
|-----------|-----|
|
|
163
|
+
| `VibeBreadcrumb` | [docs](./docs/components/navigation/breadcrumb.md) |
|
|
164
|
+
| `VibeNav` | [docs](./docs/components/navigation/nav.md) |
|
|
165
|
+
| `VibeNavbar` (+ `Brand`, `Toggle`, `Nav`) | [docs](./docs/components/navigation/navbar.md) |
|
|
166
|
+
| `VibePagination` | [docs](./docs/components/navigation/pagination.md) |
|
|
167
|
+
| `VibeScrollspy` | [docs](./docs/components/advanced/scrollspy.md) |
|
|
168
|
+
|
|
169
|
+
### Layout containers
|
|
170
|
+
|
|
171
|
+
| Component | Doc |
|
|
172
|
+
|-----------|-----|
|
|
173
|
+
| `VibeCard` | [docs](./docs/components/card/card.md) |
|
|
174
|
+
| `VibeListGroup` | [docs](./docs/components/list/list-group.md) |
|
|
175
|
+
|
|
176
|
+
### Interactive
|
|
177
|
+
|
|
178
|
+
| Component | Doc |
|
|
179
|
+
|-----------|-----|
|
|
180
|
+
| `VibeAccordion` | [docs](./docs/components/interactive/accordion.md) |
|
|
181
|
+
| `VibeCarousel` | [docs](./docs/components/interactive/carousel.md) |
|
|
182
|
+
| `VibeCollapse` | [docs](./docs/components/interactive/collapse.md) |
|
|
183
|
+
| `VibeDatePicker` *(v0.9)* | [docs](./docs/components/interactive/date-picker.md) |
|
|
184
|
+
| `VibeDraggable` *(v0.9)* | [docs](./docs/components/interactive/draggable.md) |
|
|
185
|
+
| `VibeDroppable` *(v0.9)* | [docs](./docs/components/interactive/draggable.md) |
|
|
186
|
+
| `VibeDropdown` | [docs](./docs/components/interactive/dropdown.md) |
|
|
187
|
+
| `VibeModal` | [docs](./docs/components/interactive/modal.md) |
|
|
188
|
+
| `VibeOffcanvas` | [docs](./docs/components/interactive/offcanvas.md) |
|
|
189
|
+
| `VibeResizable` *(v0.9)* | [docs](./docs/components/interactive/resizable.md) |
|
|
190
|
+
| `VibeSlider` *(v0.9)* | [docs](./docs/components/interactive/slider.md) |
|
|
191
|
+
| `VibeSortable` *(v0.9)* | [docs](./docs/components/interactive/sortable.md) |
|
|
192
|
+
| `VibeStepper` *(v0.9)* | [docs](./docs/components/interactive/stepper.md) |
|
|
193
|
+
| `VibeTabs` / `VibeTab` *(v0.9)* | [docs](./docs/components/interactive/tabs.md) |
|
|
194
|
+
| `VibeToast` / `VibeToastHost` *(v0.9)* | [component](./docs/components/interactive/toast.md), [service](./docs/composables/use-toast.md) |
|
|
195
|
+
|
|
196
|
+
### Tooltips & Popovers
|
|
197
|
+
|
|
198
|
+
| Component | Doc |
|
|
199
|
+
|-----------|-----|
|
|
200
|
+
| `VibePopover` | [docs](./docs/components/advanced/popover.md) |
|
|
201
|
+
| `VibeTooltip` | [docs](./docs/components/advanced/tooltip.md) |
|
|
202
|
+
|
|
203
|
+
### Data
|
|
204
|
+
|
|
205
|
+
| Component | Doc |
|
|
206
|
+
|-----------|-----|
|
|
207
|
+
| `VibeDataTable` | [docs](./docs/components/data/datatable.md) |
|
|
208
|
+
| `VibeProgress` | [docs](./docs/components/progress/progress.md) |
|
|
209
|
+
|
|
210
|
+
### Forms
|
|
211
|
+
|
|
212
|
+
| Component | Doc |
|
|
213
|
+
|-----------|-----|
|
|
214
|
+
| `VibeAutocomplete` *(v0.9)* | [docs](./docs/forms/autocomplete.md) |
|
|
215
|
+
| `VibeFileInput` *(v0.9)* | [docs](./docs/forms/file-input.md) |
|
|
216
|
+
| `VibeFormCheckbox` | [docs](./docs/forms/form-checkbox.md) |
|
|
217
|
+
| `VibeFormDatepicker` (native) | [docs](./docs/forms/form-datepicker.md) |
|
|
218
|
+
| `VibeFormGroup` | [docs](./docs/forms/form-group.md) |
|
|
219
|
+
| `VibeFormInput` | [docs](./docs/forms/form-input.md) |
|
|
220
|
+
| `VibeFormRadio` | [docs](./docs/forms/form-radio.md) |
|
|
221
|
+
| `VibeFormSelect` | [docs](./docs/forms/form-select.md) |
|
|
222
|
+
| `VibeFormSpinbutton` | [docs](./docs/forms/form-spinbutton.md) |
|
|
223
|
+
| `VibeFormSwitch` | [docs](./docs/forms/form-switch.md) |
|
|
224
|
+
| `VibeFormTextarea` | [docs](./docs/forms/form-textarea.md) |
|
|
225
|
+
| `VibeFormWysiwyg` | [docs](./docs/forms/form-wysiwyg.md) |
|
|
226
|
+
| `VibeInputGroup` | [docs](./docs/forms/input-group.md) |
|
|
227
|
+
| Validation rules | [docs](./docs/forms/validation.md) |
|
|
228
|
+
|
|
229
|
+
### Composables
|
|
230
|
+
|
|
231
|
+
| Composable | Doc |
|
|
232
|
+
|------------|-----|
|
|
233
|
+
| `useBackButton` | [docs](./docs/composables/back-button.md) |
|
|
234
|
+
| `useBreakpoints` | [docs](./docs/composables/breakpoints.md) |
|
|
235
|
+
| `useColorMode` | [docs](./docs/composables/color-mode.md) |
|
|
236
|
+
| `useForm` *(v0.9)* | [docs](./docs/composables/use-form.md) |
|
|
237
|
+
| `useFormValidation` | [docs](./docs/forms/validation.md) |
|
|
238
|
+
| `usePosition` *(v0.9)* | [docs](./docs/composables/use-position.md) |
|
|
239
|
+
| `useToast` *(v0.9)* | [docs](./docs/composables/use-toast.md) |
|
|
240
|
+
|
|
241
|
+
### Directives
|
|
242
|
+
|
|
243
|
+
| Directive | Doc |
|
|
244
|
+
|-----------|-----|
|
|
245
|
+
| `v-vibe-tooltip` *(v0.9)* | [docs](./docs/directives/v-tooltip.md) |
|
|
246
|
+
|
|
247
|
+
### Utilities
|
|
83
248
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
* **Interactive**: Accordion, Collapse, Dropdown, Modal, Offcanvas, Toast, Carousel
|
|
88
|
-
* **Data**: DataTable (with mobile Stack mode)
|
|
89
|
-
* **Forms**: Input, InputGroup, Select, Textarea, Spinbutton, Datepicker, Checkbox, Radio, Switch, Wysiwyg, FormGroup
|
|
249
|
+
| Topic | Doc |
|
|
250
|
+
|-------|-----|
|
|
251
|
+
| Position utility classes | [docs](./docs/utilities/position.md) |
|
|
90
252
|
|
|
91
253
|
## Full Documentation
|
|
92
254
|
|
|
@@ -26,9 +26,13 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
26
26
|
type: BooleanConstructor;
|
|
27
27
|
default: boolean;
|
|
28
28
|
};
|
|
29
|
+
dismissible: {
|
|
30
|
+
type: BooleanConstructor;
|
|
31
|
+
default: boolean;
|
|
32
|
+
};
|
|
29
33
|
message: {
|
|
30
34
|
type: StringConstructor;
|
|
31
|
-
|
|
35
|
+
default: string;
|
|
32
36
|
};
|
|
33
37
|
fade: {
|
|
34
38
|
type: BooleanConstructor;
|
|
@@ -56,9 +60,13 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
56
60
|
type: BooleanConstructor;
|
|
57
61
|
default: boolean;
|
|
58
62
|
};
|
|
63
|
+
dismissible: {
|
|
64
|
+
type: BooleanConstructor;
|
|
65
|
+
default: boolean;
|
|
66
|
+
};
|
|
59
67
|
message: {
|
|
60
68
|
type: StringConstructor;
|
|
61
|
-
|
|
69
|
+
default: string;
|
|
62
70
|
};
|
|
63
71
|
fade: {
|
|
64
72
|
type: BooleanConstructor;
|
|
@@ -74,6 +82,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
74
82
|
subtle: boolean;
|
|
75
83
|
modelValue: boolean;
|
|
76
84
|
dismissable: boolean;
|
|
85
|
+
dismissible: boolean;
|
|
86
|
+
message: string;
|
|
77
87
|
fade: boolean;
|
|
78
88
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
|
|
79
89
|
alertRef: HTMLDivElement;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
declare const _default: <T = string>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
2
|
+
props: __VLS_PrettifyLocal<Pick<Partial<{
|
|
3
|
+
modelValue: string;
|
|
4
|
+
label: string;
|
|
5
|
+
disabled: boolean;
|
|
6
|
+
placeholder: string;
|
|
7
|
+
id: string;
|
|
8
|
+
minChars: number;
|
|
9
|
+
debounce: number;
|
|
10
|
+
itemText: (item: T) => string;
|
|
11
|
+
maxResults: number;
|
|
12
|
+
}> & Omit<{
|
|
13
|
+
readonly modelValue: string;
|
|
14
|
+
readonly source: T[] | ((query: string) => T[] | Promise<T[]>);
|
|
15
|
+
readonly disabled: boolean;
|
|
16
|
+
readonly placeholder: string;
|
|
17
|
+
readonly minChars: number;
|
|
18
|
+
readonly debounce: number;
|
|
19
|
+
readonly maxResults: number;
|
|
20
|
+
readonly label?: string | undefined;
|
|
21
|
+
readonly id?: string | undefined;
|
|
22
|
+
readonly itemText?: ((item: T) => string) | undefined;
|
|
23
|
+
readonly "onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
24
|
+
readonly onSelect?: ((item: T) => any) | undefined;
|
|
25
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "modelValue" | "label" | "disabled" | "placeholder" | "id" | "minChars" | "debounce" | "itemText" | "maxResults">, "onUpdate:modelValue" | "source" | "onSelect" | ("modelValue" | "label" | "disabled" | "placeholder" | "id" | "minChars" | "debounce" | "itemText" | "maxResults")> & {} & Partial<{}>> & import('vue').PublicProps;
|
|
26
|
+
expose(exposed: import('vue').ShallowUnwrapRef<{}>): void;
|
|
27
|
+
attrs: any;
|
|
28
|
+
slots: {
|
|
29
|
+
item?(_: {
|
|
30
|
+
item: T;
|
|
31
|
+
index: number;
|
|
32
|
+
label: string;
|
|
33
|
+
}): any;
|
|
34
|
+
empty?(_: {}): any;
|
|
35
|
+
};
|
|
36
|
+
emit: {
|
|
37
|
+
(e: "update:modelValue", value: string): void;
|
|
38
|
+
(e: "select", item: T): void;
|
|
39
|
+
};
|
|
40
|
+
}>) => import('vue').VNode & {
|
|
41
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
42
|
+
};
|
|
43
|
+
export default _default;
|
|
44
|
+
type __VLS_PrettifyLocal<T> = {
|
|
45
|
+
[K in keyof T]: T[K];
|
|
46
|
+
} & {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ButtonVariant, Size, ButtonType } from '../types';
|
|
2
2
|
declare function __VLS_template(): {
|
|
3
3
|
attrs: Partial<{}>;
|
|
4
4
|
slots: {
|
|
@@ -10,7 +10,7 @@ declare function __VLS_template(): {
|
|
|
10
10
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
11
11
|
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
12
12
|
variant: {
|
|
13
|
-
type: () =>
|
|
13
|
+
type: () => ButtonVariant;
|
|
14
14
|
default: string;
|
|
15
15
|
};
|
|
16
16
|
size: {
|
|
@@ -50,7 +50,7 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
50
50
|
click: (...args: any[]) => void;
|
|
51
51
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
52
52
|
variant: {
|
|
53
|
-
type: () =>
|
|
53
|
+
type: () => ButtonVariant;
|
|
54
54
|
default: string;
|
|
55
55
|
};
|
|
56
56
|
size: {
|
|
@@ -89,7 +89,7 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
89
89
|
"onComponent-error"?: ((...args: any[]) => any) | undefined;
|
|
90
90
|
onClick?: ((...args: any[]) => any) | undefined;
|
|
91
91
|
}>, {
|
|
92
|
-
variant:
|
|
92
|
+
variant: ButtonVariant;
|
|
93
93
|
type: ButtonType;
|
|
94
94
|
size: Size;
|
|
95
95
|
outline: boolean;
|
|
@@ -4,13 +4,13 @@ declare const _default: <T extends Record<string, unknown>>(__VLS_props: NonNull
|
|
|
4
4
|
variant: string;
|
|
5
5
|
small: boolean;
|
|
6
6
|
items: T[];
|
|
7
|
+
stack: boolean;
|
|
7
8
|
hover: boolean;
|
|
8
9
|
rowKey: string;
|
|
9
10
|
striped: boolean;
|
|
10
11
|
bordered: boolean;
|
|
11
12
|
borderless: boolean;
|
|
12
13
|
responsive: boolean;
|
|
13
|
-
stack: boolean;
|
|
14
14
|
searchable: boolean;
|
|
15
15
|
sortable: boolean;
|
|
16
16
|
paginated: boolean;
|
|
@@ -26,14 +26,14 @@ declare const _default: <T extends Record<string, unknown>>(__VLS_props: NonNull
|
|
|
26
26
|
}> & Omit<{
|
|
27
27
|
readonly small: boolean;
|
|
28
28
|
readonly items: T[];
|
|
29
|
+
readonly stack: boolean;
|
|
29
30
|
readonly hover: boolean;
|
|
30
|
-
readonly columns: DataTableColumn[];
|
|
31
|
+
readonly columns: DataTableColumn<T>[];
|
|
31
32
|
readonly rowKey: string;
|
|
32
33
|
readonly striped: boolean;
|
|
33
34
|
readonly bordered: boolean;
|
|
34
35
|
readonly borderless: boolean;
|
|
35
36
|
readonly responsive: boolean;
|
|
36
|
-
readonly stack: boolean;
|
|
37
37
|
readonly searchable: boolean;
|
|
38
38
|
readonly sortable: boolean;
|
|
39
39
|
readonly paginated: boolean;
|
|
@@ -53,7 +53,7 @@ declare const _default: <T extends Record<string, unknown>>(__VLS_props: NonNull
|
|
|
53
53
|
readonly "onUpdate:sortBy"?: ((value: string | undefined) => any) | undefined;
|
|
54
54
|
readonly "onUpdate:sortDesc"?: ((value: boolean) => any) | undefined;
|
|
55
55
|
readonly "onRow-clicked"?: ((...args: any[]) => any) | undefined;
|
|
56
|
-
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "variant" | "small" | "items" | "hover" | "rowKey" | "striped" | "bordered" | "borderless" | "responsive" | "
|
|
56
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "variant" | "small" | "items" | "stack" | "hover" | "rowKey" | "striped" | "bordered" | "borderless" | "responsive" | "searchable" | "sortable" | "paginated" | "searchPlaceholder" | "searchDebounce" | "showEmpty" | "emptyText" | "showPerPage" | "showInfo" | "infoText" | "filteredInfoText" | "perPageOptions">, "onComponent-error" | "onUpdate:currentPage" | "columns" | "onUpdate:perPage" | "onUpdate:sortBy" | "onUpdate:sortDesc" | "onRow-clicked" | ("variant" | "small" | "items" | "stack" | "hover" | "rowKey" | "striped" | "bordered" | "borderless" | "responsive" | "searchable" | "sortable" | "paginated" | "searchPlaceholder" | "searchDebounce" | "showEmpty" | "emptyText" | "showPerPage" | "showInfo" | "infoText" | "filteredInfoText" | "perPageOptions")> & {
|
|
57
57
|
currentPage?: number;
|
|
58
58
|
perPage?: number;
|
|
59
59
|
sortBy?: string | undefined;
|
|
@@ -61,9 +61,9 @@ declare const _default: <T extends Record<string, unknown>>(__VLS_props: NonNull
|
|
|
61
61
|
} & Partial<{}>> & import('vue').PublicProps;
|
|
62
62
|
expose(exposed: import('vue').ShallowUnwrapRef<{}>): void;
|
|
63
63
|
attrs: any;
|
|
64
|
-
slots: Partial<Record<`cell(${string})`, (_: {
|
|
64
|
+
slots: Partial<Record<`cell(${keyof T & string})`, (_: {
|
|
65
65
|
item: T;
|
|
66
|
-
value:
|
|
66
|
+
value: T[keyof T & string];
|
|
67
67
|
index: number;
|
|
68
68
|
}) => any>>;
|
|
69
69
|
emit: ((event: "component-error" | "row-clicked", ...args: any[]) => void) & (((evt: "update:currentPage", value: number) => void) & ((evt: "update:perPage", value: number) => void) & ((evt: "update:sortBy", value: string | undefined) => void) & ((evt: "update:sortDesc", value: boolean) => void));
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
type IsoDate = string;
|
|
3
|
+
type DateValue = IsoDate | null;
|
|
4
|
+
type RangeValue = [DateValue, DateValue];
|
|
5
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
6
|
+
modelValue: {
|
|
7
|
+
type: PropType<DateValue | RangeValue>;
|
|
8
|
+
default: null;
|
|
9
|
+
};
|
|
10
|
+
range: {
|
|
11
|
+
type: BooleanConstructor;
|
|
12
|
+
default: boolean;
|
|
13
|
+
};
|
|
14
|
+
min: {
|
|
15
|
+
type: PropType<IsoDate>;
|
|
16
|
+
default: undefined;
|
|
17
|
+
};
|
|
18
|
+
max: {
|
|
19
|
+
type: PropType<IsoDate>;
|
|
20
|
+
default: undefined;
|
|
21
|
+
};
|
|
22
|
+
disabledDates: {
|
|
23
|
+
type: PropType<IsoDate[]>;
|
|
24
|
+
default: () => never[];
|
|
25
|
+
};
|
|
26
|
+
format: {
|
|
27
|
+
type: PropType<(iso: IsoDate) => string>;
|
|
28
|
+
default: undefined;
|
|
29
|
+
};
|
|
30
|
+
placeholder: {
|
|
31
|
+
type: StringConstructor;
|
|
32
|
+
default: string;
|
|
33
|
+
};
|
|
34
|
+
weekStart: {
|
|
35
|
+
type: NumberConstructor;
|
|
36
|
+
default: number;
|
|
37
|
+
};
|
|
38
|
+
id: {
|
|
39
|
+
type: StringConstructor;
|
|
40
|
+
default: undefined;
|
|
41
|
+
};
|
|
42
|
+
label: {
|
|
43
|
+
type: StringConstructor;
|
|
44
|
+
default: undefined;
|
|
45
|
+
};
|
|
46
|
+
disabled: {
|
|
47
|
+
type: BooleanConstructor;
|
|
48
|
+
default: boolean;
|
|
49
|
+
};
|
|
50
|
+
}>, {
|
|
51
|
+
open: () => void;
|
|
52
|
+
close: () => void;
|
|
53
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
54
|
+
"update:modelValue": (value: DateValue | RangeValue) => any;
|
|
55
|
+
close: () => any;
|
|
56
|
+
open: () => any;
|
|
57
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
58
|
+
modelValue: {
|
|
59
|
+
type: PropType<DateValue | RangeValue>;
|
|
60
|
+
default: null;
|
|
61
|
+
};
|
|
62
|
+
range: {
|
|
63
|
+
type: BooleanConstructor;
|
|
64
|
+
default: boolean;
|
|
65
|
+
};
|
|
66
|
+
min: {
|
|
67
|
+
type: PropType<IsoDate>;
|
|
68
|
+
default: undefined;
|
|
69
|
+
};
|
|
70
|
+
max: {
|
|
71
|
+
type: PropType<IsoDate>;
|
|
72
|
+
default: undefined;
|
|
73
|
+
};
|
|
74
|
+
disabledDates: {
|
|
75
|
+
type: PropType<IsoDate[]>;
|
|
76
|
+
default: () => never[];
|
|
77
|
+
};
|
|
78
|
+
format: {
|
|
79
|
+
type: PropType<(iso: IsoDate) => string>;
|
|
80
|
+
default: undefined;
|
|
81
|
+
};
|
|
82
|
+
placeholder: {
|
|
83
|
+
type: StringConstructor;
|
|
84
|
+
default: string;
|
|
85
|
+
};
|
|
86
|
+
weekStart: {
|
|
87
|
+
type: NumberConstructor;
|
|
88
|
+
default: number;
|
|
89
|
+
};
|
|
90
|
+
id: {
|
|
91
|
+
type: StringConstructor;
|
|
92
|
+
default: undefined;
|
|
93
|
+
};
|
|
94
|
+
label: {
|
|
95
|
+
type: StringConstructor;
|
|
96
|
+
default: undefined;
|
|
97
|
+
};
|
|
98
|
+
disabled: {
|
|
99
|
+
type: BooleanConstructor;
|
|
100
|
+
default: boolean;
|
|
101
|
+
};
|
|
102
|
+
}>> & Readonly<{
|
|
103
|
+
"onUpdate:modelValue"?: ((value: DateValue | RangeValue) => any) | undefined;
|
|
104
|
+
onClose?: (() => any) | undefined;
|
|
105
|
+
onOpen?: (() => any) | undefined;
|
|
106
|
+
}>, {
|
|
107
|
+
modelValue: DateValue | RangeValue;
|
|
108
|
+
label: string;
|
|
109
|
+
disabled: boolean;
|
|
110
|
+
placeholder: string;
|
|
111
|
+
id: string;
|
|
112
|
+
range: boolean;
|
|
113
|
+
min: string;
|
|
114
|
+
max: string;
|
|
115
|
+
disabledDates: string[];
|
|
116
|
+
format: (iso: IsoDate) => string;
|
|
117
|
+
weekStart: number;
|
|
118
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
|
|
119
|
+
rootRef: HTMLDivElement;
|
|
120
|
+
popoverRef: HTMLDivElement;
|
|
121
|
+
}, HTMLDivElement>;
|
|
122
|
+
export default _default;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
declare function __VLS_template(): {
|
|
3
|
+
attrs: Partial<{}>;
|
|
4
|
+
slots: {
|
|
5
|
+
default?(_: {
|
|
6
|
+
isDragging: boolean;
|
|
7
|
+
}): any;
|
|
8
|
+
};
|
|
9
|
+
refs: {};
|
|
10
|
+
rootEl: any;
|
|
11
|
+
};
|
|
12
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
13
|
+
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
14
|
+
payload: {
|
|
15
|
+
type: PropType<unknown>;
|
|
16
|
+
default: undefined;
|
|
17
|
+
};
|
|
18
|
+
group: {
|
|
19
|
+
type: StringConstructor;
|
|
20
|
+
default: string;
|
|
21
|
+
};
|
|
22
|
+
disabled: {
|
|
23
|
+
type: BooleanConstructor;
|
|
24
|
+
default: boolean;
|
|
25
|
+
};
|
|
26
|
+
tag: {
|
|
27
|
+
type: StringConstructor;
|
|
28
|
+
default: string;
|
|
29
|
+
};
|
|
30
|
+
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
31
|
+
dragend: (payload: {
|
|
32
|
+
payload: unknown;
|
|
33
|
+
group: string;
|
|
34
|
+
event: DragEvent;
|
|
35
|
+
}) => any;
|
|
36
|
+
dragstart: (payload: {
|
|
37
|
+
payload: unknown;
|
|
38
|
+
group: string;
|
|
39
|
+
event: DragEvent;
|
|
40
|
+
}) => any;
|
|
41
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
42
|
+
payload: {
|
|
43
|
+
type: PropType<unknown>;
|
|
44
|
+
default: undefined;
|
|
45
|
+
};
|
|
46
|
+
group: {
|
|
47
|
+
type: StringConstructor;
|
|
48
|
+
default: string;
|
|
49
|
+
};
|
|
50
|
+
disabled: {
|
|
51
|
+
type: BooleanConstructor;
|
|
52
|
+
default: boolean;
|
|
53
|
+
};
|
|
54
|
+
tag: {
|
|
55
|
+
type: StringConstructor;
|
|
56
|
+
default: string;
|
|
57
|
+
};
|
|
58
|
+
}>> & Readonly<{
|
|
59
|
+
onDragend?: ((payload: {
|
|
60
|
+
payload: unknown;
|
|
61
|
+
group: string;
|
|
62
|
+
event: DragEvent;
|
|
63
|
+
}) => any) | undefined;
|
|
64
|
+
onDragstart?: ((payload: {
|
|
65
|
+
payload: unknown;
|
|
66
|
+
group: string;
|
|
67
|
+
event: DragEvent;
|
|
68
|
+
}) => any) | undefined;
|
|
69
|
+
}>, {
|
|
70
|
+
tag: string;
|
|
71
|
+
disabled: boolean;
|
|
72
|
+
group: string;
|
|
73
|
+
payload: undefined;
|
|
74
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
75
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
76
|
+
export default _default;
|
|
77
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
78
|
+
new (): {
|
|
79
|
+
$slots: S;
|
|
80
|
+
};
|
|
81
|
+
};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
declare function __VLS_template(): {
|
|
2
|
+
attrs: Partial<{}>;
|
|
3
|
+
slots: {
|
|
4
|
+
default?(_: {
|
|
5
|
+
isOver: boolean;
|
|
6
|
+
}): any;
|
|
7
|
+
};
|
|
8
|
+
refs: {};
|
|
9
|
+
rootEl: any;
|
|
10
|
+
};
|
|
11
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
12
|
+
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
13
|
+
group: {
|
|
14
|
+
type: StringConstructor;
|
|
15
|
+
default: string;
|
|
16
|
+
};
|
|
17
|
+
acceptGroups: {
|
|
18
|
+
type: () => string[];
|
|
19
|
+
default: undefined;
|
|
20
|
+
};
|
|
21
|
+
disabled: {
|
|
22
|
+
type: BooleanConstructor;
|
|
23
|
+
default: boolean;
|
|
24
|
+
};
|
|
25
|
+
tag: {
|
|
26
|
+
type: StringConstructor;
|
|
27
|
+
default: string;
|
|
28
|
+
};
|
|
29
|
+
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
30
|
+
dragenter: (event: DragEvent) => any;
|
|
31
|
+
dragleave: (event: DragEvent) => any;
|
|
32
|
+
drop: (payload: {
|
|
33
|
+
payload: unknown;
|
|
34
|
+
group: string;
|
|
35
|
+
event: DragEvent;
|
|
36
|
+
}) => any;
|
|
37
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
38
|
+
group: {
|
|
39
|
+
type: StringConstructor;
|
|
40
|
+
default: string;
|
|
41
|
+
};
|
|
42
|
+
acceptGroups: {
|
|
43
|
+
type: () => string[];
|
|
44
|
+
default: undefined;
|
|
45
|
+
};
|
|
46
|
+
disabled: {
|
|
47
|
+
type: BooleanConstructor;
|
|
48
|
+
default: boolean;
|
|
49
|
+
};
|
|
50
|
+
tag: {
|
|
51
|
+
type: StringConstructor;
|
|
52
|
+
default: string;
|
|
53
|
+
};
|
|
54
|
+
}>> & Readonly<{
|
|
55
|
+
onDragenter?: ((event: DragEvent) => any) | undefined;
|
|
56
|
+
onDragleave?: ((event: DragEvent) => any) | undefined;
|
|
57
|
+
onDrop?: ((payload: {
|
|
58
|
+
payload: unknown;
|
|
59
|
+
group: string;
|
|
60
|
+
event: DragEvent;
|
|
61
|
+
}) => any) | undefined;
|
|
62
|
+
}>, {
|
|
63
|
+
tag: string;
|
|
64
|
+
disabled: boolean;
|
|
65
|
+
group: string;
|
|
66
|
+
acceptGroups: string[];
|
|
67
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
68
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
69
|
+
export default _default;
|
|
70
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
71
|
+
new (): {
|
|
72
|
+
$slots: S;
|
|
73
|
+
};
|
|
74
|
+
};
|