ropav 0.0.2 → 0.0.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 (74) hide show
  1. package/README.md +32 -3
  2. package/dist/base.css +153 -77
  3. package/dist/button.css +276 -32
  4. package/dist/button.js +40 -19
  5. package/dist/button.js.map +1 -1
  6. package/dist/checkbox.css +127 -19
  7. package/dist/checkbox.js +57 -44
  8. package/dist/checkbox.js.map +1 -1
  9. package/dist/components/button/button.d.ts +2 -2
  10. package/dist/components/button/index.d.ts +1 -1
  11. package/dist/components/button/types.d.ts +8 -1
  12. package/dist/components/checkbox/index.d.ts +1 -1
  13. package/dist/components/checkbox/types.d.ts +8 -0
  14. package/dist/components/input/index.d.ts +1 -1
  15. package/dist/components/input/input.d.ts +5 -1
  16. package/dist/components/input/types.d.ts +5 -0
  17. package/dist/components/radio/index.d.ts +1 -1
  18. package/dist/components/radio/types.d.ts +12 -0
  19. package/dist/components/select/types.d.ts +3 -0
  20. package/dist/components/select/useSelect.d.ts +2 -0
  21. package/dist/components/switch/index.d.ts +1 -1
  22. package/dist/components/switch/types.d.ts +4 -0
  23. package/dist/components/textarea/index.d.ts +1 -1
  24. package/dist/components/textarea/types.d.ts +5 -0
  25. package/dist/components/textarea/useTextarea.d.ts +1 -0
  26. package/dist/index.d.ts +0 -2
  27. package/dist/index.js +2 -4
  28. package/dist/input.css +91 -15
  29. package/dist/input.js +66 -23
  30. package/dist/input.js.map +1 -1
  31. package/dist/radio.css +84 -16
  32. package/dist/radio.js +35 -8
  33. package/dist/radio.js.map +1 -1
  34. package/dist/select.css +97 -32
  35. package/dist/select.js +128 -88
  36. package/dist/select.js.map +1 -1
  37. package/dist/switch.css +75 -20
  38. package/dist/switch.js +8 -4
  39. package/dist/switch.js.map +1 -1
  40. package/dist/textarea.css +84 -14
  41. package/dist/textarea.js +33 -5
  42. package/dist/textarea.js.map +1 -1
  43. package/dist/useControlState.js +4 -0
  44. package/dist/useControlState.js.map +1 -1
  45. package/package.json +11 -10
  46. package/src/styles/_mixins.scss +21 -11
  47. package/src/styles/_tokens.scss +168 -96
  48. package/src/styles/_variables.scss +30 -28
  49. package/dist/components/_internal/icons/CheckIcon.d.ts +0 -18
  50. package/dist/components/_internal/icons/ChevronDownIcon.d.ts +0 -18
  51. package/dist/components/_internal/icons/MinusIcon.d.ts +0 -18
  52. package/dist/components/_internal/icons/index.d.ts +0 -3
  53. package/dist/components/_internal/optionList.d.ts +0 -9
  54. package/dist/components/tabs/index.d.ts +0 -5
  55. package/dist/components/tabs/index.js +0 -2
  56. package/dist/components/tabs/tab-panel.d.ts +0 -21
  57. package/dist/components/tabs/tabs-list.d.ts +0 -20
  58. package/dist/components/tabs/tabs-trigger.d.ts +0 -21
  59. package/dist/components/tabs/tabs.d.ts +0 -23
  60. package/dist/components/tabs/types.d.ts +0 -18
  61. package/dist/components/tabs/useTabs.d.ts +0 -19
  62. package/dist/components/tooltip/index.d.ts +0 -2
  63. package/dist/components/tooltip/index.js +0 -2
  64. package/dist/components/tooltip/tooltip.d.ts +0 -23
  65. package/dist/components/tooltip/types.d.ts +0 -5
  66. package/dist/components/tooltip/useTooltip.d.ts +0 -8
  67. package/dist/tabs.css +0 -45
  68. package/dist/tabs.js +0 -205
  69. package/dist/tabs.js.map +0 -1
  70. package/dist/tooltip.css +0 -78
  71. package/dist/tooltip.js +0 -112
  72. package/dist/tooltip.js.map +0 -1
  73. package/dist/useRequiredInject.js +0 -11
  74. package/dist/useRequiredInject.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ropav",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "type": "module",
5
5
  "packageManager": "pnpm@11.9.0",
6
6
  "engines": {
@@ -45,18 +45,10 @@
45
45
  "types": "./dist/components/switch/index.d.ts",
46
46
  "import": "./dist/components/switch/index.js"
47
47
  },
48
- "./tabs": {
49
- "types": "./dist/components/tabs/index.d.ts",
50
- "import": "./dist/components/tabs/index.js"
51
- },
52
48
  "./textarea": {
53
49
  "types": "./dist/components/textarea/index.d.ts",
54
50
  "import": "./dist/components/textarea/index.js"
55
51
  },
