tailwindcss 3.3.1 → 3.3.3

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 (148) hide show
  1. package/CHANGELOG.md +47 -6
  2. package/lib/cli/build/deps.js +17 -9
  3. package/lib/cli/build/index.js +10 -8
  4. package/lib/cli/build/plugin.js +29 -27
  5. package/lib/cli/build/utils.js +18 -8
  6. package/lib/cli/build/watching.js +12 -10
  7. package/lib/cli/help/index.js +6 -4
  8. package/lib/cli/index.js +4 -4
  9. package/lib/cli/init/index.js +8 -6
  10. package/lib/cli-peer-dependencies.js +12 -4
  11. package/lib/cli.js +1 -1
  12. package/lib/corePluginList.js +3 -1
  13. package/lib/corePlugins.js +52 -42
  14. package/lib/css/preflight.css +9 -0
  15. package/lib/featureFlags.js +14 -9
  16. package/lib/index.js +1 -5
  17. package/lib/lib/cacheInvalidation.js +7 -5
  18. package/lib/lib/collapseAdjacentRules.js +3 -1
  19. package/lib/lib/collapseDuplicateDeclarations.js +10 -8
  20. package/lib/lib/content.js +18 -14
  21. package/lib/lib/defaultExtractor.js +6 -4
  22. package/lib/lib/detectNesting.js +3 -1
  23. package/lib/lib/evaluateTailwindFunctions.js +20 -16
  24. package/lib/lib/expandApplyAtRules.js +37 -40
  25. package/lib/lib/expandTailwindAtRules.js +19 -17
  26. package/lib/lib/findAtConfigPath.js +6 -4
  27. package/lib/lib/generateRules.js +52 -38
  28. package/lib/lib/getModuleDependencies.js +10 -8
  29. package/lib/lib/load-config.js +5 -3
  30. package/lib/lib/normalizeTailwindDirectives.js +5 -3
  31. package/lib/lib/offsets.js +7 -5
  32. package/lib/lib/partitionApplyAtRules.js +3 -1
  33. package/lib/lib/regex.js +21 -7
  34. package/lib/lib/remap-bitfield.js +3 -1
  35. package/lib/lib/resolveDefaultsAtRules.js +24 -20
  36. package/lib/lib/setupContextUtils.js +91 -63
  37. package/lib/lib/setupTrackingContext.js +27 -24
  38. package/lib/lib/sharedState.js +28 -24
  39. package/lib/lib/substituteScreenAtRules.js +5 -3
  40. package/lib/oxide/cli/build/deps.js +16 -8
  41. package/lib/oxide/cli/build/index.js +6 -4
  42. package/lib/oxide/cli/build/plugin.js +19 -17
  43. package/lib/oxide/cli/build/utils.js +18 -8
  44. package/lib/oxide/cli/build/watching.js +10 -8
  45. package/lib/oxide/cli/help/index.js +6 -4
  46. package/lib/oxide/cli/index.js +4 -4
  47. package/lib/oxide/cli/init/index.js +6 -4
  48. package/lib/plugin.js +9 -9
  49. package/lib/postcss-plugins/nesting/index.js +3 -1
  50. package/lib/postcss-plugins/nesting/plugin.js +8 -6
  51. package/lib/processTailwindFeatures.js +16 -14
  52. package/lib/public/colors.js +5 -3
  53. package/lib/public/create-plugin.js +5 -3
  54. package/lib/public/default-config.js +6 -4
  55. package/lib/public/default-theme.js +6 -4
  56. package/lib/public/load-config.js +5 -3
  57. package/lib/public/resolve-config.js +6 -4
  58. package/lib/util/applyImportantSelector.js +9 -10
  59. package/lib/util/bigSign.js +3 -1
  60. package/lib/util/buildMediaQuery.js +3 -1
  61. package/lib/util/cloneDeep.js +3 -1
  62. package/lib/util/cloneNodes.js +3 -1
  63. package/lib/util/color.js +10 -6
  64. package/lib/util/colorNames.js +752 -0
  65. package/lib/util/configurePlugins.js +3 -1
  66. package/lib/util/createPlugin.js +3 -1
  67. package/lib/util/createUtilityPlugin.js +5 -3
  68. package/lib/util/dataTypes.js +59 -21
  69. package/lib/util/defaults.js +6 -4
  70. package/lib/util/escapeClassName.js +7 -5
  71. package/lib/util/escapeCommas.js +3 -1
  72. package/lib/util/flattenColorPalette.js +3 -1
  73. package/lib/util/formatVariantSelector.js +30 -110
  74. package/lib/util/getAllConfigs.js +6 -4
  75. package/lib/util/hashConfig.js +6 -4
  76. package/lib/util/isKeyframeRule.js +3 -1
  77. package/lib/util/isPlainObject.js +3 -1
  78. package/lib/util/isSyntacticallyValidPropertyValue.js +3 -1
  79. package/lib/util/log.js +8 -4
  80. package/lib/util/nameClass.js +12 -6
  81. package/lib/util/negateValue.js +3 -1
  82. package/lib/util/normalizeConfig.js +7 -5
  83. package/lib/util/normalizeScreens.js +12 -4
  84. package/lib/util/parseAnimationValue.js +3 -1
  85. package/lib/util/parseBoxShadowValue.js +6 -2
  86. package/lib/util/parseDependency.js +3 -1
  87. package/lib/util/parseGlob.js +6 -4
  88. package/lib/util/parseObjectStyles.js +9 -7
  89. package/lib/util/pluginUtils.js +30 -18
  90. package/lib/util/prefixSelector.js +6 -4
  91. package/lib/util/pseudoElements.js +209 -0
  92. package/lib/util/removeAlphaVariables.js +3 -1
  93. package/lib/util/resolveConfig.js +10 -8
  94. package/lib/util/resolveConfigPath.js +9 -5
  95. package/lib/util/responsive.js +6 -4
  96. package/lib/util/splitAtTopLevelOnly.js +3 -1
  97. package/lib/util/tap.js +3 -1
  98. package/lib/util/toColorValue.js +3 -1
  99. package/lib/util/toPath.js +3 -1
  100. package/lib/util/transformThemeValue.js +6 -4
  101. package/lib/util/validateConfig.js +5 -3
  102. package/lib/util/validateFormalSyntax.js +3 -1
  103. package/lib/util/withAlphaVariable.js +6 -2
  104. package/lib/value-parser/LICENSE +22 -0
  105. package/lib/value-parser/README.md +3 -0
  106. package/lib/value-parser/index.d.js +2 -0
  107. package/lib/value-parser/index.js +22 -0
  108. package/lib/value-parser/parse.js +259 -0
  109. package/lib/value-parser/stringify.js +38 -0
  110. package/lib/value-parser/unit.js +86 -0
  111. package/lib/value-parser/walk.js +16 -0
  112. package/package.json +30 -35
  113. package/peers/index.js +65828 -48819
  114. package/src/cli/build/plugin.js +3 -3
  115. package/src/cli.js +1 -1
  116. package/src/corePlugins.js +29 -24
  117. package/src/css/preflight.css +9 -0
  118. package/src/featureFlags.js +2 -3
  119. package/src/index.js +1 -5
  120. package/src/lib/defaultExtractor.js +1 -1
  121. package/src/lib/evaluateTailwindFunctions.js +4 -1
  122. package/src/lib/expandApplyAtRules.js +2 -8
  123. package/src/lib/expandTailwindAtRules.js +12 -10
  124. package/src/lib/generateRules.js +15 -8
  125. package/src/lib/setupContextUtils.js +18 -5
  126. package/src/lib/setupTrackingContext.js +2 -4
  127. package/src/lib/sharedState.js +0 -15
  128. package/src/oxide/cli/build/plugin.ts +1 -1
  129. package/src/plugin.js +4 -4
  130. package/src/processTailwindFeatures.js +3 -2
  131. package/src/util/applyImportantSelector.js +2 -5
  132. package/src/util/color.js +1 -1
  133. package/src/util/colorNames.js +150 -0
  134. package/src/util/dataTypes.js +17 -6
  135. package/src/util/formatVariantSelector.js +4 -126
  136. package/src/util/pluginUtils.js +1 -5
  137. package/src/util/prefixSelector.js +1 -0
  138. package/src/util/pseudoElements.js +167 -0
  139. package/src/value-parser/LICENSE +22 -0
  140. package/src/value-parser/README.md +3 -0
  141. package/src/value-parser/index.d.ts +177 -0
  142. package/src/value-parser/index.js +28 -0
  143. package/src/value-parser/parse.js +303 -0
  144. package/src/value-parser/stringify.js +41 -0
  145. package/src/value-parser/unit.js +118 -0
  146. package/src/value-parser/walk.js +18 -0
  147. package/stubs/config.full.js +1 -0
  148. package/types/generated/default-theme.d.ts +1 -0
