@pandacss/eslint-plugin 0.0.6 → 0.0.9

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.
@@ -38,7 +38,7 @@ module.exports = __toCommonJS(worker_exports);
38
38
  var import_node2 = require("@pandacss/node");
39
39
  var import_synckit = require("synckit");
40
40
 
41
- // ../node_modules/.pnpm/@pandacss+preset-base@0.28.0/node_modules/@pandacss/preset-base/dist/index.mjs
41
+ // ../node_modules/.pnpm/@pandacss+preset-base@0.30.1/node_modules/@pandacss/preset-base/dist/index.mjs
42
42
  var conditions = {
43
43
  hover: "&:is(:hover, [data-hover])",
44
44
  focus: "&:is(:focus, [data-focus])",
@@ -129,6 +129,16 @@ var conditions = {
129
129
  horizontal: "&[data-orientation=horizontal]",
130
130
  vertical: "&[data-orientation=vertical]"
131
131
  };
132
+ var createColorMixTransform = (prop) => (value, args) => {
133
+ const mix = args.utils.colorMix(value);
134
+ if (mix.invalid)
135
+ return { [prop]: value };
136
+ const cssVar = "--mix-" + prop;
137
+ return {
138
+ [cssVar]: mix.value,
139
+ [prop]: `var(${cssVar}, ${mix.color})`
140
+ };
141
+ };
132
142
  var background = {
133
143
  backgroundPosition: {
134
144
  shorthand: "bgPosition",
@@ -159,12 +169,14 @@ var background = {
159
169
  background: {
160
170
  shorthand: "bg",
161
171
  className: "bg",
162
- values: "colors"
172
+ values: "colors",
173
+ transform: createColorMixTransform("background")
163
174
  },
164
175
  backgroundColor: {
165
176
  shorthand: "bgColor",
166
177
  className: "bg",
167
- values: "colors"
178
+ values: "colors",
179
+ transform: createColorMixTransform("backgroundColor")
168
180
  },
169
181
  backgroundOrigin: {
170
182
  shorthand: "bgOrigin",
@@ -239,32 +251,26 @@ var background = {
239
251
  gradientFrom: {
240
252
  className: "from",
241
253
  values: "colors",
242
- transform(value) {
243
- return {
244
- "--gradient-from": value
245
- };
246
- }
254
+ transform: createColorMixTransform("--gradient-from")
247
255
  },
248
256
  gradientTo: {
249
257
  className: "to",
250
258
  values: "colors",
251
- transform(value) {
252
- return {
253
- "--gradient-to": value
254
- };
255
- }
259
+ transform: createColorMixTransform("--gradient-to")
256
260
  },
257
261
  gradientVia: {
258
262
  className: "via",
259
263
  values: "colors",
260
- transform(value) {
264
+ transform(value, args) {
265
+ const transformed = gradientVia(value, args);
261
266
  return {
262
- "--gradient-via-stops": "var(--gradient-from), var(--gradient-via), var(--gradient-to)",
263
- "--gradient-via": value
267
+ ...transformed,
268
+ "--gradient-via-stops": "var(--gradient-from), var(--gradient-via), var(--gradient-to)"
264
269
  };
265
270
  }
266
271
  }
267
272
  };
273
+ var gradientVia = createColorMixTransform("--gradient-via");
268
274
  var border = {
269
275
  borderRadius: {
270
276
  className: "rounded",
@@ -409,7 +415,8 @@ var border = {
409
415
  },
410
416
  borderColor: {
411
417
  className: "border",
412
- values: "colors"
418
+ values: "colors",
419
+ transform: createColorMixTransform("borderColor")
413
420
  },
414
421
  borderInline: {
415
422
  className: "border-x",
@@ -424,7 +431,8 @@ var border = {
424
431
  borderInlineColor: {
425
432
  className: "border-x",
426
433
  values: "colors",
427
- shorthand: "borderXColor"
434
+ shorthand: "borderXColor",
435
+ transform: createColorMixTransform("borderInlineColor")
428
436
  },
429
437
  borderBlock: {
430
438
  className: "border-y",
@@ -439,7 +447,8 @@ var border = {
439
447
  borderBlockColor: {
440
448
  className: "border-y",
441
449
  values: "colors",
442
- shorthand: "borderYColor"
450
+ shorthand: "borderYColor",
451
+ transform: createColorMixTransform("borderBlockColor")
443
452
  },
444
453
  borderLeft: {
445
454
  className: "border-l",
@@ -447,7 +456,8 @@ var border = {
447
456
  },
448
457
  borderLeftColor: {
449
458
  className: "border-l",
450
- values: "colors"
459
+ values: "colors",
460
+ transform: createColorMixTransform("borderLeftColor")
451
461
  },
452
462
  borderInlineStart: {
453
463
  className: "border-s",
@@ -462,7 +472,8 @@ var border = {
462
472
  borderInlineStartColor: {
463
473
  className: "border-s",
464
474
  values: "colors",
465
- shorthand: "borderStartColor"
475
+ shorthand: "borderStartColor",
476
+ transform: createColorMixTransform("borderInlineStartColor")
466
477
  },
467
478
  borderRight: {
468
479
  className: "border-r",
@@ -470,7 +481,8 @@ var border = {
470
481
  },
471
482
  borderRightColor: {
472
483
  className: "border-r",
473
- values: "colors"
484
+ values: "colors",
485
+ transform: createColorMixTransform("borderRightColor")
474
486
  },
475
487
  borderInlineEnd: {
476
488
  className: "border-e",
@@ -485,7 +497,8 @@ var border = {
485
497
  borderInlineEndColor: {
486
498
  className: "border-e",
487
499
  values: "colors",
488
- shorthand: "borderEndColor"
500
+ shorthand: "borderEndColor",
501
+ transform: createColorMixTransform("borderInlineEndColor")
489
502
  },
490
503
  borderTop: {
491
504
  className: "border-t",
@@ -493,7 +506,8 @@ var border = {
493
506
  },
494
507
  borderTopColor: {
495
508
  className: "border-t",
496
- values: "colors"
509
+ values: "colors",
510
+ transform: createColorMixTransform("borderTopColor")
497
511
  },
498
512
  borderBottom: {
499
513
  className: "border-b",
@@ -501,7 +515,8 @@ var border = {
501
515
  },
502
516
  borderBottomColor: {
503
517
  className: "border-b",
504
- values: "colors"
518
+ values: "colors",
519
+ transform: createColorMixTransform("borderBottomColor")
505
520
  },
506
521
  borderBlockEnd: {
507
522
  className: "border-be",
@@ -509,7 +524,8 @@ var border = {
509
524
  },
510
525
  borderBlockEndColor: {
511
526
  className: "border-be",
512
- values: "colors"
527
+ values: "colors",
528
+ transform: createColorMixTransform("borderBlockEndColor")
513
529
  },
514
530
  borderBlockStart: {
515
531
  className: "border-bs",
@@ -517,7 +533,21 @@ var border = {
517
533
  },
518
534
  borderBlockStartColor: {
519
535
  className: "border-bs",
520
- values: "colors"
536
+ values: "colors",
537
+ transform: createColorMixTransform("borderBlockStartColor")
538
+ }
539
+ };
540
+ var container = {
541
+ container: {
542
+ className: "cq"
543
+ },
544
+ containerName: {
545
+ className: "cq-name",
546
+ property: "containerName",
547
+ values: "containerNames"
548
+ },
549
+ containerType: {
550
+ className: "cq-type"
521
551
  }
522
552
  };
523
553
  var display = {
@@ -579,11 +609,9 @@ var divide = {
579
609
  divideColor: {
580
610
  className: "divide",
581
611
  values: "colors",
582
- transform(value) {
612
+ transform(value, args) {
583
613
  return {
584
- "& > :not([hidden]) ~ :not([hidden])": {
585
- borderColor: value
586
- }
614
+ "& > :not([hidden]) ~ :not([hidden])": divideColor(value, args)
587
615
  };
588
616
  }
589
617
  },
@@ -599,6 +627,7 @@ var divide = {
599
627
  }
600
628
  }
601
629
  };
630
+ var divideColor = createColorMixTransform("borderColor");
602
631
  var effects = {
603
632
  opacity: {
604
633
  values: "opacity"
@@ -612,11 +641,7 @@ var effects = {
612
641
  shorthand: "shadowColor",
613
642
  className: "shadow",
614
643
  values: "colors",
615
- transform(value) {
616
- return {
617
- "--shadow-color": value
618
- };
619
- }
644
+ transform: createColorMixTransform("--shadow-color")
620
645
  },
621
646
  mixBlendMode: {
622
647
  className: "mix-blend"
@@ -1042,11 +1067,13 @@ var helpers = {
1042
1067
  var interactivity = {
1043
1068
  accentColor: {
1044
1069
  className: "accent",
1045
- values: "colors"
1070
+ values: "colors",
1071
+ transform: createColorMixTransform("accentColor")
1046
1072
  },
1047
1073
  caretColor: {
1048
1074
  className: "caret",
1049
- values: "colors"
1075
+ values: "colors",
1076
+ transform: createColorMixTransform("caretColor")
1050
1077
  },
1051
1078
  scrollBehavior: {
1052
1079
  className: "scroll"
@@ -1419,7 +1446,8 @@ var outline = {
1419
1446
  outlineColor: {
1420
1447
  className: "ring",
1421
1448
  values: "colors",
1422
- shorthand: "ringColor"
1449
+ shorthand: "ringColor",
1450
+ transform: createColorMixTransform("outlineColor")
1423
1451
  },
1424
1452
  outline: {
1425
1453
  className: "ring",
@@ -1438,6 +1466,56 @@ var outline = {
1438
1466
  values: "spacing"
1439
1467
  }
1440
1468
  };
1469
+ var polyfill = {
1470
+ appearance: {
1471
+ className: "appearance",
1472
+ transform(value) {
1473
+ return { appearance: value, WebkitAppearance: value };
1474
+ }
1475
+ },
1476
+ backfaceVisibility: {
1477
+ className: "backface",
1478
+ transform(value) {
1479
+ return { backfaceVisibility: value, WebkitBackfaceVisibility: value };
1480
+ }
1481
+ },
1482
+ clipPath: {
1483
+ className: "clip-path",
1484
+ transform(value) {
1485
+ return { clipPath: value, WebkitClipPath: value };
1486
+ }
1487
+ },
1488
+ hyphens: {
1489
+ className: "hyphens",
1490
+ transform(value) {
1491
+ return { hyphens: value, WebkitHyphens: value };
1492
+ }
1493
+ },
1494
+ mask: {
1495
+ className: "mask",
1496
+ transform(value) {
1497
+ return { mask: value, WebkitMask: value };
1498
+ }
1499
+ },
1500
+ maskImage: {
1501
+ className: "mask-image",
1502
+ transform(value) {
1503
+ return { maskImage: value, WebkitMaskImage: value };
1504
+ }
1505
+ },
1506
+ maskSize: {
1507
+ className: "mask-size",
1508
+ transform(value) {
1509
+ return { maskSize: value, WebkitMaskSize: value };
1510
+ }
1511
+ },
1512
+ textSizeAdjust: {
1513
+ className: "text-size-adjust",
1514
+ transform(value) {
1515
+ return { textSizeAdjust: value, WebkitTextSizeAdjust: value };
1516
+ }
1517
+ }
1518
+ };
1441
1519
  var widthValues = (theme2) => ({
1442
1520
  auto: "auto",
1443
1521
  ...theme2("sizes"),
@@ -1663,11 +1741,13 @@ var spacing = {
1663
1741
  var svg = {
1664
1742
  fill: {
1665
1743
  className: "fill",
1666
- values: "colors"
1744
+ values: "colors",
1745
+ transform: createColorMixTransform("fill")
1667
1746
  },
1668
1747
  stroke: {
1669
1748
  className: "stroke",
1670
- values: "colors"
1749
+ values: "colors",
1750
+ transform: createColorMixTransform("stroke")
1671
1751
  },
1672
1752
  strokeWidth: {
1673
1753
  className: "stroke-w",
@@ -1855,7 +1935,8 @@ var transitions = {
1855
1935
  var typography = {
1856
1936
  color: {
1857
1937
  className: "text",
1858
- values: "colors"
1938
+ values: "colors",
1939
+ transform: createColorMixTransform("color")
1859
1940
  },
1860
1941
  fontFamily: {
1861
1942
  className: "font",
@@ -1900,11 +1981,13 @@ var typography = {
1900
1981
  },
1901
1982
  textDecorationColor: {
1902
1983
  className: "text-decor",
1903
- values: "colors"
1984
+ values: "colors",
1985
+ transform: createColorMixTransform("textDecorationColor")
1904
1986
  },
1905
1987
  textEmphasisColor: {
1906
1988
  className: "text-emphasis",
1907
- values: "colors"
1989
+ values: "colors",
1990
+ transform: createColorMixTransform("textEmphasisColor")
1908
1991
  },
1909
1992
  textDecorationStyle: {
1910
1993
  className: "decoration"
@@ -1972,56 +2055,6 @@ var typography = {
1972
2055
  }
1973
2056
  }
1974
2057
  };
1975
- var polyfill = {
1976
- appearance: {
1977
- className: "appearance",
1978
- transform(value) {
1979
- return { appearance: value, WebkitAppearance: value };
1980
- }
1981
- },
1982
- backfaceVisibility: {
1983
- className: "backface",
1984
- transform(value) {
1985
- return { backfaceVisibility: value, WebkitBackfaceVisibility: value };
1986
- }
1987
- },
1988
- clipPath: {
1989
- className: "clip-path",
1990
- transform(value) {
1991
- return { clipPath: value, WebkitClipPath: value };
1992
- }
1993
- },
1994
- hyphens: {
1995
- className: "hyphens",
1996
- transform(value) {
1997
- return { hyphens: value, WebkitHyphens: value };
1998
- }
1999
- },
2000
- mask: {
2001
- className: "mask",
2002
- transform(value) {
2003
- return { mask: value, WebkitMask: value };
2004
- }
2005
- },
2006
- maskImage: {
2007
- className: "mask-image",
2008
- transform(value) {
2009
- return { maskImage: value, WebkitMaskImage: value };
2010
- }
2011
- },
2012
- maskSize: {
2013
- className: "mask-size",
2014
- transform(value) {
2015
- return { maskSize: value, WebkitMaskSize: value };
2016
- }
2017
- },
2018
- textSizeAdjust: {
2019
- className: "text-size-adjust",
2020
- transform(value) {
2021
- return { textSizeAdjust: value, WebkitTextSizeAdjust: value };
2022
- }
2023
- }
2024
- };
2025
2058
  var utilities = Object.assign(
2026
2059
  {},
2027
2060
  layout,
@@ -2042,7 +2075,8 @@ var utilities = Object.assign(
2042
2075
  interactivity,
2043
2076
  svg,
2044
2077
  helpers,
2045
- polyfill
2078
+ polyfill,
2079
+ container
2046
2080
  );
2047
2081
  function definePattern(config2) {
2048
2082
  return config2;
@@ -2084,8 +2118,12 @@ var stack = definePattern({
2084
2118
  direction: { type: "property", value: "flexDirection" },
2085
2119
  gap: { type: "property", value: "gap" }
2086
2120
  },
2121
+ defaultValues: {
2122
+ direction: "column",
2123
+ gap: "10px"
2124
+ },
2087
2125
  transform(props) {
2088
- const { align, justify, direction = "column", gap = "10px", ...rest } = props;
2126
+ const { align, justify, direction, gap, ...rest } = props;
2089
2127
  return {
2090
2128
  display: "flex",
2091
2129
  flexDirection: direction,
@@ -2102,8 +2140,11 @@ var vstack = definePattern({
2102
2140
  justify: { type: "property", value: "justifyContent" },
2103
2141
  gap: { type: "property", value: "gap" }
2104
2142
  },
2143
+ defaultValues: {
2144
+ gap: "10px"
2145
+ },
2105
2146
  transform(props) {
2106
- const { justify, gap = "10px", ...rest } = props;
2147
+ const { justify, gap, ...rest } = props;
2107
2148
  return {
2108
2149
  display: "flex",
2109
2150
  alignItems: "center",
@@ -2120,8 +2161,11 @@ var hstack = definePattern({
2120
2161
  justify: { type: "property", value: "justifyContent" },
2121
2162
  gap: { type: "property", value: "gap" }
2122
2163
  },
2164
+ defaultValues: {
2165
+ gap: "10px"
2166
+ },
2123
2167
  transform(props) {
2124
- const { justify, gap = "10px", ...rest } = props;
2168
+ const { justify, gap, ...rest } = props;
2125
2169
  return {
2126
2170
  display: "flex",
2127
2171
  alignItems: "center",
@@ -2189,10 +2233,12 @@ var grid = definePattern({
2189
2233
  columns: { type: "number" },
2190
2234
  minChildWidth: { type: "token", value: "sizes", property: "width" }
2191
2235
  },
2192
- transform(props, { map }) {
2193
- const regex = /\d+(cm|in|pt|em|px|rem|vh|vmax|vmin|vw|ch|lh|%)$/;
2194
- const { columnGap, rowGap, gap = columnGap || rowGap ? void 0 : "10px", columns, minChildWidth, ...rest } = props;
2195
- const getValue = (v) => regex.test(v) ? v : `token(sizes.${v}, ${v})`;
2236
+ defaultValues(props) {
2237
+ return { gap: props.columnGap || props.rowGap ? void 0 : "10px" };
2238
+ },
2239
+ transform(props, { map, isCssUnit }) {
2240
+ const { columnGap, rowGap, gap, columns, minChildWidth, ...rest } = props;
2241
+ const getValue = (v) => isCssUnit(v) ? v : `token(sizes.${v}, ${v})`;
2196
2242
  return {
2197
2243
  display: "grid",
2198
2244
  gridTemplateColumns: columns != null ? map(columns, (v) => `repeat(${v}, minmax(0, 1fr))`) : minChildWidth != null ? map(minChildWidth, (v) => `repeat(auto-fit, minmax(${getValue(v)}, 1fr))`) : void 0,
@@ -2248,7 +2294,7 @@ var wrap = definePattern({
2248
2294
  };
2249
2295
  }
2250
2296
  });
2251
- var container = definePattern({
2297
+ var container2 = definePattern({
2252
2298
  transform(props) {
2253
2299
  return {
2254
2300
  position: "relative",
@@ -2311,8 +2357,12 @@ var divider = definePattern({
2311
2357
  thickness: { type: "token", value: "sizes", property: "borderWidth" },
2312
2358
  color: { type: "token", value: "colors", property: "borderColor" }
2313
2359
  },
2360
+ defaultValues: {
2361
+ orientation: "horizontal",
2362
+ thickness: "1px"
2363
+ },
2314
2364
  transform(props, { map }) {
2315
- const { orientation = "horizontal", thickness = "1px", color, ...rest } = props;
2365
+ const { orientation, thickness, color, ...rest } = props;
2316
2366
  return {
2317
2367
  "--thickness": thickness,
2318
2368
  width: map(orientation, (v) => v === "vertical" ? void 0 : "100%"),
@@ -2374,8 +2424,12 @@ var float = definePattern({
2374
2424
  ]
2375
2425
  }
2376
2426
  },
2427
+ defaultValues(props) {
2428
+ const offset = props.offset || "0";
2429
+ return { offset, offsetX: offset, offsetY: offset, placement: "top-end" };
2430
+ },
2377
2431
  transform(props, { map }) {
2378
- const { offset = "0", offsetX = offset, offsetY = offset, placement = "top-end", ...rest } = props;
2432
+ const { offset, offsetX, offsetY, placement, ...rest } = props;
2379
2433
  return {
2380
2434
  display: "inline-flex",
2381
2435
  justifyContent: "center",
@@ -2416,11 +2470,16 @@ var bleed = definePattern({
2416
2470
  inline: { type: "property", value: "marginInline" },
2417
2471
  block: { type: "property", value: "marginBlock" }
2418
2472
  },
2419
- transform(props) {
2420
- const { inline = "0", block = "0", ...rest } = props;
2473
+ defaultValues: {
2474
+ inline: "0",
2475
+ block: "0"
2476
+ },
2477
+ transform(props, { map, isCssUnit, isCssVar }) {
2478
+ const { inline, block, ...rest } = props;
2479
+ const valueFn = (v) => isCssUnit(v) || isCssVar(v) ? v : `token(spacing.${v}, ${v})`;
2421
2480
  return {
2422
- "--bleed-x": `spacing.${inline}`,
2423
- "--bleed-y": `spacing.${block}`,
2481
+ "--bleed-x": map(inline, valueFn),
2482
+ "--bleed-y": map(block, valueFn),
2424
2483
  marginInline: "calc(var(--bleed-x, 0) * -1)",
2425
2484
  marginBlock: "calc(var(--bleed-y, 0) * -1)",
2426
2485
  ...rest
@@ -2435,6 +2494,23 @@ var visuallyHidden = definePattern({
2435
2494
  };
2436
2495
  }
2437
2496
  });
2497
+ var cq = definePattern({
2498
+ properties: {
2499
+ name: { type: "token", value: "containerNames", property: "containerName" },
2500
+ type: { type: "property", value: "containerType" }
2501
+ },
2502
+ defaultValues: {
2503
+ type: "inline-size"
2504
+ },
2505
+ transform(props) {
2506
+ const { name, type, ...rest } = props;
2507
+ return {
2508
+ containerType: type,
2509
+ containerName: name,
2510
+ ...rest
2511
+ };
2512
+ }
2513
+ });
2438
2514
  var patterns = {
2439
2515
  box,
2440
2516
  flex,
@@ -2451,11 +2527,12 @@ var patterns = {
2451
2527
  grid,
2452
2528
  gridItem,
2453
2529
  wrap,
2454
- container,
2530
+ container: container2,
2455
2531
  divider,
2456
2532
  float,
2457
2533
  bleed,
2458
- visuallyHidden
2534
+ visuallyHidden,
2535
+ cq
2459
2536
  };
2460
2537
  var definePreset = (preset22) => preset22;
2461
2538
  var preset = definePreset({
@@ -2465,7 +2542,7 @@ var preset = definePreset({
2465
2542
  });
2466
2543
  var src_default = preset;
2467
2544
 
2468
- // ../node_modules/.pnpm/@pandacss+preset-panda@0.28.0/node_modules/@pandacss/preset-panda/dist/index.mjs
2545
+ // ../node_modules/.pnpm/@pandacss+preset-panda@0.30.1/node_modules/@pandacss/preset-panda/dist/index.mjs
2469
2546
  var breakpoints = {
2470
2547
  sm: "640px",
2471
2548
  md: "768px",
@@ -2473,6 +2550,20 @@ var breakpoints = {
2473
2550
  xl: "1280px",
2474
2551
  "2xl": "1536px"
2475
2552
  };
2553
+ var containerSizes = {
2554
+ xs: "320px",
2555
+ sm: "384px",
2556
+ md: "448px",
2557
+ lg: "512px",
2558
+ xl: "576px",
2559
+ "2xl": "672px",
2560
+ "3xl": "768px",
2561
+ "4xl": "896px",
2562
+ "5xl": "1024px",
2563
+ "6xl": "1152px",
2564
+ "7xl": "1280px",
2565
+ "8xl": "1440px"
2566
+ };
2476
2567
  var keyframes = {
2477
2568
  spin: {
2478
2569
  to: {
@@ -3092,7 +3183,8 @@ var preset2 = definePreset2({
3092
3183
  keyframes,
3093
3184
  breakpoints,
3094
3185
  tokens,
3095
- textStyles
3186
+ textStyles,
3187
+ containerSizes
3096
3188
  }
3097
3189
  });
3098
3190
  var src_default2 = preset2;
@@ -3390,6 +3482,7 @@ var createContext = (userConfig) => {
3390
3482
  var import_ts_path = require("@pandacss/config/ts-path");
3391
3483
  var import_config3 = require("@pandacss/config");
3392
3484
  var import_path = __toESM(require("path"));
3485
+ var import_fs = __toESM(require("fs"));
3393
3486
  var promise;
3394
3487
  var configPath;
3395
3488
  async function _getContext(configPath2) {
@@ -3401,6 +3494,7 @@ async function _getContext(configPath2) {
3401
3494
  }
3402
3495
  async function getContext(opts) {
3403
3496
  if (process.env.NODE_ENV === "test") {
3497
+ configPath = opts.configPath;
3404
3498
  const ctx = createContext({ importMap: "./panda" });
3405
3499
  ctx.getFiles = () => ["App.tsx"];
3406
3500
  return ctx;
@@ -3410,11 +3504,32 @@ async function getContext(opts) {
3410
3504
  return await promise;
3411
3505
  }
3412
3506
  }
3413
- async function filterInvalidTokenz(ctx, paths) {
3414
- return paths.filter((path2) => !ctx.utility.tokens.get(path2));
3507
+ async function getExtendWarnings() {
3508
+ if (!configPath)
3509
+ return [];
3510
+ const cwd = import_path.default.dirname(configPath);
3511
+ const { config: config2 } = await (0, import_config3.bundleConfig)({ cwd, file: configPath });
3512
+ if (!config2.presets || config2.presets.length === 0)
3513
+ return [];
3514
+ if (config2.eject)
3515
+ return [];
3516
+ const warnings = /* @__PURE__ */ new Set();
3517
+ if (config2.theme && !config2.theme.extend) {
3518
+ warnings.add("theme");
3519
+ }
3520
+ if (config2.conditions && !config2.conditions.extend) {
3521
+ warnings.add("conditions");
3522
+ }
3523
+ if (config2.patterns && !config2.patterns.extend) {
3524
+ warnings.add("patterns");
3525
+ }
3526
+ return Array.from(warnings);
3527
+ }
3528
+ async function filterInvalidTokens(ctx, paths) {
3529
+ return paths.filter((path2) => !ctx.utility.tokens.view.get(path2));
3415
3530
  }
3416
3531
  async function isColorToken(ctx, value) {
3417
- return !!ctx.utility.tokens.values.get("colors")?.get(value);
3532
+ return !!ctx.utility.tokens.view.categoryMap.get("colors")?.get(value);
3418
3533
  }
3419
3534
  async function isColorAttribute(ctx, _attr) {
3420
3535
  const longhand = await resolveLongHand(ctx, _attr);
@@ -3422,6 +3537,14 @@ async function isColorAttribute(ctx, _attr) {
3422
3537
  const attrConfig = ctx.utility.config[attr];
3423
3538
  return attrConfig?.values === "colors";
3424
3539
  }
3540
+ var arePathsEqual = (path1, path2) => {
3541
+ const stats1 = import_fs.default.statSync(path1);
3542
+ const stats2 = import_fs.default.statSync(path2);
3543
+ return stats1.dev === stats2.dev && stats1.ino === stats2.ino;
3544
+ };
3545
+ async function isConfigFile(fileName) {
3546
+ return arePathsEqual(configPath, fileName);
3547
+ }
3425
3548
  async function isValidFile(ctx, fileName) {
3426
3549
  return ctx.getFiles().includes(fileName);
3427
3550
  }
@@ -3437,8 +3560,15 @@ async function resolveLongHand(ctx, name) {
3437
3560
  }
3438
3561
  return reverseShorthandsMap.get(name);
3439
3562
  }
3440
- async function isValidProperty(ctx, name) {
3441
- return ctx.isValidProperty(name);
3563
+ async function isValidProperty(ctx, name, patternName) {
3564
+ if (ctx.isValidProperty(name))
3565
+ return true;
3566
+ if (!patternName)
3567
+ return;
3568
+ const pattern = ctx.patterns.details.find((p) => p.baseName === patternName || p.jsx.includes(patternName))?.config.properties;
3569
+ if (!pattern)
3570
+ return;
3571
+ return Object.keys(pattern).includes(name);
3442
3572
  }
3443
3573
  async function matchFile(ctx, name, imports) {
3444
3574
  const file = ctx.imports.file(imports);
@@ -3465,14 +3595,18 @@ async function runAsync(action, opts, ...args) {
3465
3595
  return resolveLongHand(ctx, ...args);
3466
3596
  case "resolveShorthand":
3467
3597
  return resolveShorthand(ctx, ...args);
3598
+ case "isConfigFile":
3599
+ return isConfigFile(opts.currentFile);
3468
3600
  case "isValidFile":
3469
3601
  return isValidFile(ctx, opts.currentFile);
3470
3602
  case "isColorAttribute":
3471
3603
  return isColorAttribute(ctx, ...args);
3472
3604
  case "isColorToken":
3473
3605
  return isColorToken(ctx, ...args);
3474
- case "filterInvalidTokenz":
3475
- return filterInvalidTokenz(ctx, ...args);
3606
+ case "filterInvalidTokens":
3607
+ return filterInvalidTokens(ctx, ...args);
3608
+ case "getExtendWarnings":
3609
+ return getExtendWarnings();
3476
3610
  }
3477
3611
  }
3478
3612
  function run(action, opts, ...args) {