@uidbai/mcp-server 0.1.0 → 0.3.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.
Files changed (69) hide show
  1. package/README.md +164 -62
  2. package/dist/cli.js +0 -0
  3. package/dist/core/auth.d.ts +4 -3
  4. package/dist/core/auth.d.ts.map +1 -1
  5. package/dist/core/auth.js +37 -4
  6. package/dist/core/auth.js.map +1 -1
  7. package/dist/core/local-fs.d.ts +174 -0
  8. package/dist/core/local-fs.d.ts.map +1 -0
  9. package/dist/core/local-fs.js +263 -0
  10. package/dist/core/local-fs.js.map +1 -0
  11. package/dist/core/types.d.ts +1 -1
  12. package/dist/core/types.d.ts.map +1 -1
  13. package/dist/templates/index.d.ts +22 -0
  14. package/dist/templates/index.d.ts.map +1 -0
  15. package/dist/templates/index.js +19 -0
  16. package/dist/templates/index.js.map +1 -0
  17. package/dist/templates/minimal.d.ts +9 -0
  18. package/dist/templates/minimal.d.ts.map +1 -0
  19. package/dist/templates/minimal.js +115 -0
  20. package/dist/templates/minimal.js.map +1 -0
  21. package/dist/templates/standard.d.ts +9 -0
  22. package/dist/templates/standard.d.ts.map +1 -0
  23. package/dist/templates/standard.js +527 -0
  24. package/dist/templates/standard.js.map +1 -0
  25. package/dist/tools/detect-pattern.d.ts +8 -5
  26. package/dist/tools/detect-pattern.d.ts.map +1 -1
  27. package/dist/tools/detect-pattern.js +151 -18
  28. package/dist/tools/detect-pattern.js.map +1 -1
  29. package/dist/tools/get-config.d.ts +1 -1
  30. package/dist/tools/get-config.d.ts.map +1 -1
  31. package/dist/tools/get-config.js +45 -10
  32. package/dist/tools/get-config.js.map +1 -1
  33. package/dist/tools/guide.d.ts +65 -0
  34. package/dist/tools/guide.d.ts.map +1 -0
  35. package/dist/tools/guide.js +304 -0
  36. package/dist/tools/guide.js.map +1 -0
  37. package/dist/tools/index.d.ts +4 -5
  38. package/dist/tools/index.d.ts.map +1 -1
  39. package/dist/tools/index.js +4 -5
  40. package/dist/tools/index.js.map +1 -1
  41. package/dist/tools/init.d.ts +73 -0
  42. package/dist/tools/init.d.ts.map +1 -0
  43. package/dist/tools/init.js +149 -0
  44. package/dist/tools/init.js.map +1 -0
  45. package/dist/tools/list-components.d.ts +18 -3
  46. package/dist/tools/list-components.d.ts.map +1 -1
  47. package/dist/tools/list-components.js +86 -11
  48. package/dist/tools/list-components.js.map +1 -1
  49. package/dist/tools/list-patterns.d.ts +18 -3
  50. package/dist/tools/list-patterns.d.ts.map +1 -1
  51. package/dist/tools/list-patterns.js +85 -10
  52. package/dist/tools/list-patterns.js.map +1 -1
  53. package/dist/tools/registry.d.ts +1 -1
  54. package/dist/tools/registry.d.ts.map +1 -1
  55. package/dist/tools/registry.js +14 -15
  56. package/dist/tools/registry.js.map +1 -1
  57. package/dist/tools/status.d.ts +1 -1
  58. package/dist/tools/status.d.ts.map +1 -1
  59. package/dist/tools/status.js +54 -42
  60. package/dist/tools/status.js.map +1 -1
  61. package/dist/tools/submit-pattern.d.ts +13 -11
  62. package/dist/tools/submit-pattern.d.ts.map +1 -1
  63. package/dist/tools/submit-pattern.js +90 -19
  64. package/dist/tools/submit-pattern.js.map +1 -1
  65. package/dist/tools/update-config.d.ts +16 -8
  66. package/dist/tools/update-config.d.ts.map +1 -1
  67. package/dist/tools/update-config.js +93 -39
  68. package/dist/tools/update-config.js.map +1 -1
  69. package/package.json +1 -1
