shadcn 3.1.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/registry/schema.ts"],"names":["registryItemTypeSchema","z","registryItemFileSchema","registryItemTailwindSchema","registryItemCssVarsSchema","cssValueSchema","registryItemCssSchema","registryItemEnvVarsSchema","registryItemSchema","registrySchema","registryIndexSchema","stylesSchema","iconsSchema","registryBaseColorSchema","registryResolvedItemsTreeSchema","registryConfigItemSchema","s","registryConfigSchema","key","rawConfigSchema","configSchema","workspaceConfigSchema","searchResultItemSchema","searchResultsSchema"],"mappings":"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","file":"chunk-TGLVS3JU.js","sourcesContent":["import { z } from \"zod\"\n\n// Note: if you edit the schema here, you must also edit the schema in the\n// apps/www/public/schema/registry-item.json file.\n\nexport const registryItemTypeSchema = z.enum([\n \"registry:lib\",\n \"registry:block\",\n \"registry:component\",\n \"registry:ui\",\n \"registry:hook\",\n \"registry:page\",\n \"registry:file\",\n \"registry:theme\",\n \"registry:style\",\n \"registry:item\",\n\n // Internal use only\n \"registry:example\",\n \"registry:internal\",\n])\n\nexport const registryItemFileSchema = z.discriminatedUnion(\"type\", [\n // Target is required for registry:file and registry:page\n z.object({\n path: z.string(),\n content: z.string().optional(),\n type: z.enum([\"registry:file\", \"registry:page\"]),\n target: z.string(),\n }),\n z.object({\n path: z.string(),\n content: z.string().optional(),\n type: registryItemTypeSchema.exclude([\"registry:file\", \"registry:page\"]),\n target: z.string().optional(),\n }),\n])\n\nexport const registryItemTailwindSchema = z.object({\n config: z\n .object({\n content: z.array(z.string()).optional(),\n theme: z.record(z.string(), z.any()).optional(),\n plugins: z.array(z.string()).optional(),\n })\n .optional(),\n})\n\nexport const registryItemCssVarsSchema = z.object({\n theme: z.record(z.string(), z.string()).optional(),\n light: z.record(z.string(), z.string()).optional(),\n dark: z.record(z.string(), z.string()).optional(),\n})\n\n// Recursive type for CSS properties that supports empty objects at any level.\nconst cssValueSchema: z.ZodType<any> = z.lazy(() =>\n z.union([z.string(), z.record(z.string(), cssValueSchema)])\n)\n\nexport const registryItemCssSchema = z.record(z.string(), cssValueSchema)\n\nexport const registryItemEnvVarsSchema = z.record(z.string(), z.string())\n\nexport const registryItemSchema = z.object({\n $schema: z.string().optional(),\n extends: z.string().optional(),\n name: z.string(),\n type: registryItemTypeSchema,\n title: z.string().optional(),\n author: z.string().min(2).optional(),\n description: z.string().optional(),\n dependencies: z.array(z.string()).optional(),\n devDependencies: z.array(z.string()).optional(),\n registryDependencies: z.array(z.string()).optional(),\n files: z.array(registryItemFileSchema).optional(),\n tailwind: registryItemTailwindSchema.optional(),\n cssVars: registryItemCssVarsSchema.optional(),\n css: registryItemCssSchema.optional(),\n envVars: registryItemEnvVarsSchema.optional(),\n meta: z.record(z.string(), z.any()).optional(),\n docs: z.string().optional(),\n categories: z.array(z.string()).optional(),\n})\n\nexport type RegistryItem = z.infer<typeof registryItemSchema>\n\nexport const registrySchema = z.object({\n name: z.string(),\n homepage: z.string(),\n items: z.array(registryItemSchema),\n})\n\nexport type Registry = z.infer<typeof registrySchema>\n\nexport const registryIndexSchema = z.array(registryItemSchema)\n\nexport const stylesSchema = z.array(\n z.object({\n name: z.string(),\n label: z.string(),\n })\n)\n\nexport const iconsSchema = z.record(\n z.string(),\n z.record(z.string(), z.string())\n)\n\nexport const registryBaseColorSchema = z.object({\n inlineColors: z.object({\n light: z.record(z.string(), z.string()),\n dark: z.record(z.string(), z.string()),\n }),\n cssVars: registryItemCssVarsSchema,\n cssVarsV4: registryItemCssVarsSchema.optional(),\n inlineColorsTemplate: z.string(),\n cssVarsTemplate: z.string(),\n})\n\nexport const registryResolvedItemsTreeSchema = registryItemSchema.pick({\n dependencies: true,\n devDependencies: true,\n files: true,\n tailwind: true,\n cssVars: true,\n css: true,\n envVars: true,\n docs: true,\n})\n\nexport const registryConfigItemSchema = z.union([\n // Simple string format: \"https://example.com/{name}.json\"\n z.string().refine((s) => s.includes(\"{name}\"), {\n message: \"Registry URL must include {name} placeholder\",\n }),\n // Advanced object format with auth options\n z.object({\n url: z.string().refine((s) => s.includes(\"{name}\"), {\n message: \"Registry URL must include {name} placeholder\",\n }),\n params: z.record(z.string(), z.string()).optional(),\n headers: z.record(z.string(), z.string()).optional(),\n }),\n])\n\nexport const registryConfigSchema = z.record(\n z.string().refine((key) => key.startsWith(\"@\"), {\n message: \"Registry names must start with @ (e.g., @v0, @acme)\",\n }),\n registryConfigItemSchema\n)\n\nexport const rawConfigSchema = z\n .object({\n $schema: z.string().optional(),\n style: z.string(),\n rsc: z.coerce.boolean().default(false),\n tsx: z.coerce.boolean().default(true),\n tailwind: z.object({\n config: z.string().optional(),\n css: z.string(),\n baseColor: z.string(),\n cssVariables: z.boolean().default(true),\n prefix: z.string().default(\"\").optional(),\n }),\n iconLibrary: z.string().optional(),\n aliases: z.object({\n components: z.string(),\n utils: z.string(),\n ui: z.string().optional(),\n lib: z.string().optional(),\n hooks: z.string().optional(),\n }),\n registries: registryConfigSchema.optional(),\n })\n .strict()\n\nexport const configSchema = rawConfigSchema.extend({\n resolvedPaths: z.object({\n cwd: z.string(),\n tailwindConfig: z.string(),\n tailwindCss: z.string(),\n utils: z.string(),\n components: z.string(),\n lib: z.string(),\n hooks: z.string(),\n ui: z.string(),\n }),\n})\n\n// TODO: type the key.\n// Okay for now since I don't want a breaking change.\nexport const workspaceConfigSchema = z.record(configSchema)\n\nexport const searchResultItemSchema = z.object({\n name: z.string(),\n type: z.string().optional(),\n description: z.string().optional(),\n registry: z.string(),\n addCommandArgument: z.string(),\n})\n\nexport const searchResultsSchema = z.object({\n pagination: z.object({\n total: z.number(),\n offset: z.number(),\n limit: z.number(),\n hasMore: z.boolean(),\n }),\n items: z.array(searchResultItemSchema),\n})\n"]}