registry.test.ts — ui Source File
Architecture documentation for registry.test.ts, a typescript file in the ui codebase. 5 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR e1e4fe12_f94e_9708_96a3_f46784286b86["registry.test.ts"] c41eed12_c415_48c8_bcf4_9d09d3424a18["api.ts"] e1e4fe12_f94e_9708_96a3_f46784286b86 --> c41eed12_c415_48c8_bcf4_9d09d3424a18 476dcfe7_0a2a_4ebb_5e7d_e4200f6d58a8["resolveTree"] e1e4fe12_f94e_9708_96a3_f46784286b86 --> 476dcfe7_0a2a_4ebb_5e7d_e4200f6d58a8 d622c874_d9cc_69e4_4150_aadbf45b3cda["schema.ts"] e1e4fe12_f94e_9708_96a3_f46784286b86 --> d622c874_d9cc_69e4_4150_aadbf45b3cda c8d55bee_7008_1e1f_317b_8dc47b31b6a8["vitest"] e1e4fe12_f94e_9708_96a3_f46784286b86 --> c8d55bee_7008_1e1f_317b_8dc47b31b6a8 6802ce19_522d_e5fb_e458_8826d9f6952e["zod"] e1e4fe12_f94e_9708_96a3_f46784286b86 --> 6802ce19_522d_e5fb_e458_8826d9f6952e style e1e4fe12_f94e_9708_96a3_f46784286b86 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { expect, test } from "vitest"
import { z } from "zod"
import { resolveTree } from "../../src/registry/api"
import { registryItemSchema } from "../../src/registry/schema"
test("resolve tree", async () => {
const index = [
{
name: "button",
dependencies: ["@radix-ui/react-slot"],
type: "registry:ui",
files: [{ type: "registry:ui", path: "button.tsx" }],
},
{
name: "dialog",
dependencies: ["@radix-ui/react-dialog"],
registryDependencies: ["button"],
type: "registry:ui",
files: [{ type: "registry:ui", path: "dialog.tsx" }],
},
{
name: "input",
registryDependencies: ["button"],
type: "registry:ui",
files: [{ type: "registry:ui", path: "input.tsx" }],
},
{
name: "alert-dialog",
dependencies: ["@radix-ui/react-alert-dialog"],
registryDependencies: ["button", "dialog"],
type: "registry:ui",
files: [{ type: "registry:ui", path: "alert-dialog.tsx" }],
},
{
name: "example-card",
type: "registry:component",
files: [{ type: "registry:component", path: "example-card.tsx" }],
registryDependencies: ["button", "dialog", "input"],
},
] satisfies z.infer<typeof registryItemSchema>[]
expect(
(await resolveTree(index, ["button"])).map((entry) => entry.name).sort()
).toEqual(["button"])
expect(
(await resolveTree(index, ["dialog"])).map((entry) => entry.name).sort()
).toEqual(["button", "dialog"])
expect(
(await resolveTree(index, ["alert-dialog", "dialog"]))
.map((entry) => entry.name)
.sort()
).toEqual(["alert-dialog", "button", "dialog"])
expect(
(await resolveTree(index, ["example-card"]))
.map((entry) => entry.name)
.sort()
).toEqual(["button", "dialog", "example-card", "input"])
expect(
(await resolveTree(index, ["foo"])).map((entry) => entry.name).sort()
).toEqual([])
expect(
(await resolveTree(index, ["button", "foo"]))
.map((entry) => entry.name)
.sort()
).toEqual(["button"])
})
Domain
Dependencies
- api.ts
- resolveTree
- schema.ts
- vitest
- zod
Source
Frequently Asked Questions
What does registry.test.ts do?
registry.test.ts is a source file in the ui codebase, written in typescript. It belongs to the FrameworkTooling domain.
What does registry.test.ts depend on?
registry.test.ts imports 5 module(s): api.ts, resolveTree, schema.ts, vitest, zod.
Where is registry.test.ts in the architecture?
registry.test.ts is located at packages/shadcn/test/utils/registry.test.ts (domain: FrameworkTooling, directory: packages/shadcn/test/utils).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free