UNPKG

@johnmusans/arcadia-ui-style-engine

Version:

Shared style system logic and types for Arcadia UI components

37 lines (29 loc) 967 B
import type { RegistryItem } from "shadcn/registry"; import { registryUi } from "@arcadia-ui/registry-definition/registry-ui"; import { updateRegistryDependencies } from "../helpers/update-registry-deps"; import type { Style } from "../../types"; export function generateRegistryAll(options: { styleName: string; baseUrl: string; style: Style; }): RegistryItem { const { styleName, baseUrl, style } = options; const registryDependencies = [ ...new Set(registryUi.map((item) => item.name.split(":")[0])), ] as string[]; let registryItem: RegistryItem = { $schema: "https://ui.shadcn.com/schema/registry-item.json", extends: "none", name: "all", type: "registry:ui", title: `All ${styleName} components`, description: `All components for ${styleName} style`, registryDependencies, }; registryItem = updateRegistryDependencies(registryItem, { styleName, baseUrl, style, }); return registryItem; }