@framingui/mcp-server 0.6.26 → 0.6.28

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 (146) hide show
  1. package/README.md +4 -3
  2. package/dist/__tests__/react-native-contract.test.d.ts +2 -0
  3. package/dist/__tests__/react-native-contract.test.d.ts.map +1 -0
  4. package/dist/__tests__/react-native-contract.test.js +50 -0
  5. package/dist/__tests__/react-native-contract.test.js.map +1 -0
  6. package/dist/auth/state.d.ts +16 -0
  7. package/dist/auth/state.d.ts.map +1 -1
  8. package/dist/auth/state.js +54 -15
  9. package/dist/auth/state.js.map +1 -1
  10. package/dist/auth/verify.d.ts +9 -0
  11. package/dist/auth/verify.d.ts.map +1 -1
  12. package/dist/auth/verify.js.map +1 -1
  13. package/dist/billing/quota-policy.d.ts +13 -0
  14. package/dist/billing/quota-policy.d.ts.map +1 -0
  15. package/dist/billing/quota-policy.js +32 -0
  16. package/dist/billing/quota-policy.js.map +1 -0
  17. package/dist/billing/tool-metering.d.ts +10 -0
  18. package/dist/billing/tool-metering.d.ts.map +1 -0
  19. package/dist/billing/tool-metering.js +126 -0
  20. package/dist/billing/tool-metering.js.map +1 -0
  21. package/dist/billing/usage-ledger.d.ts +61 -0
  22. package/dist/billing/usage-ledger.d.ts.map +1 -0
  23. package/dist/billing/usage-ledger.js +102 -0
  24. package/dist/billing/usage-ledger.js.map +1 -0
  25. package/dist/billing/usage-sync.d.ts +3 -0
  26. package/dist/billing/usage-sync.d.ts.map +1 -0
  27. package/dist/billing/usage-sync.js +40 -0
  28. package/dist/billing/usage-sync.js.map +1 -0
  29. package/dist/cli/agent-md-templates.d.ts.map +1 -1
  30. package/dist/cli/agent-md-templates.js +58 -38
  31. package/dist/cli/agent-md-templates.js.map +1 -1
  32. package/dist/cli/commands.d.ts +2 -0
  33. package/dist/cli/commands.d.ts.map +1 -0
  34. package/dist/cli/commands.js +20 -0
  35. package/dist/cli/commands.js.map +1 -0
  36. package/dist/cli/guide-template.d.ts.map +1 -1
  37. package/dist/cli/guide-template.js +20 -36
  38. package/dist/cli/guide-template.js.map +1 -1
  39. package/dist/cli/help.d.ts +5 -0
  40. package/dist/cli/help.d.ts.map +1 -0
  41. package/dist/cli/help.js +59 -0
  42. package/dist/cli/help.js.map +1 -0
  43. package/dist/cli/init.d.ts +2 -3
  44. package/dist/cli/init.d.ts.map +1 -1
  45. package/dist/cli/init.js +33 -48
  46. package/dist/cli/init.js.map +1 -1
  47. package/dist/cli/package-manager.d.ts +5 -0
  48. package/dist/cli/package-manager.d.ts.map +1 -0
  49. package/dist/cli/package-manager.js +34 -0
  50. package/dist/cli/package-manager.js.map +1 -0
  51. package/dist/cli/update.d.ts +8 -0
  52. package/dist/cli/update.d.ts.map +1 -0
  53. package/dist/cli/update.js +53 -0
  54. package/dist/cli/update.js.map +1 -0
  55. package/dist/commands/slash-command-adapters.d.ts +9 -0
  56. package/dist/commands/slash-command-adapters.d.ts.map +1 -0
  57. package/dist/commands/slash-command-adapters.js +116 -0
  58. package/dist/commands/slash-command-adapters.js.map +1 -0
  59. package/dist/data/component-fallback-catalog.d.ts +26 -0
  60. package/dist/data/component-fallback-catalog.d.ts.map +1 -0
  61. package/dist/data/component-fallback-catalog.js +149 -0
  62. package/dist/data/component-fallback-catalog.js.map +1 -0
  63. package/dist/data/component-props.d.ts +30 -0
  64. package/dist/data/component-props.d.ts.map +1 -0
  65. package/dist/data/component-props.js +537 -0
  66. package/dist/data/component-props.js.map +1 -0
  67. package/dist/data/component-registry.d.ts +30 -0
  68. package/dist/data/component-registry.d.ts.map +1 -0
  69. package/dist/data/component-registry.js +320 -0
  70. package/dist/data/component-registry.js.map +1 -0
  71. package/dist/data/examples/screen-examples.d.ts +38 -0
  72. package/dist/data/examples/screen-examples.d.ts.map +1 -0
  73. package/dist/data/examples/screen-examples.js +500 -0
  74. package/dist/data/examples/screen-examples.js.map +1 -0
  75. package/dist/data/react-native-runtime-catalog.d.ts +24 -0
  76. package/dist/data/react-native-runtime-catalog.d.ts.map +1 -0
  77. package/dist/data/react-native-runtime-catalog.js +265 -0
  78. package/dist/data/react-native-runtime-catalog.js.map +1 -0
  79. package/dist/index.js +225 -205
  80. package/dist/index.js.map +1 -1
  81. package/dist/platform-support.d.ts +22 -0
  82. package/dist/platform-support.d.ts.map +1 -0
  83. package/dist/platform-support.js +148 -0
  84. package/dist/platform-support.js.map +1 -0
  85. package/dist/project-context-resolution.d.ts +7 -0
  86. package/dist/project-context-resolution.d.ts.map +1 -0
  87. package/dist/project-context-resolution.js +21 -0
  88. package/dist/project-context-resolution.js.map +1 -0
  89. package/dist/project-context-state.d.ts +12 -0
  90. package/dist/project-context-state.d.ts.map +1 -0
  91. package/dist/project-context-state.js +14 -0
  92. package/dist/project-context-state.js.map +1 -0
  93. package/dist/project-context.d.ts +15 -0
  94. package/dist/project-context.d.ts.map +1 -0
  95. package/dist/project-context.js +78 -0
  96. package/dist/project-context.js.map +1 -0
  97. package/dist/prompts/doctor-workflow.js +1 -1
  98. package/dist/prompts/getting-started.d.ts.map +1 -1
  99. package/dist/prompts/getting-started.js +36 -15
  100. package/dist/prompts/getting-started.js.map +1 -1
  101. package/dist/prompts/screen-workflow.d.ts.map +1 -1
  102. package/dist/prompts/screen-workflow.js +54 -3
  103. package/dist/prompts/screen-workflow.js.map +1 -1
  104. package/dist/schemas/mcp-schemas.d.ts +954 -309
  105. package/dist/schemas/mcp-schemas.d.ts.map +1 -1
  106. package/dist/schemas/mcp-schemas.js +130 -1
  107. package/dist/schemas/mcp-schemas.js.map +1 -1
  108. package/dist/tools/detect-project-context.d.ts +5 -0
  109. package/dist/tools/detect-project-context.d.ts.map +1 -0
  110. package/dist/tools/detect-project-context.js +36 -0
  111. package/dist/tools/detect-project-context.js.map +1 -0
  112. package/dist/tools/get-screen-generation-context.d.ts +3 -1
  113. package/dist/tools/get-screen-generation-context.d.ts.map +1 -1
  114. package/dist/tools/get-screen-generation-context.js +120 -20
  115. package/dist/tools/get-screen-generation-context.js.map +1 -1
  116. package/dist/tools/list-components.d.ts.map +1 -1
  117. package/dist/tools/list-components.js +42 -3
  118. package/dist/tools/list-components.js.map +1 -1
  119. package/dist/tools/list-screen-templates.d.ts +3 -1
  120. package/dist/tools/list-screen-templates.d.ts.map +1 -1
  121. package/dist/tools/list-screen-templates.js +3 -3
  122. package/dist/tools/list-screen-templates.js.map +1 -1
  123. package/dist/tools/preview-component.d.ts.map +1 -1
  124. package/dist/tools/preview-component.js +57 -7
  125. package/dist/tools/preview-component.js.map +1 -1
  126. package/dist/tools/preview-theme.d.ts +3 -1
  127. package/dist/tools/preview-theme.d.ts.map +1 -1
  128. package/dist/tools/preview-theme.js +48 -21
  129. package/dist/tools/preview-theme.js.map +1 -1
  130. package/dist/tools/theme-authority.js +1 -1
  131. package/dist/tools/theme-authority.js.map +1 -1
  132. package/dist/tools/validate-environment.d.ts +3 -1
  133. package/dist/tools/validate-environment.d.ts.map +1 -1
  134. package/dist/tools/validate-environment.js +102 -9
  135. package/dist/tools/validate-environment.js.map +1 -1
  136. package/dist/tools/validate-screen-definition.d.ts.map +1 -1
  137. package/dist/tools/validate-screen-definition.js +41 -7
  138. package/dist/tools/validate-screen-definition.js.map +1 -1
  139. package/dist/tools/whoami.d.ts.map +1 -1
  140. package/dist/tools/whoami.js +27 -17
  141. package/dist/tools/whoami.js.map +1 -1
  142. package/dist/utils/style-contract-reader.d.ts +10 -0
  143. package/dist/utils/style-contract-reader.d.ts.map +1 -0
  144. package/dist/utils/style-contract-reader.js +67 -0
  145. package/dist/utils/style-contract-reader.js.map +1 -0
  146. package/package.json +3 -3
