@hongmaple0820/scale-engine 0.12.3 → 0.14.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 (157) hide show
  1. package/dist/adapters/AiderAdapter.js +1 -1
  2. package/dist/adapters/AiderAdapter.js.map +1 -1
  3. package/dist/adapters/ClaudeCodeAdapter.d.ts +1 -0
  4. package/dist/adapters/ClaudeCodeAdapter.js +5 -3
  5. package/dist/adapters/ClaudeCodeAdapter.js.map +1 -1
  6. package/dist/adapters/CodexAdapter.js +1 -1
  7. package/dist/adapters/CodexAdapter.js.map +1 -1
  8. package/dist/adapters/CursorAdapter.js +1 -1
  9. package/dist/adapters/CursorAdapter.js.map +1 -1
  10. package/dist/adapters/DeepSeekTuiAdapter.js +5 -3
  11. package/dist/adapters/DeepSeekTuiAdapter.js.map +1 -1
  12. package/dist/adapters/DoubaoAdapter.js +1 -1
  13. package/dist/adapters/DoubaoAdapter.js.map +1 -1
  14. package/dist/adapters/GeminiAdapter.js +1 -1
  15. package/dist/adapters/GeminiAdapter.js.map +1 -1
  16. package/dist/adapters/HermesAdapter.js +1 -1
  17. package/dist/adapters/HermesAdapter.js.map +1 -1
  18. package/dist/adapters/KimiAdapter.js +1 -1
  19. package/dist/adapters/KimiAdapter.js.map +1 -1
  20. package/dist/adapters/KiroAdapter.d.ts +14 -0
  21. package/dist/adapters/KiroAdapter.js +180 -0
  22. package/dist/adapters/KiroAdapter.js.map +1 -0
  23. package/dist/adapters/OpenClawAdapter.js +1 -1
  24. package/dist/adapters/OpenClawAdapter.js.map +1 -1
  25. package/dist/adapters/OpenCodeAdapter.js +1 -1
  26. package/dist/adapters/OpenCodeAdapter.js.map +1 -1
  27. package/dist/adapters/QCoderAdapter.js +1 -1
  28. package/dist/adapters/QCoderAdapter.js.map +1 -1
  29. package/dist/adapters/TraeAdapter.js +1 -1
  30. package/dist/adapters/TraeAdapter.js.map +1 -1
  31. package/dist/adapters/VSCAdapter.js +1 -1
  32. package/dist/adapters/VSCAdapter.js.map +1 -1
  33. package/dist/adapters/WindsurfAdapter.js +1 -1
  34. package/dist/adapters/WindsurfAdapter.js.map +1 -1
  35. package/dist/adapters/WorkBuddyAdapter.js +1 -1
  36. package/dist/adapters/WorkBuddyAdapter.js.map +1 -1
  37. package/dist/adapters/index.d.ts +1 -0
  38. package/dist/adapters/index.js +3 -0
  39. package/dist/adapters/index.js.map +1 -1
  40. package/dist/api/cli.js +690 -9
  41. package/dist/api/cli.js.map +1 -1
  42. package/dist/api/doctor.d.ts +13 -0
  43. package/dist/api/doctor.js +261 -5
  44. package/dist/api/doctor.js.map +1 -1
  45. package/dist/api/quickstart.d.ts +20 -1
  46. package/dist/api/quickstart.js +104 -3
  47. package/dist/api/quickstart.js.map +1 -1
  48. package/dist/artifact/types.d.ts +16 -2
  49. package/dist/artifact/types.js.map +1 -1
  50. package/dist/cli/phaseCommands.d.ts +66 -0
  51. package/dist/cli/phaseCommands.js +695 -51
  52. package/dist/cli/phaseCommands.js.map +1 -1
  53. package/dist/guardrails/detectors.d.ts +9 -0
  54. package/dist/guardrails/detectors.js +102 -0
  55. package/dist/guardrails/detectors.js.map +1 -1
  56. package/dist/hooks/HookGeneratorEnhanced.js +29 -0
  57. package/dist/hooks/HookGeneratorEnhanced.js.map +1 -1
  58. package/dist/hooks/WorkflowHooksManager.js +20 -1
  59. package/dist/hooks/WorkflowHooksManager.js.map +1 -1
  60. package/dist/index.d.ts +6 -0
  61. package/dist/index.js +4 -0
  62. package/dist/index.js.map +1 -1
  63. package/dist/output/BrandThemeLoader.d.ts +54 -0
  64. package/dist/output/BrandThemeLoader.js +340 -0
  65. package/dist/output/BrandThemeLoader.js.map +1 -0
  66. package/dist/output/HTMLDocumentRenderer.d.ts +83 -0
  67. package/dist/output/HTMLDocumentRenderer.js +717 -0
  68. package/dist/output/HTMLDocumentRenderer.js.map +1 -0
  69. package/dist/output/UIPrototypeRenderer.d.ts +61 -0
  70. package/dist/output/UIPrototypeRenderer.js +500 -0
  71. package/dist/output/UIPrototypeRenderer.js.map +1 -0
  72. package/dist/output/index.d.ts +6 -0
  73. package/dist/output/index.js +6 -0
  74. package/dist/output/index.js.map +1 -0
  75. package/dist/skills/ExternalSkills.js +2 -0
  76. package/dist/skills/ExternalSkills.js.map +1 -1
  77. package/dist/skills/SkillCatalog.d.ts +13 -0
  78. package/dist/skills/SkillCatalog.js +184 -0
  79. package/dist/skills/SkillCatalog.js.map +1 -0
  80. package/dist/skills/SkillDiscovery.js +2 -1
  81. package/dist/skills/SkillDiscovery.js.map +1 -1
  82. package/dist/skills/SkillDoctor.d.ts +37 -0
  83. package/dist/skills/SkillDoctor.js +90 -0
  84. package/dist/skills/SkillDoctor.js.map +1 -0
  85. package/dist/skills/index.d.ts +2 -0
  86. package/dist/skills/index.js +2 -0
  87. package/dist/skills/index.js.map +1 -1
  88. package/dist/skills/routing/SkillGate.d.ts +12 -0
  89. package/dist/skills/routing/SkillGate.js +93 -0
  90. package/dist/skills/routing/SkillGate.js.map +1 -0
  91. package/dist/skills/routing/SkillPlanner.d.ts +8 -0
  92. package/dist/skills/routing/SkillPlanner.js +91 -0
  93. package/dist/skills/routing/SkillPlanner.js.map +1 -0
  94. package/dist/skills/routing/SkillPolicy.d.ts +6 -0
  95. package/dist/skills/routing/SkillPolicy.js +173 -0
  96. package/dist/skills/routing/SkillPolicy.js.map +1 -0
  97. package/dist/skills/routing/SkillRoutingTypes.d.ts +72 -0
  98. package/dist/skills/routing/SkillRoutingTypes.js +2 -0
  99. package/dist/skills/routing/SkillRoutingTypes.js.map +1 -0
  100. package/dist/skills/routing/TaskIntentClassifier.d.ts +6 -0
  101. package/dist/skills/routing/TaskIntentClassifier.js +79 -0
  102. package/dist/skills/routing/TaskIntentClassifier.js.map +1 -0
  103. package/dist/skills/routing/index.d.ts +5 -0
  104. package/dist/skills/routing/index.js +6 -0
  105. package/dist/skills/routing/index.js.map +1 -0
  106. package/dist/workflow/GovernanceLock.d.ts +35 -0
  107. package/dist/workflow/GovernanceLock.js +58 -0
  108. package/dist/workflow/GovernanceLock.js.map +1 -0
  109. package/dist/workflow/GovernanceTemplatePacks.d.ts +24 -0
  110. package/dist/workflow/GovernanceTemplatePacks.js +83 -0
  111. package/dist/workflow/GovernanceTemplatePacks.js.map +1 -0
  112. package/dist/workflow/GovernanceTemplates.d.ts +17 -0
  113. package/dist/workflow/GovernanceTemplates.js +686 -0
  114. package/dist/workflow/GovernanceTemplates.js.map +1 -0
  115. package/dist/workflow/PhaseMarkerTracker.d.ts +63 -0
  116. package/dist/workflow/PhaseMarkerTracker.js +291 -0
  117. package/dist/workflow/PhaseMarkerTracker.js.map +1 -0
  118. package/dist/workflow/SessionStateTracker.d.ts +74 -0
  119. package/dist/workflow/SessionStateTracker.js +270 -0
  120. package/dist/workflow/SessionStateTracker.js.map +1 -0
  121. package/dist/workflow/TaskArtifactScaffolder.d.ts +47 -0
  122. package/dist/workflow/TaskArtifactScaffolder.js +237 -0
  123. package/dist/workflow/TaskArtifactScaffolder.js.map +1 -0
  124. package/dist/workflow/TaskMetricsStore.d.ts +49 -0
  125. package/dist/workflow/TaskMetricsStore.js +149 -0
  126. package/dist/workflow/TaskMetricsStore.js.map +1 -0
  127. package/dist/workflow/VerificationCommands.d.ts +2 -0
  128. package/dist/workflow/VerificationCommands.js +8 -12
  129. package/dist/workflow/VerificationCommands.js.map +1 -1
  130. package/dist/workflow/VerificationProfile.d.ts +56 -0
  131. package/dist/workflow/VerificationProfile.js +170 -0
  132. package/dist/workflow/VerificationProfile.js.map +1 -0
  133. package/dist/workflow/WorkflowArtifactWriter.d.ts +113 -0
  134. package/dist/workflow/WorkflowArtifactWriter.js +241 -0
  135. package/dist/workflow/WorkflowArtifactWriter.js.map +1 -0
  136. package/dist/workflow/WorkflowEngine.d.ts +26 -5
  137. package/dist/workflow/WorkflowEngine.js +38 -9
  138. package/dist/workflow/WorkflowEngine.js.map +1 -1
  139. package/dist/workflow/WorkspaceLifecycle.d.ts +51 -0
  140. package/dist/workflow/WorkspaceLifecycle.js +259 -0
  141. package/dist/workflow/WorkspaceLifecycle.js.map +1 -0
  142. package/dist/workflow/autonomous/AutonomousDevLoop.d.ts +88 -0
  143. package/dist/workflow/autonomous/AutonomousDevLoop.js +381 -0
  144. package/dist/workflow/autonomous/AutonomousDevLoop.js.map +1 -0
  145. package/dist/workflow/autonomous/WorklogManager.d.ts +50 -0
  146. package/dist/workflow/autonomous/WorklogManager.js +264 -0
  147. package/dist/workflow/autonomous/WorklogManager.js.map +1 -0
  148. package/dist/workflow/autonomous/index.d.ts +2 -0
  149. package/dist/workflow/autonomous/index.js +4 -0
  150. package/dist/workflow/autonomous/index.js.map +1 -0
  151. package/dist/workflow/gates/GateSystem.d.ts +12 -3
  152. package/dist/workflow/gates/GateSystem.js +185 -41
  153. package/dist/workflow/gates/GateSystem.js.map +1 -1
  154. package/dist/workflow/index.d.ts +10 -0
  155. package/dist/workflow/index.js +10 -0
  156. package/dist/workflow/index.js.map +1 -1
  157. package/package.json +3 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HTMLDocumentRenderer.js","sourceRoot":"","sources":["../../src/output/HTMLDocumentRenderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ export interface PageSpec {
2
+ name: string;
3
+ title: string;
4
+ description?: string;
5
+ layout: 'single-column' | 'two-column' | 'sidebar' | 'dashboard' | 'grid';
6
+ components: ComponentSpec[];
7
+ navigation?: NavItem[];
8
+ }
9
+ export interface ComponentSpec {
10
+ type: 'header' | 'card' | 'table' | 'form' | 'chart' | 'list' | 'hero' | 'footer' | 'sidebar' | 'modal' | 'tabs' | 'custom';
11
+ title?: string;
12
+ data?: Record<string, unknown>;
13
+ position?: {
14
+ col: number;
15
+ row: number;
16
+ colSpan?: number;
17
+ rowSpan?: number;
18
+ };
19
+ }
20
+ export interface NavItem {
21
+ label: string;
22
+ href: string;
23
+ active?: boolean;
24
+ icon?: string;
25
+ }
26
+ export interface DashboardLayout {
27
+ title: string;
28
+ description?: string;
29
+ nav: NavItem[];
30
+ widgets: DashboardWidget[];
31
+ }
32
+ export interface DashboardWidget {
33
+ title: string;
34
+ type: 'metric' | 'chart' | 'table' | 'list' | 'status';
35
+ data: Record<string, unknown>;
36
+ size?: 'small' | 'medium' | 'large';
37
+ }
38
+ export interface UIPrototypeOptions {
39
+ theme: 'dark' | 'light';
40
+ accentColor?: string;
41
+ fontFamily?: string;
42
+ brandName?: string;
43
+ }
44
+ export declare class UIPrototypeRenderer {
45
+ private options;
46
+ constructor(options?: Partial<UIPrototypeOptions>);
47
+ renderWireframe(pages: PageSpec[]): string;
48
+ renderComponent(components: ComponentSpec[]): string;
49
+ renderDashboard(layout: DashboardLayout): string;
50
+ writeToFile(html: string, filePath: string): string;
51
+ private renderPage;
52
+ private renderMultiPage;
53
+ private renderComponentHTML;
54
+ private renderTableComponent;
55
+ private renderFormComponent;
56
+ private renderListComponent;
57
+ private renderWidgetContent;
58
+ private renderEmpty;
59
+ private wrapInUIPrototype;
60
+ private esc;
61
+ }
@@ -0,0 +1,500 @@
1
+ // SCALE Engine — UI Prototype Renderer
2
+ // Generates high-fidelity UI prototype HTML from page/component specs
3
+ // Integrates with frontend-design, awesome-design-md, web-artifacts-builder skills
4
+ import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
5
+ import { dirname } from 'node:path';
6
+ // ============================================================================
7
+ // 2. Default options
8
+ // ============================================================================
9
+ const DEFAULT_UI_OPTIONS = {
10
+ theme: 'dark',
11
+ accentColor: '#00ff88',
12
+ fontFamily: "system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
13
+ };
14
+ // ============================================================================
15
+ // 3. UIPrototypeRenderer
16
+ // ============================================================================
17
+ export class UIPrototypeRenderer {
18
+ constructor(options) {
19
+ this.options = { ...DEFAULT_UI_OPTIONS, ...options };
20
+ }
21
+ // === Render a wireframe page ===
22
+ renderWireframe(pages) {
23
+ if (pages.length === 0)
24
+ return this.renderEmpty();
25
+ // Single page — render directly
26
+ if (pages.length === 1) {
27
+ return this.renderPage(pages[0]);
28
+ }
29
+ // Multi-page — render with tab navigation
30
+ return this.renderMultiPage(pages);
31
+ }
32
+ // === Render a single component set ===
33
+ renderComponent(components) {
34
+ const body = components.map(c => this.renderComponentHTML(c)).join('\n');
35
+ return this.wrapInUIPrototype('Components', `
36
+ <div class="prototype-component-grid">
37
+ ${body}
38
+ </div>
39
+ `);
40
+ }
41
+ // === Render a dashboard layout ===
42
+ renderDashboard(layout) {
43
+ const navHtml = layout.nav.map(item => `
44
+ <a href="${item.href}" class="proto-nav-item${item.active ? ' active' : ''}">
45
+ ${item.icon ? `<span class="proto-nav-icon">${item.icon}</span>` : ''}
46
+ ${this.esc(item.label)}
47
+ </a>
48
+ `).join('');
49
+ const widgetHtml = layout.widgets.map(w => {
50
+ const sizeClass = w.size === 'large' ? 'widget-lg' : w.size === 'small' ? 'widget-sm' : 'widget-md';
51
+ return `
52
+ <div class="proto-widget ${sizeClass}">
53
+ <div class="proto-widget-header">${this.esc(w.title)}</div>
54
+ <div class="proto-widget-body">${this.renderWidgetContent(w)}</div>
55
+ </div>
56
+ `;
57
+ }).join('');
58
+ return this.wrapInUIPrototype(layout.title, `
59
+ <nav class="proto-sidebar">
60
+ <div class="proto-sidebar-brand">${this.esc(layout.title)}</div>
61
+ ${navHtml}
62
+ </nav>
63
+ <main class="proto-main">
64
+ ${layout.description ? `<p class="proto-desc">${this.esc(layout.description)}</p>` : ''}
65
+ <div class="proto-widget-grid">
66
+ ${widgetHtml}
67
+ </div>
68
+ </main>
69
+ `, true);
70
+ }
71
+ // === Write to file ===
72
+ writeToFile(html, filePath) {
73
+ const dir = dirname(filePath);
74
+ if (!existsSync(dir))
75
+ mkdirSync(dir, { recursive: true });
76
+ writeFileSync(filePath, html, 'utf-8');
77
+ return filePath;
78
+ }
79
+ // === Internal: Render a single page ===
80
+ renderPage(page) {
81
+ const navHtml = page.navigation ? `
82
+ <nav class="proto-topnav">
83
+ ${page.navigation.map(item => `
84
+ <a href="${item.href}" class="proto-nav-item${item.active ? ' active' : ''}">${this.esc(item.label)}</a>
85
+ `).join('')}
86
+ </nav>
87
+ ` : '';
88
+ const componentsHtml = page.components.map(c => this.renderComponentHTML(c)).join('\n');
89
+ const layoutClass = page.layout === 'two-column' ? 'proto-layout-2col'
90
+ : page.layout === 'sidebar' ? 'proto-layout-sidebar'
91
+ : page.layout === 'dashboard' ? 'proto-layout-dashboard'
92
+ : page.layout === 'grid' ? 'proto-layout-grid'
93
+ : 'proto-layout-single';
94
+ return this.wrapInUIPrototype(page.title, `
95
+ ${navHtml}
96
+ <main class="proto-main ${layoutClass}">
97
+ <h1 class="proto-page-title">${this.esc(page.title)}</h1>
98
+ ${page.description ? `<p class="proto-desc">${this.esc(page.description)}</p>` : ''}
99
+ <div class="proto-components">
100
+ ${componentsHtml}
101
+ </div>
102
+ </main>
103
+ `);
104
+ }
105
+ // === Internal: Multi-page with tabs ===
106
+ renderMultiPage(pages) {
107
+ const tabsHtml = pages.map((p, i) => `
108
+ <button class="proto-tab${i === 0 ? ' active' : ''}" onclick="showPage(${i})">${this.esc(p.name)}</button>
109
+ `).join('');
110
+ const pagesHtml = pages.map((p, i) => `
111
+ <div class="proto-page-panel${i === 0 ? '' : ' hidden'}" data-page="${i}">
112
+ ${p.components.map(c => this.renderComponentHTML(c)).join('\n')}
113
+ </div>
114
+ `).join('');
115
+ return this.wrapInUIPrototype(pages[0].title, `
116
+ <div class="proto-tabs">${tabsHtml}</div>
117
+ <main class="proto-main">
118
+ ${pagesHtml}
119
+ </main>
120
+ <script>
121
+ function showPage(idx) {
122
+ document.querySelectorAll('.proto-page-panel').forEach((p, i) => {
123
+ p.classList.toggle('hidden', i !== idx);
124
+ });
125
+ document.querySelectorAll('.proto-tab').forEach((t, i) => {
126
+ t.classList.toggle('active', i === idx);
127
+ });
128
+ }
129
+ </script>
130
+ `);
131
+ }
132
+ // === Internal: Render a single component ===
133
+ renderComponentHTML(comp) {
134
+ switch (comp.type) {
135
+ case 'header':
136
+ return `<header class="proto-component proto-header"><h2>${this.esc(comp.title ?? 'Header')}</h2></header>`;
137
+ case 'card':
138
+ return `<div class="proto-component proto-card">
139
+ ${comp.title ? `<div class="proto-card-title">${this.esc(comp.title)}</div>` : ''}
140
+ <div class="proto-card-body">${comp.data?.content ? this.esc(String(comp.data.content)) : '<span class="proto-placeholder">Card content</span>'}</div>
141
+ </div>`;
142
+ case 'table':
143
+ return this.renderTableComponent(comp);
144
+ case 'form':
145
+ return this.renderFormComponent(comp);
146
+ case 'hero':
147
+ return `<section class="proto-component proto-hero">
148
+ <h2>${this.esc(comp.title ?? 'Hero Title')}</h2>
149
+ <p>${comp.data?.subtitle ? this.esc(String(comp.data.subtitle)) : 'Hero description'}</p>
150
+ <button class="proto-btn proto-btn-primary">Get Started</button>
151
+ </section>`;
152
+ case 'list':
153
+ return this.renderListComponent(comp);
154
+ case 'tabs':
155
+ return `<div class="proto-component proto-tabs-box">
156
+ <div class="proto-tabs-inner">
157
+ ${(comp.data?.items ?? ['Tab 1', 'Tab 2']).map((t, i) => `<span class="proto-tab-pill${i === 0 ? ' active' : ''}">${this.esc(t)}</span>`).join('')}
158
+ </div>
159
+ <div class="proto-tabs-content"><span class="proto-placeholder">Tab content</span></div>
160
+ </div>`;
161
+ case 'footer':
162
+ return `<footer class="proto-component proto-footer"><p>${this.esc(comp.title ?? 'Footer')}</p></footer>`;
163
+ default:
164
+ return `<div class="proto-component proto-custom">${comp.title ? `<strong>${this.esc(comp.title)}</strong>` : ''}<span class="proto-placeholder">Component</span></div>`;
165
+ }
166
+ }
167
+ renderTableComponent(comp) {
168
+ const headers = comp.data?.headers ?? ['Column 1', 'Column 2', 'Column 3'];
169
+ const rows = comp.data?.rows ?? [['A1', 'B1', 'C1'], ['A2', 'B2', 'C2']];
170
+ return `<div class="proto-component proto-table-wrap">
171
+ ${comp.title ? `<div class="proto-card-title">${this.esc(comp.title)}</div>` : ''}
172
+ <table class="proto-table">
173
+ <thead><tr>${headers.map(h => `<th>${this.esc(h)}</th>`).join('')}</tr></thead>
174
+ <tbody>${rows.map(row => `<tr>${row.map(cell => `<td>${this.esc(cell)}</td>`).join('')}</tr>`).join('')}</tbody>
175
+ </table>
176
+ </div>`;
177
+ }
178
+ renderFormComponent(comp) {
179
+ const fields = comp.data?.fields ?? [
180
+ { label: 'Name', type: 'text', placeholder: 'Enter name' },
181
+ { label: 'Email', type: 'email', placeholder: 'Enter email' },
182
+ ];
183
+ return `<div class="proto-component proto-form">
184
+ ${comp.title ? `<div class="proto-card-title">${this.esc(comp.title)}</div>` : ''}
185
+ ${fields.map(f => `
186
+ <div class="proto-form-field">
187
+ <label>${this.esc(f.label)}</label>
188
+ <input type="${f.type}" placeholder="${this.esc(f.placeholder ?? '')}" disabled>
189
+ </div>
190
+ `).join('')}
191
+ <button class="proto-btn proto-btn-primary" disabled>Submit</button>
192
+ </div>`;
193
+ }
194
+ renderListComponent(comp) {
195
+ const items = comp.data?.items ?? ['Item 1', 'Item 2', 'Item 3'];
196
+ return `<div class="proto-component proto-list">
197
+ ${comp.title ? `<div class="proto-card-title">${this.esc(comp.title)}</div>` : ''}
198
+ <ul>${items.map(item => `<li>${this.esc(item)}</li>`).join('')}</ul>
199
+ </div>`;
200
+ }
201
+ renderWidgetContent(widget) {
202
+ switch (widget.type) {
203
+ case 'metric':
204
+ return `<div class="widget-metric">
205
+ <div class="widget-metric-value">${this.esc(String(widget.data.value ?? '—'))}</div>
206
+ <div class="widget-metric-label">${this.esc(String(widget.data.label ?? ''))}</div>
207
+ </div>`;
208
+ case 'chart':
209
+ return `<div class="widget-chart-placeholder"><span class="proto-placeholder">Chart</span></div>`;
210
+ case 'table':
211
+ return this.renderTableComponent({ type: 'table', data: widget.data });
212
+ case 'list':
213
+ return this.renderListComponent({ type: 'list', data: widget.data });
214
+ case 'status':
215
+ return `<div class="widget-status">
216
+ <span class="status-dot ${widget.data.ok ? 'green' : 'red'}"></span>
217
+ <span>${this.esc(String(widget.data.message ?? 'Status'))}</span>
218
+ </div>`;
219
+ default:
220
+ return '<span class="proto-placeholder">Widget</span>';
221
+ }
222
+ }
223
+ renderEmpty() {
224
+ return this.wrapInUIPrototype('Empty Prototype', '<p class="proto-placeholder">No pages defined</p>');
225
+ }
226
+ // === Internal: Wrap in full UI Prototype HTML ===
227
+ wrapInUIPrototype(title, bodyHtml, hasSidebar = false) {
228
+ const opts = this.options;
229
+ return `<!DOCTYPE html>
230
+ <html lang="en">
231
+ <head>
232
+ <meta charset="UTF-8">
233
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
234
+ <title>${this.esc(title)} — UI Prototype</title>
235
+ <style>
236
+ :root {
237
+ --proto-bg: ${opts.theme === 'dark' ? '#0f0f0f' : '#ffffff'};
238
+ --proto-bg-surface: ${opts.theme === 'dark' ? '#1a1a1a' : '#f5f5f5'};
239
+ --proto-bg-elevated: ${opts.theme === 'dark' ? '#242424' : '#eeeeee'};
240
+ --proto-fg: ${opts.theme === 'dark' ? '#e0e0e0' : '#1a1a1a'};
241
+ --proto-fg-muted: ${opts.theme === 'dark' ? '#808080' : '#666666'};
242
+ --proto-border: ${opts.theme === 'dark' ? '#333' : '#ddd'};
243
+ --proto-accent: ${opts.accentColor ?? '#00ff88'};
244
+ --proto-font: ${opts.fontFamily ?? "system-ui, sans-serif"};
245
+ --proto-radius: 8px;
246
+ --proto-sidebar-w: 220px;
247
+ }
248
+ * { box-sizing: border-box; margin: 0; padding: 0; }
249
+ body {
250
+ font-family: var(--proto-font);
251
+ background: var(--proto-bg);
252
+ color: var(--proto-fg);
253
+ line-height: 1.6;
254
+ min-height: 100vh;
255
+ display: flex;
256
+ }
257
+ /* Sidebar */
258
+ .proto-sidebar {
259
+ width: var(--proto-sidebar-w);
260
+ min-width: var(--proto-sidebar-w);
261
+ background: var(--proto-bg-surface);
262
+ border-right: 1px solid var(--proto-border);
263
+ padding: 1.5rem 1rem;
264
+ display: flex;
265
+ flex-direction: column;
266
+ gap: 0.25rem;
267
+ }
268
+ .proto-sidebar-brand {
269
+ color: var(--proto-accent);
270
+ font-weight: 700;
271
+ font-size: 0.9rem;
272
+ padding: 0.5rem 0;
273
+ margin-bottom: 1rem;
274
+ border-bottom: 1px solid var(--proto-border);
275
+ }
276
+ .proto-nav-item {
277
+ display: block;
278
+ color: var(--proto-fg-muted);
279
+ text-decoration: none;
280
+ padding: 0.4rem 0.75rem;
281
+ border-radius: 4px;
282
+ font-size: 0.85rem;
283
+ transition: all 0.15s;
284
+ }
285
+ .proto-nav-item:hover { color: var(--proto-fg); background: var(--proto-bg-elevated); }
286
+ .proto-nav-item.active { color: var(--proto-accent); background: var(--proto-bg-elevated); }
287
+
288
+ /* Top nav */
289
+ .proto-topnav {
290
+ background: var(--proto-bg-surface);
291
+ padding: 0.75rem 1.5rem;
292
+ display: flex;
293
+ gap: 1rem;
294
+ border-bottom: 1px solid var(--proto-border);
295
+ }
296
+
297
+ /* Main */
298
+ .proto-main {
299
+ flex: 1;
300
+ padding: 2rem;
301
+ overflow-y: auto;
302
+ }
303
+ .proto-page-title {
304
+ color: var(--proto-accent);
305
+ font-size: 1.5rem;
306
+ margin-bottom: 0.5rem;
307
+ }
308
+ .proto-desc { color: var(--proto-fg-muted); margin-bottom: 1.5rem; }
309
+
310
+ /* Layouts */
311
+ .proto-layout-2col .proto-components { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
312
+ .proto-layout-grid .proto-components { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; }
313
+
314
+ /* Components */
315
+ .proto-component {
316
+ background: var(--proto-bg-surface);
317
+ border: 1px solid var(--proto-border);
318
+ border-radius: var(--proto-radius);
319
+ padding: 1.25rem;
320
+ margin-bottom: 1rem;
321
+ }
322
+ .proto-header { background: none; border: none; padding: 0.5rem 0; }
323
+ .proto-header h2 { font-size: 1.1rem; }
324
+ .proto-card-title { font-weight: 600; margin-bottom: 0.5rem; font-size: 0.9rem; }
325
+ .proto-card-body { font-size: 0.85rem; }
326
+
327
+ /* Hero */
328
+ .proto-hero {
329
+ text-align: center;
330
+ padding: 3rem 2rem;
331
+ background: linear-gradient(135deg, var(--proto-bg-surface), var(--proto-bg-elevated));
332
+ }
333
+ .proto-hero h2 { font-size: 1.75rem; margin-bottom: 0.5rem; color: var(--proto-accent); }
334
+ .proto-hero p { color: var(--proto-fg-muted); margin-bottom: 1.5rem; }
335
+
336
+ /* Buttons */
337
+ .proto-btn {
338
+ padding: 0.5rem 1.5rem;
339
+ border-radius: 4px;
340
+ border: 1px solid var(--proto-border);
341
+ background: var(--proto-bg-elevated);
342
+ color: var(--proto-fg);
343
+ cursor: pointer;
344
+ font-size: 0.85rem;
345
+ }
346
+ .proto-btn-primary {
347
+ background: var(--proto-accent);
348
+ color: ${opts.theme === 'dark' ? '#000' : '#fff'};
349
+ border-color: var(--proto-accent);
350
+ font-weight: 600;
351
+ }
352
+
353
+ /* Table */
354
+ .proto-table { width: 100%; border-collapse: collapse; font-size: 0.85rem; }
355
+ .proto-table th, .proto-table td {
356
+ padding: 0.5rem 0.75rem;
357
+ text-align: left;
358
+ border-bottom: 1px solid var(--proto-border);
359
+ }
360
+ .proto-table th { color: var(--proto-fg-muted); font-size: 0.75rem; text-transform: uppercase; }
361
+
362
+ /* Form */
363
+ .proto-form-field { margin-bottom: 1rem; }
364
+ .proto-form-field label { display: block; font-size: 0.8rem; color: var(--proto-fg-muted); margin-bottom: 0.25rem; }
365
+ .proto-form-field input {
366
+ width: 100%;
367
+ padding: 0.5rem 0.75rem;
368
+ background: var(--proto-bg-elevated);
369
+ border: 1px solid var(--proto-border);
370
+ border-radius: 4px;
371
+ color: var(--proto-fg);
372
+ font-size: 0.85rem;
373
+ }
374
+
375
+ /* List */
376
+ .proto-list ul { list-style: none; padding: 0; }
377
+ .proto-list li {
378
+ padding: 0.5rem 0;
379
+ border-bottom: 1px solid var(--proto-border);
380
+ font-size: 0.85rem;
381
+ }
382
+
383
+ /* Tabs */
384
+ .proto-tabs {
385
+ background: var(--proto-bg-surface);
386
+ padding: 0.75rem 1.5rem;
387
+ display: flex;
388
+ gap: 0.5rem;
389
+ border-bottom: 1px solid var(--proto-border);
390
+ }
391
+ .proto-tab {
392
+ padding: 0.4rem 1rem;
393
+ border: 1px solid var(--proto-border);
394
+ border-radius: 4px;
395
+ background: none;
396
+ color: var(--proto-fg-muted);
397
+ cursor: pointer;
398
+ font-size: 0.85rem;
399
+ }
400
+ .proto-tab.active {
401
+ color: var(--proto-accent);
402
+ border-color: var(--proto-accent);
403
+ }
404
+ .proto-tab-pill {
405
+ padding: 0.3rem 0.75rem;
406
+ border-radius: 20px;
407
+ font-size: 0.8rem;
408
+ color: var(--proto-fg-muted);
409
+ cursor: pointer;
410
+ }
411
+ .proto-tab-pill.active {
412
+ background: var(--proto-accent);
413
+ color: ${opts.theme === 'dark' ? '#000' : '#fff'};
414
+ }
415
+
416
+ /* Widgets */
417
+ .proto-widget-grid {
418
+ display: grid;
419
+ grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
420
+ gap: 1rem;
421
+ }
422
+ .proto-widget {
423
+ background: var(--proto-bg-surface);
424
+ border: 1px solid var(--proto-border);
425
+ border-radius: var(--proto-radius);
426
+ padding: 1rem;
427
+ }
428
+ .proto-widget.widget-lg { grid-column: span 2; }
429
+ .proto-widget-header {
430
+ font-size: 0.75rem;
431
+ color: var(--proto-fg-muted);
432
+ text-transform: uppercase;
433
+ letter-spacing: 0.05em;
434
+ margin-bottom: 0.75rem;
435
+ }
436
+ .widget-metric-value {
437
+ font-size: 2rem;
438
+ font-weight: 700;
439
+ color: var(--proto-accent);
440
+ }
441
+ .widget-metric-label {
442
+ font-size: 0.75rem;
443
+ color: var(--proto-fg-muted);
444
+ }
445
+ .widget-chart-placeholder {
446
+ height: 120px;
447
+ display: flex;
448
+ align-items: center;
449
+ justify-content: center;
450
+ }
451
+ .status-dot {
452
+ display: inline-block;
453
+ width: 8px;
454
+ height: 8px;
455
+ border-radius: 50%;
456
+ margin-right: 0.5rem;
457
+ }
458
+ .status-dot.green { background: var(--proto-accent); }
459
+ .status-dot.red { background: #ff4444; }
460
+
461
+ /* Placeholder */
462
+ .proto-placeholder {
463
+ color: var(--proto-fg-muted);
464
+ font-size: 0.85rem;
465
+ font-style: italic;
466
+ }
467
+
468
+ /* Footer */
469
+ .proto-footer {
470
+ text-align: center;
471
+ padding: 1.5rem;
472
+ color: var(--proto-fg-muted);
473
+ font-size: 0.8rem;
474
+ }
475
+
476
+ .hidden { display: none; }
477
+
478
+ /* Print */
479
+ @media print {
480
+ body { background: #fff; color: #000; }
481
+ .proto-sidebar { display: none; }
482
+ .proto-tabs { display: none; }
483
+ }
484
+ </style>
485
+ </head>
486
+ <body>
487
+ ${bodyHtml}
488
+ </body>
489
+ </html>`;
490
+ }
491
+ // === Utility ===
492
+ esc(str) {
493
+ return str
494
+ .replace(/&/g, '&amp;')
495
+ .replace(/</g, '&lt;')
496
+ .replace(/>/g, '&gt;')
497
+ .replace(/"/g, '&quot;');
498
+ }
499
+ }
500
+ //# sourceMappingURL=UIPrototypeRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UIPrototypeRenderer.js","sourceRoot":"","sources":["../../src/output/UIPrototypeRenderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export { HTMLDocumentRenderer } from './HTMLDocumentRenderer.js';
2
+ export type { HTMLRenderOptions, OutputFormat, ThemeMode, DocLang, SpecData, PlanData, ReviewData, ReportData, } from './HTMLDocumentRenderer.js';
3
+ export { BrandThemeLoader } from './BrandThemeLoader.js';
4
+ export type { BrandTheme, BrandColors, BrandTypography, BrandSpacing, BrandShadows, } from './BrandThemeLoader.js';
5
+ export { UIPrototypeRenderer } from './UIPrototypeRenderer.js';
6
+ export type { PageSpec, ComponentSpec, NavItem, DashboardLayout, DashboardWidget, UIPrototypeOptions, } from './UIPrototypeRenderer.js';
@@ -0,0 +1,6 @@
1
+ // SCALE Engine — Output Module
2
+ // HTML document rendering, brand theming, and UI prototype generation
3
+ export { HTMLDocumentRenderer } from './HTMLDocumentRenderer.js';
4
+ export { BrandThemeLoader } from './BrandThemeLoader.js';
5
+ export { UIPrototypeRenderer } from './UIPrototypeRenderer.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/output/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,sEAAsE;AAEtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAYhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AASxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { workflowAgentSkillDefinitions } from './SkillCatalog.js';
1
2
  export function registerExternalSkills(registry, eventBus) {
2
3
  const skills = [
3
4
  { id: 'web-access', name: 'Web Access', description: 'CDP browser automation', domain: 'execution', triggers: [{ type: 'taskType', value: ['web-scraping'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/web-access/SKILL.md' } }, priority: 85, installed: true },
@@ -13,6 +14,7 @@ export function registerExternalSkills(registry, eventBus) {
13
14
  { id: 'architecture-diagram-generator', name: 'Architecture Diagram', description: 'System architecture diagrams', domain: 'planning', triggers: [{ type: 'taskType', value: ['architecture-diagram'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/architecture-diagram-generator/SKILL.md' } }, priority: 85, installed: false, source: 'https://github.com/Cocoon-AI/architecture-diagram-generator' },
14
15
  { id: 'hyperframes', name: 'Hyperframes', description: 'HeyGen video generation', domain: 'execution', triggers: [{ type: 'taskType', value: ['video-generation'], weight: 1.0 }], execution: { type: 'cli-command', config: { command: 'npx @heygen/hyperframes' } }, priority: 75, installed: false, source: 'https://github.com/heygen-com/hyperframes' },
15
16
  { id: 'guizang-ppt-skill', name: 'Guizang PPT', description: 'PPT auto generation', domain: 'execution', triggers: [{ type: 'taskType', value: ['ppt-generation'], weight: 1.0 }], execution: { type: 'skill-file', config: { skillPath: '~/.claude/skills/guizang-ppt-skill/SKILL.md' } }, priority: 70, installed: false, source: 'https://github.com/op7418/guizang-ppt-skill' },
17
+ ...workflowAgentSkillDefinitions(),
16
18
  ];
17
19
  registry.registerBatch(skills);
18
20
  eventBus.emit('external-skills.registered', { count: skills.length });
@@ -1 +1 @@
1
- {"version":3,"file":"ExternalSkills.js","sourceRoot":"","sources":["../../src/skills/ExternalSkills.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,sBAAsB,CAAC,QAAuB,EAAE,QAAmB;IACjF,MAAM,MAAM,GAAsB;QAChC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,sCAAsC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;QAC7S,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,sCAAsC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;QAC5S,EAAE,EAAE,EAAE,wBAAwB,EAAE,IAAI,EAAE,wBAAwB,EAAE,WAAW,EAAE,6BAA6B,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,kDAAkD,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;QAC1V,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,+BAA+B,EAAE;QAC5T,EAAE,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,gBAAgB,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,6CAA6C,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;QACvT,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,yCAAyC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;QACnT,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,oCAAoC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;QAC3S,+BAA+B;QAC/B,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,gDAAgD,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,wDAAwD,EAAE;QACpY,EAAE,EAAE,EAAE,8BAA8B,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,wDAAwD,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,yFAAyF,EAAE;QACnc,EAAE,EAAE,EAAE,gCAAgC,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,8BAA8B,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,sBAAsB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,0DAA0D,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,6DAA6D,EAAE;QACpb,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,yBAAyB,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,2CAA2C,EAAE;QAC5V,EAAE,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,6CAA6C,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,6CAA6C,EAAE;KACpX,CAAA;IACD,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAC9B,QAAQ,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;AACvE,CAAC"}
1
+ {"version":3,"file":"ExternalSkills.js","sourceRoot":"","sources":["../../src/skills/ExternalSkills.ts"],"names":[],"mappings":"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"}