driftdetect-core 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (221) hide show
  1. package/dist/analyzers/ast-analyzer.d.ts +251 -0
  2. package/dist/analyzers/ast-analyzer.d.ts.map +1 -0
  3. package/dist/analyzers/ast-analyzer.js +548 -0
  4. package/dist/analyzers/ast-analyzer.js.map +1 -0
  5. package/dist/analyzers/flow-analyzer.d.ts +241 -0
  6. package/dist/analyzers/flow-analyzer.d.ts.map +1 -0
  7. package/dist/analyzers/flow-analyzer.js +1219 -0
  8. package/dist/analyzers/flow-analyzer.js.map +1 -0
  9. package/dist/analyzers/index.d.ts +18 -0
  10. package/dist/analyzers/index.d.ts.map +1 -0
  11. package/dist/analyzers/index.js +19 -0
  12. package/dist/analyzers/index.js.map +1 -0
  13. package/dist/analyzers/semantic-analyzer.d.ts +252 -0
  14. package/dist/analyzers/semantic-analyzer.d.ts.map +1 -0
  15. package/dist/analyzers/semantic-analyzer.js +1182 -0
  16. package/dist/analyzers/semantic-analyzer.js.map +1 -0
  17. package/dist/analyzers/type-analyzer.d.ts +289 -0
  18. package/dist/analyzers/type-analyzer.d.ts.map +1 -0
  19. package/dist/analyzers/type-analyzer.js +1269 -0
  20. package/dist/analyzers/type-analyzer.js.map +1 -0
  21. package/dist/analyzers/types.d.ts +537 -0
  22. package/dist/analyzers/types.d.ts.map +1 -0
  23. package/dist/analyzers/types.js +11 -0
  24. package/dist/analyzers/types.js.map +1 -0
  25. package/dist/config/config-loader.d.ts +166 -0
  26. package/dist/config/config-loader.d.ts.map +1 -0
  27. package/dist/config/config-loader.js +429 -0
  28. package/dist/config/config-loader.js.map +1 -0
  29. package/dist/config/config-validator.d.ts +204 -0
  30. package/dist/config/config-validator.d.ts.map +1 -0
  31. package/dist/config/config-validator.js +632 -0
  32. package/dist/config/config-validator.js.map +1 -0
  33. package/dist/config/defaults.d.ts +8 -0
  34. package/dist/config/defaults.d.ts.map +1 -0
  35. package/dist/config/defaults.js +26 -0
  36. package/dist/config/defaults.js.map +1 -0
  37. package/dist/config/index.d.ts +10 -0
  38. package/dist/config/index.d.ts.map +1 -0
  39. package/dist/config/index.js +10 -0
  40. package/dist/config/index.js.map +1 -0
  41. package/dist/config/types.d.ts +47 -0
  42. package/dist/config/types.d.ts.map +1 -0
  43. package/dist/config/types.js +7 -0
  44. package/dist/config/types.js.map +1 -0
  45. package/dist/index.d.ts +37 -0
  46. package/dist/index.d.ts.map +1 -0
  47. package/dist/index.js +39 -0
  48. package/dist/index.js.map +1 -0
  49. package/dist/manifest/exporter.d.ts +21 -0
  50. package/dist/manifest/exporter.d.ts.map +1 -0
  51. package/dist/manifest/exporter.js +339 -0
  52. package/dist/manifest/exporter.js.map +1 -0
  53. package/dist/manifest/index.d.ts +14 -0
  54. package/dist/manifest/index.d.ts.map +1 -0
  55. package/dist/manifest/index.js +15 -0
  56. package/dist/manifest/index.js.map +1 -0
  57. package/dist/manifest/manifest-store.d.ts +111 -0
  58. package/dist/manifest/manifest-store.d.ts.map +1 -0
  59. package/dist/manifest/manifest-store.js +418 -0
  60. package/dist/manifest/manifest-store.js.map +1 -0
  61. package/dist/manifest/types.d.ts +238 -0
  62. package/dist/manifest/types.d.ts.map +1 -0
  63. package/dist/manifest/types.js +11 -0
  64. package/dist/manifest/types.js.map +1 -0
  65. package/dist/matcher/confidence-scorer.d.ts +188 -0
  66. package/dist/matcher/confidence-scorer.d.ts.map +1 -0
  67. package/dist/matcher/confidence-scorer.js +302 -0
  68. package/dist/matcher/confidence-scorer.js.map +1 -0
  69. package/dist/matcher/index.d.ts +24 -0
  70. package/dist/matcher/index.d.ts.map +1 -0
  71. package/dist/matcher/index.js +26 -0
  72. package/dist/matcher/index.js.map +1 -0
  73. package/dist/matcher/outlier-detector.d.ts +252 -0
  74. package/dist/matcher/outlier-detector.d.ts.map +1 -0
  75. package/dist/matcher/outlier-detector.js +544 -0
  76. package/dist/matcher/outlier-detector.js.map +1 -0
  77. package/dist/matcher/pattern-matcher.d.ts +169 -0
  78. package/dist/matcher/pattern-matcher.d.ts.map +1 -0
  79. package/dist/matcher/pattern-matcher.js +692 -0
  80. package/dist/matcher/pattern-matcher.js.map +1 -0
  81. package/dist/matcher/types.d.ts +476 -0
  82. package/dist/matcher/types.d.ts.map +1 -0
  83. package/dist/matcher/types.js +36 -0
  84. package/dist/matcher/types.js.map +1 -0
  85. package/dist/parsers/base-parser.d.ts +282 -0
  86. package/dist/parsers/base-parser.d.ts.map +1 -0
  87. package/dist/parsers/base-parser.js +421 -0
  88. package/dist/parsers/base-parser.js.map +1 -0
  89. package/dist/parsers/css-parser.d.ts +225 -0
  90. package/dist/parsers/css-parser.d.ts.map +1 -0
  91. package/dist/parsers/css-parser.js +477 -0
  92. package/dist/parsers/css-parser.js.map +1 -0
  93. package/dist/parsers/index.d.ts +15 -0
  94. package/dist/parsers/index.d.ts.map +1 -0
  95. package/dist/parsers/index.js +15 -0
  96. package/dist/parsers/index.js.map +1 -0
  97. package/dist/parsers/json-parser.d.ts +219 -0
  98. package/dist/parsers/json-parser.d.ts.map +1 -0
  99. package/dist/parsers/json-parser.js +602 -0
  100. package/dist/parsers/json-parser.js.map +1 -0
  101. package/dist/parsers/markdown-parser.d.ts +276 -0
  102. package/dist/parsers/markdown-parser.d.ts.map +1 -0
  103. package/dist/parsers/markdown-parser.js +731 -0
  104. package/dist/parsers/markdown-parser.js.map +1 -0
  105. package/dist/parsers/parser-manager.d.ts +294 -0
  106. package/dist/parsers/parser-manager.d.ts.map +1 -0
  107. package/dist/parsers/parser-manager.js +738 -0
  108. package/dist/parsers/parser-manager.js.map +1 -0
  109. package/dist/parsers/python-parser.d.ts +204 -0
  110. package/dist/parsers/python-parser.d.ts.map +1 -0
  111. package/dist/parsers/python-parser.js +517 -0
  112. package/dist/parsers/python-parser.js.map +1 -0
  113. package/dist/parsers/types.d.ts +43 -0
  114. package/dist/parsers/types.d.ts.map +1 -0
  115. package/dist/parsers/types.js +7 -0
  116. package/dist/parsers/types.js.map +1 -0
  117. package/dist/parsers/typescript-parser.d.ts +264 -0
  118. package/dist/parsers/typescript-parser.d.ts.map +1 -0
  119. package/dist/parsers/typescript-parser.js +658 -0
  120. package/dist/parsers/typescript-parser.js.map +1 -0
  121. package/dist/rules/evaluator.d.ts +305 -0
  122. package/dist/rules/evaluator.d.ts.map +1 -0
  123. package/dist/rules/evaluator.js +579 -0
  124. package/dist/rules/evaluator.js.map +1 -0
  125. package/dist/rules/index.d.ts +13 -0
  126. package/dist/rules/index.d.ts.map +1 -0
  127. package/dist/rules/index.js +13 -0
  128. package/dist/rules/index.js.map +1 -0
  129. package/dist/rules/quick-fix-generator.d.ts +334 -0
  130. package/dist/rules/quick-fix-generator.d.ts.map +1 -0
  131. package/dist/rules/quick-fix-generator.js +1075 -0
  132. package/dist/rules/quick-fix-generator.js.map +1 -0
  133. package/dist/rules/rule-engine.d.ts +241 -0
  134. package/dist/rules/rule-engine.d.ts.map +1 -0
  135. package/dist/rules/rule-engine.js +585 -0
  136. package/dist/rules/rule-engine.js.map +1 -0
  137. package/dist/rules/severity-manager.d.ts +394 -0
  138. package/dist/rules/severity-manager.d.ts.map +1 -0
  139. package/dist/rules/severity-manager.js +619 -0
  140. package/dist/rules/severity-manager.js.map +1 -0
  141. package/dist/rules/types.d.ts +370 -0
  142. package/dist/rules/types.d.ts.map +1 -0
  143. package/dist/rules/types.js +133 -0
  144. package/dist/rules/types.js.map +1 -0
  145. package/dist/rules/variant-manager.d.ts +388 -0
  146. package/dist/rules/variant-manager.d.ts.map +1 -0
  147. package/dist/rules/variant-manager.js +777 -0
  148. package/dist/rules/variant-manager.js.map +1 -0
  149. package/dist/scanner/change-detector.d.ts +164 -0
  150. package/dist/scanner/change-detector.d.ts.map +1 -0
  151. package/dist/scanner/change-detector.js +263 -0
  152. package/dist/scanner/change-detector.js.map +1 -0
  153. package/dist/scanner/dependency-graph.d.ts +270 -0
  154. package/dist/scanner/dependency-graph.d.ts.map +1 -0
  155. package/dist/scanner/dependency-graph.js +436 -0
  156. package/dist/scanner/dependency-graph.js.map +1 -0
  157. package/dist/scanner/file-walker.d.ts +127 -0
  158. package/dist/scanner/file-walker.d.ts.map +1 -0
  159. package/dist/scanner/file-walker.js +526 -0
  160. package/dist/scanner/file-walker.js.map +1 -0
  161. package/dist/scanner/index.d.ts +12 -0
  162. package/dist/scanner/index.d.ts.map +1 -0
  163. package/dist/scanner/index.js +12 -0
  164. package/dist/scanner/index.js.map +1 -0
  165. package/dist/scanner/types.d.ts +218 -0
  166. package/dist/scanner/types.d.ts.map +1 -0
  167. package/dist/scanner/types.js +10 -0
  168. package/dist/scanner/types.js.map +1 -0
  169. package/dist/scanner/worker-pool.d.ts +317 -0
  170. package/dist/scanner/worker-pool.d.ts.map +1 -0
  171. package/dist/scanner/worker-pool.js +571 -0
  172. package/dist/scanner/worker-pool.js.map +1 -0
  173. package/dist/store/cache-manager.d.ts +179 -0
  174. package/dist/store/cache-manager.d.ts.map +1 -0
  175. package/dist/store/cache-manager.js +391 -0
  176. package/dist/store/cache-manager.js.map +1 -0
  177. package/dist/store/history-store.d.ts +314 -0
  178. package/dist/store/history-store.d.ts.map +1 -0
  179. package/dist/store/history-store.js +707 -0
  180. package/dist/store/history-store.js.map +1 -0
  181. package/dist/store/index.d.ts +20 -0
  182. package/dist/store/index.d.ts.map +1 -0
  183. package/dist/store/index.js +26 -0
  184. package/dist/store/index.js.map +1 -0
  185. package/dist/store/lock-file-manager.d.ts +202 -0
  186. package/dist/store/lock-file-manager.d.ts.map +1 -0
  187. package/dist/store/lock-file-manager.js +475 -0
  188. package/dist/store/lock-file-manager.js.map +1 -0
  189. package/dist/store/pattern-store.d.ts +289 -0
  190. package/dist/store/pattern-store.d.ts.map +1 -0
  191. package/dist/store/pattern-store.js +936 -0
  192. package/dist/store/pattern-store.js.map +1 -0
  193. package/dist/store/schema-validator.d.ts +159 -0
  194. package/dist/store/schema-validator.d.ts.map +1 -0
  195. package/dist/store/schema-validator.js +1096 -0
  196. package/dist/store/schema-validator.js.map +1 -0
  197. package/dist/store/types.d.ts +585 -0
  198. package/dist/store/types.d.ts.map +1 -0
  199. package/dist/store/types.js +82 -0
  200. package/dist/store/types.js.map +1 -0
  201. package/dist/types/analysis.d.ts +19 -0
  202. package/dist/types/analysis.d.ts.map +1 -0
  203. package/dist/types/analysis.js +5 -0
  204. package/dist/types/analysis.js.map +1 -0
  205. package/dist/types/common.d.ts +7 -0
  206. package/dist/types/common.d.ts.map +1 -0
  207. package/dist/types/common.js +5 -0
  208. package/dist/types/common.js.map +1 -0
  209. package/dist/types/index.d.ts +12 -0
  210. package/dist/types/index.d.ts.map +1 -0
  211. package/dist/types/index.js +10 -0
  212. package/dist/types/index.js.map +1 -0
  213. package/dist/types/patterns.d.ts +40 -0
  214. package/dist/types/patterns.d.ts.map +1 -0
  215. package/dist/types/patterns.js +7 -0
  216. package/dist/types/patterns.js.map +1 -0
  217. package/dist/types/violations.d.ts +7 -0
  218. package/dist/types/violations.d.ts.map +1 -0
  219. package/dist/types/violations.js +7 -0
  220. package/dist/types/violations.js.map +1 -0
  221. package/package.json +46 -0