@@ -0,0 +1,259 @@
1
+ "use strict";
2
+ var openParentheses = "(".charCodeAt(0);
3
+ var closeParentheses = ")".charCodeAt(0);
4
+ var singleQuote = "'".charCodeAt(0);
5
+ var doubleQuote = '"'.charCodeAt(0);
6
+ var backslash = "\\".charCodeAt(0);
7
+ var slash = "/".charCodeAt(0);
8
+ var comma = ",".charCodeAt(0);
9
+ var colon = ":".charCodeAt(0);
10
+ var star = "*".charCodeAt(0);
11
+ var uLower = "u".charCodeAt(0);
12
+ var uUpper = "U".charCodeAt(0);
13
+ var plus = "+".charCodeAt(0);
14
+ var isUnicodeRange = /^[a-f0-9?-]+$/i;
15
+ module.exports = function(input) {
16
+ var tokens = [];
17
+ var value = input;
18
+ var next, quote, prev, token, escape, escapePos, whitespacePos, parenthesesOpenPos;
19
+ var pos = 0;
20
+ var code = value.charCodeAt(pos);
21
+ var max = value.length;
22
+ var stack = [
23
+ {
24
+ nodes: tokens
25
+ }
26
+ ];
27
+ var balanced = 0;
28
+ var parent;
29
+ var name = "";
30
+ var before = "";
31
+ var after = "";
32
+ while(pos < max){
33
+ // Whitespaces
34
+ if (code <= 32) {
35
+ next = pos;
36
+ do {
37
+ next += 1;
38
+ code = value.charCodeAt(next);
39
+ }while (code <= 32);
40
+ token = value.slice(pos, next);
41
+ prev = tokens[tokens.length - 1];
42
+ if (code === closeParentheses && balanced) {
43
+ after = token;
44
+ } else if (prev && prev.type === "div") {
45
+ prev.after = token;
46
+ prev.sourceEndIndex += token.length;
47
+ } else if (code === comma || code === colon || code === slash && value.charCodeAt(next + 1) !== star && (!parent || parent && parent.type === "function" && false)) {
48
+ before = token;
49
+ } else {
50
+ tokens.push({
51
+ type: "space",
52
+ sourceIndex: pos,
53
+ sourceEndIndex: next,
54
+ value: token
55
+ });
56
+ }
57
+ pos = next;
58
+ // Quotes
59
+ } else if (code === singleQuote || code === doubleQuote) {
60
+ next = pos;
61
+ quote = code === singleQuote ? "'" : '"';
62
+ token = {
63
+ type: "string",
64
+ sourceIndex: pos,
65
+ quote: quote
66
+ };
67
+ do {
68
+ escape = false;
69
+ next = value.indexOf(quote, next + 1);
70
+ if (~next) {
71
+ escapePos = next;
72
+ while(value.charCodeAt(escapePos - 1) === backslash){
73
+ escapePos -= 1;
74
+ escape = !escape;
75
+ }
76
+ } else {
77
+ value += quote;
78
+ next = value.length - 1;
79
+ token.unclosed = true;
80
+ }
81
+ }while (escape);
82
+ token.value = value.slice(pos + 1, next);
83
+ token.sourceEndIndex = token.unclosed ? next : next + 1;
84
+ tokens.push(token);
85
+ pos = next + 1;
86
+ code = value.charCodeAt(pos);
87
+ // Comments
88
+ } else if (code === slash && value.charCodeAt(pos + 1) === star) {
89
+ next = value.indexOf("*/", pos);
90
+ token = {
91
+ type: "comment",
92
+ sourceIndex: pos,
93
+ sourceEndIndex: next + 2
94
+ };
95
+ if (next === -1) {
96
+ token.unclosed = true;
97
+ next = value.length;
98
+ token.sourceEndIndex = next;
99
+ }
100
+ token.value = value.slice(pos + 2, next);
101
+ tokens.push(token);
102
+ pos = next + 2;
103
+ code = value.charCodeAt(pos);
104
+ // Operation within calc
105
+ } else if ((code === slash || code === star) && parent && parent.type === "function" && true) {
106
+ token = value[pos];
107
+ tokens.push({
108
+ type: "word",
109
+ sourceIndex: pos - before.length,
110
+ sourceEndIndex: pos + token.length,
111
+ value: token
112
+ });
113
+ pos += 1;
114
+ code = value.charCodeAt(pos);
115
+ // Dividers
116
+ } else if (code === slash || code === comma || code === colon) {
117
+ token = value[pos];
118
+ tokens.push({
119
+ type: "div",
120
+ sourceIndex: pos - before.length,
121
+ sourceEndIndex: pos + token.length,
122
+ value: token,
123
+ before: before,
124
+ after: ""
125
+ });
126
+ before = "";
127
+ pos += 1;
128
+ code = value.charCodeAt(pos);
129
+ // Open parentheses
130
+ } else if (openParentheses === code) {
131
+ // Whitespaces after open parentheses
132
+ next = pos;
133
+ do {
134
+ next += 1;
135
+ code = value.charCodeAt(next);
136
+ }while (code <= 32);
137
+ parenthesesOpenPos = pos;
138
+ token = {
139
+ type: "function",
140
+ sourceIndex: pos - name.length,
141
+ value: name,
142
+ before: value.slice(parenthesesOpenPos + 1, next)
143
+ };
144
+ pos = next;
145
+ if (name === "url" && code !== singleQuote && code !== doubleQuote) {
146
+ next -= 1;
147
+ do {
148
+ escape = false;
149
+ next = value.indexOf(")", next + 1);
150
+ if (~next) {
151
+ escapePos = next;
152
+ while(value.charCodeAt(escapePos - 1) === backslash){
153
+ escapePos -= 1;
154
+ escape = !escape;
155
+ }
156
+ } else {
157
+ value += ")";
158
+ next = value.length - 1;
159
+ token.unclosed = true;
160
+ }
161
+ }while (escape);
162
+ // Whitespaces before closed
163
+ whitespacePos = next;
164
+ do {
165
+ whitespacePos -= 1;
166
+ code = value.charCodeAt(whitespacePos);
167
+ }while (code <= 32);
168
+ if (parenthesesOpenPos < whitespacePos) {
169
+ if (pos !== whitespacePos + 1) {
170
+ token.nodes = [
171
+ {
172
+ type: "word",
173
+ sourceIndex: pos,
174
+ sourceEndIndex: whitespacePos + 1,
175
+ value: value.slice(pos, whitespacePos + 1)
176
+ }
177
+ ];
178
+ } else {
179
+ token.nodes = [];
180
+ }
181
+ if (token.unclosed && whitespacePos + 1 !== next) {
182
+ token.after = "";
183
+ token.nodes.push({
184
+ type: "space",
185
+ sourceIndex: whitespacePos + 1,
186
+ sourceEndIndex: next,
187
+ value: value.slice(whitespacePos + 1, next)
188
+ });
189
+ } else {
190
+ token.after = value.slice(whitespacePos + 1, next);
191
+ token.sourceEndIndex = next;
192
+ }
193
+ } else {
194
+ token.after = "";
195
+ token.nodes = [];
196
+ }
197
+ pos = next + 1;
198
+ token.sourceEndIndex = token.unclosed ? next : pos;
199
+ code = value.charCodeAt(pos);
200
+ tokens.push(token);
201
+ } else {
202
+ balanced += 1;
203
+ token.after = "";
204
+ token.sourceEndIndex = pos + 1;
205
+ tokens.push(token);
206
+ stack.push(token);
207
+ tokens = token.nodes = [];
208
+ parent = token;
209
+ }
210
+ name = "";
211
+ // Close parentheses
212
+ } else if (closeParentheses === code && balanced) {
213
+ pos += 1;
214
+ code = value.charCodeAt(pos);
215
+ parent.after = after;
216
+ parent.sourceEndIndex += after.length;
217
+ after = "";
218
+ balanced -= 1;
219
+ stack[stack.length - 1].sourceEndIndex = pos;
220
+ stack.pop();
221
+ parent = stack[balanced];
222
+ tokens = parent.nodes;
223
+ // Words
224
+ } else {
225
+ next = pos;
226
+ do {
227
+ if (code === backslash) {
228
+ next += 1;
229
+ }
230
+ next += 1;
231
+ code = value.charCodeAt(next);
232
+ }while (next < max && !(code <= 32 || code === singleQuote || code === doubleQuote || code === comma || code === colon || code === slash || code === openParentheses || code === star && parent && parent.type === "function" && true || code === slash && parent.type === "function" && true || code === closeParentheses && balanced));
233
+ token = value.slice(pos, next);
234
+ if (openParentheses === code) {
235
+ name = token;
236
+ } else if ((uLower === token.charCodeAt(0) || uUpper === token.charCodeAt(0)) && plus === token.charCodeAt(1) && isUnicodeRange.test(token.slice(2))) {
237
+ tokens.push({
238
+ type: "unicode-range",
239
+ sourceIndex: pos,
240
+ sourceEndIndex: next,
241
+ value: token
242
+ });
243
+ } else {
244
+ tokens.push({
245
+ type: "word",
246
+ sourceIndex: pos,
247
+ sourceEndIndex: next,
248
+ value: token
249
+ });
250
+ }
251
+ pos = next;
252
+ }
253
+ }
254
+ for(pos = stack.length - 1; pos; pos -= 1){
255
+ stack[pos].unclosed = true;
256
+ stack[pos].sourceEndIndex = value.length;
257
+ }
258
+ return stack[0].nodes;
259
+ };
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ function stringifyNode(node, custom) {
3
+ var type = node.type;
4
+ var value = node.value;
5
+ var buf;
6
+ var customResult;
7
+ if (custom && (customResult = custom(node)) !== undefined) {
8
+ return customResult;
9
+ } else if (type === "word" || type === "space") {
10
+ return value;
11
+ } else if (type === "string") {
12
+ buf = node.quote || "";
13
+ return buf + value + (node.unclosed ? "" : buf);
14
+ } else if (type === "comment") {
15
+ return "/*" + value + (node.unclosed ? "" : "*/");
16
+ } else if (type === "div") {
17
+ return (node.before || "") + value + (node.after || "");
18
+ } else if (Array.isArray(node.nodes)) {
19
+ buf = stringify(node.nodes, custom);
20
+ if (type !== "function") {
21
+ return buf;
22
+ }
23
+ return value + "(" + (node.before || "") + buf + (node.after || "") + (node.unclosed ? "" : ")");
24
+ }
25
+ return value;
26
+ }
27
+ function stringify(nodes, custom) {
28
+ var result, i;
29
+ if (Array.isArray(nodes)) {
30
+ result = "";
31
+ for(i = nodes.length - 1; ~i; i -= 1){
32
+ result = stringifyNode(nodes[i], custom) + result;
33
+ }
34
+ return result;
35
+ }
36
+ return stringifyNode(nodes, custom);
37
+ }
38
+ module.exports = stringify;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var minus = "-".charCodeAt(0);
3
+ var plus = "+".charCodeAt(0);
4
+ var dot = ".".charCodeAt(0);
5
+ var exp = "e".charCodeAt(0);
6
+ var EXP = "E".charCodeAt(0);
7
+ // Check if three code points would start a number
8
+ // https://www.w3.org/TR/css-syntax-3/#starts-with-a-number
9
+ function likeNumber(value) {
10
+ var code = value.charCodeAt(0);
11
+ var nextCode;
12
+ if (code === plus || code === minus) {
13
+ nextCode = value.charCodeAt(1);
14
+ if (nextCode >= 48 && nextCode <= 57) {
15
+ return true;
16
+ }
17
+ var nextNextCode = value.charCodeAt(2);
18
+ if (nextCode === dot && nextNextCode >= 48 && nextNextCode <= 57) {
19
+ return true;
20
+ }
21
+ return false;
22
+ }
23
+ if (code === dot) {
24
+ nextCode = value.charCodeAt(1);
25
+ if (nextCode >= 48 && nextCode <= 57) {
26
+ return true;
27
+ }
28
+ return false;
29
+ }
30
+ if (code >= 48 && code <= 57) {
31
+ return true;
32
+ }
33
+ return false;
34
+ }
35
+ // Consume a number
36
+ // https://www.w3.org/TR/css-syntax-3/#consume-number
37
+ module.exports = function(value) {
38
+ var pos = 0;
39
+ var length = value.length;
40
+ var code;
41
+ var nextCode;
42
+ var nextNextCode;
43
+ if (length === 0 || !likeNumber(value)) {
44
+ return false;
45
+ }
46
+ code = value.charCodeAt(pos);
47
+ if (code === plus || code === minus) {
48
+ pos++;
49
+ }
50
+ while(pos < length){
51
+ code = value.charCodeAt(pos);
52
+ if (code < 48 || code > 57) {
53
+ break;
54
+ }
55
+ pos += 1;
56
+ }
57
+ code = value.charCodeAt(pos);
58
+ nextCode = value.charCodeAt(pos + 1);
59
+ if (code === dot && nextCode >= 48 && nextCode <= 57) {
60
+ pos += 2;
61
+ while(pos < length){
62
+ code = value.charCodeAt(pos);
63
+ if (code < 48 || code > 57) {
64
+ break;
65
+ }
66
+ pos += 1;
67
+ }
68
+ }
69
+ code = value.charCodeAt(pos);
70
+ nextCode = value.charCodeAt(pos + 1);
71
+ nextNextCode = value.charCodeAt(pos + 2);
72
+ if ((code === exp || code === EXP) && (nextCode >= 48 && nextCode <= 57 || (nextCode === plus || nextCode === minus) && nextNextCode >= 48 && nextNextCode <= 57)) {
73
+ pos += nextCode === plus || nextCode === minus ? 3 : 2;
74
+ while(pos < length){
75
+ code = value.charCodeAt(pos);
76
+ if (code < 48 || code > 57) {
77
+ break;
78
+ }
79
+ pos += 1;
80
+ }
81
+ }
82
+ return {
83
+ number: value.slice(0, pos),
84
+ unit: value.slice(pos)
85
+ };
86
+ };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ module.exports = function walk(nodes, cb, bubble) {
3
+ var i, max, node, result;
4
+ for(i = 0, max = nodes.length; i < max; i += 1){
5
+ node = nodes[i];
6
+ if (!bubble) {
7
+ result = cb(node, i, nodes);
8
+ }
9
+ if (result !== false && node.type === "function" && Array.isArray(node.nodes)) {
10
+ walk(node.nodes, cb, bubble);
11
+ }
12
+ if (bubble) {
13
+ cb(node, i, nodes);
14
+ }
15
+ }
16
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tailwindcss",
3
- "version": "3.3.1",
3
+ "version": "3.3.3",
4
4
  "description": "A utility-first CSS framework for rapidly building custom user interfaces.",
5
5
  "license": "MIT",
6
6
  "main": "lib/index.js",
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "scripts": {
19
19
  "prebuild": "npm run generate && rimraf lib",
20
- "build": "swc src --out-dir lib --copy-files",
20
+ "build": "swc src --out-dir lib --copy-files --config jsc.transform.optimizer.globals.vars.__OXIDE__='\"false\"'",
21
21
  "postbuild": "esbuild lib/cli-peer-dependencies.js --bundle --platform=node --outfile=peers/index.js --define:process.env.CSS_TRANSFORMER_WASM=false",
22
22
  "rebuild-fixtures": "npm run build && node -r @swc/register scripts/rebuildFixtures.js",
23
23
  "style": "eslint .",
@@ -46,54 +46,49 @@
46
46
  "*.js"
47
47
  ],
48
48
  "devDependencies": {
49
- "@swc/cli": "0.1.59",
50
- "@swc/core": "1.3.24",
51
- "@swc/jest": "0.2.24",
52
- "@swc/register": "0.1.10",
53
- "autoprefixer": "^10.4.13",
54
- "browserslist": "^4.21.4",
55
- "concurrently": "^7.5.0",
56
- "cssnano": "^5.1.14",
57
- "esbuild": "^0.16.10",
58
- "eslint": "^8.31.0",
59
- "eslint-config-prettier": "^8.6.0",
49
+ "@swc/cli": "^0.1.62",
50
+ "@swc/core": "^1.3.55",
51
+ "@swc/jest": "^0.2.26",
52
+ "@swc/register": "^0.1.10",
53
+ "autoprefixer": "^10.4.14",
54
+ "browserslist": "^4.21.5",
55
+ "concurrently": "^8.0.1",
56
+ "cssnano": "^6.0.0",
57
+ "esbuild": "^0.17.18",
58
+ "eslint": "^8.39.0",
59
+ "eslint-config-prettier": "^8.8.0",
60
60
  "eslint-plugin-prettier": "^4.2.1",
61
- "jest": "^28.1.3",
62
- "jest-diff": "^28.1.3",
63
- "lightningcss": "^1.18.0",
64
- "prettier": "^2.8.1",
65
- "rimraf": "^3.0.0",
61
+ "jest": "^29.5.0",
62
+ "jest-diff": "^29.5.0",
63
+ "lightningcss": "1.18.0",
64
+ "prettier": "^2.8.8",
65
+ "rimraf": "^5.0.0",
66
66
  "source-map-js": "^1.0.2",
67
- "turbo": "^1.6.3"
68
- },
69
- "peerDependencies": {
70
- "postcss": "^8.0.9"
67
+ "turbo": "^1.9.3"
71
68
  },
72
69
  "dependencies": {
70
+ "@alloc/quick-lru": "^5.2.0",
73
71
  "arg": "^5.0.2",
74
72
  "chokidar": "^3.5.3",
75
- "color-name": "^1.1.4",
76
73
  "didyoumean": "^1.2.2",
77
74
  "dlv": "^1.1.3",
78
75
  "fast-glob": "^3.2.12",
79
76
  "glob-parent": "^6.0.2",
80
77
  "is-glob": "^4.0.3",
81
- "jiti": "^1.17.2",
82
- "lilconfig": "^2.0.6",
78
+ "jiti": "^1.18.2",
79
+ "lilconfig": "^2.1.0",
83
80
  "micromatch": "^4.0.5",
84
81
  "normalize-path": "^3.0.0",
85
82
  "object-hash": "^3.0.0",
86
83
  "picocolors": "^1.0.0",
87
- "postcss": "^8.0.9",
88
- "postcss-import": "^14.1.0",
89
- "postcss-js": "^4.0.0",
90
- "postcss-load-config": "^3.1.4",
91
- "postcss-nested": "6.0.0",
84
+ "postcss": "^8.4.23",
85
+ "postcss-import": "^15.1.0",
86
+ "postcss-js": "^4.0.1",
87
+ "postcss-load-config": "^4.0.1",
88
+ "postcss-nested": "^6.0.1",
92
89
  "postcss-selector-parser": "^6.0.11",
93
- "postcss-value-parser": "^4.2.0",
94
- "quick-lru": "^5.1.1",
95
- "resolve": "^1.22.1",
96
- "sucrase": "^3.29.0"
90
+ "resolve": "^1.22.2",
91
+ "sucrase": "^3.32.0"
97
92
  },
98
93
  "browserslist": [
99
94
  "> 1%",
@@ -121,6 +116,6 @@
121
116
  }
122
117
  },
123
118
  "engines": {
124
- "node": ">=12.13.0"
119
+ "node": ">=14.0.0"
125
120
  }
126
121
  }