resolveConfig() — tailwindcss Function Reference
Architecture documentation for the resolveConfig() function in resolve-config.ts from the tailwindcss codebase.
Entity Profile
Dependency Diagram
graph TD bc7b25d3_d5ad_3609_d595_c9755dfadcbb["resolveConfig()"] cad44155_17aa_e1d6_081a_8f3b4f06bcde["resolve-config.ts"] bc7b25d3_d5ad_3609_d595_c9755dfadcbb -->|defined in| cad44155_17aa_e1d6_081a_8f3b4f06bcde 253815a9_405f_ff30_32b6_577fe2d91fb2["migrateTheme()"] 253815a9_405f_ff30_32b6_577fe2d91fb2 -->|calls| bc7b25d3_d5ad_3609_d595_c9755dfadcbb d291baa7_da55_af11_0910_57476f99d01c["migrateMediaScreen()"] d291baa7_da55_af11_0910_57476f99d01c -->|calls| bc7b25d3_d5ad_3609_d595_c9755dfadcbb 2e186872_4660_9caa_6330_7fce815c6ad0["createResolvedUserConfig()"] 2e186872_4660_9caa_6330_7fce815c6ad0 -->|calls| bc7b25d3_d5ad_3609_d595_c9755dfadcbb 2351a59d_92ba_1342_1dcb_39b34492170e["upgradeToFullPluginSupport()"] 2351a59d_92ba_1342_1dcb_39b34492170e -->|calls| bc7b25d3_d5ad_3609_d595_c9755dfadcbb ad43be00_67b6_6995_8db8_004f4937d4bd["extractConfigs()"] bc7b25d3_d5ad_3609_d595_c9755dfadcbb -->|calls| ad43be00_67b6_6995_8db8_004f4937d4bd e544c002_a540_ba66_527d_bb3fc84f4e10["mergeTheme()"] bc7b25d3_d5ad_3609_d595_c9755dfadcbb -->|calls| e544c002_a540_ba66_527d_bb3fc84f4e10 style bc7b25d3_d5ad_3609_d595_c9755dfadcbb fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/tailwindcss/src/compat/config/resolve-config.ts lines 47–100
export function resolveConfig(
design: DesignSystem,
files: ConfigFile[],
): { resolvedConfig: ResolvedConfig; replacedThemeKeys: Set<string> } {
let ctx: ResolutionContext = {
design,
configs: [],
plugins: [],
content: {
files: [],
},
theme: {},
extend: {},
// Start with a minimal valid, but empty config
result: structuredClone(minimal),
}
for (let file of files) {
extractConfigs(ctx, file)
}
// Merge top level keys
for (let config of ctx.configs) {
if ('darkMode' in config && config.darkMode !== undefined) {
ctx.result.darkMode = config.darkMode ?? null
}
if ('prefix' in config && config.prefix !== undefined) {
ctx.result.prefix = config.prefix ?? ''
}
if ('blocklist' in config && config.blocklist !== undefined) {
ctx.result.blocklist = config.blocklist ?? []
}
if ('important' in config && config.important !== undefined) {
ctx.result.important = config.important ?? false
}
}
// Merge themes
let replacedThemeKeys = mergeTheme(ctx)
return {
resolvedConfig: {
...ctx.result,
content: ctx.content,
theme: ctx.theme as ResolvedConfig['theme'],
plugins: ctx.plugins,
},
replacedThemeKeys,
}
}
Domain
Subdomains
Source
Frequently Asked Questions
What does resolveConfig() do?
resolveConfig() is a function in the tailwindcss codebase, defined in packages/tailwindcss/src/compat/config/resolve-config.ts.
Where is resolveConfig() defined?
resolveConfig() is defined in packages/tailwindcss/src/compat/config/resolve-config.ts at line 47.
What does resolveConfig() call?
resolveConfig() calls 2 function(s): extractConfigs, mergeTheme.
What calls resolveConfig()?
resolveConfig() is called by 4 function(s): createResolvedUserConfig, migrateMediaScreen, migrateTheme, upgradeToFullPluginSupport.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free