memory-journal-mcp 3.0.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 (107) hide show
  1. package/.dockerignore +88 -0
  2. package/.github/ISSUE_TEMPLATE/bug_report.md +76 -0
  3. package/.github/ISSUE_TEMPLATE/config.yml +11 -0
  4. package/.github/ISSUE_TEMPLATE/feature_request.md +89 -0
  5. package/.github/ISSUE_TEMPLATE/question.md +63 -0
  6. package/.github/dependabot.yml +110 -0
  7. package/.github/pull_request_template.md +110 -0
  8. package/.github/workflows/DOCKER_DEPLOYMENT_SETUP.md +346 -0
  9. package/.github/workflows/codeql.yml +45 -0
  10. package/.github/workflows/dependabot-auto-merge.yml +42 -0
  11. package/.github/workflows/docker-publish.yml +277 -0
  12. package/.github/workflows/lint-and-test.yml +58 -0
  13. package/.github/workflows/publish-npm.yml +75 -0
  14. package/.github/workflows/secrets-scanning.yml +32 -0
  15. package/.github/workflows/security-update.yml +99 -0
  16. package/.memory-journal-team.db +0 -0
  17. package/.trivyignore +18 -0
  18. package/CHANGELOG.md +19 -0
  19. package/CODE_OF_CONDUCT.md +128 -0
  20. package/CONTRIBUTING.md +209 -0
  21. package/DOCKER_README.md +377 -0
  22. package/Dockerfile +64 -0
  23. package/LICENSE +21 -0
  24. package/README.md +461 -0
  25. package/SECURITY.md +200 -0
  26. package/VERSION +1 -0
  27. package/dist/cli.d.ts +5 -0
  28. package/dist/cli.d.ts.map +1 -0
  29. package/dist/cli.js +42 -0
  30. package/dist/cli.js.map +1 -0
  31. package/dist/constants/ServerInstructions.d.ts +8 -0
  32. package/dist/constants/ServerInstructions.d.ts.map +1 -0
  33. package/dist/constants/ServerInstructions.js +26 -0
  34. package/dist/constants/ServerInstructions.js.map +1 -0
  35. package/dist/database/SqliteAdapter.d.ts +198 -0
  36. package/dist/database/SqliteAdapter.d.ts.map +1 -0
  37. package/dist/database/SqliteAdapter.js +736 -0
  38. package/dist/database/SqliteAdapter.js.map +1 -0
  39. package/dist/filtering/ToolFilter.d.ts +63 -0
  40. package/dist/filtering/ToolFilter.d.ts.map +1 -0
  41. package/dist/filtering/ToolFilter.js +242 -0
  42. package/dist/filtering/ToolFilter.js.map +1 -0
  43. package/dist/github/GitHubIntegration.d.ts +91 -0
  44. package/dist/github/GitHubIntegration.d.ts.map +1 -0
  45. package/dist/github/GitHubIntegration.js +317 -0
  46. package/dist/github/GitHubIntegration.js.map +1 -0
  47. package/dist/handlers/prompts/index.d.ts +28 -0
  48. package/dist/handlers/prompts/index.d.ts.map +1 -0
  49. package/dist/handlers/prompts/index.js +366 -0
  50. package/dist/handlers/prompts/index.js.map +1 -0
  51. package/dist/handlers/resources/index.d.ts +27 -0
  52. package/dist/handlers/resources/index.d.ts.map +1 -0
  53. package/dist/handlers/resources/index.js +453 -0
  54. package/dist/handlers/resources/index.js.map +1 -0
  55. package/dist/handlers/tools/index.d.ts +26 -0
  56. package/dist/handlers/tools/index.d.ts.map +1 -0
  57. package/dist/handlers/tools/index.js +982 -0
  58. package/dist/handlers/tools/index.js.map +1 -0
  59. package/dist/index.d.ts +11 -0
  60. package/dist/index.d.ts.map +1 -0
  61. package/dist/index.js +13 -0
  62. package/dist/index.js.map +1 -0
  63. package/dist/server/McpServer.d.ts +18 -0
  64. package/dist/server/McpServer.d.ts.map +1 -0
  65. package/dist/server/McpServer.js +171 -0
  66. package/dist/server/McpServer.js.map +1 -0
  67. package/dist/types/index.d.ts +300 -0
  68. package/dist/types/index.d.ts.map +1 -0
  69. package/dist/types/index.js +15 -0
  70. package/dist/types/index.js.map +1 -0
  71. package/dist/utils/McpLogger.d.ts +61 -0
  72. package/dist/utils/McpLogger.d.ts.map +1 -0
  73. package/dist/utils/McpLogger.js +113 -0
  74. package/dist/utils/McpLogger.js.map +1 -0
  75. package/dist/utils/logger.d.ts +30 -0
  76. package/dist/utils/logger.d.ts.map +1 -0
  77. package/dist/utils/logger.js +70 -0
  78. package/dist/utils/logger.js.map +1 -0
  79. package/dist/vector/VectorSearchManager.d.ts +63 -0
  80. package/dist/vector/VectorSearchManager.d.ts.map +1 -0
  81. package/dist/vector/VectorSearchManager.js +235 -0
  82. package/dist/vector/VectorSearchManager.js.map +1 -0
  83. package/docker-compose.yml +37 -0
  84. package/eslint.config.js +86 -0
  85. package/mcp-config-example.json +21 -0
  86. package/package.json +71 -0
  87. package/releases/release-notes-v2.2.0.md +165 -0
  88. package/releases/release-notes.md +214 -0
  89. package/releases/v3.0.0.md +236 -0
  90. package/server.json +42 -0
  91. package/src/cli.ts +52 -0
  92. package/src/constants/ServerInstructions.ts +25 -0
  93. package/src/database/SqliteAdapter.ts +952 -0
  94. package/src/filtering/ToolFilter.ts +271 -0
  95. package/src/github/GitHubIntegration.ts +409 -0
  96. package/src/handlers/prompts/index.ts +420 -0
  97. package/src/handlers/resources/index.ts +529 -0
  98. package/src/handlers/tools/index.ts +1081 -0
  99. package/src/index.ts +53 -0
  100. package/src/server/McpServer.ts +230 -0
  101. package/src/types/index.ts +435 -0
  102. package/src/types/sql.js.d.ts +34 -0
  103. package/src/utils/McpLogger.ts +155 -0
  104. package/src/utils/logger.ts +98 -0
  105. package/src/vector/VectorSearchManager.ts +277 -0
  106. package/tools.json +300 -0
  107. package/tsconfig.json +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SqliteAdapter.js","sourceRoot":"","sources":["../../src/database/SqliteAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Memory Journal MCP Server - Tool Filtering
