@pikku/addon-console 0.12.8 → 0.12.10

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 (176) hide show
  1. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +2 -2
  2. package/dist/.pikku/addon/pikku-addon-types.gen.js +2 -2
  3. package/dist/.pikku/addon/pikku-package.gen.js +1 -1
  4. package/dist/.pikku/agent/pikku-agent-map.gen.d.ts +1 -1
  5. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +1 -1
  6. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
  7. package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
  8. package/dist/.pikku/console/pikku-node-types.gen.d.ts +1 -1
  9. package/dist/.pikku/function/pikku-function-types.gen.d.ts +43 -69
  10. package/dist/.pikku/function/pikku-function-types.gen.d.ts.map +1 -1
  11. package/dist/.pikku/function/pikku-function-types.gen.js +33 -40
  12. package/dist/.pikku/function/pikku-function-types.gen.js.map +1 -1
  13. package/dist/.pikku/function/pikku-functions-meta.gen.js +1 -1
  14. package/dist/.pikku/function/pikku-functions-meta.gen.json +171 -12
  15. package/dist/.pikku/function/pikku-functions.gen.js +13 -1
  16. package/dist/.pikku/function/pikku-functions.gen.js.map +1 -1
  17. package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
  18. package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
  19. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
  20. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
  21. package/dist/.pikku/pikku-bootstrap.gen.d.ts +1 -1
  22. package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
  23. package/dist/.pikku/pikku-meta-service.gen.d.ts +1 -1
  24. package/dist/.pikku/pikku-meta-service.gen.js +1 -1
  25. package/dist/.pikku/pikku-services.gen.d.ts +8 -2
  26. package/dist/.pikku/pikku-services.gen.d.ts.map +1 -1
  27. package/dist/.pikku/pikku-services.gen.js +6 -0
  28. package/dist/.pikku/pikku-services.gen.js.map +1 -1
  29. package/dist/.pikku/pikku-types.gen.d.ts +1 -1
  30. package/dist/.pikku/pikku-types.gen.js +1 -1
  31. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
  32. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
  33. package/dist/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +26 -6
  34. package/dist/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +26 -6
  35. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
  36. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +6 -0
  37. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
  38. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
  39. package/dist/.pikku/schemas/register.gen.js +15 -1
  40. package/dist/.pikku/schemas/register.gen.js.map +1 -1
  41. package/dist/.pikku/schemas/schemas/AddonPackageInfo.schema.json +1 -1
  42. package/dist/.pikku/schemas/schemas/AllMeta.schema.json +1 -1
  43. package/dist/.pikku/schemas/schemas/AuthProvidersMeta.schema.json +1 -0
  44. package/dist/.pikku/schemas/schemas/DbSchema.schema.json +1 -0
  45. package/dist/.pikku/schemas/schemas/FunctionCoverageReport.schema.json +1 -0
  46. package/dist/.pikku/schemas/schemas/GetAddonMetaOutput.schema.json +1 -1
  47. package/dist/.pikku/schemas/schemas/GetAgentThreadsInput.schema.json +1 -1
  48. package/dist/.pikku/schemas/schemas/GetFunctionsMetaOutput.schema.json +1 -1
  49. package/dist/.pikku/schemas/schemas/GetStateDiffInput.schema.json +1 -0
  50. package/dist/.pikku/schemas/schemas/RenderEmailPreviewInput.schema.json +1 -0
  51. package/dist/.pikku/schemas/schemas/RenderEmailPreviewOutput.schema.json +1 -0
  52. package/dist/.pikku/schemas/schemas/StateDiff.schema.json +1 -0
  53. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
  54. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  55. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
  56. package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
  57. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
  58. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  59. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
  60. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  61. package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
  62. package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
  63. package/dist/.pikku/workflow/pikku-workflow-map.gen.d.ts +1 -1
  64. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
  65. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
  66. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
  67. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +1 -1
  68. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  69. package/dist/src/functions/delete-agent-thread.function.d.ts.map +1 -1
  70. package/dist/src/functions/delete-agent-thread.function.js.map +1 -1
  71. package/dist/src/functions/delete-workflow-run.function.d.ts.map +1 -1
  72. package/dist/src/functions/delete-workflow-run.function.js.map +1 -1
  73. package/dist/src/functions/get-agent-thread-messages.function.d.ts.map +1 -1
  74. package/dist/src/functions/get-agent-thread-messages.function.js.map +1 -1
  75. package/dist/src/functions/get-agent-thread-runs.function.d.ts.map +1 -1
  76. package/dist/src/functions/get-agent-thread-runs.function.js.map +1 -1
  77. package/dist/src/functions/get-agent-threads.function.d.ts +3 -0
  78. package/dist/src/functions/get-agent-threads.function.d.ts.map +1 -1
  79. package/dist/src/functions/get-agent-threads.function.js +2 -1
  80. package/dist/src/functions/get-agent-threads.function.js.map +1 -1
  81. package/dist/src/functions/get-ai-workflows.function.d.ts.map +1 -1
  82. package/dist/src/functions/get-ai-workflows.function.js.map +1 -1
  83. package/dist/src/functions/get-auth-providers.function.d.ts +11 -0
  84. package/dist/src/functions/get-auth-providers.function.d.ts.map +1 -0
  85. package/dist/src/functions/get-auth-providers.function.js +28 -0
  86. package/dist/src/functions/get-auth-providers.function.js.map +1 -0
  87. package/dist/src/functions/get-db-schema.function.d.ts +3 -0
  88. package/dist/src/functions/get-db-schema.function.d.ts.map +1 -0
  89. package/dist/src/functions/get-db-schema.function.js +15 -0
  90. package/dist/src/functions/get-db-schema.function.js.map +1 -0
  91. package/dist/src/functions/get-function-coverage.function.d.ts +26 -0
  92. package/dist/src/functions/get-function-coverage.function.d.ts.map +1 -0
  93. package/dist/src/functions/get-function-coverage.function.js +22 -0
  94. package/dist/src/functions/get-function-coverage.function.js.map +1 -0
  95. package/dist/src/functions/get-functions-meta.function.d.ts +10 -1
  96. package/dist/src/functions/get-functions-meta.function.d.ts.map +1 -1
  97. package/dist/src/functions/get-functions-meta.function.js +14 -8
  98. package/dist/src/functions/get-functions-meta.function.js.map +1 -1
  99. package/dist/src/functions/get-state-diff.function.d.ts +12 -0
  100. package/dist/src/functions/get-state-diff.function.d.ts.map +1 -0
  101. package/dist/src/functions/get-state-diff.function.js +13 -0
  102. package/dist/src/functions/get-state-diff.function.js.map +1 -0
  103. package/dist/src/functions/get-workflow-run-history.function.d.ts.map +1 -1
  104. package/dist/src/functions/get-workflow-run-history.function.js.map +1 -1
  105. package/dist/src/functions/get-workflow-run-names.function.d.ts.map +1 -1
  106. package/dist/src/functions/get-workflow-run-names.function.js.map +1 -1
  107. package/dist/src/functions/get-workflow-run-steps.function.d.ts.map +1 -1
  108. package/dist/src/functions/get-workflow-run-steps.function.js.map +1 -1
  109. package/dist/src/functions/get-workflow-run.function.d.ts.map +1 -1
  110. package/dist/src/functions/get-workflow-run.function.js.map +1 -1
  111. package/dist/src/functions/get-workflow-runs.function.d.ts.map +1 -1
  112. package/dist/src/functions/get-workflow-runs.function.js.map +1 -1
  113. package/dist/src/functions/get-workflow-version.function.d.ts.map +1 -1
  114. package/dist/src/functions/get-workflow-version.function.js.map +1 -1
  115. package/dist/src/functions/oauth-exchange-tokens.function.js +1 -1
  116. package/dist/src/functions/oauth-exchange-tokens.function.js.map +1 -1
  117. package/dist/src/functions/oauth-status.function.js +1 -1
  118. package/dist/src/functions/oauth-status.function.js.map +1 -1
  119. package/dist/src/functions/read-agent-source.function.d.ts.map +1 -1
  120. package/dist/src/functions/read-agent-source.function.js.map +1 -1
  121. package/dist/src/functions/read-function-body.function.d.ts.map +1 -1
  122. package/dist/src/functions/read-function-body.function.js.map +1 -1
  123. package/dist/src/functions/read-function-source.function.d.ts.map +1 -1
  124. package/dist/src/functions/read-function-source.function.js.map +1 -1
  125. package/dist/src/functions/render-email-preview.function.d.ts +20 -0
  126. package/dist/src/functions/render-email-preview.function.d.ts.map +1 -0
  127. package/dist/src/functions/render-email-preview.function.js +68 -0
  128. package/dist/src/functions/render-email-preview.function.js.map +1 -0
  129. package/dist/src/functions/render-email-preview.function.test.d.ts +2 -0
  130. package/dist/src/functions/render-email-preview.function.test.d.ts.map +1 -0
  131. package/dist/src/functions/render-email-preview.function.test.js +125 -0
  132. package/dist/src/functions/render-email-preview.function.test.js.map +1 -0
  133. package/dist/src/functions/render-email-template.utils.d.ts +5 -0
  134. package/dist/src/functions/render-email-template.utils.d.ts.map +1 -0
  135. package/dist/src/functions/render-email-template.utils.js +40 -0
  136. package/dist/src/functions/render-email-template.utils.js.map +1 -0
  137. package/dist/src/functions/render-email-template.utils.test.d.ts +2 -0
  138. package/dist/src/functions/render-email-template.utils.test.d.ts.map +1 -0
  139. package/dist/src/functions/render-email-template.utils.test.js +65 -0
  140. package/dist/src/functions/render-email-template.utils.test.js.map +1 -0
  141. package/dist/src/functions/run-function-tests.function.d.ts +3 -0
  142. package/dist/src/functions/run-function-tests.function.d.ts.map +1 -0
  143. package/dist/src/functions/run-function-tests.function.js +64 -0
  144. package/dist/src/functions/run-function-tests.function.js.map +1 -0
  145. package/dist/src/functions/update-agent-config.function.d.ts.map +1 -1
  146. package/dist/src/functions/update-agent-config.function.js.map +1 -1
  147. package/dist/src/functions/update-function-body.function.d.ts.map +1 -1
  148. package/dist/src/functions/update-function-body.function.js.map +1 -1
  149. package/dist/src/functions/update-function-config.function.d.ts.map +1 -1
  150. package/dist/src/functions/update-function-config.function.js.map +1 -1
  151. package/dist/src/services/db-schema.service.d.ts +59 -0
  152. package/dist/src/services/db-schema.service.d.ts.map +1 -0
  153. package/dist/src/services/db-schema.service.js +265 -0
  154. package/dist/src/services/db-schema.service.js.map +1 -0
  155. package/dist/src/services/state-diff.service.d.ts +76 -0
  156. package/dist/src/services/state-diff.service.d.ts.map +1 -0
  157. package/dist/src/services/state-diff.service.js +148 -0
  158. package/dist/src/services/state-diff.service.js.map +1 -0
  159. package/dist/src/services/wiring.service.d.ts +22 -3
  160. package/dist/src/services/wiring.service.d.ts.map +1 -1
  161. package/dist/src/services/wiring.service.js +276 -11
  162. package/dist/src/services/wiring.service.js.map +1 -1
  163. package/dist/src/services/wiring.service.test.d.ts +2 -0
  164. package/dist/src/services/wiring.service.test.d.ts.map +1 -0
  165. package/dist/src/services/wiring.service.test.js +70 -0
  166. package/dist/src/services/wiring.service.test.js.map +1 -0
  167. package/dist/src/services.d.ts.map +1 -1
  168. package/dist/src/services.js +29 -1
  169. package/dist/src/services.js.map +1 -1
  170. package/dist/src/tests/test-oauth2-client.js +11 -12
  171. package/dist/src/tests/test-oauth2-client.js.map +1 -1
  172. package/package.json +15 -5
  173. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +0 -78
  174. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts.map +0 -1
  175. package/dist/.pikku/cli/pikku-cli-types.gen.js +0 -61
  176. package/dist/.pikku/cli/pikku-cli-types.gen.js.map +0 -1
