@skillsmith/core 2.1.0 → 2.1.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.
Files changed (204) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/src/analysis/types.d.ts +2 -0
  3. package/dist/src/analysis/types.d.ts.map +1 -1
  4. package/dist/src/analysis/types.js +13 -1
  5. package/dist/src/analysis/types.js.map +1 -1
  6. package/dist/src/analytics/AnalyticsRepository.d.ts +4 -0
  7. package/dist/src/analytics/AnalyticsRepository.d.ts.map +1 -1
  8. package/dist/src/analytics/AnalyticsRepository.js +26 -44
  9. package/dist/src/analytics/AnalyticsRepository.js.map +1 -1
  10. package/dist/src/analytics/schema.d.ts +1 -1
  11. package/dist/src/analytics/schema.d.ts.map +1 -1
  12. package/dist/src/analytics/schema.js +68 -0
  13. package/dist/src/analytics/schema.js.map +1 -1
  14. package/dist/src/api/client.d.ts +33 -29
  15. package/dist/src/api/client.d.ts.map +1 -1
  16. package/dist/src/api/client.js +15 -10
  17. package/dist/src/api/client.js.map +1 -1
  18. package/dist/src/billing/BillingService.d.ts +139 -0
  19. package/dist/src/billing/BillingService.d.ts.map +1 -0
  20. package/dist/src/billing/BillingService.js +393 -0
  21. package/dist/src/billing/BillingService.js.map +1 -0
  22. package/dist/src/billing/GDPRComplianceService.d.ts +176 -0
  23. package/dist/src/billing/GDPRComplianceService.d.ts.map +1 -0
  24. package/dist/src/billing/GDPRComplianceService.js +361 -0
  25. package/dist/src/billing/GDPRComplianceService.js.map +1 -0
  26. package/dist/src/billing/StripeClient.d.ts +177 -0
  27. package/dist/src/billing/StripeClient.d.ts.map +1 -0
  28. package/dist/src/billing/StripeClient.js +462 -0
  29. package/dist/src/billing/StripeClient.js.map +1 -0
  30. package/dist/src/billing/StripeReconciliationJob.d.ts +95 -0
  31. package/dist/src/billing/StripeReconciliationJob.d.ts.map +1 -0
  32. package/dist/src/billing/StripeReconciliationJob.js +405 -0
  33. package/dist/src/billing/StripeReconciliationJob.js.map +1 -0
  34. package/dist/src/billing/StripeWebhookHandler.d.ts +92 -0
  35. package/dist/src/billing/StripeWebhookHandler.d.ts.map +1 -0
  36. package/dist/src/billing/StripeWebhookHandler.js +409 -0
  37. package/dist/src/billing/StripeWebhookHandler.js.map +1 -0
  38. package/dist/src/billing/index.d.ts +18 -0
  39. package/dist/src/billing/index.d.ts.map +1 -0
  40. package/dist/src/billing/index.js +19 -0
  41. package/dist/src/billing/index.js.map +1 -0
  42. package/dist/src/billing/types.d.ts +266 -0
  43. package/dist/src/billing/types.d.ts.map +1 -0
  44. package/dist/src/billing/types.js +23 -0
  45. package/dist/src/billing/types.js.map +1 -0
  46. package/dist/src/embeddings/hnsw-store.d.ts +568 -0
  47. package/dist/src/embeddings/hnsw-store.d.ts.map +1 -0
  48. package/dist/src/embeddings/hnsw-store.js +805 -0
  49. package/dist/src/embeddings/hnsw-store.js.map +1 -0
  50. package/dist/src/embeddings/index.d.ts +2 -0
  51. package/dist/src/embeddings/index.d.ts.map +1 -1
  52. package/dist/src/embeddings/index.js +2 -0
  53. package/dist/src/embeddings/index.js.map +1 -1
  54. package/dist/src/index.d.ts +1 -0
  55. package/dist/src/index.d.ts.map +1 -1
  56. package/dist/src/index.js +2 -0
  57. package/dist/src/index.js.map +1 -1
  58. package/dist/src/learning/PatternStore.d.ts +457 -0
  59. package/dist/src/learning/PatternStore.d.ts.map +1 -0
  60. package/dist/src/learning/PatternStore.js +893 -0
  61. package/dist/src/learning/PatternStore.js.map +1 -0
  62. package/dist/src/learning/ReasoningBankIntegration.d.ts +403 -0
  63. package/dist/src/learning/ReasoningBankIntegration.d.ts.map +1 -0
  64. package/dist/src/learning/ReasoningBankIntegration.js +627 -0
  65. package/dist/src/learning/ReasoningBankIntegration.js.map +1 -0
  66. package/dist/src/learning/index.d.ts +15 -0
  67. package/dist/src/learning/index.d.ts.map +1 -0
  68. package/dist/src/learning/index.js +15 -0
  69. package/dist/src/learning/index.js.map +1 -0
  70. package/dist/src/routing/SONARouter.d.ts +154 -0
  71. package/dist/src/routing/SONARouter.d.ts.map +1 -0
  72. package/dist/src/routing/SONARouter.js +679 -0
  73. package/dist/src/routing/SONARouter.js.map +1 -0
  74. package/dist/src/routing/index.d.ts +9 -0
  75. package/dist/src/routing/index.d.ts.map +1 -0
  76. package/dist/src/routing/index.js +10 -0
  77. package/dist/src/routing/index.js.map +1 -0
  78. package/dist/src/routing/types.d.ts +331 -0
  79. package/dist/src/routing/types.d.ts.map +1 -0
  80. package/dist/src/routing/types.js +203 -0
  81. package/dist/src/routing/types.js.map +1 -0
  82. package/dist/src/scripts/__tests__/scan-imported-skills.test.js +5 -0
  83. package/dist/src/scripts/__tests__/scan-imported-skills.test.js.map +1 -1
  84. package/dist/src/security/SkillSandbox.d.ts +156 -0
  85. package/dist/src/security/SkillSandbox.d.ts.map +1 -0
  86. package/dist/src/security/SkillSandbox.js +303 -0
  87. package/dist/src/security/SkillSandbox.js.map +1 -0
  88. package/dist/src/security/index.d.ts +3 -1
  89. package/dist/src/security/index.d.ts.map +1 -1
  90. package/dist/src/security/index.js +5 -1
  91. package/dist/src/security/index.js.map +1 -1
  92. package/dist/src/security/rate-limiter/presets.d.ts +12 -0
  93. package/dist/src/security/rate-limiter/presets.d.ts.map +1 -1
  94. package/dist/src/security/rate-limiter/presets.js +12 -0
  95. package/dist/src/security/rate-limiter/presets.js.map +1 -1
  96. package/dist/src/security/sanitization.d.ts +85 -0
  97. package/dist/src/security/sanitization.d.ts.map +1 -1
  98. package/dist/src/security/sanitization.js +133 -0
  99. package/dist/src/security/sanitization.js.map +1 -1
  100. package/dist/src/security/scanner/SecurityScanner.d.ts +23 -0
  101. package/dist/src/security/scanner/SecurityScanner.d.ts.map +1 -1
  102. package/dist/src/security/scanner/SecurityScanner.js +232 -28
  103. package/dist/src/security/scanner/SecurityScanner.js.map +1 -1
  104. package/dist/src/security/scanner/patterns.d.ts +13 -0
  105. package/dist/src/security/scanner/patterns.d.ts.map +1 -1
  106. package/dist/src/security/scanner/patterns.js +51 -0
  107. package/dist/src/security/scanner/patterns.js.map +1 -1
  108. package/dist/src/security/scanner/types.d.ts +13 -1
  109. package/dist/src/security/scanner/types.d.ts.map +1 -1
  110. package/dist/src/security/scanner/weights.d.ts.map +1 -1
  111. package/dist/src/security/scanner/weights.js +1 -0
  112. package/dist/src/security/scanner/weights.js.map +1 -1
  113. package/dist/src/session/SessionManager.d.ts +7 -0
  114. package/dist/src/session/SessionManager.d.ts.map +1 -1
  115. package/dist/src/session/SessionManager.js +117 -10
  116. package/dist/src/session/SessionManager.js.map +1 -1
  117. package/dist/src/sync/SyncEngine.d.ts.map +1 -1
  118. package/dist/src/sync/SyncEngine.js +52 -32
  119. package/dist/src/sync/SyncEngine.js.map +1 -1
  120. package/dist/src/testing/MultiLLMProvider.d.ts +374 -0
  121. package/dist/src/testing/MultiLLMProvider.d.ts.map +1 -0
  122. package/dist/src/testing/MultiLLMProvider.js +720 -0
  123. package/dist/src/testing/MultiLLMProvider.js.map +1 -0
  124. package/dist/src/testing/index.d.ts +8 -0
  125. package/dist/src/testing/index.d.ts.map +1 -0
  126. package/dist/src/testing/index.js +9 -0
  127. package/dist/src/testing/index.js.map +1 -0
  128. package/dist/src/types.d.ts +3 -0
  129. package/dist/src/types.d.ts.map +1 -1
  130. package/dist/tests/SecurityScanner.test.js +337 -1
  131. package/dist/tests/SecurityScanner.test.js.map +1 -1
  132. package/dist/tests/billing/BillingService.test.d.ts +7 -0
  133. package/dist/tests/billing/BillingService.test.d.ts.map +1 -0
  134. package/dist/tests/billing/BillingService.test.js +168 -0
  135. package/dist/tests/billing/BillingService.test.js.map +1 -0
  136. package/dist/tests/billing/GDPRCompliance.test.d.ts +7 -0
  137. package/dist/tests/billing/GDPRCompliance.test.d.ts.map +1 -0
  138. package/dist/tests/billing/GDPRCompliance.test.js +195 -0
  139. package/dist/tests/billing/GDPRCompliance.test.js.map +1 -0
  140. package/dist/tests/billing/StripeReconciliation.test.d.ts +7 -0
  141. package/dist/tests/billing/StripeReconciliation.test.d.ts.map +1 -0
  142. package/dist/tests/billing/StripeReconciliation.test.js +266 -0
  143. package/dist/tests/billing/StripeReconciliation.test.js.map +1 -0
  144. package/dist/tests/billing/stripe-validators.test.d.ts +7 -0
  145. package/dist/tests/billing/stripe-validators.test.d.ts.map +1 -0
  146. package/dist/tests/billing/stripe-validators.test.js +107 -0
  147. package/dist/tests/billing/stripe-validators.test.js.map +1 -0
  148. package/dist/tests/embeddings/hnsw-store.test.d.ts +7 -0
  149. package/dist/tests/embeddings/hnsw-store.test.d.ts.map +1 -0
  150. package/dist/tests/embeddings/hnsw-store.test.js +295 -0
  151. package/dist/tests/embeddings/hnsw-store.test.js.map +1 -0
  152. package/dist/tests/integration/neural/e2e-learning.test.d.ts +17 -0
  153. package/dist/tests/integration/neural/e2e-learning.test.d.ts.map +1 -0
  154. package/dist/tests/integration/neural/e2e-learning.test.js +238 -0
  155. package/dist/tests/integration/neural/e2e-learning.test.js.map +1 -0
  156. package/dist/tests/integration/neural/helpers.d.ts +132 -0
  157. package/dist/tests/integration/neural/helpers.d.ts.map +1 -0
  158. package/dist/tests/integration/neural/helpers.js +287 -0
  159. package/dist/tests/integration/neural/helpers.js.map +1 -0
  160. package/dist/tests/integration/neural/personalization.test.d.ts +21 -0
  161. package/dist/tests/integration/neural/personalization.test.d.ts.map +1 -0
  162. package/dist/tests/integration/neural/personalization.test.js +304 -0
  163. package/dist/tests/integration/neural/personalization.test.js.map +1 -0
  164. package/dist/tests/integration/neural/preference-learner.test.d.ts +23 -0
  165. package/dist/tests/integration/neural/preference-learner.test.d.ts.map +1 -0
  166. package/dist/tests/integration/neural/preference-learner.test.js +289 -0
  167. package/dist/tests/integration/neural/preference-learner.test.js.map +1 -0
  168. package/dist/tests/integration/neural/privacy.test.d.ts +19 -0
  169. package/dist/tests/integration/neural/privacy.test.d.ts.map +1 -0
  170. package/dist/tests/integration/neural/privacy.test.js +249 -0
  171. package/dist/tests/integration/neural/privacy.test.js.map +1 -0
  172. package/dist/tests/integration/neural/setup.d.ts +175 -0
  173. package/dist/tests/integration/neural/setup.d.ts.map +1 -0
  174. package/dist/tests/integration/neural/setup.js +487 -0
  175. package/dist/tests/integration/neural/setup.js.map +1 -0
  176. package/dist/tests/integration/neural/signal-collection.test.d.ts +21 -0
  177. package/dist/tests/integration/neural/signal-collection.test.d.ts.map +1 -0
  178. package/dist/tests/integration/neural/signal-collection.test.js +232 -0
  179. package/dist/tests/integration/neural/signal-collection.test.js.map +1 -0
  180. package/dist/tests/learning/PatternStore.test.d.ts +8 -0
  181. package/dist/tests/learning/PatternStore.test.d.ts.map +1 -0
  182. package/dist/tests/learning/PatternStore.test.js +589 -0
  183. package/dist/tests/learning/PatternStore.test.js.map +1 -0
  184. package/dist/tests/learning/ReasoningBankIntegration.test.d.ts +8 -0
  185. package/dist/tests/learning/ReasoningBankIntegration.test.d.ts.map +1 -0
  186. package/dist/tests/learning/ReasoningBankIntegration.test.js +269 -0
  187. package/dist/tests/learning/ReasoningBankIntegration.test.js.map +1 -0
  188. package/dist/tests/routing/SONARouter.test.d.ts +8 -0
  189. package/dist/tests/routing/SONARouter.test.d.ts.map +1 -0
  190. package/dist/tests/routing/SONARouter.test.js +400 -0
  191. package/dist/tests/routing/SONARouter.test.js.map +1 -0
  192. package/dist/tests/security/ContinuousSecurity.test.js +10 -12
  193. package/dist/tests/security/ContinuousSecurity.test.js.map +1 -1
  194. package/dist/tests/security/SkillSandbox.test.d.ts +8 -0
  195. package/dist/tests/security/SkillSandbox.test.d.ts.map +1 -0
  196. package/dist/tests/security/SkillSandbox.test.js +321 -0
  197. package/dist/tests/security/SkillSandbox.test.js.map +1 -0
  198. package/dist/tests/sync/SyncEngine.test.js +4 -2
  199. package/dist/tests/sync/SyncEngine.test.js.map +1 -1
  200. package/dist/tests/testing/MultiLLMProvider.test.d.ts +14 -0
  201. package/dist/tests/testing/MultiLLMProvider.test.d.ts.map +1 -0
  202. package/dist/tests/testing/MultiLLMProvider.test.js +438 -0
  203. package/dist/tests/testing/MultiLLMProvider.test.js.map +1 -0
  204. package/package.json +16 -3
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @fileoverview Learning Module Exports
3
+ * @module @skillsmith/core/learning
4
+ *
5
+ * Exports for the recommendation learning system including:
6
+ * - Signal collection and user preferences
7
+ * - ReasoningBank integration for trajectory learning
8
+ * - PatternStore with EWC++ for pattern preservation
9
+ */
10
+ export { SIGNAL_WEIGHTS, DEFAULT_LEARNING_CONFIG, COLD_START_WEIGHTS } from './types.js';
11
+ // ReasoningBank Integration (SMI-1520)
12
+ export { ReasoningBankIntegration, createReasoningBankIntegration, hasConfidentVerdict, indicatesPreference, indicatesRejection, TRAJECTORY_REWARDS, CONFIDENCE_THRESHOLDS, DEFAULT_CONFIG as DEFAULT_REASONING_BANK_CONFIG, } from './ReasoningBankIntegration.js';
13
+ // PatternStore with EWC++ (SMI-1522)
14
+ export { PatternStore, createPatternStore, FisherInformationMatrix, DEFAULT_EWC_CONFIG, DEFAULT_PATTERN_STORE_CONFIG, PATTERN_REWARDS, } from './PatternStore.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/learning/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAmBH,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAWxF,uCAAuC;AACvC,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAQlB,kBAAkB,EAClB,qBAAqB,EACrB,cAAc,IAAI,6BAA6B,GAChD,MAAM,+BAA+B,CAAA;AAEtC,qCAAqC;AACrC,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,uBAAuB,EAcvB,kBAAkB,EAClB,4BAA4B,EAC5B,eAAe,GAChB,MAAM,mBAAmB,CAAA"}
@@ -0,0 +1,154 @@
1
+ /**
2
+ * @fileoverview SONARouter - Specialized Optimized Network Architecture Router
3
+ * @module @skillsmith/core/routing/SONARouter
4
+ * @see SMI-1521: SONA routing for MCP tool optimization
5
+ *
6
+ * Routes MCP tool requests through an 8-expert MoE (Mixture of Experts)
7
+ * network to optimize tool execution based on accuracy requirements,
8
+ * latency constraints, and load distribution.
9
+ *
10
+ * Features:
11
+ * - O(1) routing decisions with LRU caching
12
+ * - V3 MoE integration with fallback to local scoring
13
+ * - Adaptive load balancing across experts
14
+ * - Health monitoring and circuit breaker patterns
15
+ * - Feature flags for gradual rollout
16
+ * - Prometheus-compatible metrics
17
+ *
18
+ * Performance targets:
19
+ * - 2.8-4.4x speed improvement
20
+ * - <5ms routing overhead (P95)
21
+ * - >60% cache hit rate
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const router = new SONARouter()
26
+ * await router.initialize()
27
+ *
28
+ * const decision = await router.route({
29
+ * requestId: 'req-123',
30
+ * tool: 'search',
31
+ * arguments: { query: 'testing skills' },
32
+ * timestamp: new Date(),
33
+ * })
34
+ *
35
+ * console.log(decision.expertId) // 'accuracy-semantic'
36
+ * console.log(decision.confidence) // 0.92
37
+ * ```
38
+ */
39
+ import type { ExpertDefinition, ExpertId, ExpertState, ExpertStatus, RoutingDecision, SONAMetrics, SONARouterConfig, ToolRequest, ToolResponse, ToolType } from './types.js';
40
+ /**
41
+ * SONARouter routes MCP tool requests through an 8-expert MoE network.
42
+ *
43
+ * The router uses a weighted scoring algorithm to select the optimal expert
44
+ * for each request based on tool-specific weight profiles and real-time
45
+ * expert health/load status.
46
+ *
47
+ * When V3 MoE integration is enabled, it leverages Claude-Flow's neural
48
+ * routing for improved accuracy. Otherwise, it uses the local scoring algorithm.
49
+ */
50
+ export declare class SONARouter {
51
+ private config;
52
+ private experts;
53
+ private expertStatus;
54
+ private cache;
55
+ private metrics;
56
+ private v3MoE;
57
+ private v3SONA;
58
+ private initialized;
59
+ private healthCheckInterval;
60
+ /**
61
+ * Create a new SONARouter instance.
62
+ *
63
+ * @param config - Router configuration
64
+ */
65
+ constructor(config?: SONARouterConfig);
66
+ /**
67
+ * Initialize the router with V3 MoE integration.
68
+ *
69
+ * Attempts to load V3 MoERouter and SONAOptimizer.
70
+ * Falls back to local scoring if V3 is unavailable.
71
+ */
72
+ initialize(): Promise<void>;
73
+ /**
74
+ * Check if router is initialized
75
+ */
76
+ isInitialized(): boolean;
77
+ /**
78
+ * Check if V3 MoE is being used
79
+ */
80
+ isUsingV3MoE(): boolean;
81
+ /**
82
+ * Shutdown the router and cleanup resources
83
+ */
84
+ shutdown(): Promise<void>;
85
+ /**
86
+ * Route a tool request to the optimal expert.
87
+ *
88
+ * @param request - Tool request to route
89
+ * @returns Routing decision with selected expert and confidence
90
+ */
91
+ route(request: ToolRequest): Promise<RoutingDecision>;
92
+ /**
93
+ * Execute a tool request with SONA routing.
94
+ *
95
+ * Routes the request, executes via the selected expert, and records outcome.
96
+ *
97
+ * @param request - Tool request to execute
98
+ * @param executor - Function to execute the tool with given expert
99
+ * @returns Tool response with execution metadata
100
+ */
101
+ executeWithRouting<T>(request: ToolRequest, executor: (expertId: ExpertId, request: ToolRequest) => Promise<T>): Promise<ToolResponse<T>>;
102
+ /**
103
+ * Get current status of all experts
104
+ */
105
+ getExpertStatus(): ExpertStatus[];
106
+ /**
107
+ * Get status of a specific expert
108
+ */
109
+ getExpert(expertId: ExpertId): ExpertDefinition | undefined;
110
+ /**
111
+ * Update expert health status
112
+ */
113
+ updateExpertHealth(expertId: ExpertId, state: ExpertState, load?: number): void;
114
+ /**
115
+ * Get current routing metrics
116
+ */
117
+ getMetrics(): Partial<SONAMetrics>;
118
+ /**
119
+ * Reset metrics
120
+ */
121
+ resetMetrics(): void;
122
+ private ensureInitialized;
123
+ private createInitialStatus;
124
+ private initializeV3MoE;
125
+ private startHealthChecks;
126
+ private runHealthChecks;
127
+ private generateCacheKey;
128
+ private hashObject;
129
+ private getEligibleExperts;
130
+ private scoreExperts;
131
+ private calculateScores;
132
+ private selectBestExpert;
133
+ private generateDecisionReason;
134
+ private generateAlternativeReason;
135
+ private createFallbackDecision;
136
+ private recordOutcome;
137
+ }
138
+ /**
139
+ * Create and initialize a SONARouter instance
140
+ */
141
+ export declare function createSONARouter(config?: SONARouterConfig): Promise<SONARouter>;
142
+ /**
143
+ * Check if SONA routing should be used for a request
144
+ */
145
+ export declare function shouldUseSONARouting(tool: ToolType, featureFlags: Record<string, boolean | number>, userTier?: string): boolean;
146
+ /**
147
+ * Check if a routing decision indicates high confidence
148
+ */
149
+ export declare function isHighConfidenceDecision(decision: RoutingDecision): boolean;
150
+ /**
151
+ * Check if a routing decision used fallback
152
+ */
153
+ export declare function usedFallback(decision: RoutingDecision): boolean;
154
+ //# sourceMappingURL=SONARouter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SONARouter.d.ts","sourceRoot":"","sources":["../../../src/routing/SONARouter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,eAAe,EAEf,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,QAAQ,EAET,MAAM,YAAY,CAAA;AAgNnB;;;;;;;;;GASG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAuE;IACrF,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,mBAAmB,CAA8C;IAEzE;;;;OAIG;gBACS,MAAM,GAAE,gBAAqB;IA2BzC;;;;;OAKG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBjC;;OAEG;IACH,aAAa,IAAI,OAAO;IAIxB;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAa/B;;;;;OAKG;IACG,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAqC3D;;;;;;;;OAQG;IACG,kBAAkB,CAAC,CAAC,EACxB,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,GACjE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAkF3B;;OAEG;IACH,eAAe,IAAI,YAAY,EAAE;IAIjC;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,gBAAgB,GAAG,SAAS;IAI3D;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAe/E;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC;IAIlC;;OAEG;IACH,YAAY,IAAI,IAAI;IAQpB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,mBAAmB;YAYb,eAAe;IAwB7B,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,YAAY;IAmBpB,OAAO,CAAC,eAAe;IAgDvB,OAAO,CAAC,gBAAgB;IAiCxB,OAAO,CAAC,sBAAsB;IAc9B,OAAO,CAAC,yBAAyB;IAIjC,OAAO,CAAC,sBAAsB;IAuB9B,OAAO,CAAC,aAAa;CAuBtB;AAMD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,CAIrF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,QAAQ,EACd,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,EAC9C,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAqBT;AAMD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAE3E;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAE/D"}