@the-magic-tower/fixhive-opencode-plugin 0.1.15 → 0.1.19
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/cloud/client.d.ts.map +1 -1
- package/dist/cloud/embedding.d.ts +22 -34
- package/dist/cloud/embedding.d.ts.map +1 -1
- package/dist/core/error-detector.d.ts +15 -41
- package/dist/core/error-detector.d.ts.map +1 -1
- package/dist/core/privacy-filter.d.ts +14 -25
- package/dist/core/privacy-filter.d.ts.map +1 -1
- package/dist/index.d.ts +15 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +399 -418
- package/dist/storage/local-store.d.ts +14 -66
- package/dist/storage/local-store.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/cloud/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/cloud/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAI3B;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/D,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAClE,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACtF,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3F,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACjF,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACjD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAC1D,gBAAgB,IAAI,MAAM,CAAC;IAC3B,mBAAmB,IAAI,OAAO,CAAC;CAChC;AA6BD;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CA0RvF;AAID,eAAO,MAAM,WAAW;;CAEvB,CAAC"}
|
|
@@ -3,53 +3,41 @@
|
|
|
3
3
|
* Generates text embeddings for semantic search using OpenAI
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
* Generates embeddings for error messages and solutions
|
|
6
|
+
* EmbeddingService interface - defines all public methods
|
|
8
7
|
*/
|
|
9
|
-
export
|
|
10
|
-
private client;
|
|
11
|
-
private model;
|
|
12
|
-
private dimensions;
|
|
13
|
-
constructor(apiKey: string, model?: string, dimensions?: number);
|
|
14
|
-
/**
|
|
15
|
-
* Generate embedding for a single text
|
|
16
|
-
*/
|
|
8
|
+
export interface EmbeddingService {
|
|
17
9
|
generate(text: string): Promise<number[]>;
|
|
18
|
-
/**
|
|
19
|
-
* Generate embeddings for multiple texts
|
|
20
|
-
*/
|
|
21
10
|
generateBatch(texts: string[]): Promise<number[][]>;
|
|
22
|
-
/**
|
|
23
|
-
* Generate embedding for error context
|
|
24
|
-
* Combines error message, stack trace, and context
|
|
25
|
-
*/
|
|
26
11
|
generateErrorEmbedding(errorMessage: string, errorStack?: string, context?: {
|
|
27
12
|
language?: string;
|
|
28
13
|
framework?: string;
|
|
29
14
|
}): Promise<number[]>;
|
|
30
|
-
/**
|
|
31
|
-
* Truncate text to fit within model limits
|
|
32
|
-
*/
|
|
33
|
-
private truncateText;
|
|
34
|
-
/**
|
|
35
|
-
* Calculate cosine similarity between two embeddings
|
|
36
|
-
*/
|
|
37
|
-
static cosineSimilarity(a: number[], b: number[]): number;
|
|
38
|
-
/**
|
|
39
|
-
* Get embedding dimensions
|
|
40
|
-
*/
|
|
41
15
|
getDimensions(): number;
|
|
42
|
-
/**
|
|
43
|
-
* Get model name
|
|
44
|
-
*/
|
|
45
16
|
getModel(): string;
|
|
46
17
|
}
|
|
47
18
|
/**
|
|
48
|
-
*
|
|
19
|
+
* EmbeddingService configuration
|
|
49
20
|
*/
|
|
50
|
-
export
|
|
21
|
+
export interface EmbeddingServiceConfig {
|
|
51
22
|
apiKey: string;
|
|
52
23
|
model?: string;
|
|
53
24
|
dimensions?: number;
|
|
54
|
-
}
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Calculate cosine similarity between two embeddings
|
|
28
|
+
*/
|
|
29
|
+
export declare function cosineSimilarity(a: number[], b: number[]): number;
|
|
30
|
+
/**
|
|
31
|
+
* Create an EmbeddingService instance
|
|
32
|
+
* Factory function pattern to avoid ES6 class issues with Bun
|
|
33
|
+
*/
|
|
34
|
+
export declare function createEmbeddingService(config: EmbeddingServiceConfig): EmbeddingService;
|
|
35
|
+
/**
|
|
36
|
+
* Legacy class wrapper for backwards compatibility
|
|
37
|
+
* @deprecated Use createEmbeddingService() instead
|
|
38
|
+
*/
|
|
39
|
+
export declare const EmbeddingService: {
|
|
40
|
+
create: typeof createEmbeddingService;
|
|
41
|
+
cosineSimilarity: typeof cosineSimilarity;
|
|
42
|
+
};
|
|
55
43
|
//# sourceMappingURL=embedding.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding.d.ts","sourceRoot":"","sources":["../../src/cloud/embedding.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH
|
|
1
|
+
{"version":3,"file":"embedding.d.ts","sourceRoot":"","sources":["../../src/cloud/embedding.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpD,sBAAsB,CACpB,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrB,aAAa,IAAI,MAAM,CAAC;IACxB,QAAQ,IAAI,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAmBjE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,sBAAsB,GAAG,gBAAgB,CAkGvF;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;;CAG5B,CAAC"}
|
|
@@ -3,50 +3,24 @@
|
|
|
3
3
|
* Detects errors from tool outputs using multi-signal analysis
|
|
4
4
|
*/
|
|
5
5
|
import type { ErrorDetectionResult, ToolOutput } from '../types/index.js';
|
|
6
|
-
import { PrivacyFilter } from './privacy-filter.js';
|
|
6
|
+
import { type PrivacyFilter } from './privacy-filter.js';
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
* Analyzes tool outputs to detect errors
|
|
8
|
+
* ErrorDetector interface - defines all public methods
|
|
10
9
|
*/
|
|
11
|
-
export
|
|
12
|
-
private privacyFilter;
|
|
13
|
-
constructor(privacyFilter?: PrivacyFilter);
|
|
14
|
-
/**
|
|
15
|
-
* Detect if output contains an error
|
|
16
|
-
*/
|
|
10
|
+
export interface ErrorDetector {
|
|
17
11
|
detect(toolOutput: ToolOutput): ErrorDetectionResult;
|
|
18
|
-
/**
|
|
19
|
-
* Check if content contains error keywords
|
|
20
|
-
*/
|
|
21
|
-
private containsErrorKeywords;
|
|
22
|
-
/**
|
|
23
|
-
* Detect error patterns in content
|
|
24
|
-
*/
|
|
25
|
-
private detectErrorPatterns;
|
|
26
|
-
/**
|
|
27
|
-
* Detect stack traces in content
|
|
28
|
-
*/
|
|
29
|
-
private detectStackTrace;
|
|
30
|
-
/**
|
|
31
|
-
* Calculate confidence score from signals
|
|
32
|
-
*/
|
|
33
|
-
private calculateConfidence;
|
|
34
|
-
/**
|
|
35
|
-
* Classify error type based on signals and content
|
|
36
|
-
*/
|
|
37
|
-
private classifyErrorType;
|
|
38
|
-
/**
|
|
39
|
-
* Determine severity from signals and exit code
|
|
40
|
-
*/
|
|
41
|
-
private determineSeverity;
|
|
42
|
-
/**
|
|
43
|
-
* Extract error message and stack from output
|
|
44
|
-
*/
|
|
45
|
-
private extractErrorDetails;
|
|
46
|
-
/**
|
|
47
|
-
* Check if a line looks like an error message
|
|
48
|
-
*/
|
|
49
|
-
private isErrorLine;
|
|
50
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Create an ErrorDetector instance
|
|
15
|
+
* Factory function pattern to avoid ES6 class issues with Bun
|
|
16
|
+
*/
|
|
17
|
+
export declare function createErrorDetector(privacyFilter?: PrivacyFilter): ErrorDetector;
|
|
18
|
+
/**
|
|
19
|
+
* Legacy class wrapper for backwards compatibility
|
|
20
|
+
* @deprecated Use createErrorDetector() instead
|
|
21
|
+
*/
|
|
22
|
+
export declare const ErrorDetector: {
|
|
23
|
+
create: typeof createErrorDetector;
|
|
24
|
+
};
|
|
51
25
|
export declare const defaultErrorDetector: ErrorDetector;
|
|
52
26
|
//# sourceMappingURL=error-detector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-detector.d.ts","sourceRoot":"","sources":["../../src/core/error-detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAIV,oBAAoB,EAEpB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,
|
|
1
|
+
{"version":3,"file":"error-detector.d.ts","sourceRoot":"","sources":["../../src/core/error-detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAIV,oBAAoB,EAEpB,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAsG9E;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,oBAAoB,CAAC;CACtD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,aAAa,CA8PhF;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa;;CAEzB,CAAC;AAGF,eAAO,MAAM,oBAAoB,eAAwB,CAAC"}
|
|
@@ -4,38 +4,27 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { PrivacyFilterRule, SanitizedContent, FilterContext } from '../types/index.js';
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
8
|
-
* Applies multiple filtering rules to sanitize sensitive content
|
|
7
|
+
* PrivacyFilter interface - defines all public methods
|
|
9
8
|
*/
|
|
10
|
-
export
|
|
11
|
-
private rules;
|
|
12
|
-
constructor(customRules?: PrivacyFilterRule[]);
|
|
13
|
-
/**
|
|
14
|
-
* Sanitize content by applying all filter rules
|
|
15
|
-
*/
|
|
9
|
+
export interface PrivacyFilter {
|
|
16
10
|
sanitize(content: string, context?: FilterContext): SanitizedContent;
|
|
17
|
-
/**
|
|
18
|
-
* Generalize file paths while keeping meaningful structure
|
|
19
|
-
*/
|
|
20
|
-
private generalizePaths;
|
|
21
|
-
/**
|
|
22
|
-
* Add a custom filter rule
|
|
23
|
-
*/
|
|
24
11
|
addRule(rule: PrivacyFilterRule): void;
|
|
25
|
-
/**
|
|
26
|
-
* Remove a filter rule by name
|
|
27
|
-
*/
|
|
28
12
|
removeRule(name: string): boolean;
|
|
29
|
-
/**
|
|
30
|
-
* Get all current rules
|
|
31
|
-
*/
|
|
32
13
|
getRules(): ReadonlyArray<PrivacyFilterRule>;
|
|
33
|
-
/**
|
|
34
|
-
* Check if content contains sensitive data
|
|
35
|
-
* Note: Always reset regex lastIndex BEFORE testing to prevent state pollution
|
|
36
|
-
*/
|
|
37
14
|
containsSensitiveData(content: string): boolean;
|
|
38
15
|
}
|
|
16
|
+
/**
|
|
17
|
+
* Create a PrivacyFilter instance
|
|
18
|
+
* Factory function pattern to avoid ES6 class issues with Bun
|
|
19
|
+
*/
|
|
20
|
+
export declare function createPrivacyFilter(customRules?: PrivacyFilterRule[]): PrivacyFilter;
|
|
21
|
+
/**
|
|
22
|
+
* Legacy class wrapper for backwards compatibility
|
|
23
|
+
* @deprecated Use createPrivacyFilter() instead
|
|
24
|
+
*/
|
|
25
|
+
export declare const PrivacyFilter: {
|
|
26
|
+
create: typeof createPrivacyFilter;
|
|
27
|
+
};
|
|
39
28
|
/**
|
|
40
29
|
* Create default filter context from project directory
|
|
41
30
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"privacy-filter.d.ts","sourceRoot":"","sources":["../../src/core/privacy-filter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAwN5F
|
|
1
|
+
{"version":3,"file":"privacy-filter.d.ts","sourceRoot":"","sources":["../../src/core/privacy-filter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAwN5F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,gBAAgB,CAAC;IACrE,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACvC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,QAAQ,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC7C,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CACjD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,CAAC,EAAE,iBAAiB,EAAE,GAAG,aAAa,CAyHpF;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa;;CAEzB,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,gBAAgB,EAAE,MAAM,GAAG,aAAa,CAc3E;AAGD,eAAO,MAAM,oBAAoB,eAAwB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -24,12 +24,22 @@
|
|
|
24
24
|
* ```
|
|
25
25
|
*/
|
|
26
26
|
export { FixHivePlugin, default } from './plugin/index.js';
|
|
27
|
-
export {
|
|
28
|
-
export {
|
|
27
|
+
export { createErrorDetector, defaultErrorDetector } from './core/error-detector.js';
|
|
28
|
+
export { createPrivacyFilter, defaultPrivacyFilter, createFilterContext } from './core/privacy-filter.js';
|
|
29
29
|
export { sha256, shortHash, generateErrorFingerprint, normalizeErrorContent, generateContributorId, generateSessionHash, fingerprintsMatch, calculateStringSimilarity, } from './core/hash.js';
|
|
30
|
-
export {
|
|
30
|
+
export { createLocalStore } from './storage/local-store.js';
|
|
31
31
|
export { runMigrations } from './storage/migrations.js';
|
|
32
|
-
export {
|
|
33
|
-
export {
|
|
32
|
+
export { createCloudClient } from './cloud/client.js';
|
|
33
|
+
export { createEmbeddingService, cosineSimilarity } from './cloud/embedding.js';
|
|
34
|
+
export { ErrorDetector } from './core/error-detector.js';
|
|
35
|
+
export { PrivacyFilter } from './core/privacy-filter.js';
|
|
36
|
+
export { LocalStore } from './storage/local-store.js';
|
|
37
|
+
export { CloudClient } from './cloud/client.js';
|
|
38
|
+
export { EmbeddingService } from './cloud/embedding.js';
|
|
34
39
|
export type { ErrorType, ErrorStatus, Language, Severity, LocalErrorRecord, QueryCacheEntry, LocalStats, CloudKnowledgeEntry, DuplicateCheckResult, ContributorStats, DetectedSignal, ErrorDetectionResult, StackFrame, StackTraceInfo, FixHiveContext, ToolOutput, PrivacyFilterRule, SanitizedContent, FilterContext, SearchRequest, SearchResponse, UploadRequest, UploadResponse, QueryKnowledgeArgs, SubmitResolutionArgs, ListErrorsArgs, MarkResolvedArgs, VoteArgs, FixHiveConfig, PartialConfig, FixHiveEvent, } from './types/index.js';
|
|
40
|
+
export type { ErrorDetector as ErrorDetectorInterface } from './core/error-detector.js';
|
|
41
|
+
export type { PrivacyFilter as PrivacyFilterInterface } from './core/privacy-filter.js';
|
|
42
|
+
export type { LocalStore as LocalStoreInterface } from './storage/local-store.js';
|
|
43
|
+
export type { CloudClient as CloudClientInterface } from './cloud/client.js';
|
|
44
|
+
export type { EmbeddingService as EmbeddingServiceInterface, EmbeddingServiceConfig } from './cloud/embedding.js';
|
|
35
45
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC1G,OAAO,EACL,MAAM,EACN,SAAS,EACT,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGhF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGxD,YAAY,EAEV,SAAS,EACT,WAAW,EACX,QAAQ,EACR,QAAQ,EAGR,gBAAgB,EAChB,eAAe,EACf,UAAU,EAGV,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAGhB,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,cAAc,EAGd,cAAc,EACd,UAAU,EAGV,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EAGb,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,EAGd,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAChB,QAAQ,EAGR,aAAa,EACb,aAAa,EAGb,YAAY,GACb,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EAAE,aAAa,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACxF,YAAY,EAAE,aAAa,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACxF,YAAY,EAAE,UAAU,IAAI,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAClF,YAAY,EAAE,WAAW,IAAI,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,YAAY,EAAE,gBAAgB,IAAI,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC"}
|