vueless 0.0.825-beta.2 → 0.0.825-beta.4

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 (50) hide show
  1. package/bin/constants.js +3 -3
  2. package/composables/useUI.ts +3 -13
  3. package/constants.js +14 -11
  4. package/package.json +2 -3
  5. package/plugin-vite.js +0 -1
  6. package/tailwind.css +23 -5
  7. package/types.ts +41 -29
  8. package/ui.button/types.ts +9 -1
  9. package/ui.button-link/types.ts +9 -1
  10. package/ui.container-accordion/config.ts +1 -1
  11. package/ui.container-modal-confirm/types.ts +9 -1
  12. package/ui.dropdown-badge/types.ts +9 -1
  13. package/ui.dropdown-button/types.ts +9 -1
  14. package/ui.dropdown-link/types.ts +9 -1
  15. package/ui.dropdown-list/config.ts +1 -1
  16. package/ui.dropdown-list/types.ts +9 -1
  17. package/ui.form-checkbox/types.ts +9 -1
  18. package/ui.form-checkbox-group/types.ts +9 -1
  19. package/ui.form-checkbox-multi-state/types.ts +9 -1
  20. package/ui.form-label/config.ts +2 -2
  21. package/ui.form-radio/types.ts +9 -1
  22. package/ui.form-radio-group/types.ts +9 -1
  23. package/ui.form-switch/config.ts +1 -1
  24. package/ui.form-switch/types.ts +9 -1
  25. package/ui.image-avatar/config.ts +1 -1
  26. package/ui.image-avatar/types.ts +9 -1
  27. package/ui.loader/ULoader.vue +1 -1
  28. package/ui.loader/config.ts +6 -6
  29. package/ui.loader-overlay/ULoaderOverlay.vue +1 -1
  30. package/ui.loader-overlay/config.ts +4 -4
  31. package/ui.loader-overlay/types.ts +9 -1
  32. package/ui.loader-progress/ULoaderProgress.vue +2 -2
  33. package/ui.loader-progress/config.ts +1 -1
  34. package/ui.loader-progress/types.ts +11 -3
  35. package/ui.navigation-breadcrumbs/types.ts +9 -1
  36. package/ui.navigation-progress/types.ts +9 -1
  37. package/ui.other-dot/types.ts +9 -1
  38. package/ui.text-alert/config.ts +1 -1
  39. package/ui.text-alert/types.ts +9 -1
  40. package/ui.text-badge/config.ts +1 -1
  41. package/ui.text-badge/types.ts +9 -1
  42. package/ui.text-block/config.ts +1 -1
  43. package/ui.text-header/types.ts +9 -1
  44. package/ui.text-money/types.ts +9 -1
  45. package/ui.text-number/config.ts +1 -2
  46. package/ui.text-number/types.ts +9 -1
  47. package/utils/node/mergeConfigs.js +19 -41
  48. package/utils/node/tailwindSafelist.js +3 -6
  49. package/utils/theme.ts +64 -5
  50. package/utils/ui.ts +2 -2
