@vellira-ui/tokens 2.29.0 → 2.31.0

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 (43) hide show
  1. package/dist/css/tokens.css +2427 -16
  2. package/dist/dark/components/formField.d.ts +52 -0
  3. package/dist/dark/components/formField.d.ts.map +1 -1
  4. package/dist/dark/components/formField.js +55 -0
  5. package/dist/dark/components/input.d.ts +109 -4
  6. package/dist/dark/components/input.d.ts.map +1 -1
  7. package/dist/dark/components/input.js +81 -4
  8. package/dist/dark/components/select.d.ts +1702 -3
  9. package/dist/dark/components/select.d.ts.map +1 -1
  10. package/dist/dark/components/select.js +163 -6
  11. package/dist/factories/createInputPalette.d.ts +78 -0
  12. package/dist/factories/createInputPalette.d.ts.map +1 -0
  13. package/dist/factories/createInputPalette.js +78 -0
  14. package/dist/factories/createSelectPalette.d.ts +347 -0
  15. package/dist/factories/createSelectPalette.d.ts.map +1 -0
  16. package/dist/factories/createSelectPalette.js +41 -0
  17. package/dist/factories/index.d.ts +1 -0
  18. package/dist/factories/index.d.ts.map +1 -1
  19. package/dist/factories/index.js +1 -0
  20. package/dist/generated/token-types.d.ts +4 -4
  21. package/dist/generated/token-types.d.ts.map +1 -1
  22. package/dist/generated/token-types.js +3220 -4
  23. package/dist/highContrast/components/formField.d.ts +52 -0
  24. package/dist/highContrast/components/formField.d.ts.map +1 -1
  25. package/dist/highContrast/components/formField.js +55 -0
  26. package/dist/highContrast/components/input.d.ts +109 -4
  27. package/dist/highContrast/components/input.d.ts.map +1 -1
  28. package/dist/highContrast/components/input.js +101 -4
  29. package/dist/highContrast/components/select.d.ts +1701 -2
  30. package/dist/highContrast/components/select.d.ts.map +1 -1
  31. package/dist/highContrast/components/select.js +187 -5
  32. package/dist/light/components/formField.d.ts +52 -0
  33. package/dist/light/components/formField.d.ts.map +1 -1
  34. package/dist/light/components/formField.js +55 -0
  35. package/dist/light/components/input.d.ts +110 -5
  36. package/dist/light/components/input.d.ts.map +1 -1
  37. package/dist/light/components/input.js +81 -4
  38. package/dist/light/components/select.d.ts +1702 -3
  39. package/dist/light/components/select.d.ts.map +1 -1
  40. package/dist/light/components/select.js +164 -6
  41. package/dist/light/semantic/icons.d.ts +1 -1
  42. package/dist/light/semantic/icons.js +1 -1
  43. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/light/components/select.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsET,CAAC"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/light/components/select.ts"],"names":[],"mappings":"AAyEA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqLT,CAAC"}
@@ -1,25 +1,142 @@
1
+ import { createInputColorPalette } from '../../factories/createInputPalette.js';
2
+ import { createSelectPalette } from '../../factories/createSelectPalette.js';
3
+ import { colors } from '../../primitives/colors.js';
1
4
  import { border } from '../semantic/border.js';
2
5
  import { control } from '../semantic/control.js';
3
6
  import { focus } from '../semantic/focus.js';
7
+ import { icons } from '../semantic/icons.js';
4
8
  import { menu } from '../semantic/menu.js';
5
- import { shadow } from '../semantic/shadow.js';
6
9
  import { status } from '../semantic/status.js';
10
+ import { surface } from '../semantic/surface.js';
7
11
  import { text } from '../semantic/text.js';
