tailwindcss 3.4.1 → 4.0.0-alpha.2

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 (280) hide show
  1. package/README.md +5 -6
  2. package/dist/lib.d.mts +324 -0
  3. package/dist/lib.d.ts +324 -0
  4. package/dist/lib.js +11 -0
  5. package/dist/lib.mjs +11 -0
  6. package/index.css +5 -0
  7. package/package.json +29 -107
  8. package/preflight.css +355 -0
  9. package/theme.css +465 -0
  10. package/CHANGELOG.md +0 -2571
  11. package/base.css +0 -1
  12. package/colors.d.ts +0 -3
  13. package/colors.js +0 -2
  14. package/components.css +0 -1
  15. package/defaultConfig.d.ts +0 -3
  16. package/defaultConfig.js +0 -2
  17. package/defaultTheme.d.ts +0 -4
  18. package/defaultTheme.js +0 -2
  19. package/lib/cli/build/deps.js +0 -62
  20. package/lib/cli/build/index.js +0 -54
  21. package/lib/cli/build/plugin.js +0 -378
  22. package/lib/cli/build/utils.js +0 -88
  23. package/lib/cli/build/watching.js +0 -182
  24. package/lib/cli/help/index.js +0 -73
  25. package/lib/cli/index.js +0 -230
  26. package/lib/cli/init/index.js +0 -63
  27. package/lib/cli-peer-dependencies.js +0 -36
  28. package/lib/cli.js +0 -7
  29. package/lib/corePluginList.js +0 -190
  30. package/lib/corePlugins.js +0 -4282
  31. package/lib/css/LICENSE +0 -25
  32. package/lib/css/preflight.css +0 -385
  33. package/lib/featureFlags.js +0 -83
  34. package/lib/index.js +0 -2
  35. package/lib/lib/cacheInvalidation.js +0 -92
  36. package/lib/lib/collapseAdjacentRules.js +0 -61
  37. package/lib/lib/collapseDuplicateDeclarations.js +0 -85
  38. package/lib/lib/content.js +0 -181
  39. package/lib/lib/defaultExtractor.js +0 -251
  40. package/lib/lib/detectNesting.js +0 -45
  41. package/lib/lib/evaluateTailwindFunctions.js +0 -238
  42. package/lib/lib/expandApplyAtRules.js +0 -540
  43. package/lib/lib/expandTailwindAtRules.js +0 -291
  44. package/lib/lib/findAtConfigPath.js +0 -46
  45. package/lib/lib/generateRules.js +0 -904
  46. package/lib/lib/getModuleDependencies.js +0 -99
  47. package/lib/lib/load-config.js +0 -53
  48. package/lib/lib/normalizeTailwindDirectives.js +0 -89
  49. package/lib/lib/offsets.js +0 -306
  50. package/lib/lib/partitionApplyAtRules.js +0 -58
  51. package/lib/lib/regex.js +0 -74
  52. package/lib/lib/remap-bitfield.js +0 -89
  53. package/lib/lib/resolveDefaultsAtRules.js +0 -165
  54. package/lib/lib/setupContextUtils.js +0 -1294
  55. package/lib/lib/setupTrackingContext.js +0 -166
  56. package/lib/lib/sharedState.js +0 -87
  57. package/lib/lib/substituteScreenAtRules.js +0 -31
  58. package/lib/oxide/cli/build/deps.js +0 -89
  59. package/lib/oxide/cli/build/index.js +0 -53
  60. package/lib/oxide/cli/build/plugin.js +0 -375
  61. package/lib/oxide/cli/build/utils.js +0 -87
  62. package/lib/oxide/cli/build/watching.js +0 -179
  63. package/lib/oxide/cli/help/index.js +0 -72
  64. package/lib/oxide/cli/index.js +0 -214
  65. package/lib/oxide/cli/init/index.js +0 -52
  66. package/lib/oxide/cli.js +0 -5
  67. package/lib/oxide/postcss-plugin.js +0 -2
  68. package/lib/plugin.js +0 -98
  69. package/lib/postcss-plugins/nesting/README.md +0 -42
  70. package/lib/postcss-plugins/nesting/index.js +0 -21
  71. package/lib/postcss-plugins/nesting/plugin.js +0 -89
  72. package/lib/processTailwindFeatures.js +0 -64
  73. package/lib/public/colors.js +0 -355
  74. package/lib/public/create-plugin.js +0 -17
  75. package/lib/public/default-config.js +0 -18
  76. package/lib/public/default-theme.js +0 -18
  77. package/lib/public/load-config.js +0 -12
  78. package/lib/public/resolve-config.js +0 -24
  79. package/lib/util/applyImportantSelector.js +0 -36
  80. package/lib/util/bigSign.js +0 -13
  81. package/lib/util/buildMediaQuery.js +0 -27
  82. package/lib/util/cloneDeep.js +0 -22
  83. package/lib/util/cloneNodes.js +0 -54
  84. package/lib/util/color.js +0 -116
  85. package/lib/util/colorNames.js +0 -752
  86. package/lib/util/configurePlugins.js +0 -23
  87. package/lib/util/createPlugin.js +0 -32
  88. package/lib/util/createUtilityPlugin.js +0 -53
  89. package/lib/util/dataTypes.js +0 -415
  90. package/lib/util/defaults.js +0 -27
  91. package/lib/util/escapeClassName.js +0 -24
  92. package/lib/util/escapeCommas.js +0 -13
  93. package/lib/util/flattenColorPalette.js +0 -18
  94. package/lib/util/formatVariantSelector.js +0 -270
  95. package/lib/util/getAllConfigs.js +0 -50
  96. package/lib/util/hashConfig.js +0 -21
  97. package/lib/util/isKeyframeRule.js +0 -13
  98. package/lib/util/isPlainObject.js +0 -17
  99. package/lib/util/isSyntacticallyValidPropertyValue.js +0 -74
  100. package/lib/util/log.js +0 -61
  101. package/lib/util/nameClass.js +0 -49
  102. package/lib/util/negateValue.js +0 -36
  103. package/lib/util/normalizeConfig.js +0 -282
  104. package/lib/util/normalizeScreens.js +0 -178
  105. package/lib/util/parseAnimationValue.js +0 -93
  106. package/lib/util/parseBoxShadowValue.js +0 -88
  107. package/lib/util/parseDependency.js +0 -47
  108. package/lib/util/parseGlob.js +0 -36
  109. package/lib/util/parseObjectStyles.js +0 -36
  110. package/lib/util/pluginUtils.js +0 -289
  111. package/lib/util/prefixSelector.js +0 -39
  112. package/lib/util/pseudoElements.js +0 -212
  113. package/lib/util/removeAlphaVariables.js +0 -31
  114. package/lib/util/resolveConfig.js +0 -256
  115. package/lib/util/resolveConfigPath.js +0 -70
  116. package/lib/util/responsive.js +0 -24
  117. package/lib/util/splitAtTopLevelOnly.js +0 -51
  118. package/lib/util/tap.js +0 -14
  119. package/lib/util/toColorValue.js +0 -13
  120. package/lib/util/toPath.js +0 -32
  121. package/lib/util/transformThemeValue.js +0 -73
  122. package/lib/util/validateConfig.js +0 -37
  123. package/lib/util/validateFormalSyntax.js +0 -26
  124. package/lib/util/withAlphaVariable.js +0 -79
  125. package/lib/value-parser/LICENSE +0 -22
  126. package/lib/value-parser/README.md +0 -3
  127. package/lib/value-parser/index.d.js +0 -2
  128. package/lib/value-parser/index.js +0 -22
  129. package/lib/value-parser/parse.js +0 -259
  130. package/lib/value-parser/stringify.js +0 -38
  131. package/lib/value-parser/unit.js +0 -86
  132. package/lib/value-parser/walk.js +0 -16
  133. package/loadConfig.d.ts +0 -4
  134. package/loadConfig.js +0 -2
  135. package/nesting/index.d.ts +0 -4
  136. package/nesting/index.js +0 -2
  137. package/peers/index.js +0 -96624
  138. package/plugin.d.ts +0 -11
  139. package/plugin.js +0 -2
  140. package/prettier.config.js +0 -19
  141. package/resolveConfig.d.ts +0 -31
  142. package/resolveConfig.js +0 -2
  143. package/screens.css +0 -1
  144. package/scripts/create-plugin-list.js +0 -10
  145. package/scripts/generate-types.js +0 -104
  146. package/scripts/release-channel.js +0 -18
  147. package/scripts/release-notes.js +0 -21
  148. package/scripts/swap-engines.js +0 -40
  149. package/scripts/type-utils.js +0 -27
  150. package/src/cli/build/deps.js +0 -56
  151. package/src/cli/build/index.js +0 -49
  152. package/src/cli/build/plugin.js +0 -444
  153. package/src/cli/build/utils.js +0 -76
  154. package/src/cli/build/watching.js +0 -229
  155. package/src/cli/help/index.js +0 -70
  156. package/src/cli/index.js +0 -216
  157. package/src/cli/init/index.js +0 -79
  158. package/src/cli-peer-dependencies.js +0 -15
  159. package/src/cli.js +0 -7
  160. package/src/corePluginList.js +0 -1
  161. package/src/corePlugins.js +0 -2943
  162. package/src/css/LICENSE +0 -25
  163. package/src/css/preflight.css +0 -385
  164. package/src/featureFlags.js +0 -66
  165. package/src/index.js +0 -1
  166. package/src/lib/cacheInvalidation.js +0 -52
  167. package/src/lib/collapseAdjacentRules.js +0 -58
  168. package/src/lib/collapseDuplicateDeclarations.js +0 -93
  169. package/src/lib/content.js +0 -208
  170. package/src/lib/defaultExtractor.js +0 -230
  171. package/src/lib/detectNesting.js +0 -47
  172. package/src/lib/evaluateTailwindFunctions.js +0 -272
  173. package/src/lib/expandApplyAtRules.js +0 -620
  174. package/src/lib/expandTailwindAtRules.js +0 -300
  175. package/src/lib/findAtConfigPath.js +0 -48
  176. package/src/lib/generateRules.js +0 -951
  177. package/src/lib/getModuleDependencies.js +0 -79
  178. package/src/lib/load-config.ts +0 -39
  179. package/src/lib/normalizeTailwindDirectives.js +0 -84
  180. package/src/lib/offsets.js +0 -373
  181. package/src/lib/partitionApplyAtRules.js +0 -52
  182. package/src/lib/regex.js +0 -74
  183. package/src/lib/remap-bitfield.js +0 -82
  184. package/src/lib/resolveDefaultsAtRules.js +0 -163
  185. package/src/lib/setupContextUtils.js +0 -1366
  186. package/src/lib/setupTrackingContext.js +0 -169
  187. package/src/lib/sharedState.js +0 -61
  188. package/src/lib/substituteScreenAtRules.js +0 -19
  189. package/src/oxide/cli/build/deps.ts +0 -91
  190. package/src/oxide/cli/build/index.ts +0 -47
  191. package/src/oxide/cli/build/plugin.ts +0 -442
  192. package/src/oxide/cli/build/utils.ts +0 -74
  193. package/src/oxide/cli/build/watching.ts +0 -225
  194. package/src/oxide/cli/help/index.ts +0 -69
  195. package/src/oxide/cli/index.ts +0 -204
  196. package/src/oxide/cli/init/index.ts +0 -59
  197. package/src/oxide/cli.ts +0 -1
  198. package/src/oxide/postcss-plugin.ts +0 -1
  199. package/src/plugin.js +0 -107
  200. package/src/postcss-plugins/nesting/README.md +0 -42
  201. package/src/postcss-plugins/nesting/index.js +0 -13
  202. package/src/postcss-plugins/nesting/plugin.js +0 -80
  203. package/src/processTailwindFeatures.js +0 -59
  204. package/src/public/colors.js +0 -322
  205. package/src/public/create-plugin.js +0 -2
  206. package/src/public/default-config.js +0 -4
  207. package/src/public/default-theme.js +0 -4
  208. package/src/public/load-config.js +0 -2
  209. package/src/public/resolve-config.js +0 -7
  210. package/src/util/applyImportantSelector.js +0 -27
  211. package/src/util/bigSign.js +0 -3
  212. package/src/util/buildMediaQuery.js +0 -22
  213. package/src/util/cloneDeep.js +0 -11
  214. package/src/util/cloneNodes.js +0 -49
  215. package/src/util/color.js +0 -88
  216. package/src/util/colorNames.js +0 -150
  217. package/src/util/configurePlugins.js +0 -23
  218. package/src/util/createPlugin.js +0 -27
  219. package/src/util/createUtilityPlugin.js +0 -37
  220. package/src/util/dataTypes.js +0 -406
  221. package/src/util/defaults.js +0 -17
  222. package/src/util/escapeClassName.js +0 -8
  223. package/src/util/escapeCommas.js +0 -3
  224. package/src/util/flattenColorPalette.js +0 -13
  225. package/src/util/formatVariantSelector.js +0 -324
  226. package/src/util/getAllConfigs.js +0 -38
  227. package/src/util/hashConfig.js +0 -5
  228. package/src/util/isKeyframeRule.js +0 -3
  229. package/src/util/isPlainObject.js +0 -8
  230. package/src/util/isSyntacticallyValidPropertyValue.js +0 -61
  231. package/src/util/log.js +0 -29
  232. package/src/util/nameClass.js +0 -30
  233. package/src/util/negateValue.js +0 -24
  234. package/src/util/normalizeConfig.js +0 -301
  235. package/src/util/normalizeScreens.js +0 -140
  236. package/src/util/parseAnimationValue.js +0 -68
  237. package/src/util/parseBoxShadowValue.js +0 -72
  238. package/src/util/parseDependency.js +0 -44
  239. package/src/util/parseGlob.js +0 -24
  240. package/src/util/parseObjectStyles.js +0 -19
  241. package/src/util/pluginUtils.js +0 -307
  242. package/src/util/prefixSelector.js +0 -33
  243. package/src/util/pseudoElements.js +0 -171
  244. package/src/util/removeAlphaVariables.js +0 -24
  245. package/src/util/resolveConfig.js +0 -277
  246. package/src/util/resolveConfigPath.js +0 -66
  247. package/src/util/responsive.js +0 -10
  248. package/src/util/splitAtTopLevelOnly.js +0 -52
  249. package/src/util/tap.js +0 -4
  250. package/src/util/toColorValue.js +0 -3
  251. package/src/util/toPath.js +0 -26
  252. package/src/util/transformThemeValue.js +0 -62
  253. package/src/util/validateConfig.js +0 -26
  254. package/src/util/validateFormalSyntax.js +0 -34
  255. package/src/util/withAlphaVariable.js +0 -49
  256. package/src/value-parser/LICENSE +0 -22
  257. package/src/value-parser/README.md +0 -3
  258. package/src/value-parser/index.d.ts +0 -177
  259. package/src/value-parser/index.js +0 -28
  260. package/src/value-parser/parse.js +0 -303
  261. package/src/value-parser/stringify.js +0 -41
  262. package/src/value-parser/unit.js +0 -118
  263. package/src/value-parser/walk.js +0 -18
  264. package/stubs/.gitignore +0 -1
  265. package/stubs/.prettierrc.json +0 -6
  266. package/stubs/config.full.js +0 -1062
  267. package/stubs/config.simple.js +0 -7
  268. package/stubs/postcss.config.cjs +0 -6
  269. package/stubs/postcss.config.js +0 -6
  270. package/stubs/tailwind.config.cjs +0 -2
  271. package/stubs/tailwind.config.js +0 -2
  272. package/stubs/tailwind.config.ts +0 -3
  273. package/tailwind.css +0 -5
  274. package/types/config.d.ts +0 -376
  275. package/types/generated/.gitkeep +0 -0
  276. package/types/generated/colors.d.ts +0 -298
  277. package/types/generated/corePluginList.d.ts +0 -1
  278. package/types/generated/default-theme.d.ts +0 -397
  279. package/types/index.d.ts +0 -11
  280. package/variants.css +0 -1