56
- "./tooltip": {
57
- "types": "./dist/components/tooltip/index.d.ts",
58
- "import": "./dist/components/tooltip/index.js"
59
- },
60
52
  "./base.css": "./dist/base.css",
61
53
  "./scss/*": "./src/styles/*"
62
54
  },
@@ -64,8 +56,12 @@
64
56
  "dev": "pnpm run storybook",
65
57
  "tokens:build": "style-dictionary build --config scripts/tokens.config.mjs --silent",
66
58
  "tokens:check": "node scripts/check-tokens.mjs",
67
- "typecheck": "vue-tsc -b tsconfig.app.json tsconfig.node.json",
59
+ "typecheck": "vue-tsc -b tsconfig.app.json tsconfig.node.json tsconfig.test.json",
68
60
  "typecheck:storybook": "vue-tsc -p tsconfig.storybook.json --noEmit",
61
+ "lint": "oxlint",
62
+ "lint:fix": "oxlint --fix",
63
+ "format": "oxfmt",
64
+ "format:check": "oxfmt --check",
69
65
  "test": "vitest run --project=unit",
70
66
  "test:exports": "node scripts/check-exports.mjs",
71
67
  "test:watch": "vitest --project=unit",
@@ -83,20 +79,25 @@
83
79
  "vue": "^3.6.0-beta.4"
84
80
  },
85
81
  "devDependencies": {
82
+ "@iconify-json/lucide": "^1.2.116",
86
83
  "@storybook/addon-themes": "^10.4.6",
87
84
  "@storybook/addon-vitest": "^10.4.6",
88
85
  "@storybook/vue3-vite": "^10.4.6",
89
86
  "@types/node": "^25.9.4",
90
87
  "@vitejs/plugin-vue": "^6.0.7",
91
88
  "@vitest/browser-playwright": "^4.1.9",
89
+ "@vue/compiler-vapor": "3.6.0-beta.17",
92
90
  "@vue/tsconfig": "^0.9.1",
93
91
  "bumpp": "^11.1.0",
94
92
  "jsdom": "^29.1.1",
93
+ "oxfmt": "^0.57.0",
94
+ "oxlint": "^1.72.0",
95
95
  "playwright": "^1.61.1",
96
96
  "sass-embedded": "^1.100.0",
97
97
  "storybook": "^10.4.6",
98
98
  "style-dictionary": "5.5.0",
99
99
  "typescript": "~6.0.3",
100
+ "unplugin-icons": "^23.0.1",
100
101
  "vite": "^8.1.3",
101
102
  "vite-plugin-dts": "^5.0.3",
102
103
  "vitest": "^4.1.9",
@@ -1,3 +1,5 @@
1
+ @use 'variables' as *;
2
+
1
3
  @mixin flex-center {
2
4
  display: inline-flex;
3
5
  align-items: center;
@@ -5,7 +7,7 @@
5
7
  }
6
8
 
7
9
  @mixin focus-ring {
8
- border-color: var(--rp-color-control-border-focus);
10
+ border-color: var(--rp-color-primary);
9
11
  box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
10
12
  }
11
13
 
@@ -75,7 +77,11 @@
75
77
  }
76
78
  }
77
79
 
