migratePostCSSConfig() — tailwindcss Function Reference
Architecture documentation for the migratePostCSSConfig() function in migrate-postcss.ts from the tailwindcss codebase.
Entity Profile
Dependency Diagram
graph TD 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069["migratePostCSSConfig()"] 9434c276_afef_dc51_650b_a8b408f077fc["migrate-postcss.ts"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|defined in| 9434c276_afef_dc51_650b_a8b408f077fc 817bb61a_7ad0_1186_790a_6a40126eed80["run()"] 817bb61a_7ad0_1186_790a_6a40126eed80 -->|calls| 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 3fbb522f_26f0_74e8_421c_8d9677121a34["detectJSConfigPath()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| 3fbb522f_26f0_74e8_421c_8d9677121a34 f9e8808d_82e8_403c_7491_74c3ba5e23be["migratePostCSSJSConfig()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| f9e8808d_82e8_403c_7491_74c3ba5e23be a91ee9d1_7968_6801_1de5_9ce7a305be96["migratePostCSSJsonConfig()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| a91ee9d1_7968_6801_1de5_9ce7a305be96 96f45b6f_b278_8e70_7a05_be18a2412c71["detectJSONConfigPath()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| 96f45b6f_b278_8e70_7a05_be18a2412c71 8e778e08_76c6_9ee6_899b_7331b37b18ea["info()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| 8e778e08_76c6_9ee6_899b_7331b37b18ea 9cc0ff32_ad5a_9207_5cc6_12717c5ad23e["pkg()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| 9cc0ff32_ad5a_9207_5cc6_12717c5ad23e a8400c40_f6b4_6c1d_1812_df53f33aaafc["success()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| a8400c40_f6b4_6c1d_1812_df53f33aaafc d3ccc5ce_e370_63df_a97d_a2f004fd83ca["highlight()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| d3ccc5ce_e370_63df_a97d_a2f004fd83ca 1c806fef_a933_285c_65d9_c10998b12c7d["relative()"] 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 -->|calls| 1c806fef_a933_285c_65d9_c10998b12c7d style 0cb85618_1b33_b9dc_ae2b_1bc3e6bd6069 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/@tailwindcss-upgrade/src/codemods/config/migrate-postcss.ts lines 19–131
export async function migratePostCSSConfig(base: string) {
let ranMigration = false
let didMigrate = false
let didAddPostcssClient = false
let didRemoveAutoprefixer = false
let didRemovePostCSSImport = false
let packageJsonPath = path.resolve(base, 'package.json')
let packageJson
try {
packageJson = JSON.parse(await fs.readFile(packageJsonPath, 'utf-8'))
} catch {}
// Priority 1: Handle JS config files
let jsConfigPath = await detectJSConfigPath(base)
if (jsConfigPath) {
let result = await migratePostCSSJSConfig(jsConfigPath)
ranMigration = true
if (result) {
didMigrate = true
didAddPostcssClient = result.didAddPostcssClient
didRemoveAutoprefixer = result.didRemoveAutoprefixer
didRemovePostCSSImport = result.didRemovePostCSSImport
}
}
// Priority 2: Handle package.json config
if (!ranMigration) {
if (packageJson && 'postcss' in packageJson) {
let result = await migratePostCSSJsonConfig(packageJson.postcss)
ranMigration = true
if (result) {
await fs.writeFile(
packageJsonPath,
JSON.stringify({ ...packageJson, postcss: result?.json }, null, 2),
)
didMigrate = true
didAddPostcssClient = result.didAddPostcssClient
didRemoveAutoprefixer = result.didRemoveAutoprefixer
didRemovePostCSSImport = result.didRemovePostCSSImport
}
}
}
// Priority 3: JSON based postcss config files
if (!ranMigration) {
let jsonConfigPath = await detectJSONConfigPath(base)
let jsonConfig: null | any = null
if (jsonConfigPath) {
try {
jsonConfig = JSON.parse(await fs.readFile(jsonConfigPath, 'utf-8'))
} catch {}
if (jsonConfig) {
let result = await migratePostCSSJsonConfig(jsonConfig)
ranMigration = true
if (result) {
await fs.writeFile(jsonConfigPath, JSON.stringify(result.json, null, 2))
didMigrate = true
didAddPostcssClient = result.didAddPostcssClient
didRemoveAutoprefixer = result.didRemoveAutoprefixer
didRemovePostCSSImport = result.didRemovePostCSSImport
}
}
}
}
if (!ranMigration) {
info('No PostCSS config found, skipping migration.', {
prefix: '↳ ',
})
return
}
if (didAddPostcssClient) {
let location = Object.hasOwn(packageJson?.dependencies ?? {}, 'tailwindcss')
? ('dependencies' as const)
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does migratePostCSSConfig() do?
migratePostCSSConfig() is a function in the tailwindcss codebase, defined in packages/@tailwindcss-upgrade/src/codemods/config/migrate-postcss.ts.
Where is migratePostCSSConfig() defined?
migratePostCSSConfig() is defined in packages/@tailwindcss-upgrade/src/codemods/config/migrate-postcss.ts at line 19.
What does migratePostCSSConfig() call?
migratePostCSSConfig() calls 9 function(s): detectJSConfigPath, detectJSONConfigPath, highlight, info, migratePostCSSJSConfig, migratePostCSSJsonConfig, pkg, relative, and 1 more.
What calls migratePostCSSConfig()?
migratePostCSSConfig() is called by 1 function(s): run.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free