bonkers-ui 1.0.6 → 1.0.7
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/package.json +1 -1
- package/src/_styles/variables/shadow.css +1 -1
- package/src/components/ui-badge/ui-badge.stories.ts +0 -4
- package/src/components/ui-badge/ui-badge.vue +2 -4
- package/src/components/ui-ber-rank/ui-ber-rank.stories.ts +0 -4
- package/src/components/ui-ber-rank/ui-ber-rank.vue +2 -2
- package/src/components/ui-button/ui-button.stories.ts +1 -8
- package/src/components/ui-button/ui-button.test.ts +5 -3
- package/src/components/ui-button/ui-button.vue +0 -2
- package/src/components/ui-card-cta/ui-card-cta.stories.ts +1 -6
- package/src/components/ui-card-cta/ui-card-cta.vue +1 -3
- package/src/components/ui-card-result/ui-card-result.stories.ts +2 -6
- package/src/components/ui-card-result/ui-card-result.vue +3 -3
- package/src/components/ui-card-simple/ui-card-simple.stories.ts +1 -7
- package/src/components/ui-card-simple/ui-card-simple.vue +1 -6
- package/src/components/ui-checkbox/ui-checkbox.stories.ts +0 -4
- package/src/components/ui-checkbox/ui-checkbox.vue +0 -2
- package/src/components/ui-icon/_typings.ts +9 -2
- package/src/components/ui-icon/ui-icon.stories.ts +0 -4
- package/src/components/ui-icon/ui-icon.vue +0 -2
- package/src/components/ui-input/ui-input.stories.ts +0 -4
- package/src/components/ui-input/ui-input.vue +2 -4
- package/src/components/ui-input-range/ui-input-range.stories.ts +0 -4
- package/src/components/ui-input-range/ui-input-range.vue +0 -2
- package/src/components/ui-list-item/ui-list-item.stories.ts +1 -6
- package/src/components/ui-list-item/ui-list-item.vue +1 -1
- package/src/components/ui-radio/ui-radio.stories.ts +0 -4
- package/src/components/ui-radio/ui-radio.vue +0 -2
- package/src/components/ui-radio-list-fancy/ui-radio-item/ui-radio-item.vue +1 -2
- package/src/components/ui-radio-list-fancy/ui-radio-list-fancy.stories.ts +1 -7
- package/src/components/ui-radio-list-fancy/ui-radio-list-fancy.vue +5 -6
- package/src/components/ui-ripple/ui-ripple.stories.ts +2 -7
- package/src/components/ui-ripple/ui-ripple.vue +0 -5
- package/src/components/ui-select/ui-select.stories.ts +0 -4
- package/src/components/ui-select/ui-select.vue +2 -2
- package/src/components/ui-tabs/ui-tabs.stories.ts +1 -6
- package/src/components/ui-toggle/ui-toggle.stories.ts +0 -4
- package/src/components/ui-toggle/ui-toggle.vue +2 -4
- package/src/components/ui-typography/ui-typography.stories.ts +0 -4
- package/src/components/ui-typography/ui-typography.vue +0 -3
- package/src/components/ui-verification-input/ui-verification-input.stories.ts +0 -4
- package/src/components/ui-verification-input/ui-verification-input.vue +0 -2
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
@layer base {
|
|
2
2
|
:root {
|
|
3
3
|
/* shadow sizes */
|
|
4
|
-
--shadow-size-
|
|
4
|
+
--shadow-size-md: 0 2px 4px 0 rgb(180 184 205 / 50%);
|
|
5
5
|
--shadow-border-primary: 0 0 0 4px rgb(69 158 74 / 50%);
|
|
6
6
|
--shadow-border-secondary: 0 0 0 4px rgb(223 225 233 / 50%);
|
|
7
7
|
}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
<span
|
|
3
3
|
class="ui-badge rounded-full inline-flex items-center"
|
|
4
4
|
:class="[
|
|
5
|
-
className,
|
|
6
5
|
(!size || size === EBadgeSize.SMALL) && 'px-xs py-xxs',
|
|
7
6
|
(!kind || kind === EBadgeKind.PRIMARY) && 'bg-primary-alt-300 text-primary-alt-700',
|
|
8
7
|
|
|
@@ -15,7 +14,7 @@
|
|
|
15
14
|
>
|
|
16
15
|
<ui-icon
|
|
17
16
|
v-if="icon"
|
|
18
|
-
class
|
|
17
|
+
class="mr-xxs"
|
|
19
18
|
:size="ESize.SM"
|
|
20
19
|
:icon-name="icon"
|
|
21
20
|
/>
|
|
@@ -24,7 +23,7 @@
|
|
|
24
23
|
is="span"
|
|
25
24
|
:size="getBadgeSize"
|
|
26
25
|
:weight="ETextWeight.SEMI_BOLD"
|
|
27
|
-
class
|
|
26
|
+
class="whitespace-nowrap"
|
|
28
27
|
>
|
|
29
28
|
<slot />
|
|
30
29
|
</ui-typography>
|
|
@@ -39,7 +38,6 @@
|
|
|
39
38
|
import UiTypography, { ETypographySizes, ETextWeight } from "../ui-typography";
|
|
40
39
|
|
|
41
40
|
const props = defineProps<{
|
|
42
|
-
className?: string;
|
|
43
41
|
size?: EBadgeSize;
|
|
44
42
|
kind?: EBadgeKind;
|
|
45
43
|
icon?: TIconName;
|
|
@@ -5,10 +5,6 @@ export default {
|
|
|
5
5
|
title: "Components/ui-ber-rank",
|
|
6
6
|
component: UiBerRank,
|
|
7
7
|
argTypes: {
|
|
8
|
-
className: {
|
|
9
|
-
control: { type: "text" },
|
|
10
|
-
description: "The Element classes",
|
|
11
|
-
},
|
|
12
8
|
rank:{
|
|
13
9
|
control: { type: "number" },
|
|
14
10
|
description: "The Element rank from 0 to 15",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
:weight="ETextWeight.BOLD"
|
|
19
19
|
:size="ETypographySizes.XXXL"
|
|
20
20
|
:text-transform="ETextTransform.UPPERCASE"
|
|
21
|
-
class
|
|
21
|
+
class="absolute top-0 left-0 w-full h-full flex justify-center items-center"
|
|
22
22
|
>
|
|
23
23
|
ber
|
|
24
24
|
</ui-typography>
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
:weight="ETextWeight.BOLD"
|
|
46
46
|
:size="ETypographySizes.XXXL"
|
|
47
47
|
:text-transform="ETextTransform.UPPERCASE"
|
|
48
|
-
class
|
|
48
|
+
class="absolute top-0 left-0 w-full h-full flex justify-center items-center"
|
|
49
49
|
>
|
|
50
50
|
{{ berRankDictionary[+rank]?.text || berRankDictionary[0].text }}
|
|
51
51
|
</ui-typography>
|
|
@@ -8,11 +8,6 @@ export default {
|
|
|
8
8
|
component: UiButton,
|
|
9
9
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
10
10
|
argTypes: {
|
|
11
|
-
className: {
|
|
12
|
-
control: { type: "select" },
|
|
13
|
-
options: ["small", "medium", "large"],
|
|
14
|
-
description: "The button size",
|
|
15
|
-
},
|
|
16
11
|
kind: {
|
|
17
12
|
control: { type: "select" },
|
|
18
13
|
options: Object.values(EButtonTypes),
|
|
@@ -60,8 +55,7 @@ const Template: Story<TComponentProps> = (args) => ({
|
|
|
60
55
|
},
|
|
61
56
|
// And then the `args` are bound to your component with `v-bind="args"`
|
|
62
57
|
template: `
|
|
63
|
-
<ui-button :
|
|
64
|
-
:kind="args.kind"
|
|
58
|
+
<ui-button :kind="args.kind"
|
|
65
59
|
:size="args.size"
|
|
66
60
|
:fullWidth="args.fullWidth"
|
|
67
61
|
:disabled="args.disabled"
|
|
@@ -115,7 +109,6 @@ export const Primary = Template.bind({});
|
|
|
115
109
|
|
|
116
110
|
Primary.args = {
|
|
117
111
|
...Primary,
|
|
118
|
-
className: "medium",
|
|
119
112
|
kind: EButtonTypes.PRIMARY,
|
|
120
113
|
size: EButtonSizes.MEDIUM,
|
|
121
114
|
fullWidth: false,
|
|
@@ -5,9 +5,11 @@ describe("VButton.test.ts", () => {
|
|
|
5
5
|
it("renders props.msg when passed", () => {
|
|
6
6
|
const className = "message";
|
|
7
7
|
const wrapper = mount(UiButton, {
|
|
8
|
-
|
|
8
|
+
propsData: {
|
|
9
|
+
class: className
|
|
10
|
+
}
|
|
9
11
|
});
|
|
10
12
|
|
|
11
13
|
expect(wrapper.classes()).toContain(className);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
+
});
|
|
15
|
+
});
|
|
@@ -21,7 +21,6 @@
|
|
|
21
21
|
size === EButtonSizes.LARGE && 'py-md px-md',
|
|
22
22
|
fullWidth && 'w-full',
|
|
23
23
|
disabled && 'pointer-events-none',
|
|
24
|
-
className
|
|
25
24
|
]"
|
|
26
25
|
>
|
|
27
26
|
<span
|
|
@@ -50,7 +49,6 @@
|
|
|
50
49
|
import { EButtonSizes, EButtonTypes } from "./_typings";
|
|
51
50
|
import { useSlots } from "vue";
|
|
52
51
|
type TProps = {
|
|
53
|
-
className?: string;
|
|
54
52
|
kind?: EButtonTypes;
|
|
55
53
|
size?: EButtonSizes;
|
|
56
54
|
fullWidth?: boolean;
|
|
@@ -9,11 +9,6 @@ export default {
|
|
|
9
9
|
component: UiCardCta,
|
|
10
10
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
11
11
|
argTypes: {
|
|
12
|
-
className: {
|
|
13
|
-
control: { type: "text" },
|
|
14
|
-
description: "The Element classes",
|
|
15
|
-
},
|
|
16
|
-
|
|
17
12
|
invertOrder: {
|
|
18
13
|
control: { type: "boolean" },
|
|
19
14
|
description: "The Element order",
|
|
@@ -40,7 +35,7 @@ const Template: Story<TComponentProps> = (args) => ({
|
|
|
40
35
|
template: `
|
|
41
36
|
<ui-card-cta v-bind="args">
|
|
42
37
|
<template v-slot:icon>
|
|
43
|
-
<ui-icon :size="ESize.MD" has-wrapper class
|
|
38
|
+
<ui-icon :size="ESize.MD" has-wrapper class="text-white" :icon-name="['far', 'fa-face-smile']" />
|
|
44
39
|
</template>
|
|
45
40
|
|
|
46
41
|
<template v-slot:title>
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
<button
|
|
3
3
|
class="ui-card-cta outline-0 border border-secondary-alt-500 rounded-2xl p-sm shadow-md hover:border-secondary-700 focus:shadow-border-primary active:bg-secondary-alt-200 disabled:bg-secondary-alt-200"
|
|
4
4
|
:disabled="disabled"
|
|
5
|
-
:class="[className]"
|
|
6
5
|
>
|
|
7
6
|
<span
|
|
8
7
|
class="ui-card-cta__wrapper grid gap-sm items-center"
|
|
@@ -19,7 +18,7 @@
|
|
|
19
18
|
<ui-typography
|
|
20
19
|
:kind="EColors.SECONDARY"
|
|
21
20
|
:weight="ETextWeight.SEMI_BOLD"
|
|
22
|
-
class
|
|
21
|
+
class="mb-xxs"
|
|
23
22
|
>
|
|
24
23
|
<slot name="title" />
|
|
25
24
|
</ui-typography>
|
|
@@ -44,7 +43,6 @@
|
|
|
44
43
|
const slots = useSlots();
|
|
45
44
|
|
|
46
45
|
defineProps<{
|
|
47
|
-
className?: string;
|
|
48
46
|
invertOrder?: boolean;
|
|
49
47
|
disabled?: boolean;
|
|
50
48
|
}>();
|
|
@@ -11,10 +11,6 @@ export default {
|
|
|
11
11
|
title: "Components/ui-card-result",
|
|
12
12
|
component: UiCardResult,
|
|
13
13
|
argTypes: {
|
|
14
|
-
className: {
|
|
15
|
-
control: { type: "text" },
|
|
16
|
-
description: "The Element classes",
|
|
17
|
-
},
|
|
18
14
|
exclusiveText: {
|
|
19
15
|
control: { type: "boolean" },
|
|
20
16
|
description: "Whether to show the exclusive text",
|
|
@@ -69,7 +65,7 @@ const Template: Story<TComponentProps> = (args) => ({
|
|
|
69
65
|
<ul>
|
|
70
66
|
<ui-list-item
|
|
71
67
|
v-for="item in 5"
|
|
72
|
-
class
|
|
68
|
+
class="mb-xs"
|
|
73
69
|
:key="item"
|
|
74
70
|
:icon="['far', 'face-smile']"
|
|
75
71
|
>
|
|
@@ -81,7 +77,7 @@ const Template: Story<TComponentProps> = (args) => ({
|
|
|
81
77
|
:weight="ETextWeight.BOLD"
|
|
82
78
|
:size="ETypographySizes.LG"
|
|
83
79
|
:align="ETextAlign.RIGHT"
|
|
84
|
-
class
|
|
80
|
+
class="mb-xs"
|
|
85
81
|
>
|
|
86
82
|
€1004.63 p/m
|
|
87
83
|
</ui-typography>
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
class="ui-card-result__exclusive bg-primary rounded-2xl px-sm pb-lg -mb-lg"
|
|
6
6
|
>
|
|
7
7
|
<ui-typography
|
|
8
|
-
class
|
|
8
|
+
class="py-xs"
|
|
9
9
|
line-height
|
|
10
10
|
:size="ETypographySizes.XXS"
|
|
11
11
|
:kind="EColors.WHITE"
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
<main class="p-sm bg-white w-full">
|
|
28
28
|
<ui-typography
|
|
29
29
|
v-if="header"
|
|
30
|
-
class
|
|
30
|
+
class="mb-xs"
|
|
31
31
|
:size="ETypographySizes.SM"
|
|
32
32
|
:weight="ETextWeight.SEMI_BOLD"
|
|
33
33
|
>
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
class="ui-card-result__exclusive_bottom bg-secondary rounded-2xl px-sm pt-lg -mt-lg"
|
|
43
43
|
>
|
|
44
44
|
<ui-typography
|
|
45
|
-
class
|
|
45
|
+
class="py-xs"
|
|
46
46
|
:size="ETypographySizes.XXS"
|
|
47
47
|
:kind="EColors.WHITE"
|
|
48
48
|
:align="ETextAlign.CENTER"
|
|
@@ -4,13 +4,7 @@ import type { Story } from "@storybook/vue3";
|
|
|
4
4
|
export default {
|
|
5
5
|
title: "Components/ui-card-simple",
|
|
6
6
|
component: UiCardSimple,
|
|
7
|
-
argTypes: {
|
|
8
|
-
className: {
|
|
9
|
-
control: { type: "text" },
|
|
10
|
-
description: "The Element classes",
|
|
11
|
-
},
|
|
12
|
-
|
|
13
|
-
},
|
|
7
|
+
argTypes: {},
|
|
14
8
|
args: {
|
|
15
9
|
slot: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
|
|
16
10
|
},
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
|
-
class="ui-card-simple rounded-3xl shadow-md py-md px-sm"
|
|
4
|
-
:class="className"
|
|
3
|
+
class="ui-card-simple rounded-3xl shadow-md py-md px-sm bg-white"
|
|
5
4
|
>
|
|
6
5
|
<ui-typography
|
|
7
6
|
v-if="slots.title"
|
|
@@ -28,8 +27,4 @@
|
|
|
28
27
|
import { useSlots } from "vue";
|
|
29
28
|
|
|
30
29
|
const slots = useSlots();
|
|
31
|
-
|
|
32
|
-
defineProps<{
|
|
33
|
-
className? : string;
|
|
34
|
-
}>();
|
|
35
30
|
</script>
|
|
@@ -8,10 +8,6 @@ export default {
|
|
|
8
8
|
component: UiCheckbox,
|
|
9
9
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
10
10
|
argTypes: {
|
|
11
|
-
className: {
|
|
12
|
-
control: { type: "text" },
|
|
13
|
-
description: "The Element classes",
|
|
14
|
-
},
|
|
15
11
|
justify: {
|
|
16
12
|
control: { type: "select" },
|
|
17
13
|
options: Object.values(EJustify),
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
justify === EJustify.EVENLY && 'justify-evenly',
|
|
11
11
|
justify === EJustify.CENTER && 'justify-center',
|
|
12
12
|
disabled && 'ui-checkbox_disabled',
|
|
13
|
-
className
|
|
14
13
|
]"
|
|
15
14
|
>
|
|
16
15
|
<input
|
|
@@ -58,7 +57,6 @@
|
|
|
58
57
|
|
|
59
58
|
defineProps<{
|
|
60
59
|
modelValue: boolean;
|
|
61
|
-
className?: string;
|
|
62
60
|
justify?: EJustify;
|
|
63
61
|
invertOrder?: boolean;
|
|
64
62
|
disabled?: boolean;
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
export
|
|
1
|
+
export enum EIconType {
|
|
2
|
+
FAR = "far",
|
|
3
|
+
FAS = "fas",
|
|
4
|
+
FAB = "fab",
|
|
5
|
+
FAL = "fal",
|
|
6
|
+
FAD = "fad",
|
|
7
|
+
FAT = "fat",
|
|
8
|
+
}
|
|
2
9
|
|
|
3
|
-
export type TIconName = [
|
|
10
|
+
export type TIconName = [EIconType, string];
|
|
@@ -7,10 +7,6 @@ export default {
|
|
|
7
7
|
component: UiIcon,
|
|
8
8
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
9
9
|
argTypes: {
|
|
10
|
-
className: {
|
|
11
|
-
control: { type: "text" },
|
|
12
|
-
description: "The Element classes",
|
|
13
|
-
},
|
|
14
10
|
hasWrapper:{
|
|
15
11
|
control: { type: "boolean" },
|
|
16
12
|
description: "The Icon show wrapper",
|
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
size === ESize.XL && 'h-xl w-xl',
|
|
12
12
|
size === ESize.XXL && 'h-xxl w-xxl',
|
|
13
13
|
hasWrapper && 'p-sm bg-primary rounded-2xl',
|
|
14
|
-
className
|
|
15
14
|
]"
|
|
16
15
|
/>
|
|
17
16
|
</template>
|
|
@@ -21,7 +20,6 @@
|
|
|
21
20
|
import type { TIconName } from "./_typings";
|
|
22
21
|
|
|
23
22
|
defineProps<{
|
|
24
|
-
className?: string;
|
|
25
23
|
hasWrapper?: boolean;
|
|
26
24
|
size: ESize;
|
|
27
25
|
iconName: TIconName;
|
|
@@ -9,10 +9,6 @@ export default {
|
|
|
9
9
|
component: UiInput,
|
|
10
10
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
11
11
|
argTypes: {
|
|
12
|
-
className: {
|
|
13
|
-
control: { type: "text" },
|
|
14
|
-
description: "Custom class",
|
|
15
|
-
},
|
|
16
12
|
placeholder: {
|
|
17
13
|
control: { type: "text" },
|
|
18
14
|
description: "Placeholder",
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<ui-typography
|
|
4
4
|
v-if="heading"
|
|
5
5
|
:weight="ETextWeight.BOLD"
|
|
6
|
-
class
|
|
6
|
+
class="mb-sm"
|
|
7
7
|
>
|
|
8
8
|
{{ heading }}
|
|
9
9
|
</ui-typography>
|
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
disabled && 'border-secondary-alt-300 bg-secondary-alt-200',
|
|
18
18
|
|
|
19
19
|
fullWidth && 'max-w-full',
|
|
20
|
-
className,
|
|
21
20
|
]"
|
|
22
21
|
>
|
|
23
22
|
<div class="icon-wrapper">
|
|
@@ -37,7 +36,7 @@
|
|
|
37
36
|
<ui-typography
|
|
38
37
|
v-if="subLabel"
|
|
39
38
|
:size="ETypographySizes.SM"
|
|
40
|
-
class
|
|
39
|
+
class="mt-sm"
|
|
41
40
|
>
|
|
42
41
|
{{ subLabel }}
|
|
43
42
|
</ui-typography>
|
|
@@ -54,7 +53,6 @@
|
|
|
54
53
|
disabled?: boolean;
|
|
55
54
|
fullWidth?: boolean;
|
|
56
55
|
kind?: EInputTypes;
|
|
57
|
-
className?: string;
|
|
58
56
|
heading?: string;
|
|
59
57
|
subLabel?: string;
|
|
60
58
|
}>();
|
|
@@ -6,10 +6,6 @@ export default {
|
|
|
6
6
|
title: "Components/ui-input-range",
|
|
7
7
|
component: UiInputRange,
|
|
8
8
|
argTypes: {
|
|
9
|
-
className: {
|
|
10
|
-
control: { type: "text" },
|
|
11
|
-
description: "The Element classes",
|
|
12
|
-
},
|
|
13
9
|
min:{
|
|
14
10
|
control: { type: "number" },
|
|
15
11
|
description: "The Element min value",
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
3
|
class="ui-input-range relative h-lg"
|
|
4
|
-
:class="className"
|
|
5
4
|
>
|
|
6
5
|
<input
|
|
7
6
|
class="appearance-none cursor-pointer bg-transparent w-full h-full"
|
|
@@ -30,7 +29,6 @@
|
|
|
30
29
|
min: string | number;
|
|
31
30
|
max: string | number;
|
|
32
31
|
step: string | number;
|
|
33
|
-
className?: string;
|
|
34
32
|
}>();
|
|
35
33
|
|
|
36
34
|
defineEmits<{
|
|
@@ -4,12 +4,7 @@ import type { Story } from "@storybook/vue3";
|
|
|
4
4
|
export default {
|
|
5
5
|
title: "Components/ui-list-item",
|
|
6
6
|
component: UiIconList,
|
|
7
|
-
argTypes: {
|
|
8
|
-
className: {
|
|
9
|
-
control: { type: "text" },
|
|
10
|
-
description: "The Element classes",
|
|
11
|
-
},
|
|
12
|
-
},
|
|
7
|
+
argTypes: {},
|
|
13
8
|
args: {
|
|
14
9
|
slot: "default text",
|
|
15
10
|
}
|
|
@@ -8,10 +8,6 @@ export default {
|
|
|
8
8
|
component: UiRadio,
|
|
9
9
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
10
10
|
argTypes: {
|
|
11
|
-
className: {
|
|
12
|
-
control: { type: "text" },
|
|
13
|
-
description: "The Element classes",
|
|
14
|
-
},
|
|
15
11
|
justify: {
|
|
16
12
|
control: { type: "select" },
|
|
17
13
|
options: Object.values(EJustify),
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
justify === EJustify.EVENLY && 'justify-evenly',
|
|
11
11
|
justify === EJustify.CENTER && 'justify-center',
|
|
12
12
|
disabled && 'pointer-events-none',
|
|
13
|
-
className
|
|
14
13
|
]"
|
|
15
14
|
>
|
|
16
15
|
<input
|
|
@@ -39,7 +38,6 @@
|
|
|
39
38
|
const slots = useSlots();
|
|
40
39
|
const props = defineProps<{
|
|
41
40
|
modelValue: string;
|
|
42
|
-
className?: string;
|
|
43
41
|
name: string;
|
|
44
42
|
value: string;
|
|
45
43
|
justify?: EJustify;
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
<ui-icon
|
|
19
19
|
:icon-name="iconName"
|
|
20
20
|
:size="ESize.MD"
|
|
21
|
-
class
|
|
21
|
+
class="mb-md"
|
|
22
22
|
/>
|
|
23
23
|
<ui-typography
|
|
24
24
|
:size="ETypographySizes.SM"
|
|
@@ -38,7 +38,6 @@
|
|
|
38
38
|
import { EColors } from "../../../_types/colors";
|
|
39
39
|
|
|
40
40
|
const props = defineProps<{
|
|
41
|
-
className?: string;
|
|
42
41
|
modelValue: string;
|
|
43
42
|
name: string;
|
|
44
43
|
value: string;
|
|
@@ -6,13 +6,7 @@ export default {
|
|
|
6
6
|
title: "Components/ui-radio-list-fancy",
|
|
7
7
|
component: UiRadioFancy,
|
|
8
8
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
9
|
-
argTypes: {
|
|
10
|
-
className: {
|
|
11
|
-
control: { type: "text" },
|
|
12
|
-
description: "The Element classes",
|
|
13
|
-
},
|
|
14
|
-
|
|
15
|
-
},
|
|
9
|
+
argTypes: {},
|
|
16
10
|
args: {},
|
|
17
11
|
};
|
|
18
12
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
3
|
class="ui-radio-fancy grid gap-sm"
|
|
4
|
-
:class="className"
|
|
5
4
|
>
|
|
6
5
|
<ui-radio-item
|
|
7
6
|
v-for="(item, index) in items"
|
|
@@ -10,7 +9,7 @@
|
|
|
10
9
|
:title="item.title"
|
|
11
10
|
:value="String(index)"
|
|
12
11
|
:name="name"
|
|
13
|
-
:icon-name="[
|
|
12
|
+
:icon-name="[EIconType.FAR,'face-smile']"
|
|
14
13
|
@update:model-value="$emit('update:modelValue', $event)"
|
|
15
14
|
/>
|
|
16
15
|
</div>
|
|
@@ -19,9 +18,9 @@
|
|
|
19
18
|
<script lang="ts" setup>
|
|
20
19
|
import UiRadioItem from "./ui-radio-item";
|
|
21
20
|
import { ref, watch } from "vue";
|
|
21
|
+
import { EIconType } from "../ui-icon/_typings";
|
|
22
22
|
|
|
23
23
|
const props = defineProps< {
|
|
24
|
-
className? : string;
|
|
25
24
|
name: string;
|
|
26
25
|
modelValue: string;
|
|
27
26
|
}>();
|
|
@@ -31,15 +30,15 @@
|
|
|
31
30
|
const items = [
|
|
32
31
|
{
|
|
33
32
|
title: "title",
|
|
34
|
-
iconName: [
|
|
33
|
+
iconName: [EIconType.FAR, "face-smile"],
|
|
35
34
|
},
|
|
36
35
|
{
|
|
37
36
|
title: "title",
|
|
38
|
-
iconName: [
|
|
37
|
+
iconName: [EIconType.FAR, "face-smile"],
|
|
39
38
|
},
|
|
40
39
|
{
|
|
41
40
|
title: "title",
|
|
42
|
-
iconName: [
|
|
41
|
+
iconName: [EIconType.FAR, "face-smile"],
|
|
43
42
|
},
|
|
44
43
|
];
|
|
45
44
|
|
|
@@ -8,12 +8,7 @@ export default {
|
|
|
8
8
|
title: "Components/ui-ripple",
|
|
9
9
|
component: UiRipple,
|
|
10
10
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
11
|
-
argTypes: {
|
|
12
|
-
className: {
|
|
13
|
-
control: { type: "text" },
|
|
14
|
-
description: "The Element classes",
|
|
15
|
-
},
|
|
16
|
-
},
|
|
11
|
+
argTypes: {},
|
|
17
12
|
args: {
|
|
18
13
|
// slot: "Some text",
|
|
19
14
|
},
|
|
@@ -45,7 +40,7 @@ const Template2: Story<TComponentProps> = (args) => ({
|
|
|
45
40
|
},
|
|
46
41
|
template: `
|
|
47
42
|
<div class="flex">
|
|
48
|
-
<ui-button class
|
|
43
|
+
<ui-button class="relative">
|
|
49
44
|
<ui-typography is="div">
|
|
50
45
|
<ui-ripple v-bind="args" />
|
|
51
46
|
hello world
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
<div
|
|
3
3
|
ref="tiBtn"
|
|
4
4
|
class="ui-ripple"
|
|
5
|
-
:class="className"
|
|
6
5
|
@click="animateRipple"
|
|
7
6
|
>
|
|
8
7
|
<slot />
|
|
@@ -36,10 +35,6 @@
|
|
|
36
35
|
const tiBtn = ref<HTMLDivElement>();
|
|
37
36
|
const inputsRefs = ref<VNodeRef>();
|
|
38
37
|
|
|
39
|
-
defineProps<{
|
|
40
|
-
className?: string;
|
|
41
|
-
}>();
|
|
42
|
-
|
|
43
38
|
const animateRipple = (e:MouseEvent)=> {
|
|
44
39
|
if(tiBtn.value){
|
|
45
40
|
const pos = tiBtn.value.getBoundingClientRect();
|
|
@@ -6,10 +6,6 @@ export default {
|
|
|
6
6
|
title: "Components/ui-select",
|
|
7
7
|
component: UiSelect,
|
|
8
8
|
argTypes: {
|
|
9
|
-
className: {
|
|
10
|
-
control: { type: "text" },
|
|
11
|
-
description: "The Element classes",
|
|
12
|
-
},
|
|
13
9
|
disabled: {
|
|
14
10
|
control: { type: "boolean" },
|
|
15
11
|
description: "The Element disabled state",
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<ui-typography
|
|
4
4
|
v-if="heading"
|
|
5
5
|
:weight="ETextWeight.SEMI_BOLD"
|
|
6
|
-
class
|
|
6
|
+
class="mb-sm"
|
|
7
7
|
>
|
|
8
8
|
{{ heading }}
|
|
9
9
|
</ui-typography>
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
<ui-typography
|
|
33
33
|
v-if="subLabel"
|
|
34
34
|
:size="ETypographySizes.SM"
|
|
35
|
-
class
|
|
35
|
+
class="mt-sm"
|
|
36
36
|
>
|
|
37
37
|
{{ subLabel }}
|
|
38
38
|
</ui-typography>
|
|
@@ -5,12 +5,7 @@ import type { Story } from "@storybook/vue3";
|
|
|
5
5
|
export default {
|
|
6
6
|
title: "Components/ui-tabs",
|
|
7
7
|
component: UiTabs,
|
|
8
|
-
argTypes: {
|
|
9
|
-
className: {
|
|
10
|
-
control: { type: "text" },
|
|
11
|
-
description: "The Element classes",
|
|
12
|
-
},
|
|
13
|
-
},
|
|
8
|
+
argTypes: {},
|
|
14
9
|
};
|
|
15
10
|
|
|
16
11
|
type TComponentProps = InstanceType<typeof UiTabs>["$props"];
|
|
@@ -6,10 +6,6 @@ export default {
|
|
|
6
6
|
title: "Components/ui-toggle",
|
|
7
7
|
component: UiToggle,
|
|
8
8
|
argTypes: {
|
|
9
|
-
className: {
|
|
10
|
-
control: { type: "text" },
|
|
11
|
-
description: "The Element classes",
|
|
12
|
-
},
|
|
13
9
|
disabled: {
|
|
14
10
|
control: { type: "boolean" },
|
|
15
11
|
description: "The Element disabled state",
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
3
|
class="ui-toggle"
|
|
4
|
-
:class="className"
|
|
5
4
|
>
|
|
6
5
|
<ui-typography
|
|
7
6
|
:weight="ETextWeight.BOLD"
|
|
8
|
-
class
|
|
7
|
+
class="mb-sm"
|
|
9
8
|
>
|
|
10
9
|
{{ header }}
|
|
11
10
|
</ui-typography>
|
|
@@ -49,7 +48,7 @@
|
|
|
49
48
|
|
|
50
49
|
<ui-typography
|
|
51
50
|
:size="ETypographySizes.SM"
|
|
52
|
-
class
|
|
51
|
+
class="w-full"
|
|
53
52
|
line-height
|
|
54
53
|
>{{ title }}</ui-typography>
|
|
55
54
|
</label>
|
|
@@ -60,7 +59,6 @@
|
|
|
60
59
|
import UiTypography, { ETypographySizes, ETextWeight } from "../ui-typography";
|
|
61
60
|
|
|
62
61
|
defineProps<{
|
|
63
|
-
className?: string;
|
|
64
62
|
header?: string;
|
|
65
63
|
title?: string;
|
|
66
64
|
modelValue: boolean;
|
|
@@ -8,10 +8,6 @@ export default {
|
|
|
8
8
|
component: UiTypography,
|
|
9
9
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
10
10
|
argTypes: {
|
|
11
|
-
className: {
|
|
12
|
-
control: { type: "text" },
|
|
13
|
-
description: "The Element classes",
|
|
14
|
-
},
|
|
15
11
|
is: {
|
|
16
12
|
control: { type: "text" },
|
|
17
13
|
description: "The Element component or tag",
|
|
@@ -86,8 +86,6 @@
|
|
|
86
86
|
|
|
87
87
|
lineHeight && 'ui-typography_line-height',
|
|
88
88
|
underline && 'underline',
|
|
89
|
-
|
|
90
|
-
className
|
|
91
89
|
]"
|
|
92
90
|
>
|
|
93
91
|
<slot />
|
|
@@ -99,7 +97,6 @@
|
|
|
99
97
|
import { EColors } from "../../_types/colors";
|
|
100
98
|
|
|
101
99
|
defineProps<{
|
|
102
|
-
className?: string;
|
|
103
100
|
align?: ETextAlign;
|
|
104
101
|
size?: ETypographySizes;
|
|
105
102
|
kind?: EColors;
|
|
@@ -5,10 +5,6 @@ export default {
|
|
|
5
5
|
component: UiVerificationInput,
|
|
6
6
|
// More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
|
|
7
7
|
argTypes: {
|
|
8
|
-
className: {
|
|
9
|
-
control: { type: "text" },
|
|
10
|
-
description: "Inputs custom classes",
|
|
11
|
-
},
|
|
12
8
|
inputsCount: {
|
|
13
9
|
control: { type: "number" },
|
|
14
10
|
description: "Number of inputs",
|