@velkymx/vibeui 0.4.2 → 0.5.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.
- package/README.md +96 -78
- package/dist/components/VibeAccordion.vue.d.ts +12 -4
- package/dist/components/VibeBreadcrumb.vue.d.ts +8 -4
- package/dist/components/VibeCard.vue.d.ts +32 -21
- package/dist/components/VibeCarousel.vue.d.ts +7 -6
- package/dist/components/VibeDataTable.vue.d.ts +68 -255
- package/dist/components/VibeDropdown.vue.d.ts +13 -4
- package/dist/components/VibeFormCheckbox.vue.d.ts +4 -3
- package/dist/components/VibeFormDatepicker.vue.d.ts +5 -4
- package/dist/components/VibeFormInput.vue.d.ts +14 -15
- package/dist/components/VibeFormRadio.vue.d.ts +4 -3
- package/dist/components/VibeFormSelect.vue.d.ts +4 -3
- package/dist/components/VibeFormSpinbutton.vue.d.ts +5 -4
- package/dist/components/VibeFormSwitch.vue.d.ts +4 -3
- package/dist/components/VibeFormTextarea.vue.d.ts +4 -3
- package/dist/components/VibeFormWysiwyg.vue.d.ts +12 -13
- package/dist/components/VibeListGroup.vue.d.ts +15 -4
- package/dist/components/VibeModal.vue.d.ts +6 -2
- package/dist/components/VibeNav.vue.d.ts +15 -4
- package/dist/components/VibeNavbarNav.vue.d.ts +14 -1
- package/dist/components/VibePagination.vue.d.ts +32 -4
- package/dist/components/VibeProgress.vue.d.ts +13 -1
- package/dist/components/VibeTabContent.vue.d.ts +22 -2
- package/dist/components/VibeToast.vue.d.ts +6 -2
- package/dist/components/index.d.ts +4 -20
- package/dist/composables/useFormValidation.d.ts +10 -8
- package/dist/types.d.ts +16 -0
- package/dist/vibeui.css +1 -1
- package/dist/vibeui.es.js +1477 -1627
- package/dist/vibeui.umd.js +1 -1
- package/package.json +10 -1
- package/dist/components/VibeAccordionItem.vue.d.ts +0 -57
- package/dist/components/VibeBreadcrumbItem.vue.d.ts +0 -51
- package/dist/components/VibeCardBody.vue.d.ts +0 -34
- package/dist/components/VibeCardFooter.vue.d.ts +0 -34
- package/dist/components/VibeCardHeader.vue.d.ts +0 -34
- package/dist/components/VibeCardImg.vue.d.ts +0 -44
- package/dist/components/VibeCardText.vue.d.ts +0 -33
- package/dist/components/VibeCardTitle.vue.d.ts +0 -33
- package/dist/components/VibeCarouselSlide.vue.d.ts +0 -80
- package/dist/components/VibeDropdownItem.vue.d.ts +0 -81
- package/dist/components/VibeListGroupItem.vue.d.ts +0 -90
- package/dist/components/VibeNavItem.vue.d.ts +0 -80
- package/dist/components/VibePaginationItem.vue.d.ts +0 -62
- package/dist/components/VibeProgressBar.vue.d.ts +0 -88
- package/dist/components/VibeTabPane.vue.d.ts +0 -70
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@ A modern Vue 3 UI component library built with Bootstrap 5, designed to simplify
|
|
|
6
6
|
|
|
7
7
|
* **Vue 3 Composition API**: Built from the ground up using modern, reactive Vue.js practices.
|
|
8
8
|
* **Bootstrap 5 Integration**: Directly utilizes Bootstrap 5 CSS for consistency, without additional styling overhead.
|
|
9
|
-
* **
|
|
9
|
+
* **Data-Driven Components**: Pass data arrays to components with props and customize rendering with scoped slots.
|
|
10
10
|
* **Lightweight & Modular**: Import only what you need, keeping your bundle small.
|
|
11
11
|
* **TypeScript Support**: Fully typed components for a great developer experience.
|
|
12
12
|
* **Accessibility First**: Components crafted with accessibility and usability in mind.
|
|
@@ -63,22 +63,27 @@ const showAlert = ref(true);
|
|
|
63
63
|
</template>
|
|
64
64
|
```
|
|
65
65
|
|
|
66
|
-
##
|
|
66
|
+
## Data-Driven Components
|
|
67
67
|
|
|
68
|
-
|
|
68
|
+
VibeUI components are designed to be data-driven for maximum flexibility and maintainability:
|
|
69
69
|
|
|
70
|
-
###
|
|
70
|
+
### Basic Usage with Props
|
|
71
71
|
|
|
72
|
-
|
|
72
|
+
Pass data arrays to components and let them handle the rendering:
|
|
73
73
|
|
|
74
74
|
```vue
|
|
75
75
|
<template>
|
|
76
76
|
<VibeBreadcrumb :items="breadcrumbItems" />
|
|
77
77
|
<VibeNav tabs :items="navItems" />
|
|
78
78
|
<VibeDropdown id="menu" text="Menu" :items="dropdownItems" />
|
|
79
|
+
<VibePagination :total-pages="10" v-model:current-page="page" />
|
|
79
80
|
</template>
|
|
80
81
|
|
|
81
82
|
<script setup>
|
|
83
|
+
import { ref } from 'vue'
|
|
84
|
+
|
|
85
|
+
const page = ref(1)
|
|
86
|
+
|
|
82
87
|
const breadcrumbItems = [
|
|
83
88
|
{ text: 'Home', href: '/' },
|
|
84
89
|
{ text: 'Products', href: '/products' },
|
|
@@ -100,70 +105,101 @@ const dropdownItems = [
|
|
|
100
105
|
</script>
|
|
101
106
|
```
|
|
102
107
|
|
|
103
|
-
###
|
|
108
|
+
### Custom Rendering with Scoped Slots
|
|
104
109
|
|
|
105
|
-
|
|
110
|
+
Need to customize how items are rendered? Use scoped slots:
|
|
106
111
|
|
|
107
112
|
```vue
|
|
108
113
|
<template>
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
<
|
|
112
|
-
|
|
114
|
+
<!-- Custom item rendering -->
|
|
115
|
+
<VibeBreadcrumb :items="breadcrumbItems">
|
|
116
|
+
<template #item="{ item, index }">
|
|
117
|
+
<VibeIcon :icon="item.icon" /> {{ item.text }}
|
|
118
|
+
</template>
|
|
113
119
|
</VibeBreadcrumb>
|
|
114
120
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
<
|
|
118
|
-
|
|
121
|
+
<!-- Custom nav items with badges -->
|
|
122
|
+
<VibeNav tabs :items="navItems">
|
|
123
|
+
<template #item="{ item }">
|
|
124
|
+
{{ item.text }}
|
|
125
|
+
<VibeBadge v-if="item.count" variant="danger">{{ item.count }}</VibeBadge>
|
|
126
|
+
</template>
|
|
119
127
|
</VibeNav>
|
|
120
128
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
<
|
|
124
|
-
|
|
125
|
-
|
|
129
|
+
<!-- Custom dropdown items -->
|
|
130
|
+
<VibeDropdown id="menu" text="Menu" :items="dropdownItems">
|
|
131
|
+
<template #item="{ item }">
|
|
132
|
+
<VibeIcon :icon="item.icon" class="me-2" />
|
|
133
|
+
{{ item.text }}
|
|
134
|
+
</template>
|
|
126
135
|
</VibeDropdown>
|
|
127
136
|
</template>
|
|
137
|
+
|
|
138
|
+
<script setup>
|
|
139
|
+
const breadcrumbItems = [
|
|
140
|
+
{ text: 'Home', href: '/', icon: 'house-fill' },
|
|
141
|
+
{ text: 'Products', href: '/products', icon: 'box' },
|
|
142
|
+
{ text: 'Details', active: true, icon: 'info-circle' }
|
|
143
|
+
]
|
|
144
|
+
|
|
145
|
+
const navItems = [
|
|
146
|
+
{ text: 'Home', href: '#', active: true },
|
|
147
|
+
{ text: 'Messages', href: '#', count: 5 },
|
|
148
|
+
{ text: 'Settings', href: '#' }
|
|
149
|
+
]
|
|
150
|
+
|
|
151
|
+
const dropdownItems = [
|
|
152
|
+
{ text: 'Profile', href: '#', icon: 'person' },
|
|
153
|
+
{ text: 'Settings', href: '#', icon: 'gear' },
|
|
154
|
+
{ divider: true },
|
|
155
|
+
{ text: 'Logout', href: '#', icon: 'box-arrow-right' }
|
|
156
|
+
]
|
|
157
|
+
</script>
|
|
128
158
|
```
|
|
129
159
|
|
|
130
|
-
|
|
160
|
+
Data-driven components include: `VibeBreadcrumb`, `VibeNav`, `VibeNavbarNav`, `VibePagination`, `VibeListGroup`, `VibeAccordion`, `VibeDropdown`, `VibeCarousel`, `VibeProgress`, and `VibeTabContent`.
|
|
131
161
|
|
|
132
162
|
## Tabs
|
|
133
163
|
|
|
134
|
-
VibeUI provides complete tab functionality
|
|
164
|
+
VibeUI provides complete tab functionality using a data-driven approach:
|
|
135
165
|
|
|
136
166
|
```vue
|
|
137
167
|
<template>
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
</VibeNav>
|
|
144
|
-
|
|
145
|
-
<!-- Tab Content -->
|
|
146
|
-
<VibeTabContent>
|
|
147
|
-
<VibeTabPane id="home-tab" active>
|
|
148
|
-
<h3>Home Content</h3>
|
|
149
|
-
<p>This is the home tab content.</p>
|
|
150
|
-
</VibeTabPane>
|
|
151
|
-
<VibeTabPane id="profile-tab">
|
|
152
|
-
<h3>Profile Content</h3>
|
|
153
|
-
<p>This is the profile tab content.</p>
|
|
154
|
-
</VibeTabPane>
|
|
155
|
-
<VibeTabPane id="contact-tab">
|
|
156
|
-
<h3>Contact Content</h3>
|
|
157
|
-
<p>This is the contact tab content.</p>
|
|
158
|
-
</VibeTabPane>
|
|
168
|
+
<VibeTabContent :panes="tabPanes">
|
|
169
|
+
<template #pane="{ pane }">
|
|
170
|
+
<h3>{{ pane.title }}</h3>
|
|
171
|
+
<p>{{ pane.content }}</p>
|
|
172
|
+
</template>
|
|
159
173
|
</VibeTabContent>
|
|
160
174
|
</template>
|
|
175
|
+
|
|
176
|
+
<script setup>
|
|
177
|
+
const tabPanes = [
|
|
178
|
+
{
|
|
179
|
+
id: 'home-tab',
|
|
180
|
+
title: 'Home',
|
|
181
|
+
content: 'This is the home tab content.',
|
|
182
|
+
active: true
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
id: 'profile-tab',
|
|
186
|
+
title: 'Profile',
|
|
187
|
+
content: 'This is the profile tab content.'
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
id: 'contact-tab',
|
|
191
|
+
title: 'Contact',
|
|
192
|
+
content: 'This is the contact tab content.'
|
|
193
|
+
}
|
|
194
|
+
]
|
|
195
|
+
</script>
|
|
161
196
|
```
|
|
162
197
|
|
|
163
198
|
**Key Features:**
|
|
164
|
-
-
|
|
165
|
-
-
|
|
199
|
+
- Data-driven with `panes` array prop
|
|
200
|
+
- Automatic Bootstrap tab behavior with proper ARIA attributes
|
|
166
201
|
- Fade transitions enabled by default
|
|
202
|
+
- Scoped slot for custom pane content
|
|
167
203
|
- Works seamlessly with Bootstrap's JavaScript
|
|
168
204
|
|
|
169
205
|
## Bootstrap Icons
|
|
@@ -233,13 +269,10 @@ import 'bootstrap-icons/font/bootstrap-icons.css';
|
|
|
233
269
|
<VibeIcon icon="trash" color="red" @click="deleteItem" style="cursor: pointer" />
|
|
234
270
|
|
|
235
271
|
<!-- Icon in navigation -->
|
|
236
|
-
<VibeNav>
|
|
237
|
-
<
|
|
238
|
-
<VibeIcon icon="
|
|
239
|
-
</
|
|
240
|
-
<VibeNavItem>
|
|
241
|
-
<VibeIcon icon="person" /> Profile
|
|
242
|
-
</VibeNavItem>
|
|
272
|
+
<VibeNav :items="navItems">
|
|
273
|
+
<template #item="{ item }">
|
|
274
|
+
<VibeIcon :icon="item.icon" /> {{ item.text }}
|
|
275
|
+
</template>
|
|
243
276
|
</VibeNav>
|
|
244
277
|
</template>
|
|
245
278
|
```
|
|
@@ -705,47 +738,32 @@ VibeUI includes all major Bootstrap 5.3 components:
|
|
|
705
738
|
* **VibePlaceholder** - Placeholder loading states with animations
|
|
706
739
|
|
|
707
740
|
### Card Components
|
|
708
|
-
* **VibeCard** - Card container with
|
|
709
|
-
* **VibeCardHeader** - Card header section
|
|
710
|
-
* **VibeCardBody** - Card body section
|
|
711
|
-
* **VibeCardFooter** - Card footer section
|
|
712
|
-
* **VibeCardImg** - Card images (top, bottom, or overlay)
|
|
713
|
-
* **VibeCardTitle** - Card title heading
|
|
714
|
-
* **VibeCardText** - Card text paragraph
|
|
741
|
+
* **VibeCard** - Card container with header, body, footer, and image support via props and named slots
|
|
715
742
|
|
|
716
743
|
### Navigation Components
|
|
717
|
-
* **VibeBreadcrumb** -
|
|
718
|
-
* **
|
|
719
|
-
* **VibeNav** - Navigation tabs and pills
|
|
720
|
-
* **VibeNavItem** - Navigation items with active state and tab support
|
|
744
|
+
* **VibeBreadcrumb** - Data-driven breadcrumb navigation with `items` prop
|
|
745
|
+
* **VibeNav** - Navigation tabs and pills with `items` prop
|
|
721
746
|
* **VibeNavbar** - Responsive navbar with variants
|
|
722
747
|
* **VibeNavbarBrand** - Navbar branding section
|
|
723
748
|
* **VibeNavbarToggle** - Navbar mobile toggle button
|
|
724
|
-
* **VibeNavbarNav** - Navbar navigation links
|
|
725
|
-
* **VibePagination** -
|
|
726
|
-
* **
|
|
727
|
-
* **VibeTabContent** - Container for tab panes
|
|
728
|
-
* **VibeTabPane** - Individual tab panel content
|
|
749
|
+
* **VibeNavbarNav** - Navbar navigation links with optional `items` prop
|
|
750
|
+
* **VibePagination** - Data-driven pagination with `totalPages` prop and v-model support
|
|
751
|
+
* **VibeTabContent** - Tab panes container with `panes` prop
|
|
729
752
|
|
|
730
753
|
### List Components
|
|
731
|
-
* **VibeListGroup** -
|
|
732
|
-
* **VibeListGroupItem** - List items with variants and active state
|
|
754
|
+
* **VibeListGroup** - Data-driven list group with `items` prop, supports flush and horizontal layouts
|
|
733
755
|
|
|
734
756
|
### Progress Components
|
|
735
|
-
* **VibeProgress** -
|
|
736
|
-
* **VibeProgressBar** - Progress bar with variants, striped, and animated styles
|
|
757
|
+
* **VibeProgress** - Data-driven progress bars with `bars` prop, supports multiple bars with variants, striped, and animated styles
|
|
737
758
|
|
|
738
759
|
### Interactive Components
|
|
739
|
-
* **VibeAccordion** -
|
|
740
|
-
* **VibeAccordionItem** - Collapsible accordion items
|
|
760
|
+
* **VibeAccordion** - Data-driven accordion with `items` prop and flush option
|
|
741
761
|
* **VibeCollapse** - Collapse component for showing/hiding content
|
|
742
|
-
* **VibeDropdown** -
|
|
743
|
-
* **VibeDropdownItem** - Dropdown menu items, dividers, and headers
|
|
762
|
+
* **VibeDropdown** - Data-driven dropdown with `items` prop, supports variants, directions, dividers, and headers
|
|
744
763
|
* **VibeModal** - Modal dialogs with sizes and positions
|
|
745
764
|
* **VibeOffcanvas** - Offcanvas sidebars with placement options
|
|
746
765
|
* **VibeToast** - Toast notifications with autohide
|
|
747
|
-
* **VibeCarousel** -
|
|
748
|
-
* **VibeCarouselSlide** - Individual carousel slides
|
|
766
|
+
* **VibeCarousel** - Data-driven image carousel with `items` prop, controls, and indicators
|
|
749
767
|
|
|
750
768
|
### Advanced Components
|
|
751
769
|
* **VibeTooltip** - Tooltips with placement options (requires Bootstrap JS)
|
|
@@ -2,7 +2,14 @@ import { AccordionItem } from '../types';
|
|
|
2
2
|
declare function __VLS_template(): {
|
|
3
3
|
attrs: Partial<{}>;
|
|
4
4
|
slots: {
|
|
5
|
-
|
|
5
|
+
title?(_: {
|
|
6
|
+
item: AccordionItem;
|
|
7
|
+
index: number;
|
|
8
|
+
}): any;
|
|
9
|
+
content?(_: {
|
|
10
|
+
item: AccordionItem;
|
|
11
|
+
index: number;
|
|
12
|
+
}): any;
|
|
6
13
|
};
|
|
7
14
|
refs: {};
|
|
8
15
|
rootEl: HTMLDivElement;
|
|
@@ -19,10 +26,11 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
19
26
|
};
|
|
20
27
|
items: {
|
|
21
28
|
type: () => AccordionItem[];
|
|
22
|
-
|
|
29
|
+
required: true;
|
|
23
30
|
};
|
|
24
31
|
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
25
32
|
"component-error": (...args: any[]) => void;
|
|
33
|
+
"item-click": (...args: any[]) => void;
|
|
26
34
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
27
35
|
id: {
|
|
28
36
|
type: StringConstructor;
|
|
@@ -34,12 +42,12 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
34
42
|
};
|
|
35
43
|
items: {
|
|
36
44
|
type: () => AccordionItem[];
|
|
37
|
-
|
|
45
|
+
required: true;
|
|
38
46
|
};
|
|
39
47
|
}>> & Readonly<{
|
|
40
48
|
"onComponent-error"?: ((...args: any[]) => any) | undefined;
|
|
49
|
+
"onItem-click"?: ((...args: any[]) => any) | undefined;
|
|
41
50
|
}>, {
|
|
42
|
-
items: AccordionItem[];
|
|
43
51
|
flush: boolean;
|
|
44
52
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
|
|
45
53
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
@@ -2,7 +2,10 @@ import { BreadcrumbItem } from '../types';
|
|
|
2
2
|
declare function __VLS_template(): {
|
|
3
3
|
attrs: Partial<{}>;
|
|
4
4
|
slots: {
|
|
5
|
-
|
|
5
|
+
item?(_: {
|
|
6
|
+
item: BreadcrumbItem;
|
|
7
|
+
index: number;
|
|
8
|
+
}): any;
|
|
6
9
|
};
|
|
7
10
|
refs: {};
|
|
8
11
|
rootEl: HTMLElement;
|
|
@@ -15,10 +18,11 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
15
18
|
};
|
|
16
19
|
items: {
|
|
17
20
|
type: () => BreadcrumbItem[];
|
|
18
|
-
|
|
21
|
+
required: true;
|
|
19
22
|
};
|
|
20
23
|
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
21
24
|
"component-error": (...args: any[]) => void;
|
|
25
|
+
"item-click": (...args: any[]) => void;
|
|
22
26
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
23
27
|
ariaLabel: {
|
|
24
28
|
type: StringConstructor;
|
|
@@ -26,13 +30,13 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
26
30
|
};
|
|
27
31
|
items: {
|
|
28
32
|
type: () => BreadcrumbItem[];
|
|
29
|
-
|
|
33
|
+
required: true;
|
|
30
34
|
};
|
|
31
35
|
}>> & Readonly<{
|
|
32
36
|
"onComponent-error"?: ((...args: any[]) => any) | undefined;
|
|
37
|
+
"onItem-click"?: ((...args: any[]) => any) | undefined;
|
|
33
38
|
}>, {
|
|
34
39
|
ariaLabel: string;
|
|
35
|
-
items: BreadcrumbItem[];
|
|
36
40
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLElement>;
|
|
37
41
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
38
42
|
export default _default;
|
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
import { Variant, Tag } from '../types';
|
|
2
|
-
declare function __VLS_template():
|
|
2
|
+
declare function __VLS_template(): {
|
|
3
|
+
attrs: Partial<{}>;
|
|
4
|
+
slots: {
|
|
5
|
+
header?(_: {}): any;
|
|
6
|
+
title?(_: {}): any;
|
|
7
|
+
body?(_: {}): any;
|
|
8
|
+
default?(_: {}): any;
|
|
9
|
+
footer?(_: {}): any;
|
|
10
|
+
};
|
|
11
|
+
refs: {};
|
|
12
|
+
rootEl: any;
|
|
13
|
+
};
|
|
3
14
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
4
15
|
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
5
16
|
variant: {
|
|
@@ -34,21 +45,21 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
34
45
|
type: StringConstructor;
|
|
35
46
|
default: undefined;
|
|
36
47
|
};
|
|
37
|
-
|
|
48
|
+
imgSrc: {
|
|
38
49
|
type: StringConstructor;
|
|
39
50
|
default: undefined;
|
|
40
51
|
};
|
|
41
|
-
|
|
52
|
+
imgAlt: {
|
|
42
53
|
type: StringConstructor;
|
|
43
54
|
default: string;
|
|
44
55
|
};
|
|
45
|
-
|
|
46
|
-
type:
|
|
47
|
-
default:
|
|
56
|
+
imgTop: {
|
|
57
|
+
type: BooleanConstructor;
|
|
58
|
+
default: boolean;
|
|
48
59
|
};
|
|
49
|
-
|
|
50
|
-
type:
|
|
51
|
-
default:
|
|
60
|
+
imgBottom: {
|
|
61
|
+
type: BooleanConstructor;
|
|
62
|
+
default: boolean;
|
|
52
63
|
};
|
|
53
64
|
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
54
65
|
"component-error": (...args: any[]) => void;
|
|
@@ -85,21 +96,21 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
85
96
|
type: StringConstructor;
|
|
86
97
|
default: undefined;
|
|
87
98
|
};
|
|
88
|
-
|
|
99
|
+
imgSrc: {
|
|
89
100
|
type: StringConstructor;
|
|
90
101
|
default: undefined;
|
|
91
102
|
};
|
|
92
|
-
|
|
103
|
+
imgAlt: {
|
|
93
104
|
type: StringConstructor;
|
|
94
105
|
default: string;
|
|
95
106
|
};
|
|
96
|
-
|
|
97
|
-
type:
|
|
98
|
-
default:
|
|
107
|
+
imgTop: {
|
|
108
|
+
type: BooleanConstructor;
|
|
109
|
+
default: boolean;
|
|
99
110
|
};
|
|
100
|
-
|
|
101
|
-
type:
|
|
102
|
-
default:
|
|
111
|
+
imgBottom: {
|
|
112
|
+
type: BooleanConstructor;
|
|
113
|
+
default: boolean;
|
|
103
114
|
};
|
|
104
115
|
}>> & Readonly<{
|
|
105
116
|
"onComponent-error"?: ((...args: any[]) => any) | undefined;
|
|
@@ -112,10 +123,10 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
112
123
|
border: Variant;
|
|
113
124
|
tag: Tag;
|
|
114
125
|
textVariant: Variant;
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
126
|
+
imgSrc: string;
|
|
127
|
+
imgAlt: string;
|
|
128
|
+
imgTop: boolean;
|
|
129
|
+
imgBottom: boolean;
|
|
119
130
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
120
131
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
121
132
|
export default _default;
|
|
@@ -2,8 +2,10 @@ import { CarouselItem } from '../types';
|
|
|
2
2
|
declare function __VLS_template(): {
|
|
3
3
|
attrs: Partial<{}>;
|
|
4
4
|
slots: {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
caption?(_: {
|
|
6
|
+
item: CarouselItem;
|
|
7
|
+
index: number;
|
|
8
|
+
}): any;
|
|
7
9
|
};
|
|
8
10
|
refs: {};
|
|
9
11
|
rootEl: HTMLDivElement;
|
|
@@ -56,7 +58,7 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
56
58
|
};
|
|
57
59
|
items: {
|
|
58
60
|
type: () => CarouselItem[];
|
|
59
|
-
|
|
61
|
+
required: true;
|
|
60
62
|
};
|
|
61
63
|
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
62
64
|
"component-error": (...args: any[]) => void;
|
|
@@ -109,7 +111,7 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
109
111
|
};
|
|
110
112
|
items: {
|
|
111
113
|
type: () => CarouselItem[];
|
|
112
|
-
|
|
114
|
+
required: true;
|
|
113
115
|
};
|
|
114
116
|
}>> & Readonly<{
|
|
115
117
|
"onComponent-error"?: ((...args: any[]) => any) | undefined;
|
|
@@ -118,12 +120,11 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
118
120
|
}>, {
|
|
119
121
|
pause: string | boolean;
|
|
120
122
|
dark: boolean;
|
|
121
|
-
items: CarouselItem[];
|
|
122
123
|
fade: boolean;
|
|
123
|
-
interval: number | boolean;
|
|
124
124
|
controls: boolean;
|
|
125
125
|
indicators: boolean;
|
|
126
126
|
ride: string | boolean;
|
|
127
|
+
interval: number | boolean;
|
|
127
128
|
keyboard: boolean;
|
|
128
129
|
wrap: boolean;
|
|
129
130
|
touch: boolean;
|