Home / File/ update-tailwind-content.test.ts — ui Source File

update-tailwind-content.test.ts — ui Source File

Architecture documentation for update-tailwind-content.test.ts, a typescript file in the ui codebase. 3 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  5c43c6df_a4eb_a95d_11bf_cef88b226441["update-tailwind-content.test.ts"]
  d72eaa38_229d_03b5_07e7_be0d275869a1["update-tailwind-content.ts"]
  5c43c6df_a4eb_a95d_11bf_cef88b226441 --> d72eaa38_229d_03b5_07e7_be0d275869a1
  f258e7e3_eb35_d03e_7b8e_d83716249f2d["transformTailwindContent"]
  5c43c6df_a4eb_a95d_11bf_cef88b226441 --> f258e7e3_eb35_d03e_7b8e_d83716249f2d
  c8d55bee_7008_1e1f_317b_8dc47b31b6a8["vitest"]
  5c43c6df_a4eb_a95d_11bf_cef88b226441 --> c8d55bee_7008_1e1f_317b_8dc47b31b6a8
  style 5c43c6df_a4eb_a95d_11bf_cef88b226441 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { describe, expect, test } from "vitest"

import { transformTailwindContent } from "../../../src/utils/updaters/update-tailwind-content"

const SHARED_CONFIG = {
  $schema: "https://ui.shadcn.com/schema.json",
  style: "new-york",
  rsc: true,
  tsx: true,
  tailwind: {
    config: "tailwind.config.ts",
    css: "app/globals.css",
    baseColor: "slate",
    cssVariables: true,
  },
  aliases: {
    components: "@/components",
    utils: "@/lib/utils",
  },
  resolvedPaths: {
    cwd: ".",
    tailwindConfig: "tailwind.config.ts",
    tailwindCss: "app/globals.css",
    components: "./components",
    utils: "./lib/utils",
    ui: "./components/ui",
  },
}

describe("transformTailwindContent -> content property", () => {
  test("should add content property if not in config", async () => {
    expect(
      await transformTailwindContent(
        `import type { Config } from 'tailwindcss'

const config: Config = {
  content: [
    "./pages/**/*.{js,ts,jsx,tsx,mdx}",
    "./components/**/*.{js,ts,jsx,tsx,mdx}",
    "./app/**/*.{js,ts,jsx,tsx,mdx}",
  ],
  theme: {
    extend: {
      backgroundImage: {
        "gradient-radial": "radial-gradient(var(--tw-gradient-stops))",
        "gradient-conic":
          "conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))",
      },
    },
  },
  plugins: [],
}
export default config
  `,
        ["./foo/**/*.{js,ts,jsx,tsx,mdx}", "./bar/**/*.{js,ts,jsx,tsx,mdx}"],
        {
          config: SHARED_CONFIG,
        }
      )
    ).toMatchSnapshot()
  })

  test("should NOT add content property if already in config", async () => {
    expect(
      await transformTailwindContent(
        `import type { Config } from 'tailwindcss'

const config: Config = {
  content: [
    "./pages/**/*.{js,ts,jsx,tsx,mdx}",
    "./components/**/*.{js,ts,jsx,tsx,mdx}",
    "./app/**/*.{js,ts,jsx,tsx,mdx}",
  ],
  theme: {
    extend: {
      backgroundImage: {
        "gradient-radial": "radial-gradient(var(--tw-gradient-stops))",
        "gradient-conic":
          "conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))",
      },
    },
  },
  plugins: [],
}
export default config
  `,
        ["./app/**/*.{js,ts,jsx,tsx,mdx}", "./bar/**/*.{js,ts,jsx,tsx,mdx}"],
        {
          config: SHARED_CONFIG,
        }
      )
    ).toMatchSnapshot()
  })
})

Frequently Asked Questions

What does update-tailwind-content.test.ts do?
update-tailwind-content.test.ts is a source file in the ui codebase, written in typescript. It belongs to the FrameworkTooling domain.
What does update-tailwind-content.test.ts depend on?
update-tailwind-content.test.ts imports 3 module(s): transformTailwindContent, update-tailwind-content.ts, vitest.
Where is update-tailwind-content.test.ts in the architecture?
update-tailwind-content.test.ts is located at packages/shadcn/test/utils/updaters/update-tailwind-content.test.ts (domain: FrameworkTooling, directory: packages/shadcn/test/utils/updaters).

Analyze Your Own Codebase

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

Try Supermodel Free