Home / Function/ migrateJsConfig() — tailwindcss Function Reference

migrateJsConfig() — tailwindcss Function Reference

Architecture documentation for the migrateJsConfig() function in migrate-js-config.ts from the tailwindcss codebase.

Entity Profile

Dependency Diagram

graph TD
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8["migrateJsConfig()"]
  ffe9c87e_35ad_f431_9625_80fc875792a7["migrate-js-config.ts"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|defined in| ffe9c87e_35ad_f431_9625_80fc875792a7
  817bb61a_7ad0_1186_790a_6a40126eed80["run()"]
  817bb61a_7ad0_1186_790a_6a40126eed80 -->|calls| 617e9831_5cd2_4ca6_2c65_f89e3720cfd8
  2a6a0b85_eed3_a09b_8c8d_c2a585078dac["loadModule()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| 2a6a0b85_eed3_a09b_8c8d_c2a585078dac
  15b378ea_3aa4_54e9_344a_eae392b6770c["canMigrateConfig()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| 15b378ea_3aa4_54e9_344a_eae392b6770c
  8e778e08_76c6_9ee6_899b_7331b37b18ea["info()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| 8e778e08_76c6_9ee6_899b_7331b37b18ea
  d3ccc5ce_e370_63df_a97d_a2f004fd83ca["highlight()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| d3ccc5ce_e370_63df_a97d_a2f004fd83ca
  1c806fef_a933_285c_65d9_c10998b12c7d["relative()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| 1c806fef_a933_285c_65d9_c10998b12c7d
  f801b865_ef5a_08da_7238_161aad3ec371["migrateDarkMode()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| f801b865_ef5a_08da_7238_161aad3ec371
  ba8b79fb_a997_a4e8_be72_609168d2be54["migrateContent()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| ba8b79fb_a997_a4e8_be72_609168d2be54
  253815a9_405f_ff30_32b6_577fe2d91fb2["migrateTheme()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| 253815a9_405f_ff30_32b6_577fe2d91fb2
  79d116f6_7ff2_5367_4672_ab907f2a77dc["findStaticPlugins()"]
  617e9831_5cd2_4ca6_2c65_f89e3720cfd8 -->|calls| 79d116f6_7ff2_5367_4672_ab907f2a77dc
  style 617e9831_5cd2_4ca6_2c65_f89e3720cfd8 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/@tailwindcss-upgrade/src/codemods/config/migrate-js-config.ts lines 42–95

export async function migrateJsConfig(
  designSystem: DesignSystem,
  fullConfigPath: string,
  base: string,
): Promise<JSConfigMigration> {
  let [unresolvedConfig, source] = await Promise.all([
    loadModule(fullConfigPath, __dirname, () => {}).then((result) => result.module) as Config,
    fs.readFile(fullConfigPath, 'utf-8'),
  ])

  if (!canMigrateConfig(unresolvedConfig, source)) {
    info(
      `The configuration file at ${highlight(relative(fullConfigPath, base))} could not be automatically migrated to the new CSS configuration format, so your CSS has been updated to load your existing configuration file.`,
      { prefix: '↳ ' },
    )
    return null
  }

  let sources: { base: string; pattern: string }[] = []
  let plugins: { base: string; path: string; options: null | StaticPluginOptions }[] = []
  let cssConfigs: string[] = []

  if ('darkMode' in unresolvedConfig) {
    cssConfigs.push(migrateDarkMode(unresolvedConfig as any))
  }

  if ('content' in unresolvedConfig) {
    sources = await migrateContent(unresolvedConfig as any, fullConfigPath, base)
  }

  if ('theme' in unresolvedConfig) {
    let themeConfig = await migrateTheme(designSystem, unresolvedConfig, base)
    if (themeConfig) cssConfigs.push(themeConfig)
  }

  if ('corePlugins' in unresolvedConfig) {
    info(
      `The \`corePlugins\` option is no longer supported as of Tailwind CSS v4.0, so it's been removed from your configuration.`,
    )
  }

  let simplePlugins = findStaticPlugins(source)
  if (simplePlugins !== null) {
    for (let [path, options] of simplePlugins) {
      plugins.push({ base, path, options })
    }
  }

  return {
    sources,
    plugins,
    css: cssConfigs.join('\n'),
  }
}

Subdomains

Called By

Frequently Asked Questions

What does migrateJsConfig() do?
migrateJsConfig() is a function in the tailwindcss codebase, defined in packages/@tailwindcss-upgrade/src/codemods/config/migrate-js-config.ts.
Where is migrateJsConfig() defined?
migrateJsConfig() is defined in packages/@tailwindcss-upgrade/src/codemods/config/migrate-js-config.ts at line 42.
What does migrateJsConfig() call?
migrateJsConfig() calls 9 function(s): canMigrateConfig, findStaticPlugins, highlight, info, loadModule, migrateContent, migrateDarkMode, migrateTheme, and 1 more.
What calls migrateJsConfig()?
migrateJsConfig() 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