vueless 0.0.217 → 0.0.218

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.
Files changed (53) hide show
  1. package/package.json +2 -2
  2. package/ui.button/configs/default.config.js +19 -19
  3. package/ui.button-link/configs/default.config.js +6 -13
  4. package/ui.button-link/index.vue +1 -1
  5. package/ui.button-toggle/index.vue +1 -1
  6. package/ui.container-page/configs/default.config.js +1 -1
  7. package/ui.dropdown-button/index.vue +6 -3
  8. package/ui.dropdown-item/configs/default.config.js +3 -3
  9. package/ui.dropdown-link/index.vue +1 -1
  10. package/ui.dropdown-list/configs/default.config.js +10 -10
  11. package/ui.dropdown-list/index.vue +1 -1
  12. package/ui.form-calendar/index.vue +1 -1
  13. package/ui.form-checkbox/configs/default.config.js +8 -12
  14. package/ui.form-checkbox/index.vue +5 -7
  15. package/ui.form-checkbox-group/configs/default.config.js +10 -1
  16. package/ui.form-checkbox-group/index.stories.js +21 -28
  17. package/ui.form-checkbox-group/index.vue +3 -3
  18. package/ui.form-date-picker-range/configs/default.config.js +1 -1
  19. package/ui.form-date-picker-range/index.vue +28 -21
  20. package/ui.form-input/composables/attrs.composable.js +10 -10
  21. package/ui.form-input/configs/default.config.js +20 -15
  22. package/ui.form-input/index.vue +2 -1
  23. package/ui.form-input-file/configs/default.config.js +9 -18
  24. package/ui.form-input-file/index.vue +1 -1
  25. package/ui.form-input-money/index.vue +1 -1
  26. package/ui.form-input-rating/index.vue +1 -1
  27. package/ui.form-input-search/index.vue +1 -1
  28. package/ui.form-label/configs/default.config.js +40 -48
  29. package/ui.form-label/index.vue +10 -2
  30. package/ui.form-radio/configs/default.config.js +5 -10
  31. package/ui.form-radio/index.vue +3 -3
  32. package/ui.form-radio-group/configs/default.config.js +3 -4
  33. package/ui.form-radio-group/index.stories.js +7 -15
  34. package/ui.form-radio-group/index.vue +1 -1
  35. package/ui.form-select/configs/default.config.js +15 -21
  36. package/ui.form-select/index.vue +2 -2
  37. package/ui.form-switch/configs/default.config.js +14 -14
  38. package/ui.form-switch/index.vue +1 -1
  39. package/ui.form-textarea/configs/default.config.js +11 -16
  40. package/ui.form-textarea/index.vue +1 -1
  41. package/ui.image-icon/configs/default.config.js +11 -11
  42. package/ui.text-badge/configs/default.config.js +4 -4
  43. package/ui.text-block/configs/default.config.js +3 -4
  44. package/ui.text-block/index.vue +1 -1
  45. package/ui.text-empty/configs/default.config.js +12 -12
  46. package/ui.text-empty/index.vue +16 -9
  47. package/ui.text-file/configs/default.config.js +13 -4
  48. package/ui.text-file/index.vue +12 -2
  49. package/ui.text-files/configs/default.config.js +3 -10
  50. package/ui.text-files/index.vue +1 -1
  51. package/ui.text-money/configs/default.config.js +7 -8
  52. package/ui.text-money/index.stories.js +2 -9
  53. package/web-types.json +39 -30
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vueless",
3
- "version": "0.0.217",
3
+ "version": "0.0.218",
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.37",
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-3 py-1 text-2xs leading-tight gap-1",
14
- xs: "px-4 py-1.5 text-xs leading-tight gap-1.5",
15
- sm: "px-5 py-2.5 text-sm leading-tight gap-1.5",
16
- md: "px-6 py-3.5 text-base leading-tight gap-2",
17
- lg: "px-7 py-4 text-lg leading-tight gap-2.5",
18
- xl: "px-8 py-5 text-xl leading-tight gap-2.5",
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: `
@@ -132,22 +132,22 @@ export default /*tw*/ {
132
132
  { filled: true, variant: "thirdary", color: "white", class: "bg-gray-50" },
133
133
  { square: true, size: "2xs", class: "p-1" },
134
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" },
135
+ { square: true, size: "sm", class: "p-2" },
136
+ { square: true, size: "md", class: "p-3" },
137
+ { square: true, size: "lg", class: "p-3.5" },
138
+ { square: true, size: "xl", class: "p-4" },
139
139
  { iconLeft: true, size: "2xs", class: "pl-1" },
140
140
  { iconLeft: true, size: "xs", class: "pl-1.5" },
141
- { iconLeft: true, size: "sm", class: "pl-2.5" },
142
- { iconLeft: true, size: "md", class: "pl-3.5" },
143
- { iconLeft: true, size: "lg", class: "pl-4" },
144
- { iconLeft: true, size: "xl", class: "pl-5" },
141
+ { iconLeft: true, size: "sm", class: "pl-2" },
142
+ { iconLeft: true, size: "md", class: "pl-4" },
143
+ { iconLeft: true, size: "lg", class: "pl-3.5" },
144
+ { iconLeft: true, size: "xl", class: "pl-4" },
145
145
  { iconRight: true, size: "2xs", class: "pr-1" },
146
- { iconRight: true, size: "xs", class: "pr-1.5" },
147
- { iconRight: true, size: "sm", class: "pr-2.5" },
148
- { iconRight: true, size: "md", class: "pr-3.5" },
149
- { iconRight: true, size: "lg", class: "pr-4" },
150
- { iconRight: true, size: "xl", class: "pr-5" },
146
+ { iconRight: true, size: "xs", class: "pr-2" },
147
+ { iconRight: true, size: "sm", class: "pr-3" },
148
+ { iconRight: true, size: "md", class: "pr-4" },
149
+ { iconRight: true, size: "lg", class: "pr-5" },
150
+ { iconRight: true, size: "xl", class: "pr-6" },
151
151
  ],
152
152
  },
153
153
  text: "whitespace-nowrap focus-visible:outline-none",
@@ -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 focus-visible:outline-none
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
- xs: "text-xs",
40
- sm: "text-sm",
41
- md: "text-base",
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",
@@ -114,7 +114,7 @@ const props = defineProps({
114
114
 
115
115
  /**
116
116
  * Link size.
117
- * @values xs, sm, md, lg
117
+ * @values sm, md, lg
118
118
  */
119
119
  size: {
120
120
  type: String,
@@ -78,7 +78,7 @@ const props = defineProps({
78
78
 
79
79
  /**
80
80
  * Label placement.
81
- * @values top, topInside, topWithDesc, bottom, left, right
81
+ * @values top, topWithDesc, left, right
82
82
  */
83
83
  labelAlign: {
84
84
  type: String,
@@ -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-600",
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
- sm: "xs",
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];
@@ -7,9 +7,9 @@ export default /*tw*/ {
7
7
  `,
