migrateImport() — tailwindcss Function Reference
Architecture documentation for the migrateImport() function in migrate-import.ts from the tailwindcss codebase.
Entity Profile
Dependency Diagram
graph TD 3c115506_d301_3ffd_6d4a_a58dbd7aaed5["migrateImport()"] 4110edba_26d6_f493_077a_dd261e1ea456["migrate-import.ts"] 3c115506_d301_3ffd_6d4a_a58dbd7aaed5 -->|defined in| 4110edba_26d6_f493_077a_dd261e1ea456 fd564c82_e213_1546_a482_7c71c540ad9d["migrate()"] fd564c82_e213_1546_a482_7c71c540ad9d -->|calls| 3c115506_d301_3ffd_6d4a_a58dbd7aaed5 1be562b7_fe23_7e22_03ec_31b3d101e5e5["migrateContents()"] 1be562b7_fe23_7e22_03ec_31b3d101e5e5 -->|calls| 3c115506_d301_3ffd_6d4a_a58dbd7aaed5 c58cbb33_f3cc_0b4f_844a_15bf66a1dc61["segment()"] 3c115506_d301_3ffd_6d4a_a58dbd7aaed5 -->|calls| c58cbb33_f3cc_0b4f_844a_15bf66a1dc61 6037d149_2cd7_be02_40f7_bc552380ed53["parseImportParams()"] 3c115506_d301_3ffd_6d4a_a58dbd7aaed5 -->|calls| 6037d149_2cd7_be02_40f7_bc552380ed53 49a8c506_c50e_ed4b_5a0e_0393edae2b6f["parse()"] 3c115506_d301_3ffd_6d4a_a58dbd7aaed5 -->|calls| 49a8c506_c50e_ed4b_5a0e_0393edae2b6f style 3c115506_d301_3ffd_6d4a_a58dbd7aaed5 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/@tailwindcss-upgrade/src/codemods/css/migrate-import.ts lines 8–52
export function migrateImport(): Plugin {
async function migrate(root: Root) {
let file = root.source?.input.file
if (!file) return
let promises: Promise<void>[] = []
root.walkAtRules('import', (rule) => {
try {
let [firstParam, ...rest] = segment(rule.params, ' ')
let params = parseImportParams(ValueParser.parse(firstParam))
if (!params) return
let isRelative = params.uri[0] === '.'
let hasCssExtension = params.uri.endsWith('.css')
if (isRelative && hasCssExtension) {
return
}
let fullPath = resolve(dirname(file), params.uri)
if (!hasCssExtension) fullPath += '.css'
promises.push(
fs.stat(fullPath).then(() => {
let ext = hasCssExtension ? '' : '.css'
let path = isRelative ? params.uri : `./${params.uri}`
rule.params = [`'${path}${ext}'`, ...rest].join(' ')
}),
)
} catch {
// When an error occurs while parsing the `@import` statement, we skip
// the import. This will happen in cases where you import an external
// URL.
}
})
await Promise.allSettled(promises)
}
return {
postcssPlugin: '@tailwindcss/upgrade/migrate-import',
OnceExit: migrate,
}
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does migrateImport() do?
migrateImport() is a function in the tailwindcss codebase, defined in packages/@tailwindcss-upgrade/src/codemods/css/migrate-import.ts.
Where is migrateImport() defined?
migrateImport() is defined in packages/@tailwindcss-upgrade/src/codemods/css/migrate-import.ts at line 8.
What does migrateImport() call?
migrateImport() calls 3 function(s): parse, parseImportParams, segment.
What calls migrateImport()?
migrateImport() is called by 2 function(s): migrate, migrateContents.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free