@@ -8,6 +8,8 @@ import { getScreenComponentTypes } from './screen-component-contract.js';
8
8
  import { matchTemplates } from '../data/template-matcher.js';
9
9
  import { getAllRecipes } from '../data/recipe-resolver.js';
10
10
  import { generateHints } from '../data/hint-generator.js';
11
+ import { recommendReactNativeRuntimeComponents, toReactNativeContextComponent, } from '../data/react-native-runtime-catalog.js';
12
+ import { resolvePlatformTarget } from '../project-context-resolution.js';
11
13
  import { extractErrorMessage } from '../utils/error-handler.js';
12
14
  const TEMPLATE_CONFIDENCE_THRESHOLD = 20;
13
15
  const DEFAULT_COMPONENT_CANDIDATES = ['Card', 'Heading', 'Text', 'Button', 'Badge', 'Separator'];
@@ -275,6 +277,44 @@ function inferPage(category) {
275
277
  return 'page.marketing';
276
278
  }
277
279
  }
280
+ function buildReactNativeWorkflow() {
281
+ return {
282
+ title: 'React Native Direct-Write Workflow',
283
+ description: 'Follow these steps to write Expo or React Native screens directly with @framingui/react-native.',
284
+ steps: [
285
+ {
286
+ step: 1,
287
+ action: 'Review Runtime Components',
288
+ description: 'Review the native runtime components in this response and choose the smallest reusable surface that matches the screen.',
289
+ },
290
+ {
291
+ step: 2,
292
+ action: 'Validate Native Environment',
293
+ tool: 'validate-environment',
294
+ description: 'Check that the target app has react, react-native, and @framingui/react-native installed.',
295
+ example: '{ "projectPath": "/path/to/app", "platform": "react-native", "requiredPackages": ["react", "react-native", "@framingui/react-native"] }',
296
+ },
297
+ {
298
+ step: 3,
299
+ action: 'Write React Native Code',
300
+ description: 'Write Expo or React Native code directly, compose from @framingui/react-native exports, and keep custom styles inside StyleSheet.create.',
301
+ },
302
+ {
303
+ step: 4,
304
+ action: 'Audit for Drift',
305
+ tool: 'validate-environment',
306
+ description: 'Run validate-environment again with sourceFiles to catch web-only imports, className usage, raw colors, and raw spacing drift.',
307
+ example: '{ "projectPath": "/path/to/app", "platform": "react-native", "sourceFiles": ["/path/to/screen.tsx"], "requiredPackages": ["react", "react-native", "@framingui/react-native"] }',
308
+ },
309
+ ],
310
+ notes: [
311
+ 'Prefer @framingui/react-native exports over app-local wrappers for common screens.',
312
+ 'Use StyleSheet.create for screen-specific layout, not className or Tailwind.',
313
+ 'Reach for Screen, Section, Card, FormSection, ListItem, and SegmentedControl before inventing local shells.',
314
+ 'Use validate-environment source audits before handoff to catch web-only drift.',
315
+ ],
316
+ };
317
+ }
278
318
  function buildDefinitionStarter(options) {
279
319
  const id = options.description
280
320
  .toLowerCase()
@@ -306,6 +346,7 @@ function buildDefinitionStarter(options) {
306
346
  */
307
347
  export async function getScreenGenerationContextTool(input) {
308
348
  try {
349
+ const { platform: targetPlatform } = resolvePlatformTarget(input.platform);
309
350
  // 1. Match templates based on description
310
351
  const templateMatches = matchTemplates(input.description, 3);
311
352
  let bestMatch;
@@ -313,27 +354,42 @@ export async function getScreenGenerationContextTool(input) {
313
354
  if (templateMatches.length > 0) {
314
355
  const match = templateMatches[0];
315
356
  if (match && shouldIncludeTemplateMatch(match)) {
316
- // API를 통해 템플릿 상세 정보 조회 [SPEC-MCP-007:E-002]
317
- const templateResult = await fetchTemplate(match.templateId);
318
- const templateData = templateResult.ok ? templateResult.data : null;
319
- bestMatch = {
320
- templateId: match.templateId,
321
- templateName: match.templateName,
322
- category: match.category,
323
- confidence: match.confidence,
324
- matchedKeywords: match.matchedKeywords,
325
- skeleton: templateData?.skeleton,
326
- requiredComponents: templateData?.requiredComponents,
327
- };
328
- // Extract component types from template
329
- if (templateData) {
330
- componentTypes = extractComponentTypes(templateData);
357
+ if (targetPlatform === 'react-native') {
358
+ bestMatch = {
359
+ templateId: match.templateId,
360
+ templateName: match.templateName,
361
+ category: match.category,
362
+ confidence: match.confidence,
363
+ matchedKeywords: match.matchedKeywords,
364
+ skeleton: undefined,
365
+ requiredComponents: undefined,
366
+ };
367
+ }
368
+ else {
369
+ // API를 통해 템플릿 상세 정보 조회 [SPEC-MCP-007:E-002]
370
+ const templateResult = await fetchTemplate(match.templateId);
371
+ const templateData = templateResult.ok ? templateResult.data : null;
372
+ bestMatch = {
373
+ templateId: match.templateId,
374
+ templateName: match.templateName,
375
+ category: match.category,
376
+ confidence: match.confidence,
377
+ matchedKeywords: match.matchedKeywords,
378
+ skeleton: templateData?.skeleton,
379
+ requiredComponents: templateData?.requiredComponents,
380
+ };
381
+ // Extract component types from template
382
+ if (templateData) {
383
+ componentTypes = extractComponentTypes(templateData);
384
+ }
331
385
  }
332
386
  }
333
387
  }
334
388
  // 2. Get examples if requested
335
389
  let examples;
336
- if (input.includeExamples !== false && input.compact !== true) {
390
+ if (targetPlatform !== 'react-native' &&
391
+ input.includeExamples !== false &&
392
+ input.compact !== true) {
337
393
  // API를 통해 스크린 예제 조회 [SPEC-MCP-007:E-007]
338
394
  const examplesResult = await fetchScreenExamples();
339
395
  const allExamples = examplesResult.ok ? examplesResult.data : [];
@@ -353,10 +409,10 @@ export async function getScreenGenerationContextTool(input) {
353
409
  return { ex, score };
354
410
  });
355
411
  const filtered = scored
356
- .filter((s) => s.score > 0)
412
+ .filter(s => s.score > 0)
357
413
  .sort((a, b) => b.score - a.score)
358
414
  .slice(0, 2)
359
- .map((s) => s.ex);
415
+ .map(s => s.ex);
360
416
  examples = filtered.length > 0 ? filtered : undefined;
361
417
  }
362
418
  // 3. Get theme recipes if theme specified
@@ -367,6 +423,50 @@ export async function getScreenGenerationContextTool(input) {
367
423
  themeRecipes = await getThemeRecipeInfo(input.themeId);
368
424
  }
369
425
  }
426
+ // 4. Native direct-write path does not depend on web component API data
427
+ const hints = generateHints(input.description, input.themeId);
428
+ const platformHints = targetPlatform === 'react-native'
429
+ ? [
430
+ {
431
+ category: 'best-practice',
432
+ priority: 'high',
433
+ message: 'Write React Native code directly using @framingui/react-native where that runtime surface exists, then host app primitives or local abstractions for the rest.',
434
+ },
435
+ {
436
+ category: 'styling',
437
+ priority: 'high',
438
+ message: 'Use StyleSheet plus @framingui/react-native helpers or host app style helpers with token-backed values. Avoid raw hex, spacing, and radius literals.',
439
+ },
440
+ {
441
+ category: 'layout',
442
+ priority: 'medium',
443
+ message: 'Account for SafeArea and keyboard avoidance in screen containers when composing native layouts.',
444
+ },
445
+ ]
446
+ : [];
447
+ const combinedHints = [...platformHints, ...hints];
448
+ if (targetPlatform === 'react-native') {
449
+ const nativeComponents = recommendReactNativeRuntimeComponents(input.description, bestMatch?.category)
450
+ .map(componentId => toReactNativeContextComponent(componentId))
451
+ .filter((component) => component !== null);
452
+ return {
453
+ success: true,
454
+ targetPlatform,
455
+ templateMatch: bestMatch,
456
+ components: nativeComponents,
457
+ schema: undefined,
458
+ examples: undefined,
459
+ themeRecipes: undefined,
460
+ hints: combinedHints.length > 0 ? combinedHints : undefined,
461
+ workflow: input.compact === true ? undefined : buildReactNativeWorkflow(),
462
+ directWrite: {
463
+ runtime: 'react-native',
464
+ entryStrategy: 'Write the screen directly in Expo Router routes or host app screen modules, using @framingui/react-native where the runtime surface exists.',
465
+ stylingStrategy: 'Use StyleSheet plus @framingui/react-native helpers or host app token-backed helpers.',
466
+ validationStrategy: 'Run validate-environment with platform=react-native and sourceFiles before handoff.',
467
+ },
468
+ };
469
+ }
370
470
  // 4. Get component information from shared contract + template + recipes
371
471
  const recommendedComponentTypes = getRecommendedComponentTypes({
372
472
  bestMatch,
@@ -384,7 +484,6 @@ export async function getScreenGenerationContextTool(input) {
384
484
  componentTypes,
385
485
  });
386
486
  // 5. Generate contextual hints
387
- const hints = generateHints(input.description, input.themeId);
388
487
  // 6. Generate workflow guide
389
488
  const workflow = {
390
489
  title: 'Screen Generation Workflow',
@@ -440,6 +539,7 @@ export async function getScreenGenerationContextTool(input) {
440
539
  };
441
540
  return {
442
541
  success: true,
542
+ targetPlatform,
443
543
  templateMatch: bestMatch,
444
544
  components: components.length > 0 ? components : undefined,
445
545
  definitionStarter,
@@ -451,7 +551,7 @@ export async function getScreenGenerationContextTool(input) {
451
551
  },
452
552
  examples: examples && examples.length > 0 ? examples : undefined,
453
553
  themeRecipes: themeRecipes && themeRecipes.length > 0 ? themeRecipes : undefined,
454
- hints: hints.length > 0 ? hints : undefined,
554
+ hints: combinedHints.length > 0 ? combinedHints : undefined,
455
555
  workflow: input.compact === true ? undefined : workflow,
456
556
  };
457
557
  }
@@ -1 +1 @@
1
- {"version":3,"file":"get-screen-generation-context.js","sourceRoot":"","sources":["../../src/tools/get-screen-generation-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-screen-generation-context.js","sourceRoot":"","sources":["../../src/tools/get-screen-generation-context.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"list-components.d.ts","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG3F;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CA6C/B"}
1
+ {"version":3,"file":"list-components.d.ts","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG3F;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CA0F/B"}
@@ -7,7 +7,9 @@
7
7
  * including category, tier, and variant information
8
8
  */
9
9
  import { fetchComponentList } from '../api/data-client.js';
10
- import { formatToolError } from '../api/api-result.js';
10
+ import { listFallbackWebComponents } from '../data/component-fallback-catalog.js';
11
+ import { listReactNativeRuntimeComponents } from '../data/react-native-runtime-catalog.js';
12
+ import { resolvePlatformTarget } from '../project-context-resolution.js';
11
13
  import { extractErrorMessage } from '../utils/error-handler.js';
12
14
  /**
13
15
  * List all available UI components
@@ -16,12 +18,49 @@ import { extractErrorMessage } from '../utils/error-handler.js';
16
18
  */
17
19
  export async function listComponentsTool(input) {
18
20
  try {
21
+ const { platform: targetPlatform } = resolvePlatformTarget(input.platform);
22
+ if (targetPlatform === 'react-native') {
23
+ const components = listReactNativeRuntimeComponents({
24
+ category: input.category,
25
+ search: input.search,
26
+ });
27
+ const allComponents = listReactNativeRuntimeComponents({ category: 'all' });
28
+ return {
29
+ success: true,
30
+ components,
31
+ count: components.length,
32
+ categories: {
33
+ core: allComponents.filter(component => component.category === 'core').length,
34
+ complex: allComponents.filter(component => component.category === 'complex').length,
35
+ advanced: allComponents.filter(component => component.category === 'advanced').length,
36
+ },
37
+ };
38
+ }
19
39
  // API에서 전체 컴포넌트 목록 조회
20
40
  const result = await fetchComponentList();
21
41
  if (!result.ok) {
22
- return { success: false, error: formatToolError(result.error) };
42
+ const fallbackComponents = listFallbackWebComponents({
43
+ category: input.category,
44
+ search: input.search,
45
+ });
46
+ const allFallback = listFallbackWebComponents({ category: 'all' });
47
+ return {
48
+ success: true,
49
+ components: fallbackComponents,
50
+ count: fallbackComponents.length,
51
+ categories: {
52
+ core: allFallback.filter(component => component.category === 'core').length,
53
+ complex: allFallback.filter(component => component.category === 'complex').length,
54
+ advanced: allFallback.filter(component => component.category === 'advanced').length,
55
+ },
56
+ };
23
57
  }
24
- const allComponents = result.data;
58
+ const apiComponents = result.data;
59
+ const fallbackById = new Map(listFallbackWebComponents({ category: 'all' }).map(component => [component.id, component]));
60
+ const allComponents = [
61
+ ...apiComponents,
62
+ ...Array.from(fallbackById.values()).filter(fallback => !apiComponents.some(component => component.id === fallback.id)),
63
+ ];
25
64
  // 카테고리 필터 적용
26
65
  let components = allComponents;
27
66
  if (input.category && input.category !== 'all') {
@@ -1 +1 @@
1
- {"version":3,"file":"list-components.js","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA0B;IAE1B,IAAI,CAAC;QACH,sBAAsB;QACtB,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAClE,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC;QAElC,aAAa;QACb,IAAI,UAAU,GAAG,aAAa,CAAC;QAC/B,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC/C,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC/E,CAAC;QAED,WAAW;QACX,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC/C,UAAU,GAAG,UAAU,CAAC,MAAM,CAC5B,CAAC,CAAM,EAAE,EAAE,CACT,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC1B,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC1C,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CACpD,CAAC;QACJ,CAAC;QAED,cAAc;QACd,MAAM,UAAU,GAAG;YACjB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM;YACpE,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM;YAC1E,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,MAAM;SAC7E,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,UAAiB;YAC7B,KAAK,EAAE,UAAU,CAAC,MAAM;YACxB,UAAU;SACX,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC;SAClC,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"list-components.js","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,12 @@
7
7
  * with category filtering and search capabilities
8
8
  */
9
9
  import type { ListScreenTemplatesInput, ListScreenTemplatesOutput } from '../schemas/mcp-schemas.js';
10
+ type ListScreenTemplatesToolInput = Partial<ListScreenTemplatesInput>;
10
11
  /**
11
12
  * List all available screen templates
12
13
  * @param input - Filter options (category, search)
13
14
  * @returns Template metadata list with category counts
14
15
  */
15
- export declare function listScreenTemplatesTool(input: ListScreenTemplatesInput): Promise<ListScreenTemplatesOutput>;
16
+ export declare function listScreenTemplatesTool(input?: ListScreenTemplatesToolInput): Promise<ListScreenTemplatesOutput>;
17
+ export {};
16
18
  //# sourceMappingURL=list-screen-templates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-screen-templates.d.ts","sourceRoot":"","sources":["../../src/tools/list-screen-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EAE1B,MAAM,2BAA2B,CAAC;AAGnC;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,yBAAyB,CAAC,CAiDpC"}
1
+ {"version":3,"file":"list-screen-templates.d.ts","sourceRoot":"","sources":["../../src/tools/list-screen-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EAE1B,MAAM,2BAA2B,CAAC;AAGnC,KAAK,4BAA4B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;AAEtE;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,GAAE,4BAAiC,GACvC,OAAO,CAAC,yBAAyB,CAAC,CAiDpC"}
@@ -14,7 +14,7 @@ import { extractErrorMessage } from '../utils/error-handler.js';
14
14
  * @param input - Filter options (category, search)
15
15
  * @returns Template metadata list with category counts
16
16
  */
17
- export async function listScreenTemplatesTool(input) {
17
+ export async function listScreenTemplatesTool(input = {}) {
18
18
  try {
19
19
  // API에서 템플릿 목록 조회
20
20
  const params = {};
@@ -47,8 +47,8 @@ export async function listScreenTemplatesTool(input) {
47
47
  category: t.category,
48
48
  description: t.description,
49
49
  requiredComponentsCount: t.requiredComponentsCount,
50
- layoutType: t.layoutType,
51
- version: t.version,
50
+ layoutType: (t.layoutType ?? 'centered'),
51
+ version: t.version ?? '1.0.0',
52
52
  tags: t.tags,
53
53
  })),
54
54
  count: templates.length,
@@ -1 +1 @@
1
- {"version":3,"file":"list-screen-templates.js","sourceRoot":"","sources":["../../src/tools/list-screen-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAA+B;IAE/B,IAAI,CAAC;QACH,kBAAkB;QAClB,MAAM,MAAM,GAA2C,EAAE,CAAC;QAC1D,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC/C,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACnC,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC/B,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAClE,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;QAE9B,2CAA2C;QAC3C,MAAM,SAAS,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,MAAM,UAAU,GAAG;YACjB,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM;YACnE,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,MAAM;YAC7E,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM;YACnE,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,MAAM;YAC7E,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,MAAM;SAC5E,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;gBACpC,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,QAAQ,EAAE,CAAC,CAAC,QAA4B;gBACxC,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,uBAAuB,EAAE,CAAC,CAAC,uBAAuB;gBAClD,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,IAAI,EAAE,CAAC,CAAC,IAAI;aACb,CAAC,CAAC;YACH,KAAK,EAAE,SAAS,CAAC,MAAM;YACvB,UAAU;SACX,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC;SAClC,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"list-screen-templates.js","sourceRoot":"","sources":["../../src/tools/list-screen-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,iBAAiB,EAAqB,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAIhE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAAsC,EAAE;IAExC,IAAI,CAAC;QACH,kBAAkB;QAClB,MAAM,MAAM,GAA2C,EAAE,CAAC;QAC1D,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC/C,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACnC,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC/B,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAClE,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;QAE9B,2CAA2C;QAC3C,MAAM,SAAS,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,MAAM,UAAU,GAAG;YACjB,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM;YAC5E,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,MAAM;YACtF,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM;YAC5E,SAAS,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,MAAM;YACtF,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,MAAM;SACrF,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC;gBAC7C,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,QAAQ,EAAE,CAAC,CAAC,QAA4B;gBACxC,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,uBAAuB,EAAE,CAAC,CAAC,uBAAuB;gBAClD,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,UAAU,CAAoC;gBAC3E,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,OAAO;gBAC7B,IAAI,EAAE,CAAC,CAAC,IAAI;aACb,CAAC,CAAC;YACH,KAAK,EAAE,SAAS,CAAC,MAAM;YACvB,UAAU;SACX,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC;SAClC,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"preview-component.d.ts","sourceRoot":"","sources":["../../src/tools/preview-component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAG/F;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAmDjC"}
1
+ {"version":3,"file":"preview-component.d.ts","sourceRoot":"","sources":["../../src/tools/preview-component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAG/F;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAsGjC"}
@@ -12,6 +12,9 @@
12
12
  */
13
13
  import { fetchComponent, fetchComponentList } from '../api/data-client.js';
14
14
  import { formatToolError } from '../api/api-result.js';
15
+ import { buildFallbackWebPreview, getFallbackWebComponent, } from '../data/component-fallback-catalog.js';
16
+ import { buildReactNativePreview } from '../data/react-native-runtime-catalog.js';
17
+ import { resolvePlatformTarget } from '../project-context-resolution.js';
15
18
  import { extractErrorMessage } from '../utils/error-handler.js';
16
19
  /**
17
20
  * Preview a component with detailed information
@@ -19,11 +22,40 @@ import { extractErrorMessage } from '../utils/error-handler.js';
19
22
  */
20
23
  export async function previewComponentTool(input) {
21
24
  try {
25
+ const { platform: targetPlatform } = resolvePlatformTarget(input.platform);
26
+ if (targetPlatform === 'react-native') {
27
+ const preview = buildReactNativePreview(input.componentId);
28
+ if (preview) {
29
+ if (input.includeDependencies === false && preview.component) {
30
+ preview.component.dependencies = undefined;
31
+ }
32
+ if (input.includeExamples === false && preview.component) {
33
+ preview.component.examples = undefined;
34
+ preview.component.variants = undefined;
35
+ }
36
+ return preview;
37
+ }
38
+ return {
39
+ success: false,
40
+ error: `Component not found: ${input.componentId}. Use list-components with platform="react-native" to inspect available runtime exports.`,
41
+ };
42
+ }
22
43
  // Set default values for optional parameters
23
44
  const includeExamples = input.includeExamples ?? true;
24
45
  const includeDependencies = input.includeDependencies ?? true;
25
46
  const componentResult = await fetchComponent(input.componentId);
26
47
  if (!componentResult.ok) {
48
+ const fallbackPreview = buildFallbackWebPreview(input.componentId);
49
+ if (fallbackPreview) {
50
+ if (includeDependencies === false && fallbackPreview.component) {
51
+ fallbackPreview.component.dependencies = undefined;
52
+ }
53
+ if (includeExamples === false && fallbackPreview.component) {
54
+ fallbackPreview.component.examples = undefined;
55
+ fallbackPreview.component.variants = undefined;
56
+ }
57
+ return fallbackPreview;
58
+ }
27
59
  // NOT_FOUND인 경우 사용 가능한 컴포넌트 목록 제공
28
60
  if (componentResult.error.code === 'NOT_FOUND') {
29
61
  const listResult = await fetchComponentList();
@@ -38,6 +70,7 @@ export async function previewComponentTool(input) {
38
70
  return { success: false, error: formatToolError(componentResult.error) };
39
71
  }
40
72
  const component = componentResult.data;
73
+ const fallback = getFallbackWebComponent(input.componentId);
41
74
  // Build component preview (API 응답에서 직접 필드 사용)
42
75
  const result = {
43
76
  id: component.id,
@@ -45,13 +78,30 @@ export async function previewComponentTool(input) {
45
78
  category: component.category,
46
79
  description: component.description,
47
80
  tier: component.tier,
48
- props: component.props ?? [],
49
- variants: includeExamples ? component.variants : undefined,
50
- subComponents: component.subComponents,
51
- importStatement: component.importStatement,
52
- dependencies: includeDependencies ? component.dependencies : undefined,
53
- examples: includeExamples ? component.examples : undefined,
54
- accessibility: component.accessibility,
81
+ props: component.props ?? fallback?.props ?? [],
82
+ variants: includeExamples ? (component.variants ?? fallback?.variants) : undefined,
83
+ subComponents: component.subComponents ?? fallback?.subComponents,
84
+ importStatement: component.importStatement ??
85
+ fallback?.importStatement ??
86
+ `import { ${component.name} } from '@framingui/ui';`,
87
+ dependencies: includeDependencies
88
+ ? (component.dependencies ?? fallback?.dependencies)
89
+ : undefined,
90
+ examples: includeExamples ? (component.examples ?? fallback?.examples) : undefined,
91
+ accessibility: component.accessibility ?? fallback?.accessibility,
92
+ platformSupport: {
93
+ target: 'web',
94
+ supported: true,
95
+ recommended: true,
96
+ status: 'full',
97
+ notes: ['Use @framingui/ui for the canonical web component surface.'],
98
+ recommendedImports: [
99
+ component.importStatement ??
100
+ fallback?.importStatement ??
101
+ `import { ${component.name} } from '@framingui/ui';`,
102
+ ],
103
+ recommendedPackages: ['@framingui/ui', 'react'],
104
+ },
55
105
  };
56
106
  return {
57
107
  success: true,
@@ -1 +1 @@
1
- {"version":3,"file":"preview-component.js","sourceRoot":"","sources":["../../src/tools/preview-component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAA4B;IAE5B,IAAI,CAAC;QACH,6CAA6C;QAC7C,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,IAAI,CAAC;QACtD,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,IAAI,IAAI,CAAC;QAE9D,MAAM,eAAe,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAEhE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACxB,kCAAkC;YAClC,IAAI,eAAe,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC/C,MAAM,UAAU,GAAG,MAAM,kBAAkB,EAAE,CAAC;gBAC9C,IAAI,UAAU,CAAC,EAAE,EAAE,CAAC;oBAClB,MAAM,mBAAmB,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAClE,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,wBAAwB,KAAK,CAAC,WAAW,2BAA2B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBAC5G,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3E,CAAC;QAED,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC;QAEvC,8CAA8C;QAC9C,MAAM,MAAM,GAAG;YACb,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,EAAE;YAC5B,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC1D,aAAa,EAAE,SAAS,CAAC,aAAa;YACtC,eAAe,EAAE,SAAS,CAAC,eAAe;YAC1C,YAAY,EAAE,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;YACtE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC1D,aAAa,EAAE,SAAS,CAAC,aAAa;SACvC,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,MAAa;SACzB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,mBAAmB,CAAC,KAAK,CAAC;SAClC,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"preview-component.js","sourceRoot":"","sources":["../../src/tools/preview-component.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * framingui.com API 기반 테마 상세 조회
5
5
  */
6
6
  import type { PreviewThemeInput, PreviewThemeOutput } from '../schemas/mcp-schemas.js';
7
+ type PreviewThemeToolInput = Pick<PreviewThemeInput, 'themeId'> & Partial<Pick<PreviewThemeInput, 'includeCSS'>>;
7
8
  /**
8
9
  * Preview theme MCP tool implementation
9
10
  * 인증된 사용자의 라이선스 보유 테마만 미리보기 가능
@@ -11,5 +12,6 @@ import type { PreviewThemeInput, PreviewThemeOutput } from '../schemas/mcp-schem
11
12
  * @param input - Theme ID to preview, optional includeCSS flag
12
13
  * @returns Full v2.1 theme data (MCP JSON-RPC format), optionally with CSS variables
13
14
  */
14
- export declare function previewThemeTool(input: PreviewThemeInput): Promise<PreviewThemeOutput>;
15
+ export declare function previewThemeTool(input: PreviewThemeToolInput): Promise<PreviewThemeOutput>;
16
+ export {};
15
17
  //# sourceMappingURL=preview-theme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"preview-theme.d.ts","sourceRoot":"","sources":["../../src/tools/preview-theme.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAkHvF;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAuE5F"}
1
+ {"version":3,"file":"preview-theme.d.ts","sourceRoot":"","sources":["../../src/tools/preview-theme.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAYvF,KAAK,qBAAqB,GAAG,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,GAC7D,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC,CAAC;AAoIjD;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA0FhG"}