Home / File/ compile.ts — tailwindcss Source File

compile.ts — tailwindcss Source File

Architecture documentation for compile.ts, a typescript file in the tailwindcss codebase. 13 imports, 2 dependents.

File typescript NodeServer Compiler 13 imports 2 dependents 13 functions

Entity Profile

Dependency Diagram

graph LR
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe["compile.ts"]
  b9cbffa4_c352_cf3c_268f_cbb174fb3a47["ast.ts"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> b9cbffa4_c352_cf3c_268f_cbb174fb3a47
  dcfd8d28_ca61_c44b_2e40_c2e96013ba03["AstNode"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> dcfd8d28_ca61_c44b_2e40_c2e96013ba03
  d5a4928f_80ca_0a99_96fb_178e14fe7a6a["get-module-dependencies.ts"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> d5a4928f_80ca_0a99_96fb_178e14fe7a6a
  9cfd6a48_f7c8_231f_3ab5_bd787226724b["getModuleDependencies"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> 9cfd6a48_f7c8_231f_3ab5_bd787226724b
  95a806ab_8556_4112_9786_fda4ff23eeca["urls.ts"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> 95a806ab_8556_4112_9786_fda4ff23eeca
  7ac5591b_df87_a0ae_2005_4d18e64a288f["rewriteUrls"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> 7ac5591b_df87_a0ae_2005_4d18e64a288f
  42ab2a4a_69df_1786_54b8_5b623677fb89["enhanced-resolve"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> 42ab2a4a_69df_1786_54b8_5b623677fb89
  c1291fb2_7db6_77f3_6602_d14182d7c25a["jiti"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> c1291fb2_7db6_77f3_6602_d14182d7c25a
  9c72d32d_a535_69d4_565b_b620ce2eaae1["node:fs"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> 9c72d32d_a535_69d4_565b_b620ce2eaae1
  b75e8457_6610_e7ce_eeaf_9a1dd10fc510["promises"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> b75e8457_6610_e7ce_eeaf_9a1dd10fc510
  89aef3dd_1eed_c141_d425_b8949215a653["node:path"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> 89aef3dd_1eed_c141_d425_b8949215a653
  8454872a_1bfa_3cb3_db8f_6d2e7e422a55["node:url"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> 8454872a_1bfa_3cb3_db8f_6d2e7e422a55
  a26072bf_cb87_c28a_9e44_29b7464905ec["tailwindcss"]
  86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe --> a26072bf_cb87_c28a_9e44_29b7464905ec
  ffe9c87e_35ad_f431_9625_80fc875792a7["migrate-js-config.ts"]
  ffe9c87e_35ad_f431_9625_80fc875792a7 --> 86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe
  style 86cbca6b_bfa0_804c_ee2e_2cc7a7aef7fe fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import EnhancedResolve from 'enhanced-resolve'
import { createJiti, type Jiti } from 'jiti'
import fs from 'node:fs'
import fsPromises from 'node:fs/promises'
import path from 'node:path'
import { pathToFileURL } from 'node:url'
import {
  __unstable__loadDesignSystem as ___unstable__loadDesignSystem,
  compile as _compile,
  compileAst as _compileAst,
  Features,
  Polyfills,
} from 'tailwindcss'
import type { AstNode } from '../../tailwindcss/src/ast'
import { getModuleDependencies } from './get-module-dependencies'
import { rewriteUrls } from './urls'

export { Features, Polyfills }

export type Resolver = (id: string, base: string) => Promise<string | false | undefined>

export interface CompileOptions {
  base: string
  from?: string
  onDependency: (path: string) => void
  shouldRewriteUrls?: boolean
  polyfills?: Polyfills

  customCssResolver?: Resolver
  customJsResolver?: Resolver
}

function createCompileOptions({
  base,
  from,
  polyfills,
  onDependency,
  shouldRewriteUrls,

  customCssResolver,
  customJsResolver,
}: CompileOptions) {
  return {
    base,
    polyfills,
    from,
    async loadModule(id: string, base: string) {
      return loadModule(id, base, onDependency, customJsResolver)
    },
    async loadStylesheet(id: string, sheetBase: string) {
      let sheet = await loadStylesheet(id, sheetBase, onDependency, customCssResolver)

      if (shouldRewriteUrls) {
        sheet.content = await rewriteUrls({
          css: sheet.content,
          root: base,
          base: sheet.base,
        })
      }

// ... (219 more lines)

Domain

Subdomains

Dependencies

Frequently Asked Questions

What does compile.ts do?
compile.ts is a source file in the tailwindcss codebase, written in typescript. It belongs to the NodeServer domain, Compiler subdomain.
What functions are defined in compile.ts?
compile.ts defines 13 function(s): __unstable__loadDesignSystem, compile, compileAst, createCompileOptions, ensureSourceDetectionRootExists, id, importModule, loadModule, loadStylesheet, path, and 3 more.
What does compile.ts depend on?
compile.ts imports 13 module(s): AstNode, ast.ts, enhanced-resolve, get-module-dependencies.ts, getModuleDependencies, jiti, node:fs, node:path, and 5 more.
What files import compile.ts?
compile.ts is imported by 2 file(s): migrate-js-config.ts, prepare-config.ts.
Where is compile.ts in the architecture?
compile.ts is located at packages/@tailwindcss-node/src/compile.ts (domain: NodeServer, subdomain: Compiler, directory: packages/@tailwindcss-node/src).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free