vueless 0.0.217 → 0.0.219
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 +2 -2
- package/ui.button/configs/default.config.js +21 -21
- package/ui.button/index.vue +14 -2
- package/ui.button-link/configs/default.config.js +6 -13
- package/ui.button-link/index.vue +1 -1
- package/ui.button-toggle/index.vue +1 -1
- package/ui.container-page/configs/default.config.js +1 -1
- package/ui.dropdown-button/index.vue +6 -3
- package/ui.dropdown-item/configs/default.config.js +3 -3
- package/ui.dropdown-link/index.vue +1 -1
- package/ui.dropdown-list/configs/default.config.js +10 -10
- package/ui.dropdown-list/index.vue +1 -1
- package/ui.form-calendar/index.vue +1 -1
- package/ui.form-checkbox/configs/default.config.js +8 -12
- package/ui.form-checkbox/index.vue +5 -7
- package/ui.form-checkbox-group/configs/default.config.js +10 -1
- package/ui.form-checkbox-group/index.stories.js +21 -28
- package/ui.form-checkbox-group/index.vue +3 -3
- package/ui.form-date-picker-range/configs/default.config.js +19 -25
- package/ui.form-date-picker-range/index.vue +46 -55
- package/ui.form-input/composables/attrs.composable.js +10 -10
- package/ui.form-input/configs/default.config.js +19 -14
- package/ui.form-input/index.vue +4 -3
- package/ui.form-input-file/configs/default.config.js +9 -18
- package/ui.form-input-file/index.vue +1 -1
- package/ui.form-input-money/index.vue +1 -1
- package/ui.form-input-rating/index.vue +1 -1
- package/ui.form-input-search/index.vue +1 -1
- package/ui.form-label/configs/default.config.js +40 -48
- package/ui.form-label/index.vue +10 -2
- package/ui.form-radio/configs/default.config.js +5 -10
- package/ui.form-radio/index.vue +3 -3
- package/ui.form-radio-group/configs/default.config.js +3 -4
- package/ui.form-radio-group/index.stories.js +7 -15
- package/ui.form-radio-group/index.vue +1 -1
- package/ui.form-select/configs/default.config.js +15 -21
- package/ui.form-select/index.vue +4 -4
- package/ui.form-switch/configs/default.config.js +14 -14
- package/ui.form-switch/index.vue +1 -1
- package/ui.form-textarea/configs/default.config.js +11 -16
- package/ui.form-textarea/index.vue +1 -1
- package/ui.image-icon/configs/default.config.js +11 -11
- package/ui.text-badge/configs/default.config.js +4 -4
- package/ui.text-block/configs/default.config.js +3 -4
- package/ui.text-block/index.vue +1 -1
- package/ui.text-empty/configs/default.config.js +12 -12
- package/ui.text-empty/index.vue +16 -9
- package/ui.text-file/configs/default.config.js +13 -4
- package/ui.text-file/index.vue +12 -2
- package/ui.text-files/configs/default.config.js +3 -10
- package/ui.text-files/index.vue +1 -1
- package/ui.text-money/configs/default.config.js +7 -8
- package/ui.text-money/index.stories.js +2 -9
- package/web-types.json +40 -31
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vueless",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.219",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Vue Styleless Component Framework.",
|
|
6
6
|
"homepage": "https://vueless.com",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"@release-it/bumper": "^6.0.1",
|
|
38
38
|
"@vitejs/plugin-vue": "^5.0.5",
|
|
39
39
|
"@vue/eslint-config-prettier": "^9.0.0",
|
|
40
|
-
"@vueless/plugin-vite": "^0.0.
|
|
40
|
+
"@vueless/plugin-vite": "^0.0.38",
|
|
41
41
|
"@vueless/storybook": "^0.0.34",
|
|
42
42
|
"@vueless/web-types": "^0.0.13",
|
|
43
43
|
"autoprefixer": "^10.4.19",
|
|
@@ -10,12 +10,12 @@ export default /*tw*/ {
|
|
|
10
10
|
`,
|
|
11
11
|
variants: {
|
|
12
12
|
size: {
|
|
13
|
-
"2xs": "px-
|
|
14
|
-
xs: "px-
|
|
15
|
-
sm: "px-
|
|
16
|
-
md: "px-
|
|
17
|
-
lg: "px-
|
|
18
|
-
xl: "px-
|
|
13
|
+
"2xs": "px-2 py-1 text-xs leading-tight gap-0.5",
|
|
14
|
+
xs: "px-3 py-1.5 text-xs leading-tight gap-0.5",
|
|
15
|
+
sm: "px-4 py-2 text-sm leading-tight gap-1",
|
|
16
|
+
md: "px-5 py-3 text-sm leading-tight gap-1",
|
|
17
|
+
lg: "px-6 py-3.5 text-base leading-tight gap-1.5",
|
|
18
|
+
xl: "px-7 py-4 text-base leading-tight gap-1.5",
|
|
19
19
|
},
|
|
20
20
|
variant: {
|
|
21
21
|
primary: `
|
|
@@ -130,24 +130,24 @@ export default /*tw*/ {
|
|
|
130
130
|
class: "bg-gray-800 bg-opacity-10 hover:bg-opacity-15 focus:bg-opacity-15 active:bg-opacity-20",
|
|
131
131
|
},
|
|
132
132
|
{ filled: true, variant: "thirdary", color: "white", class: "bg-gray-50" },
|
|
133
|
-
{ square: true, size: "2xs", class: "p-1" },
|
|
134
|
-
{ square: true, size: "xs", class: "p-1.5" },
|
|
135
|
-
{ square: true, size: "sm", class: "p-2.5" },
|
|
136
|
-
{ square: true, size: "md", class: "p-3.5" },
|
|
137
|
-
{ square: true, size: "lg", class: "p-4" },
|
|
138
|
-
{ square: true, size: "xl", class: "p-5" },
|
|
139
133
|
{ iconLeft: true, size: "2xs", class: "pl-1" },
|
|
140
134
|
{ iconLeft: true, size: "xs", class: "pl-1.5" },
|
|
141
|
-
{ iconLeft: true, size: "sm", class: "pl-2
|
|
142
|
-
{ iconLeft: true, size: "md", class: "pl-
|
|
143
|
-
{ iconLeft: true, size: "lg", class: "pl-
|
|
144
|
-
{ iconLeft: true, size: "xl", class: "pl-
|
|
135
|
+
{ iconLeft: true, size: "sm", class: "pl-2" },
|
|
136
|
+
{ iconLeft: true, size: "md", class: "pl-4" },
|
|
137
|
+
{ iconLeft: true, size: "lg", class: "pl-3.5" },
|
|
138
|
+
{ iconLeft: true, size: "xl", class: "pl-4" },
|
|
145
139
|
{ iconRight: true, size: "2xs", class: "pr-1" },
|
|
146
|
-
{ iconRight: true, size: "xs", class: "pr-
|
|
147
|
-
{ iconRight: true, size: "sm", class: "pr-
|
|
148
|
-
{ iconRight: true, size: "md", class: "pr-
|
|
149
|
-
{ iconRight: true, size: "lg", class: "pr-
|
|
150
|
-
{ iconRight: true, size: "xl", class: "pr-
|
|
140
|
+
{ iconRight: true, size: "xs", class: "pr-2" },
|
|
141
|
+
{ iconRight: true, size: "sm", class: "pr-3" },
|
|
142
|
+
{ iconRight: true, size: "md", class: "pr-4" },
|
|
143
|
+
{ iconRight: true, size: "lg", class: "pr-5" },
|
|
144
|
+
{ iconRight: true, size: "xl", class: "pr-6" },
|
|
145
|
+
{ square: true, size: "2xs", class: "p-1" },
|
|
146
|
+
{ square: true, size: "xs", class: "p-1.5" },
|
|
147
|
+
{ square: true, size: "sm", class: "p-2" },
|
|
148
|
+
{ square: true, size: "md", class: "p-3" },
|
|
149
|
+
{ square: true, size: "lg", class: "p-3.5" },
|
|
150
|
+
{ square: true, size: "xl", class: "p-4" },
|
|
151
151
|
],
|
|
152
152
|
},
|
|
153
153
|
text: "whitespace-nowrap focus-visible:outline-none",
|
package/ui.button/index.vue
CHANGED
|
@@ -27,7 +27,13 @@
|
|
|
27
27
|
:icon-size="iconSize"
|
|
28
28
|
:icon-color="componentColor"
|
|
29
29
|
>
|
|
30
|
-
<UIcon
|
|
30
|
+
<UIcon
|
|
31
|
+
v-if="iconLeft"
|
|
32
|
+
:name="iconLeft"
|
|
33
|
+
:size="iconSize"
|
|
34
|
+
:color="componentColor"
|
|
35
|
+
internal
|
|
36
|
+
/>
|
|
31
37
|
</slot>
|
|
32
38
|
</div>
|
|
33
39
|
|
|
@@ -59,7 +65,13 @@
|
|
|
59
65
|
:icon-size="iconSize"
|
|
60
66
|
:icon-color="componentColor"
|
|
61
67
|
>
|
|
62
|
-
<UIcon
|
|
68
|
+
<UIcon
|
|
69
|
+
v-if="iconRight"
|
|
70
|
+
:name="iconRight"
|
|
71
|
+
:size="iconSize"
|
|
72
|
+
:color="componentColor"
|
|
73
|
+
internal
|
|
74
|
+
/>
|
|
63
75
|
</slot>
|
|
64
76
|
</div>
|
|
65
77
|
</template>
|
|
@@ -1,16 +1,10 @@
|
|
|
1
1
|
export default /*tw*/ {
|
|
2
2
|
wrapper: {
|
|
3
3
|
base: `
|
|
4
|
-
w-fit inline-flex rounded transition
|
|
5
|
-
focus-within:ring-4 focus-within:ring-{color}-500 focus-within:ring-opacity-15
|
|
4
|
+
w-fit inline-flex rounded transition focus-visible:outline-none
|
|
5
|
+
focus-within:ring-4 focus-within:ring-offset-4 focus-within:ring-{color}-500 focus-within:ring-opacity-15
|
|
6
6
|
`,
|
|
7
7
|
variants: {
|
|
8
|
-
size: {
|
|
9
|
-
xs: "focus-within:ring-offset-2",
|
|
10
|
-
sm: "focus-within:ring-offset-2",
|
|
11
|
-
md: "focus-within:ring-offset-4",
|
|
12
|
-
lg: "focus-within:ring-offset-4",
|
|
13
|
-
},
|
|
14
8
|
color: {
|
|
15
9
|
grayscale: "focus-within:ring-gray-900/10",
|
|
16
10
|
white: "focus-within:ring-white/10",
|
|
@@ -28,7 +22,7 @@ export default /*tw*/ {
|
|
|
28
22
|
},
|
|
29
23
|
link: {
|
|
30
24
|
base: `
|
|
31
|
-
w-full inline-block !leading-none transition
|
|
25
|
+
w-full inline-block cursor-pointer !leading-none transition
|
|
32
26
|
text-{color}-500 decoration-{color}-500 underline-offset-4
|
|
33
27
|
hover:text-opacity-80
|
|
34
28
|
active:text-opacity-70
|
|
@@ -36,10 +30,9 @@ export default /*tw*/ {
|
|
|
36
30
|
`,
|
|
37
31
|
variants: {
|
|
38
32
|
size: {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
lg: "text-lg",
|
|
33
|
+
sm: "text-xs",
|
|
34
|
+
md: "text-sm",
|
|
35
|
+
lg: "text-base",
|
|
43
36
|
},
|
|
44
37
|
underlined: {
|
|
45
38
|
undefined: "hover:decoration-solid hover:underline",
|
package/ui.button-link/index.vue
CHANGED
|
@@ -42,7 +42,7 @@ export default /*tw*/ {
|
|
|
42
42
|
backLinkIcon: "{UIcon}",
|
|
43
43
|
backLinkIconName: "arrow_back",
|
|
44
44
|
title: "{UHeader}",
|
|
45
|
-
description: "mt-1.5 text-base font-normal text-gray-
|
|
45
|
+
description: "mt-1.5 text-base font-normal text-gray-500",
|
|
46
46
|
headerRight: "",
|
|
47
47
|
footer: `mb-0 mt-14 justify-between pt-8 md:flex md:items-baseline space-y-4 md:space-y-0 border-t border-gray-200`,
|
|
48
48
|
footerLeft: "md:flex space-y-4 md:space-x-4 md:space-y-0",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
v-bind="buttonAttrs"
|
|
15
15
|
@click="onClickButton"
|
|
16
16
|
>
|
|
17
|
-
<template #right>
|
|
17
|
+
<template #icon-right>
|
|
18
18
|
<UIcon
|
|
19
19
|
v-if="!noIcon"
|
|
20
20
|
internal
|
|
@@ -114,7 +114,7 @@ const props = defineProps({
|
|
|
114
114
|
|
|
115
115
|
/**
|
|
116
116
|
* Button size.
|
|
117
|
-
* @values sm, md, lg
|
|
117
|
+
* @values 2xs, xs, sm, md, lg, xl
|
|
118
118
|
*/
|
|
119
119
|
size: {
|
|
120
120
|
type: String,
|
|
@@ -250,9 +250,12 @@ const iconColor = computed(() => {
|
|
|
250
250
|
|
|
251
251
|
const iconSize = computed(() => {
|
|
252
252
|
const sizes = {
|
|
253
|
-
|
|
253
|
+
"2xs": "xs",
|
|
254
|
+
xs: "xs",
|
|
255
|
+
sm: "sm",
|
|
254
256
|
md: "sm",
|
|
255
257
|
lg: "md",
|
|
258
|
+
xl: "md",
|
|
256
259
|
};
|
|
257
260
|
|
|
258
261
|
return sizes[props.size];
|
|
@@ -5,7 +5,7 @@ export default /*tw*/ {
|
|
|
5
5
|
overflow-auto [-webkit-overflow-scrolling:touch]
|
|
6
6
|
focus:outline-none
|
|
7
7
|
`,
|
|
8
|
-
list: "inline-block list-none align-top
|
|
8
|
+
list: "m-1 inline-block list-none align-top w-full p-0 bg-white opacity-1 hover:transition",
|
|
9
9
|
subGroupLabel: {
|
|
10
10
|
base: "pointer-events-none bg-transparent !font-medium !leading-none !uppercase !text-gray-500/[85] pt-1",
|
|
11
11
|
variants: {
|
|
@@ -28,16 +28,16 @@ export default /*tw*/ {
|
|
|
28
28
|
},
|
|
29
29
|
option: {
|
|
30
30
|
base: `
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
31
|
+
rounded px-3 py-2.5 flex items-center align-middle whitespace-nowrap cursor-pointer
|
|
32
|
+
font-normal !leading-none normal-case text-gray-900
|
|
33
|
+
hover:bg-gray-100
|
|
34
|
+
overflow-hidden text-ellipsis
|
|
35
|
+
`,
|
|
36
36
|
variants: {
|
|
37
37
|
size: {
|
|
38
|
-
sm: "text-
|
|
39
|
-
md: "text-
|
|
40
|
-
lg: "text-
|
|
38
|
+
sm: "text-xs",
|
|
39
|
+
md: "text-sm",
|
|
40
|
+
lg: "text-base",
|
|
41
41
|
},
|
|
42
42
|
disabled: {
|
|
43
43
|
true: "pointer-events-none",
|
|
@@ -45,7 +45,7 @@ export default /*tw*/ {
|
|
|
45
45
|
},
|
|
46
46
|
},
|
|
47
47
|
optionHighlight: "bg-gray-100",
|
|
48
|
-
optionSelected: "
|
|
48
|
+
optionSelected: "font-bold",
|
|
49
49
|
optionItem: "group/item block",
|
|
50
50
|
optionContent: "overflow-hidden text-ellipsis",
|
|
51
51
|
addTitleWrapper: `
|
|
@@ -265,7 +265,7 @@ const wrapperHeight = computed(() => {
|
|
|
265
265
|
.map((el) => el.getBoundingClientRect().height)
|
|
266
266
|
.reduce((acc, cur) => acc + cur, 0);
|
|
267
267
|
|
|
268
|
-
return props.visibleOptions === undefined ? "auto" : `${maxHeight}px`;
|
|
268
|
+
return props.visibleOptions === undefined ? "auto" : `${maxHeight + 10}px`;
|
|
269
269
|
});
|
|
270
270
|
|
|
271
271
|
function onClickAddOption() {
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
square
|
|
13
13
|
variant="thirdary"
|
|
14
14
|
v-bind="navigationSwitchViewButtonAttrs"
|
|
15
|
-
@click="onClickViewSwitch"
|
|
16
15
|
@mousedown.prevent.capture
|
|
16
|
+
@click="onClickViewSwitch"
|
|
17
17
|
>
|
|
18
18
|
<span v-if="isCurrentView.day" v-bind="dayViewSwitchLabelAttrs">
|
|
19
19
|
<span v-bind="dayViewSwitchLabelMonthAttrs" v-text="viewSwitchLabel.month" />
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
export default /*tw*/ {
|
|
2
|
-
label: "{ULabel}
|
|
2
|
+
label: "{ULabel}",
|
|
3
3
|
partialIconName: "remove",
|
|
4
4
|
selectedIconName: "check",
|
|
5
5
|
iconWrapper: {
|
|
6
6
|
base: "flex items-center justify-center absolute rounded bg-{color}-500",
|
|
7
7
|
variants: {
|
|
8
8
|
size: {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
lg: "size-7",
|
|
13
|
-
xl: "size-8",
|
|
9
|
+
sm: "size-4",
|
|
10
|
+
md: "size-5",
|
|
11
|
+
lg: "size-6",
|
|
14
12
|
},
|
|
15
13
|
color: {
|
|
16
14
|
grayscale: "border-gray-900 bg-gray-900",
|
|
@@ -29,11 +27,9 @@ export default /*tw*/ {
|
|
|
29
27
|
`,
|
|
30
28
|
variants: {
|
|
31
29
|
size: {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
lg: "size-7 text-lg",
|
|
36
|
-
xl: "size-8 text-xl",
|
|
30
|
+
sm: "size-4 text-xs",
|
|
31
|
+
md: "size-5 text-sm",
|
|
32
|
+
lg: "size-6 text-base",
|
|
37
33
|
},
|
|
38
34
|
color: {
|
|
39
35
|
grayscale: `
|
|
@@ -54,7 +50,7 @@ export default /*tw*/ {
|
|
|
54
50
|
defaultVariants: {
|
|
55
51
|
color: "brand",
|
|
56
52
|
size: "md",
|
|
57
|
-
labelAlign: "
|
|
53
|
+
labelAlign: "right",
|
|
58
54
|
partial: false,
|
|
59
55
|
disabled: false,
|
|
60
56
|
},
|
|
@@ -119,7 +119,7 @@ const props = defineProps({
|
|
|
119
119
|
|
|
120
120
|
/**
|
|
121
121
|
* Label placement.
|
|
122
|
-
* @values
|
|
122
|
+
* @values left, right
|
|
123
123
|
*/
|
|
124
124
|
labelAlign: {
|
|
125
125
|
type: String,
|
|
@@ -137,7 +137,7 @@ const props = defineProps({
|
|
|
137
137
|
|
|
138
138
|
/**
|
|
139
139
|
* Checkbox size.
|
|
140
|
-
* @values
|
|
140
|
+
* @values sm, md, lg
|
|
141
141
|
*/
|
|
142
142
|
size: {
|
|
143
143
|
type: String,
|
|
@@ -211,11 +211,9 @@ const { config, checkboxAttrs, iconWrapperAttrs, labelAttrs, iconAttrs } = useAt
|
|
|
211
211
|
|
|
212
212
|
const iconSize = computed(() => {
|
|
213
213
|
const sizes = {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
lg: "md",
|
|
218
|
-
xl: "lg",
|
|
214
|
+
sm: "2xs",
|
|
215
|
+
md: "xs",
|
|
216
|
+
lg: "sm",
|
|
219
217
|
};
|
|
220
218
|
|
|
221
219
|
return sizes[props.size];
|
|
@@ -1,7 +1,16 @@
|
|
|
1
1
|
export default /*tw*/ {
|
|
2
2
|
label: "{ULabel}",
|
|
3
|
-
list: "ml-4 flex flex-col gap-4 relative",
|
|
4
3
|
checkbox: "{UCheckbox}",
|
|
4
|
+
list: {
|
|
5
|
+
base: "flex flex-col",
|
|
6
|
+
variants: {
|
|
7
|
+
size: {
|
|
8
|
+
sm: "gap-1.5 mt-1",
|
|
9
|
+
md: "gap-2 mt-1.5",
|
|
10
|
+
lg: "gap-2.5 mt-2",
|
|
11
|
+
},
|
|
12
|
+
},
|
|
13
|
+
},
|
|
5
14
|
defaultVariants: {
|
|
6
15
|
color: "brand",
|
|
7
16
|
size: "md",
|
|
@@ -15,9 +15,9 @@ export default {
|
|
|
15
15
|
args: {
|
|
16
16
|
label: "Label",
|
|
17
17
|
options: [
|
|
18
|
-
{ label: "checkbox 1",
|
|
19
|
-
{ label: "checkbox 2",
|
|
20
|
-
{ label: "checkbox 3",
|
|
18
|
+
{ label: "checkbox 1", value: "1" },
|
|
19
|
+
{ label: "checkbox 2", value: "2" },
|
|
20
|
+
{ label: "checkbox 3", value: "3" },
|
|
21
21
|
],
|
|
22
22
|
value: ["One"],
|
|
23
23
|
},
|
|
@@ -40,18 +40,12 @@ const DefaultTemplate = (args) => ({
|
|
|
40
40
|
<URow class="!flex-col">
|
|
41
41
|
<UCheckboxGroup v-bind="args" v-model="value">
|
|
42
42
|
<template v-for="(radio, index) in args.options" :key="index">
|
|
43
|
-
<UCheckbox
|
|
44
|
-
v-bind="radio"
|
|
45
|
-
>
|
|
46
|
-
</UCheckbox>
|
|
43
|
+
<UCheckbox v-bind="radio"/>
|
|
47
44
|
</template>
|
|
48
45
|
</UCheckboxGroup>
|
|
49
46
|
|
|
50
47
|
<URow>
|
|
51
|
-
<UAlert
|
|
52
|
-
<b>NOTE:</b> <p>UCheckboxGroup component have to have unique name attribute</p>
|
|
53
|
-
</UAlert>
|
|
54
|
-
<UAlert color="blue">
|
|
48
|
+
<UAlert size="sm" color="blue">
|
|
55
49
|
<p>Selected value: {{ value }}</p>
|
|
56
50
|
</UAlert>
|
|
57
51
|
</URow>
|
|
@@ -72,7 +66,7 @@ const OptionsTemplate = (args) => ({
|
|
|
72
66
|
template: `
|
|
73
67
|
<URow class="!flex-col">
|
|
74
68
|
<UCheckboxGroup v-bind="args" v-model="value" :options="args.options" />
|
|
75
|
-
|
|
69
|
+
|
|
76
70
|
<URow>
|
|
77
71
|
<UAlert color="blue">
|
|
78
72
|
<p>Selected value: {{ value }}</p>
|
|
@@ -87,18 +81,17 @@ Default.args = {
|
|
|
87
81
|
name: "Default",
|
|
88
82
|
isDefaultStory: true,
|
|
89
83
|
options: [
|
|
90
|
-
{ name: "Default", label: "String",
|
|
91
|
-
{ name: "Default", label: "Boolean",
|
|
84
|
+
{ name: "Default", label: "String", value: "One" },
|
|
85
|
+
{ name: "Default", label: "Boolean", value: false },
|
|
92
86
|
{
|
|
93
87
|
name: "Default",
|
|
94
88
|
label: "Object",
|
|
95
|
-
|
|
89
|
+
|
|
96
90
|
value: { key: "value" },
|
|
97
91
|
},
|
|
98
92
|
{
|
|
99
93
|
name: "Default",
|
|
100
94
|
label: "Object",
|
|
101
|
-
description: "some description 4",
|
|
102
95
|
value: ["Array", 1],
|
|
103
96
|
},
|
|
104
97
|
],
|
|
@@ -129,15 +122,15 @@ const ColorsTemplate = (args, { argTypes } = {}) => ({
|
|
|
129
122
|
},
|
|
130
123
|
template: `
|
|
131
124
|
<URow class="!flex-col">
|
|
132
|
-
<UCheckboxGroup
|
|
125
|
+
<UCheckboxGroup
|
|
133
126
|
v-bind="args"
|
|
134
|
-
v-for="color in colors"
|
|
135
|
-
:key="color"
|
|
136
|
-
:label="color"
|
|
127
|
+
v-for="color in colors"
|
|
128
|
+
:key="color"
|
|
129
|
+
:label="color"
|
|
137
130
|
:color="color"
|
|
138
|
-
:options="args.options"
|
|
131
|
+
:options="args.options"
|
|
139
132
|
name="color"
|
|
140
|
-
v-model="value"
|
|
133
|
+
v-model="value"
|
|
141
134
|
/>
|
|
142
135
|
</URow>
|
|
143
136
|
`,
|
|
@@ -156,15 +149,15 @@ const SizesTemplate = (args, { argTypes } = {}) => ({
|
|
|
156
149
|
},
|
|
157
150
|
template: `
|
|
158
151
|
<URow class="!flex-col">
|
|
159
|
-
<UCheckboxGroup
|
|
152
|
+
<UCheckboxGroup
|
|
160
153
|
v-bind="args"
|
|
161
|
-
v-for="size in sizes"
|
|
162
|
-
:key="size"
|
|
163
|
-
:label="size"
|
|
154
|
+
v-for="size in sizes"
|
|
155
|
+
:key="size"
|
|
156
|
+
:label="size"
|
|
164
157
|
:size="size"
|
|
165
|
-
:options="args.options"
|
|
158
|
+
:options="args.options"
|
|
166
159
|
name="size"
|
|
167
|
-
v-model="value"
|
|
160
|
+
v-model="value"
|
|
168
161
|
/>
|
|
169
162
|
</URow>
|
|
170
163
|
`,
|
|
@@ -87,8 +87,8 @@ const props = defineProps({
|
|
|
87
87
|
},
|
|
88
88
|
|
|
89
89
|
/**
|
|
90
|
-
*
|
|
91
|
-
* @values
|
|
90
|
+
* Checkbox group size.
|
|
91
|
+
* @values sm, md, lg
|
|
92
92
|
*/
|
|
93
93
|
size: {
|
|
94
94
|
type: String,
|
|
@@ -96,7 +96,7 @@ const props = defineProps({
|
|
|
96
96
|
},
|
|
97
97
|
|
|
98
98
|
/**
|
|
99
|
-
*
|
|
99
|
+
* Checkbox group color.
|
|
100
100
|
* @values brand, grayscale, gray, red, orange, amber, yellow, lime, green, emerald, teal, cyan, sky, blue, indigo, violet, purple, fuchsia, pink, rose
|
|
101
101
|
*/
|
|
102
102
|
color: {
|
|
@@ -8,10 +8,12 @@ export default /*tw*/ {
|
|
|
8
8
|
flex rounded-lg max-md:justify-between
|
|
9
9
|
focus-within:ring-4 focus-within:ring-brand-700 focus-within:ring-opacity-20
|
|
10
10
|
`,
|
|
11
|
-
button: "{UButton} shrink-0 grow rounded-none
|
|
11
|
+
button: "{UButton} shrink-0 grow rounded-none !ring-0",
|
|
12
12
|
buttonActive: "ring-0",
|
|
13
13
|
buttonWrapperActive: "ring-4 ring-brand-700 ring-opacity-20",
|
|
14
14
|
shiftRangeButton: "focus:ring-0 last:rounded-l-none last:rounded-r-lg first:rounded-l-lg first:rounded-r-none",
|
|
15
|
+
nextIconName: "keyboard_arrow_right",
|
|
16
|
+
prevIconName: "keyboard_arrow_left",
|
|
15
17
|
menu: {
|
|
16
18
|
base: "absolute z-40 my-2 w-80 overflow-hidden rounded-lg border border-brand-300 bg-white p-2 shadow focus:outline-none",
|
|
17
19
|
variants: {
|
|
@@ -33,19 +35,12 @@ export default /*tw*/ {
|
|
|
33
35
|
leaveToClass: "opacity-0 scale-95",
|
|
34
36
|
},
|
|
35
37
|
periodsRow: "mb-1 flex min-w-64 gap-1",
|
|
36
|
-
periodButton:
|
|
37
|
-
{UButton} h-[3.125rem] w-full flex flex-col items-center justify-center
|
|
38
|
-
[&_span]:block [&_span]:font-normal [&_span]:text-brand-500
|
|
39
|
-
`,
|
|
40
|
-
periodButtonIcon: "{UIcon}",
|
|
38
|
+
periodButton: "{UButton} h-[3.125rem] w-full !ring-0",
|
|
41
39
|
periodButtonIconName: "apps",
|
|
42
|
-
periodButtonActive: "bg-
|
|
43
|
-
rangeSwitchWrapper: "
|
|
40
|
+
periodButtonActive: "!bg-opacity-20",
|
|
41
|
+
rangeSwitchWrapper: "flex items-center justify-between py-2",
|
|
42
|
+
rangeSwitchButton: "{UButton}",
|
|
44
43
|
rangeSwitchTitle: "font-medium text-sm",
|
|
45
|
-
nextIcon: "{UIcon}",
|
|
46
|
-
nextIconName: "keyboard_arrow_right",
|
|
47
|
-
prevIcon: "{UIcon}",
|
|
48
|
-
prevIconName: "keyboard_arrow_left",
|
|
49
44
|
periodDateList: "",
|
|
50
45
|
periodDateMonthList: "grid grid-cols-3 grid-rows-1 gap-0.5",
|
|
51
46
|
periodDateWeekList: "",
|
|
@@ -53,25 +48,24 @@ export default /*tw*/ {
|
|
|
53
48
|
periodDateQuarterList: "",
|
|
54
49
|
periodDate: "w-full",
|
|
55
50
|
periodDateActive: "bg-gray-100",
|
|
56
|
-
rangeInputWrapper: "flex mt-4",
|
|
51
|
+
rangeInputWrapper: "flex mt-4 -space-x-px",
|
|
57
52
|
rangeInput: {
|
|
58
|
-
|
|
53
|
+
component: "{UInput}",
|
|
59
54
|
label: {
|
|
60
|
-
|
|
55
|
+
component: "{ULabel}",
|
|
56
|
+
wrapper: "group/range-input-wrapper w-full hover:z-10 focus:z-10",
|
|
61
57
|
description: "hidden",
|
|
62
58
|
},
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
},
|
|
69
|
-
},
|
|
70
|
-
},
|
|
59
|
+
block: `
|
|
60
|
+
focus-within:z-10 focus-within:ring-0
|
|
61
|
+
group-first/range-input-wrapper:rounded-r-none group-last/range-input-wrapper:rounded-l-none
|
|
62
|
+
`,
|
|
63
|
+
input: "group-first/range-input-wrapper:rounded-r-none group-last/range-input-wrapper:rounded-l-none",
|
|
71
64
|
},
|
|
72
|
-
inputRangeError: "text-xs font-normal
|
|
65
|
+
inputRangeError: "text-xs font-normal leading-none mt-2 text-center text-red-500",
|
|
73
66
|
calendar: {
|
|
74
|
-
|
|
67
|
+
component: "{UCalendar}",
|
|
68
|
+
wrapper: "p-0 mt-2 w-full border-none shadow-none",
|
|
75
69
|
navigation: "mb-0 border-none",
|
|
76
70
|
navigationSwitchViewButton: "rounded-lg px-3",
|
|
77
71
|
day: "w-full h-10 mb-0.5",
|