makeLessWorker() — vite Function Reference
Architecture documentation for the makeLessWorker() function in css.ts from the vite codebase.
Entity Profile
Dependency Diagram
graph TD f4aa02c2_8aea_ce8b_ef25_c65bac13369a["makeLessWorker()"] c3eb47df_971b_0616_6c9f_29b3ded72224["css.ts"] f4aa02c2_8aea_ce8b_ef25_c65bac13369a -->|defined in| c3eb47df_971b_0616_6c9f_29b3ded72224 b115d8d2_4bdd_4a69_c76d_1789ff11d443["lessProcessor()"] b115d8d2_4bdd_4a69_c76d_1789ff11d443 -->|calls| f4aa02c2_8aea_ce8b_ef25_c65bac13369a f9a13b61_758d_6973_4d25_637ddaa2a22f["url()"] f4aa02c2_8aea_ce8b_ef25_c65bac13369a -->|calls| f9a13b61_758d_6973_4d25_637ddaa2a22f dfa2b928_25a4_a78f_1e11_1e7e643cae09["resolve()"] f4aa02c2_8aea_ce8b_ef25_c65bac13369a -->|calls| dfa2b928_25a4_a78f_1e11_1e7e643cae09 5b519ec5_dd2f_e06c_4b7f_2007d9f5d884["rebaseUrls()"] f4aa02c2_8aea_ce8b_ef25_c65bac13369a -->|calls| 5b519ec5_dd2f_e06c_4b7f_2007d9f5d884 style f4aa02c2_8aea_ce8b_ef25_c65bac13369a fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/vite/src/node/plugins/css.ts lines 2751–2896
const makeLessWorker = (
environment: PartialEnvironment,
resolvers: CSSAtImportResolvers,
maxWorkers: number | undefined,
) => {
const skipRebaseUrls = (unquotedUrl: string, _rawUrl: string) => {
// matches both
// - interpolation: `url('@{foo}')`
// - variable: `url(@foo)`
return unquotedUrl[0] === '@'
}
const viteLessResolve = async (
filename: string,
dir: string,
rootFile: string,
mime: string | undefined,
) => {
const resolved = await resolvers.less(
environment,
filename,
path.join(dir, '*'),
)
if (!resolved) return undefined
// don't rebase URLs in JavaScript plugins
if (mime === 'application/javascript') {
const file = path.resolve(resolved) // ensure os-specific flashes
return { resolved: file }
}
const result = await rebaseUrls(
environment,
resolved,
rootFile,
resolvers.less,
skipRebaseUrls,
)
return {
resolved,
contents: 'contents' in result ? result.contents : undefined,
}
}
const worker = new WorkerWithFallback(
async () => {
const [fsp, path] = await Promise.all([
import('node:fs/promises'),
import('node:path'),
])
let ViteLessManager: any
const createViteLessPlugin = (
less: typeof Less,
rootFile: string,
): Less.Plugin => {
const { FileManager } = less
ViteLessManager ??= class ViteManager extends FileManager {
rootFile
constructor(rootFile: string) {
super()
this.rootFile = rootFile
}
override supports(filename: string) {
return !/^(?:https?:)?\/\//.test(filename)
}
override supportsSync() {
return false
}
override async loadFile(
filename: string,
dir: string,
opts: any,
env: any,
): Promise<Less.FileLoadResult> {
const result = await viteLessResolve(
filename,
dir,
this.rootFile,
opts.mime,
)
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does makeLessWorker() do?
makeLessWorker() is a function in the vite codebase, defined in packages/vite/src/node/plugins/css.ts.
Where is makeLessWorker() defined?
makeLessWorker() is defined in packages/vite/src/node/plugins/css.ts at line 2751.
What does makeLessWorker() call?
makeLessWorker() calls 3 function(s): rebaseUrls, resolve, url.
What calls makeLessWorker()?
makeLessWorker() is called by 1 function(s): lessProcessor.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free