Skip to content

Commit 3758c4b

Browse files
authored
fix(preset-mini,preset-wind4): update regex to allow word characters in arbitrary values (#4732)
1 parent fa43c07 commit 3758c4b

File tree

5 files changed

+5
-2
lines changed

5 files changed

+5
-2
lines changed

packages-presets/preset-mini/src/_rules/variables.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export const cssProperty: Rule[] = [
3333
const [prop, ...rest] = body.split(':')
3434
const value = rest.join(':')
3535

36-
if (!isURI(body) && /^[a-z-_]+$/i.test(prop) && isValidCSSBody(value)) {
36+
if (!isURI(body) && /^[\w-]+$/.test(prop) && isValidCSSBody(value)) {
3737
const parsed = h.bracket(`[${value}]`)
3838

3939
if (parsed)

packages-presets/preset-wind4/src/rules/variables.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ export const cssProperty: Rule<Theme>[] = [
4646
const [prop, ...rest] = body.split(':')
4747
const value = rest.join(':')
4848

49-
if (!isURI(body) && /^[a-z-_]+$/i.test(prop) && isValidCSSBody(value)) {
49+
if (!isURI(body) && /^[\w-]+$/.test(prop) && isValidCSSBody(value)) {
5050
const parsed = h.bracket(`[${value}]`)
5151

5252
if (parsed)

test/assets/output/preset-mini-targets.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
.items-\$size{align-items:var(--size);}
88
.ws-\$variable{white-space:var(--variable);}
99
.\[--css-spacing\:theme\(spacing\.sm\)\]{--css-spacing:0.875rem;}
10+
.\[--css-variable-4\:\"\"wght\"_400\,_\"opsz\"_14\"\]{--css-variable-4:""wght" 400, "opsz" 14";}
1011
.\[--css-variable-color\:theme\(colors\.green\.500\)\,theme\(colors\.blue\.500\)\]{--css-variable-color:#22c55e,#3b82f6;}
1112
.\[--css-variable-color\:theme\(colors\.red\.500\)\]{--css-variable-color:#ef4444;}
1213
.\[--css-variable-color\:theme\(colors\.red\.500\/50\%\)\]{--css-variable-color:rgb(239 68 68 / 50%);}

test/assets/output/preset-wind4-targets.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1146,6 +1146,7 @@ unocss .scope-\[unocss\]\:block{display:block;}
11461146
.object-position-\$variable{object-position:var(--variable);}
11471147
.ws-\$variable{white-space:var(--variable);}
11481148
.\[--css-spacing\:theme\(spacing\.sm\)\]{--css-spacing:0.875rem;}
1149+
.\[--css-variable-4\:\"\"wght\"_400\,_\"opsz\"_14\"\]{--css-variable-4:""wght" 400, "opsz" 14";}
11491150
.\[--css-variable-color\:theme\(colors\.green\.500\)\,theme\(colors\.blue\.500\)\]{--css-variable-color:oklch(72.3% 0.219 149.579),oklch(62.3% 0.214 259.815);}
11501151
.\[--css-variable-color\:theme\(colors\.red\.500\)\]{--css-variable-color:oklch(63.7% 0.237 25.331);}
11511152
.\[--css-variable-color\:theme\(colors\.red\.500\/50\%\)\]{--css-variable-color:oklch(63.7% 0.237 25.331 / 50%);}

test/assets/preset-mini-targets.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1050,6 +1050,7 @@ export const presetMiniTargets: string[] = [
10501050
'[padding:theme(spacing.xl)]',
10511051
'[color:theme(colors.blue.300/40%)]',
10521052
'[--css-variable:"wght"_400,_"opsz"_14]',
1053+
'[--css-variable-4:""wght"_400,_"opsz"_14"]',
10531054
'[--css-variable-color:theme(colors.red.500)]',
10541055
'[--css-variable-color:theme(colors.red.500/50%)]',
10551056
'[--css-variable-color:theme(colors.green.500),theme(colors.blue.500)]',

0 commit comments

Comments
 (0)