3
+ *
4
+ * Configurable tool filtering system with groups and meta-groups.
5
+ * Matches mysql-mcp filtering syntax and patterns.
6
+ */
7
+ import type { ToolGroup, MetaGroup, ToolFilterConfig } from '../types/index.js';
8
+ export type { ToolFilterConfig } from '../types/index.js';
9
+ /**
10
+ * Tool group definitions mapping group names to tool names
11
+ *
12
+ * All 24 tools are categorized here for filtering support.
13
+ */
14
+ export declare const TOOL_GROUPS: Record<ToolGroup, string[]>;
15
+ /**
16
+ * Meta-group definitions mapping shortcuts to groups
17
+ */
18
+ export declare const META_GROUPS: Record<MetaGroup, ToolGroup[]>;
19
+ /**
20
+ * Get all tool names across all groups
21
+ */
22
+ export declare function getAllToolNames(): string[];
23
+ /**
24
+ * Get the group for a specific tool
25
+ */
26
+ export declare function getToolGroup(toolName: string): ToolGroup | undefined;
27
+ /**
28
+ * Parse a tool filter string into configuration
29
+ *
30
+ * Syntax:
31
+ * - `starter` - Use starter preset (whitelist mode)
32
+ * - `core,search` - Enable specific groups (whitelist mode)
33
+ * - `full,-admin` - All tools except admin group
34
+ * - `starter,-delete_entry` - Starter without specific tool
35
+ * - `+semantic_search` - Add specific tool to current set
36
+ */
37
+ export declare function parseToolFilter(filterString: string): ToolFilterConfig;
38
+ /**
39
+ * Check if a tool is enabled based on filter string
40
+ */
41
+ export declare function isToolEnabled(toolName: string, filterConfig: ToolFilterConfig): boolean;
42
+ /**
43
+ * Filter tools array based on filter configuration
44
+ */
45
+ export declare function filterTools<T extends {
46
+ name: string;
47
+ }>(tools: T[], filterConfig: ToolFilterConfig): T[];
48
+ /**
49
+ * Get tool filter from environment variable
50
+ */
51
+ export declare function getToolFilterFromEnv(): ToolFilterConfig | null;
52
+ /**
53
+ * Calculate token savings from filtering
54
+ */
55
+ export declare function calculateTokenSavings(totalTools: number, enabledTools: number, avgTokensPerTool?: number): {
56
+ reduction: number;
57
+ savedTokens: number;
58
+ };
59
+ /**
60
+ * Get human-readable filter summary
61
+ */
62
+ export declare function getFilterSummary(filterConfig: ToolFilterConfig): string;
63
+ //# sourceMappingURL=ToolFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolFilter.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACR,SAAS,EACT,SAAS,EAET,gBAAgB,EACnB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CA4CnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,CAKtD,CAAC;AAEF;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAM1C;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAOpE;AAgBD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,CA+FtE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,GAAG,OAAO,CAEvF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAClD,KAAK,EAAE,CAAC,EAAE,EACV,YAAY,EAAE,gBAAgB,GAC/B,CAAC,EAAE,CAEL;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,GAAG,IAAI,CAI9D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACjC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,gBAAgB,SAAM,GACvB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAI5C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,gBAAgB,GAAG,MAAM,CAMvE"}
@@ -0,0 +1,242 @@
1
+ /**
2
+ * Memory Journal MCP Server - Tool Filtering
3
+ *
4
+ * Configurable tool filtering system with groups and meta-groups.
5
+ * Matches mysql-mcp filtering syntax and patterns.
6
+ */
7
+ /**
8
+ * Tool group definitions mapping group names to tool names
9
+ *
10
+ * All 24 tools are categorized here for filtering support.
11
+ */
12
+ export const TOOL_GROUPS = {
13
+ core: [
14
+ 'create_entry',
15
+ 'get_entry_by_id',
16
+ 'get_recent_entries',
17
+ 'create_entry_minimal',
18
+ 'test_simple',
19
+ 'list_tags',
20
+ ],
21
+ search: [
22
+ 'search_entries',
23
+ 'search_by_date_range',
24
+ 'semantic_search',
25
+ 'get_vector_index_stats',
26
+ ],
27
+ analytics: [
28
+ 'get_statistics',
29
+ 'get_cross_project_insights',
30
+ ],
31
+ relationships: [
32
+ 'link_entries',
33
+ 'visualize_relationships',
34
+ ],
35
+ export: [
36
+ 'export_entries',
37
+ ],
38
+ admin: [
39
+ 'update_entry',
40
+ 'delete_entry',
41
+ 'rebuild_vector_index',
42
+ 'add_to_vector_index',
43
+ ],
44
+ github: [
45
+ 'get_github_issues',
46
+ 'get_github_prs',
47
+ 'get_github_issue',
48
+ 'get_github_pr',
49
+ 'get_github_context',
50
+ ],
51
+ backup: [
52
+ 'backup_journal',
53
+ 'list_backups',
54
+ 'restore_backup',
55
+ ],
56
+ };
57
+ /**
58
+ * Meta-group definitions mapping shortcuts to groups
59
+ */
60
+ export const META_GROUPS = {
61
+ starter: ['core', 'search'],
62
+ essential: ['core'],
63
+ full: ['core', 'search', 'analytics', 'relationships', 'export', 'admin', 'github', 'backup'],
64
+ readonly: ['core', 'search', 'analytics', 'relationships', 'export'],
65
+ };
66
+ /**
67
+ * Get all tool names across all groups
68
+ */
69
+ export function getAllToolNames() {
70
+ const allTools = [];
71
+ for (const tools of Object.values(TOOL_GROUPS)) {
72
+ allTools.push(...tools);
73
+ }
74
+ return allTools;
75
+ }
76
+ /**
77
+ * Get the group for a specific tool
78
+ */
79
+ export function getToolGroup(toolName) {
80
+ for (const [group, tools] of Object.entries(TOOL_GROUPS)) {
81
+ if (tools.includes(toolName)) {
82
+ return group;
83
+ }
84
+ }
85
+ return undefined;
86
+ }
87
+ /**
88
+ * Check if a string is a valid group name
89
+ */
90
+ function isGroup(name) {
91
+ return name in TOOL_GROUPS;
92
+ }
93
+ /**
94
+ * Check if a string is a valid meta-group name
95
+ */
96
+ function isMetaGroup(name) {
97
+ return name in META_GROUPS;
98
+ }
99
+ /**
100
+ * Parse a tool filter string into configuration
101
+ *
102
+ * Syntax:
103
+ * - `starter` - Use starter preset (whitelist mode)
104
+ * - `core,search` - Enable specific groups (whitelist mode)
105
+ * - `full,-admin` - All tools except admin group
106
+ * - `starter,-delete_entry` - Starter without specific tool
107
+ * - `+semantic_search` - Add specific tool to current set
108
+ */
109
+ export function parseToolFilter(filterString) {
110
+ const rules = [];
111
+ const parts = filterString.split(',').map(p => p.trim()).filter(Boolean);
112
+ // Determine if we're in whitelist or blacklist mode
113
+ // If first item has no prefix and is a group/metagroup, we're in whitelist mode
114
+ let enabledTools = new Set();
115
+ let isWhitelistMode = false;
116
+ for (let i = 0; i < parts.length; i++) {
117
+ const part = parts[i];
118
+ if (!part)
119
+ continue;
120
+ const isAdd = part.startsWith('+');
121
+ const isRemove = part.startsWith('-');
122
+ const name = (isAdd || isRemove) ? part.slice(1) : part;
123
+ if (i === 0 && !isAdd && !isRemove) {
124
+ // First item without prefix - whitelist mode
125
+ isWhitelistMode = true;
126
+ if (isMetaGroup(name)) {
127
+ // Expand meta-group to groups
128
+ for (const group of META_GROUPS[name]) {
129
+ enabledTools = new Set([...enabledTools, ...TOOL_GROUPS[group]]);
130
+ }
131
+ }
132
+ else if (isGroup(name)) {
133
+ enabledTools = new Set([...enabledTools, ...TOOL_GROUPS[name]]);
134
+ }
135
+ else {
136
+ // Single tool
137
+ enabledTools.add(name);
138
+ }
139
+ rules.push({
140
+ type: 'include',
141
+ target: name,
142
+ isGroup: isGroup(name) || isMetaGroup(name),
143
+ });
144
+ }
145
+ else if (isRemove) {
146
+ // Remove group or tool
147
+ if (isGroup(name)) {
148
+ for (const tool of TOOL_GROUPS[name]) {
149
+ enabledTools.delete(tool);
150
+ }
151
+ }
152
+ else {
153
+ enabledTools.delete(name);
154
+ }
155
+ rules.push({
156
+ type: 'exclude',
157
+ target: name,
158
+ isGroup: isGroup(name),
159
+ });
160
+ }
161
+ else {
162
+ // Add group or tool (with or without + prefix)
163
+ if (isMetaGroup(name)) {
164
+ for (const group of META_GROUPS[name]) {
165
+ enabledTools = new Set([...enabledTools, ...TOOL_GROUPS[group]]);
166
+ }
167
+ }
168
+ else if (isGroup(name)) {
169
+ enabledTools = new Set([...enabledTools, ...TOOL_GROUPS[name]]);
170
+ }
171
+ else {
172
+ enabledTools.add(name);
173
+ }
174
+ rules.push({
175
+ type: 'include',
176
+ target: name,
177
+ isGroup: isGroup(name) || isMetaGroup(name),
178
+ });
179
+ }
180
+ }
181
+ // If no filter specified or starting with removal, start with all tools
182
+ if (!isWhitelistMode && rules.length > 0 && rules[0]?.type === 'exclude') {
183
+ enabledTools = new Set(getAllToolNames());
184
+ // Re-apply rules
185
+ for (const rule of rules) {
186
+ if (rule.type === 'exclude') {
187
+ if (isGroup(rule.target)) {
188
+ for (const tool of TOOL_GROUPS[rule.target]) {
189
+ enabledTools.delete(tool);
190
+ }
191
+ }
192
+ else {
193
+ enabledTools.delete(rule.target);
194
+ }
195
+ }
196
+ }
197
+ }
198
+ return {
199
+ raw: filterString,
200
+ rules,
201
+ enabledTools,
202
+ };
203
+ }
204
+ /**
205
+ * Check if a tool is enabled based on filter string
206
+ */
207
+ export function isToolEnabled(toolName, filterConfig) {
208
+ return filterConfig.enabledTools.has(toolName);
209
+ }
210
+ /**
211
+ * Filter tools array based on filter configuration
212
+ */
213
+ export function filterTools(tools, filterConfig) {
214
+ return tools.filter(tool => isToolEnabled(tool.name, filterConfig));
215
+ }
216
+ /**
217
+ * Get tool filter from environment variable
218
+ */
219
+ export function getToolFilterFromEnv() {
220
+ const filterString = process.env['MEMORY_JOURNAL_MCP_TOOL_FILTER'];
221
+ if (!filterString)
222
+ return null;
223
+ return parseToolFilter(filterString);
224
+ }
225
+ /**
226
+ * Calculate token savings from filtering
227
+ */
228
+ export function calculateTokenSavings(totalTools, enabledTools, avgTokensPerTool = 150) {
229
+ const savedTokens = (totalTools - enabledTools) * avgTokensPerTool;
230
+ const reduction = ((totalTools - enabledTools) / totalTools) * 100;
231
+ return { reduction, savedTokens };
232
+ }
233
+ /**
234
+ * Get human-readable filter summary
235
+ */
236
+ export function getFilterSummary(filterConfig) {
237
+ const total = getAllToolNames().length;
238
+ const enabled = filterConfig.enabledTools.size;
239
+ const { reduction } = calculateTokenSavings(total, enabled);
240
+ return `${enabled}/${total} tools enabled (${reduction.toFixed(0)}% reduction)`;
241
+ }
242
+ //# sourceMappingURL=ToolFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolFilter.js","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Memory Journal MCP Server - GitHub Integration
3
+ *
4
+ * GitHub API integration using @octokit/rest for API access
5
+ * and simple-git for local repository operations.
6
+ */
7
+ import type { GitHubIssue, GitHubPullRequest, GitHubWorkflowRun, ProjectContext } from '../types/index.js';
8
+ /**
9
+ * Local repository information
10
+ */
11
+ export interface RepoInfo {
12
+ owner: string | null;
13
+ repo: string | null;
14
+ branch: string | null;
15
+ remoteUrl: string | null;
16
+ }
17
+ /**
18
+ * GitHub issue details (extended)
19
+ */
20
+ export interface IssueDetails extends GitHubIssue {
21
+ body: string | null;
22
+ labels: string[];
23
+ assignees: string[];
24
+ createdAt: string;
25
+ updatedAt: string;
26
+ closedAt: string | null;
27
+ commentsCount: number;
28
+ }
29
+ /**
30
+ * GitHub PR details (extended)
31
+ */
32
+ export interface PullRequestDetails extends GitHubPullRequest {
33
+ body: string | null;
34
+ draft: boolean;
35
+ headBranch: string;
36
+ baseBranch: string;
37
+ author: string;
38
+ createdAt: string;
39
+ updatedAt: string;
40
+ mergedAt: string | null;
41
+ closedAt: string | null;
42
+ additions: number;
43
+ deletions: number;
44
+ changedFiles: number;
45
+ }
46
+ /**
47
+ * GitHubIntegration - Handles GitHub API and local git operations
48
+ */
49
+ export declare class GitHubIntegration {
50
+ private octokit;
51
+ private git;
52
+ private readonly token;
53
+ constructor(workingDir?: string);
54
+ /**
55
+ * Check if GitHub API is available (token present)
56
+ */
57
+ isApiAvailable(): boolean;
58
+ /**
59
+ * Get local repository information
60
+ */
61
+ getRepoInfo(): Promise<RepoInfo>;
62
+ /**
63
+ * Parse owner and repo from GitHub remote URL
64
+ */
65
+ private parseRemoteUrl;
66
+ /**
67
+ * Get repository issues
68
+ */
69
+ getIssues(owner: string, repo: string, state?: 'open' | 'closed' | 'all', limit?: number): Promise<GitHubIssue[]>;
70
+ /**
71
+ * Get issue details
72
+ */
73
+ getIssue(owner: string, repo: string, issueNumber: number): Promise<IssueDetails | null>;
74
+ /**
75
+ * Get repository pull requests
76
+ */
77
+ getPullRequests(owner: string, repo: string, state?: 'open' | 'closed' | 'all', limit?: number): Promise<GitHubPullRequest[]>;
78
+ /**
79
+ * Get PR details
80
+ */
81
+ getPullRequest(owner: string, repo: string, prNumber: number): Promise<PullRequestDetails | null>;
82
+ /**
83
+ * Get workflow runs from GitHub Actions
84
+ */
85
+ getWorkflowRuns(owner: string, repo: string, limit?: number): Promise<GitHubWorkflowRun[]>;
86
+ /**
87
+ * Get full repository context (issues, PRs, branch info)
88
+ */
89
+ getRepoContext(): Promise<ProjectContext>;
90
+ }
91
+ //# sourceMappingURL=GitHubIntegration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GitHubIntegration.d.ts","sourceRoot":"","sources":["../../src/github/GitHubIntegration.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACR,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACjB,MAAM,mBAAmB,CAAC;AAM3B;;GAEG;AACH,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,WAAW;IAC7C,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IACzD,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,GAAG,CAA4B;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;gBAE/B,UAAU,SAAM;IA6B5B;;OAEG;IACH,cAAc,IAAI,OAAO;IAIzB;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC;IAwBtC;;OAEG;IACH,OAAO,CAAC,cAAc;IA6BtB;;OAEG;IACG,SAAS,CACX,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,MAAM,GAAG,QAAQ,GAAG,KAAc,EACzC,KAAK,SAAK,GACX,OAAO,CAAC,WAAW,EAAE,CAAC;IAiCzB;;OAEG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IA0C9F;;OAEG;IACG,eAAe,CACjB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,MAAM,GAAG,QAAQ,GAAG,KAAc,EACzC,KAAK,SAAK,GACX,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA8B/B;;OAEG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IA0CvG;;OAEG;IACG,eAAe,CACjB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,KAAK,SAAK,GACX,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAiC/B;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC;CA+BlD"}