@@ -0,0 +1,263 @@
1
+ /**
2
+ * UIDB MCP Server - Local File System Operations
3
+ *
4
+ * Read/write operations for the local .uidb/ folder.
5
+ * This is the primary interface for the embedded design system architecture.
6
+ */
7
+ import * as fs from "fs/promises";
8
+ import * as path from "path";
9
+ // ============================================================================
10
+ // Path Utilities
11
+ // ============================================================================
12
+ const UIDB_FOLDER = ".uidb";
13
+ /**
14
+ * Find the .uidb folder by searching up from the current directory
15
+ */
16
+ export async function findUIDBRoot() {
17
+ let currentDir = process.cwd();
18
+ const root = path.parse(currentDir).root;
19
+ while (currentDir !== root) {
20
+ const uidbPath = path.join(currentDir, UIDB_FOLDER);
21
+ try {
22
+ const stat = await fs.stat(uidbPath);
23
+ if (stat.isDirectory()) {
24
+ return currentDir;
25
+ }
26
+ }
27
+ catch {
28
+ // Directory doesn't exist, keep searching
29
+ }
30
+ currentDir = path.dirname(currentDir);
31
+ }
32
+ return null;
33
+ }
34
+ /**
35
+ * Get the path to the .uidb folder
36
+ */
37
+ export async function getUIDBPath() {
38
+ const root = await findUIDBRoot();
39
+ if (!root) {
40
+ throw new UIDBNotFoundError();
41
+ }
42
+ return path.join(root, UIDB_FOLDER);
43
+ }
44
+ /**
45
+ * Check if .uidb folder exists
46
+ */
47
+ export async function uidbExists() {
48
+ const root = await findUIDBRoot();
49
+ return root !== null;
50
+ }
51
+ // ============================================================================
52
+ // Read Operations
53
+ // ============================================================================
54
+ /**
55
+ * Read and parse a JSON file from .uidb/
56
+ */
57
+ async function readJSON(relativePath) {
58
+ const uidbPath = await getUIDBPath();
59
+ const filePath = path.join(uidbPath, relativePath);
60
+ try {
61
+ const content = await fs.readFile(filePath, "utf-8");
62
+ return JSON.parse(content);
63
+ }
64
+ catch (error) {
65
+ if (error.code === "ENOENT") {
66
+ throw new FileNotFoundError(relativePath);
67
+ }
68
+ throw new ParseError(relativePath, error);
69
+ }
70
+ }
71
+ /**
72
+ * Read the manifest.json
73
+ */
74
+ export async function readManifest() {
75
+ return readJSON("manifest.json");
76
+ }
77
+ /**
78
+ * Read the config.json
79
+ */
80
+ export async function readConfig() {
81
+ return readJSON("config.json");
82
+ }
83
+ /**
84
+ * Read the components index
85
+ */
86
+ export async function readComponentsIndex() {
87
+ return readJSON("components/_index.json");
88
+ }
89
+ /**
90
+ * Read a specific component definition
91
+ */
92
+ export async function readComponent(componentId) {
93
+ return readJSON(`components/${componentId}.json`);
94
+ }
95
+ /**
96
+ * Read the patterns index
97
+ */
98
+ export async function readPatternsIndex() {
99
+ return readJSON("patterns/_index.json");
100
+ }
101
+ /**
102
+ * Read a specific pattern definition
103
+ */
104
+ export async function readPattern(patternId) {
105
+ return readJSON(`patterns/${patternId}.json`);
106
+ }
107
+ /**
108
+ * Read rules (a11y or constraints)
109
+ */
110
+ export async function readRules(ruleType) {
111
+ return readJSON(`rules/${ruleType}.json`);
112
+ }
113
+ // ============================================================================
114
+ // Write Operations
115
+ // ============================================================================
116
+ /**
117
+ * Write a JSON file to .uidb/
118
+ */
119
+ async function writeJSON(relativePath, data) {
120
+ const uidbPath = await getUIDBPath();
121
+ const filePath = path.join(uidbPath, relativePath);
122
+ // Ensure directory exists
123
+ const dir = path.dirname(filePath);
124
+ await fs.mkdir(dir, { recursive: true });
125
+ // Write file with pretty formatting
126
+ const content = JSON.stringify(data, null, 2);
127
+ await fs.writeFile(filePath, content, "utf-8");
128
+ }
129
+ /**
130
+ * Update the config.json
131
+ */
132
+ export async function writeConfig(config) {
133
+ // Update the updated_at in manifest
134
+ try {
135
+ const manifest = await readManifest();
136
+ manifest.updated_at = new Date().toISOString().split("T")[0];
137
+ await writeJSON("manifest.json", manifest);
138
+ }
139
+ catch {
140
+ // Manifest might not exist, that's okay
141
+ }
142
+ return writeJSON("config.json", config);
143
+ }
144
+ /**
145
+ * Update the components index
146
+ */
147
+ export async function writeComponentsIndex(index) {
148
+ return writeJSON("components/_index.json", index);
149
+ }
150
+ /**
151
+ * Write a component definition
152
+ */
153
+ export async function writeComponent(componentId, component) {
154
+ return writeJSON(`components/${componentId}.json`, component);
155
+ }
156
+ /**
157
+ * Update the patterns index
158
+ */
159
+ export async function writePatternsIndex(index) {
160
+ return writeJSON("patterns/_index.json", index);
161
+ }
162
+ /**
163
+ * Write a pattern definition
164
+ */
165
+ export async function writePattern(patternId, pattern) {
166
+ return writeJSON(`patterns/${patternId}.json`, pattern);
167
+ }
168
+ // ============================================================================
169
+ // Init Operations
170
+ // ============================================================================
171
+ /**
172
+ * Initialize a new .uidb folder with template files
173
+ */
174
+ export async function initUIDB(projectRoot, files) {
175
+ const uidbPath = path.join(projectRoot, UIDB_FOLDER);
176
+ // Create .uidb directory
177
+ await fs.mkdir(uidbPath, { recursive: true });
178
+ // Write each file
179
+ for (const [relativePath, content] of Object.entries(files)) {
180
+ const filePath = path.join(uidbPath, relativePath);
181
+ const dir = path.dirname(filePath);
182
+ // Ensure directory exists
183
+ await fs.mkdir(dir, { recursive: true });
184
+ // Write content (string or JSON)
185
+ if (typeof content === "string") {
186
+ await fs.writeFile(filePath, content, "utf-8");
187
+ }
188
+ else {
189
+ await fs.writeFile(filePath, JSON.stringify(content, null, 2), "utf-8");
190
+ }
191
+ }
192
+ }
193
+ // ============================================================================
194
+ // Error Classes
195
+ // ============================================================================
196
+ export class UIDBNotFoundError extends Error {
197
+ constructor() {
198
+ super("No .uidb folder found. Run uidb_init to initialize a design system.");
199
+ this.name = "UIDBNotFoundError";
200
+ }
201
+ }
202
+ export class FileNotFoundError extends Error {
203
+ constructor(filePath) {
204
+ super(`File not found in .uidb: ${filePath}`);
205
+ this.name = "FileNotFoundError";
206
+ }
207
+ }
208
+ export class ParseError extends Error {
209
+ constructor(filePath, cause) {
210
+ super(`Failed to parse ${filePath}: ${cause instanceof Error ? cause.message : "Unknown error"}`);
211
+ this.name = "ParseError";
212
+ }
213
+ }
214
+ // ============================================================================
215
+ // Helper Functions
216
+ // ============================================================================
217
+ /**
218
+ * Get a summary of the design system for guidance
219
+ */
220
+ export async function getDesignSystemSummary() {
221
+ const [config, componentsIndex, patternsIndex] = await Promise.all([
222
+ readConfig(),
223
+ readComponentsIndex(),
224
+ readPatternsIndex(),
225
+ ]);
226
+ return {
227
+ config,
228
+ components: componentsIndex.components,
229
+ patterns: patternsIndex.patterns,
230
+ };
231
+ }
232
+ /**
233
+ * Find a component by name (case-insensitive)
234
+ */
235
+ export async function findComponent(query) {
236
+ const index = await readComponentsIndex();
237
+ const entry = index.components.find((c) => c.id.toLowerCase() === query.toLowerCase() ||
238
+ c.name.toLowerCase() === query.toLowerCase());
239
+ if (!entry) {
240
+ return null;
241
+ }
242
+ return readComponent(entry.id);
243
+ }
244
+ /**
245
+ * Find components by category
246
+ */
247
+ export async function findComponentsByCategory(category) {
248
+ const index = await readComponentsIndex();
249
+ return index.components.filter((c) => c.category.toLowerCase() === category.toLowerCase());
250
+ }
251
+ /**
252
+ * Find a pattern by name (case-insensitive)
253
+ */
254
+ export async function findPattern(query) {
255
+ const index = await readPatternsIndex();
256
+ const entry = index.patterns.find((p) => p.id.toLowerCase() === query.toLowerCase() ||
257
+ p.name.toLowerCase() === query.toLowerCase());
258
+ if (!entry) {
259
+ return null;
260
+ }
261
+ return readPattern(entry.id);
262
+ }
263
+ //# sourceMappingURL=local-fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-fs.js","sourceRoot":"","sources":["../../src/core/local-fs.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export interface UIDBCredentials {
6
6
  refreshToken?: string;
