tailwindcss 0.0.0-insiders.d2bb6f1 → 0.0.0-insiders.d2fdddf

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 (278) hide show
  1. package/README.md +5 -6
  2. package/dist/chunk-G32FJCSR.mjs +1 -0
  3. package/dist/chunk-HTB5LLOP.mjs +1 -0
  4. package/dist/chunk-IPWY7FQ4.mjs +35 -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 +377 -0
  19. package/dist/lib.d.ts +3 -0
  20. package/dist/lib.js +35 -0
  21. package/dist/lib.mjs +1 -0
  22. package/dist/plugin.d.mts +11 -0
  23. package/dist/plugin.d.ts +104 -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-B254mqw1.d.mts +98 -0
  29. package/index.css +886 -3
  30. package/package.json +76 -101
  31. package/preflight.css +385 -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 -429
  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 -190
  50. package/lib/corePlugins.js +0 -4237
  51. package/lib/css/LICENSE +0 -25
  52. package/lib/css/preflight.css +0 -386
  53. package/lib/featureFlags.js +0 -84
  54. package/lib/index.js +0 -2
  55. package/lib/lib/cacheInvalidation.js +0 -94
  56. package/lib/lib/collapseAdjacentRules.js +0 -63
  57. package/lib/lib/collapseDuplicateDeclarations.js +0 -85
  58. package/lib/lib/content.js +0 -207
  59. package/lib/lib/defaultExtractor.js +0 -249
  60. package/lib/lib/detectNesting.js +0 -45
  61. package/lib/lib/evaluateTailwindFunctions.js +0 -238
  62. package/lib/lib/expandApplyAtRules.js +0 -540
  63. package/lib/lib/expandTailwindAtRules.js +0 -316
  64. package/lib/lib/findAtConfigPath.js +0 -46
  65. package/lib/lib/generateRules.js +0 -896
  66. package/lib/lib/getModuleDependencies.js +0 -99
  67. package/lib/lib/handleImportAtRules.js +0 -50
  68. package/lib/lib/load-config.js +0 -53
  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 -1268
  76. package/lib/lib/setupTrackingContext.js +0 -166
  77. package/lib/lib/sharedState.js +0 -79
  78. package/lib/lib/substituteScreenAtRules.js +0 -31
  79. package/lib/plugin.js +0 -166
  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 -54
  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 -407
  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 -270
  106. package/lib/util/getAllConfigs.js +0 -50
  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 -310
  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 -287
  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 -263
  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.d.ts +0 -4
  147. package/nesting/index.js +0 -2
  148. package/plugin.d.ts +0 -11
  149. package/plugin.js +0 -2
  150. package/prettier.config.js +0 -19
  151. package/resolveConfig.d.ts +0 -31
  152. package/resolveConfig.js +0 -2
  153. package/screens.css +0 -1
  154. package/scripts/create-plugin-list.js +0 -10
  155. package/scripts/generate-types.js +0 -104
  156. package/scripts/release-channel.js +0 -18
  157. package/scripts/release-notes.js +0 -21
  158. package/scripts/type-utils.js +0 -27
  159. package/src/cli/build/index.js +0 -53
  160. package/src/cli/build/plugin.js +0 -466
  161. package/src/cli/build/utils.js +0 -76
  162. package/src/cli/build/watching.js +0 -229
  163. package/src/cli/help/index.js +0 -70
  164. package/src/cli/index.js +0 -217
  165. package/src/cli/init/index.js +0 -79
  166. package/src/cli.js +0 -3
  167. package/src/corePluginList.js +0 -1
  168. package/src/corePlugins.js +0 -2895
  169. package/src/css/LICENSE +0 -25
  170. package/src/css/preflight.css +0 -386
  171. package/src/featureFlags.js +0 -64
  172. package/src/index.js +0 -1
  173. package/src/lib/cacheInvalidation.js +0 -52
  174. package/src/lib/collapseAdjacentRules.js +0 -58
  175. package/src/lib/collapseDuplicateDeclarations.js +0 -93
  176. package/src/lib/content.js +0 -240
  177. package/src/lib/defaultExtractor.js +0 -225
  178. package/src/lib/detectNesting.js +0 -47
  179. package/src/lib/evaluateTailwindFunctions.js +0 -272
  180. package/src/lib/expandApplyAtRules.js +0 -620
  181. package/src/lib/expandTailwindAtRules.js +0 -326
  182. package/src/lib/findAtConfigPath.js +0 -48
  183. package/src/lib/generateRules.js +0 -936
  184. package/src/lib/getModuleDependencies.js +0 -79
  185. package/src/lib/handleImportAtRules.js +0 -34
  186. package/src/lib/load-config.ts +0 -39
  187. package/src/lib/normalizeTailwindDirectives.js +0 -57
  188. package/src/lib/offsets.js +0 -373
  189. package/src/lib/partitionApplyAtRules.js +0 -52
  190. package/src/lib/regex.js +0 -74
  191. package/src/lib/remap-bitfield.js +0 -82
  192. package/src/lib/resolveDefaultsAtRules.js +0 -163
  193. package/src/lib/setupContextUtils.js +0 -1334
  194. package/src/lib/setupTrackingContext.js +0 -169
  195. package/src/lib/sharedState.js +0 -57
  196. package/src/lib/substituteScreenAtRules.js +0 -19
  197. package/src/plugin.js +0 -133
  198. package/src/postcss-plugins/nesting/README.md +0 -42
  199. package/src/postcss-plugins/nesting/index.js +0 -13
  200. package/src/postcss-plugins/nesting/plugin.js +0 -80
  201. package/src/processTailwindFeatures.js +0 -59
  202. package/src/public/colors.js +0 -322
  203. package/src/public/create-plugin.js +0 -2
  204. package/src/public/default-config.js +0 -4
  205. package/src/public/default-theme.js +0 -4
  206. package/src/public/load-config.js +0 -2
  207. package/src/public/resolve-config.js +0 -7
  208. package/src/util/applyImportantSelector.js +0 -27
  209. package/src/util/bigSign.js +0 -3
  210. package/src/util/buildMediaQuery.js +0 -22
  211. package/src/util/cloneDeep.js +0 -11
  212. package/src/util/cloneNodes.js +0 -49
  213. package/src/util/color.js +0 -88
  214. package/src/util/colorNames.js +0 -150
  215. package/src/util/configurePlugins.js +0 -23
  216. package/src/util/createPlugin.js +0 -27
  217. package/src/util/createUtilityPlugin.js +0 -37
  218. package/src/util/dataTypes.js +0 -392
  219. package/src/util/defaults.js +0 -17
  220. package/src/util/escapeClassName.js +0 -8
  221. package/src/util/escapeCommas.js +0 -3
  222. package/src/util/flattenColorPalette.js +0 -13
  223. package/src/util/formatVariantSelector.js +0 -324
  224. package/src/util/getAllConfigs.js +0 -38
  225. package/src/util/hashConfig.js +0 -5
  226. package/src/util/isKeyframeRule.js +0 -3
  227. package/src/util/isPlainObject.js +0 -8
  228. package/src/util/isSyntacticallyValidPropertyValue.js +0 -61
  229. package/src/util/log.js +0 -53
  230. package/src/util/nameClass.js +0 -30
  231. package/src/util/negateValue.js +0 -24
  232. package/src/util/normalizeConfig.js +0 -328
  233. package/src/util/normalizeScreens.js +0 -140
  234. package/src/util/parseAnimationValue.js +0 -68
  235. package/src/util/parseBoxShadowValue.js +0 -72
  236. package/src/util/parseDependency.js +0 -44
  237. package/src/util/parseGlob.js +0 -24
  238. package/src/util/parseObjectStyles.js +0 -19
  239. package/src/util/pluginUtils.js +0 -303
  240. package/src/util/prefixSelector.js +0 -33
  241. package/src/util/pseudoElements.js +0 -167
  242. package/src/util/removeAlphaVariables.js +0 -24
  243. package/src/util/resolveConfig.js +0 -295
  244. package/src/util/resolveConfigPath.js +0 -66
  245. package/src/util/responsive.js +0 -10
  246. package/src/util/splitAtTopLevelOnly.js +0 -52
  247. package/src/util/tap.js +0 -4
  248. package/src/util/toColorValue.js +0 -3
  249. package/src/util/toPath.js +0 -26
  250. package/src/util/transformThemeValue.js +0 -62
  251. package/src/util/validateConfig.js +0 -36
  252. package/src/util/validateFormalSyntax.js +0 -34
  253. package/src/util/withAlphaVariable.js +0 -49
  254. package/src/value-parser/LICENSE +0 -22
  255. package/src/value-parser/README.md +0 -3
  256. package/src/value-parser/index.d.ts +0 -177
  257. package/src/value-parser/index.js +0 -28
  258. package/src/value-parser/parse.js +0 -303
  259. package/src/value-parser/stringify.js +0 -41
  260. package/src/value-parser/unit.js +0 -118
  261. package/src/value-parser/walk.js +0 -18
  262. package/stubs/.gitignore +0 -1
  263. package/stubs/.prettierrc.json +0 -6
  264. package/stubs/config.full.js +0 -1062
  265. package/stubs/config.simple.js +0 -7
  266. package/stubs/postcss.config.cjs +0 -5
  267. package/stubs/postcss.config.js +0 -5
  268. package/stubs/tailwind.config.cjs +0 -2
  269. package/stubs/tailwind.config.js +0 -2
  270. package/stubs/tailwind.config.ts +0 -3
  271. package/tailwind.css +0 -5
  272. package/types/config.d.ts +0 -372
  273. package/types/generated/.gitkeep +0 -0
  274. package/types/generated/colors.d.ts +0 -298
  275. package/types/generated/corePluginList.d.ts +0 -1
  276. package/types/generated/default-theme.d.ts +0 -397
  277. package/types/index.d.ts +0 -11
  278. 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
- }