@framingui/mcp-server 0.5.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.
- package/README.md +1027 -0
- package/dist/auth/cache.d.ts +28 -0
- package/dist/auth/cache.d.ts.map +1 -0
- package/dist/auth/cache.js +48 -0
- package/dist/auth/cache.js.map +1 -0
- package/dist/auth/guard.d.ts +22 -0
- package/dist/auth/guard.d.ts.map +1 -0
- package/dist/auth/guard.js +37 -0
- package/dist/auth/guard.js.map +1 -0
- package/dist/auth/state.d.ts +42 -0
- package/dist/auth/state.d.ts.map +1 -0
- package/dist/auth/state.js +96 -0
- package/dist/auth/state.js.map +1 -0
- package/dist/auth/theme-access.d.ts +21 -0
- package/dist/auth/theme-access.d.ts.map +1 -0
- package/dist/auth/theme-access.js +30 -0
- package/dist/auth/theme-access.js.map +1 -0
- package/dist/auth/verify.d.ts +44 -0
- package/dist/auth/verify.d.ts.map +1 -0
- package/dist/auth/verify.js +77 -0
- package/dist/auth/verify.js.map +1 -0
- package/dist/cli/agent-md-templates.d.ts +16 -0
- package/dist/cli/agent-md-templates.d.ts.map +1 -0
- package/dist/cli/agent-md-templates.js +311 -0
- package/dist/cli/agent-md-templates.js.map +1 -0
- package/dist/cli/credentials.d.ts +29 -0
- package/dist/cli/credentials.d.ts.map +1 -0
- package/dist/cli/credentials.js +66 -0
- package/dist/cli/credentials.js.map +1 -0
- package/dist/cli/guide-template.d.ts +10 -0
- package/dist/cli/guide-template.d.ts.map +1 -0
- package/dist/cli/guide-template.js +195 -0
- package/dist/cli/guide-template.js.map +1 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +41 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/init.d.ts +6 -0
- package/dist/cli/init.d.ts.map +1 -0
- package/dist/cli/init.js +319 -0
- package/dist/cli/init.js.map +1 -0
- package/dist/cli/login.d.ts +9 -0
- package/dist/cli/login.d.ts.map +1 -0
- package/dist/cli/login.js +121 -0
- package/dist/cli/login.js.map +1 -0
- package/dist/cli/logout.d.ts +9 -0
- package/dist/cli/logout.d.ts.map +1 -0
- package/dist/cli/logout.js +18 -0
- package/dist/cli/logout.js.map +1 -0
- package/dist/cli/status.d.ts +9 -0
- package/dist/cli/status.d.ts.map +1 -0
- package/dist/cli/status.js +31 -0
- package/dist/cli/status.js.map +1 -0
- package/dist/data/component-props.d.ts +30 -0
- package/dist/data/component-props.d.ts.map +1 -0
- package/dist/data/component-props.js +537 -0
- package/dist/data/component-props.js.map +1 -0
- package/dist/data/component-registry.d.ts +30 -0
- package/dist/data/component-registry.d.ts.map +1 -0
- package/dist/data/component-registry.js +320 -0
- package/dist/data/component-registry.js.map +1 -0
- package/dist/data/examples/screen-examples.d.ts +38 -0
- package/dist/data/examples/screen-examples.d.ts.map +1 -0
- package/dist/data/examples/screen-examples.js +500 -0
- package/dist/data/examples/screen-examples.js.map +1 -0
- package/dist/data/hint-generator.d.ts +16 -0
- package/dist/data/hint-generator.d.ts.map +1 -0
- package/dist/data/hint-generator.js +298 -0
- package/dist/data/hint-generator.js.map +1 -0
- package/dist/data/recipe-resolver.d.ts +48 -0
- package/dist/data/recipe-resolver.d.ts.map +1 -0
- package/dist/data/recipe-resolver.js +226 -0
- package/dist/data/recipe-resolver.js.map +1 -0
- package/dist/data/template-matcher.d.ts +50 -0
- package/dist/data/template-matcher.d.ts.map +1 -0
- package/dist/data/template-matcher.js +240 -0
- package/dist/data/template-matcher.js.map +1 -0
- package/dist/generators/core-resolver.d.ts +56 -0
- package/dist/generators/core-resolver.d.ts.map +1 -0
- package/dist/generators/core-resolver.js +490 -0
- package/dist/generators/core-resolver.js.map +1 -0
- package/dist/generators/css-generator.d.ts +49 -0
- package/dist/generators/css-generator.d.ts.map +1 -0
- package/dist/generators/css-generator.js +294 -0
- package/dist/generators/css-generator.js.map +1 -0
- package/dist/generators/index.d.ts +13 -0
- package/dist/generators/index.d.ts.map +1 -0
- package/dist/generators/index.js +16 -0
- package/dist/generators/index.js.map +1 -0
- package/dist/generators/llm-generator.d.ts +96 -0
- package/dist/generators/llm-generator.d.ts.map +1 -0
- package/dist/generators/llm-generator.js +296 -0
- package/dist/generators/llm-generator.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +965 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/getting-started.d.ts +18 -0
- package/dist/prompts/getting-started.d.ts.map +1 -0
- package/dist/prompts/getting-started.js +112 -0
- package/dist/prompts/getting-started.js.map +1 -0
- package/dist/prompts/screen-workflow.d.ts +17 -0
- package/dist/prompts/screen-workflow.d.ts.map +1 -0
- package/dist/prompts/screen-workflow.js +246 -0
- package/dist/prompts/screen-workflow.js.map +1 -0
- package/dist/schemas/mcp-schemas.d.ts +4342 -0
- package/dist/schemas/mcp-schemas.d.ts.map +1 -0
- package/dist/schemas/mcp-schemas.js +989 -0
- package/dist/schemas/mcp-schemas.js.map +1 -0
- package/dist/storage/blueprint-storage.d.ts +68 -0
- package/dist/storage/blueprint-storage.d.ts.map +1 -0
- package/dist/storage/blueprint-storage.js +135 -0
- package/dist/storage/blueprint-storage.js.map +1 -0
- package/dist/storage/timestamp-manager.d.ts +32 -0
- package/dist/storage/timestamp-manager.d.ts.map +1 -0
- package/dist/storage/timestamp-manager.js +59 -0
- package/dist/storage/timestamp-manager.js.map +1 -0
- package/dist/tools/export-screen.d.ts +34 -0
- package/dist/tools/export-screen.d.ts.map +1 -0
- package/dist/tools/export-screen.js +344 -0
- package/dist/tools/export-screen.js.map +1 -0
- package/dist/tools/generate-blueprint.d.ts +15 -0
- package/dist/tools/generate-blueprint.d.ts.map +1 -0
- package/dist/tools/generate-blueprint.js +165 -0
- package/dist/tools/generate-blueprint.js.map +1 -0
- package/dist/tools/generate-screen.d.ts +13 -0
- package/dist/tools/generate-screen.d.ts.map +1 -0
- package/dist/tools/generate-screen.js +82 -0
- package/dist/tools/generate-screen.js.map +1 -0
- package/dist/tools/get-screen-generation-context.d.ts +11 -0
- package/dist/tools/get-screen-generation-context.d.ts.map +1 -0
- package/dist/tools/get-screen-generation-context.js +325 -0
- package/dist/tools/get-screen-generation-context.js.map +1 -0
- package/dist/tools/list-components.d.ts +15 -0
- package/dist/tools/list-components.d.ts.map +1 -0
- package/dist/tools/list-components.js +46 -0
- package/dist/tools/list-components.js.map +1 -0
- package/dist/tools/list-icon-libraries.d.ts +12 -0
- package/dist/tools/list-icon-libraries.d.ts.map +1 -0
- package/dist/tools/list-icon-libraries.js +48 -0
- package/dist/tools/list-icon-libraries.js.map +1 -0
- package/dist/tools/list-screen-templates.d.ts +15 -0
- package/dist/tools/list-screen-templates.d.ts.map +1 -0
- package/dist/tools/list-screen-templates.js +61 -0
- package/dist/tools/list-screen-templates.js.map +1 -0
- package/dist/tools/list-themes.d.ts +13 -0
- package/dist/tools/list-themes.d.ts.map +1 -0
- package/dist/tools/list-themes.js +42 -0
- package/dist/tools/list-themes.js.map +1 -0
- package/dist/tools/list-tokens.d.ts +13 -0
- package/dist/tools/list-tokens.d.ts.map +1 -0
- package/dist/tools/list-tokens.js +92 -0
- package/dist/tools/list-tokens.js.map +1 -0
- package/dist/tools/preview-component.d.ts +18 -0
- package/dist/tools/preview-component.d.ts.map +1 -0
- package/dist/tools/preview-component.js +63 -0
- package/dist/tools/preview-component.js.map +1 -0
- package/dist/tools/preview-icon-library.d.ts +13 -0
- package/dist/tools/preview-icon-library.d.ts.map +1 -0
- package/dist/tools/preview-icon-library.js +63 -0
- package/dist/tools/preview-icon-library.js.map +1 -0
- package/dist/tools/preview-screen-template.d.ts +18 -0
- package/dist/tools/preview-screen-template.d.ts.map +1 -0
- package/dist/tools/preview-screen-template.js +99 -0
- package/dist/tools/preview-screen-template.js.map +1 -0
- package/dist/tools/preview-theme.d.ts +15 -0
- package/dist/tools/preview-theme.d.ts.map +1 -0
- package/dist/tools/preview-theme.js +172 -0
- package/dist/tools/preview-theme.js.map +1 -0
- package/dist/tools/validate-environment.d.ts +37 -0
- package/dist/tools/validate-environment.d.ts.map +1 -0
- package/dist/tools/validate-environment.js +153 -0
- package/dist/tools/validate-environment.js.map +1 -0
- package/dist/tools/validate-screen-definition.d.ts +10 -0
- package/dist/tools/validate-screen-definition.d.ts.map +1 -0
- package/dist/tools/validate-screen-definition.js +559 -0
- package/dist/tools/validate-screen-definition.js.map +1 -0
- package/dist/tools/validate-screen.d.ts +13 -0
- package/dist/tools/validate-screen.d.ts.map +1 -0
- package/dist/tools/validate-screen.js +106 -0
- package/dist/tools/validate-screen.js.map +1 -0
- package/dist/tools/whoami.d.ts +17 -0
- package/dist/tools/whoami.d.ts.map +1 -0
- package/dist/tools/whoami.js +65 -0
- package/dist/tools/whoami.js.map +1 -0
- package/dist/utils/dependency-extractor.d.ts +13 -0
- package/dist/utils/dependency-extractor.d.ts.map +1 -0
- package/dist/utils/dependency-extractor.js +232 -0
- package/dist/utils/dependency-extractor.js.map +1 -0
- package/dist/utils/error-handler.d.ts +29 -0
- package/dist/utils/error-handler.d.ts.map +1 -0
- package/dist/utils/error-handler.js +48 -0
- package/dist/utils/error-handler.js.map +1 -0
- package/dist/utils/logger.d.ts +8 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +14 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/package-json-reader.d.ts +37 -0
- package/dist/utils/package-json-reader.d.ts.map +1 -0
- package/dist/utils/package-json-reader.js +108 -0
- package/dist/utils/package-json-reader.js.map +1 -0
- package/dist/utils/tailwind-config-reader.d.ts +23 -0
- package/dist/utils/tailwind-config-reader.d.ts.map +1 -0
- package/dist/utils/tailwind-config-reader.js +81 -0
- package/dist/utils/tailwind-config-reader.js.map +1 -0
- package/package.json +103 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validate Environment MCP Tool
|
|
3
|
+
* SPEC-MCP-005 Phase 2: Check if user's project has required NPM packages installed
|
|
4
|
+
* SPEC-MCP-005: Tailwind CSS 설정 검증 확장
|
|
5
|
+
*/
|
|
6
|
+
import type { ValidateEnvironmentInput, ValidateEnvironmentOutput } from '../schemas/mcp-schemas.js';
|
|
7
|
+
/**
|
|
8
|
+
* Validate user's environment for required dependencies
|
|
9
|
+
*
|
|
10
|
+
* Compares required packages against installed packages in package.json
|
|
11
|
+
* and provides installation commands for missing packages.
|
|
12
|
+
* Optionally validates Tailwind CSS configuration for @framingui/ui compatibility.
|
|
13
|
+
*
|
|
14
|
+
* @param input - Project path and required packages to validate
|
|
15
|
+
* @returns Validation result with installed/missing packages and install commands
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const result = await validateEnvironmentTool({
|
|
20
|
+
* projectPath: '/path/to/project',
|
|
21
|
+
* requiredPackages: ['framer-motion', 'react'],
|
|
22
|
+
* checkTailwind: true
|
|
23
|
+
* });
|
|
24
|
+
*
|
|
25
|
+
* if (result.success && result.missing.length > 0) {
|
|
26
|
+
* console.log(`Missing packages: ${result.missing.join(', ')}`);
|
|
27
|
+
* console.log(`Install with: ${result.installCommands.npm}`);
|
|
28
|
+
* }
|
|
29
|
+
*
|
|
30
|
+
* if (result.tailwind?.issues.length) {
|
|
31
|
+
* console.log('Tailwind issues:', result.tailwind.issues);
|
|
32
|
+
* console.log('Fixes:', result.tailwind.fixes);
|
|
33
|
+
* }
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export declare function validateEnvironmentTool(input: ValidateEnvironmentInput): Promise<ValidateEnvironmentOutput>;
|
|
37
|
+
//# sourceMappingURL=validate-environment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-environment.d.ts","sourceRoot":"","sources":["../../src/tools/validate-environment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,2BAA2B,CAAC;AAKnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,yBAAyB,CAAC,CAqGpC"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validate Environment MCP Tool
|
|
3
|
+
* SPEC-MCP-005 Phase 2: Check if user's project has required NPM packages installed
|
|
4
|
+
* SPEC-MCP-005: Tailwind CSS 설정 검증 확장
|
|
5
|
+
*/
|
|
6
|
+
import { readPackageJson } from '../utils/package-json-reader.js';
|
|
7
|
+
import { readTailwindConfig } from '../utils/tailwind-config-reader.js';
|
|
8
|
+
import { extractErrorMessage } from '../utils/error-handler.js';
|
|
9
|
+
/**
|
|
10
|
+
* Validate user's environment for required dependencies
|
|
11
|
+
*
|
|
12
|
+
* Compares required packages against installed packages in package.json
|
|
13
|
+
* and provides installation commands for missing packages.
|
|
14
|
+
* Optionally validates Tailwind CSS configuration for @framingui/ui compatibility.
|
|
15
|
+
*
|
|
16
|
+
* @param input - Project path and required packages to validate
|
|
17
|
+
* @returns Validation result with installed/missing packages and install commands
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const result = await validateEnvironmentTool({
|
|
22
|
+
* projectPath: '/path/to/project',
|
|
23
|
+
* requiredPackages: ['framer-motion', 'react'],
|
|
24
|
+
* checkTailwind: true
|
|
25
|
+
* });
|
|
26
|
+
*
|
|
27
|
+
* if (result.success && result.missing.length > 0) {
|
|
28
|
+
* console.log(`Missing packages: ${result.missing.join(', ')}`);
|
|
29
|
+
* console.log(`Install with: ${result.installCommands.npm}`);
|
|
30
|
+
* }
|
|
31
|
+
*
|
|
32
|
+
* if (result.tailwind?.issues.length) {
|
|
33
|
+
* console.log('Tailwind issues:', result.tailwind.issues);
|
|
34
|
+
* console.log('Fixes:', result.tailwind.fixes);
|
|
35
|
+
* }
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export async function validateEnvironmentTool(input) {
|
|
39
|
+
try {
|
|
40
|
+
const { projectPath, requiredPackages, checkTailwind } = input;
|
|
41
|
+
// Step 1: Read package.json from the project
|
|
42
|
+
const readResult = readPackageJson(projectPath);
|
|
43
|
+
if (!readResult.success || !readResult.installedPackages) {
|
|
44
|
+
return {
|
|
45
|
+
success: false,
|
|
46
|
+
error: readResult.error || 'Failed to read package.json',
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
const installedPackages = readResult.installedPackages;
|
|
50
|
+
// Step 2: Compare required packages with installed packages
|
|
51
|
+
const installed = {};
|
|
52
|
+
const missing = [];
|
|
53
|
+
for (const packageName of requiredPackages) {
|
|
54
|
+
const version = installedPackages[packageName];
|
|
55
|
+
if (version !== undefined) {
|
|
56
|
+
// Package is installed
|
|
57
|
+
installed[packageName] = version;
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
// Package is missing
|
|
61
|
+
missing.push(packageName);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// Step 3: Generate install commands for missing packages
|
|
65
|
+
const installCommands = generateInstallCommands(missing);
|
|
66
|
+
// Step 4: Check for potential warnings (optional enhancement)
|
|
67
|
+
const warnings = [];
|
|
68
|
+
// Step 5: Tailwind CSS 설정 검증
|
|
69
|
+
let tailwind;
|
|
70
|
+
if (checkTailwind !== false) {
|
|
71
|
+
const tailwindResult = readTailwindConfig(projectPath);
|
|
72
|
+
const issues = [];
|
|
73
|
+
const fixes = [];
|
|
74
|
+
if (!tailwindResult.found) {
|
|
75
|
+
issues.push('tailwind.config.{ts,js,mjs,cjs} not found in project root');
|
|
76
|
+
fixes.push('Create a tailwind.config.ts file in your project root. ' +
|
|
77
|
+
'See https://tailwindcss.com/docs/configuration for setup guide.');
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
if (!tailwindResult.hasUiContentPath) {
|
|
81
|
+
issues.push('tailwind.config content paths do not include @framingui/ui — ' +
|
|
82
|
+
'component styles (Dialog, AlertDialog, Popover, etc.) will not be compiled');
|
|
83
|
+
fixes.push("Add '../../packages/ui/src/**/*.{ts,tsx}' (monorepo) or " +
|
|
84
|
+
"'node_modules/@framingui/ui/dist/**/*.{js,ts,jsx,tsx}' (standalone) " +
|
|
85
|
+
'to the content array in your tailwind.config');
|
|
86
|
+
}
|
|
87
|
+
if (!tailwindResult.hasAnimatePlugin) {
|
|
88
|
+
issues.push('tailwindcss-animate plugin is not configured — ' +
|
|
89
|
+
'Radix UI component animations (Dialog open/close, Popover, Tooltip) will not work');
|
|
90
|
+
fixes.push('Install tailwindcss-animate (npm install tailwindcss-animate) and add it to plugins array: ' +
|
|
91
|
+
"import animate from 'tailwindcss-animate'; plugins: [animate]");
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
tailwind = {
|
|
95
|
+
configFound: tailwindResult.found,
|
|
96
|
+
configPath: tailwindResult.configPath,
|
|
97
|
+
hasUiContentPath: tailwindResult.hasUiContentPath,
|
|
98
|
+
hasAnimatePlugin: tailwindResult.hasAnimatePlugin,
|
|
99
|
+
issues,
|
|
100
|
+
fixes,
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
return {
|
|
104
|
+
success: true,
|
|
105
|
+
installed,
|
|
106
|
+
missing,
|
|
107
|
+
installCommands,
|
|
108
|
+
warnings: warnings.length > 0 ? warnings : undefined,
|
|
109
|
+
tailwind,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
return {
|
|
114
|
+
success: false,
|
|
115
|
+
error: extractErrorMessage(error),
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Generate installation commands for multiple package managers
|
|
121
|
+
*
|
|
122
|
+
* @param packages - Array of package names to install
|
|
123
|
+
* @returns Install commands for npm, yarn, pnpm, and bun
|
|
124
|
+
*
|
|
125
|
+
* @example
|
|
126
|
+
* ```typescript
|
|
127
|
+
* const commands = generateInstallCommands(['react', 'react-dom']);
|
|
128
|
+
* // {
|
|
129
|
+
* // npm: 'npm install react react-dom',
|
|
130
|
+
* // yarn: 'yarn add react react-dom',
|
|
131
|
+
* // pnpm: 'pnpm add react react-dom',
|
|
132
|
+
* // bun: 'bun add react react-dom'
|
|
133
|
+
* // }
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
function generateInstallCommands(packages) {
|
|
137
|
+
if (packages.length === 0) {
|
|
138
|
+
return {
|
|
139
|
+
npm: '',
|
|
140
|
+
yarn: '',
|
|
141
|
+
pnpm: '',
|
|
142
|
+
bun: '',
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
const packageList = packages.join(' ');
|
|
146
|
+
return {
|
|
147
|
+
npm: `npm install ${packageList}`,
|
|
148
|
+
yarn: `yarn add ${packageList}`,
|
|
149
|
+
pnpm: `pnpm add ${packageList}`,
|
|
150
|
+
bun: `bun add ${packageList}`,
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=validate-environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-environment.js","sourceRoot":"","sources":["../../src/tools/validate-environment.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validate Screen Definition MCP Tool
|
|
3
|
+
* SPEC-MCP-004 Phase 3.5: Validates screen definitions with helpful feedback
|
|
4
|
+
*/
|
|
5
|
+
import type { ValidateScreenDefinitionInput, ValidateScreenDefinitionOutput } from '../schemas/mcp-schemas.js';
|
|
6
|
+
/**
|
|
7
|
+
* Validate Screen Definition tool implementation
|
|
8
|
+
*/
|
|
9
|
+
export declare function validateScreenDefinitionTool(input: ValidateScreenDefinitionInput): Promise<ValidateScreenDefinitionOutput>;
|
|
10
|
+
//# sourceMappingURL=validate-screen-definition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-screen-definition.d.ts","sourceRoot":"","sources":["../../src/tools/validate-screen-definition.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,6BAA6B,EAC7B,8BAA8B,EAK/B,MAAM,2BAA2B,CAAC;AAqgBnC;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,KAAK,EAAE,6BAA6B,GACnC,OAAO,CAAC,8BAA8B,CAAC,CA0HzC"}
|