bc-code-intelligence-mcp 1.7.1 → 1.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +45 -44
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +330 -302
- package/dist/index.js.map +1 -1
- package/dist/layers/embedded-layer.d.ts +4 -4
- package/dist/layers/embedded-layer.d.ts.map +1 -1
- package/dist/layers/embedded-layer.js +118 -96
- package/dist/layers/embedded-layer.js.map +1 -1
- package/dist/layers/git-layer.d.ts +3 -3
- package/dist/layers/git-layer.d.ts.map +1 -1
- package/dist/layers/git-layer.js +115 -98
- package/dist/layers/git-layer.js.map +1 -1
- package/dist/layers/project-layer.d.ts +2 -2
- package/dist/layers/project-layer.d.ts.map +1 -1
- package/dist/layers/project-layer.js +44 -40
- package/dist/layers/project-layer.js.map +1 -1
- package/dist/sdk/bc-code-intel-client.d.ts +1 -1
- package/dist/sdk/bc-code-intel-client.js +40 -40
- package/dist/tools/ask_bc_expert/handler.d.ts.map +1 -1
- package/dist/tools/ask_bc_expert/handler.js +71 -50
- package/dist/tools/ask_bc_expert/handler.js.map +1 -1
- package/dist/types/bc-knowledge.d.ts +1 -1
- package/dist/types/bc-knowledge.d.ts.map +1 -1
- package/dist/types/bc-knowledge.js +105 -33
- package/dist/types/bc-knowledge.js.map +1 -1
- package/dist/types/config-types.d.ts +9 -9
- package/dist/types/config-types.d.ts.map +1 -1
- package/dist/types/config-types.js +38 -38
- package/dist/types/config-types.js.map +1 -1
- package/package.json +1 -1
package/dist/layers/git-layer.js
CHANGED
|
@@ -11,15 +11,15 @@
|
|
|
11
11
|
*
|
|
12
12
|
* See docs/GIT-AUTH-FIX.md for detailed explanation of authentication fix
|
|
13
13
|
*/
|
|
14
|
-
import { access, mkdir, stat, readdir, readFile } from
|
|
15
|
-
import { join, dirname, basename } from
|
|
16
|
-
import { existsSync } from
|
|
17
|
-
import simpleGit from
|
|
18
|
-
import * as yaml from
|
|
19
|
-
import
|
|
20
|
-
import { BaseKnowledgeLayer } from
|
|
21
|
-
import { AtomicTopicFrontmatterSchema } from
|
|
22
|
-
import { AuthType } from
|
|
14
|
+
import { access, mkdir, stat, readdir, readFile } from "fs/promises";
|
|
15
|
+
import { join, dirname, basename } from "path";
|
|
16
|
+
import { existsSync } from "fs";
|
|
17
|
+
import simpleGit from "simple-git";
|
|
18
|
+
import * as yaml from "yaml";
|
|
19
|
+
import glob from "fast-glob";
|
|
20
|
+
import { BaseKnowledgeLayer } from "./base-layer.js";
|
|
21
|
+
import { AtomicTopicFrontmatterSchema, } from "../types/bc-knowledge.js";
|
|
22
|
+
import { AuthType, } from "../types/index.js";
|
|
23
23
|
export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
24
24
|
gitConfig;
|
|
25
25
|
auth;
|
|
@@ -28,14 +28,14 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
28
28
|
localPath;
|
|
29
29
|
lastUpdated;
|
|
30
30
|
initializationPromise = null;
|
|
31
|
-
constructor(name, priority, gitConfig, auth, cacheDir =
|
|
31
|
+
constructor(name, priority, gitConfig, auth, cacheDir = ".bckb-cache") {
|
|
32
32
|
super(name, priority);
|
|
33
33
|
this.gitConfig = gitConfig;
|
|
34
34
|
this.auth = auth;
|
|
35
35
|
this.cacheDir = cacheDir;
|
|
36
36
|
// Generate local cache path based on URL
|
|
37
37
|
const urlHash = this.generateUrlHash(gitConfig.url);
|
|
38
|
-
this.localPath = join(process.cwd(), cacheDir,
|
|
38
|
+
this.localPath = join(process.cwd(), cacheDir, "git-repos", urlHash);
|
|
39
39
|
}
|
|
40
40
|
async initialize() {
|
|
41
41
|
// If initialization is in progress, wait for it (MUTEX - must be first!)
|
|
@@ -93,7 +93,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
93
93
|
topicsLoaded: this.topics.size,
|
|
94
94
|
indexesLoaded: 0,
|
|
95
95
|
loadTimeMs: Date.now() - startTime,
|
|
96
|
-
success: true
|
|
96
|
+
success: true,
|
|
97
97
|
};
|
|
98
98
|
return this.loadResult;
|
|
99
99
|
}
|
|
@@ -107,7 +107,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
107
107
|
indexesLoaded: 0,
|
|
108
108
|
loadTimeMs: Date.now() - startTime,
|
|
109
109
|
success: false,
|
|
110
|
-
error: errorMessage
|
|
110
|
+
error: errorMessage,
|
|
111
111
|
};
|
|
112
112
|
return this.loadResult;
|
|
113
113
|
}
|
|
@@ -119,9 +119,9 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
119
119
|
async setupGitWithAuth() {
|
|
120
120
|
const gitOptions = {
|
|
121
121
|
baseDir: dirname(this.localPath),
|
|
122
|
-
binary:
|
|
122
|
+
binary: "git",
|
|
123
123
|
maxConcurrentProcesses: 1,
|
|
124
|
-
trimmed: true
|
|
124
|
+
trimmed: true,
|
|
125
125
|
};
|
|
126
126
|
this.git = simpleGit(gitOptions);
|
|
127
127
|
// Configure authentication based on auth type
|
|
@@ -137,34 +137,37 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
137
137
|
// GitHub CLI authentication - verify gh CLI is installed and user is authenticated
|
|
138
138
|
await this.verifyGhCliInstalled();
|
|
139
139
|
await this.verifyGhCliAuthenticated();
|
|
140
|
-
console.error(
|
|
140
|
+
console.error("🔑 Using GitHub CLI authentication (gh auth token)");
|
|
141
141
|
// No URL modification needed - we'll fetch token from gh CLI for each operation
|
|
142
142
|
break;
|
|
143
143
|
case AuthType.AZ_CLI:
|
|
144
144
|
// Azure CLI authentication - verify az CLI is installed and user is logged in
|
|
145
145
|
await this.verifyAzCliInstalled();
|
|
146
146
|
await this.verifyAzCliAuthenticated();
|
|
147
|
-
console.error(
|
|
147
|
+
console.error("🔑 Using Azure CLI authentication (Git credential manager will handle tokens)");
|
|
148
148
|
// No URL modification needed - Git credential manager automatically uses az CLI tokens
|
|
149
149
|
break;
|
|
150
150
|
case AuthType.TOKEN:
|
|
151
151
|
// For GitHub/GitLab token authentication
|
|
152
152
|
const token = this.auth.token ||
|
|
153
|
-
(this.auth.token_env_var
|
|
153
|
+
(this.auth.token_env_var
|
|
154
|
+
? process.env[this.auth.token_env_var]
|
|
155
|
+
: undefined);
|
|
154
156
|
if (token) {
|
|
155
157
|
// For token authentication, we embed credentials directly in URLs
|
|
156
158
|
// This avoids issues with git credential helpers and ensures consistent auth
|
|
157
|
-
console.error(
|
|
159
|
+
console.error("🔑 Configured token authentication (embedded in URLs)");
|
|
158
160
|
}
|
|
159
161
|
else {
|
|
160
|
-
throw new Error(
|
|
162
|
+
throw new Error("Token not found for git authentication");
|
|
161
163
|
}
|
|
162
164
|
break;
|
|
163
165
|
case AuthType.SSH_KEY:
|
|
164
166
|
// SSH key authentication - requires key to be in SSH agent
|
|
165
167
|
if (this.auth.key_path) {
|
|
166
168
|
// Set SSH command to use specific key
|
|
167
|
-
process.env[
|
|
169
|
+
process.env["GIT_SSH_COMMAND"] =
|
|
170
|
+
`ssh -i ${this.auth.key_path} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no`;
|
|
168
171
|
console.error(`🔑 Configured SSH key authentication: ${this.auth.key_path}`);
|
|
169
172
|
}
|
|
170
173
|
break;
|
|
@@ -172,13 +175,15 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
172
175
|
// Basic username/password authentication
|
|
173
176
|
const username = this.auth.username;
|
|
174
177
|
const password = this.auth.password ||
|
|
175
|
-
(this.auth.password_env_var
|
|
178
|
+
(this.auth.password_env_var
|
|
179
|
+
? process.env[this.auth.password_env_var]
|
|
180
|
+
: undefined);
|
|
176
181
|
if (username && password) {
|
|
177
|
-
console.error(
|
|
182
|
+
console.error("🔑 Configured basic authentication (embedded in URLs)");
|
|
178
183
|
// This will be handled in the URL modification
|
|
179
184
|
}
|
|
180
185
|
else {
|
|
181
|
-
throw new Error(
|
|
186
|
+
throw new Error("Username/password not found for basic authentication");
|
|
182
187
|
}
|
|
183
188
|
break;
|
|
184
189
|
default:
|
|
@@ -187,19 +192,22 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
187
192
|
}
|
|
188
193
|
async ensureRepository() {
|
|
189
194
|
if (!this.git)
|
|
190
|
-
throw new Error(
|
|
191
|
-
const repositoryExists = existsSync(join(this.localPath,
|
|
195
|
+
throw new Error("Git not initialized");
|
|
196
|
+
const repositoryExists = existsSync(join(this.localPath, ".git"));
|
|
192
197
|
if (repositoryExists) {
|
|
193
198
|
// Repository exists, pull latest changes
|
|
194
199
|
console.error(`📥 Pulling latest changes for ${this.name}...`);
|
|
195
200
|
await this.git.cwd(this.localPath);
|
|
196
201
|
try {
|
|
197
202
|
// For authenticated pulls, we need to update the remote URL with auth
|
|
198
|
-
if (this.auth &&
|
|
203
|
+
if (this.auth &&
|
|
204
|
+
(this.auth.type === AuthType.TOKEN ||
|
|
205
|
+
this.auth.type === AuthType.BASIC ||
|
|
206
|
+
this.auth.type === AuthType.GH_CLI)) {
|
|
199
207
|
const authenticatedUrl = await this.prepareUrlWithAuth(this.gitConfig.url);
|
|
200
|
-
await this.git.remote([
|
|
208
|
+
await this.git.remote(["set-url", "origin", authenticatedUrl]);
|
|
201
209
|
}
|
|
202
|
-
const pullResult = await this.git.pull(
|
|
210
|
+
const pullResult = await this.git.pull("origin", this.gitConfig.branch || "main");
|
|
203
211
|
return pullResult.summary.changes > 0;
|
|
204
212
|
}
|
|
205
213
|
catch (error) {
|
|
@@ -212,9 +220,10 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
212
220
|
console.error(`📦 Cloning repository ${this.gitConfig.url}...`);
|
|
213
221
|
const cloneUrl = await this.prepareUrlWithAuth(this.gitConfig.url);
|
|
214
222
|
await this.git.clone(cloneUrl, this.localPath, [
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
223
|
+
"--depth",
|
|
224
|
+
"1", // Shallow clone for faster downloads
|
|
225
|
+
"--single-branch",
|
|
226
|
+
...(this.gitConfig.branch ? ["--branch", this.gitConfig.branch] : []),
|
|
218
227
|
]);
|
|
219
228
|
return true;
|
|
220
229
|
}
|
|
@@ -227,7 +236,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
227
236
|
return url;
|
|
228
237
|
}
|
|
229
238
|
// Only modify HTTPS URLs for token/basic auth
|
|
230
|
-
if (!url.startsWith(
|
|
239
|
+
if (!url.startsWith("https://"))
|
|
231
240
|
return url;
|
|
232
241
|
switch (this.auth.type) {
|
|
233
242
|
case AuthType.GH_CLI:
|
|
@@ -235,24 +244,28 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
235
244
|
const ghToken = await this.getGhCliToken();
|
|
236
245
|
if (ghToken) {
|
|
237
246
|
// For GitHub: https://token@github.com/...
|
|
238
|
-
return url.replace(
|
|
247
|
+
return url.replace("https://", `https://${ghToken}@`);
|
|
239
248
|
}
|
|
240
249
|
break;
|
|
241
250
|
case AuthType.TOKEN:
|
|
242
251
|
const token = this.auth.token ||
|
|
243
|
-
(this.auth.token_env_var
|
|
252
|
+
(this.auth.token_env_var
|
|
253
|
+
? process.env[this.auth.token_env_var]
|
|
254
|
+
: undefined);
|
|
244
255
|
if (token) {
|
|
245
256
|
// For GitHub/GitLab: https://token@github.com/...
|
|
246
|
-
return url.replace(
|
|
257
|
+
return url.replace("https://", `https://${token}@`);
|
|
247
258
|
}
|
|
248
259
|
break;
|
|
249
260
|
case AuthType.BASIC:
|
|
250
261
|
const username = this.auth.username;
|
|
251
262
|
const password = this.auth.password ||
|
|
252
|
-
(this.auth.password_env_var
|
|
263
|
+
(this.auth.password_env_var
|
|
264
|
+
? process.env[this.auth.password_env_var]
|
|
265
|
+
: undefined);
|
|
253
266
|
if (username && password) {
|
|
254
267
|
// https://username:password@gitlab.com/...
|
|
255
|
-
return url.replace(
|
|
268
|
+
return url.replace("https://", `https://${username}:${password}@`);
|
|
256
269
|
}
|
|
257
270
|
break;
|
|
258
271
|
}
|
|
@@ -262,74 +275,74 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
262
275
|
* Verify Azure CLI is installed on the system
|
|
263
276
|
*/
|
|
264
277
|
async verifyGhCliInstalled() {
|
|
265
|
-
const { execSync } = await import(
|
|
278
|
+
const { execSync } = await import("child_process");
|
|
266
279
|
try {
|
|
267
|
-
execSync(
|
|
280
|
+
execSync("gh --version", { stdio: "ignore" });
|
|
268
281
|
}
|
|
269
282
|
catch {
|
|
270
|
-
throw new Error(
|
|
271
|
-
|
|
283
|
+
throw new Error("GitHub CLI not found. Install from https://cli.github.com/\n" +
|
|
284
|
+
"After installation, run: gh auth login");
|
|
272
285
|
}
|
|
273
286
|
}
|
|
274
287
|
/**
|
|
275
288
|
* Verify user is authenticated with GitHub CLI
|
|
276
289
|
*/
|
|
277
290
|
async verifyGhCliAuthenticated() {
|
|
278
|
-
const { execSync } = await import(
|
|
291
|
+
const { execSync } = await import("child_process");
|
|
279
292
|
try {
|
|
280
293
|
// Check if user is authenticated by attempting to get auth status
|
|
281
|
-
execSync(
|
|
294
|
+
execSync("gh auth status", { stdio: "ignore" });
|
|
282
295
|
}
|
|
283
296
|
catch {
|
|
284
|
-
throw new Error(
|
|
285
|
-
|
|
297
|
+
throw new Error("Not logged in to GitHub CLI. Run: gh auth login\n" +
|
|
298
|
+
"For organization access, ensure your token has appropriate repo scopes");
|
|
286
299
|
}
|
|
287
300
|
}
|
|
288
301
|
/**
|
|
289
302
|
* Get GitHub token from gh CLI
|
|
290
303
|
*/
|
|
291
304
|
async getGhCliToken() {
|
|
292
|
-
const { execSync } = await import(
|
|
305
|
+
const { execSync } = await import("child_process");
|
|
293
306
|
try {
|
|
294
307
|
// Get token for github.com (or enterprise host if specified)
|
|
295
|
-
const output = execSync(
|
|
308
|
+
const output = execSync("gh auth token", { encoding: "utf8" });
|
|
296
309
|
const token = output.trim();
|
|
297
310
|
if (!token) {
|
|
298
|
-
throw new Error(
|
|
311
|
+
throw new Error("gh CLI returned empty token");
|
|
299
312
|
}
|
|
300
313
|
return token;
|
|
301
314
|
}
|
|
302
315
|
catch (error) {
|
|
303
316
|
throw new Error(`Failed to get GitHub CLI token: ${error instanceof Error ? error.message : String(error)}\n` +
|
|
304
|
-
|
|
317
|
+
"Ensure you are authenticated with: gh auth login");
|
|
305
318
|
}
|
|
306
319
|
}
|
|
307
320
|
async verifyAzCliInstalled() {
|
|
308
|
-
const { execSync } = await import(
|
|
321
|
+
const { execSync } = await import("child_process");
|
|
309
322
|
try {
|
|
310
|
-
execSync(
|
|
323
|
+
execSync("az --version", { stdio: "ignore" });
|
|
311
324
|
}
|
|
312
325
|
catch {
|
|
313
|
-
throw new Error(
|
|
314
|
-
|
|
326
|
+
throw new Error("Azure CLI not found. Install from https://aka.ms/install-az-cli\n" +
|
|
327
|
+
"After installation, run: az login");
|
|
315
328
|
}
|
|
316
329
|
}
|
|
317
330
|
/**
|
|
318
331
|
* Verify user is authenticated with Azure CLI
|
|
319
332
|
*/
|
|
320
333
|
async verifyAzCliAuthenticated() {
|
|
321
|
-
const { execSync } = await import(
|
|
334
|
+
const { execSync } = await import("child_process");
|
|
322
335
|
try {
|
|
323
|
-
execSync(
|
|
336
|
+
execSync("az account show", { stdio: "ignore" });
|
|
324
337
|
}
|
|
325
338
|
catch {
|
|
326
|
-
throw new Error(
|
|
327
|
-
|
|
339
|
+
throw new Error("Not logged in to Azure CLI. Run: az login\n" +
|
|
340
|
+
"For Azure DevOps, you may also need to run: az devops login");
|
|
328
341
|
}
|
|
329
342
|
}
|
|
330
343
|
async checkoutBranch(branch) {
|
|
331
344
|
if (!this.git)
|
|
332
|
-
throw new Error(
|
|
345
|
+
throw new Error("Git not initialized");
|
|
333
346
|
console.error(`🔄 Checking out branch: ${branch}`);
|
|
334
347
|
await this.git.cwd(this.localPath);
|
|
335
348
|
try {
|
|
@@ -365,8 +378,8 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
365
378
|
const knowledgePath = this.gitConfig.subpath
|
|
366
379
|
? join(this.localPath, this.gitConfig.subpath)
|
|
367
380
|
: this.localPath;
|
|
368
|
-
const domainsPath = join(knowledgePath,
|
|
369
|
-
const topicsPath = join(knowledgePath,
|
|
381
|
+
const domainsPath = join(knowledgePath, "domains");
|
|
382
|
+
const topicsPath = join(knowledgePath, "topics");
|
|
370
383
|
try {
|
|
371
384
|
await access(domainsPath);
|
|
372
385
|
await this.loadTopicsFromDirectory(domainsPath);
|
|
@@ -390,12 +403,12 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
390
403
|
const knowledgePath = this.gitConfig.subpath
|
|
391
404
|
? join(this.localPath, this.gitConfig.subpath)
|
|
392
405
|
: this.localPath;
|
|
393
|
-
const specialistsPath = join(knowledgePath,
|
|
406
|
+
const specialistsPath = join(knowledgePath, "specialists");
|
|
394
407
|
try {
|
|
395
408
|
await access(specialistsPath);
|
|
396
409
|
const entries = await readdir(specialistsPath);
|
|
397
410
|
for (const entry of entries) {
|
|
398
|
-
if (entry.endsWith(
|
|
411
|
+
if (entry.endsWith(".md")) {
|
|
399
412
|
const filePath = join(specialistsPath, entry);
|
|
400
413
|
try {
|
|
401
414
|
const specialist = await this.loadSpecialist(filePath);
|
|
@@ -423,8 +436,8 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
423
436
|
? join(this.localPath, this.gitConfig.subpath)
|
|
424
437
|
: this.localPath;
|
|
425
438
|
// Prefer workflows/, fall back to methodologies/ for backward compatibility
|
|
426
|
-
const workflowsPath = join(knowledgePath,
|
|
427
|
-
const legacyPath = join(knowledgePath,
|
|
439
|
+
const workflowsPath = join(knowledgePath, "workflows");
|
|
440
|
+
const legacyPath = join(knowledgePath, "methodologies");
|
|
428
441
|
let activePath = null;
|
|
429
442
|
try {
|
|
430
443
|
await access(workflowsPath);
|
|
@@ -446,9 +459,9 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
446
459
|
return 0;
|
|
447
460
|
}
|
|
448
461
|
// Load workflow files
|
|
449
|
-
let pattern = join(activePath,
|
|
450
|
-
if (pattern.startsWith(
|
|
451
|
-
pattern =
|
|
462
|
+
let pattern = join(activePath, "*.yaml").replace(/\\/g, "/");
|
|
463
|
+
if (pattern.startsWith("/c/")) {
|
|
464
|
+
pattern = "C:" + pattern.substring(2);
|
|
452
465
|
}
|
|
453
466
|
const workflowFiles = await glob(pattern);
|
|
454
467
|
console.error(`📋 Found ${workflowFiles.length} workflow files in git layer`);
|
|
@@ -457,7 +470,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
457
470
|
try {
|
|
458
471
|
const workflow = await this.loadWorkflow(filePath);
|
|
459
472
|
if (workflow) {
|
|
460
|
-
const workflowId = workflow.type || basename(filePath,
|
|
473
|
+
const workflowId = workflow.type || basename(filePath, ".yaml");
|
|
461
474
|
this.workflows.set(workflowId, workflow);
|
|
462
475
|
loadedCount++;
|
|
463
476
|
}
|
|
@@ -474,8 +487,10 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
474
487
|
*/
|
|
475
488
|
async loadWorkflow(filePath) {
|
|
476
489
|
try {
|
|
477
|
-
const content = await readFile(filePath,
|
|
478
|
-
const normalizedContent = content
|
|
490
|
+
const content = await readFile(filePath, "utf-8");
|
|
491
|
+
const normalizedContent = content
|
|
492
|
+
.replace(/^\uFEFF/, "")
|
|
493
|
+
.replace(/\r\n/g, "\n");
|
|
479
494
|
// Parse YAML content
|
|
480
495
|
const workflowData = yaml.parse(normalizedContent);
|
|
481
496
|
// Validate required fields
|
|
@@ -494,8 +509,10 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
494
509
|
* Load a single specialist from a markdown file
|
|
495
510
|
*/
|
|
496
511
|
async loadSpecialist(filePath) {
|
|
497
|
-
const content = await readFile(filePath,
|
|
498
|
-
const normalizedContent = content
|
|
512
|
+
const content = await readFile(filePath, "utf-8");
|
|
513
|
+
const normalizedContent = content
|
|
514
|
+
.replace(/^\uFEFF/, "")
|
|
515
|
+
.replace(/\r\n/g, "\n");
|
|
499
516
|
// Extract YAML frontmatter
|
|
500
517
|
const frontmatterMatch = normalizedContent.match(/^---\s*\n([\s\S]*?)\n---\s*\n([\s\S]*)$/);
|
|
501
518
|
if (!frontmatterMatch) {
|
|
@@ -503,7 +520,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
503
520
|
return null;
|
|
504
521
|
}
|
|
505
522
|
const [, frontmatterContent, markdownContent] = frontmatterMatch;
|
|
506
|
-
const frontmatterData = yaml.parse(frontmatterContent ||
|
|
523
|
+
const frontmatterData = yaml.parse(frontmatterContent || "");
|
|
507
524
|
// Validate required fields
|
|
508
525
|
if (!frontmatterData.specialist_id || !frontmatterData.title) {
|
|
509
526
|
console.error(`⚠️ Missing required fields in ${filePath}`);
|
|
@@ -513,26 +530,27 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
513
530
|
const specialist = {
|
|
514
531
|
title: frontmatterData.title,
|
|
515
532
|
specialist_id: frontmatterData.specialist_id,
|
|
516
|
-
emoji: frontmatterData.emoji ||
|
|
517
|
-
role: frontmatterData.role ||
|
|
518
|
-
team: frontmatterData.team ||
|
|
533
|
+
emoji: frontmatterData.emoji || "🤖",
|
|
534
|
+
role: frontmatterData.role || "Specialist",
|
|
535
|
+
team: frontmatterData.team || "General",
|
|
519
536
|
persona: {
|
|
520
537
|
personality: frontmatterData.persona?.personality || [],
|
|
521
|
-
communication_style: frontmatterData.persona?.communication_style ||
|
|
522
|
-
greeting: frontmatterData.persona?.greeting ||
|
|
538
|
+
communication_style: frontmatterData.persona?.communication_style || "",
|
|
539
|
+
greeting: frontmatterData.persona?.greeting ||
|
|
540
|
+
`${frontmatterData.emoji || "🤖"} Hello!`,
|
|
523
541
|
},
|
|
524
542
|
expertise: {
|
|
525
543
|
primary: frontmatterData.expertise?.primary || [],
|
|
526
|
-
secondary: frontmatterData.expertise?.secondary || []
|
|
544
|
+
secondary: frontmatterData.expertise?.secondary || [],
|
|
527
545
|
},
|
|
528
546
|
domains: frontmatterData.domains || [],
|
|
529
547
|
when_to_use: frontmatterData.when_to_use || [],
|
|
530
548
|
collaboration: {
|
|
531
549
|
natural_handoffs: frontmatterData.collaboration?.natural_handoffs || [],
|
|
532
|
-
team_consultations: frontmatterData.collaboration?.team_consultations || []
|
|
550
|
+
team_consultations: frontmatterData.collaboration?.team_consultations || [],
|
|
533
551
|
},
|
|
534
552
|
related_specialists: frontmatterData.related_specialists || [],
|
|
535
|
-
content: markdownContent.trim()
|
|
553
|
+
content: markdownContent.trim(),
|
|
536
554
|
};
|
|
537
555
|
return specialist;
|
|
538
556
|
}
|
|
@@ -544,10 +562,10 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
544
562
|
// Recursively load from subdirectories
|
|
545
563
|
await this.loadTopicsFromDirectory(fullPath);
|
|
546
564
|
}
|
|
547
|
-
else if (entry.isFile() && entry.name.endsWith(
|
|
565
|
+
else if (entry.isFile() && entry.name.endsWith(".md")) {
|
|
548
566
|
// Load markdown files as topics
|
|
549
567
|
try {
|
|
550
|
-
const content = await readFile(fullPath,
|
|
568
|
+
const content = await readFile(fullPath, "utf-8");
|
|
551
569
|
const relativePath = this.getRelativePath(fullPath);
|
|
552
570
|
const topic = await this.loadAtomicTopic(fullPath, content, relativePath);
|
|
553
571
|
if (topic && this.validateTopic(topic)) {
|
|
@@ -564,14 +582,14 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
564
582
|
const basePath = this.gitConfig.subpath
|
|
565
583
|
? join(this.localPath, this.gitConfig.subpath)
|
|
566
584
|
: this.localPath;
|
|
567
|
-
return absolutePath.replace(basePath +
|
|
585
|
+
return absolutePath.replace(basePath + "/", "").replace(/\\/g, "/");
|
|
568
586
|
}
|
|
569
587
|
async getCurrentCommitHash() {
|
|
570
588
|
if (!this.git)
|
|
571
589
|
return undefined;
|
|
572
590
|
try {
|
|
573
591
|
await this.git.cwd(this.localPath);
|
|
574
|
-
const log = await this.git.log([
|
|
592
|
+
const log = await this.git.log(["--oneline", "-1"]);
|
|
575
593
|
return log.latest?.hash;
|
|
576
594
|
}
|
|
577
595
|
catch {
|
|
@@ -592,7 +610,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
592
610
|
let hash = 0;
|
|
593
611
|
for (let i = 0; i < url.length; i++) {
|
|
594
612
|
const char = url.charCodeAt(i);
|
|
595
|
-
hash = (
|
|
613
|
+
hash = (hash << 5) - hash + char;
|
|
596
614
|
hash = hash & hash; // Convert to 32-bit integer
|
|
597
615
|
}
|
|
598
616
|
return Math.abs(hash).toString(16);
|
|
@@ -624,7 +642,9 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
624
642
|
try {
|
|
625
643
|
const stats = await stat(filePath);
|
|
626
644
|
// Normalize line endings
|
|
627
|
-
const normalizedContent = content
|
|
645
|
+
const normalizedContent = content
|
|
646
|
+
.replace(/\r\n/g, "\n")
|
|
647
|
+
.replace(/\r/g, "\n");
|
|
628
648
|
// Extract YAML frontmatter
|
|
629
649
|
const frontmatterMatch = normalizedContent.match(/^---\s*\n([\s\S]*?)\n---\s*\n([\s\S]*)$/);
|
|
630
650
|
if (!frontmatterMatch) {
|
|
@@ -632,18 +652,18 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
632
652
|
}
|
|
633
653
|
const [, frontmatterContent, markdownContent] = frontmatterMatch;
|
|
634
654
|
// Parse and validate frontmatter
|
|
635
|
-
const frontmatterData = yaml.parse(frontmatterContent ||
|
|
655
|
+
const frontmatterData = yaml.parse(frontmatterContent || "");
|
|
636
656
|
const frontmatter = AtomicTopicFrontmatterSchema.parse(frontmatterData);
|
|
637
657
|
// Generate topic ID from relative path
|
|
638
658
|
const topicId = this.normalizeTopicId(relativePath);
|
|
639
659
|
return {
|
|
640
660
|
id: topicId,
|
|
641
|
-
title: frontmatter.title || topicId.replace(/-/g,
|
|
661
|
+
title: frontmatter.title || topicId.replace(/-/g, " "),
|
|
642
662
|
filePath,
|
|
643
663
|
frontmatter,
|
|
644
|
-
content: markdownContent?.trim() ||
|
|
664
|
+
content: markdownContent?.trim() || "",
|
|
645
665
|
wordCount: markdownContent?.split(/\s+/).length || 0,
|
|
646
|
-
lastModified: stats.mtime
|
|
666
|
+
lastModified: stats.mtime,
|
|
647
667
|
};
|
|
648
668
|
}
|
|
649
669
|
catch (error) {
|
|
@@ -656,10 +676,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
656
676
|
*/
|
|
657
677
|
normalizeTopicId(filePath, basePath) {
|
|
658
678
|
// For git layer, filePath is already relative
|
|
659
|
-
return filePath
|
|
660
|
-
.replace(/\.md$/, '')
|
|
661
|
-
.replace(/\\/g, '/')
|
|
662
|
-
.toLowerCase();
|
|
679
|
+
return filePath.replace(/\.md$/, "").replace(/\\/g, "/").toLowerCase();
|
|
663
680
|
}
|
|
664
681
|
/**
|
|
665
682
|
* Validate topic structure
|
|
@@ -669,13 +686,13 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
669
686
|
}
|
|
670
687
|
getSourceInfo() {
|
|
671
688
|
return {
|
|
672
|
-
type:
|
|
689
|
+
type: "git",
|
|
673
690
|
url: this.gitConfig.url,
|
|
674
691
|
branch: this.gitConfig.branch,
|
|
675
692
|
subpath: this.gitConfig.subpath,
|
|
676
693
|
localPath: this.localPath,
|
|
677
694
|
lastUpdated: this.lastUpdated,
|
|
678
|
-
hasAuth: !!this.auth
|
|
695
|
+
hasAuth: !!this.auth,
|
|
679
696
|
};
|
|
680
697
|
}
|
|
681
698
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-layer.js","sourceRoot":"","sources":["../../src/layers/git-layer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,IAAI,EAAW,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,SAA0C,MAAM,YAAY,CAAC;AACpE,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAe,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAErF,OAAO,EAIL,QAAQ,EAET,MAAM,mBAAmB,CAAC;AAE3B,MAAM,OAAO,iBAAkB,SAAQ,kBAAkB;IASpC;IACA;IACA;IAVX,GAAG,GAAqB,IAAI,CAAC;IAC7B,SAAS,CAAS;IAClB,WAAW,CAAQ;IACnB,qBAAqB,GAAoC,IAAI,CAAC;IAEtE,YACE,IAAY,EACZ,QAAgB,EACC,SAA+B,EAC/B,IAAwB,EACxB,WAAmB,aAAa;QAEjD,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAJL,cAAS,GAAT,SAAS,CAAsB;QAC/B,SAAI,GAAJ,IAAI,CAAoB;QACxB,aAAQ,GAAR,QAAQ,CAAwB;QAIjD,yCAAyC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,UAAU;QACd,yEAAyE;QACzE,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,IAAI,yCAAyC,CAAC,CAAC;YACjF,OAAO,IAAI,CAAC,qBAAqB,CAAC;QACpC,CAAC;QAED,8CAA8C;QAC9C,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACxC,OAAO,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,IAAI,+CAA+C,CAAC,CAAC;YACxF,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;QAED,qDAAqD;QACrD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAE1D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC;YAChD,OAAO,MAAM,CAAC;QAChB,CAAC;gBAAS,CAAC;YACT,0DAA0D;YAC1D,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACpC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB;QAEjC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,IAAI,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,8BAA8B,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;YAEpF,yCAAyC;YACzC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAElC,oCAAoC;YACpC,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAE9B,8BAA8B;YAC9B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAElD,+BAA+B;YAC/B,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;gBAC1B,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACnD,CAAC;YAED,4CAA4C;YAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO;gBAC1C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC9C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;YAEnB,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAE5C,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,IAAI,uBAAuB,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,IAAI,uBAAuB,CAAC,CAAC;YAClE,CAAC;YAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,UAAU,GAAG;gBAChB,SAAS,EAAE,IAAI,CAAC,IAAI;gBACpB,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBAC9B,aAAa,EAAE,CAAC;gBAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAClC,OAAO,EAAE,IAAI;aACd,CAAC;YAEF,OAAO,IAAI,CAAC,UAAU,CAAC;QAEzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,mCAAmC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACjH,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1B,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,EAAE,CAAC,CAAC;YAEnC,IAAI,CAAC,UAAU,GAAG;gBAChB,SAAS,EAAE,IAAI,CAAC,IAAI;gBACpB,YAAY,EAAE,CAAC;gBACf,aAAa,EAAE,CAAC;gBAChB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAClC,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,YAAY;aACpB,CAAC;YAEF,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAChC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,MAAM,UAAU,GAA8B;YAC5C,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;YAChC,MAAM,EAAE,KAAK;YACb,sBAAsB,EAAE,CAAC;YACzB,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;QAEjC,8CAA8C;QAC9C,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,uBAAuB;QACnC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO;QAEpC,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,QAAQ,CAAC,MAAM;gBAClB,mFAAmF;gBACnF,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBACtC,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBACpE,gFAAgF;gBAChF,MAAM;YAER,KAAK,QAAQ,CAAC,MAAM;gBAClB,8EAA8E;gBAC9E,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBACtC,OAAO,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAC;gBAC/F,uFAAuF;gBACvF,MAAM;YAER,KAAK,QAAQ,CAAC,KAAK;gBACjB,yCAAyC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK;oBAC3B,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAE/E,IAAI,KAAK,EAAE,CAAC;oBACV,kEAAkE;oBAClE,6EAA6E;oBAC7E,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;gBAC5D,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ,CAAC,OAAO;gBACnB,2DAA2D;gBAC3D,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACvB,sCAAsC;oBACtC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ,8DAA8D,CAAC;oBAC5H,OAAO,CAAC,KAAK,CAAC,yCAAyC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC/E,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ,CAAC,KAAK;gBACjB,yCAAyC;gBACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ;oBACjC,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAErF,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;oBACzB,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;oBACvE,+CAA+C;gBACjD,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;gBAC1E,CAAC;gBACD,MAAM;YAER;gBACE,OAAO,CAAC,IAAI,CAAC,wCAAwC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAEtD,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QAElE,IAAI,gBAAgB,EAAE,CAAC;YACrB,yCAAyC;YACzC,OAAO,CAAC,KAAK,CAAC,iCAAiC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC;YAC/D,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAEnC,IAAI,CAAC;gBACH,sEAAsE;gBACtE,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBAChI,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;oBAC3E,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;gBACjE,CAAC;gBAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC;gBAClF,OAAO,UAAU,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC;YACxC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,0CAA0C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACjH,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;aAAM,CAAC;YACN,qCAAqC;YACrC,OAAO,CAAC,KAAK,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC;YAEhE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAEnE,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE;gBAC7C,SAAS,EAAE,GAAG,EAAE,qCAAqC;gBACrD,iBAAiB;gBACjB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACtE,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,GAAW;QAC1C,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO,GAAG,CAAC;QAE3B,8GAA8G;QAC9G,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YACvC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,8CAA8C;QAC9C,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,OAAO,GAAG,CAAC;QAE5C,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,QAAQ,CAAC,MAAM;gBAClB,sCAAsC;gBACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC3C,IAAI,OAAO,EAAE,CAAC;oBACZ,2CAA2C;oBAC3C,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,OAAO,GAAG,CAAC,CAAC;gBACxD,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ,CAAC,KAAK;gBACjB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK;oBAC3B,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC/E,IAAI,KAAK,EAAE,CAAC;oBACV,kDAAkD;oBAClD,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,KAAK,GAAG,CAAC,CAAC;gBACtD,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ,CAAC,KAAK;gBACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ;oBACjC,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACrF,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;oBACzB,2CAA2C;oBAC3C,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,QAAQ,IAAI,QAAQ,GAAG,CAAC,CAAC;gBACrE,CAAC;gBACD,MAAM;QACV,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB;QAChC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,QAAQ,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,8DAA8D;gBAC9D,wCAAwC,CACzC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,wBAAwB;QACpC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,kEAAkE;YAClE,QAAQ,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,mDAAmD;gBACnD,wEAAwE,CACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa;QACzB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,6DAA6D;YAC7D,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;YAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,mCAAmC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;gBAC7F,kDAAkD,CACnD,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAChC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,QAAQ,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,mEAAmE;gBACnE,mCAAmC,CACpC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,wBAAwB;QACpC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,QAAQ,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,6CAA6C;gBAC7C,6DAA6D,CAC9D,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAc;QACzC,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAEtD,OAAO,CAAC,KAAK,CAAC,2BAA2B,MAAM,EAAE,CAAC,CAAC;QACnD,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEnC,IAAI,CAAC;YACH,6BAA6B;YAC7B,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,+DAA+D;YAC/D,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,MAAM,EAAE,CAAC,CAAC;YAC5D,CAAC;YAAC,OAAO,iBAAiB,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACpH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,OAAe;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;YAEtB,4DAA4D;YAC5D,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAQ,sBAAsB;YACtD,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,CAAG,0BAA0B;YAC1D,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,wBAAwB;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,OAAO,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,UAAU;QACxB,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO;YAC1C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAEnB,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAEjD,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1B,MAAM,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qDAAqD;YACrD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;gBACzB,MAAM,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,aAAa,EAAE,CAAC;gBACvB,mDAAmD;YACrD,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,eAAe;QAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO;YAC1C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAEnB,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QAE3D,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;YAE/C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;oBAC9C,IAAI,CAAC;wBACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;wBACvD,IAAI,UAAU,EAAE,CAAC;4BACf,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;wBAC7D,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,KAAK,GAAG,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC/G,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,WAAW,CAAC,IAAI,qBAAqB,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC;QAC1F,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,qDAAqD;QACvD,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IAC/B,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,aAAa;QAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO;YAC1C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAEnB,4EAA4E;QAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;QAExD,IAAI,UAAU,GAAkB,IAAI,CAAC;QAErC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;YAC5B,UAAU,GAAG,aAAa,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,sDAAsD;YACtD,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;gBACzB,UAAU,GAAG,UAAU,CAAC;gBACxB,OAAO,CAAC,KAAK,CAAC,sDAAsD,IAAI,CAAC,IAAI,iCAAiC,CAAC,CAAC;YAClH,CAAC;YAAC,MAAM,CAAC;gBACP,yCAAyC;gBACzC,OAAO,CAAC,CAAC;YACX,CAAC;QACH,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC;QACX,CAAC;QAED,sBAAsB;QACtB,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,OAAO,CAAC,KAAK,CAAC,YAAY,aAAa,CAAC,MAAM,8BAA8B,CAAC,CAAC;QAE9E,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACnD,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAChE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;oBACzC,WAAW,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,QAAQ,GAAG,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACpH,CAAC;QACH,CAAC;QAED,OAAO,CAAC,KAAK,CAAC,aAAa,WAAW,2BAA2B,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY,CAAC,QAAgB;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEhF,qBAAqB;YACrB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAEnD,2BAA2B;YAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBAC7C,OAAO,CAAC,KAAK,CAAC,2CAA2C,QAAQ,EAAE,CAAC,CAAC;gBACrE,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,YAAY,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mCAAmC,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,QAAgB;QAC3C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEhF,2BAA2B;QAC3B,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC5F,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;YACxD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,CAAC,EAAE,kBAAkB,EAAE,eAAe,CAAC,GAAG,gBAAgB,CAAC;QACjE,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;QAE7D,2BAA2B;QAC3B,IAAI,CAAC,eAAe,CAAC,aAAa,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC7D,OAAO,CAAC,KAAK,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,+BAA+B;QAC/B,MAAM,UAAU,GAAyB;YACvC,KAAK,EAAE,eAAe,CAAC,KAAK;YAC5B,aAAa,EAAE,eAAe,CAAC,aAAa;YAC5C,KAAK,EAAE,eAAe,CAAC,KAAK,IAAI,IAAI;YACpC,IAAI,EAAE,eAAe,CAAC,IAAI,IAAI,YAAY;YAC1C,IAAI,EAAE,eAAe,CAAC,IAAI,IAAI,SAAS;YACvC,OAAO,EAAE;gBACP,WAAW,EAAE,eAAe,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE;gBACvD,mBAAmB,EAAE,eAAe,CAAC,OAAO,EAAE,mBAAmB,IAAI,EAAE;gBACvE,QAAQ,EAAE,eAAe,CAAC,OAAO,EAAE,QAAQ,IAAI,GAAG,eAAe,CAAC,KAAK,IAAI,IAAI,SAAS;aACzF;YACD,SAAS,EAAE;gBACT,OAAO,EAAE,eAAe,CAAC,SAAS,EAAE,OAAO,IAAI,EAAE;gBACjD,SAAS,EAAE,eAAe,CAAC,SAAS,EAAE,SAAS,IAAI,EAAE;aACtD;YACD,OAAO,EAAE,eAAe,CAAC,OAAO,IAAI,EAAE;YACtC,WAAW,EAAE,eAAe,CAAC,WAAW,IAAI,EAAE;YAC9C,aAAa,EAAE;gBACb,gBAAgB,EAAE,eAAe,CAAC,aAAa,EAAE,gBAAgB,IAAI,EAAE;gBACvE,kBAAkB,EAAE,eAAe,CAAC,aAAa,EAAE,kBAAkB,IAAI,EAAE;aAC5E;YACD,mBAAmB,EAAE,eAAe,CAAC,mBAAmB,IAAI,EAAE;YAC9D,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE;SAChC,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,OAAe;QACnD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAE3C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,uCAAuC;gBACvC,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YAC/C,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxD,gCAAgC;gBAChC,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAClD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;oBACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;oBAE1E,IAAI,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;wBACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;oBACnC,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,iCAAiC,QAAQ,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACvH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,YAAoB;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO;YACrC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAEnB,OAAO,YAAY,CAAC,OAAO,CAAC,QAAQ,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtE,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAChC,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAO,SAAS,CAAC;QAEhC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;YACpD,OAAO,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACzC,OAAO,KAAK,CAAC,IAAI,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,GAAW;QACjC,8DAA8D;QAC9D,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;YACnC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,4BAA4B;QAClD,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,CAAC,KAAK,CAAC,4BAA4B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAEvD,sDAAsD;QACtD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;YACpF,MAAM,IAAI,CAAC,qBAAqB,CAAC;QACnC,CAAC;QAED,yCAAyC;QACzC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAEpB,gBAAgB;QAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,8DAA8D;IAC3C,KAAK,CAAC,WAAW;QAClC,0EAA0E;QAC1E,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,OAAe,EAAE,YAAoB;QACnF,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEnC,yBAAyB;YACzB,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAE9E,2BAA2B;YAC3B,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAC5F,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,CAAC,EAAE,kBAAkB,EAAE,eAAe,CAAC,GAAG,gBAAgB,CAAC;YAEjE,iCAAiC;YACjC,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;YAC7D,MAAM,WAAW,GAAG,4BAA4B,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAExE,uCAAuC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAEpD,OAAO;gBACL,EAAE,EAAE,OAAO;gBACX,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;gBACtD,QAAQ;gBACR,WAAW;gBACX,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE;gBACtC,SAAS,EAAE,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC;gBACpD,YAAY,EAAE,KAAK,CAAC,KAAK;aAC1B,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,kCAAkC,QAAQ,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACtH,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACgB,gBAAgB,CAAC,QAAgB,EAAE,QAAiB;QACrE,8CAA8C;QAC9C,OAAO,QAAQ;aACZ,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;aACpB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACnB,WAAW,EAAE,CAAC;IACnB,CAAC;IAED;;OAEG;IACgB,aAAa,CAAC,KAAkB;QACjD,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,aAAa;QACX,OAAO;YACL,IAAI,EAAE,KAAc;YACpB,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG;YACvB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM;YAC7B,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;SACrB,CAAC;IACJ,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"git-layer.js","sourceRoot":"","sources":["../../src/layers/git-layer.ts"],"names":[],"mappings":"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"}
|