manolis-ui 0.1.5 → 0.2.5
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 +83 -3
- package/dist/index.d.ts +70 -20
- package/dist/manolis-ui.css +1 -1
- package/dist/manolis-ui.js +665 -566
- package/dist/manolis-ui.umd.cjs +12 -7
- package/dist/style.css +215 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,5 +1,85 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Manolis UI - Accelerate Your Vue 3 Development
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Manolis UI is a high-quality Vue 3 component library meticulously crafted to accelerate your development process without compromising on visual appeal or ease of use. Built on the solid foundation of Tailwind CSS 4 and enhanced with the extensive component set of Daisy UI v5 (including potential additions), Manolis UI provides you with a rich collection of ready-to-use, customizable components. Spend less time building the basics and more time focusing on the unique aspects of your application.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## ✨ Features
|
|
6
|
+
|
|
7
|
+
* **Comprehensive Component Library:** Includes all components from Daisy UI v5, ensuring you have a wide range of UI elements at your fingertips. We are committed to continuously expanding this library with additional high-quality components where needed.
|
|
8
|
+
* **Interactive Showcase with Storybook:** Explore and experiment with each component in isolation using our integrated Storybook. This provides clear documentation and live examples to understand component behavior and customization options.
|
|
9
|
+
* **Built for Vue 3:** Leverages the latest features and performance improvements of Vue 3, ensuring a modern and efficient development experience.
|
|
10
|
+
* **Beautiful Icons with Lucide:** Features a consistent and elegant set of icons powered by Lucide, enhancing the visual appeal of your application.
|
|
11
|
+
* **Powered by Tailwind CSS 4 and Vite:** Built with the utility-first approach of Tailwind CSS 4 for rapid styling and customization, and bundled with the lightning-fast Vite build tool for an optimized development workflow.
|
|
12
|
+
* **Effortless Integration:** Easily integrate Manolis UI into your existing Vue 3 project with a simple CSS import.
|
|
13
|
+
|
|
14
|
+
## 🚀 Getting Started
|
|
15
|
+
|
|
16
|
+
1. **Installation:** First, ensure you have Tailwind CSS and Daisy UI installed in your Vue 3 project. Follow their respective documentation for installation instructions.
|
|
17
|
+
|
|
18
|
+
2. **Install Manolis UI:**
|
|
19
|
+
```bash
|
|
20
|
+
# Using npm
|
|
21
|
+
npm install manolis-ui
|
|
22
|
+
|
|
23
|
+
# Or using yarn
|
|
24
|
+
yarn add manolis-ui
|
|
25
|
+
|
|
26
|
+
# Or using pnpm
|
|
27
|
+
pnpm add manolis-ui
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
3. **Import Styles:** Add the following lines to your main CSS file (e.g., `src/assets/main.css` or similar), **after** your Tailwind CSS and Daisy UI imports:
|
|
31
|
+
|
|
32
|
+
```css
|
|
33
|
+
@source '../../../';
|
|
34
|
+
|
|
35
|
+
@plugin "daisyui" {
|
|
36
|
+
/* themes: light --default; */
|
|
37
|
+
themes: all;
|
|
38
|
+
root: ":root";
|
|
39
|
+
}
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**Explanation:**
|
|
43
|
+
* `@source '../../../';` tells the CSS preprocessor where to find the Manolis UI styles. Adjust the relative path if your `main.css` file is located in a different directory structure.
|
|
44
|
+
* The `@plugin "daisyui"` block configures Daisy UI themes. Uncomment `themes: light --default;` for a single light theme, or keep `themes: all;` to include all Daisy UI themes.
|
|
45
|
+
|
|
46
|
+
4. **Import and Use Components:** You can now import and use individual components in your Vue 3 templates:
|
|
47
|
+
|
|
48
|
+
```vue
|
|
49
|
+
<template>
|
|
50
|
+
<ButtonComponent>Click Me</ButtonComponent>
|
|
51
|
+
</template>
|
|
52
|
+
|
|
53
|
+
<script setup>
|
|
54
|
+
import { ButtonComponent } from 'manolis-ui';
|
|
55
|
+
</script>
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## 📖 Documentation and Examples
|
|
59
|
+
|
|
60
|
+
Explore the full range of components and their usage in our interactive Storybook:
|
|
61
|
+
|
|
62
|
+
[**[Link to your Storybook deployment here]**](Replace this with the actual link to your deployed Storybook)
|
|
63
|
+
|
|
64
|
+
Within Storybook, you'll find detailed documentation, live examples, and the ability to customize component properties to see the effects in real-time.
|
|
65
|
+
|
|
66
|
+
## 🤝 Contributing
|
|
67
|
+
|
|
68
|
+
We welcome contributions to Manolis UI! If you have suggestions, bug reports, or would like to contribute new components or features, please refer to our [Contributing Guidelines](link-to-contributing-guidelines.md).
|
|
69
|
+
|
|
70
|
+
## 📄 License
|
|
71
|
+
|
|
72
|
+
This project is licensed under the **GNU General Public License v3.0**. You can find the full text of the license in the [LICENSE](LICENSE) file.
|
|
73
|
+
|
|
74
|
+
**Key aspects of the GPL v3.0 license include:**
|
|
75
|
+
|
|
76
|
+
* **Copyleft:** Any derivative works (modifications or works that include Manolis UI code) must also be licensed under the GPL v3.0.
|
|
77
|
+
* **Attribution:** You must provide appropriate attribution to the original authors of Manolis UI.
|
|
78
|
+
* **Source Code Availability:** You must make the source code of any derivative works available.
|
|
79
|
+
* **Permissions:** The license explicitly grants users permission to run, study, share, and modify the software.
|
|
80
|
+
|
|
81
|
+
For more details, please refer to the complete [GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.html).
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
**Enjoy building amazing user interfaces with Manolis UI!**
|
package/dist/index.d.ts
CHANGED
|
@@ -10,11 +10,13 @@ active: boolean;
|
|
|
10
10
|
loading: boolean;
|
|
11
11
|
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;
|
|
12
12
|
|
|
13
|
-
declare const __VLS_component_10: DefineComponent<
|
|
13
|
+
declare const __VLS_component_10: DefineComponent< {}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, HTMLDivElement>;
|
|
14
|
+
|
|
15
|
+
declare const __VLS_component_11: DefineComponent<Props_15, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props_15> & Readonly<{}>, {
|
|
14
16
|
isCollapsed: boolean;
|
|
15
17
|
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;
|
|
16
18
|
|
|
17
|
-
declare const
|
|
19
|
+
declare const __VLS_component_12: DefineComponent<Props_16, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
18
20
|
"tab-changed": (...args: any[]) => void;
|
|
19
21
|
}, string, PublicProps, Readonly<Props_16> & Readonly<{
|
|
20
22
|
"onTab-changed"?: ((...args: any[]) => any) | undefined;
|
|
@@ -72,9 +74,22 @@ data: any;
|
|
|
72
74
|
searchContainer: HTMLDivElement;
|
|
73
75
|
}, any>;
|
|
74
76
|
|
|
75
|
-
declare const __VLS_component_8: DefineComponent<
|
|
77
|
+
declare const __VLS_component_8: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
|
|
78
|
+
"update:modelValue": (value: string[]) => any;
|
|
79
|
+
}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
80
|
+
"onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
|
|
81
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
|
|
82
|
+
inputRef: HTMLInputElement;
|
|
83
|
+
}, HTMLDivElement>;
|
|
84
|
+
|
|
85
|
+
declare const __VLS_component_9: DefineComponent<Props_13, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props_13> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
76
86
|
|
|
77
|
-
declare
|
|
87
|
+
declare type __VLS_Props = {
|
|
88
|
+
modelValue: string[];
|
|
89
|
+
maxTagAmount?: number;
|
|
90
|
+
placeholder?: string;
|
|
91
|
+
class?: string;
|
|
92
|
+
};
|
|
78
93
|
|
|
79
94
|
declare function __VLS_template(): {
|
|
80
95
|
attrs: Partial<{}>;
|
|
@@ -86,6 +101,21 @@ declare function __VLS_template(): {
|
|
|
86
101
|
};
|
|
87
102
|
|
|
88
103
|
declare function __VLS_template_10(): {
|
|
104
|
+
attrs: Partial<{}>;
|
|
105
|
+
slots: {
|
|
106
|
+
title?(_: {}): any;
|
|
107
|
+
description?(_: {
|
|
108
|
+
class: string;
|
|
109
|
+
}): any;
|
|
110
|
+
'call-to-action-block'?(_: {
|
|
111
|
+
class: string;
|
|
112
|
+
}): any;
|
|
113
|
+
};
|
|
114
|
+
refs: {};
|
|
115
|
+
rootEl: HTMLDivElement;
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
declare function __VLS_template_11(): {
|
|
89
119
|
attrs: Partial<{}>;
|
|
90
120
|
slots: {
|
|
91
121
|
start?(_: {}): any;
|
|
@@ -97,7 +127,7 @@ declare function __VLS_template_10(): {
|
|
|
97
127
|
rootEl: HTMLElement;
|
|
98
128
|
};
|
|
99
129
|
|
|
100
|
-
declare function
|
|
130
|
+
declare function __VLS_template_12(): {
|
|
101
131
|
attrs: Partial<{}>;
|
|
102
132
|
slots: Partial<Record<`${string}-tab`, (_: {}) => any>> & {
|
|
103
133
|
default?(_: {}): any;
|
|
@@ -178,22 +208,24 @@ declare function __VLS_template_7(): {
|
|
|
178
208
|
declare function __VLS_template_8(): {
|
|
179
209
|
attrs: Partial<{}>;
|
|
180
210
|
slots: {
|
|
181
|
-
|
|
211
|
+
tag?(_: {
|
|
212
|
+
key: string;
|
|
213
|
+
tag: string;
|
|
214
|
+
}): any;
|
|
215
|
+
input?(_: {
|
|
216
|
+
showInput: boolean;
|
|
217
|
+
}): any;
|
|
218
|
+
};
|
|
219
|
+
refs: {
|
|
220
|
+
inputRef: HTMLInputElement;
|
|
182
221
|
};
|
|
183
|
-
refs: {};
|
|
184
222
|
rootEl: HTMLDivElement;
|
|
185
223
|
};
|
|
186
224
|
|
|
187
225
|
declare function __VLS_template_9(): {
|
|
188
226
|
attrs: Partial<{}>;
|
|
189
227
|
slots: {
|
|
190
|
-
|
|
191
|
-
description?(_: {
|
|
192
|
-
class: string;
|
|
193
|
-
}): any;
|
|
194
|
-
'call-to-action-block'?(_: {
|
|
195
|
-
class: string;
|
|
196
|
-
}): any;
|
|
228
|
+
default?(_: {}): any;
|
|
197
229
|
};
|
|
198
230
|
refs: {};
|
|
199
231
|
rootEl: HTMLDivElement;
|
|
@@ -205,6 +237,8 @@ declare type __VLS_TemplateResult_10 = ReturnType<typeof __VLS_template_10>;
|
|
|
205
237
|
|
|
206
238
|
declare type __VLS_TemplateResult_11 = ReturnType<typeof __VLS_template_11>;
|
|
207
239
|
|
|
240
|
+
declare type __VLS_TemplateResult_12 = ReturnType<typeof __VLS_template_12>;
|
|
241
|
+
|
|
208
242
|
declare type __VLS_TemplateResult_2 = ReturnType<typeof __VLS_template_2>;
|
|
209
243
|
|
|
210
244
|
declare type __VLS_TemplateResult_3 = ReturnType<typeof __VLS_template_3>;
|
|
@@ -239,6 +273,12 @@ declare type __VLS_WithTemplateSlots_11<T, S> = T & {
|
|
|
239
273
|
};
|
|
240
274
|
};
|
|
241
275
|
|
|
276
|
+
declare type __VLS_WithTemplateSlots_12<T, S> = T & {
|
|
277
|
+
new (): {
|
|
278
|
+
$slots: S;
|
|
279
|
+
};
|
|
280
|
+
};
|
|
281
|
+
|
|
242
282
|
declare type __VLS_WithTemplateSlots_2<T, S> = T & {
|
|
243
283
|
new (): {
|
|
244
284
|
$slots: S;
|
|
@@ -341,7 +381,7 @@ declare const dropdownPosition: {
|
|
|
341
381
|
top: string;
|
|
342
382
|
};
|
|
343
383
|
|
|
344
|
-
export declare const Footer:
|
|
384
|
+
export declare const Footer: __VLS_WithTemplateSlots_9<typeof __VLS_component_9, __VLS_TemplateResult_9["slots"]>;
|
|
345
385
|
|
|
346
386
|
declare interface FooterNavigation {
|
|
347
387
|
title: string;
|
|
@@ -354,10 +394,13 @@ declare interface FooterNavigationItem {
|
|
|
354
394
|
enabled: Boolean;
|
|
355
395
|
}
|
|
356
396
|
|
|
357
|
-
export declare const Hero:
|
|
397
|
+
export declare const Hero: __VLS_WithTemplateSlots_10<typeof __VLS_component_10, __VLS_TemplateResult_10["slots"]>;
|
|
358
398
|
|
|
359
399
|
export declare const Loader: DefineComponent<Props_12, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props_12> & Readonly<{}>, {
|
|
360
400
|
loading: boolean;
|
|
401
|
+
type: "spinner" | "dots" | "ring" | "balls" | "bars" | "infinity";
|
|
402
|
+
size: "xs" | "sm" | "md" | "lg" | "xl";
|
|
403
|
+
color: "primary" | "secondary" | "accent" | "neutral" | "info" | "success" | "warning" | "error";
|
|
361
404
|
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
|
|
362
405
|
|
|
363
406
|
export declare const Modal: __VLS_WithTemplateSlots_3<typeof __VLS_component_3, __VLS_TemplateResult_3["slots"]>;
|
|
@@ -368,7 +411,7 @@ declare const modalPosition: {
|
|
|
368
411
|
center: string;
|
|
369
412
|
};
|
|
370
413
|
|
|
371
|
-
export declare const NavigationBar:
|
|
414
|
+
export declare const NavigationBar: __VLS_WithTemplateSlots_11<typeof __VLS_component_11, __VLS_TemplateResult_11["slots"]>;
|
|
372
415
|
|
|
373
416
|
declare interface Props {
|
|
374
417
|
outlined?: boolean;
|
|
@@ -397,10 +440,15 @@ declare interface Props_11 {
|
|
|
397
440
|
|
|
398
441
|
declare interface Props_12 {
|
|
399
442
|
loading?: boolean;
|
|
443
|
+
size?: "xs" | "sm" | "md" | "lg" | "xl";
|
|
444
|
+
type: "spinner" | "dots" | "ring" | "balls" | "bars" | "infinity";
|
|
445
|
+
color: "primary" | "secondary" | "accent" | "neutral" | "info" | "success" | "warning" | "error";
|
|
400
446
|
}
|
|
401
447
|
|
|
402
448
|
declare interface Props_13 {
|
|
403
449
|
items: Array<FooterNavigation>;
|
|
450
|
+
background?: string;
|
|
451
|
+
color?: string;
|
|
404
452
|
}
|
|
405
453
|
|
|
406
454
|
declare interface Props_14 {
|
|
@@ -462,13 +510,13 @@ declare interface Props_8 {
|
|
|
462
510
|
}
|
|
463
511
|
|
|
464
512
|
declare interface Props_9 {
|
|
465
|
-
imgUrl
|
|
513
|
+
imgUrl?: string;
|
|
466
514
|
alt?: string;
|
|
467
515
|
title?: string;
|
|
468
516
|
description?: string;
|
|
469
517
|
outlined?: boolean;
|
|
470
518
|
loading: boolean;
|
|
471
|
-
class
|
|
519
|
+
class?: string;
|
|
472
520
|
}
|
|
473
521
|
|
|
474
522
|
export declare const Rating: DefineComponent<Props_11, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props_11> & Readonly<{}>, {
|
|
@@ -481,7 +529,7 @@ isInteractive: boolean;
|
|
|
481
529
|
|
|
482
530
|
export declare const Swap: __VLS_WithTemplateSlots_4<typeof __VLS_component_4, __VLS_TemplateResult_4["slots"]>;
|
|
483
531
|
|
|
484
|
-
export declare const Tab:
|
|
532
|
+
export declare const Tab: __VLS_WithTemplateSlots_12<typeof __VLS_component_12, __VLS_TemplateResult_12["slots"]>;
|
|
485
533
|
|
|
486
534
|
declare interface Tab_2 {
|
|
487
535
|
name: string | any;
|
|
@@ -501,6 +549,8 @@ declare interface Tab_3 {
|
|
|
501
549
|
value?: any;
|
|
502
550
|
}
|
|
503
551
|
|
|
552
|
+
export declare const TagInput: __VLS_WithTemplateSlots_8<typeof __VLS_component_8, __VLS_TemplateResult_8["slots"]>;
|
|
553
|
+
|
|
504
554
|
export declare const ThemeController: DefineComponent<Props_5, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<Props_5> & Readonly<{}>, {
|
|
505
555
|
lightTheme: string;
|
|
506
556
|
darkTheme: string;
|
package/dist/manolis-ui.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.tabs button[data-v-08fa37eb]{cursor:pointer}.tab-content[data-v-08fa37eb]{position:absolute;z-index:10;transform-origin:top center;transition:opacity .3s ease}.tabs-boxed[data-v-08fa37eb] :is(.tab-active,[aria-selected=true]):not(.tab-disabled):not([disabled]),.tabs-boxed[data-v-08fa37eb] :is(input:checked){background-color:var(--color-base-300);color:var(--color-base-content)}@media (max-width: 768px){.tab-content[data-v-08fa37eb]{width:100%;left:50%;transform:translate(-50%);top:auto;bottom:0}}@media (min-width: 769px){.tab-content[data-v-08fa37eb]{width:auto;left:unset;transform:unset}}.input[data-v-
|
|
1
|
+
.tabs button[data-v-08fa37eb]{cursor:pointer}.tab-content[data-v-08fa37eb]{position:absolute;z-index:10;transform-origin:top center;transition:opacity .3s ease}.tabs-boxed[data-v-08fa37eb] :is(.tab-active,[aria-selected=true]):not(.tab-disabled):not([disabled]),.tabs-boxed[data-v-08fa37eb] :is(input:checked){background-color:var(--color-base-300);color:var(--color-base-content)}@media (max-width: 768px){.tab-content[data-v-08fa37eb]{width:100%;left:50%;transform:translate(-50%);top:auto;bottom:0}}@media (min-width: 769px){.tab-content[data-v-08fa37eb]{width:auto;left:unset;transform:unset}}.input[data-v-488ecabe]{cursor:pointer}.navigationbar[data-v-8ddb2b45]{display:grid;grid-template-columns:auto auto auto;grid-template-rows:auto auto;grid-template-areas:"center center center" "bottom bottom bottom";position:fixed;width:100%!important;gap:0 1rem;align-items:center;padding:var(--navbar-padding, .5rem);min-height:4rem;z-index:5}@media (min-width: 768px){.navigationbar[data-v-8ddb2b45]{grid-template-columns:.7fr 1.6fr .7fr;grid-template-areas:"start center end" "bottom bottom bottom";grid-row-gap:2rem;padding:2rem}}.navbar-start[data-v-8ddb2b45]{grid-area:start;height:100%}.navbar-center[data-v-8ddb2b45]{grid-area:center;width:100%;height:100%}.navbar-end[data-v-8ddb2b45]{width:100%;height:100%;grid-area:end}.navbar-bottom[data-v-8ddb2b45]{grid-area:center;width:100%;display:flex;justify-content:center;align-items:center}@media (min-width: 768px){.navbar-bottom[data-v-8ddb2b45]{grid-area:bottom}}nav.navigationbar.collapsed[data-v-8ddb2b45]{top:0;z-index:10;grid-template-columns:auto 1fr auto!important}@media (min-width: 768px){nav.navigationbar.collapsed[data-v-8ddb2b45]{row-gap:0;padding:1rem}}nav.navigationbar.collapsed .navbar-bottom[data-v-8ddb2b45]{grid-area:center!important}
|