12
+ const selectPaletteDefaults = {
13
+ fg: text.primary,
14
+ placeholder: text.secondary,
15
+ filledFocusBg: surface.subtle,
16
+ hoverBg: surface.hover,
17
+ };
18
+ const primary = createInputColorPalette({
19
+ ...selectPaletteDefaults,
20
+ accent: colors.primary[500],
21
+ accentHover: colors.primary[700],
22
+ accentSoft: colors.primary[50],
23
+ filledBg: colors.primary[100],
24
+ filledHoverBg: colors.primary[200],
25
+ ring: colors.primary[400],
26
+ });
27
+ const neutral = createInputColorPalette({
28
+ ...selectPaletteDefaults,
29
+ accent: colors.vellira[400],
30
+ accentHover: colors.vellira[600],
31
+ accentSoft: colors.vellira[100],
32
+ filledBg: colors.vellira[150],
33
+ filledHoverBg: colors.vellira[200],
34
+ hoverBg: colors.vellira[100],
35
+ ring: colors.vellira[400],
36
+ });
37
+ const success = createInputColorPalette({
38
+ ...selectPaletteDefaults,
39
+ accent: colors.success[600],
40
+ accentHover: colors.success[700],
41
+ accentSoft: colors.success[50],
42
+ filledBg: colors.success[100],
43
+ filledHoverBg: colors.success[200],
44
+ hoverBg: colors.success[50],
45
+ ring: colors.success[500],
46
+ });
47
+ const warning = createInputColorPalette({
48
+ ...selectPaletteDefaults,
49
+ accent: colors.warning[600],
50
+ accentHover: colors.warning[700],
51
+ accentSoft: colors.warning[50],
52
+ filledBg: colors.warning[100],
53
+ filledHoverBg: colors.warning[200],
54
+ hoverBg: colors.warning[50],
55
+ ring: colors.warning[500],
56
+ });
57
+ const danger = createInputColorPalette({
58
+ ...selectPaletteDefaults,
59
+ accent: colors.error[600],
60
+ accentHover: colors.error[700],
61
+ accentSoft: colors.error[50],
62
+ filledBg: colors.error[100],
63
+ filledHoverBg: colors.error[200],
64
+ hoverBg: colors.error[50],
65
+ ring: colors.error[500],
66
+ });
8
67
  export const select = {
68
+ primary: createSelectPalette(primary, {
69
+ dropdownBorder: 'transparent',
70
+ optionActiveBorder: 'transparent',
71
+ optionActiveRing: 'transparent',
72
+ optionHoverBg: colors.primary[50],
73
+ optionHoverBorder: 'transparent',
74
+ optionPressedBg: colors.primary[200],
75
+ optionPressedBorder: 'transparent',
76
+ optionSelectedBg: colors.primary[100],
77
+ }),
78
+ neutral: createSelectPalette(neutral, {
79
+ dropdownBorder: 'transparent',
80
+ optionActiveBorder: 'transparent',
81
+ optionActiveRing: 'transparent',
82
+ optionHoverBorder: 'transparent',
83
+ optionPressedBg: colors.vellira[200],
84
+ optionPressedBorder: 'transparent',
85
+ optionSelectedBg: colors.vellira[150],
86
+ }),
87
+ success: createSelectPalette(success, {
88
+ dropdownBorder: 'transparent',
89
+ optionActiveBorder: 'transparent',
90
+ optionActiveRing: 'transparent',
91
+ optionHoverBorder: 'transparent',
92
+ optionPressedBg: colors.success[200],
93
+ optionPressedBorder: 'transparent',
94
+ optionSelectedBg: colors.success[100],
95
+ }),
96
+ warning: createSelectPalette(warning, {
97
+ dropdownBorder: 'transparent',
98
+ optionActiveBorder: 'transparent',
99
+ optionActiveRing: 'transparent',
100
+ optionHoverBorder: 'transparent',
101
+ optionPressedBg: colors.warning[200],
102
+ optionPressedBorder: 'transparent',
103
+ optionSelectedBg: colors.warning[100],
104
+ }),
105
+ danger: createSelectPalette(danger, {
106
+ dropdownBorder: 'transparent',
107
+ optionActiveBorder: 'transparent',
108
+ optionActiveRing: 'transparent',
109
+ optionHoverBorder: 'transparent',
110
+ optionPressedBg: colors.error[200],
111
+ optionPressedBorder: 'transparent',
112
+ optionSelectedBg: colors.error[100],
113
+ }),
9
114
  trigger: {
10
115
  default: {
11
116
  bg: 'transparent',
12
117
  fg: text.primary,
13
118
  border: border.default,
119
+ icon: icons.brand,
120
+ placeholder: text.secondary,
121
+ },
122
+ hover: {
123
+ ...control.hover,
124
+ icon: icons.hover,
125
+ placeholder: text.secondary,
14
126
  },
15
- hover: control.hover,
16
127
  focus: {
17
128
  bg: 'transparent',
18
129
  fg: text.primary,
19
130
  border: border.focus,
20
131
  ring: focus.ring.color,
132
+ icon: icons.brand,
133
+ placeholder: text.secondary,
134
+ },
135
+ disabled: {
136
+ ...control.disabled,
137
+ icon: icons.disabled,
138
+ placeholder: text.disabled,
21
139
  },
22
- disabled: control.disabled,
23
140
  placeholder: {
24
141
  fg: text.secondary,
25
142
  },
@@ -31,8 +148,24 @@ export const select = {
31
148
  dropdown: {
32
149
  bg: menu.background,
33
150
  fg: menu.item.default.fg,
34
- border: menu.border,
35
- shadow: shadow.lg,
151
+ border: 'transparent',
152
+ shadow: 'none',
153
+ search: {
154
+ bg: surface.default,
155
+ fg: text.primary,
156
+ border: border.muted,
157
+ placeholder: text.secondary,
158
+ ring: focus.ring.color,
159
+ },
160
+ empty: {
161
+ fg: text.secondary,
162
+ },
163
+ groupLabel: {
164
+ fg: colors.primary[500],
165
+ },
166
+ separator: {
167
+ bg: border.muted,
168
+ },
36
169
  },
37
170
  option: {
38
171
  default: {
@@ -56,11 +189,36 @@ export const select = {
56
189
  bg: control.selected.muted.bg,
57
190
  fg: control.selected.muted.fg,
58
191
  border: control.selected.muted.border,
59
- shadow: shadow.inset,
192
+ shadow: 'none',
60
193
  },
61
194
  disabled: {
62
195
  ...menu.item.disabled,
63
196
  border: 'transparent',
64
197
  },
198
+ description: {
199
+ fg: text.secondary,
200
+ },
201
+ icon: {
202
+ fg: icons.default,
203
+ },
204
+ badge: {
205
+ bg: surface.subtle,
206
+ fg: text.secondary,
207
+ border: border.muted,
208
+ },
209
+ shortcut: {
210
+ bg: surface.subtle,
211
+ fg: text.secondary,
212
+ border: border.muted,
213
+ },
214
+ success: {
215
+ fg: status.success.fg,
216
+ },
217
+ warning: {
218
+ fg: status.warning.fg,
219
+ },
220
+ danger: {
221
+ fg: status.error.fg,
222
+ },
65
223
  },
66
224
  };
@@ -7,7 +7,7 @@ export declare const icons: {
7
7
  readonly primary: "#5037C8";
8
8
  readonly brand: "#5037C8";
9
9
  readonly hover: "#402C9F";
10
- readonly success: "#0F766E";
10
+ readonly success: "#14B8A6";
11
11
  readonly danger: "#BE123C";
12
12
  readonly inverse: "#FFFFFF";
13
13
  };
@@ -8,7 +8,7 @@ export const icons = {
8
8
  primary: colors.primary[700],
9
9
  brand: colors.primary[700],
10
10
  hover: colors.primary[800],
11
- success: colors.success[700],
11
+ success: colors.success[500],
12
12
  danger: colors.error[700],
13
13
  inverse: colors.mono[50],
14
14
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vellira-ui/tokens",
3
- "version": "2.29.0",
3
+ "version": "2.31.0",
4
4
  "description": "Design tokens for Vellira Design System",
5
5
  "author": "Roman Bakurov",
6
6
  "license": "MIT",
@@ -30,10 +30,11 @@
30
30
  ],
31
31
  "scripts": {
32
32
  "clean": "node --input-type=module -e \"import fs from 'node:fs'; fs.rmSync('dist', { recursive: true, force: true })\"",
33
+ "clean:build": "node --input-type=module -e \"import fs from 'node:fs'; if (fs.existsSync('dist')) for (const entry of fs.readdirSync('dist')) { if (entry !== 'css') fs.rmSync('dist/' + entry, { recursive: true, force: true }); }\"",
33
34
  "generate:types": "tsx scripts/generate-token-types.ts",
34
35
  "generate:types:check": "tsx scripts/generate-token-types.ts --check",
35
36
  "build:tokens": "pnpm run generate:types && tsx scripts/generate-css.ts",
36
- "build": "pnpm run clean && pnpm run build:tokens && tsc -p tsconfig.build.json",
37
+ "build": "pnpm run clean:build && pnpm run build:tokens && tsc -p tsconfig.build.json",
37
38
  "typecheck": "pnpm run generate:types:check && tsc -p tsconfig.json --noEmit",
38
39
  "test": "pnpm run generate:types:check && vitest run"
39
40
  },