@@ -1,7 +0,0 @@
1
- module.exports = {
2
- content: [],
3
- theme: {
4
- extend: {},
5
- },
6
- plugins: [],
7
- }
@@ -1,6 +0,0 @@
1
- module.exports = {
2
- plugins: {
3
- tailwindcss: {},
4
- autoprefixer: {},
5
- },
6
- }
@@ -1,6 +0,0 @@
1
- export default {
2
- plugins: {
3
- tailwindcss: {},
4
- autoprefixer: {},
5
- },
6
- }
@@ -1,2 +0,0 @@
1
- /** @type {import('tailwindcss').Config} */
2
- module.exports = __CONFIG__
@@ -1,2 +0,0 @@
1
- /** @type {import('tailwindcss').Config} */
2
- export default __CONFIG__
@@ -1,3 +0,0 @@
1
- import type { Config } from 'tailwindcss'
2
-
3
- export default __CONFIG__ satisfies Config
package/tailwind.css DELETED
@@ -1,5 +0,0 @@
1
- @tailwind base;
2
-
3
- @tailwind components;
4
-
5
- @tailwind utilities;
package/types/config.d.ts DELETED
@@ -1,376 +0,0 @@
1
- import type { CorePluginList } from './generated/corePluginList'
2
- import type { DefaultColors } from './generated/colors'
3
-
4
- // Helpers
5
- type Expand<T> = T extends object
6
- ? T extends infer O
7
- ? { [K in keyof O]: Expand<O[K]> }
8
- : never
9
- : T
10
- type KeyValuePair<K extends keyof any = string, V = string> = Record<K, V>
11
- interface RecursiveKeyValuePair<K extends keyof any = string, V = string> {
12
- [key: string]: V | RecursiveKeyValuePair<K, V>
13
- }
14
- export type ResolvableTo<T> = T | ((utils: PluginUtils) => T)
15
- type CSSRuleObject = RecursiveKeyValuePair<string, null | string | string[]>
16
-
17
- interface PluginUtils {
18
- colors: DefaultColors
19
- theme(path: string, defaultValue?: unknown): any
20
- breakpoints<I = Record<string, unknown>, O = I>(arg: I): O
21
- rgb(arg: string): (arg: Partial<{ opacityVariable: string; opacityValue: number }>) => string
22
- hsl(arg: string): (arg: Partial<{ opacityVariable: string; opacityValue: number }>) => string
23
- }
24
-
25
- // Content related config
26
- type FilePath = string
27
- type RawFile = { raw: string; extension?: string }
28
- type ExtractorFn = (content: string) => string[]
29
- type TransformerFn = (content: string) => string
30
- type ContentConfig =
31
- | (FilePath | RawFile)[]
32
- | {
33
- files: (FilePath | RawFile)[]
34
- relative?: boolean
35
- extract?: ExtractorFn | { [extension: string]: ExtractorFn }
36
- transform?: TransformerFn | { [extension: string]: TransformerFn }
37
- }
38
-
39
- // Important related config
40
- type ImportantConfig = boolean | string
41
-
42
- // Prefix related config
43
- type PrefixConfig = string
44
-
45
- // Separator related config
46
- type SeparatorConfig = string
47
-
48
- // Safelist related config
49
- type SafelistConfig = string | { pattern: RegExp; variants?: string[] }
50
-
51
- // Blocklist related config
52
- type BlocklistConfig = string
53
-
54
- // Presets related config
55
- type PresetsConfig = Partial<Config>
56
-
57
- // Future related config
58
- type FutureConfigValues =
59
- | 'hoverOnlyWhenSupported'
60
- | 'respectDefaultRingColorOpacity'
61
- | 'disableColorOpacityUtilitiesByDefault'
62
- | 'relativeContentPathsByDefault'
63
- type FutureConfig = Expand<'all' | Partial<Record<FutureConfigValues, boolean>>> | []
64
-
65
- // Experimental related config
66
- type ExperimentalConfigValues = 'optimizeUniversalDefaults' | 'matchVariant'
67
- type ExperimentalConfig = Expand<'all' | Partial<Record<ExperimentalConfigValues, boolean>>> | []
68
-
69
- // DarkMode related config
70
- type DarkModeConfig =
71
- // Use the `media` query strategy.
72
- | 'media'
73
- // Use the `class` strategy, which requires a `.dark` class on the `html`.
74
- | 'class'
75
- // Use the `class` strategy with a custom class instead of `.dark`.
76
- | ['class', string]
77
- // Use the `selector` strategy — same as `class` but uses `:where()` for more predicable behavior
78
- | 'selector'
79
- // Use the `selector` strategy with a custom selector instead of `.dark`.
80
- | ['selector', string]
81
- // Use the `variant` strategy, which allows you to completely customize the selector
82
- // It takes a string or an array of strings, which are passed directly to `addVariant()`
83
- | ['variant', string | string[]]
84
-
85
- type Screen = { raw: string } | { min: string } | { max: string } | { min: string; max: string }
86
- type ScreensConfig = string[] | KeyValuePair<string, string | Screen | Screen[]>
87
-
88
- // Theme related config
89
- export interface ThemeConfig {
90
- // Responsiveness
91
- screens: ResolvableTo<ScreensConfig>
92
- supports: ResolvableTo<Record<string, string>>
93
- data: ResolvableTo<Record<string, string>>
94
-
95
- // Reusable base configs
96
- colors: ResolvableTo<RecursiveKeyValuePair>
97
- spacing: ResolvableTo<KeyValuePair>
98
-
99
- // Components
100
- container: ResolvableTo<
101
- Partial<{
102
- screens: ScreensConfig
103
- center: boolean
104
- padding: string | Record<string, string>
105
- }>
106
- >
107
-
108
- // Utilities
109
- inset: ThemeConfig['spacing']
110
- zIndex: ResolvableTo<KeyValuePair>
111
- order: ResolvableTo<KeyValuePair>
112
- gridColumn: ResolvableTo<KeyValuePair>
113
- gridColumnStart: ResolvableTo<KeyValuePair>
114
- gridColumnEnd: ResolvableTo<KeyValuePair>
115
- gridRow: ResolvableTo<KeyValuePair>
116
- gridRowStart: ResolvableTo<KeyValuePair>
117
- gridRowEnd: ResolvableTo<KeyValuePair>
118
- margin: ThemeConfig['spacing']
119
- aspectRatio: ResolvableTo<KeyValuePair>
120
- height: ThemeConfig['spacing']
121
- maxHeight: ThemeConfig['spacing']
122
- minHeight: ResolvableTo<KeyValuePair>
123
- width: ThemeConfig['spacing']
124
- maxWidth: ResolvableTo<KeyValuePair>
125
- minWidth: ResolvableTo<KeyValuePair>
126
- flex: ResolvableTo<KeyValuePair>
127
- flexShrink: ResolvableTo<KeyValuePair>
128
- flexGrow: ResolvableTo<KeyValuePair>
129
- flexBasis: ThemeConfig['spacing']
130
- borderSpacing: ThemeConfig['spacing']
131
- transformOrigin: ResolvableTo<KeyValuePair>
132
- translate: ThemeConfig['spacing']
133
- rotate: ResolvableTo<KeyValuePair>
134
- skew: ResolvableTo<KeyValuePair>
135
- scale: ResolvableTo<KeyValuePair>
136
- animation: ResolvableTo<KeyValuePair>
137
- keyframes: ResolvableTo<KeyValuePair<string, KeyValuePair<string, KeyValuePair>>>
138
- cursor: ResolvableTo<KeyValuePair>
139
- scrollMargin: ThemeConfig['spacing']
140
- scrollPadding: ThemeConfig['spacing']
141
- listStyleType: ResolvableTo<KeyValuePair>
142
- columns: ResolvableTo<KeyValuePair>
143
- gridAutoColumns: ResolvableTo<KeyValuePair>
144
- gridAutoRows: ResolvableTo<KeyValuePair>
145
- gridTemplateColumns: ResolvableTo<KeyValuePair>
146
- gridTemplateRows: ResolvableTo<KeyValuePair>
147
- gap: ThemeConfig['spacing']
148
- space: ThemeConfig['spacing']
149
- divideWidth: ThemeConfig['borderWidth']
150
- divideColor: ThemeConfig['borderColor']
151
- divideOpacity: ThemeConfig['borderOpacity']
152
- borderRadius: ResolvableTo<KeyValuePair>
153
- borderWidth: ResolvableTo<KeyValuePair>
154
- borderColor: ThemeConfig['colors']
155
- borderOpacity: ThemeConfig['opacity']
156
- backgroundColor: ThemeConfig['colors']
157
- backgroundOpacity: ThemeConfig['opacity']
158
- backgroundImage: ResolvableTo<KeyValuePair>
159
- gradientColorStops: ThemeConfig['colors']
160
- backgroundSize: ResolvableTo<KeyValuePair>
161
- backgroundPosition: ResolvableTo<KeyValuePair>
162
- fill: ThemeConfig['colors']
163
- stroke: ThemeConfig['colors']
164
- strokeWidth: ResolvableTo<KeyValuePair>
165
- objectPosition: ResolvableTo<KeyValuePair>
166
- padding: ThemeConfig['spacing']
167
- textIndent: ThemeConfig['spacing']
168
- fontFamily: ResolvableTo<
169
- KeyValuePair<
170
- string,
171
- | string
172
- | string[]
173
- | [
174
- fontFamily: string | string[],
175
- configuration: Partial<{
176
- fontFeatureSettings: string
177
- fontVariationSettings: string
178
- }>
179
- ]
180
- >
181
- >
182
- fontSize: ResolvableTo<
183
- KeyValuePair<
184
- string,
185
- | string
186
- | [fontSize: string, lineHeight: string]
187
- | [
188
- fontSize: string,
189
- configuration: Partial<{
190
- lineHeight: string
191
- letterSpacing: string
192
- fontWeight: string | number
193
- }>
194
- ]
195
- >
196
- >
197
- fontWeight: ResolvableTo<KeyValuePair>
198
- lineHeight: ResolvableTo<KeyValuePair>
199
- letterSpacing: ResolvableTo<KeyValuePair>
200
- textColor: ThemeConfig['colors']
201
- textOpacity: ThemeConfig['opacity']
202
- textDecorationColor: ThemeConfig['colors']
203
- textDecorationThickness: ResolvableTo<KeyValuePair>
204
- textUnderlineOffset: ResolvableTo<KeyValuePair>
205
- placeholderColor: ThemeConfig['colors']
206
- placeholderOpacity: ThemeConfig['opacity']
207
- caretColor: ThemeConfig['colors']
208
- accentColor: ThemeConfig['colors']
209
- opacity: ResolvableTo<KeyValuePair>
210
- boxShadow: ResolvableTo<KeyValuePair>
211
- boxShadowColor: ThemeConfig['colors']
212
- outlineWidth: ResolvableTo<KeyValuePair>
213
- outlineOffset: ResolvableTo<KeyValuePair>
214
- outlineColor: ThemeConfig['colors']
215
- ringWidth: ResolvableTo<KeyValuePair>
216
- ringColor: ThemeConfig['colors']
217
- ringOpacity: ThemeConfig['opacity']
218
- ringOffsetWidth: ResolvableTo<KeyValuePair>
219
- ringOffsetColor: ThemeConfig['colors']
220
- blur: ResolvableTo<KeyValuePair>
221
- brightness: ResolvableTo<KeyValuePair>
222
- contrast: ResolvableTo<KeyValuePair>
223
- dropShadow: ResolvableTo<KeyValuePair<string, string | string[]>>
224
- grayscale: ResolvableTo<KeyValuePair>
225
- hueRotate: ResolvableTo<KeyValuePair>
226
- invert: ResolvableTo<KeyValuePair>
227
- saturate: ResolvableTo<KeyValuePair>
228
- sepia: ResolvableTo<KeyValuePair>
229
- backdropBlur: ThemeConfig['blur']
230
- backdropBrightness: ThemeConfig['brightness']
231
- backdropContrast: ThemeConfig['contrast']
232
- backdropGrayscale: ThemeConfig['grayscale']
233
- backdropHueRotate: ThemeConfig['hueRotate']
234
- backdropInvert: ThemeConfig['invert']
235
- backdropOpacity: ThemeConfig['opacity']
236
- backdropSaturate: ThemeConfig['saturate']
237
- backdropSepia: ThemeConfig['sepia']
238
- transitionProperty: ResolvableTo<KeyValuePair>
239
- transitionTimingFunction: ResolvableTo<KeyValuePair>
240
- transitionDelay: ResolvableTo<KeyValuePair>
241
- transitionDuration: ResolvableTo<KeyValuePair>
242
- willChange: ResolvableTo<KeyValuePair>
243
- content: ResolvableTo<KeyValuePair>
244
- }
245
-
246
- interface CustomThemeConfig extends ThemeConfig {
247
- [key: string]: any
248
- }
249
-
250
- // Core plugins related config
251
- type CorePluginsConfig = CorePluginList[] | Expand<Partial<Record<CorePluginList, boolean>>>
252
-
253
- // Plugins related config
254
- type ValueType =
255
- | 'any'
256
- | 'color'
257
- | 'url'
258
- | 'image'
259
- | 'length'
260
- | 'percentage'
261
- | 'position'
262
- | 'lookup'
263
- | 'generic-name'
264
- | 'family-name'
265
- | 'number'
266
- | 'line-width'
267
- | 'absolute-size'
268
- | 'relative-size'
269
- | 'shadow'
270
- export interface PluginAPI {
271
- // for registering new static utility styles
272
- addUtilities(
273
- utilities: CSSRuleObject | CSSRuleObject[],
274
- options?: Partial<{
275
- respectPrefix: boolean
276
- respectImportant: boolean
277
- }>
278
- ): void
279
- // for registering new dynamic utility styles
280
- matchUtilities<T = string, U = string>(
281
- utilities: KeyValuePair<
282
- string,
283
- (value: T | string, extra: { modifier: U | string | null }) => CSSRuleObject | null
284
- >,
285
- options?: Partial<{
286
- respectPrefix: boolean
287
- respectImportant: boolean
288
- type: ValueType | ValueType[]
289
- values: KeyValuePair<string, T>
290
- modifiers: 'any' | KeyValuePair<string, U>
291
- supportsNegativeValues: boolean
292
- }>
293
- ): void
294
- // for registering new static component styles
295
- addComponents(
296
- components: CSSRuleObject | CSSRuleObject[],
297
- options?: Partial<{
298
- respectPrefix: boolean
299
- respectImportant: boolean
300
- }>
301
- ): void
302
- // for registering new dynamic component styles
303
- matchComponents<T = string, U = string>(
304
- components: KeyValuePair<
305
- string,
306
- (value: T | string, extra: { modifier: U | string | null }) => CSSRuleObject | null
307
- >,
308
- options?: Partial<{
309
- respectPrefix: boolean
310
- respectImportant: boolean
311
- type: ValueType | ValueType[]
312
- values: KeyValuePair<string, T>
313
- modifiers: 'any' | KeyValuePair<string, U>
314
- supportsNegativeValues: boolean
315
- }>
316
- ): void
317
- // for registering new base styles
318
- addBase(base: CSSRuleObject | CSSRuleObject[]): void
319
- // for registering custom variants
320
- addVariant(name: string, definition: string | string[] | (() => string) | (() => string)[]): void
321
- matchVariant<T = string>(
322
- name: string,
323
- cb: (value: T | string, extra: { modifier: string | null }) => string | string[],
324
- options?: {
325
- values?: KeyValuePair<string, T>
326
- sort?(
327
- a: { value: T | string; modifier: string | null },
328
- b: { value: T | string; modifier: string | null }
329
- ): number
330
- }
331
- ): void
332
- // for looking up values in the user’s theme configuration
333
- theme: <TDefaultValue = Config['theme']>(
334
- path?: string,
335
- defaultValue?: TDefaultValue
336
- ) => TDefaultValue
337
- // for looking up values in the user’s Tailwind configuration
338
- config: <TDefaultValue = Config>(path?: string, defaultValue?: TDefaultValue) => TDefaultValue
339
- // for checking if a core plugin is enabled
340
- corePlugins(path: string): boolean
341
- // for manually escaping strings meant to be used in class names
342
- e: (className: string) => string
343
- }
344
- export type PluginCreator = (api: PluginAPI) => void
345
- export type PluginsConfig = (
346
- | PluginCreator
347
- | { handler: PluginCreator; config?: Partial<Config> }
348
- | {
349
- (options: any): { handler: PluginCreator; config?: Partial<Config> }
350
- __isOptionsFunction: true
351
- }
352
- )[]
353
-
354
- // Top level config related
355
- interface RequiredConfig {
356
- content: ContentConfig
357
- }
358
-
359
- interface OptionalConfig {
360
- important: Partial<ImportantConfig>
361
- prefix: Partial<PrefixConfig>
362
- separator: Partial<SeparatorConfig>
363
- safelist: Array<SafelistConfig>
364
- blocklist: Array<BlocklistConfig>
365
- presets: Array<PresetsConfig>
366
- future: Partial<FutureConfig>
367
- experimental: Partial<ExperimentalConfig>
368
- darkMode: Partial<DarkModeConfig>
369
- theme: Partial<CustomThemeConfig & { extend: Partial<CustomThemeConfig> }>
370
- corePlugins: Partial<CorePluginsConfig>
371
- plugins: Partial<PluginsConfig>
372
- // Custom
373
- [key: string]: any
374
- }
375
-
376
- export type Config = RequiredConfig & Partial<OptionalConfig>
File without changes