tailwindcss 0.0.0-insiders.d58d5b2 → 0.0.0-insiders.d593a21

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 (277) hide show
  1. package/README.md +5 -10
  2. package/dist/chunk-FTZ4NPTT.mjs +37 -0
  3. package/dist/chunk-G32FJCSR.mjs +1 -0
  4. package/dist/chunk-HTB5LLOP.mjs +1 -0
  5. package/dist/colors-b_6i0Oi7.d.ts +295 -0
  6. package/dist/colors.d.mts +295 -0
  7. package/dist/colors.d.ts +5 -0
  8. package/dist/colors.js +1 -0
  9. package/dist/colors.mjs +1 -0
  10. package/dist/default-theme.d.mts +1147 -0
  11. package/dist/default-theme.d.ts +1147 -0
  12. package/dist/default-theme.js +1 -0
  13. package/dist/default-theme.mjs +1 -0
  14. package/dist/flatten-color-palette.d.mts +6 -0
  15. package/dist/flatten-color-palette.d.ts +6 -0
  16. package/dist/flatten-color-palette.js +3 -0
  17. package/dist/flatten-color-palette.mjs +1 -0
  18. package/dist/lib.d.mts +352 -0
  19. package/dist/lib.d.ts +3 -0
  20. package/dist/lib.js +37 -0
  21. package/dist/lib.mjs +1 -0
  22. package/dist/plugin.d.mts +11 -0
  23. package/dist/plugin.d.ts +131 -0
  24. package/dist/plugin.js +1 -0
  25. package/dist/plugin.mjs +1 -0
  26. package/dist/resolve-config-BIFUA2FY.d.ts +29 -0
  27. package/dist/resolve-config-QUZ9b-Gn.d.mts +190 -0
  28. package/dist/types-WlZgYgM8.d.mts +125 -0
  29. package/index.css +894 -3
  30. package/package.json +76 -100
  31. package/preflight.css +393 -0
  32. package/theme.css +462 -0
  33. package/base.css +0 -1
  34. package/colors.d.ts +0 -3
  35. package/colors.js +0 -2
  36. package/components.css +0 -1
  37. package/defaultConfig.d.ts +0 -3
  38. package/defaultConfig.js +0 -2
  39. package/defaultTheme.d.ts +0 -4
  40. package/defaultTheme.js +0 -2
  41. package/lib/cli/build/index.js +0 -57
  42. package/lib/cli/build/plugin.js +0 -431
  43. package/lib/cli/build/utils.js +0 -88
  44. package/lib/cli/build/watching.js +0 -182
  45. package/lib/cli/help/index.js +0 -73
  46. package/lib/cli/index.js +0 -231
  47. package/lib/cli/init/index.js +0 -63
  48. package/lib/cli.js +0 -3
  49. package/lib/corePluginList.js +0 -188
  50. package/lib/corePlugins.js +0 -4195
  51. package/lib/css/LICENSE +0 -25
  52. package/lib/css/preflight.css +0 -379
  53. package/lib/featureFlags.js +0 -85
  54. package/lib/index.js +0 -2
  55. package/lib/lib/cacheInvalidation.js +0 -92
  56. package/lib/lib/collapseAdjacentRules.js +0 -61
  57. package/lib/lib/collapseDuplicateDeclarations.js +0 -85
  58. package/lib/lib/content.js +0 -207
  59. package/lib/lib/defaultExtractor.js +0 -243
  60. package/lib/lib/detectNesting.js +0 -45
  61. package/lib/lib/evaluateTailwindFunctions.js +0 -238
  62. package/lib/lib/expandApplyAtRules.js +0 -534
  63. package/lib/lib/expandTailwindAtRules.js +0 -315
  64. package/lib/lib/findAtConfigPath.js +0 -46
  65. package/lib/lib/generateRules.js +0 -887
  66. package/lib/lib/getModuleDependencies.js +0 -99
  67. package/lib/lib/handleImportAtRules.js +0 -50
  68. package/lib/lib/load-config.js +0 -42
  69. package/lib/lib/normalizeTailwindDirectives.js +0 -74
  70. package/lib/lib/offsets.js +0 -306
  71. package/lib/lib/partitionApplyAtRules.js +0 -58
  72. package/lib/lib/regex.js +0 -74
  73. package/lib/lib/remap-bitfield.js +0 -89
  74. package/lib/lib/resolveDefaultsAtRules.js +0 -165
  75. package/lib/lib/setupContextUtils.js +0 -1270
  76. package/lib/lib/setupTrackingContext.js +0 -167
  77. package/lib/lib/sharedState.js +0 -79
  78. package/lib/lib/substituteScreenAtRules.js +0 -31
  79. package/lib/plugin.js +0 -164
  80. package/lib/postcss-plugins/nesting/README.md +0 -42
  81. package/lib/postcss-plugins/nesting/index.js +0 -21
  82. package/lib/postcss-plugins/nesting/plugin.js +0 -89
  83. package/lib/processTailwindFeatures.js +0 -64
  84. package/lib/public/colors.js +0 -355
  85. package/lib/public/create-plugin.js +0 -17
  86. package/lib/public/default-config.js +0 -18
  87. package/lib/public/default-theme.js +0 -18
  88. package/lib/public/load-config.js +0 -12
  89. package/lib/public/resolve-config.js +0 -24
  90. package/lib/util/applyImportantSelector.js +0 -36
  91. package/lib/util/bigSign.js +0 -13
  92. package/lib/util/buildMediaQuery.js +0 -27
  93. package/lib/util/cloneDeep.js +0 -22
  94. package/lib/util/cloneNodes.js +0 -34
  95. package/lib/util/color.js +0 -116
  96. package/lib/util/colorNames.js +0 -752
  97. package/lib/util/configurePlugins.js +0 -23
  98. package/lib/util/createPlugin.js +0 -32
  99. package/lib/util/createUtilityPlugin.js +0 -53
  100. package/lib/util/dataTypes.js +0 -358
  101. package/lib/util/defaults.js +0 -27
  102. package/lib/util/escapeClassName.js +0 -24
  103. package/lib/util/escapeCommas.js +0 -13
  104. package/lib/util/flattenColorPalette.js +0 -18
  105. package/lib/util/formatVariantSelector.js +0 -265
  106. package/lib/util/getAllConfigs.js +0 -51
  107. package/lib/util/hashConfig.js +0 -21
  108. package/lib/util/isKeyframeRule.js +0 -13
  109. package/lib/util/isPlainObject.js +0 -17
  110. package/lib/util/isSyntacticallyValidPropertyValue.js +0 -74
  111. package/lib/util/log.js +0 -78
  112. package/lib/util/nameClass.js +0 -49
  113. package/lib/util/negateValue.js +0 -36
  114. package/lib/util/normalizeConfig.js +0 -313
  115. package/lib/util/normalizeScreens.js +0 -178
  116. package/lib/util/parseAnimationValue.js +0 -93
  117. package/lib/util/parseBoxShadowValue.js +0 -88
  118. package/lib/util/parseDependency.js +0 -47
  119. package/lib/util/parseGlob.js +0 -36
  120. package/lib/util/parseObjectStyles.js +0 -36
  121. package/lib/util/pluginUtils.js +0 -274
  122. package/lib/util/prefixSelector.js +0 -39
  123. package/lib/util/pseudoElements.js +0 -209
  124. package/lib/util/removeAlphaVariables.js +0 -31
  125. package/lib/util/resolveConfig.js +0 -260
  126. package/lib/util/resolveConfigPath.js +0 -70
  127. package/lib/util/responsive.js +0 -24
  128. package/lib/util/splitAtTopLevelOnly.js +0 -51
  129. package/lib/util/tap.js +0 -14
  130. package/lib/util/toColorValue.js +0 -13
  131. package/lib/util/toPath.js +0 -32
  132. package/lib/util/transformThemeValue.js +0 -73
  133. package/lib/util/validateConfig.js +0 -48
  134. package/lib/util/validateFormalSyntax.js +0 -26
  135. package/lib/util/withAlphaVariable.js +0 -79
  136. package/lib/value-parser/LICENSE +0 -22
  137. package/lib/value-parser/README.md +0 -3
  138. package/lib/value-parser/index.d.js +0 -2
  139. package/lib/value-parser/index.js +0 -22
  140. package/lib/value-parser/parse.js +0 -259
  141. package/lib/value-parser/stringify.js +0 -38
  142. package/lib/value-parser/unit.js +0 -86
  143. package/lib/value-parser/walk.js +0 -16
  144. package/loadConfig.d.ts +0 -4
  145. package/loadConfig.js +0 -2
  146. package/nesting/index.js +0 -2
  147. package/plugin.d.ts +0 -11
  148. package/plugin.js +0 -2
  149. package/prettier.config.js +0 -19
  150. package/resolveConfig.d.ts +0 -12
  151. package/resolveConfig.js +0 -2
  152. package/screens.css +0 -1
  153. package/scripts/create-plugin-list.js +0 -10
  154. package/scripts/generate-types.js +0 -105
  155. package/scripts/release-channel.js +0 -18
  156. package/scripts/release-notes.js +0 -21
  157. package/scripts/type-utils.js +0 -27
  158. package/src/cli/build/index.js +0 -53
  159. package/src/cli/build/plugin.js +0 -469
  160. package/src/cli/build/utils.js +0 -76
  161. package/src/cli/build/watching.js +0 -229
  162. package/src/cli/help/index.js +0 -70
  163. package/src/cli/index.js +0 -217
  164. package/src/cli/init/index.js +0 -79
  165. package/src/cli.js +0 -3
  166. package/src/corePluginList.js +0 -1
  167. package/src/corePlugins.js +0 -2877
  168. package/src/css/LICENSE +0 -25
  169. package/src/css/preflight.css +0 -379
  170. package/src/featureFlags.js +0 -68
  171. package/src/index.js +0 -1
  172. package/src/lib/cacheInvalidation.js +0 -52
  173. package/src/lib/collapseAdjacentRules.js +0 -58
  174. package/src/lib/collapseDuplicateDeclarations.js +0 -93
  175. package/src/lib/content.js +0 -240
  176. package/src/lib/defaultExtractor.js +0 -217
  177. package/src/lib/detectNesting.js +0 -47
  178. package/src/lib/evaluateTailwindFunctions.js +0 -272
  179. package/src/lib/expandApplyAtRules.js +0 -613
  180. package/src/lib/expandTailwindAtRules.js +0 -319
  181. package/src/lib/findAtConfigPath.js +0 -48
  182. package/src/lib/generateRules.js +0 -930
  183. package/src/lib/getModuleDependencies.js +0 -79
  184. package/src/lib/handleImportAtRules.js +0 -34
  185. package/src/lib/load-config.ts +0 -31
  186. package/src/lib/normalizeTailwindDirectives.js +0 -57
  187. package/src/lib/offsets.js +0 -373
  188. package/src/lib/partitionApplyAtRules.js +0 -52
  189. package/src/lib/regex.js +0 -74
  190. package/src/lib/remap-bitfield.js +0 -82
  191. package/src/lib/resolveDefaultsAtRules.js +0 -163
  192. package/src/lib/setupContextUtils.js +0 -1331
  193. package/src/lib/setupTrackingContext.js +0 -169
  194. package/src/lib/sharedState.js +0 -57
  195. package/src/lib/substituteScreenAtRules.js +0 -19
  196. package/src/plugin.js +0 -133
  197. package/src/postcss-plugins/nesting/README.md +0 -42
  198. package/src/postcss-plugins/nesting/index.js +0 -13
  199. package/src/postcss-plugins/nesting/plugin.js +0 -80
  200. package/src/processTailwindFeatures.js +0 -59
  201. package/src/public/colors.js +0 -322
  202. package/src/public/create-plugin.js +0 -2
  203. package/src/public/default-config.js +0 -4
  204. package/src/public/default-theme.js +0 -4
  205. package/src/public/load-config.js +0 -2
  206. package/src/public/resolve-config.js +0 -7
  207. package/src/util/applyImportantSelector.js +0 -27
  208. package/src/util/bigSign.js +0 -3
  209. package/src/util/buildMediaQuery.js +0 -22
  210. package/src/util/cloneDeep.js +0 -11
  211. package/src/util/cloneNodes.js +0 -28
  212. package/src/util/color.js +0 -88
  213. package/src/util/colorNames.js +0 -150
  214. package/src/util/configurePlugins.js +0 -23
  215. package/src/util/createPlugin.js +0 -27
  216. package/src/util/createUtilityPlugin.js +0 -37
  217. package/src/util/dataTypes.js +0 -340
  218. package/src/util/defaults.js +0 -17
  219. package/src/util/escapeClassName.js +0 -8
  220. package/src/util/escapeCommas.js +0 -3
  221. package/src/util/flattenColorPalette.js +0 -13
  222. package/src/util/formatVariantSelector.js +0 -317
  223. package/src/util/getAllConfigs.js +0 -38
  224. package/src/util/hashConfig.js +0 -5
  225. package/src/util/isKeyframeRule.js +0 -3
  226. package/src/util/isPlainObject.js +0 -8
  227. package/src/util/isSyntacticallyValidPropertyValue.js +0 -61
  228. package/src/util/log.js +0 -53
  229. package/src/util/nameClass.js +0 -30
  230. package/src/util/negateValue.js +0 -24
  231. package/src/util/normalizeConfig.js +0 -328
  232. package/src/util/normalizeScreens.js +0 -140
  233. package/src/util/parseAnimationValue.js +0 -68
  234. package/src/util/parseBoxShadowValue.js +0 -72
  235. package/src/util/parseDependency.js +0 -44
  236. package/src/util/parseGlob.js +0 -24
  237. package/src/util/parseObjectStyles.js +0 -19
  238. package/src/util/pluginUtils.js +0 -287
  239. package/src/util/prefixSelector.js +0 -33
  240. package/src/util/pseudoElements.js +0 -167
  241. package/src/util/removeAlphaVariables.js +0 -24
  242. package/src/util/resolveConfig.js +0 -277
  243. package/src/util/resolveConfigPath.js +0 -66
  244. package/src/util/responsive.js +0 -10
  245. package/src/util/splitAtTopLevelOnly.js +0 -52
  246. package/src/util/tap.js +0 -4
  247. package/src/util/toColorValue.js +0 -3
  248. package/src/util/toPath.js +0 -26
  249. package/src/util/transformThemeValue.js +0 -62
  250. package/src/util/validateConfig.js +0 -36
  251. package/src/util/validateFormalSyntax.js +0 -34
  252. package/src/util/withAlphaVariable.js +0 -49
  253. package/src/value-parser/LICENSE +0 -22
  254. package/src/value-parser/README.md +0 -3
  255. package/src/value-parser/index.d.ts +0 -177
  256. package/src/value-parser/index.js +0 -28
  257. package/src/value-parser/parse.js +0 -303
  258. package/src/value-parser/stringify.js +0 -41
  259. package/src/value-parser/unit.js +0 -118
  260. package/src/value-parser/walk.js +0 -18
  261. package/stubs/.gitignore +0 -1
  262. package/stubs/.prettierrc.json +0 -6
  263. package/stubs/config.full.js +0 -1002
  264. package/stubs/config.simple.js +0 -7
  265. package/stubs/postcss.config.cjs +0 -5
  266. package/stubs/postcss.config.js +0 -5
  267. package/stubs/tailwind.config.cjs +0 -2
  268. package/stubs/tailwind.config.js +0 -2
  269. package/stubs/tailwind.config.ts +0 -3
  270. package/tailwind.css +0 -5
  271. package/types/config.d.ts +0 -369
  272. package/types/generated/.gitkeep +0 -0
  273. package/types/generated/colors.d.ts +0 -298
  274. package/types/generated/corePluginList.d.ts +0 -1
  275. package/types/generated/default-theme.d.ts +0 -378
  276. package/types/index.d.ts +0 -7
  277. package/variants.css +0 -1