@@ -0,0 +1,276 @@
1
+ /**
2
+ * Markdown Parser - Markdown/MDX parsing for AST extraction
3
+ *
4
+ * Extracts headings, code blocks, links, images, lists, blockquotes,
5
+ * and front matter from Markdown files using regex-based parsing.
6
+ *
7
+ * @requirements 3.2
8
+ */
9
+ import { BaseParser } from './base-parser.js';
10
+ import type { AST, ASTNode, Language, ParseResult, Position } from './types.js';
11
+ /**
12
+ * Heading levels (h1-h6)
13
+ */
14
+ export type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
15
+ /**
16
+ * Information about a Markdown heading
17
+ */
18
+ export interface MarkdownHeadingInfo {
19
+ /** Heading level (1-6) */
20
+ level: HeadingLevel;
21
+ /** Heading text content */
22
+ text: string;
23
+ /** Generated slug/anchor ID */
24
+ slug: string;
25
+ /** Start position */
26
+ startPosition: Position;
27
+ /** End position */
28
+ endPosition: Position;
29
+ }
30
+ /**
31
+ * Information about a code block
32
+ */
33
+ export interface MarkdownCodeBlockInfo {
34
+ /** Language identifier (e.g., 'typescript', 'python') */
35
+ language: string | null;
36
+ /** Code content */
37
+ content: string;
38
+ /** Whether this is an inline code span */
39
+ isInline: boolean;
40
+ /** Meta string after language (e.g., 'title="example.ts"') */
41
+ meta: string | null;
42
+ /** Start position */
43
+ startPosition: Position;
44
+ /** End position */
45
+ endPosition: Position;
46
+ }
47
+ /**
48
+ * Link types in Markdown
49
+ */
50
+ export type LinkType = 'inline' | 'reference' | 'autolink';
51
+ /**
52
+ * Information about a Markdown link
53
+ */
54
+ export interface MarkdownLinkInfo {
55
+ /** Link text/label */
56
+ text: string;
57
+ /** Link URL/href */
58
+ url: string;
59
+ /** Link title (optional) */
60
+ title: string | null;
61
+ /** Type of link */
62
+ type: LinkType;
63
+ /** Reference ID for reference-style links */
64
+ referenceId: string | null;
65
+ /** Start position */
66
+ startPosition: Position;
67
+ /** End position */
68
+ endPosition: Position;
69
+ }
70
+ /**
71
+ * Information about a Markdown image
72
+ */
73
+ export interface MarkdownImageInfo {
74
+ /** Alt text */
75
+ alt: string;
76
+ /** Image URL/src */
77
+ url: string;
78
+ /** Image title (optional) */
79
+ title: string | null;
80
+ /** Start position */
81
+ startPosition: Position;
82
+ /** End position */
83
+ endPosition: Position;
84
+ }
85
+ /**
86
+ * List types in Markdown
87
+ */
88
+ export type ListType = 'ordered' | 'unordered';
89
+ /**
90
+ * Information about a Markdown list
91
+ */
92
+ export interface MarkdownListInfo {
93
+ /** Type of list */
94
+ type: ListType;
95
+ /** List items */
96
+ items: MarkdownListItemInfo[];
97
+ /** Nesting depth (0 = top level) */
98
+ depth: number;
99
+ /** Start position */
100
+ startPosition: Position;
101
+ /** End position */
102
+ endPosition: Position;
103
+ }
104
+ /**
105
+ * Information about a list item
106
+ */
107
+ export interface MarkdownListItemInfo {
108
+ /** Item text content */
109
+ text: string;
110
+ /** Whether this is a task list item */
111
+ isTask: boolean;
112
+ /** Task completion status (null if not a task) */
113
+ isChecked: boolean | null;
114
+ /** Start position */
115
+ startPosition: Position;
116
+ /** End position */
117
+ endPosition: Position;
118
+ }
119
+ /**
120
+ * Information about a blockquote
121
+ */
122
+ export interface MarkdownBlockquoteInfo {
123
+ /** Blockquote content */
124
+ content: string;
125
+ /** Nesting depth (1 = single >) */
126
+ depth: number;
127
+ /** Start position */
128
+ startPosition: Position;
129
+ /** End position */
130
+ endPosition: Position;
131
+ }
132
+ /**
133
+ * Information about front matter (YAML)
134
+ */
135
+ export interface MarkdownFrontMatterInfo {
136
+ /** Raw YAML content */
137
+ raw: string;
138
+ /** Parsed key-value pairs */
139
+ data: Record<string, unknown>;
140
+ /** Start position */
141
+ startPosition: Position;
142
+ /** End position */
143
+ endPosition: Position;
144
+ }
145
+ /**
146
+ * Extended parse result with Markdown-specific information
147
+ */
148
+ export interface MarkdownParseResult extends ParseResult {
149
+ /** Extracted headings */
150
+ headings: MarkdownHeadingInfo[];
151
+ /** Extracted code blocks */
152
+ codeBlocks: MarkdownCodeBlockInfo[];
153
+ /** Extracted links */
154
+ links: MarkdownLinkInfo[];
155
+ /** Extracted images */
156
+ images: MarkdownImageInfo[];
157
+ /** Extracted lists */
158
+ lists: MarkdownListInfo[];
159
+ /** Extracted blockquotes */
160
+ blockquotes: MarkdownBlockquoteInfo[];
161
+ /** Front matter if present */
162
+ frontMatter: MarkdownFrontMatterInfo | null;
163
+ }
164
+ /**
165
+ * Markdown/MDX parser using regex-based parsing.
166
+ *
167
+ * Provides AST parsing and extraction of headings, code blocks,
168
+ * links, images, lists, blockquotes, and front matter from
169
+ * Markdown source files.
170
+ *
171
+ * @requirements 3.2 - Support Markdown parsing
172
+ * @requirements 3.3 - Graceful degradation on parse errors
173
+ */
174
+ export declare class MarkdownParser extends BaseParser {
175
+ readonly language: Language;
176
+ readonly extensions: string[];
177
+ /**
178
+ * Parse Markdown source code into an AST.
179
+ *
180
+ * @param source - The source code to parse
181
+ * @param filePath - Optional file path for error reporting
182
+ * @returns MarkdownParseResult containing the AST and extracted information
183
+ *
184
+ * @requirements 3.2, 3.3
185
+ */
186
+ parse(source: string, _filePath?: string): MarkdownParseResult;
187
+ /**
188
+ * Query the AST for nodes matching a pattern.
189
+ *
190
+ * Supports querying by node type (e.g., 'Heading', 'CodeBlock', 'Link', 'Image').
191
+ *
192
+ * @param ast - The AST to query
193
+ * @param pattern - The node type to search for
194
+ * @returns Array of matching AST nodes
195
+ *
196
+ * @requirements 3.5
197
+ */
198
+ query(ast: AST, pattern: string): ASTNode[];
199
+ /**
200
+ * Extract YAML front matter from the start of the document.
201
+ */
202
+ private extractFrontMatter;
203
+ /**
204
+ * Parse simple YAML key-value pairs.
205
+ */
206
+ private parseSimpleYaml;
207
+ /**
208
+ * Extract all headings from Markdown source.
209
+ */
210
+ private extractHeadings;
211
+ /**
212
+ * Generate a URL-friendly slug from heading text.
213
+ */
214
+ private generateSlug;
215
+ /**
216
+ * Extract all code blocks from Markdown source.
217
+ */
218
+ private extractCodeBlocks;
219
+ /**
220
+ * Extract all links from Markdown source.
221
+ */
222
+ private extractLinks;
223
+ /**
224
+ * Find a link reference definition.
225
+ */
226
+ private findLinkReference;
227
+ /**
228
+ * Extract all images from Markdown source.
229
+ */
230
+ private extractImages;
231
+ /**
232
+ * Extract all lists from Markdown source.
233
+ */
234
+ private extractLists;
235
+ /**
236
+ * Extract all blockquotes from Markdown source.
237
+ */
238
+ private extractBlockquotes;
239
+ /**
240
+ * Create an AST node for front matter.
241
+ */
242
+ private createFrontMatterNode;
243
+ /**
244
+ * Create an AST node for a heading.
245
+ */
246
+ private createHeadingNode;
247
+ /**
248
+ * Create an AST node for a code block.
249
+ */
250
+ private createCodeBlockNode;
251
+ /**
252
+ * Create an AST node for a link.
253
+ */
254
+ private createLinkNode;
255
+ /**
256
+ * Create an AST node for an image.
257
+ */
258
+ private createImageNode;
259
+ /**
260
+ * Create an AST node for a list.
261
+ */
262
+ private createListNode;
263
+ /**
264
+ * Create an AST node for a blockquote.
265
+ */
266
+ private createBlockquoteNode;
267
+ /**
268
+ * Get the line number for a character offset.
269
+ */
270
+ private getLineNumber;
271
+ /**
272
+ * Get the column number for a character offset.
273
+ */
274
+ private getColumnNumber;
275
+ }
276
+ //# sourceMappingURL=markdown-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/markdown-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEhF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,KAAK,EAAE,YAAY,CAAC;IACpB,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,aAAa,EAAE,QAAQ,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,yDAAyD;IACzD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,QAAQ,EAAE,OAAO,CAAC;IAClB,8DAA8D;IAC9D,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,qBAAqB;IACrB,aAAa,EAAE,QAAQ,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,sBAAsB;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,4BAA4B;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,mBAAmB;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,6CAA6C;IAC7C,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,qBAAqB;IACrB,aAAa,EAAE,QAAQ,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,eAAe;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,6BAA6B;IAC7B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,qBAAqB;IACrB,aAAa,EAAE,QAAQ,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mBAAmB;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,iBAAiB;IACjB,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,aAAa,EAAE,QAAQ,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,MAAM,EAAE,OAAO,CAAC;IAChB,kDAAkD;IAClD,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,qBAAqB;IACrB,aAAa,EAAE,QAAQ,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,aAAa,EAAE,QAAQ,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,qBAAqB;IACrB,aAAa,EAAE,QAAQ,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,QAAQ,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,yBAAyB;IACzB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,4BAA4B;IAC5B,UAAU,EAAE,qBAAqB,EAAE,CAAC;IACpC,sBAAsB;IACtB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,uBAAuB;IACvB,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,sBAAsB;IACtB,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,4BAA4B;IAC5B,WAAW,EAAE,sBAAsB,EAAE,CAAC;IACtC,8BAA8B;IAC9B,WAAW,EAAE,uBAAuB,GAAG,IAAI,CAAC;CAC7C;AAED;;;;;;;;;GASG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAc;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAgC;IAE7D;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,mBAAmB;IAkG9D;;;;;;;;;;OAUG;IACH,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE;IAQ3C;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqC1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAsCvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAsDvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAapB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmHzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAoEpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAkDrB;;OAEG;IACH,OAAO,CAAC,YAAY;IA6FpB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgE1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAU7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAUzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA0B3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAc5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAUrB;;OAEG;IACH,OAAO,CAAC,eAAe;CAOxB"}