@@ -1,16 +1,278 @@
1
- import { pikkuState } from '@pikku/core/internal';
1
+ import { readFile } from 'node:fs/promises';
2
+ import { join } from 'node:path';
2
3
  export class NotFoundError extends Error {
3
4
  constructor(message) {
4
5
  super(message);
5
6
  this.name = 'NotFoundError';
6
7
  }
7
8
  }
9
+ function asArray(value) {
10
+ return Array.isArray(value) ? value : [];
11
+ }
12
+ function parseJsonOrNull(content) {
13
+ try {
14
+ return JSON.parse(content);
15
+ }
16
+ catch {
17
+ return null;
18
+ }
19
+ }
20
+ async function readOptionalFile(path) {
21
+ try {
22
+ return await readFile(path, 'utf-8');
23
+ }
24
+ catch {
25
+ return null;
26
+ }
27
+ }
28
+ async function readOptionalMetaFile(metaSource, relativePath) {
29
+ if (metaSource &&
30
+ typeof metaSource === 'object' &&
31
+ 'readFile' in metaSource &&
32
+ typeof metaSource.readFile === 'function') {
33
+ try {
34
+ return await metaSource.readFile(relativePath);
35
+ }
36
+ catch {
37
+ return null;
38
+ }
39
+ }
40
+ if (typeof metaSource === 'string' && metaSource.length > 0) {
41
+ return readOptionalFile(join(metaSource, relativePath));
42
+ }
43
+ return null;
44
+ }
45
+ function extractCucumberMessages(html) {
46
+ const match = html.match(/window\.CUCUMBER_MESSAGES\s*=\s*(\[[\s\S]*?\]);/);
47
+ if (!match) {
48
+ return [];
49
+ }
50
+ const rawMessages = match[1];
51
+ if (!rawMessages) {
52
+ return [];
53
+ }
54
+ const parsed = parseJsonOrNull(rawMessages);
55
+ return asArray(parsed);
56
+ }
57
+ function durationToMs(duration) {
58
+ if (!duration || typeof duration !== 'object') {
59
+ return 0;
60
+ }
61
+ const record = duration;
62
+ const seconds = Number(record.seconds ?? 0);
63
+ const nanos = Number(record.nanos ?? 0);
64
+ const totalMs = seconds * 1000 + nanos / 1_000_000;
65
+ return Number.isFinite(totalMs) ? totalMs : 0;
66
+ }
67
+ function cucumberTimestampToIso(timestamp) {
68
+ if (!timestamp || typeof timestamp !== 'object') {
69
+ return null;
70
+ }
71
+ const record = timestamp;
72
+ const seconds = Number(record.seconds ?? 0);
73
+ const nanos = Number(record.nanos ?? 0);
74
+ const totalMs = seconds * 1000 + nanos / 1_000_000;
75
+ if (!Number.isFinite(totalMs) || totalMs <= 0) {
76
+ return null;
77
+ }
78
+ return new Date(totalMs).toISOString();
79
+ }
80
+ function expandCalledNames(name, rpcMeta) {
81
+ const withoutVersion = name.replace(/@v\d+$/i, '');
82
+ return [
83
+ ...new Set([
84
+ name,
85
+ rpcMeta[name],
86
+ withoutVersion !== name ? withoutVersion : undefined,
87
+ rpcMeta[withoutVersion],
88
+ ].filter((value) => !!value)),
89
+ ];
90
+ }
91
+ function uniqueFunctionKeys(func) {
92
+ return [
93
+ ...new Set([func.pikkuFuncId, func.name].filter((value) => !!value)),
94
+ ];
95
+ }
96
+ function buildScenarioMaps(messages, rpcMeta) {
97
+ const featureNamesByUri = new Map();
98
+ const featureDescriptionsByUri = new Map();
99
+ const scenarioByAstId = new Map();
100
+ const pickleById = new Map();
101
+ const testCaseById = new Map();
102
+ const testCaseStartedById = new Map();
103
+ const stepResultsByStartedId = new Map();
104
+ let generatedAt = null;
105
+ for (const message of messages) {
106
+ const record = message;
107
+ const gherkinDocument = record.gherkinDocument;
108
+ if (gherkinDocument?.uri && gherkinDocument.feature?.name) {
109
+ featureNamesByUri.set(gherkinDocument.uri, gherkinDocument.feature.name);
110
+ featureDescriptionsByUri.set(gherkinDocument.uri, gherkinDocument.feature.description ?? '');
111
+ }
112
+ for (const child of asArray(gherkinDocument?.feature?.children)) {
113
+ const scenario = child?.scenario;
114
+ if (!scenario?.id)
115
+ continue;
116
+ const steps = asArray(scenario.steps).map((step) => `${(step.keyword ?? '').trim()} ${step.text ?? ''}`.trim());
117
+ scenarioByAstId.set(scenario.id, {
118
+ featureName: gherkinDocument?.feature?.name ?? '',
119
+ featureDescription: gherkinDocument?.feature?.description ?? '',
120
+ scenarioName: scenario.name ?? '',
121
+ steps,
122
+ });
123
+ }
124
+ const pickle = record.pickle;
125
+ if (pickle?.id)
126
+ pickleById.set(pickle.id, pickle);
127
+ const testCase = record.testCase;
128
+ if (testCase?.id)
129
+ testCaseById.set(testCase.id, testCase);
130
+ const started = record.testCaseStarted;
131
+ if (started?.id) {
132
+ testCaseStartedById.set(started.id, started);
133
+ const startedAt = cucumberTimestampToIso(started.timestamp);
134
+ if (startedAt && (!generatedAt || startedAt > generatedAt)) {
135
+ generatedAt = startedAt;
136
+ }
137
+ }
138
+ const finished = record.testStepFinished;
139
+ if (finished?.testCaseStartedId) {
140
+ const entries = stepResultsByStartedId.get(finished.testCaseStartedId) ?? [];
141
+ entries.push(finished);
142
+ stepResultsByStartedId.set(finished.testCaseStartedId, entries);
143
+ }
144
+ }
145
+ const scenariosByFunction = new Map();
146
+ for (const started of testCaseStartedById.values()) {
147
+ const testCase = testCaseById.get(String(started.testCaseId));
148
+ const pickle = testCase ? pickleById.get(String(testCase.pickleId)) : null;
149
+ if (!pickle)
150
+ continue;
151
+ const astId = asArray(pickle.astNodeIds)[0];
152
+ const astScenario = astId ? scenarioByAstId.get(astId) : null;
153
+ const steps = astScenario?.steps ??
154
+ asArray(pickle.steps)
155
+ .map((step) => step?.text ?? '')
156
+ .filter(Boolean);
157
+ const featureFile = typeof pickle.uri === 'string' ? pickle.uri : undefined;
158
+ const featureName = astScenario?.featureName ||
159
+ (featureFile ? featureNamesByUri.get(featureFile) : '') ||
160
+ '';
161
+ const featureDescription = astScenario?.featureDescription ||
162
+ (featureFile ? featureDescriptionsByUri.get(featureFile) : '') ||
163
+ '';
164
+ const stepResults = (stepResultsByStartedId.get(String(started.id)) ??
165
+ []);
166
+ const status = stepResults.some((entry) => entry?.testStepResult?.status !== 'PASSED' &&
167
+ entry?.testStepResult?.status !== 'SKIPPED')
168
+ ? 'fail'
169
+ : 'pass';
170
+ const totalDurationMs = stepResults.reduce((sum, entry) => sum + durationToMs(entry?.testStepResult?.duration), 0);
171
+ const duration = totalDurationMs > 0 ? `${Math.round(totalDurationMs)}ms` : undefined;
172
+ const scenarioData = {
173
+ featureName,
174
+ featureDescription,
175
+ featureFile,
176
+ scenarioName: String(pickle.name ?? astScenario?.scenarioName ?? 'Scenario'),
177
+ status,
178
+ duration,
179
+ steps,
180
+ };
181
+ const mentionedFunctions = new Set();
182
+ for (const step of steps) {
183
+ const match = step.match(/calls\s+"([^"]+)"/i);
184
+ if (!match)
185
+ continue;
186
+ for (const functionName of expandCalledNames(match[1], rpcMeta)) {
187
+ mentionedFunctions.add(functionName);
188
+ }
189
+ }
190
+ for (const functionName of mentionedFunctions) {
191
+ const scenarios = scenariosByFunction.get(functionName) ?? [];
192
+ scenarios.push(scenarioData);
193
+ scenariosByFunction.set(functionName, scenarios);
194
+ }
195
+ }
196
+ return { scenariosByFunction, generatedAt };
197
+ }
198
+ async function loadFunctionTests(metaSource, functionsMeta, rpcMeta) {
199
+ let testsOutputDir = null;
200
+ try {
201
+ const configContent = await readOptionalMetaFile(metaSource, '../pikku.config.json');
202
+ if (configContent) {
203
+ const pikkuConfig = parseJsonOrNull(configContent);
204
+ testsOutputDir = pikkuConfig?.tests?.outputDir ?? null;
205
+ }
206
+ }
207
+ catch {
208
+ // ignore — no config or unreadable
209
+ }
210
+ const coverageCandidates = testsOutputDir
211
+ ? [`../${testsOutputDir}/coverage/function-coverage.json`]
212
+ : [
213
+ '../function-tests/coverage/function-coverage.json',
214
+ 'function-tests/coverage/function-coverage.json',
215
+ ];
216
+ const cucumberCandidates = testsOutputDir
217
+ ? [
218
+ `../${testsOutputDir}/tests/reports/cucumber-report.html`,
219
+ `../${testsOutputDir}/reports/cucumber-report.html`,
220
+ ]
221
+ : [
222
+ '../function-tests/tests/reports/cucumber-report.html',
223
+ 'function-tests/tests/reports/cucumber-report.html',
224
+ ];
225
+ const coverageContent = (await Promise.all(coverageCandidates.map((path) => readOptionalMetaFile(metaSource, path)))).find((content) => typeof content === 'string' && content.length > 0) ??
226
+ null;
227
+ const cucumberHtml = (await Promise.all(cucumberCandidates.map((path) => readOptionalMetaFile(metaSource, path)))).find((content) => typeof content === 'string' && content.length > 0) ??
228
+ null;
229
+ const coverageJson = coverageContent
230
+ ? parseJsonOrNull(coverageContent)
231
+ : null;
232
+ const coverageFunctions = new Map(asArray(coverageJson?.functions).map((func) => [
233
+ func.name,
234
+ func,
235
+ ]));
236
+ const { scenariosByFunction, generatedAt: scenarioGeneratedAt } = cucumberHtml
237
+ ? buildScenarioMaps(extractCucumberMessages(cucumberHtml), rpcMeta)
238
+ : {
239
+ scenariosByFunction: new Map(),
240
+ generatedAt: null,
241
+ };
242
+ const generatedAt = scenarioGeneratedAt ?? coverageJson?.generatedAt ?? null;
243
+ const testsByFunction = {};
244
+ for (const func of Object.values(functionsMeta)) {
245
+ const functionKeys = uniqueFunctionKeys(func);
246
+ const primaryFunctionKey = functionKeys[0];
247
+ if (!primaryFunctionKey)
248
+ continue;
249
+ const coverage = functionKeys
250
+ .map((key) => coverageFunctions.get(key))
251
+ .find((value) => !!value);
252
+ const scenarios = functionKeys.flatMap((key) => scenariosByFunction.get(key) ?? []);
253
+ if (!coverage && scenarios.length === 0)
254
+ continue;
255
+ const testData = {
256
+ generatedAt,
257
+ status: (coverage?.status ?? 'unknown'),
258
+ coveredLines: Number(coverage?.coveredLines ?? 0),
259
+ totalLines: Number(coverage?.totalLines ?? 0),
260
+ ratio: Number(coverage?.ratio ?? 0),
261
+ missedLines: asArray(coverage?.missedLines).filter((line) => Number.isFinite(line)),
262
+ scenarios,
263
+ };
264
+ for (const functionKey of functionKeys) {
265
+ testsByFunction[functionKey] = testData;
266
+ }
267
+ }
268
+ return testsByFunction;
269
+ }
8
270
  export class WiringService {
9
271
  constructor(metaService) {
10
272
  this.metaService = metaService;
11
273
  }
12
274
  async readAllMeta() {
13
- const [functions, httpMetaRaw, cliMetaRaw, channelsMeta, queueMeta, schedulerMeta, rpcMetaRaw, mcpMetaRaw, workflows, triggerMeta, triggerSourceMeta, middlewareGroupsMeta, permissionsGroupsMeta, agentsMeta, secretsMeta, credentialsMeta, variablesMeta,] = await Promise.all([
275
+ const [functions, httpMetaRaw, cliMetaRaw, channelsMeta, queueMeta, schedulerMeta, rpcMetaRaw, mcpMetaRaw, workflows, triggerMeta, triggerSourceMeta, middlewareGroupsMeta, permissionsGroupsMeta, agentsMeta, emailsMeta, secretsMeta, credentialsMeta, variablesMeta,] = await Promise.all([
14
276
  this.metaService.getFunctionsMeta(),
15
277
  this.metaService.getHttpMeta(),
16
278
  this.metaService.getCliMeta(),
@@ -25,6 +287,7 @@ export class WiringService {
25
287
  this.metaService.getMiddlewareGroupsMeta(),
26
288
  this.metaService.getPermissionsGroupsMeta(),
27
289
  this.metaService.getAgentsMeta(),
290
+ this.metaService.getEmailMeta(),
28
291
  this.metaService.getSecretsMeta(),
29
292
  this.metaService.getCredentialsMeta(),
30
293
  this.metaService.getVariablesMeta(),
@@ -62,6 +325,15 @@ export class WiringService {
62
325
  pikkuFuncId: value,
63
326
  };
64
327
  }
328
+ const testsByFunction = await loadFunctionTests(this.metaService, functions, rpcMetaRaw);
329
+ for (const func of Object.values(functions)) {
330
+ const funcId = func.pikkuFuncId || func.name;
331
+ if (funcId && testsByFunction[funcId]) {
332
+ ;
333
+ func.tests =
334
+ testsByFunction[funcId];
335
+ }
336
+ }
65
337
  const functionUsedBy = {};
66
338
  const getOrCreate = (funcName) => {
67
339
  if (!functionUsedBy[funcName]) {
@@ -201,14 +473,6 @@ export class WiringService {
201
473
  for (const program of cliMeta) {
202
474
  countCli(program.commands);
203
475
  }
204
- let modelAliases = [];
205
- try {
206
- const modelsConfig = pikkuState(null, 'models', 'config') ?? {};
207
- modelAliases = Object.keys(modelsConfig.models ?? {});
208
- }
209
- catch {
210
- // models config may not be available
211
- }
212
476
  const counts = {
213
477
  functions: Object.values(functions).length,
214
478
  workflows: Object.keys(workflows).length,
@@ -222,6 +486,7 @@ export class WiringService {
222
486
  triggers: Object.keys(triggerMeta).length,
223
487
  triggerSources: Object.keys(triggerSourceMeta).length,
224
488
  agents: Object.keys(agentsMeta).length,
489
+ emails: Object.keys(emailsMeta.templates ?? {}).length,
225
490
  secrets: Object.keys(secretsMeta).length,
226
491
  variables: Object.keys(variablesMeta).length,
227
492
  };
@@ -241,10 +506,10 @@ export class WiringService {
241
506
  middlewareGroupsMeta,
242
507
  permissionsGroupsMeta,
243
508
  agentsMeta,
509
+ emailsMeta,
244
510
  secretsMeta,
245
511
  credentialsMeta,
246
512
  variablesMeta,
247
- modelAliases,
248
513
  functionUsedBy,
249
514
  counts,
250
515
  };
@@ -1 +1 @@
1
- {"version":3,"file":"wiring.service.js","sourceRoot":"","sources":["../../../src/services/wiring.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAwPjD,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,aAAa;IACxB,YAAoB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAEhD,KAAK,CAAC,WAAW;QACf,MAAM,CACJ,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,SAAS,EACT,aAAa,EACb,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,UAAU,EACV,WAAW,EACX,eAAe,EACf,aAAa,EACd,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpB,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;YACnC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;YAC9B,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YAClC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAC/B,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;YACnC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YAClC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE;YACvC,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE;YAC1C,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE;YAC3C,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;YAChC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;SACpC,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CACxD,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CACnB,MAAM,CAAC,OAAO,CAAC,MAAiC,CAAC,CAAC,GAAG,CACnD,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAClB,GAAI,IAAgC;YACpC,KAAK;YACL,MAAM;SACP,CAAC,CACH,CACe,CAAA;QACpB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;QAEvD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAC3D,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/B,GAAI,WAAuC;YAC3C,MAAM,EAAE,WAAW;SACpB,CAAC,CACiB,CAAA;QAErB,MAAM,YAAY,GACd,UAAiD,CAAC,SAGlD,IAAI,EAAE,CAAA;QAEV,MAAM,OAAO,GAAkB,EAAE,CAAA;QACjC,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,UAAU,EAAiB,CAAC,CAAA;YAC9D,CAAC;QACH,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAiB,CAAC,CAAA;YAC1D,CAAC;QACH,CAAC;QACD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAiB,CAAC,CAAA;YAC5D,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAA4B,EAAE,CAAA;QAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,GAAG;gBACd,WAAW,EAAE,KAAK;aACnB,CAAA;QACH,CAAC;QAED,MAAM,cAAc,GAAmC,EAAE,CAAA;QACzD,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAkB,EAAE;YACvD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9B,cAAc,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAA;YACxE,CAAC;YACD,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAA;QACjC,CAAC,CAAA;QAED,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACtB,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC7C,IAAI,EAAE,MAAM;oBACZ,EAAE,EAAE,GAAG,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,EAAE;oBACrC,IAAI,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC,KAAK,EAAE;iBACtD,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAGjE,EAAE,CAAC;YACJ,KAAK,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,CAAU,EAAE,CAAC;gBAClE,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAA8B,CAAA;gBACjE,IAAI,SAAS,EAAE,WAAW,EAAE,CAAC;oBAC3B,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;wBACjD,IAAI,EAAE,SAAS;wBACf,EAAE,EAAE,GAAG,WAAW,KAAK,KAAK,EAAE;wBAC9B,IAAI,EAAE,GAAG,WAAW,IAAI,KAAK,EAAE;qBAChC,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC;gBAC/B,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC;oBAChE,KAAK,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC/D,IAAI,UAAU,EAAE,WAAW,EAAE,CAAC;4BAC5B,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;gCAClD,IAAI,EAAE,SAAS;gCACf,EAAE,EAAE,GAAG,WAAW,KAAK,UAAU,EAAE;gCACnC,IAAI,EAAE,GAAG,WAAW,IAAI,UAAU,EAAE;6BACrC,CAAC,CAAA;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC5C,IAAI,EAAE,KAAK;oBACX,EAAE,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE;oBAClC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE;iBACpD,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,CACnB,QAAoD,EACpD,IAAY,EACZ,EAAE;gBACF,IAAI,CAAC,QAAQ;oBAAE,OAAM;gBACrB,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;oBACtD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACxB,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;4BAC/C,IAAI,EAAE,KAAK;4BACX,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE;4BACpC,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,IAAI,QAAQ,EAAE;yBACtC,CAAC,CAAA;oBACJ,CAAC;oBACD,IAAI,OAAO,CAAC,WAAW;wBAAE,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;gBACtE,CAAC;YACH,CAAC,CAAA;YACD,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACpC,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC5C,IAAI,EAAE,KAAK;oBACX,EAAE,EAAE,IAAI;oBACR,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YACzD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,IAAI;oBACR,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACrD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,EAAE,OAAO;oBACb,EAAE,EAAE,IAAI;oBACR,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACvD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,EAAE,SAAS;oBACf,EAAE,EAAE,IAAI;oBACR,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAG3D,EAAE,CAAC;YACJ,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;gBACpB,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;oBACnC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;wBAChC,IAAI,EAAE,OAAO;wBACb,EAAE,EAAE,SAAS;wBACb,IAAI,EAAE,SAAS;qBAChB,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAGjE,EAAE,CAAC;YACJ,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,WAAqB,CAAC,CAAA;YACjE,IAAI,MAAM,EAAE,CAAC;gBACX,YAAY,CAAC,OAAO,GAAG;oBACrB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CAAA;YACH,CAAC;QACH,CAAC;QAED,IAAI,eAAe,GAAG,CAAC,CAAA;QACvB,MAAM,QAAQ,GAAG,CAAC,QAAoD,EAAE,EAAE;YACxE,IAAI,CAAC,QAAQ;gBAAE,OAAM;YACrB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1C,IAAI,GAAG,CAAC,WAAW;oBAAE,eAAe,EAAE,CAAA;gBACtC,IAAI,GAAG,CAAC,WAAW;oBAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAChD,CAAC;QACH,CAAC,CAAA;QACD,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC9B,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC5B,CAAC;QAED,IAAI,YAAY,GAAa,EAAE,CAAA;QAC/B,IAAI,CAAC;YACH,MAAM,YAAY,GAChB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAK,EAA8B,CAAA;YACzE,YAAY,GAAG,MAAM,CAAC,IAAI,CACtB,YAAwC,CAAC,MAGzC,IAAI,EAAE,CACT,CAAA;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;QAED,MAAM,MAAM,GAAe;YACzB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM;YAC1C,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM;YACxC,UAAU,EAAE,QAAQ,CAAC,MAAM;YAC3B,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM;YAC1C,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM;YAC3D,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM;YAC7C,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM;YACrC,WAAW,EAAE,eAAe;YAC5B,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM;YACvC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;YACzC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM;YACrD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM;YACtC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;YACxC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM;SAC7C,CAAA;QAED,OAAO;YACL,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;YACnC,QAAQ;YACR,OAAO;YACP,YAAY;YACZ,YAAY,EAAE,YAAkD;YAChE,SAAS,EAAE,SAA4C;YACvD,aAAa,EAAE,aAAoD;YACnE,OAAO;YACP,OAAO;YACP,SAAS;YACT,WAAW,EAAE,WAAgD;YAC7D,iBAAiB,EACf,iBAA4D;YAC9D,oBAAoB;YACpB,qBAAqB;YACrB,UAAU;YACV,WAAW;YACX,eAAe;YACf,aAAa;YACb,YAAY;YACZ,cAAc;YACd,MAAM;SACP,CAAA;IACH,CAAC;IAED,uBAAuB,CACrB,WAAmB,EACnB,OAAwB;QAExB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,CAAA;QAE/D,MAAM,SAAS,GAAG,UAAU;aACzB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,SAAS,GAAG,wBAAwB,GAAG,KAAK,CAAC;aAC5D,IAAI,CAAC,IAAI,CAAC,CAAA;QAEb,MAAM,QAAQ,GAAG;YACf,qDAAqD,KAAK,KAAK;YAC/D,SAAS;SACV;aACE,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAA;QAEb,MAAM,QAAQ,GAA2B,EAAE,CAAA;QAC3C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,QAAQ,CAAC,OAAO,GAAG,uDAAuD,CAAA;QAC5E,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,QAAQ,CAAC,UAAU,GAAG,aAAa,CAAA;QACrC,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,QAAQ,CAAC,OAAO,GAAG,kCAAkC,CAAA;QACvD,CAAC;QAED,MAAM,OAAO,GAA2C,EAAE,CAAA;QAC1D,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;YACjB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG;oBACrB,SAAS,GAAG,wBAAwB,GAAG,KAAK;oBAC5C,EAAE;oBACF,SAAS;oBACT,GAAG,GAAG,UAAU,MAAM,qBAAqB;oBAC3C,EAAE;oBACF,2BAA2B;oBAC3B,GAAG,GAAG,eAAe,MAAM,gBAAgB;oBAC3C,sBAAsB;oBACtB,KAAK;iBACN,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACd,CAAC;QACH,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"wiring.service.js","sourceRoot":"","sources":["../../../src/services/wiring.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAmRhC,MAAM,OAAO,aAAc,SAAQ,KAAK;IACtC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;IAC7B,CAAC;CACF;AAED,SAAS,OAAO,CAAI,KAAc;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,EAAE,CAAA;AACnD,CAAC;AAED,SAAS,eAAe,CAAC,OAAe;IACtC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY;IAC1C,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,UAAgC,EAChC,YAAoB;IAEpB,IACE,UAAU;QACV,OAAO,UAAU,KAAK,QAAQ;QAC9B,UAAU,IAAI,UAAU;QACxB,OAAO,UAAU,CAAC,QAAQ,KAAK,UAAU,EACzC,CAAC;QACD,IAAI,CAAC;YACH,OAAO,MAAM,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5D,OAAO,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAA;IAC3E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,CAAC,CAAA;IAC3C,OAAO,OAAO,CAAC,MAAM,CAAC,CAAA;AACxB,CAAC;AAED,SAAS,YAAY,CAAC,QAAiB;IACrC,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,MAAM,GAAG,QAGd,CAAA;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;IACvC,MAAM,OAAO,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,GAAG,SAAS,CAAA;IAClD,OAAO,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/C,CAAC;AAED,SAAS,sBAAsB,CAAC,SAAkB;IAChD,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,MAAM,GAAG,SAGd,CAAA;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;IACvC,MAAM,OAAO,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,GAAG,SAAS,CAAA;IAClD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;AACxC,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,OAAsB;IAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;IAClD,OAAO;QACL,GAAG,IAAI,GAAG,CACR;YACE,IAAI;YACJ,OAAO,CAAC,IAAI,CAAC;YACb,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YACpD,OAAO,CAAC,cAAc,CAAC;SACxB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAC9C;KACF,CAAA;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,IAG3B;IACC,OAAO;QACL,GAAG,IAAI,GAAG,CACR,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAC1E;KACF,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAmB,EACnB,OAAsB;IAKtB,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAA;IACnD,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC1D,MAAM,eAAe,GAAG,IAAI,GAAG,EAQ5B,CAAA;IACH,MAAM,UAAU,GAAG,IAAI,GAAG,EAAmC,CAAA;IAC7D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAmC,CAAA;IAC/D,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAmC,CAAA;IACtE,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAqC,CAAA;IAC3E,IAAI,WAAW,GAAkB,IAAI,CAAA;IAErC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,OAA8B,CAAA;QAC7C,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAA;QAC9C,IAAI,eAAe,EAAE,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;YAC1D,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACxE,wBAAwB,CAAC,GAAG,CAC1B,eAAe,CAAC,GAAG,EACnB,eAAe,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAC1C,CAAA;QACH,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,OAAO,CACzB,eAAe,EAAE,OAAO,EAAE,QAAQ,CACnC,EAAE,CAAC;YACF,MAAM,QAAQ,GAAG,KAAK,EAAE,QAAQ,CAAA;YAChC,IAAI,CAAC,QAAQ,EAAE,EAAE;gBAAE,SAAQ;YAC3B,MAAM,KAAK,GAAG,OAAO,CAAsB,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACtE,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAC3D,CAAA;YACD,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAC/B,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE;gBACjD,kBAAkB,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,IAAI,EAAE;gBAC/D,YAAY,EAAE,QAAQ,CAAC,IAAI,IAAI,EAAE;gBACjC,KAAK;aACN,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAC5B,IAAI,MAAM,EAAE,EAAE;YAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QAEjD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QAChC,IAAI,QAAQ,EAAE,EAAE;YAAE,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAEzD,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,CAAA;QACtC,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC;YAChB,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;YAC5C,MAAM,SAAS,GAAG,sBAAsB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;YAC3D,IAAI,SAAS,IAAI,CAAC,CAAC,WAAW,IAAI,SAAS,GAAG,WAAW,CAAC,EAAE,CAAC;gBAC3D,WAAW,GAAG,SAAS,CAAA;YACzB,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAA;QACxC,IAAI,QAAQ,EAAE,iBAAiB,EAAE,CAAC;YAChC,MAAM,OAAO,GACX,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAA;YAC9D,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACtB,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAkC,CAAA;IAErE,KAAK,MAAM,OAAO,IAAI,mBAAmB,CAAC,MAAM,EAAE,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;QAC7D,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC1E,IAAI,CAAC,MAAM;YAAE,SAAQ;QAErB,MAAM,KAAK,GAAG,OAAO,CAAS,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QACnD,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC7D,MAAM,KAAK,GACT,WAAW,EAAE,KAAK;YAClB,OAAO,CAAsB,MAAM,CAAC,KAAK,CAAC;iBACvC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;iBAC/B,MAAM,CAAC,OAAO,CAAC,CAAA;QACpB,MAAM,WAAW,GAAG,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;QAC3E,MAAM,WAAW,GACf,WAAW,EAAE,WAAW;YACxB,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,EAAE,CAAA;QACJ,MAAM,kBAAkB,GACtB,WAAW,EAAE,kBAAkB;YAC/B,CAAC,WAAW,CAAC,CAAC,CAAC,wBAAwB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,EAAE,CAAA;QACJ,MAAM,WAAW,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACjE,EAAE,CAAkC,CAAA;QACtC,MAAM,MAAM,GAAoB,WAAW,CAAC,IAAI,CAC9C,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,QAAQ;YAC1C,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,SAAS,CAC9C;YACC,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,MAAM,CAAA;QACV,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CACxC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,YAAY,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,EACnE,CAAC,CACF,CAAA;QACD,MAAM,QAAQ,GACZ,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;QAEtE,MAAM,YAAY,GAAyB;YACzC,WAAW;YACX,kBAAkB;YAClB,WAAW;YACX,YAAY,EAAE,MAAM,CAClB,MAAM,CAAC,IAAI,IAAI,WAAW,EAAE,YAAY,IAAI,UAAU,CACvD;YACD,MAAM;YACN,QAAQ;YACR,KAAK;SACN,CAAA;QAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAA;QAC5C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;YAC9C,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,KAAK,MAAM,YAAY,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;gBAChE,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;YACtC,CAAC;QACH,CAAC;QAED,KAAK,MAAM,YAAY,IAAI,kBAAkB,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;YAC7D,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAC5B,mBAAmB,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;QAClD,CAAC;IACH,CAAC;IAED,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,CAAA;AAC7C,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,UAAgC,EAChC,aAA4B,EAC5B,OAAsB;IAEtB,IAAI,cAAc,GAAkB,IAAI,CAAA;IACxC,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,UAAU,EAAE,sBAAsB,CAAC,CAAA;QACpF,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,CAA8C,CAAA;YAC/F,cAAc,GAAG,WAAW,EAAE,KAAK,EAAE,SAAS,IAAI,IAAI,CAAA;QACxD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mCAAmC;IACrC,CAAC;IAED,MAAM,kBAAkB,GAAG,cAAc;QACvC,CAAC,CAAC,CAAC,MAAM,cAAc,kCAAkC,CAAC;QAC1D,CAAC,CAAC;YACE,mDAAmD;YACnD,gDAAgD;SACjD,CAAA;IACL,MAAM,kBAAkB,GAAG,cAAc;QACvC,CAAC,CAAC;YACE,MAAM,cAAc,qCAAqC;YACzD,MAAM,cAAc,+BAA+B;SACpD;QACH,CAAC,CAAC;YACE,sDAAsD;YACtD,mDAAmD;SACpD,CAAA;IAEL,MAAM,eAAe,GACnB,CACE,MAAM,OAAO,CAAC,GAAG,CACf,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CACzE,CACF,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACtE,IAAI,CAAA;IAEN,MAAM,YAAY,GAChB,CACE,MAAM,OAAO,CAAC,GAAG,CACf,kBAAkB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CACzE,CACF,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACtE,IAAI,CAAA;IAEN,MAAM,YAAY,GAAG,eAAe;QAClC,CAAC,CAAE,eAAe,CAAC,eAAe,CAGvB;QACX,CAAC,CAAC,IAAI,CAAA;IACR,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAC/B,OAAO,CAAsB,YAAY,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAClE,IAAI,CAAC,IAAI;QACT,IAAI;KACL,CAAC,CACH,CAAA;IACD,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE,GAAG,YAAY;QAC5E,CAAC,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;QACnE,CAAC,CAAC;YACE,mBAAmB,EAAE,IAAI,GAAG,EAAkC;YAC9D,WAAW,EAAE,IAAI;SAClB,CAAA;IACL,MAAM,WAAW,GAAG,mBAAmB,IAAI,YAAY,EAAE,WAAW,IAAI,IAAI,CAAA;IAE5E,MAAM,eAAe,GAAqC,EAAE,CAAA;IAC5D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QAChD,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC7C,MAAM,kBAAkB,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;QAC1C,IAAI,CAAC,kBAAkB;YAAE,SAAQ;QAEjC,MAAM,QAAQ,GAAG,YAAY;aAC1B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACxC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QAC3B,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CACpC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAC5C,CAAA;QACD,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,SAAQ;QAEjD,MAAM,QAAQ,GAAqB;YACjC,WAAW;YACX,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,SAAS,CAA+B;YACrE,YAAY,EAAE,MAAM,CAAC,QAAQ,EAAE,YAAY,IAAI,CAAC,CAAC;YACjD,UAAU,EAAE,MAAM,CAAC,QAAQ,EAAE,UAAU,IAAI,CAAC,CAAC;YAC7C,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC;YACnC,WAAW,EAAE,OAAO,CAAS,QAAQ,EAAE,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAClE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CACtB;YACD,SAAS;SACV,CAAA;QAED,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,eAAe,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAA;QACzC,CAAC;IACH,CAAC;IAED,OAAO,eAAe,CAAA;AACxB,CAAC;AAED,MAAM,OAAO,aAAa;IACxB,YAAoB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAEhD,KAAK,CAAC,WAAW;QACf,MAAM,CACJ,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,SAAS,EACT,aAAa,EACb,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,UAAU,EACV,UAAU,EACV,WAAW,EACX,eAAe,EACf,aAAa,EACd,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpB,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;YACnC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;YAC9B,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YAClC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAC/B,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;YACnC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YAClC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE;YACvC,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE;YAC1C,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE;YAC3C,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;YAChC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAC/B,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE;SACpC,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,OAAO,CACxD,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CACnB,MAAM,CAAC,OAAO,CAAC,MAAiC,CAAC,CAAC,GAAG,CACnD,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAClB,GAAI,IAAgC;YACpC,KAAK;YACL,MAAM;SACP,CAAC,CACH,CACe,CAAA;QACpB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;QAEvD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAC3D,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/B,GAAI,WAAuC;YAC3C,MAAM,EAAE,WAAW;SACpB,CAAC,CACiB,CAAA;QAErB,MAAM,YAAY,GACd,UAAiD,CAAC,SAGlD,IAAI,EAAE,CAAA;QAEV,MAAM,OAAO,GAAkB,EAAE,CAAA;QACjC,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,UAAU,EAAiB,CAAC,CAAA;YAC9D,CAAC;QACH,CAAC;QACD,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAiB,CAAC,CAAA;YAC1D,CAAC;QACH,CAAC;QACD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAiB,CAAC,CAAA;YAC5D,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAA4B,EAAE,CAAA;QAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,GAAG;gBACd,WAAW,EAAE,KAAK;aACnB,CAAA;QACH,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAC7C,IAAI,CAAC,WAAW,EAChB,SAAS,EACT,UAAU,CACX,CAAA;QACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAA;YAC5C,IAAI,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,CAAC;gBAAC,IAAoD,CAAC,KAAK;oBAC1D,eAAe,CAAC,MAAM,CAAC,CAAA;YAC3B,CAAC;QACH,CAAC;QAED,MAAM,cAAc,GAAmC,EAAE,CAAA;QACzD,MAAM,WAAW,GAAG,CAAC,QAAgB,EAAkB,EAAE;YACvD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9B,cAAc,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAA;YACxE,CAAC;YACD,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAA;QACjC,CAAC,CAAA;QAED,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACtB,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC7C,IAAI,EAAE,MAAM;oBACZ,EAAE,EAAE,GAAG,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,EAAE;oBACrC,IAAI,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC,KAAK,EAAE;iBACtD,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAGjE,EAAE,CAAC;YACJ,KAAK,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,CAAU,EAAE,CAAC;gBAClE,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAA8B,CAAA;gBACjE,IAAI,SAAS,EAAE,WAAW,EAAE,CAAC;oBAC3B,WAAW,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;wBACjD,IAAI,EAAE,SAAS;wBACf,EAAE,EAAE,GAAG,WAAW,KAAK,KAAK,EAAE;wBAC9B,IAAI,EAAE,GAAG,WAAW,IAAI,KAAK,EAAE;qBAChC,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC;gBAC/B,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC;oBAChE,KAAK,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC/D,IAAI,UAAU,EAAE,WAAW,EAAE,CAAC;4BAC5B,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;gCAClD,IAAI,EAAE,SAAS;gCACf,EAAE,EAAE,GAAG,WAAW,KAAK,UAAU,EAAE;gCACnC,IAAI,EAAE,GAAG,WAAW,IAAI,UAAU,EAAE;6BACrC,CAAC,CAAA;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC5C,IAAI,EAAE,KAAK;oBACX,EAAE,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE;oBAClC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE;iBACpD,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,CACnB,QAAoD,EACpD,IAAY,EACZ,EAAE;gBACF,IAAI,CAAC,QAAQ;oBAAE,OAAM;gBACrB,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;oBACtD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;wBACxB,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;4BAC/C,IAAI,EAAE,KAAK;4BACX,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE;4BACpC,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,IAAI,QAAQ,EAAE;yBACtC,CAAC,CAAA;oBACJ,CAAC;oBACD,IAAI,OAAO,CAAC,WAAW;wBAAE,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;gBACtE,CAAC;YACH,CAAC,CAAA;YACD,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACpC,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC5C,IAAI,EAAE,KAAK;oBACX,EAAE,EAAE,IAAI;oBACR,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YACzD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,EAAE,WAAW;oBACjB,EAAE,EAAE,IAAI;oBACR,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACrD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,EAAE,OAAO;oBACb,EAAE,EAAE,IAAI;oBACR,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACvD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,EAAE,SAAS;oBACf,EAAE,EAAE,IAAI;oBACR,IAAI;iBACL,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAG3D,EAAE,CAAC;YACJ,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;gBACpB,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;oBACnC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;wBAChC,IAAI,EAAE,OAAO;wBACb,EAAE,EAAE,SAAS;wBACb,IAAI,EAAE,SAAS;qBAChB,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAGjE,EAAE,CAAC;YACJ,MAAM,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,WAAqB,CAAC,CAAA;YACjE,IAAI,MAAM,EAAE,CAAC;gBACX,YAAY,CAAC,OAAO,GAAG;oBACrB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CAAA;YACH,CAAC;QACH,CAAC;QAED,IAAI,eAAe,GAAG,CAAC,CAAA;QACvB,MAAM,QAAQ,GAAG,CAAC,QAAoD,EAAE,EAAE;YACxE,IAAI,CAAC,QAAQ;gBAAE,OAAM;YACrB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1C,IAAI,GAAG,CAAC,WAAW;oBAAE,eAAe,EAAE,CAAA;gBACtC,IAAI,GAAG,CAAC,WAAW;oBAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAChD,CAAC;QACH,CAAC,CAAA;QACD,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC9B,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC5B,CAAC;QAED,MAAM,MAAM,GAAe;YACzB,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM;YAC1C,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM;YACxC,UAAU,EAAE,QAAQ,CAAC,MAAM;YAC3B,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM;YAC1C,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM;YAC3D,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM;YAC7C,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM;YACrC,WAAW,EAAE,eAAe;YAC5B,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM;YACvC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;YACzC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM;YACrD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM;YACtC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM;YACtD,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;YACxC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM;SAC7C,CAAA;QAED,OAAO;YACL,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;YACnC,QAAQ;YACR,OAAO;YACP,YAAY;YACZ,YAAY,EAAE,YAAkD;YAChE,SAAS,EAAE,SAA4C;YACvD,aAAa,EAAE,aAAoD;YACnE,OAAO;YACP,OAAO;YACP,SAAS;YACT,WAAW,EAAE,WAAgD;YAC7D,iBAAiB,EACf,iBAA4D;YAC9D,oBAAoB;YACpB,qBAAqB;YACrB,UAAU;YACV,UAAU;YACV,WAAW;YACX,eAAe;YACf,aAAa;YACb,cAAc;YACd,MAAM;SACP,CAAA;IACH,CAAC;IAED,uBAAuB,CACrB,WAAmB,EACnB,OAAwB;QAExB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAC3B,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,CAAA;QAE/D,MAAM,SAAS,GAAG,UAAU;aACzB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,SAAS,GAAG,wBAAwB,GAAG,KAAK,CAAC;aAC5D,IAAI,CAAC,IAAI,CAAC,CAAA;QAEb,MAAM,QAAQ,GAAG;YACf,qDAAqD,KAAK,KAAK;YAC/D,SAAS;SACV;aACE,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAA;QAEb,MAAM,QAAQ,GAA2B,EAAE,CAAA;QAC3C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,QAAQ,CAAC,OAAO,GAAG,uDAAuD,CAAA;QAC5E,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,QAAQ,CAAC,UAAU,GAAG,aAAa,CAAA;QACrC,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,QAAQ,CAAC,OAAO,GAAG,kCAAkC,CAAA;QACvD,CAAC;QAED,MAAM,OAAO,GAA2C,EAAE,CAAA;QAC1D,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;YACjB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG;oBACrB,SAAS,GAAG,wBAAwB,GAAG,KAAK;oBAC5C,EAAE;oBACF,SAAS;oBACT,GAAG,GAAG,UAAU,MAAM,qBAAqB;oBAC3C,EAAE;oBACF,2BAA2B;oBAC3B,GAAG,GAAG,eAAe,MAAM,gBAAgB;oBAC3C,sBAAsB;oBACtB,KAAK;iBACN,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACd,CAAC;QACH,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;IACxC,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=wiring.service.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wiring.service.test.d.ts","sourceRoot":"","sources":["../../../src/services/wiring.service.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,70 @@
1
+ import { describe, test } from 'node:test';
2
+ import assert from 'node:assert/strict';
3
+ import { WiringService } from './wiring.service.js';
4
+ const makeMetaService = (overrides = {}) => ({
5
+ readFile: async (_path) => null,
6
+ getFunctionsMeta: async () => ({}),
7
+ getHttpMeta: async () => ({}),
8
+ getCliMeta: async () => ({ programs: {} }),
9
+ getChannelsMeta: async () => ({}),
10
+ getQueueMeta: async () => ({}),
11
+ getSchedulerMeta: async () => ({}),
12
+ getRpcMeta: async () => ({}),
13
+ getMcpMeta: async () => ({}),
14
+ getWorkflowMeta: async () => ({}),
15
+ getTriggerMeta: async () => ({}),
16
+ getTriggerSourceMeta: async () => ({}),
17
+ getMiddlewareGroupsMeta: async () => ({}),
18
+ getPermissionsGroupsMeta: async () => ({}),
19
+ getAgentsMeta: async () => ({}),
20
+ getEmailMeta: async () => ({
21
+ src: '',
22
+ themeHash: '',
23
+ templates: {
24
+ welcome: {
25
+ variables: ['userName'],
26
+ locales: { en: { contentHash: 'abc123' } },
27
+ },
28
+ },
29
+ }),
30
+ getSecretsMeta: async () => ({}),
31
+ getCredentialsMeta: async () => ({}),
32
+ getVariablesMeta: async () => ({}),
33
+ getServicesMeta: async () => ({}),
34
+ getEmailTemplateAssets: async () => ({
35
+ theme: {},
36
+ strings: {},
37
+ layout: '',
38
+ partials: {},
39
+ html: '',
40
+ subject: '',
41
+ text: '',
42
+ missing: [],
43
+ }),
44
+ ...overrides,
45
+ });
46
+ describe('WiringService.readAllMeta', () => {
47
+ test('returns emailsMeta with templates from getEmailMeta', async () => {
48
+ const metaService = makeMetaService();
49
+ const service = new WiringService(metaService);
50
+ const result = await service.readAllMeta();
51
+ assert.ok(result.emailsMeta);
52
+ assert.ok('templates' in result.emailsMeta);
53
+ assert.ok('welcome' in (result.emailsMeta.templates ?? {}));
54
+ });
55
+ test('counts emails from emailsMeta.templates', async () => {
56
+ const metaService = makeMetaService();
57
+ const service = new WiringService(metaService);
58
+ const result = await service.readAllMeta();
59
+ assert.equal(result.counts.emails, 1);
60
+ });
61
+ test('returns zero email count when templates is empty', async () => {
62
+ const metaService = makeMetaService({
63
+ getEmailMeta: async () => ({ src: '', themeHash: '', templates: {} }),
64
+ });
65
+ const service = new WiringService(metaService);
66
+ const result = await service.readAllMeta();
67
+ assert.equal(result.counts.emails, 0);
68
+ });
69
+ });
70
+ //# sourceMappingURL=wiring.service.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wiring.service.test.js","sourceRoot":"","sources":["../../../src/services/wiring.service.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,uBAAuB,0MAyDnC,CAAA"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,uBAAuB,0MA0FnC,CAAA"}
@@ -2,6 +2,8 @@ import { pikkuAddonServices } from '#pikku';
2
2
  import { WiringService } from './services/wiring.service.js';
3
3
  import { AddonService } from './services/addon.service.js';
4
4
  import { OAuthService } from './services/oauth.service.js';
5
+ import { StateDiffService } from './services/state-diff.service.js';
6
+ import { DbSchemaService, } from './services/db-schema.service.js';
5
7
  export const createSingletonServices = pikkuAddonServices(async (_config, { variables, metaService: existingMetaService, aiAgentRunner, schedulerService, agentRunService, workflowService, workflowRunService, aiStorage, aiRunState, deploymentService, credentialService, }) => {
6
8
  if (!existingMetaService) {
7
9
  throw new Error('metaService is required for the console addon. Set it in your createSingletonServices using PikkuMetaService from #pikku/pikku-meta-service.gen.js');
@@ -14,11 +16,35 @@ export const createSingletonServices = pikkuAddonServices(async (_config, { vari
14
16
  const oauthService = new OAuthService();
15
17
  const metaBasePath = existingMetaService?.basePath;
16
18
  let codeEditService = null;
19
+ let stateDiffService = null;
20
+ let dbSchemaService = null;
17
21
  if (metaBasePath) {
18
22
  const { dirname } = await import('node:path');
19
23
  const codeEditPath = './services/code-edit.service.js';
20
24
  const { CodeEditService } = await import(codeEditPath);
21
- codeEditService = new CodeEditService(dirname(metaBasePath));
25
+ const projectRoot = dirname(metaBasePath);
26
+ codeEditService = new CodeEditService(projectRoot);
27
+ stateDiffService = new StateDiffService(projectRoot);
28
+ let openDb = null;
29
+ let PgPool = null;
30
+ try {
31
+ // node:sqlite is built into Node 22+; cast to any to avoid missing @types
32
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
33
+ const sqliteMod = await import('node:sqlite');
34
+ openDb = (filename) => new sqliteMod.DatabaseSync(filename);
35
+ }
36
+ catch {
37
+ // Node < 22 — SQLite unavailable
38
+ }
39
+ try {
40
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
41
+ const pgMod = await import('pg');
42
+ PgPool = pgMod.Pool ?? pgMod.default?.Pool ?? null;
43
+ }
44
+ catch {
45
+ // pg not installed — Postgres unavailable
46
+ }
47
+ dbSchemaService = new DbSchemaService(projectRoot, openDb, PgPool, metaService);
22
48
  }
23
49
  return {
24
50
  metaService,
@@ -35,6 +61,8 @@ export const createSingletonServices = pikkuAddonServices(async (_config, { vari
35
61
  schedulerService,
36
62
  credentialService,
37
63
  codeEditService,
64
+ stateDiffService,
65
+ dbSchemaService,
38
66
  };
39
67
  });
40
68
  //# sourceMappingURL=services.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAG1D,MAAM,CAAC,MAAM,uBAAuB,GAAG,kBAAkB,CACvD,KAAK,EACH,OAAO,EACP,EACE,SAAS,EACT,WAAW,EAAE,mBAAmB,EAChC,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,iBAAiB,GAClB,EACD,EAAE;IACF,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,oJAAoJ,CACrJ,CAAA;IACH,CAAC;IACD,MAAM,WAAW,GAAG,mBAAmB,CAAA;IACvC,MAAM,WAAW,GACf,CAAC,MAAM,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,gCAAgC,CAAA;IAE3E,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAA;IACpD,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,WAAW,CAAC,CAAA;IAClD,MAAM,YAAY,CAAC,IAAI,EAAE,CAAA;IACzB,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAA;IAEvC,MAAM,YAAY,GAAG,mBAAmB,EAAE,QAAQ,CAAA;IAClD,IAAI,eAAe,GAA2B,IAAI,CAAA;IAClD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAA;QAC7C,MAAM,YAAY,GAAG,iCAAiC,CAAA;QACtD,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAA;QACtD,eAAe,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;IAC9D,CAAC;IAED,OAAO;QACL,WAAW;QACX,aAAa;QACb,YAAY;QACZ,YAAY;QACZ,eAAe;QACf,kBAAkB;QAClB,eAAe;QACf,SAAS;QACT,UAAU;QACV,iBAAiB;QACjB,aAAa;QACb,gBAAgB;QAChB,iBAAiB;QACjB,eAAe;KAChB,CAAA;AACH,CAAC,CACF,CAAA"}
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"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"}
@@ -10,20 +10,19 @@ class TestVariablesService {
10
10
  constructor() {
11
11
  this.store = {};
12
12
  }
13
- set(key, value) {
14
- this.store[key] = value;
13
+ set(name, value) {
14
+ this.store[name] = typeof value === 'string' ? value : JSON.stringify(value);
15
15
  }
16
- setJSON(name, value) {
17
- this.store[name] = JSON.stringify(value);
18
- }
19
- get(key) {
20
- return this.store[key];
21
- }
22
- getJSON(name) {
23
- const value = this.store[name];
24
- if (value === undefined)
16
+ get(name) {
17
+ const raw = this.store[name];
18
+ if (raw === undefined)
25
19
  return undefined;
26
- return JSON.parse(value);
20
+ try {
21
+ return JSON.parse(raw);
22
+ }
23
+ catch {
24
+ return raw;
25
+ }
27
26
  }
28
27
  getAll() {
29
28
  return this.store;
@@ -1 +1 @@
1
- {"version":3,"file":"test-oauth2-client.js","sourceRoot":"","sources":["../../../src/tests/test-oauth2-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-oauth2-client.js","sourceRoot":"","sources":["../../../src/tests/test-oauth2-client.ts"],"names":[],"mappings":"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"}