99 densityTweaks ,
1010 fontTweaks ,
1111} from "cx-theme-variables" ;
12+ import homedocsLightPreset from "../../styles/homedocsLight" ;
13+ import homedocsDarkPreset from "../../styles/homedocsDark" ;
1214
1315// Variable metadata - maps ThemeVariables keys to labels, types, and categories
1416const variableMetadata : Array < {
@@ -24,6 +26,18 @@ const variableMetadata: Array<{
2426 type : "color" ,
2527 category : "colors" ,
2628 } ,
29+ {
30+ key : "primaryTextColor" ,
31+ label : "Primary text color" ,
32+ type : "color" ,
33+ category : "colors" ,
34+ } ,
35+ {
36+ key : "primaryBorderColor" ,
37+ label : "Primary border color" ,
38+ type : "text" ,
39+ category : "colors" ,
40+ } ,
2741 {
2842 key : "accentColor" ,
2943 label : "Accent color" ,
@@ -36,6 +50,18 @@ const variableMetadata: Array<{
3650 type : "color" ,
3751 category : "colors" ,
3852 } ,
53+ {
54+ key : "dangerTextColor" ,
55+ label : "Danger text color" ,
56+ type : "color" ,
57+ category : "colors" ,
58+ } ,
59+ {
60+ key : "dangerBorderColor" ,
61+ label : "Danger border color" ,
62+ type : "text" ,
63+ category : "colors" ,
64+ } ,
3965 { key : "textColor" , label : "Text color" , type : "color" , category : "colors" } ,
4066 {
4167 key : "backgroundColor" ,
@@ -55,14 +81,20 @@ const variableMetadata: Array<{
5581 type : "color" ,
5682 category : "colors" ,
5783 } ,
58- {
59- key : "activeStateColor" ,
60- label : "Hover overlay (black/white)" ,
61- type : "color" ,
62- category : "colors" ,
63- } ,
6484
6585 // Inputs
86+ {
87+ key : "inputWidth" ,
88+ label : "Width" ,
89+ type : "size" ,
90+ category : "inputs" ,
91+ } ,
92+ {
93+ key : "inputColor" ,
94+ label : "Color" ,
95+ type : "text" ,
96+ category : "inputs" ,
97+ } ,
6698 {
6799 key : "inputBackgroundColor" ,
68100 label : "Background" ,
@@ -99,11 +131,30 @@ const variableMetadata: Array<{
99131 type : "size" ,
100132 category : "inputs" ,
101133 } ,
134+ // Checks & Switches
102135 {
103136 key : "checkboxSize" ,
104137 label : "Checkbox/Radio size" ,
105138 type : "size" ,
106- category : "inputs" ,
139+ category : "checks" ,
140+ } ,
141+ {
142+ key : "switchAxisSize" ,
143+ label : "Switch axis size" ,
144+ type : "size" ,
145+ category : "checks" ,
146+ } ,
147+ {
148+ key : "switchHandleSize" ,
149+ label : "Switch handle size" ,
150+ type : "size" ,
151+ category : "checks" ,
152+ } ,
153+ {
154+ key : "switchWidth" ,
155+ label : "Switch width" ,
156+ type : "size" ,
157+ category : "checks" ,
107158 } ,
108159
109160 // Buttons
@@ -161,6 +212,42 @@ const variableMetadata: Array<{
161212 type : "text" ,
162213 category : "buttons" ,
163214 } ,
215+ {
216+ key : "buttonBorderRadius" ,
217+ label : "Border radius" ,
218+ type : "text" ,
219+ category : "buttons" ,
220+ } ,
221+ {
222+ key : "buttonHoverBoxShadow" ,
223+ label : "Hover box shadow" ,
224+ type : "text" ,
225+ category : "buttons" ,
226+ } ,
227+ {
228+ key : "buttonHoverStateMixColor" ,
229+ label : "Hover mix color" ,
230+ type : "text" ,
231+ category : "buttons" ,
232+ } ,
233+ {
234+ key : "buttonHoverStateMixAmount" ,
235+ label : "Hover mix amount" ,
236+ type : "text" ,
237+ category : "buttons" ,
238+ } ,
239+ {
240+ key : "buttonActiveStateMixColor" ,
241+ label : "Active mix color" ,
242+ type : "text" ,
243+ category : "buttons" ,
244+ } ,
245+ {
246+ key : "buttonActiveStateMixAmount" ,
247+ label : "Active mix amount" ,
248+ type : "text" ,
249+ category : "buttons" ,
250+ } ,
164251
165252 // Grids
166253 {
@@ -230,18 +317,6 @@ const variableMetadata: Array<{
230317 category : "effects" ,
231318 } ,
232319 { key : "transition" , label : "Transition" , type : "text" , category : "effects" } ,
233- {
234- key : "activeStateHoverAmount" ,
235- label : "Hover amount" ,
236- type : "text" ,
237- category : "effects" ,
238- } ,
239- {
240- key : "activeStatePressedAmount" ,
241- label : "Pressed amount" ,
242- type : "text" ,
243- category : "effects" ,
244- } ,
245320
246321 // Calendar
247322 {
@@ -256,8 +331,9 @@ const categoryMetadata = [
256331 { id : "colors" , name : "Colors" , icon : "palette" , group : "Theme" } ,
257332 { id : "sizing" , name : "Sizing" , icon : "move" , group : "Theme" } ,
258333 { id : "effects" , name : "Effects" , icon : "zap" , group : "Theme" } ,
259- { id : "inputs" , name : "Inputs" , icon : "text-cursor-input" , group : "Components" } ,
260334 { id : "buttons" , name : "Buttons" , icon : "square" , group : "Components" } ,
335+ { id : "inputs" , name : "Inputs" , icon : "text-cursor-input" , group : "Components" } ,
336+ { id : "checks" , name : "Checks & Switches" , icon : "toggle-left" , group : "Components" } ,
261337 { id : "grids" , name : "Grids" , icon : "table" , group : "Components" } ,
262338 { id : "calendar" , name : "Calendar" , icon : "calendar" , group : "Components" } ,
263339] ;
@@ -309,6 +385,8 @@ export const defaultCategories = themeToCategories(defaultPreset);
309385
310386export const presets = [
311387 { id : "default" , text : "Default" , theme : defaultPreset } ,
388+ { id : "docs-light" , text : "Docs Light" , theme : homedocsLightPreset } ,
389+ { id : "docs-dark" , text : "Docs Dark" , theme : homedocsDarkPreset } ,
312390 { id : "darkBlue" , text : "Dark Blue" , theme : darkBluePreset } ,
313391 { id : "darkGray" , text : "Dark Gray" , theme : darkGrayPreset } ,
314392 { id : "ocean" , text : "Ocean" , theme : oceanPreset } ,
0 commit comments