8
8
  variants: {
9
9
  size: {
10
- sm: "text-sm p-2",
11
- md: "text-base p-3",
12
- lg: "text-lg p-4",
10
+ sm: "text-xs p-1",
11
+ md: "text-sm p-2",
12
+ lg: "text-base p-3",
13
13
  },
14
14
  },
15
15
  },
@@ -92,7 +92,7 @@ const props = defineProps({
92
92
 
93
93
  /**
94
94
  * Link size.
95
- * @values xs, sm, md, lg
95
+ * @values sm, md, lg
96
96
  */
97
97
  size: {
98
98
  type: String,
@@ -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 m-0 min-w-full p-0 bg-white opacity-1 hover:transition",
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
- p-3 flex items-center align-middle whitespace-nowrap cursor-pointer
32
- font-normal !leading-none normal-case text-gray-900
33
- hover:bg-gray-100 active:bg-gray-200 active:font-medium
34
- overflow-hidden text-ellipsis
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-sm",
39
- md: "text-base",
40
- lg: "text-lg",
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: "bg-gray-200 font-medium",
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} w-auto max-w-max relative", // TODO: label classes should be defined in ULabel component
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
- xs: "size-4",
10
- sm: "size-5",
11
- md: "size-6",
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
- xs: "size-4 text-xs",
33
- sm: "size-5 text-sm",
34
- md: "size-6",
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: "left",
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 top, topInside, topWithDesc, bottom, left, right
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 xs, sm, md, lg, xl
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
- xs: "2xs",
215
- sm: "xs",
216
- md: "sm",
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", description: "some description 1", value: "1" },
19
- { label: "checkbox 2", description: "some description 2", value: "2" },
20
- { label: "checkbox 3", description: "some description 3", value: "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 color="red" v-if=args.isDefaultStory>
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", description: "some description 1", value: "One" },
91
- { name: "Default", label: "Boolean", description: "some description 2", value: false },
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
- description: "some description 3",
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
- * Radio size.
91
- * @values xs, sm, md, lg, xl
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
- * Radio group color.
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: {
@@ -40,7 +40,7 @@ export default /*tw*/ {
40
40
  periodButtonIcon: "{UIcon}",
41
41
  periodButtonIconName: "apps",
42
42
  periodButtonActive: "bg-gray-200",
43
- rangeSwitchWrapper: "mb-2.5 mt-4 flex items-center justify-between py-2",
43
+ rangeSwitchWrapper: "flex items-center justify-between py-2",
44
44
  rangeSwitchTitle: "font-medium text-sm",
45
45
  nextIcon: "{UIcon}",
46
46
  nextIconName: "keyboard_arrow_right",
@@ -82,21 +82,22 @@
82
82
  <UButton
83
83
  v-for="periodButton in periods"
84
84
  :key="periodButton.name"
85
+ :label="periodButton.title"
85
86
  variant="thirdary"
86
87
  size="xs"
87
88
  square
89
+ filled
88
90
  color="brand"
89
91
  v-bind="periodButtonAttrs(getPeriodButtonsClasses(periodButton.name))"
90
92
  @click="onClickPeriodButton(periodButton.name)"
91
- >
92
- {{ periodButton.title }}
93
- </UButton>
93
+ />
94
94
  </div>
95
95
 
96
96
  <div v-bind="periodsRowAttrs">
97
97
  <UButton
98
98
  v-if="customRangeButton.range.to && customRangeButton.range.from"
99
99
  variant="thirdary"
100
+ filled
100
101
  color="brand"
101
102
  v-bind="periodButtonAttrs(getPeriodButtonsClasses(PERIOD.custom))"
102
103
  @click="onClickCustomRangeButton"
@@ -107,6 +108,8 @@
107
108
 
108
109
  <UButton
109
110
  variant="thirdary"
111
+ size="xs"
112
+ filled
110
113
  color="brand"
111
114
  v-bind="periodButtonAttrs(getPeriodButtonsClasses(PERIOD.ownRange))"
112
115
  @click="onClickOwnRange"
@@ -123,29 +126,33 @@
123
126
 
124
127
  <template v-if="!isPeriod.ownRange && !isPeriod.custom">
125
128
  <div v-bind="rangeSwitchWrapperAttrs">
126
- <UIcon
127
- internal
128
- interactive
129
- color="grayscale"
130
- size="sm"
131
- :name="config.prevIconName"
132
- v-bind="prevIconAttrs"
133
- @click="onClickShiftDatesList('prev')"
134
- />
129
+ <UButton size="sm" color="brand" variant="thirdary" square>
130
+ <UIcon
131
+ internal
132
+ interactive
133
+ size="sm"
134
+ color="gray"
135
+ :name="config.prevIconName"
136
+ v-bind="prevIconAttrs"
137
+ @click="onClickShiftDatesList('prev')"
138
+ />
139
+ </UButton>
135
140
 
136
141
  <div v-bind="rangeSwitchTitleAttrs">
137
142
  {{ rangeSwitchTitle }}
138
143
  </div>
139
144
 
140
- <UIcon
141
- internal
142
- interactive
143
- class="icon"
144
- size="sm"
145
- :name="config.nextIconName"
146
- v-bind="nextIconAttrs"
147
- @click="onClickShiftDatesList('next')"
148
- />
145
+ <UButton size="sm" color="brand" variant="thirdary" square>
146
+ <UIcon
147
+ internal
148
+ interactive
149
+ size="sm"
150
+ color="gray"
151
+ :name="config.nextIconName"
152
+ v-bind="nextIconAttrs"
153
+ @click="onClickShiftDatesList('next')"
154
+ />
155
+ </UButton>
149
156
  </div>
150
157
 
151
158
  <div v-bind="periodDateListAttrs(getPeriodDateListClasses())">
@@ -1,9 +1,9 @@
1
1
  import { computed } from "vue";
2
2
  import useUI from "../../composable.ui";
3
- import { cva, cx } from "../../service.ui";
3
+ import { cva } from "../../service.ui";
4
4
  import defaultConfig from "../configs/default.config";
5
5
 
6
- export default function useAttrs(props, { inputPasswordClasses }) {
6
+ export default function useAttrs(props) {
7
7
  const { config, getAttrs, hasSlotContent, isSystemKey } = useUI(
8
8
  defaultConfig,
9
9
  () => props.config,
@@ -29,14 +29,14 @@ export default function useAttrs(props, { inputPasswordClasses }) {
29
29
 
30
30
  attrs[`${key}Attrs`] = getAttrs(key, { classes });
31
31
 
32
- if (key === "input") {
33
- const inputAttrs = attrs[`${key}Attrs`];
34
-
35
- attrs[`${key}Attrs`] = computed(() => ({
36
- ...inputAttrs.value,
37
- class: cx([inputAttrs.value.class, inputPasswordClasses.value]),
38
- }));
39
- }
32
+ // if (key === "input") {
33
+ // const inputAttrs = attrs[`${key}Attrs`];
34
+ //
35
+ // attrs[`${key}Attrs`] = computed(() => ({
36
+ // ...inputAttrs.value,
37
+ // class: cx([inputAttrs.value.class]),
38
+ // }));
39
+ // }
40
40
  }
41
41
 
42
42
  return {