package/bin/constants.js CHANGED
@@ -5,14 +5,14 @@ export default {
5
5
  /**
6
6
  * Global settings.
7
7
  */
8
- strategy: "merge",
9
8
  primary: "grayscale",
9
+ secondary: "emerald",
10
10
  neutral: "gray",
11
+ colorMode: "auto",
11
12
  outline: 2,
12
13
  rounding: 8,
13
14
  fontSize: 14,
14
- colorMode: "auto",
15
- baseClasses: "",
15
+ unstyled: false,
16
16
 
17
17
  /**
18
18
  * Light theme CSS variable settings.
@@ -4,10 +4,8 @@ import { isEqual } from "lodash-es";
4
4
  import { cx, cva, setColor, vuelessConfig, getMergedConfig } from "../utils/ui.ts";
5
5
  import { isCSR } from "../utils/helper.ts";
6
6
  import {
7
- STRATEGY_TYPE,
8
7
  CVA_CONFIG_KEY,
9
8
  SYSTEM_CONFIG_KEY,
10
- DEFAULT_BASE_CLASSES,
11
9
  EXTENDS_PATTERN_REG_EXP,
12
10
  NESTED_COMPONENT_PATTERN_REG_EXP,
13
11
  } from "../constants.js";
@@ -19,7 +17,6 @@ import type {
19
17
  Defaults,
20
18
  KeyAttrs,
21
19
  KeysAttrs,
22
- Strategies,
23
20
  MutatedProps,
24
21
  UnknownObject,
25
22
  PrimaryColors,
@@ -49,10 +46,6 @@ export default function useUI<T>(
49
46
 
50
47
  const globalConfig = (vuelessConfig.components?.[componentName] || {}) as ComponentConfigFull<T>;
51
48
 
52
- const vuelessStrategy = Object.values(STRATEGY_TYPE).includes(vuelessConfig.strategy || "")
53
- ? (vuelessConfig.strategy as Strategies)
54
- : (STRATEGY_TYPE.merge as Strategies);
55
-
56
49
  const firstClassKey = Object.keys(defaultConfig || {})[0];
57
50
  const config = ref({}) as Ref<ComponentConfigFull<T>>;
58
51
 
@@ -67,7 +60,7 @@ export default function useUI<T>(
67
60
  defaultConfig,
68
61
  globalConfig,
69
62
  propsConfig,
70
- vuelessStrategy,
63
+ unstyled: Boolean(vuelessConfig.unstyled),
71
64
  }) as ComponentConfigFull<T>;
72
65
  },
73
66
  { deep: true, immediate: true },
@@ -82,7 +75,6 @@ export default function useUI<T>(
82
75
  const value = (config.value as ComponentConfigFull<T>)[key];
83
76
  const color = (toValue(mutatedProps || {}).color || props.color) as PrimaryColors;
84
77
 
85
- const isTopLevelKey = (topLevelClassKey || firstClassKey) === key;
86
78
  const isNestedComponent = Boolean(getNestedComponent(value));
87
79
 
88
80
  let classes = "";
@@ -99,10 +91,6 @@ export default function useUI<T>(
99
91
  classes = value;
100
92
  }
101
93
 
102
- if (isTopLevelKey && !isNestedComponent) {
103
- classes = cx([DEFAULT_BASE_CLASSES, vuelessConfig.baseClasses, classes]);
104
- }
105
-
106
94
  classes = classes
107
95
  .replaceAll(EXTENDS_PATTERN_REG_EXP, "")
108
96
  .replace(NESTED_COMPONENT_PATTERN_REG_EXP, "");
@@ -180,6 +168,7 @@ export default function useUI<T>(
180
168
  defaultConfig: extendsKeyConfig,
181
169
  globalConfig: keyConfig,
182
170
  propsConfig: attrs["config"] || {},
171
+ unstyled: Boolean(vuelessConfig.unstyled),
183
172
  }),
184
173
  ...getDefaults({
185
174
  ...(extendsKeyConfig.defaults || {}),
@@ -228,6 +217,7 @@ export default function useUI<T>(
228
217
  defaultConfig: config.value[firstKey],
229
218
  globalConfig: globalConfig[firstKey],
230
219
  propsConfig: propsConfig[firstKey],
220
+ unstyled: Boolean(vuelessConfig.unstyled),
231
221
  }) as NestedComponent;
232
222
  }
233
223
 
package/constants.js CHANGED
@@ -5,6 +5,7 @@
5
5
 
6
6
  /* Custom Vueless colors */
7
7
  export const PRIMARY_COLOR = "primary";
8
+ export const SECONDARY_COLOR = "secondary";
8
9
  export const NEUTRAL_COLOR = "neutral";
9
10
  export const GRAYSCALE_COLOR = "grayscale";
10
11
 
@@ -15,6 +16,7 @@ export const COLOR_MODE_KEY = "vl-color-mode";
15
16
 
16
17
  /* Vueless defaults */
17
18
  export const DEFAULT_PRIMARY_COLOR = GRAYSCALE_COLOR;
19
+ export const DEFAULT_SECONDARY_COLOR = "emerald";
18
20
  export const DEFAULT_NEUTRAL_COLOR = "gray";
19
21
  export const DEFAULT_FONT_SIZE = 14; /* pixels */
20
22
  export const FONT_SIZE_DECREMENT = 2; /* pixels */
@@ -25,7 +27,6 @@ export const OUTLINE_INCREMENT = 1; /* pixels */
25
27
  export const DEFAULT_ROUNDING = 8; /* pixels */
26
28
  export const ROUNDING_DECREMENT = 4; /* pixels */
27
29
  export const ROUNDING_INCREMENT = 6; /* pixels */
28
- export const DEFAULT_BASE_CLASSES = ``;
29
30
 
30
31
  /* Vueless supported color shades */
31
32
  export const PRIMARY_COLORS = [
@@ -57,6 +58,11 @@ export const DEFAULT_LIGHT_THEME = {
57
58
  "--vl-primary-lifted": "--color-primary-700",
58
59
  "--vl-primary-accented": "--color-primary-800",
59
60
 
61
+ /* Secondary colors */
62
+ "--vl-secondary": "--vl-secondary-600",
63
+ "--vl-secondary-lifted": "--vl-secondary-700",
64
+ "--vl-secondary-accented": "--vl-secondary-800",
65
+
60
66
  /* Info colors */
61
67
  "--vl-info": "--color-blue-600",
62
68
  "--vl-info-lifted": "--color-blue-700",
@@ -114,6 +120,11 @@ export const DEFAULT_DARK_THEME = {
114
120
  "--vl-primary-lifted": "--color-primary-500",
115
121
  "--vl-primary-accented": "--color-primary-600",
116
122
 
123
+ /* Secondary colors */
124
+ "--vl-secondary": "--vl-secondary-400",
125
+ "--vl-secondary-lifted": "--vl-secondary-500",
126
+ "--vl-secondary-accented": "--vl-secondary-600",
127
+
117
128
  /* Info colors */
118
129
  "--vl-info": "--color-blue-400",
119
130
  "--vl-info-lifted": "--color-blue-500",
@@ -165,13 +176,6 @@ export const DEFAULT_DARK_THEME = {
165
176
  "--vl-bg-inverted": "--vl-neutral-100",
166
177
  };
167
178
 
168
- /* Vueless merge class strategy types */
169
- export const STRATEGY_TYPE = {
170
- merge: "merge",
171
- replace: "replace",
172
- overwrite: "overwrite",
173
- };
174
-
175
179
  /* CVA (Class Variance Authority) default config keys */
176
180
  export const CVA_CONFIG_KEY = {
177
181
  base: "base",
@@ -184,8 +188,7 @@ export const CVA_CONFIG_KEY = {
184
188
  export const SYSTEM_CONFIG_KEY = {
185
189
  i18n: "i18n",
186
190
  defaults: "defaults",
187
- strategy: "strategy",
188
- safelist: "safelist",
191
+ unstyled: "unstyled",
189
192
  transition: "transition",
190
193
  safelistColors: "safelistColors",
191
194
  ...CVA_CONFIG_KEY,
@@ -290,7 +293,7 @@ export const TAILWIND_MERGE_EXTENSION = {
290
293
  },
291
294
  classGroups: {
292
295
  "outline-w": [{ outline: ["small", "medium", "large"] }],
293
- "font-size": [{ text: ["xsmall", "small", "medium", "large"] }],
296
+ "font-size": [{ text: ["tiny", "small", "medium", "large"] }],
294
297
  "bg-color": [{ bg: ["default", "muted", "lifted", "accented", "inverted"] }],
295
298
  "text-color": [{ text: ["default", "muted", "lifted", "accented", "inverted"] }],
296
299
  "border-color": [{ border: ["default", "muted", "lifted", "accented"] }],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vueless",
3
- "version": "0.0.825-beta.2",
3
+ "version": "0.0.825-beta.4",
4
4
  "license": "MIT",
5
5
  "description": "Vue Styleless UI Component Library, powered by Tailwind CSS.",
6
6
  "keywords": [
@@ -62,7 +62,7 @@
62
62
  "@eslint/js": "^9.12.0",
63
63
  "@material-symbols/svg-500": "^0.17.4",
64
64
  "@release-it/bumper": "^6.0.1",
65
- "@tailwindcss/postcss": "^4.0.8",
65
+ "@tailwindcss/vite": "^4.0.13",
66
66
  "@tsconfig/node20": "^20.1.4",
67
67
  "@types/jsdom": "^21.1.7",
68
68
  "@types/lodash-es": "^4.17.12",
@@ -81,7 +81,6 @@
81
81
  "eslint-plugin-vue": "^9.25.0",
82
82
  "globals": "^15.11.0",
83
83
  "jsdom": "^25.0.1",
84
- "postcss": "^8.4.38",
85
84
  "prettier": "^3.3.3",
86
85
  "release-it": "^17.2.1",
87
86
  "tailwindcss": "^4.0.8",
package/plugin-vite.js CHANGED
@@ -67,7 +67,6 @@ export const Vueless = function (options = {}) {
67
67
  },
68
68
  optimizeDeps: {
69
69
  include: [
70
- ...(!isVuelessEnv ? ["vueless/preset-tailwind"] : []),
71
70
  ...(!isVuelessEnv
72
71
  ? ["vueless/directives/tooltip/vTooltip.ts"]
73
72
  : ["./src/directives/tooltip/vTooltip.ts"]),
package/tailwind.css CHANGED
@@ -42,11 +42,29 @@
42
42
  --color-primary-900: var(--vl-primary-900);
43
43
  --color-primary-950: var(--vl-primary-950);
44
44
 
45
+ /* Secondary colors */
46
+ --color-secondary-50: var(--vl-secondary-50);
47
+ --color-secondary-100: var(--vl-secondary-100);
48
+ --color-secondary-200: var(--vl-secondary-200);
49
+ --color-secondary-300: var(--vl-secondary-300);
50
+ --color-secondary-400: var(--vl-secondary-400);
51
+ --color-secondary-500: var(--vl-secondary-500);
52
+ --color-secondary-600: var(--vl-secondary-600);
53
+ --color-secondary-700: var(--vl-secondary-700);
54
+ --color-secondary-800: var(--vl-secondary-800);
55
+ --color-secondary-900: var(--vl-secondary-900);
56
+ --color-secondary-950: var(--vl-secondary-950);
57
+
45
58
  /* Primary colors */
46
59
  --color-primary: var(--vl-primary);
47
60
  --color-primary-lifted: var(--vl-primary-lifted);
48
61
  --color-primary-accented: var(--vl-primary-accented);
49
62
 
63
+ /* Secondary colors */
64
+ --color-secondary: var(--vl-secondary);
65
+ --color-secondary-lifted: var(--vl-secondary-lifted);
66
+ --color-secondary-accented: var(--vl-secondary-accented);
67
+
50
68
  /* Neutral colors */
51
69
  --color-neutral: var(--vl-neutral);
52
70
  --color-neutral-lifted: var(--vl-neutral-lifted);
@@ -78,13 +96,13 @@
78
96
  --color-grayscale-accented: var(--vl-grayscale-accented);
79
97
 
80
98
  /* Border radius rounding values */
81
- --radius-small: var(--vl-radius-sm);
82
- --radius-medium: var(--vl-radius-md);
83
- --radius-large: var(--vl-radius-lg);
99
+ --radius-small: var(--vl-rounding-sm);
100
+ --radius-medium: var(--vl-rounding-md);
101
+ --radius-large: var(--vl-rounding-lg);
84
102
 
85
103
  /* Text size */
86
- --text-xsmall: var(--vl-text-xs);
87
- --text-xsmall--line-height: calc(1 / var(--text-xs));
104
+ --text-tiny: var(--vl-text-xs);
105
+ --text-tiny--line-height: calc(1 / var(--text-xs));
88
106
  --text-small: var(--vl-text-sm);
89
107
  --text-small--line-height: var(--text-xs--line-height);
90
108
  --text-medium: var(--vl-text-md);
package/types.ts CHANGED
@@ -70,12 +70,17 @@ export enum ColorMode {
70
70
 
71
71
  export interface ThemeConfig {
72
72
  /**
73
- * Components primary (primary) color.
73
+ * Components primary color.
74
74
  */
75
75
  primary?: PrimaryColors;
76
76
 
77
77
  /**
78
- * Components neutral (secondary) color.
78
+ * Components secondary color.
79
+ */
80
+ secondary?: PrimaryColors;
81
+
82
+ /**
83
+ * Components neutral color.
79
84
  */
80
85
  neutral?: NeutralColors;
81
86
 
@@ -137,17 +142,9 @@ export interface ThemeConfig {
137
142
 
138
143
  export interface Config extends ThemeConfig {
139
144
  /**
140
- * Component classes merge behavior.
141
- * – merge (default) – smartly merge provided custom classes with default config classes.
142
- * – replace – replace default config keys by provided custom keys (override only provided keys, the rest classes will be taken from the default config).
143
- * – override – override default config by provided custom config (keeps only custom config, removes all default classes).
144
- */
145
- strategy?: Strategies;
146
-
147
- /**
148
- * Classes which will be applied to the root element of all vueless components.
145
+ * Removes default component styles (keeps only custom config, removes all default classes).
149
146
  */
150
- baseClasses?: string;
147
+ unstyled?: boolean;
151
148
 
152
149
  /**
153
150
  * Light theme design system CSS variables.
@@ -178,7 +175,7 @@ export interface Config extends ThemeConfig {
178
175
  /**
179
176
  * Tailwind-merge config extension for custom classes.
180
177
  * All lists of rules available here:
181
- * https://github.com/dcastil/tailwind-merge/blob/main/src/lib/default-config.ts.
178
+ * https://github.com/dcastil/tailwind-merge/blob/main/src/lib/default-config.ts
182
179
  */
183
180
  tailwindMerge?: UnknownObject;
184
181
  }
@@ -188,7 +185,6 @@ export type UnknownArray = unknown[];
188
185
  export type UnknownType = string | number | boolean | UnknownObject | undefined | null;
189
186
 
190
187
  export type ComponentNames = keyof Components & string; // keys union
191
- export type Strategies = "merge" | "replace" | "override";
192
188
 
193
189
  export type NeutralColors = "slate" | "gray" | "zinc" | "neutral" | "stone" | string;
194
190
  export type PrimaryColors =
@@ -362,26 +358,14 @@ export interface VuelessCssVariables {
362
358
  "--vl-outline-md": string;
363
359
  "--vl-outline-lg": string;
364
360
  /* Border radius size variables */
365
- "--vl-radius-sm": string;
366
- "--vl-radius-md": string;
367
- "--vl-radius-lg": string;
361
+ "--vl-rounding-sm": string;
362
+ "--vl-rounding-md": string;
363
+ "--vl-rounding-lg": string;
368
364
  /* Font size CSS variables */
369
365
  "--vl-text-xs": string;
370
366
  "--vl-text-sm": string;
371
367
  "--vl-text-md": string;
372
368
  "--vl-text-lg": string;
373
- /* Gray CSS variables */
374
- "--vl-neutral-50": string;
375
- "--vl-neutral-100": string;
376
- "--vl-neutral-200": string;
377
- "--vl-neutral-300": string;
378
- "--vl-neutral-400": string;
379
- "--vl-neutral-500": string;
380
- "--vl-neutral-600": string;
381
- "--vl-neutral-700": string;
382
- "--vl-neutral-800": string;
383
- "--vl-neutral-900": string;
384
- "--vl-neutral-950": string;
385
369
  /* Primary CSS variables */
386
370
  "--vl-primary-50": string;
387
371
  "--vl-primary-100": string;
@@ -394,10 +378,38 @@ export interface VuelessCssVariables {
394
378
  "--vl-primary-800": string;
395
379
  "--vl-primary-900": string;
396
380
  "--vl-primary-950": string;
381
+ /* Secondary CSS variables */
382
+ "--vl-secondary-50": string;
383
+ "--vl-secondary-100": string;
384
+ "--vl-secondary-200": string;
385
+ "--vl-secondary-300": string;
386
+ "--vl-secondary-400": string;
387
+ "--vl-secondary-500": string;
388
+ "--vl-secondary-600": string;
389
+ "--vl-secondary-700": string;
390
+ "--vl-secondary-800": string;
391
+ "--vl-secondary-900": string;
392
+ "--vl-secondary-950": string;
393
+ /* Gray CSS variables */
394
+ "--vl-neutral-50": string;
395
+ "--vl-neutral-100": string;
396
+ "--vl-neutral-200": string;
397
+ "--vl-neutral-300": string;
398
+ "--vl-neutral-400": string;
399
+ "--vl-neutral-500": string;
400
+ "--vl-neutral-600": string;
401
+ "--vl-neutral-700": string;
402
+ "--vl-neutral-800": string;
403
+ "--vl-neutral-900": string;
404
+ "--vl-neutral-950": string;
397
405
  /* Primary design system CSS variables */
398
406
  "--vl-primary": string;
399
407
  "--vl-primary-toned": string;
400
408
  "--vl-primary-accented": string;
409
+ /* Secondary design system CSS variables */
410
+ "--vl-secondary": string;
411
+ "--vl-secondary-toned": string;
412
+ "--vl-secondary-accented": string;
401
413
  /* Neutral design system CSS variables */
402
414
  "--vl-neutral": string;
403
415
  "--vl-neutral-toned": string;
@@ -12,7 +12,15 @@ export interface Props {
12
12
  /**
13
13
  * Button color.
14
14
  */
15
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
15
+ color?:
16
+ | "primary"
17
+ | "secondary"
18
+ | "success"
19
+ | "warning"
20
+ | "error"
21
+ | "info"
22
+ | "grayscale"
23
+ | "neutral";
16
24
 
17
25
  /**
18
26
  * Button size.
@@ -34,7 +34,15 @@ export interface Props {
34
34
  /**
35
35
  * Link color.
36
36
  */
37
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
37
+ color?:
38
+ | "primary"
39
+ | "secondary"
40
+ | "success"
41
+ | "warning"
42
+ | "error"
43
+ | "info"
44
+ | "grayscale"
45
+ | "neutral";
38
46
 
39
47
  /**
40
48
  * Link open type behavior.
@@ -15,7 +15,7 @@ export default /*tw*/ {
15
15
  base: "text-accented h-0 opacity-0 transition-all",
16
16
  variants: {
17
17
  size: {
18
- sm: "text-xsmall",
18
+ sm: "text-tiny",
19
19
  md: "text-small",
20
20
  lg: "text-medium",
21
21
  },
@@ -28,7 +28,15 @@ export interface Props {
28
28
  /**
29
29
  * Confirm button color.
30
30
  */
31
- confirmColor?: "primary" | "grayscale" | "success" | "warning" | "error" | "info" | "neutral";
31
+ confirmColor?:
32
+ | "primary"
33
+ | "secondary"
34
+ | "success"
35
+ | "warning"
36
+ | "error"
37
+ | "info"
38
+ | "grayscale"
39
+ | "neutral";
32
40
 
33
41
  /**
34
42
  * Set the disabled accept-button.
@@ -29,7 +29,15 @@ export interface Props {
29
29
  /**
30
30
  * Badge color.
31
31
  */
32
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
32
+ color?:
33
+ | "primary"
34
+ | "secondary"
35
+ | "success"
36
+ | "warning"
37
+ | "error"
38
+ | "info"
39
+ | "grayscale"
40
+ | "neutral";
33
41
 
34
42
  /**
35
43
  * Badge size.
@@ -29,7 +29,15 @@ export interface Props {
29
29
  /**
30
30
  * Button color.
31
31
  */
32
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
32
+ color?:
33
+ | "primary"
34
+ | "secondary"
35
+ | "success"
36
+ | "warning"
37
+ | "error"
38
+ | "info"
39
+ | "grayscale"
40
+ | "neutral";
33
41
 
34
42
  /**
35
43
  * Button size.
@@ -24,7 +24,15 @@ export interface Props {
24
24
  /**
25
25
  * Link color.
26
26
  */
27
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
27
+ color?:
28
+ | "primary"
29
+ | "secondary"
30
+ | "success"
31
+ | "warning"
32
+ | "error"
33
+ | "info"
34
+ | "grayscale"
35
+ | "neutral";
28
36
 
29
37
  /**
30
38
  * Link size.
@@ -32,7 +32,7 @@ export default /*tw*/ {
32
32
  base: "px-2 pb-2.5 font-medium !leading-none text-muted overflow-hidden text-ellipsis",
33
33
  variants: {
34
34
  size: {
35
- sm: "text-xsmall",
35
+ sm: "text-tiny",
36
36
  md: "text-small",
37
37
  lg: "text-medium",
38
38
  },
@@ -50,7 +50,15 @@ export interface Props {
50
50
  /**
51
51
  * Option highlight color.
52
52
  */
53
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
53
+ color?:
54
+ | "primary"
55
+ | "secondary"
56
+ | "success"
57
+ | "warning"
58
+ | "error"
59
+ | "info"
60
+ | "grayscale"
61
+ | "neutral";
54
62
 
55
63
  /**
56
64
  * Number of options to show without a scroll.
@@ -63,7 +63,15 @@ export interface Props {
63
63
  /**
64
64
  * Checkbox color.
65
65
  */
66
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
66
+ color?:
67
+ | "primary"
68
+ | "secondary"
69
+ | "success"
70
+ | "warning"
71
+ | "error"
72
+ | "info"
73
+ | "grayscale"
74
+ | "neutral";
67
75
 
68
76
  /**
69
77
  * Checkbox size.
@@ -39,7 +39,15 @@ export interface Props {
39
39
  /**
40
40
  * Checkbox group color.
41
41
  */
42
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
42
+ color?:
43
+ | "primary"
44
+ | "secondary"
45
+ | "success"
46
+ | "warning"
47
+ | "error"
48
+ | "info"
49
+ | "grayscale"
50
+ | "neutral";
43
51
 
44
52
  /**
45
53
  * Name for each checkbox.
@@ -29,7 +29,15 @@ export interface Props {
29
29
  /**
30
30
  * Checkbox color.
31
31
  */
32
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
32
+ color?:
33
+ | "primary"
34
+ | "secondary"
35
+ | "success"
36
+ | "warning"
37
+ | "error"
38
+ | "info"
39
+ | "grayscale"
40
+ | "neutral";
33
41
 
34
42
  /**
35
43
  * Label placement.
@@ -47,7 +47,7 @@ export default /*tw*/ {
47
47
  },
48
48
  compoundVariants: [
49
49
  { interactive: true, disabled: false, class: "hover:cursor-pointer" },
50
- { align: "topInside", size: "sm", class: "top-2 text-xsmall" },
50
+ { align: "topInside", size: "sm", class: "top-2 text-tiny" },
51
51
  { align: "topInside", size: "md", class: "top-2.5 text-small" },
52
52
  { align: "topInside", size: "lg", class: "top-2.5 text-medium" },
53
53
  { align: "topWithDesc", size: "sm", class: "-mt-px" },
@@ -63,7 +63,7 @@ export default /*tw*/ {
63
63
  base: "font-normal text-lifted text-left !leading-tight",
64
64
  variants: {
65
65
  size: {
66
- sm: "text-xsmall",
66
+ sm: "text-tiny",
67
67
  md: "text-small",
68
68
  lg: "text-medium",
69
69
  },
@@ -50,7 +50,15 @@ export interface Props {
50
50
  /**
51
51
  * Radio color.
52
52
  */
53
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
53
+ color?:
54
+ | "primary"
55
+ | "secondary"
56
+ | "success"
57
+ | "warning"
58
+ | "error"
59
+ | "info"
60
+ | "grayscale"
61
+ | "neutral";
54
62
 
55
63
  /**
56
64
  * Set radio disabled.
@@ -48,7 +48,15 @@ export interface Props {
48
48
  /**
49
49
  * Radio group color.
50
50
  */
51
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
51
+ color?:
52
+ | "primary"
53
+ | "secondary"
54
+ | "success"
55
+ | "warning"
56
+ | "error"
57
+ | "info"
58
+ | "grayscale"
59
+ | "neutral";
52
60
 
53
61
  /**
54
62
  * Unique radio group name (sets for each radio).
@@ -58,7 +58,7 @@ export default /*tw*/ {
58
58
  },
59
59
  },
60
60
  toggleLabel: {
61
- base: "absolute text-center text-xsmall font-medium uppercase text-inverted",
61
+ base: "absolute text-center text-tiny font-medium uppercase text-inverted",
62
62
  compoundVariants: [
63
63
  { toggleLabel: true, checked: true, class: "w-1/2 left-1" },
64
64
  { toggleLabel: true, checked: false, class: "w-1/2 right-1" },
@@ -33,7 +33,15 @@ export interface Props {
33
33
  /**
34
34
  * Switch color.
35
35
  */
36
- color?: "primary" | "success" | "warning" | "error" | "info" | "grayscale" | "neutral";
36
+ color?:
37
+ | "primary"
38
+ | "secondary"
39
+ | "success"
40
+ | "warning"
41
+ | "error"
42
+ | "info"
43
+ | "grayscale"
44
+ | "neutral";
37
45
 
38
46
  /**
39
47
  * Show toggle icons inside the circle.
@@ -9,7 +9,7 @@ export default /*tw*/ {
9
9
  true: "border border-{color}/15",
10
10
  },
11
11
  size: {
12
- "3xs": "size-4 text-2xs",
12
+ "3xs": "size-4 text-tiny",
13
13
  "2xs": "size-5 text-xs",
14
14
  xs: "size-6 text-sm",
15
15
  sm: "size-8 text-base",