78
- @mixin menu-surface($z-index: var(--rp-z-index-dropdown), $surface: var(--rp-color-surface-raised), $radius: var(--rp-radius-lg)) {
80
+ @mixin menu-surface(
81
+ $z-index: $z-index-dropdown,
82
+ $surface: var(--rp-color-surface-raised),
83
+ $radius: var(--rp-radius-lg)
84
+ ) {
79
85
  z-index: $z-index;
80
86
  background-color: $surface;
81
87
  border: var(--rp-border-width-thin) solid var(--rp-color-border);
@@ -98,13 +104,15 @@
98
104
  }
99
105
 
100
106
  @mixin semantic-colors($var-name) {
101
- @each $name in primary, secondary, success, warning, danger, info {
102
- &--#{$name} { #{$var-name}: var(--rp-color-#{$name}-fg); }
107
+ @each $name in primary, secondary, success, warning, danger, info, neutral {
108
+ &--#{$name} {
109
+ #{$var-name}: var(--rp-color-#{$name}-fg);
110
+ }
103
111
  }
104
112
  }
105
113
 
106
114
  @mixin semantic-color-pair($color-var, $foreground-var) {
107
- @each $name in primary, secondary, success, warning, danger, info {
115
+ @each $name in primary, secondary, success, warning, danger, info, neutral {
108
116
  &--#{$name} {
109
117
  #{$color-var}: var(--rp-color-#{$name});
110
118
  #{$foreground-var}: var(--rp-color-on-#{$name});
@@ -113,14 +121,16 @@
113
121
  }
114
122
 
115
123
  @mixin semantic-state-colors($prefix) {
116
- @each $name in primary, secondary, success, warning, danger, info {
124
+ @each $name in primary, secondary, success, warning, danger, info, neutral {
117
125
  &--#{$name} {
118
126
  #{$prefix}-bg: var(--rp-color-#{$name});
119
- #{$prefix}-bg-hover: color-mix(in srgb, var(--rp-color-#{$name}) 90%, var(--rp-color-black));
120
- #{$prefix}-bg-active: color-mix(in srgb, var(--rp-color-#{$name}) 80%, var(--rp-color-black));
121
- #{$prefix}-subtle-bg: color-mix(in srgb, var(--rp-color-#{$name}) 10%, transparent);
122
- #{$prefix}-subtle-bg-hover: color-mix(in srgb, var(--rp-color-#{$name}) 14%, transparent);
123
- #{$prefix}-subtle-bg-active: color-mix(in srgb, var(--rp-color-#{$name}) 18%, transparent);
127
+ #{$prefix}-bg-hover: var(--rp-color-#{$name}-hover);
128
+ #{$prefix}-bg-active: var(--rp-color-#{$name}-active);
129
+ #{$prefix}-subtle-bg: var(--rp-color-#{$name}-subtle-bg);
130
+ #{$prefix}-subtle-bg-hover: var(--rp-color-#{$name}-subtle-bg-hover);
131
+ #{$prefix}-subtle-bg-active: var(--rp-color-#{$name}-subtle-bg-active);
132
+ #{$prefix}-border: var(--rp-color-#{$name}-border);
133
+ #{$prefix}-border-hover: var(--rp-color-#{$name}-border-hover);
124
134
  #{$prefix}-fg: var(--rp-color-#{$name}-fg);
125
135
  #{$prefix}-on-bg: var(--rp-color-on-#{$name});
126
136
  }
@@ -8,62 +8,105 @@
8
8
  --rp-font-family: #{$font-family-base};
9
9
 
10
10
  // Colors
11
- --rp-color-primary : #{$color-primary};
12
- --rp-color-secondary : #{$color-secondary};
13
- --rp-color-success : #{$color-success};
14
- --rp-color-warning : #{$color-warning};
15
- --rp-color-danger : #{$color-danger};
16
- --rp-color-info : #{$color-info};
17
- --rp-color-white : #{$color-white};
18
- --rp-color-black : #{$color-black};
19
- --rp-color-gray-50 : #{$color-gray-50};
20
- --rp-color-gray-100 : #{$color-gray-100};
21
- --rp-color-gray-200 : #{$color-gray-200};
22
- --rp-color-gray-300 : #{$color-gray-300};
23
- --rp-color-gray-400 : #{$color-gray-400};
24
- --rp-color-gray-500 : #{$color-gray-500};
25
- --rp-color-gray-600 : #{$color-gray-600};
26
- --rp-color-gray-700 : #{$color-gray-700};
27
- --rp-color-gray-800 : #{$color-gray-800};
28
- --rp-color-gray-900 : #{$color-gray-900};
29
- --rp-color-text : #{$color-text};
30
- --rp-color-text-secondary : #{$color-text-secondary};
31
- --rp-color-text-disabled : #{$color-text-disabled};
32
- --rp-color-text-inverted : var(--rp-color-white);
33
- --rp-color-background : #{$color-background};
34
- --rp-color-surface : var(--rp-color-white);
35
- --rp-color-surface-raised : var(--rp-color-white);
36
- --rp-color-surface-muted : var(--rp-color-gray-50);
37
- --rp-color-surface-hover : var(--rp-color-gray-100);
38
- --rp-color-surface-inverted : var(--rp-color-gray-900);
39
- --rp-color-overlay : rgba(3, 7, 18, 0.55);
40
- --rp-color-border : #{$color-border};
41
- --rp-color-border-hover : #{$color-border-hover};
42
- --rp-color-focus-ring : color-mix(in srgb, var(--rp-color-primary) 32%, transparent);
43
- --rp-color-control-bg : var(--rp-color-surface);
44
- --rp-color-control-readonly-bg : var(--rp-color-surface-muted);
45
- --rp-color-control-fg : var(--rp-color-text);
46
- --rp-color-control-placeholder : var(--rp-color-text-secondary);
47
- --rp-color-control-icon : var(--rp-color-text-secondary);
48
- --rp-color-control-border : var(--rp-color-border);
49
- --rp-color-control-border-hover: var(--rp-color-border-hover);
50
- --rp-color-control-border-focus: var(--rp-color-primary);
51
- --rp-color-control-track-bg : var(--rp-color-gray-300);
52
- --rp-color-control-thumb-bg : var(--rp-color-white);
53
- --rp-color-control-selected-bg : var(--rp-color-primary);
54
- --rp-color-control-selected-fg : var(--rp-color-on-primary);
55
- --rp-color-on-primary : #{$color-on-primary};
56
- --rp-color-on-secondary : #{$color-on-secondary};
57
- --rp-color-on-success : #{$color-on-success};
58
- --rp-color-on-warning : #{$color-on-warning};
59
- --rp-color-on-danger : #{$color-on-danger};
60
- --rp-color-on-info : #{$color-on-info};
61
- --rp-color-primary-fg : var(--rp-color-primary);
62
- --rp-color-secondary-fg : var(--rp-color-secondary);
63
- --rp-color-success-fg : var(--rp-color-success);
64
- --rp-color-warning-fg : var(--rp-color-warning);
65
- --rp-color-danger-fg : var(--rp-color-danger);
66
- --rp-color-info-fg : var(--rp-color-info);
11
+ --rp-color-primary : #{$color-primary};
12
+ --rp-color-secondary : #{$color-secondary};
13
+ --rp-color-success : #{$color-success};
14
+ --rp-color-warning : #{$color-warning};
15
+ --rp-color-danger : #{$color-danger};
16
+ --rp-color-info : #{$color-info};
17
+ --rp-color-neutral : #{$color-neutral};
18
+ --rp-color-text : #{$color-text};
19
+ --rp-color-text-secondary : #{$color-text-secondary};
20
+ --rp-color-text-disabled : #{$color-text-disabled};
21
+ --rp-color-text-inverted : #{$color-white};
22
+ --rp-color-background : #{$color-background};
23
+ --rp-color-surface : #{$color-white};
24
+ --rp-color-surface-raised : #{$color-white};
25
+ --rp-color-surface-muted : #{$color-gray-2};
26
+ --rp-color-surface-hover : #{$color-gray-3};
27
+ --rp-color-button-default-bg : #{$color-gray-2};
28
+ --rp-color-button-default-bg-hover : #{$color-gray-3};
29
+ --rp-color-button-default-bg-active : #{$color-gray-4};
30
+ --rp-color-surface-inverted : #{$color-gray-12};
31
+ --rp-color-overlay : rgba(17, 17, 17, 0.55);
32
+ --rp-color-border : #{$color-border};
33
+ --rp-color-border-hover : #{$color-border-hover};
34
+ --rp-color-focus-ring : color-mix(in srgb, var(--rp-color-primary) 32%, transparent);
35
+ --rp-color-control-bg : #{$color-gray-2};
36
+ --rp-color-control-readonly-bg : var(--rp-color-surface-muted);
37
+ --rp-color-control-fg : var(--rp-color-text);
38
+ --rp-color-control-placeholder : var(--rp-color-text-secondary);
39
+ --rp-color-control-icon : var(--rp-color-text-secondary);
40
+ --rp-color-control-border : var(--rp-color-border);
41
+ --rp-color-control-border-hover : var(--rp-color-border-hover);
42
+ --rp-color-control-border-focus : var(--rp-color-primary);
43
+ --rp-color-control-track-bg : var(--rp-color-border);
44
+ --rp-color-control-thumb-bg : #{$color-white};
45
+ --rp-color-control-selected-bg : var(--rp-color-primary);
46
+ --rp-color-control-selected-fg : var(--rp-color-on-primary);
47
+ --rp-color-on-primary : #{$color-on-primary};
48
+ --rp-color-on-secondary : #{$color-on-secondary};
49
+ --rp-color-on-success : #{$color-on-success};
50
+ --rp-color-on-warning : #{$color-on-warning};
51
+ --rp-color-on-danger : #{$color-on-danger};
52
+ --rp-color-on-info : #{$color-on-info};
53
+ --rp-color-on-neutral : #{$color-on-neutral};
54
+ --rp-color-primary-hover : color-mix(in srgb, var(--rp-color-primary) 90%, #{$color-black});
55
+ --rp-color-primary-active : color-mix(in srgb, var(--rp-color-primary) 80%, #{$color-black});
56
+ --rp-color-primary-subtle-bg : #e6f4fe;
57
+ --rp-color-primary-subtle-bg-hover : #d5efff;
58
+ --rp-color-primary-subtle-bg-active : #c2e5ff;
59
+ --rp-color-primary-border : #8ec8f6;
60
+ --rp-color-primary-border-hover : #5eb1ef;
61
+ --rp-color-primary-fg : #113264;
62
+ --rp-color-secondary-hover : color-mix(in srgb, var(--rp-color-secondary) 90%, #{$color-black});
63
+ --rp-color-secondary-active : color-mix(in srgb, var(--rp-color-secondary) 80%, #{$color-black});
64
+ --rp-color-secondary-subtle-bg : #f4f0fe;
65
+ --rp-color-secondary-subtle-bg-hover : #ebe4ff;
66
+ --rp-color-secondary-subtle-bg-active: #e1d9ff;
67
+ --rp-color-secondary-border : #c2b5f5;
68
+ --rp-color-secondary-border-hover : #aa99ec;
69
+ --rp-color-secondary-fg : #2f265f;
70
+ --rp-color-success-hover : color-mix(in srgb, var(--rp-color-success) 90%, #{$color-black});
71
+ --rp-color-success-active : color-mix(in srgb, var(--rp-color-success) 80%, #{$color-black});
72
+ --rp-color-success-subtle-bg : #e6f6eb;
73
+ --rp-color-success-subtle-bg-hover : #d6f1df;
74
+ --rp-color-success-subtle-bg-active : #c4e8d1;
75
+ --rp-color-success-border : #8eceaa;
76
+ --rp-color-success-border-hover : #5bb98b;
77
+ --rp-color-success-fg : #193b2d;
78
+ --rp-color-warning-hover : color-mix(in srgb, var(--rp-color-warning) 90%, #{$color-black});
79
+ --rp-color-warning-active : color-mix(in srgb, var(--rp-color-warning) 80%, #{$color-black});
80
+ --rp-color-warning-subtle-bg : #ffefd6;
81
+ --rp-color-warning-subtle-bg-hover : #ffdfb5;
82
+ --rp-color-warning-subtle-bg-active : #ffd19a;
83
+ --rp-color-warning-border : #f5ae73;
84
+ --rp-color-warning-border-hover : #ec9455;
85
+ --rp-color-warning-fg : #582d1d;
86
+ --rp-color-danger-hover : color-mix(in srgb, var(--rp-color-danger) 90%, #{$color-black});
87
+ --rp-color-danger-active : color-mix(in srgb, var(--rp-color-danger) 80%, #{$color-black});
88
+ --rp-color-danger-subtle-bg : #feebec;
89
+ --rp-color-danger-subtle-bg-hover : #ffdbdc;
90
+ --rp-color-danger-subtle-bg-active : #ffcdce;
91
+ --rp-color-danger-border : #f4a9aa;
92
+ --rp-color-danger-border-hover : #eb8e90;
93
+ --rp-color-danger-fg : #641723;
94
+ --rp-color-info-hover : color-mix(in srgb, var(--rp-color-info) 90%, #{$color-black});
95
+ --rp-color-info-active : color-mix(in srgb, var(--rp-color-info) 80%, #{$color-black});
96
+ --rp-color-info-subtle-bg : #def7f9;
97
+ --rp-color-info-subtle-bg-hover : #caf1f6;
98
+ --rp-color-info-subtle-bg-active : #b5e9f0;
99
+ --rp-color-info-border : #7dcedc;
100
+ --rp-color-info-border-hover : #3db9cf;
101
+ --rp-color-info-fg : #0d3c48;
102
+ --rp-color-neutral-hover : color-mix(in srgb, var(--rp-color-neutral) 90%, #{$color-black});
103
+ --rp-color-neutral-active : color-mix(in srgb, var(--rp-color-neutral) 80%, #{$color-black});
104
+ --rp-color-neutral-subtle-bg : #f0f0f0;
105
+ --rp-color-neutral-subtle-bg-hover : #e8e8e8;
106
+ --rp-color-neutral-subtle-bg-active : #e0e0e0;
107
+ --rp-color-neutral-border : #cecece;
108
+ --rp-color-neutral-border-hover : #bbbbbb;
109
+ --rp-color-neutral-fg : #202020;
67
110
 
68
111
  // Font sizes
69
112
  --rp-font-size-xs : #{$font-size-xs};
@@ -102,11 +145,9 @@
102
145
  // Border radius
103
146
  --rp-radius-none: #{$radius-none};
104
147
  --rp-radius-sm : #{$radius-sm};
105
- --rp-radius-base: #{$radius-base};
106
148
  --rp-radius-md : #{$radius-md};
107
149
  --rp-radius-lg : #{$radius-lg};
108
150
  --rp-radius-xl : #{$radius-xl};
109
- --rp-radius-2xl : #{$radius-2xl};
110
151
  --rp-radius-full: #{$radius-full};
111
152
 
112
153
  // Border widths
@@ -118,14 +159,6 @@
118
159
  --rp-size-control-md: #{$size-control-md};
119
160
  --rp-size-control-lg: #{$size-control-lg};
120
161
 
121
- // Component tokens
122
- --rp-component-menu-min-width : #{$component-menu-min-width};
123
- --rp-component-menu-max-height: #{$component-menu-max-height};
124
-
125
- // Z-index
126
- --rp-z-index-dropdown: #{$z-index-dropdown};
127
- --rp-z-index-tooltip : #{$z-index-tooltip};
128
-
129
162
  // Opacity
130
163
  --rp-opacity-disabled: #{$opacity-disabled};
131
164
 
@@ -144,36 +177,75 @@
144
177
 
145
178
  html.dark {
146
179
  // Colors
147
- --rp-color-text : var(--rp-color-gray-50);
148
- --rp-color-text-secondary : var(--rp-color-gray-400);
149
- --rp-color-text-disabled : var(--rp-color-gray-600);
150
- --rp-color-text-inverted : var(--rp-color-gray-900);
151
- --rp-color-background : var(--rp-color-gray-900);
152
- --rp-color-surface : var(--rp-color-gray-900);
153
- --rp-color-surface-raised : var(--rp-color-gray-800);
154
- --rp-color-surface-muted : var(--rp-color-gray-800);
155
- --rp-color-surface-hover : var(--rp-color-gray-700);
156
- --rp-color-surface-inverted : var(--rp-color-gray-100);
157
- --rp-color-overlay : rgba(3, 7, 18, 0.75);
158
- --rp-color-border : var(--rp-color-gray-700);
159
- --rp-color-border-hover : var(--rp-color-gray-600);
160
- --rp-color-focus-ring : color-mix(in srgb, var(--rp-color-primary) 45%, transparent);
161
- --rp-color-control-bg : var(--rp-color-gray-900);
162
- --rp-color-control-readonly-bg : var(--rp-color-gray-800);
163
- --rp-color-control-fg : var(--rp-color-gray-50);
164
- --rp-color-control-placeholder : var(--rp-color-gray-500);
165
- --rp-color-control-icon : var(--rp-color-gray-400);
166
- --rp-color-control-border : var(--rp-color-gray-700);
167
- --rp-color-control-border-hover: var(--rp-color-gray-600);
168
- --rp-color-control-border-focus: var(--rp-color-primary);
169
- --rp-color-control-track-bg : var(--rp-color-gray-700);
170
- --rp-color-control-thumb-bg : var(--rp-color-gray-50);
171
- --rp-color-primary-fg : color-mix(in srgb, var(--rp-color-primary) 65%, var(--rp-color-white));
172
- --rp-color-secondary-fg : color-mix(in srgb, var(--rp-color-secondary) 65%, var(--rp-color-white));
173
- --rp-color-success-fg : color-mix(in srgb, var(--rp-color-success) 65%, var(--rp-color-white));
174
- --rp-color-warning-fg : color-mix(in srgb, var(--rp-color-warning) 65%, var(--rp-color-white));
175
- --rp-color-danger-fg : color-mix(in srgb, var(--rp-color-danger) 65%, var(--rp-color-white));
176
- --rp-color-info-fg : color-mix(in srgb, var(--rp-color-info) 65%, var(--rp-color-white));
180
+ --rp-color-text : #eeeeee;
181
+ --rp-color-text-secondary : #b4b4b4;
182
+ --rp-color-text-disabled : #6e6e6e;
183
+ --rp-color-text-inverted : #{$color-gray-12};
184
+ --rp-color-background : #111111;
185
+ --rp-color-surface : #111111;
186
+ --rp-color-surface-raised : #191919;
187
+ --rp-color-surface-muted : #191919;
188
+ --rp-color-surface-hover : #222222;
189
+ --rp-color-button-default-bg : #191919;
190
+ --rp-color-button-default-bg-hover : #222222;
191
+ --rp-color-button-default-bg-active : #2a2a2a;
192
+ --rp-color-surface-inverted : #{$color-gray-2};
193
+ --rp-color-overlay : rgba(17, 17, 17, 0.75);
194
+ --rp-color-border : #3a3a3a;
195
+ --rp-color-border-hover : #606060;
196
+ --rp-color-focus-ring : color-mix(in srgb, var(--rp-color-primary) 45%, transparent);
197
+ --rp-color-control-bg : #191919;
198
+ --rp-color-control-readonly-bg : var(--rp-color-surface-muted);
199
+ --rp-color-control-fg : #eeeeee;
200
+ --rp-color-control-placeholder : #6e6e6e;
201
+ --rp-color-control-icon : #b4b4b4;
202
+ --rp-color-control-border : #3a3a3a;
203
+ --rp-color-control-border-hover : #606060;
204
+ --rp-color-control-border-focus : var(--rp-color-primary);
205
+ --rp-color-control-track-bg : var(--rp-color-border);
206
+ --rp-color-control-thumb-bg : var(--rp-color-surface-inverted);
207
+ --rp-color-primary-subtle-bg : #0d2847;
208
+ --rp-color-primary-subtle-bg-hover : #003362;
209
+ --rp-color-primary-subtle-bg-active : #004074;
210
+ --rp-color-primary-border : #205d9e;
211
+ --rp-color-primary-border-hover : #2870bd;
212
+ --rp-color-primary-fg : #70b8ff;
213
+ --rp-color-secondary-subtle-bg : #291f43;
214
+ --rp-color-secondary-subtle-bg-hover : #33255b;
215
+ --rp-color-secondary-subtle-bg-active: #3c2e69;
216
+ --rp-color-secondary-border : #56468b;
217
+ --rp-color-secondary-border-hover : #6958ad;
218
+ --rp-color-secondary-fg : #baa7ff;
219
+ --rp-color-success-subtle-bg : #132d21;
220
+ --rp-color-success-subtle-bg-hover : #113b29;
221
+ --rp-color-success-subtle-bg-active : #174933;
222
+ --rp-color-success-border : #28684a;
223
+ --rp-color-success-border-hover : #2f7c57;
224
+ --rp-color-success-fg : #3dd68c;
225
+ --rp-color-warning-subtle-bg : #331e0b;
226
+ --rp-color-warning-subtle-bg-hover : #462100;
227
+ --rp-color-warning-subtle-bg-active : #562800;
228
+ --rp-color-warning-border : #7e451d;
229
+ --rp-color-warning-border-hover : #a35829;
230
+ --rp-color-warning-fg : #ffa057;
231
+ --rp-color-danger-subtle-bg : #3b1219;
232
+ --rp-color-danger-subtle-bg-hover : #500f1c;
233
+ --rp-color-danger-subtle-bg-active : #611623;
234
+ --rp-color-danger-border : #8c333a;
235
+ --rp-color-danger-border-hover : #b54548;
236
+ --rp-color-danger-fg : #ff9592;
237
+ --rp-color-info-subtle-bg : #082c36;
238
+ --rp-color-info-subtle-bg-hover : #003848;
239
+ --rp-color-info-subtle-bg-active : #004558;
240
+ --rp-color-info-border : #12677e;
241
+ --rp-color-info-border-hover : #11809c;
242
+ --rp-color-info-fg : #4ccce6;
243
+ --rp-color-neutral-subtle-bg : #222222;
244
+ --rp-color-neutral-subtle-bg-hover : #2a2a2a;
245
+ --rp-color-neutral-subtle-bg-active : #313131;
246
+ --rp-color-neutral-border : #484848;
247
+ --rp-color-neutral-border-hover : #606060;
248
+ --rp-color-neutral-fg : #eeeeee;
177
249
 
178
250
  // Shadows
179
251
  --rp-shadow-sm : 0 1px 2px 0 rgba(0, 0, 0, 0.3);
@@ -5,36 +5,40 @@
5
5
  $font-family-base: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !default;
6
6
 
7
7
  // Colors
8
- $color-primary : #2563eb !default;
9
- $color-secondary : #4f46e5 !default;
10
- $color-success : #15803d !default;
11
- $color-warning : #b45309 !default;
12
- $color-danger : #dc2626 !default;
13
- $color-info : #0e7490 !default;
8
+ $color-primary : #0d74ce !default;
9
+ $color-secondary : #6550b9 !default;
10
+ $color-success : #218358 !default;
11
+ $color-warning : #cc4e00 !default;
12
+ $color-danger : #ce2c31 !default;
13
+ $color-info : #107d98 !default;
14
+ $color-neutral : #646464 !default;
14
15
  $color-white : #ffffff !default;
15
- $color-black : #09090b !default;
16
- $color-gray-50 : #fafafa !default;
17
- $color-gray-100 : #f4f4f5 !default;
18
- $color-gray-200 : #e4e4e7 !default;
19
- $color-gray-300 : #d4d4d8 !default;
20
- $color-gray-400 : #a1a1aa !default;
21
- $color-gray-500 : #71717a !default;
22
- $color-gray-600 : #52525b !default;
23
- $color-gray-700 : #3f3f46 !default;
24
- $color-gray-800 : #27272a !default;
25
- $color-gray-900 : #18181b !default;
26
- $color-text : $color-gray-900 !default;
27
- $color-text-secondary: $color-gray-600 !default;
28
- $color-text-disabled : $color-gray-500 !default;
16
+ $color-black : #111111 !default;
17
+ $color-gray-1 : #fcfcfc !default;
18
+ $color-gray-2 : #f9f9f9 !default;
19
+ $color-gray-3 : #f0f0f0 !default;
20
+ $color-gray-4 : #e8e8e8 !default;
21
+ $color-gray-5 : #e0e0e0 !default;
22
+ $color-gray-6 : #d9d9d9 !default;
23
+ $color-gray-7 : #cecece !default;
24
+ $color-gray-8 : #bbbbbb !default;
25
+ $color-gray-9 : #8d8d8d !default;
26
+ $color-gray-10 : #838383 !default;
27
+ $color-gray-11 : #646464 !default;
28
+ $color-gray-12 : #202020 !default;
29
+ $color-text : $color-gray-12 !default;
30
+ $color-text-secondary: $color-gray-11 !default;
31
+ $color-text-disabled : $color-gray-9 !default;
29
32
  $color-background : $color-white !default;
30
- $color-border : $color-gray-200 !default;
31
- $color-border-hover : $color-gray-400 !default;
33
+ $color-border : $color-gray-6 !default;
34
+ $color-border-hover : $color-gray-8 !default;
32
35
  $color-on-primary : $color-white !default;
33
36
  $color-on-secondary : $color-white !default;
34
37
  $color-on-success : $color-white !default;
35
38
  $color-on-warning : $color-white !default;
36
39
  $color-on-danger : $color-white !default;
37
40
  $color-on-info : $color-white !default;
41
+ $color-on-neutral : $color-white !default;
38
42
 
39
43
  // Font sizes
40
44
  $font-size-xs : 0.75rem !default;
@@ -72,12 +76,10 @@ $spacing-12: 3rem !default;
72
76
 
73
77
  // Border radius
74
78
  $radius-none: 0 !default;
75
- $radius-sm : 0.125rem !default;
76
- $radius-base: 0.25rem !default;
77
- $radius-md : 0.375rem !default;
78
- $radius-lg : 0.5rem !default;
79
- $radius-xl : 0.75rem !default;
80
- $radius-2xl : 1rem !default;
79
+ $radius-sm : 0.375rem !default;
80
+ $radius-md : 0.75rem !default;
81
+ $radius-lg : 1rem !default;
82
+ $radius-xl : 1.5rem !default;
81
83
  $radius-full: 9999px !default;
82
84
 
83
85
  // Border widths
@@ -1,18 +0,0 @@
1
- declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
2
- props: import('vue').PublicProps & (typeof globalThis extends {
3
- __VLS_PROPS_FALLBACK: infer P;
4
- } ? P : {});
5
- expose: (exposed: {}) => void;
6
- attrs: any;
7
- slots: {};
8
- emit: {};
9
- }>) => import('vue').VNode & {
10
- __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
11
- };
12
- declare const _default: typeof __VLS_export;
13
- export default _default;
14
- type __VLS_PrettifyLocal<T> = (T extends any ? {
15
- [K in keyof T]: T[K];
16
- } : {
17
- [K in keyof T as K]: T[K];
18
- }) & {};
@@ -1,18 +0,0 @@
1
- declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
2
- props: import('vue').PublicProps & (typeof globalThis extends {
3
- __VLS_PROPS_FALLBACK: infer P;
4
- } ? P : {});
5
- expose: (exposed: {}) => void;
6
- attrs: any;
7
- slots: {};
8
- emit: {};
9
- }>) => import('vue').VNode & {
10
- __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
11
- };
12
- declare const _default: typeof __VLS_export;
13
- export default _default;
14
- type __VLS_PrettifyLocal<T> = (T extends any ? {
15
- [K in keyof T]: T[K];
16
- } : {
17
- [K in keyof T as K]: T[K];
18
- }) & {};
@@ -1,18 +0,0 @@
1
- declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
2
- props: import('vue').PublicProps & (typeof globalThis extends {
3
- __VLS_PROPS_FALLBACK: infer P;
4
- } ? P : {});
5
- expose: (exposed: {}) => void;
6
- attrs: any;
7
- slots: {};
8
- emit: {};
9
- }>) => import('vue').VNode & {
10
- __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
11
- };
12
- declare const _default: typeof __VLS_export;
13
- export default _default;
14
- type __VLS_PrettifyLocal<T> = (T extends any ? {
15
- [K in keyof T]: T[K];
16
- } : {
17
- [K in keyof T as K]: T[K];
18
- }) & {};
@@ -1,3 +0,0 @@
1
- export { default as CheckIcon } from './CheckIcon';
2
- export { default as ChevronDownIcon } from './ChevronDownIcon';
3
- export { default as MinusIcon } from './MinusIcon';
@@ -1,9 +0,0 @@
1
- export interface OptionListItem {
2
- label: string;
3
- value: string | number;
4
- disabled?: boolean;
5
- }
6
- export type OptionListValue = string | number | null;
7
- export declare function hasOptionListValue(value: OptionListValue): boolean;
8
- export declare function getOptionListDisplayLabel<T extends OptionListItem>(options: T[] | undefined, value: OptionListValue): string;
9
- export declare function getOptionListActiveDescendantId(baseId: string, focusedIndex: number): string | undefined;
@@ -1,5 +0,0 @@
1
- export { default as Tabs } from './tabs';
2
- export { default as TabsList } from './tabs-list';
3
- export { default as TabsTrigger } from './tabs-trigger';
4
- export { default as TabPanel } from './tab-panel';
5
- export type { TabsProps, TabsTriggerProps, TabPanelProps } from './types';
@@ -1,2 +0,0 @@
1
- import { i as tabs_default, n as tabs_trigger_default, r as tabs_list_default, t as tab_panel_default } from "../../tabs.js";
2
- export { tab_panel_default as TabPanel, tabs_default as Tabs, tabs_list_default as TabsList, tabs_trigger_default as TabsTrigger };
@@ -1,21 +0,0 @@
1
- import { TabPanelProps } from './types';
2
- declare const __VLS_export: (__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
- props: import('vue').PublicProps & __VLS_PrettifyLocal<TabPanelProps> & (typeof globalThis extends {
4
- __VLS_PROPS_FALLBACK: infer P;
5
- } ? P : {});
6
- expose: (exposed: {}) => void;
7
- attrs: any;
8
- slots: {
9
- default?: (props: {}) => any;
10
- };
11
- emit: {};
12
- }>) => import('vue').VNode & {
13
- __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
14
- };
15
- declare const _default: typeof __VLS_export;
16
- export default _default;
17
- type __VLS_PrettifyLocal<T> = (T extends any ? {
18
- [K in keyof T]: T[K];
19
- } : {
20
- [K in keyof T as K]: T[K];
21
- }) & {};