version-packages.mjs — tailwindcss Source File
Architecture documentation for version-packages.mjs, a javascript file in the tailwindcss codebase. 7 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR d6c1f5c9_4086_7d79_d50d_e9359be616f8["version-packages.mjs"] 69c3e246_0d60_1a3b_6419_4c423b01252f["node:child_process"] d6c1f5c9_4086_7d79_d50d_e9359be616f8 --> 69c3e246_0d60_1a3b_6419_4c423b01252f 5edb651c_933a_072d_b3a4_42d5414e0ac1["node:crypto"] d6c1f5c9_4086_7d79_d50d_e9359be616f8 --> 5edb651c_933a_072d_b3a4_42d5414e0ac1 b75e8457_6610_e7ce_eeaf_9a1dd10fc510["promises"] d6c1f5c9_4086_7d79_d50d_e9359be616f8 --> b75e8457_6610_e7ce_eeaf_9a1dd10fc510 05950b06_34e4_40bd_2622_1cfda03546ff["node:os"] d6c1f5c9_4086_7d79_d50d_e9359be616f8 --> 05950b06_34e4_40bd_2622_1cfda03546ff 89aef3dd_1eed_c141_d425_b8949215a653["node:path"] d6c1f5c9_4086_7d79_d50d_e9359be616f8 --> 89aef3dd_1eed_c141_d425_b8949215a653 8454872a_1bfa_3cb3_db8f_6d2e7e422a55["node:url"] d6c1f5c9_4086_7d79_d50d_e9359be616f8 --> 8454872a_1bfa_3cb3_db8f_6d2e7e422a55 10ecf419_277e_3620_6d06_e109dd18d553["prettier"] d6c1f5c9_4086_7d79_d50d_e9359be616f8 --> 10ecf419_277e_3620_6d06_e109dd18d553 style d6c1f5c9_4086_7d79_d50d_e9359be616f8 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { exec, spawnSync } from 'node:child_process'
import { randomUUID } from 'node:crypto'
import fs from 'node:fs/promises'
import { tmpdir } from 'node:os'
import path from 'node:path'
import url from 'node:url'
import prettier from 'prettier'
const __dirname = path.dirname(url.fileURLToPath(import.meta.url))
const root = path.resolve(__dirname, '..')
const version = process.argv[2] || null
// The known workspace is: @tailwindcss/oxide
// All the workspaces in `crates/node/npm/*` should always be in sync with
// `@tailwindcss/oxide`. You can think of them as one big package, but they are
// split into multiple packages because they are OS specific.
const syncedWorkspaces = new Map([
[
'@tailwindcss/oxide',
[
'crates/node/npm/android-arm-eabi',
'crates/node/npm/android-arm64',
'crates/node/npm/darwin-arm64',
'crates/node/npm/darwin-x64',
'crates/node/npm/freebsd-x64',
'crates/node/npm/linux-arm-gnueabihf',
'crates/node/npm/linux-arm64-gnu',
'crates/node/npm/linux-arm64-musl',
'crates/node/npm/linux-x64-gnu',
'crates/node/npm/linux-x64-musl',
'crates/node/npm/wasm32-wasi',
'crates/node/npm/win32-arm64-msvc',
'crates/node/npm/win32-x64-msvc',
],
],
['@tailwindcss/cli', ['packages/@tailwindcss-standalone']],
])
const inverseSyncedWorkspaces = new Map()
for (let [name, paths] of syncedWorkspaces) {
for (let [idx, filePath] of paths.entries()) {
// Make sure all the paths are absolute paths
paths[idx] = path.resolve(root, filePath, 'package.json')
// Make sure inverse lookup table exists
inverseSyncedWorkspaces.set(paths[idx], name)
}
}
exec(
"pnpm --silent --filter='!./playgrounds/*' --filter='!./integrations' --filter='!./packages/internal-example-plugin' -r exec pwd",
async (err, stdout) => {
if (err) {
console.error(err)
process.exit(1)
}
if (version !== null) {
for (let pkgPath of stdout
// ... (119 more lines)
Dependencies
- node:child_process
- node:crypto
- node:os
- node:path
- node:url
- prettier
- promises
Source
Frequently Asked Questions
What does version-packages.mjs do?
version-packages.mjs is a source file in the tailwindcss codebase, written in javascript.
What does version-packages.mjs depend on?
version-packages.mjs imports 7 module(s): node:child_process, node:crypto, node:os, node:path, node:url, prettier, promises.
Where is version-packages.mjs in the architecture?
version-packages.mjs is located at scripts/version-packages.mjs (directory: scripts).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free