@@ -1,272 +0,0 @@
1
- import dlv from 'dlv'
2
- import didYouMean from 'didyoumean'
3
- import transformThemeValue from '../util/transformThemeValue'
4
- import parseValue from '../value-parser/index'
5
- import { normalizeScreens } from '../util/normalizeScreens'
6
- import buildMediaQuery from '../util/buildMediaQuery'
7
- import { toPath } from '../util/toPath'
8
- import { withAlphaValue } from '../util/withAlphaVariable'
9
- import { parseColorFormat } from '../util/pluginUtils'
10
- import log from '../util/log'
11
-
12
- function isObject(input) {
13
- return typeof input === 'object' && input !== null
14
- }
15
-
16
- function findClosestExistingPath(theme, path) {
17
- let parts = toPath(path)
18
- do {
19
- parts.pop()
20
-
21
- if (dlv(theme, parts) !== undefined) break
22
- } while (parts.length)
23
-
24
- return parts.length ? parts : undefined
25
- }
26
-
27
- function pathToString(path) {
28
- if (typeof path === 'string') return path
29
- return path.reduce((acc, cur, i) => {
30
- if (cur.includes('.')) return `${acc}[${cur}]`
31
- return i === 0 ? cur : `${acc}.${cur}`
32
- }, '')
33
- }
34
-
35
- function list(items) {
36
- return items.map((key) => `'${key}'`).join(', ')
37
- }
38
-
39
- function listKeys(obj) {
40
- return list(Object.keys(obj))
41
- }
42
-
43
- function validatePath(config, path, defaultValue, themeOpts = {}) {
44
- const pathString = Array.isArray(path) ? pathToString(path) : path.replace(/^['"]+|['"]+$/g, '')
45
- const pathSegments = Array.isArray(path) ? path : toPath(pathString)
46
- const value = dlv(config.theme, pathSegments, defaultValue)
47
-
48
- if (value === undefined) {
49
- let error = `'${pathString}' does not exist in your theme config.`
50
- const parentSegments = pathSegments.slice(0, -1)
51
- const parentValue = dlv(config.theme, parentSegments)
52
-
53
- if (isObject(parentValue)) {
54
- const validKeys = Object.keys(parentValue).filter(
55
- (key) => validatePath(config, [...parentSegments, key]).isValid
56
- )
57
- const suggestion = didYouMean(pathSegments[pathSegments.length - 1], validKeys)
58
- if (suggestion) {
59
- error += ` Did you mean '${pathToString([...parentSegments, suggestion])}'?`
60
- } else if (validKeys.length > 0) {
61
- error += ` '${pathToString(parentSegments)}' has the following valid keys: ${list(
62
- validKeys
63
- )}`
64
- }
65
- } else {
66
- const closestPath = findClosestExistingPath(config.theme, pathString)
67
- if (closestPath) {
68
- const closestValue = dlv(config.theme, closestPath)
69
- if (isObject(closestValue)) {
70
- error += ` '${pathToString(closestPath)}' has the following keys: ${listKeys(
71
- closestValue
72
- )}`
73
- } else {
74
- error += ` '${pathToString(closestPath)}' is not an object.`
75
- }
76
- } else {
77
- error += ` Your theme has the following top-level keys: ${listKeys(config.theme)}`
78
- }
79
- }
80
-
81
- return {
82
- isValid: false,
83
- error,
84
- }
85
- }
86
-
87
- if (
88
- !(
89
- typeof value === 'string' ||
90
- typeof value === 'number' ||
91
- typeof value === 'function' ||
92
- value instanceof String ||
93
- value instanceof Number ||
94
- Array.isArray(value)
95
- )
96
- ) {
97
- let error = `'${pathString}' was found but does not resolve to a string.`
98
-
99
- if (isObject(value)) {
100
- let validKeys = Object.keys(value).filter(
101
- (key) => validatePath(config, [...pathSegments, key]).isValid
102
- )
103
- if (validKeys.length) {
104
- error += ` Did you mean something like '${pathToString([...pathSegments, validKeys[0]])}'?`
105
- }
106
- }
107
-
108
- return {
109
- isValid: false,
110
- error,
111
- }
112
- }
113
-
114
- const [themeSection] = pathSegments
115
-
116
- return {
117
- isValid: true,
118
- value: transformThemeValue(themeSection)(value, themeOpts),
119
- }
120
- }
121
-
122
- function extractArgs(node, vNodes, functions) {
123
- vNodes = vNodes.map((vNode) => resolveVNode(node, vNode, functions))
124
-
125
- let args = ['']
126
-
127
- for (let vNode of vNodes) {
128
- if (vNode.type === 'div' && vNode.value === ',') {
129
- args.push('')
130
- } else {
131
- args[args.length - 1] += parseValue.stringify(vNode)
132
- }
133
- }
134
-
135
- return args
136
- }
137
-
138
- function resolveVNode(node, vNode, functions) {
139
- if (vNode.type === 'function' && functions[vNode.value] !== undefined) {
140
- let args = extractArgs(node, vNode.nodes, functions)
141
- vNode.type = 'word'
142
- vNode.value = functions[vNode.value](node, ...args)
143
- }
144
-
145
- return vNode
146
- }
147
-
148
- function resolveFunctions(node, input, functions) {
149
- let hasAnyFn = Object.keys(functions).some((fn) => input.includes(`${fn}(`))
150
- if (!hasAnyFn) return input
151
-
152
- return parseValue(input)
153
- .walk((vNode) => {
154
- resolveVNode(node, vNode, functions)
155
- })
156
- .toString()
157
- }
158
-
159
- let nodeTypePropertyMap = {
160
- atrule: 'params',
161
- decl: 'value',
162
- }
163
-
164
- /**
165
- * @param {string} path
166
- * @returns {Iterable<[path: string, alpha: string|undefined]>}
167
- */
168
- function* toPaths(path) {
169
- // Strip quotes from beginning and end of string
170
- // This allows the alpha value to be present inside of quotes
171
- path = path.replace(/^['"]+|['"]+$/g, '')
172
-
173
- let matches = path.match(/^([^\s]+)(?![^\[]*\])(?:\s*\/\s*([^\/\s]+))$/)
174
- let alpha = undefined
175
-
176
- yield [path, undefined]
177
-
178
- if (matches) {
179
- path = matches[1]
180
- alpha = matches[2]
181
-
182
- yield [path, alpha]
183
- }
184
- }
185
-
186
- /**
187
- *
188
- * @param {any} config
189
- * @param {string} path
190
- * @param {any} defaultValue
191
- */
192
- function resolvePath(config, path, defaultValue) {
193
- const results = Array.from(toPaths(path)).map(([path, alpha]) => {
194
- return Object.assign(validatePath(config, path, defaultValue, { opacityValue: alpha }), {
195
- resolvedPath: path,
196
- alpha,
197
- })
198
- })
199
-
200
- return results.find((result) => result.isValid) ?? results[0]
201
- }
202
-
203
- export default function (context) {
204
- let config = context.tailwindConfig
205
-
206
- let functions = {
207
- theme: (node, path, ...defaultValue) => {
208
- let { isValid, value, error, alpha } = resolvePath(
209
- config,
210
- path,
211
- defaultValue.length ? defaultValue : undefined
212
- )
213
-
214
- if (!isValid) {
215
- let parentNode = node.parent
216
- let candidate = parentNode?.raws.tailwind?.candidate
217
-
218
- if (parentNode && candidate !== undefined) {
219
- // Remove this utility from any caches
220
- context.markInvalidUtilityNode(parentNode)
221
-
222
- // Remove the CSS node from the markup
223
- parentNode.remove()
224
-
225
- // Show a warning
226
- log.warn('invalid-theme-key-in-class', [
227
- `The utility \`${candidate}\` contains an invalid theme value and was not generated.`,
228
- ])
229
-
230
- return
231
- }
232
-
233
- throw node.error(error)
234
- }
235
-
236
- let maybeColor = parseColorFormat(value)
237
- let isColorFunction = maybeColor !== undefined && typeof maybeColor === 'function'
238
-
239
- if (alpha !== undefined || isColorFunction) {
240
- if (alpha === undefined) {
241
- alpha = 1.0
242
- }
243
-
244
- value = withAlphaValue(maybeColor, alpha, maybeColor)
245
- }
246
-
247
- return value
248
- },
249
- screen: (node, screen) => {
250
- screen = screen.replace(/^['"]+/g, '').replace(/['"]+$/g, '')
251
- let screens = normalizeScreens(config.theme.screens)
252
- let screenDefinition = screens.find(({ name }) => name === screen)
253
-
254
- if (!screenDefinition) {
255
- throw node.error(`The '${screen}' screen does not exist in your theme.`)
256
- }
257
-
258
- return buildMediaQuery(screenDefinition)
259
- },
260
- }
261
- return (root) => {
262
- root.walk((node) => {
263
- let property = nodeTypePropertyMap[node.type]
264
-
265
- if (property === undefined) {
266
- return
267
- }
268
-
269
- node[property] = resolveFunctions(node, node[property], functions)
270
- })
271
- }
272
- }