7
7
  projectId: string;
8
8
  projectSlug: string;
9
- userEmail: string;
9
+ userEmail?: string;
10
10
  expiresAt: string;
11
11
  }
12
12
  export interface OneTimeToken {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * UIDB Templates
3
+ *
4
+ * Pre-configured .uidb/ folder contents for different starting points.
5
+ */
6
+ import { minimalTemplate } from "./minimal.js";
7
+ import { standardTemplate } from "./standard.js";
8
+ export { minimalTemplate, standardTemplate };
9
+ export type TemplateType = "minimal" | "standard";
10
+ export interface TemplateConfig {
11
+ accentColor: string;
12
+ grayColor: string;
13
+ radius: string;
14
+ appearance: "light" | "dark";
15
+ }
16
+ export interface Template {
17
+ name: string;
18
+ description: string;
19
+ files: Record<string, object | string>;
20
+ }
21
+ export declare function getTemplate(type: TemplateType, config: TemplateConfig, projectName: string): Template;
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC;AAE7C,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,CAAC;AAElD,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CACxC;AAED,wBAAgB,WAAW,CACzB,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,GAClB,QAAQ,CASV"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * UIDB Templates
3
+ *
4
+ * Pre-configured .uidb/ folder contents for different starting points.
5
+ */
6
+ import { minimalTemplate } from "./minimal.js";
7
+ import { standardTemplate } from "./standard.js";
8
+ export { minimalTemplate, standardTemplate };
9
+ export function getTemplate(type, config, projectName) {
10
+ switch (type) {
11
+ case "minimal":
12
+ return minimalTemplate(config, projectName);
13
+ case "standard":
14
+ return standardTemplate(config, projectName);
15
+ default:
16
+ return standardTemplate(config, projectName);
17
+ }
18
+ }
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/templates/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC;AAiB7C,MAAM,UAAU,WAAW,CACzB,IAAkB,EAClB,MAAsB,EACtB,WAAmB;IAEnB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS;YACZ,OAAO,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC9C,KAAK,UAAU;YACb,OAAO,gBAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC/C;YACE,OAAO,gBAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjD,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Minimal Template
3
+ *
4
+ * Just the essentials: manifest, config, and component index.
5
+ * Use this when you want to build up your design system incrementally.
6
+ */
7
+ import type { Template, TemplateConfig } from "./index.js";
8
+ export declare function minimalTemplate(config: TemplateConfig, projectName: string): Template;
9
+ //# sourceMappingURL=minimal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimal.d.ts","sourceRoot":"","sources":["../../src/templates/minimal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE3D,wBAAgB,eAAe,CAC7B,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,GAClB,QAAQ,CA8GV"}
@@ -0,0 +1,115 @@
1
+ /**
2
+ * Minimal Template
3
+ *
4
+ * Just the essentials: manifest, config, and component index.
5
+ * Use this when you want to build up your design system incrementally.
6
+ */
7
+ export function minimalTemplate(config, projectName) {
8
+ const now = new Date().toISOString().split("T")[0];
9
+ return {
10
+ name: "minimal",
11
+ description: "Minimal setup with just config and component index",
12
+ files: {
13
+ "manifest.json": {
14
+ $schema: "https://uidb.ai/schemas/manifest.json",
15
+ version: "1.0.0",
16
+ name: projectName,
17
+ description: `Design system for ${projectName}`,
18
+ framework: {
19
+ name: "auto-detect",
20
+ ui_library: "radix-ui-themes",
21
+ },
22
+ created_at: now,
23
+ updated_at: now,
24
+ },
25
+ "config.json": {
26
+ $schema: "https://uidb.ai/schemas/config.json",
27
+ theme: {
28
+ accentColor: config.accentColor,
29
+ grayColor: config.grayColor,
30
+ radius: config.radius,
31
+ },
32
+ appearance: config.appearance,
33
+ scaling: "100%",
34
+ },
35
+ "components/_index.json": {
36
+ $schema: "https://uidb.ai/schemas/components-index.json",
37
+ components: [],
38
+ categories: {
39
+ interaction: "Interactive elements for user actions",
40
+ form: "Input and selection components for data entry",
41
+ layout: "Structural components for organizing content",
42
+ navigation: "Components for navigating between views",
43
+ overlay: "Components that appear above page content",
44
+ feedback: "Components for user feedback and messaging",
45
+ "data-display": "Components for displaying data and status",
46
+ },
47
+ },
48
+ "patterns/_index.json": {
49
+ $schema: "https://uidb.ai/schemas/patterns-index.json",
50
+ patterns: [],
51
+ categories: {
52
+ layout: "Structural patterns for organizing content",
53
+ forms: "Form layout and input patterns",
54
+ feedback: "User feedback and state patterns",
55
+ navigation: "Navigation and menu patterns",
56
+ "data-display": "Patterns for displaying data",
57
+ identity: "User identity and profile patterns",
58
+ },
59
+ },
60
+ "rules/a11y.json": {
61
+ $schema: "https://uidb.ai/schemas/a11y-rules.json",
62
+ wcag_level: "AA",
63
+ rules: {
64
+ color_contrast: {
65
+ requirement: "Text must have 4.5:1 contrast ratio against background",
66
+ },
67
+ focus_indicators: {
68
+ requirement: "All interactive elements must have visible focus indicators",
69
+ },
70
+ touch_targets: {
71
+ requirement: "Minimum 44x44px touch targets on mobile",
72
+ },
73
+ labels: {
74
+ form_inputs: "All inputs must have associated labels",
75
+ icon_buttons: "Icon-only buttons must have aria-label",
76
+ },
77
+ },
78
+ },
79
+ "rules/constraints.json": {
80
+ $schema: "https://uidb.ai/schemas/constraints.json",
81
+ semantic_colors: {
82
+ description: "Use semantic color names instead of raw colors",
83
+ mapping: {
84
+ primary_action: "accent",
85
+ secondary_action: "gray",
86
+ destructive: "red",
87
+ success: "green",
88
+ warning: "amber",
89
+ info: "blue",
90
+ },
91
+ },
92
+ },
93
+ "README.md": `# Design System - ${projectName}
94
+
95
+ This folder contains the design system for this project.
96
+
97
+ ## Theme Config
98
+
99
+ Edit \`config.json\` to change colors and styling:
100
+ - \`accentColor\`: ${config.accentColor}
101
+ - \`grayColor\`: ${config.grayColor}
102
+ - \`radius\`: ${config.radius}
103
+
104
+ ## Usage
105
+
106
+ Import the config in your root layout and pass to Radix Theme.
107
+
108
+ ## Adding Components
109
+
110
+ As you build, add component definitions to \`components/\` and patterns to \`patterns/\`.
111
+ `,
112
+ },
113
+ };
114
+ }
115
+ //# sourceMappingURL=minimal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimal.js","sourceRoot":"","sources":["../../src/templates/minimal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,UAAU,eAAe,CAC7B,MAAsB,EACtB,WAAmB;IAEnB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnD,OAAO;QACL,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,oDAAoD;QACjE,KAAK,EAAE;YACL,eAAe,EAAE;gBACf,OAAO,EAAE,uCAAuC;gBAChD,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,qBAAqB,WAAW,EAAE;gBAC/C,SAAS,EAAE;oBACT,IAAI,EAAE,aAAa;oBACnB,UAAU,EAAE,iBAAiB;iBAC9B;gBACD,UAAU,EAAE,GAAG;gBACf,UAAU,EAAE,GAAG;aAChB;YACD,aAAa,EAAE;gBACb,OAAO,EAAE,qCAAqC;gBAC9C,KAAK,EAAE;oBACL,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;iBACtB;gBACD,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,OAAO,EAAE,MAAM;aAChB;YACD,wBAAwB,EAAE;gBACxB,OAAO,EAAE,+CAA+C;gBACxD,UAAU,EAAE,EAAE;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE,uCAAuC;oBACpD,IAAI,EAAE,+CAA+C;oBACrD,MAAM,EAAE,8CAA8C;oBACtD,UAAU,EAAE,yCAAyC;oBACrD,OAAO,EAAE,2CAA2C;oBACpD,QAAQ,EAAE,4CAA4C;oBACtD,cAAc,EAAE,2CAA2C;iBAC5D;aACF;YACD,sBAAsB,EAAE;gBACtB,OAAO,EAAE,6CAA6C;gBACtD,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE;oBACV,MAAM,EAAE,4CAA4C;oBACpD,KAAK,EAAE,gCAAgC;oBACvC,QAAQ,EAAE,kCAAkC;oBAC5C,UAAU,EAAE,8BAA8B;oBAC1C,cAAc,EAAE,8BAA8B;oBAC9C,QAAQ,EAAE,oCAAoC;iBAC/C;aACF;YACD,iBAAiB,EAAE;gBACjB,OAAO,EAAE,yCAAyC;gBAClD,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE;oBACL,cAAc,EAAE;wBACd,WAAW,EACT,wDAAwD;qBAC3D;oBACD,gBAAgB,EAAE;wBAChB,WAAW,EACT,6DAA6D;qBAChE;oBACD,aAAa,EAAE;wBACb,WAAW,EAAE,yCAAyC;qBACvD;oBACD,MAAM,EAAE;wBACN,WAAW,EAAE,wCAAwC;wBACrD,YAAY,EAAE,wCAAwC;qBACvD;iBACF;aACF;YACD,wBAAwB,EAAE;gBACxB,OAAO,EAAE,0CAA0C;gBACnD,eAAe,EAAE;oBACf,WAAW,EAAE,gDAAgD;oBAC7D,OAAO,EAAE;wBACP,cAAc,EAAE,QAAQ;wBACxB,gBAAgB,EAAE,MAAM;wBACxB,WAAW,EAAE,KAAK;wBAClB,OAAO,EAAE,OAAO;wBAChB,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,MAAM;qBACb;iBACF;aACF;YACD,WAAW,EAAE,qBAAqB,WAAW;;;;;;;qBAO9B,MAAM,CAAC,WAAW;mBACpB,MAAM,CAAC,SAAS;gBACnB,MAAM,CAAC,MAAM;;;;;;;;;CAS5B;SACI;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Standard Template
3
+ *
4
+ * Full setup with all Radix UI Themes components and common patterns.
5
+ * Recommended for most projects.
6
+ */
7
+ import type { Template, TemplateConfig } from "./index.js";
8
+ export declare function standardTemplate(config: TemplateConfig, projectName: string): Template;
9
+ //# sourceMappingURL=standard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"standard.d.ts","sourceRoot":"","sources":["../../src/templates/standard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE3D,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,GAClB,QAAQ,CA6CV"}