@unocss/preset-wind 0.22.0 → 0.22.1

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.
package/dist/index.cjs CHANGED
@@ -71,15 +71,34 @@ const bgGradientColorResolver = (mode) => ([, body], { theme }) => {
71
71
  }
72
72
  };
73
73
  const backgroundStyles = [
74
+ [/^bg-gradient-(.+)$/, ([, d]) => ({ "--un-gradient": utils.handler.bracket(d) })],
75
+ [/^(?:bg-gradient-)?stops-(\[.+\])$/, ([, s]) => ({ "--un-gradient-stops": utils.handler.bracket(s) })],
74
76
  [/^(?:bg-gradient-)?from-(.+)$/, bgGradientColorResolver("from")],
75
77
  [/^(?:bg-gradient-)?to-(.+)$/, bgGradientColorResolver("to")],
76
78
  [/^(?:bg-gradient-)?via-(.+)$/, bgGradientColorResolver("via")],
77
79
  [/^(?:bg-gradient-)?from-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-from-opacity": utils.handler.bracket.percent(opacity) })],
78
80
  [/^(?:bg-gradient-)?to-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-to-opacity": utils.handler.bracket.percent(opacity) })],
79
81
  [/^(?:bg-gradient-)?via-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-via-opacity": utils.handler.bracket.percent(opacity) })],
82
+ [/^bg-gradient-((?:repeating-)?(?:linear|radial|conic))$/, ([, s]) => ({
83
+ "background-image": `${s}-gradient(var(--un-gradient, var(--un-gradient-stops, rgba(255, 255, 255, 0))))`
84
+ })],
80
85
  [/^bg-gradient-to-([rltb]{1,2})$/, ([, d]) => {
81
- if (d in utils.positionMap)
82
- return { "background-image": `linear-gradient(to ${utils.positionMap[d]}, var(--un-gradient-stops))` };
86
+ if (d in utils.positionMap) {
87
+ return {
88
+ "--un-gradient-shape": `to ${utils.positionMap[d]}`,
89
+ "--un-gradient": "var(--un-gradient-shape), var(--un-gradient-stops)",
90
+ "background-image": "linear-gradient(var(--un-gradient))"
91
+ };
92
+ }
93
+ }],
94
+ [/^(?:bg-gradient-)?shape-(.+)$/, ([, d]) => {
95
+ const v = d in utils.positionMap ? `to ${utils.positionMap[d]}` : utils.handler.bracket(d);
96
+ if (v != null) {
97
+ return {
98
+ "--un-gradient-shape": v,
99
+ "--un-gradient": "var(--un-gradient-shape), var(--un-gradient-stops)"
100
+ };
101
+ }
83
102
  }],
84
103
  ["bg-none", { "background-image": "none" }],
85
104
  ["box-decoration-slice", { "box-decoration-break": "slice" }],
@@ -218,6 +237,7 @@ const filterBase = {
218
237
  "--un-brightness": rules$1.varEmpty,
219
238
  "--un-contrast": rules$1.varEmpty,
220
239
  "--un-drop-shadow": rules$1.varEmpty,
240
+ "--un-drop-shadow-colored": rules$1.varEmpty,
221
241
  "--un-grayscale": rules$1.varEmpty,
222
242
  "--un-hue-rotate": rules$1.varEmpty,
223
243
  "--un-invert": rules$1.varEmpty,
@@ -270,24 +290,52 @@ const toFilter = (varName, resolver) => ([, b, s], { theme }) => {
270
290
  }
271
291
  }
272
292
  };
293
+ const dropShadowResolver = ([, s], { theme }) => {
294
+ let v = theme.dropShadow?.[s || "DEFAULT"];
295
+ if (v != null) {
296
+ const shadow = core.toArray(v);
297
+ const colored = shadow.map((s2) => s2.replace(/\s\S+$/, " var(--un-drop-shadow-color)"));
298
+ return [
299
+ filterBase,
300
+ {
301
+ "--un-drop-shadow": `drop-shadow(${shadow.join(") drop-shadow(")})`,
302
+ "--un-drop-shadow-colored": `drop-shadow(${colored.join(") drop-shadow(")})`,
303
+ "filter": "var(--un-filter)"
304
+ }
305
+ ];
306
+ }
307
+ v = utils.handler.bracket(s);
308
+ if (v != null) {
309
+ return [
310
+ filterBase,
311
+ {
312
+ "--un-drop-shadow": `drop-shadow(${v})`,
313
+ "filter": "var(--un-filter)"
314
+ }
315
+ ];
316
+ }
317
+ };
273
318
  const filters = [
274
- [/^(backdrop-)?blur(?:-(.+))?$/, toFilter("blur", (s, theme) => theme.blur?.[s || "DEFAULT"] || utils.handler.bracket.px(s))],
275
- [/^(backdrop-)?brightness-(.+)$/, toFilter("brightness", (s) => utils.handler.bracket.percent(s))],
276
- [/^(backdrop-)?contrast-(.+)$/, toFilter("contrast", (s) => utils.handler.bracket.percent(s))],
277
- [/^()?drop-shadow(?:-(.+))?$/, toFilter("drop-shadow", (s, theme) => {
278
- let v = theme.dropShadow?.[s || "DEFAULT"];
279
- if (v != null)
280
- return core.toArray(v).map((v2) => `drop-shadow(${v2})`).join(" ");
281
- v = utils.handler.bracket(s);
282
- if (v != null)
283
- return `drop-shadow(${v})`;
284
- })],
285
- [/^(backdrop-)?grayscale(?:-(.+))?$/, toFilter("grayscale", percentWithDefault)],
286
- [/^(backdrop-)?hue-rotate-(.+)$/, toFilter("hue-rotate", (s) => utils.handler.bracket.degree(s))],
287
- [/^(backdrop-)?invert(?:-(.+))?$/, toFilter("invert", percentWithDefault)],
319
+ [/^(?:(backdrop-)|filter-)?blur(?:-(.+))?$/, toFilter("blur", (s, theme) => theme.blur?.[s || "DEFAULT"] || utils.handler.bracket.px(s))],
320
+ [/^(?:(backdrop-)|filter-)?brightness-(.+)$/, toFilter("brightness", (s) => utils.handler.bracket.percent(s))],
321
+ [/^(?:(backdrop-)|filter-)?contrast-(.+)$/, toFilter("contrast", (s) => utils.handler.bracket.percent(s))],
322
+ [/^(?:filter-)?drop-shadow(?:-(.+))?$/, dropShadowResolver],
323
+ [/^(?:filter-)?drop-shadow-color-(.+)$/, (m, ctx) => {
324
+ const color = utils.colorResolver("--un-drop-shadow-color", "drop-shadow")(m, ctx);
325
+ if (color) {
326
+ return {
327
+ ...color,
328
+ "--un-drop-shadow": "var(--un-drop-shadow-colored)"
329
+ };
330
+ }
331
+ }],
332
+ [/^(?:filter-)?drop-shadow-color-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-drop-shadow-opacity": utils.handler.bracket.percent.cssvar(opacity) })],
333
+ [/^(?:(backdrop-)|filter-)?grayscale(?:-(.+))?$/, toFilter("grayscale", percentWithDefault)],
334
+ [/^(?:(backdrop-)|filter-)?hue-rotate-(.+)$/, toFilter("hue-rotate", (s) => utils.handler.bracket.degree(s))],
335
+ [/^(?:(backdrop-)|filter-)?invert(?:-(.+))?$/, toFilter("invert", percentWithDefault)],
288
336
  [/^(backdrop-)opacity-(.+)$/, toFilter("opacity", (s) => utils.handler.bracket.percent(s))],
289
- [/^(backdrop-)?saturate-(.+)$/, toFilter("saturate", (s) => utils.handler.bracket.percent(s))],
290
- [/^(backdrop-)?sepia(?:-(.+))?$/, toFilter("sepia", percentWithDefault)],
337
+ [/^(?:(backdrop-)|filter-)?saturate-(.+)$/, toFilter("saturate", (s) => utils.handler.bracket.percent(s))],
338
+ [/^(?:(backdrop-)|filter-)?sepia(?:-(.+))?$/, toFilter("sepia", percentWithDefault)],
291
339
  [/^filter$/, () => [
292
340
  filterBase,
293
341
  { filter: "var(--un-filter)" }
@@ -304,7 +352,7 @@ const filters = [
304
352
  "-webkit-backdrop-filter": "none",
305
353
  "backdrop-filter": "none"
306
354
  }],
307
- [/^(blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|saturate|sepia)-none$/, ([, s]) => ({ filter: `${s}(0)` })],
355
+ [/^(?:filter-)?(blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|saturate|sepia)-none$/, ([, s]) => ({ filter: `${s}(0)` })],
308
356
  [/^backdrop-(blur|brightness|contrast|grayscale|hue-rotate|invert|opacity|saturate|sepia)-none$/, ([, s]) => ({
309
357
  "-webkit-backdrop-filter": `${s}(0)`,
310
358
  "backdrop-filter": `${s}(0)`
@@ -312,21 +360,24 @@ const filters = [
312
360
  ];
313
361
 
314
362
  const spaces = [
315
- [/^space-?([xy])-?(-?.+)$/, (match) => {
316
- const [, direction] = match;
317
- const results = utils.directionSize("margin")(match)?.map((item) => {
318
- const value = item[0].endsWith("right") || item[0].endsWith("bottom") ? `calc(${item[1]} * var(--un-space-${direction}-reverse))` : `calc(${item[1]} * calc(1 - var(--un-space-${direction}-reverse)))`;
319
- return [item[0], value];
320
- });
321
- if (results) {
322
- return [
323
- [`--un-space-${direction}-reverse`, 0],
324
- ...results
325
- ];
326
- }
327
- }],
328
- [/^space-?([xy])-reverse$/, ([, d]) => ({ [`--un-space-${d}-reverse`]: 1 })]
363
+ [/^space-?([xy])-?(-?.+)$/, handlerSpace],
364
+ [/^space-?([xy])-reverse$/, ([, d]) => ({ [`--un-space-${d}-reverse`]: 1 })],
365
+ [/^space-(block|inline)-(-?.+)$/, handlerSpace],
366
+ [/^space-(block|inline)-reverse$/, ([, d]) => ({ [`--un-space-${d}-reverse`]: 1 })]
329
367
  ];
368
+ function handlerSpace(match) {
369
+ const [, direction] = match;
370
+ const results = utils.directionSize("margin")(match)?.map((item) => {
371
+ const value = item[0].endsWith("right") || item[0].endsWith("bottom") ? `calc(${item[1]} * var(--un-space-${direction}-reverse))` : `calc(${item[1]} * calc(1 - var(--un-space-${direction}-reverse)))`;
372
+ return [item[0], value];
373
+ });
374
+ if (results) {
375
+ return [
376
+ [`--un-space-${direction}-reverse`, 0],
377
+ ...results
378
+ ];
379
+ }
380
+ }
330
381
 
331
382
  const textTransforms = [
332
383
  ["uppercase", { "text-transform": "uppercase" }],
@@ -487,6 +538,9 @@ const divides = [
487
538
  [/^divide-?([xy])$/, handlerDivide],
488
539
  [/^divide-?([xy])-?(-?.+)$/, handlerDivide],
489
540
  [/^divide-?([xy])-reverse$/, ([, d]) => ({ [`--un-divide-${d}-reverse`]: 1 })],
541
+ [/^divide-(block|inline)$/, handlerDivide],
542
+ [/^divide-(block|inline)-(-?.+)$/, handlerDivide],
543
+ [/^divide-(block|inline)-reverse$/, ([, d]) => ({ [`--un-divide-${d}-reverse`]: 1 })],
490
544
  [/^divide-(.+)$/, utils.colorResolver("border-color", "divide")],
491
545
  [/^divide-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-divide-opacity": utils.handler.bracket.percent(opacity) })],
492
546
  ["divide-solid", { "border-style": "solid" }],
@@ -606,19 +660,24 @@ const scrolls = [
606
660
  [/^scroll-ma?()-?(-?.+)$/, utils.directionSize("scroll-margin")],
607
661
  [/^scroll-m-?([xy])-?(-?.+)$/, utils.directionSize("scroll-margin")],
608
662
  [/^scroll-m-?([rltb])-?(-?.+)$/, utils.directionSize("scroll-margin")],
663
+ [/^scroll-m-(block|inline)-(-?.+)$/, utils.directionSize("scroll-margin")],
664
+ [/^scroll-m-?([bi][se])-?(-?.+)$/, utils.directionSize("scroll-margin")],
609
665
  [/^scroll-pa?()-?(-?.+)$/, utils.directionSize("scroll-padding")],
610
666
  [/^scroll-p-?([xy])-?(-?.+)$/, utils.directionSize("scroll-padding")],
611
- [/^scroll-p-?([rltb])-?(-?.+)$/, utils.directionSize("scroll-padding")]
667
+ [/^scroll-p-?([rltb])-?(-?.+)$/, utils.directionSize("scroll-padding")],
668
+ [/^scroll-p-(block|inline)-(-?.+)$/, utils.directionSize("scroll-padding")],
669
+ [/^scroll-p-?([bi][se])-?(-?.+)$/, utils.directionSize("scroll-padding")]
612
670
  ];
613
671
 
614
672
  const placeholders = [
615
- [/^\$-placeholder-(.+)$/, utils.colorResolver("color", "placeholder")],
616
- [/^\$-placeholder-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-placeholder-opacity": utils.handler.bracket.percent.cssvar(opacity) })]
673
+ [/^\$ placeholder-(.+)$/, utils.colorResolver("color", "placeholder")],
674
+ [/^\$ placeholder-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-placeholder-opacity": utils.handler.bracket.percent.cssvar(opacity) })]
617
675
  ];
618
676
 
619
677
  const rules = [
620
678
  rules$1.cssVariables,
621
679
  cssVariables,
680
+ rules$1.cssProperty,
622
681
  container,
623
682
  screenReadersAccess,
624
683
  rules$1.pointerEvents,
@@ -877,7 +936,7 @@ const placeholderModifier = (input, { theme }) => {
877
936
  const [, pre = "", p, body] = m;
878
937
  if (hasColorValue(body, theme) || hasOpacityValue(body)) {
879
938
  return {
880
- matcher: `${pre}${p}$-placeholder-${body}`
939
+ matcher: `${pre}placeholder-$ ${p}${body}`
881
940
  };
882
941
  }
883
942
  }
package/dist/index.mjs CHANGED
@@ -2,7 +2,7 @@ import { variants } from '@unocss/preset-mini/variants';
2
2
  import { toArray, CONTROL_SHORTCUT_NO_MERGE } from '@unocss/core';
3
3
  import { theme as theme$1 } from '@unocss/preset-mini/theme';
4
4
  export { colors } from '@unocss/preset-mini';
5
- import { varEmpty, cssVariables as cssVariables$1, pointerEvents, appearances, positions, insets, zIndexes, orders, grids, floats, margins, boxSizing, displays, aspectRatio, sizes, flex, transforms, cursors, userSelects, resizes, appearance, placements, alignments, justifies, gaps, overflows, textOverflows, whitespaces, breaks, borders, bgColors, svgUtilities, paddings, textAligns, textIndents, verticalAligns, fonts, fontStyles, textColors, textDecorations, fontSmoothings, tabSizes, textStrokes, textShadows, opacity, boxShadows, outline, rings, transitions, willChange, contents, questionMark } from '@unocss/preset-mini/rules';
5
+ import { varEmpty, cssVariables as cssVariables$1, cssProperty, pointerEvents, appearances, positions, insets, zIndexes, orders, grids, floats, margins, boxSizing, displays, aspectRatio, sizes, flex, transforms, cursors, userSelects, resizes, appearance, placements, alignments, justifies, gaps, overflows, textOverflows, whitespaces, breaks, borders, bgColors, svgUtilities, paddings, textAligns, textIndents, verticalAligns, fonts, fontStyles, textColors, textDecorations, fontSmoothings, tabSizes, textStrokes, textShadows, opacity, boxShadows, outline, rings, transitions, willChange, contents, questionMark } from '@unocss/preset-mini/rules';
6
6
  import { handler, positionMap, parseColor, colorResolver, directionSize, directionMap, variantMatcher, variantParentMatcher } from '@unocss/preset-mini/utils';
7
7
 
8
8
  const animations = [
@@ -67,15 +67,34 @@ const bgGradientColorResolver = (mode) => ([, body], { theme }) => {
67
67
  }
68
68
  };
69
69
  const backgroundStyles = [
70
+ [/^bg-gradient-(.+)$/, ([, d]) => ({ "--un-gradient": handler.bracket(d) })],
71
+ [/^(?:bg-gradient-)?stops-(\[.+\])$/, ([, s]) => ({ "--un-gradient-stops": handler.bracket(s) })],
70
72
  [/^(?:bg-gradient-)?from-(.+)$/, bgGradientColorResolver("from")],
71
73
  [/^(?:bg-gradient-)?to-(.+)$/, bgGradientColorResolver("to")],
72
74
  [/^(?:bg-gradient-)?via-(.+)$/, bgGradientColorResolver("via")],
73
75
  [/^(?:bg-gradient-)?from-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-from-opacity": handler.bracket.percent(opacity) })],
74
76
  [/^(?:bg-gradient-)?to-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-to-opacity": handler.bracket.percent(opacity) })],
75
77
  [/^(?:bg-gradient-)?via-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-via-opacity": handler.bracket.percent(opacity) })],
78
+ [/^bg-gradient-((?:repeating-)?(?:linear|radial|conic))$/, ([, s]) => ({
79
+ "background-image": `${s}-gradient(var(--un-gradient, var(--un-gradient-stops, rgba(255, 255, 255, 0))))`
80
+ })],
76
81
  [/^bg-gradient-to-([rltb]{1,2})$/, ([, d]) => {
77
- if (d in positionMap)
78
- return { "background-image": `linear-gradient(to ${positionMap[d]}, var(--un-gradient-stops))` };
82
+ if (d in positionMap) {
83
+ return {
84
+ "--un-gradient-shape": `to ${positionMap[d]}`,
85
+ "--un-gradient": "var(--un-gradient-shape), var(--un-gradient-stops)",
86
+ "background-image": "linear-gradient(var(--un-gradient))"
87
+ };
88
+ }
89
+ }],
90
+ [/^(?:bg-gradient-)?shape-(.+)$/, ([, d]) => {
91
+ const v = d in positionMap ? `to ${positionMap[d]}` : handler.bracket(d);
92
+ if (v != null) {
93
+ return {
94
+ "--un-gradient-shape": v,
95
+ "--un-gradient": "var(--un-gradient-shape), var(--un-gradient-stops)"
96
+ };
97
+ }
79
98
  }],
80
99
  ["bg-none", { "background-image": "none" }],
81
100
  ["box-decoration-slice", { "box-decoration-break": "slice" }],
@@ -214,6 +233,7 @@ const filterBase = {
214
233
  "--un-brightness": varEmpty,
215
234
  "--un-contrast": varEmpty,
216
235
  "--un-drop-shadow": varEmpty,
236
+ "--un-drop-shadow-colored": varEmpty,
217
237
  "--un-grayscale": varEmpty,
218
238
  "--un-hue-rotate": varEmpty,
219
239
  "--un-invert": varEmpty,
@@ -266,24 +286,52 @@ const toFilter = (varName, resolver) => ([, b, s], { theme }) => {
266
286
  }
267
287
  }
268
288
  };
289
+ const dropShadowResolver = ([, s], { theme }) => {
290
+ let v = theme.dropShadow?.[s || "DEFAULT"];
291
+ if (v != null) {
292
+ const shadow = toArray(v);
293
+ const colored = shadow.map((s2) => s2.replace(/\s\S+$/, " var(--un-drop-shadow-color)"));
294
+ return [
295
+ filterBase,
296
+ {
297
+ "--un-drop-shadow": `drop-shadow(${shadow.join(") drop-shadow(")})`,
298
+ "--un-drop-shadow-colored": `drop-shadow(${colored.join(") drop-shadow(")})`,
299
+ "filter": "var(--un-filter)"
300
+ }
301
+ ];
302
+ }
303
+ v = handler.bracket(s);
304
+ if (v != null) {
305
+ return [
306
+ filterBase,
307
+ {
308
+ "--un-drop-shadow": `drop-shadow(${v})`,
309
+ "filter": "var(--un-filter)"
310
+ }
311
+ ];
312
+ }
313
+ };
269
314
  const filters = [
270
- [/^(backdrop-)?blur(?:-(.+))?$/, toFilter("blur", (s, theme) => theme.blur?.[s || "DEFAULT"] || handler.bracket.px(s))],
271
- [/^(backdrop-)?brightness-(.+)$/, toFilter("brightness", (s) => handler.bracket.percent(s))],
272
- [/^(backdrop-)?contrast-(.+)$/, toFilter("contrast", (s) => handler.bracket.percent(s))],
273
- [/^()?drop-shadow(?:-(.+))?$/, toFilter("drop-shadow", (s, theme) => {
274
- let v = theme.dropShadow?.[s || "DEFAULT"];
275
- if (v != null)
276
- return toArray(v).map((v2) => `drop-shadow(${v2})`).join(" ");
277
- v = handler.bracket(s);
278
- if (v != null)
279
- return `drop-shadow(${v})`;
280
- })],
281
- [/^(backdrop-)?grayscale(?:-(.+))?$/, toFilter("grayscale", percentWithDefault)],
282
- [/^(backdrop-)?hue-rotate-(.+)$/, toFilter("hue-rotate", (s) => handler.bracket.degree(s))],
283
- [/^(backdrop-)?invert(?:-(.+))?$/, toFilter("invert", percentWithDefault)],
315
+ [/^(?:(backdrop-)|filter-)?blur(?:-(.+))?$/, toFilter("blur", (s, theme) => theme.blur?.[s || "DEFAULT"] || handler.bracket.px(s))],
316
+ [/^(?:(backdrop-)|filter-)?brightness-(.+)$/, toFilter("brightness", (s) => handler.bracket.percent(s))],
317
+ [/^(?:(backdrop-)|filter-)?contrast-(.+)$/, toFilter("contrast", (s) => handler.bracket.percent(s))],
318
+ [/^(?:filter-)?drop-shadow(?:-(.+))?$/, dropShadowResolver],
319
+ [/^(?:filter-)?drop-shadow-color-(.+)$/, (m, ctx) => {
320
+ const color = colorResolver("--un-drop-shadow-color", "drop-shadow")(m, ctx);
321
+ if (color) {
322
+ return {
323
+ ...color,
324
+ "--un-drop-shadow": "var(--un-drop-shadow-colored)"
325
+ };
326
+ }
327
+ }],
328
+ [/^(?:filter-)?drop-shadow-color-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-drop-shadow-opacity": handler.bracket.percent.cssvar(opacity) })],
329
+ [/^(?:(backdrop-)|filter-)?grayscale(?:-(.+))?$/, toFilter("grayscale", percentWithDefault)],
330
+ [/^(?:(backdrop-)|filter-)?hue-rotate-(.+)$/, toFilter("hue-rotate", (s) => handler.bracket.degree(s))],
331
+ [/^(?:(backdrop-)|filter-)?invert(?:-(.+))?$/, toFilter("invert", percentWithDefault)],
284
332
  [/^(backdrop-)opacity-(.+)$/, toFilter("opacity", (s) => handler.bracket.percent(s))],
285
- [/^(backdrop-)?saturate-(.+)$/, toFilter("saturate", (s) => handler.bracket.percent(s))],
286
- [/^(backdrop-)?sepia(?:-(.+))?$/, toFilter("sepia", percentWithDefault)],
333
+ [/^(?:(backdrop-)|filter-)?saturate-(.+)$/, toFilter("saturate", (s) => handler.bracket.percent(s))],
334
+ [/^(?:(backdrop-)|filter-)?sepia(?:-(.+))?$/, toFilter("sepia", percentWithDefault)],
287
335
  [/^filter$/, () => [
288
336
  filterBase,
289
337
  { filter: "var(--un-filter)" }
@@ -300,7 +348,7 @@ const filters = [
300
348
  "-webkit-backdrop-filter": "none",
301
349
  "backdrop-filter": "none"
302
350
  }],
303
- [/^(blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|saturate|sepia)-none$/, ([, s]) => ({ filter: `${s}(0)` })],
351
+ [/^(?:filter-)?(blur|brightness|contrast|drop-shadow|grayscale|hue-rotate|invert|saturate|sepia)-none$/, ([, s]) => ({ filter: `${s}(0)` })],
304
352
  [/^backdrop-(blur|brightness|contrast|grayscale|hue-rotate|invert|opacity|saturate|sepia)-none$/, ([, s]) => ({
305
353
  "-webkit-backdrop-filter": `${s}(0)`,
306
354
  "backdrop-filter": `${s}(0)`
@@ -308,21 +356,24 @@ const filters = [
308
356
  ];
309
357
 
310
358
  const spaces = [
311
- [/^space-?([xy])-?(-?.+)$/, (match) => {
312
- const [, direction] = match;
313
- const results = directionSize("margin")(match)?.map((item) => {
314
- const value = item[0].endsWith("right") || item[0].endsWith("bottom") ? `calc(${item[1]} * var(--un-space-${direction}-reverse))` : `calc(${item[1]} * calc(1 - var(--un-space-${direction}-reverse)))`;
315
- return [item[0], value];
316
- });
317
- if (results) {
318
- return [
319
- [`--un-space-${direction}-reverse`, 0],
320
- ...results
321
- ];
322
- }
323
- }],
324
- [/^space-?([xy])-reverse$/, ([, d]) => ({ [`--un-space-${d}-reverse`]: 1 })]
359
+ [/^space-?([xy])-?(-?.+)$/, handlerSpace],
360
+ [/^space-?([xy])-reverse$/, ([, d]) => ({ [`--un-space-${d}-reverse`]: 1 })],
361
+ [/^space-(block|inline)-(-?.+)$/, handlerSpace],
362
+ [/^space-(block|inline)-reverse$/, ([, d]) => ({ [`--un-space-${d}-reverse`]: 1 })]
325
363
  ];
364
+ function handlerSpace(match) {
365
+ const [, direction] = match;
366
+ const results = directionSize("margin")(match)?.map((item) => {
367
+ const value = item[0].endsWith("right") || item[0].endsWith("bottom") ? `calc(${item[1]} * var(--un-space-${direction}-reverse))` : `calc(${item[1]} * calc(1 - var(--un-space-${direction}-reverse)))`;
368
+ return [item[0], value];
369
+ });
370
+ if (results) {
371
+ return [
372
+ [`--un-space-${direction}-reverse`, 0],
373
+ ...results
374
+ ];
375
+ }
376
+ }
326
377
 
327
378
  const textTransforms = [
328
379
  ["uppercase", { "text-transform": "uppercase" }],
@@ -483,6 +534,9 @@ const divides = [
483
534
  [/^divide-?([xy])$/, handlerDivide],
484
535
  [/^divide-?([xy])-?(-?.+)$/, handlerDivide],
485
536
  [/^divide-?([xy])-reverse$/, ([, d]) => ({ [`--un-divide-${d}-reverse`]: 1 })],
537
+ [/^divide-(block|inline)$/, handlerDivide],
538
+ [/^divide-(block|inline)-(-?.+)$/, handlerDivide],
539
+ [/^divide-(block|inline)-reverse$/, ([, d]) => ({ [`--un-divide-${d}-reverse`]: 1 })],
486
540
  [/^divide-(.+)$/, colorResolver("border-color", "divide")],
487
541
  [/^divide-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-divide-opacity": handler.bracket.percent(opacity) })],
488
542
  ["divide-solid", { "border-style": "solid" }],
@@ -602,19 +656,24 @@ const scrolls = [
602
656
  [/^scroll-ma?()-?(-?.+)$/, directionSize("scroll-margin")],
603
657
  [/^scroll-m-?([xy])-?(-?.+)$/, directionSize("scroll-margin")],
604
658
  [/^scroll-m-?([rltb])-?(-?.+)$/, directionSize("scroll-margin")],
659
+ [/^scroll-m-(block|inline)-(-?.+)$/, directionSize("scroll-margin")],
660
+ [/^scroll-m-?([bi][se])-?(-?.+)$/, directionSize("scroll-margin")],
605
661
  [/^scroll-pa?()-?(-?.+)$/, directionSize("scroll-padding")],
606
662
  [/^scroll-p-?([xy])-?(-?.+)$/, directionSize("scroll-padding")],
607
- [/^scroll-p-?([rltb])-?(-?.+)$/, directionSize("scroll-padding")]
663
+ [/^scroll-p-?([rltb])-?(-?.+)$/, directionSize("scroll-padding")],
664
+ [/^scroll-p-(block|inline)-(-?.+)$/, directionSize("scroll-padding")],
665
+ [/^scroll-p-?([bi][se])-?(-?.+)$/, directionSize("scroll-padding")]
608
666
  ];
609
667
 
610
668
  const placeholders = [
611
- [/^\$-placeholder-(.+)$/, colorResolver("color", "placeholder")],
612
- [/^\$-placeholder-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-placeholder-opacity": handler.bracket.percent.cssvar(opacity) })]
669
+ [/^\$ placeholder-(.+)$/, colorResolver("color", "placeholder")],
670
+ [/^\$ placeholder-op(?:acity)?-?(.+)$/, ([, opacity]) => ({ "--un-placeholder-opacity": handler.bracket.percent.cssvar(opacity) })]
613
671
  ];
614
672
 
615
673
  const rules = [
616
674
  cssVariables$1,
617
675
  cssVariables,
676
+ cssProperty,
618
677
  container,
619
678
  screenReadersAccess,
620
679
  pointerEvents,
@@ -873,7 +932,7 @@ const placeholderModifier = (input, { theme }) => {
873
932
  const [, pre = "", p, body] = m;
874
933
  if (hasColorValue(body, theme) || hasOpacityValue(body)) {
875
934
  return {
876
- matcher: `${pre}${p}$-placeholder-${body}`
935
+ matcher: `${pre}placeholder-$ ${p}${body}`
877
936
  };
878
937
  }
879
938
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unocss/preset-wind",
3
- "version": "0.22.0",
3
+ "version": "0.22.1",
4
4
  "description": "Tailwind / Windi CSS compact preset for UnoCSS",
5
5
  "keywords": [
6
6
  "unocss",
@@ -35,8 +35,8 @@
35
35
  "*.css"
36
36
  ],
37
37
  "dependencies": {
38
- "@unocss/core": "0.22.0",
39
- "@unocss/preset-mini": "0.22.0"
38
+ "@unocss/core": "0.22.1",
39
+ "@unocss/preset-mini": "0.22.1"
40
40
  },
41
41
  "scripts": {
42
42
  "build": "unbuild",