@codemieai/code 0.0.51 → 0.0.52

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 (46) hide show
  1. package/dist/agents/core/session/SessionStore.d.ts +4 -0
  2. package/dist/agents/core/session/SessionStore.d.ts.map +1 -1
  3. package/dist/agents/core/session/SessionStore.js +16 -4
  4. package/dist/agents/core/session/SessionStore.js.map +1 -1
  5. package/dist/agents/plugins/claude/claude.plugin.js +3 -3
  6. package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +1 -1
  7. package/dist/agents/plugins/claude/plugin/skills/claude-setup-audit/references/best-practices.md +1 -1
  8. package/dist/agents/plugins/claude/plugin/skills/msgraph/SKILL.md +34 -0
  9. package/dist/agents/plugins/claude/plugin/skills/msgraph/scripts/msgraph.js +185 -19
  10. package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
  11. package/dist/agents/plugins/codemie-code.plugin.js +45 -7
  12. package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
  13. package/dist/agents/plugins/opencode/opencode-dynamic-models.d.ts +34 -0
  14. package/dist/agents/plugins/opencode/opencode-dynamic-models.d.ts.map +1 -0
  15. package/dist/agents/plugins/opencode/opencode-dynamic-models.js +182 -0
  16. package/dist/agents/plugins/opencode/opencode-dynamic-models.js.map +1 -0
  17. package/dist/agents/plugins/opencode/opencode-model-configs.d.ts +21 -2
  18. package/dist/agents/plugins/opencode/opencode-model-configs.d.ts.map +1 -1
  19. package/dist/agents/plugins/opencode/opencode-model-configs.js +105 -8
  20. package/dist/agents/plugins/opencode/opencode-model-configs.js.map +1 -1
  21. package/dist/agents/plugins/opencode/opencode.plugin.d.ts.map +1 -1
  22. package/dist/agents/plugins/opencode/opencode.plugin.js +36 -6
  23. package/dist/agents/plugins/opencode/opencode.plugin.js.map +1 -1
  24. package/dist/agents/plugins/opencode/opencode.sqlite-reader.d.ts +10 -5
  25. package/dist/agents/plugins/opencode/opencode.sqlite-reader.d.ts.map +1 -1
  26. package/dist/agents/plugins/opencode/opencode.sqlite-reader.js +49 -5
  27. package/dist/agents/plugins/opencode/opencode.sqlite-reader.js.map +1 -1
  28. package/dist/cli/commands/assistants/constants.d.ts +5 -0
  29. package/dist/cli/commands/assistants/constants.d.ts.map +1 -1
  30. package/dist/cli/commands/assistants/constants.js +6 -1
  31. package/dist/cli/commands/assistants/constants.js.map +1 -1
  32. package/dist/cli/commands/assistants/setup/index.js +107 -3
  33. package/dist/cli/commands/assistants/setup/index.js.map +1 -1
  34. package/dist/cli/commands/assistants/setup/summary/index.d.ts +1 -1
  35. package/dist/cli/commands/assistants/setup/summary/index.d.ts.map +1 -1
  36. package/dist/cli/commands/assistants/setup/summary/index.js +4 -1
  37. package/dist/cli/commands/assistants/setup/summary/index.js.map +1 -1
  38. package/dist/providers/plugins/sso/sso.http-client.d.ts +40 -0
  39. package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -1
  40. package/dist/providers/plugins/sso/sso.http-client.js +21 -0
  41. package/dist/providers/plugins/sso/sso.http-client.js.map +1 -1
  42. package/dist/utils/config.d.ts +7 -0
  43. package/dist/utils/config.d.ts.map +1 -1
  44. package/dist/utils/config.js +36 -0
  45. package/dist/utils/config.js.map +1 -1
  46. package/package.json +1 -1
@@ -13,6 +13,10 @@ export declare class SessionStore {
13
13
  saveSession(session: Session): Promise<void>;
14
14
  /**
15
15
  * Load session from disk
16
+ *
17
+ * Falls back to the 'completed_' prefixed filename when the primary path is
18
+ * not found. This handles the race where handleSessionEnd renames
19
+ * {sessionId}.json → completed_{sessionId}.json before the final SSO sync runs.
16
20
  */
17
21
  loadSession(sessionId: string): Promise<Session | null>;
18
22
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"SessionStore.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/session/SessionStore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAK1C,qBAAa,YAAY;IACvB;;;OAGG;IACG,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBlD;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAsB7D;;OAEG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBvG;;;;;OAKG;IACG,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB7D;;;;;;OAMG;IACG,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAwBnE"}
1
+ {"version":3,"file":"SessionStore.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/session/SessionStore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAK1C,qBAAa,YAAY;IACvB;;;OAGG;IACG,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBlD;;;;;;OAMG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IA6B7D;;OAEG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBvG;;;;;OAKG;IACG,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB7D;;;;;;OAMG;IACG,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAwBnE"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { readFile, writeFile, mkdir } from 'fs/promises';
8
8
  import { existsSync } from 'fs';
9
- import { dirname } from 'path';
9
+ import { dirname, basename, join } from 'path';
10
10
  import { getSessionPath } from './session-config.js';
11
11
  import { logger } from '../../../utils/logger.js';
12
12
  import { createErrorContext, formatErrorForLog } from '../../../utils/errors.js';
@@ -35,12 +35,24 @@ export class SessionStore {
35
35
  }
36
36
  /**
37
37
  * Load session from disk
38
+ *
39
+ * Falls back to the 'completed_' prefixed filename when the primary path is
40
+ * not found. This handles the race where handleSessionEnd renames
41
+ * {sessionId}.json → completed_{sessionId}.json before the final SSO sync runs.
38
42
  */
39
43
  async loadSession(sessionId) {
40
- const sessionPath = getSessionPath(sessionId);
44
+ let sessionPath = getSessionPath(sessionId);
41
45
  if (!existsSync(sessionPath)) {
42
- logger.debug(`[SessionStore] Session file not found: ${sessionId}`);
43
- return null;
46
+ // Fallback: session may have been renamed with 'completed_' prefix by handleSessionEnd
47
+ const completedPath = join(dirname(sessionPath), `completed_${basename(sessionPath)}`);
48
+ if (existsSync(completedPath)) {
49
+ sessionPath = completedPath;
50
+ logger.debug(`[SessionStore] Using completed session file: ${sessionId}`);
51
+ }
52
+ else {
53
+ logger.debug(`[SessionStore] Session file not found: ${sessionId}`);
54
+ return null;
55
+ }
44
56
  }
45
57
  try {
46
58
  const content = await readFile(sessionPath, 'utf-8');
@@ -1 +1 @@
1
- {"version":3,"file":"SessionStore.js","sourceRoot":"","sources":["../../../../src/agents/core/session/SessionStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionStore.js","sourceRoot":"","sources":["../../../../src/agents/core/session/SessionStore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEjF,MAAM,OAAO,YAAY;IACvB;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,OAAgB;QAChC,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAEtD,IAAI,CAAC;YACH,0BAA0B;YAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC;YAED,qBAAqB;YACrB,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YAExE,MAAM,CAAC,KAAK,CAAC,iCAAiC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QACrE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;YACjF,MAAM,CAAC,KAAK,CAAC,0CAA0C,OAAO,CAAC,SAAS,EAAE,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;YAC7G,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CAAC,SAAiB;QACjC,IAAI,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;QAE5C,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,uFAAuF;YACvF,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,aAAa,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACvF,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC9B,WAAW,GAAG,aAAa,CAAC;gBAC5B,MAAM,CAAC,KAAK,CAAC,gDAAgD,SAAS,EAAE,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,0CAA0C,SAAS,EAAE,CAAC,CAAC;gBACpE,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACrD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;YAE/C,MAAM,CAAC,KAAK,CAAC,kCAAkC,SAAS,EAAE,CAAC,CAAC;YAC5D,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9D,MAAM,CAAC,KAAK,CAAC,0CAA0C,SAAS,EAAE,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;YACrG,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAGD;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,SAAiB,EAAE,MAAyB,EAAE,MAAe;QACrF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;QACxB,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;QAC1B,CAAC;QACD,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC5E,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,CAAC;QAED,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,qBAAqB,CAAC,SAAiB;QAC3C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,sEAAsE,SAAS,EAAE,CAAC,CAAC;YAC/F,OAAO;QACT,CAAC;QAED,gGAAgG;QAChG,IAAI,OAAO,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;YAC5C,MAAM,CAAC,KAAK,CAAC,iEAAiE,SAAS,EAAE,CAAC,CAAC;YAC3F,OAAO;QACT,CAAC;QAED,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEhC,MAAM,CAAC,KAAK,CAAC,yDAAyD,SAAS,EAAE,CAAC,CAAC;IACrF,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,wBAAwB,CAAC,SAAiB;QAC9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,kEAAkE,SAAS,EAAE,CAAC,CAAC;YAC3F,OAAO,CAAC,CAAC;QACX,CAAC;QAED,sEAAsE;QACtE,IAAI,OAAO,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;YAC5C,MAAM,CAAC,KAAK,CAAC,8DAA8D,SAAS,EAAE,CAAC,CAAC;YACxF,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;QACxD,OAAO,CAAC,gBAAgB,GAAG,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC;QACtE,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAC,wBAAwB;QAE/D,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEhC,MAAM,CAAC,KAAK,CAAC,8BAA8B,QAAQ,mBAAmB,SAAS,YAAY,OAAO,CAAC,gBAAgB,KAAK,CAAC,CAAC;QAE1H,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
@@ -18,16 +18,16 @@ let statuslineManagedThisSession = false;
18
18
  *
19
19
  * **UPDATE THIS WHEN BUMPING CLAUDE VERSION**
20
20
  */
21
- const CLAUDE_SUPPORTED_VERSION = '2.1.63';
21
+ const CLAUDE_SUPPORTED_VERSION = '2.1.78';
22
22
  /**
23
23
  * Minimum supported Claude Code version
24
24
  * Versions below this are known to be incompatible and will be blocked from starting
25
25
  * Rule: always 10 patch versions below CLAUDE_SUPPORTED_VERSION
26
- * e.g. supported = 2.1.63 → minimum = 2.1.53
26
+ * e.g. supported = 2.1.78 → minimum = 2.1.60
27
27
  *
28
28
  * **UPDATE THIS WHEN BUMPING CLAUDE VERSION**
29
29
  */
30
- const CLAUDE_MINIMUM_SUPPORTED_VERSION = '2.1.53';
30
+ const CLAUDE_MINIMUM_SUPPORTED_VERSION = '2.1.60';
31
31
  /**
32
32
  * Claude Code installer URLs
33
33
  * Official Anthropic installer scripts for native installation
@@ -5,5 +5,5 @@
5
5
  "name": "AI/Run CodeMie",
6
6
  "email": "support@codemieai.com"
7
7
  },
8
- "version": "1.0.17"
8
+ "version": "1.0.18"
9
9
  }
@@ -452,7 +452,7 @@ curl https://api.example.com/log -d "$CLAUDE_TOOL_INPUT"
452
452
 
453
453
  // ❌ Bad
454
454
  "env": {
455
- "API_KEY": "sk-prod-abc123",
455
+ "API_KEY": "YOUR_API_KEY_HERE",
456
456
  "DATABASE_URL": "postgres://user:pass@prod-host/db"
457
457
  }
458
458
  ```
@@ -196,6 +196,31 @@ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js onenote --create "M
196
196
  node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js onenote --notebooks --json
197
197
  ```
198
198
 
199
+ ### Transcripts
200
+
201
+ ```bash
202
+ # List online meetings in a date range (defaults to last 7 days)
203
+ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js transcripts --start 2026-03-06
204
+
205
+ # List online meetings in a specific date range
206
+ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js transcripts --start 2026-03-06 --end 2026-03-07
207
+
208
+ # Find meetings by subject keyword and show their transcripts
209
+ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js transcripts --start 2026-03-06 --subject "standup"
210
+
211
+ # List transcripts for a known meeting ID
212
+ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js transcripts --meeting MEETING_ID
213
+
214
+ # Read transcript content (plain text, printed to stdout)
215
+ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js transcripts --meeting MEETING_ID --transcript TRANSCRIPT_ID
216
+
217
+ # Save transcript to a file
218
+ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js transcripts --meeting MEETING_ID --transcript TRANSCRIPT_ID --output meeting.txt
219
+
220
+ # Download as VTT (timestamped captions format)
221
+ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js transcripts --meeting MEETING_ID --transcript TRANSCRIPT_ID --vtt --output meeting.vtt
222
+ ```
223
+
199
224
  ### People & Contacts
200
225
 
201
226
  ```bash
@@ -238,6 +263,15 @@ node ${CLAUDE_PLUGIN_ROOT}/skills/msgraph/scripts/msgraph.js people --contacts
238
263
  3. Run `onenote --pages SECTION_ID` → list pages, or use `onenote --search "keyword"` to search directly
239
264
  4. Run `onenote --read PAGE_ID` → display page content
240
265
 
266
+ ### "Show me the transcript from yesterday's standup"
267
+ 1. Run `transcripts --start YYYY-MM-DD --subject "standup"` → finds the meeting and lists transcript IDs
268
+ 2. Run `transcripts --meeting MEETING_ID --transcript TRANSCRIPT_ID` → reads full transcript text
269
+
270
+ ### "Get all meeting transcripts for today"
271
+ 1. Run `transcripts --start YYYY-MM-DD` → lists all online meetings for the day
272
+ 2. Run `transcripts --meeting MEETING_ID` → lists available transcripts per meeting
273
+ 3. Run `transcripts --meeting MEETING_ID --transcript TRANSCRIPT_ID --output meeting.txt` → saves each transcript
274
+
241
275
  ### "Who's my manager?" / "Who reports to me?"
242
276
  - Run `org --manager` or `org --reports`
243
277
 
@@ -17,7 +17,7 @@ const path = require('node:path');
17
17
  const os = require('node:os');
18
18
 
19
19
  // ── Config ────────────────────────────────────────────────────────────────────
20
- const CLIENT_ID = '14d82eec-204b-4c2f-b7e8-296a70dab67e';
20
+ const CLIENT_ID = '3d7688c6-f449-4d04-8b0d-57d94818e922'; // CodeMie APP
21
21
  const TOKEN_URL = 'https://login.microsoftonline.com/common/oauth2/v2.0/token';
22
22
  const DEVICE_URL = 'https://login.microsoftonline.com/common/oauth2/v2.0/devicecode';
23
23
  const SCOPES = [
@@ -25,9 +25,8 @@ const SCOPES = [
25
25
  'Calendars.Read', 'Calendars.ReadWrite',
26
26
  'Files.Read', 'Files.ReadWrite',
27
27
  'Sites.Read.All', 'Chat.Read', 'Chat.ReadWrite',
28
- 'People.Read', 'Contacts.Read',
29
- 'Notes.Read', 'Notes.ReadWrite',
30
- 'offline_access',
28
+ 'OnlineMeetingTranscript.Read.All', 'OnlineMeetings.Read',
29
+ 'People.Read', 'Contacts.Read', 'offline_access',
31
30
  ].join(' ');
32
31
  const CACHE_FILE = path.join(os.homedir(), '.ms_graph_token_cache.json');
33
32
  const GRAPH_BASE = 'https://graph.microsoft.com/v1.0';
@@ -258,13 +257,13 @@ function fmtSize(n) {
258
257
 
259
258
  function stripHtml(s) {
260
259
  return (s || '')
261
- .replace(/<[^>]*>/g, '')
262
- .replace(/&nbsp;/g, ' ')
263
- .replace(/&amp;/g, '&')
264
- .replace(/&lt;/g, '<')
265
- .replace(/&gt;/g, '>')
266
- .replace(/\r?\n\s*\r?\n/g, '\n')
267
- .trim();
260
+ .replace(/<[^>]*>/g, '')
261
+ .replace(/&nbsp;/g, ' ')
262
+ .replace(/&amp;/g, '&')
263
+ .replace(/&lt;/g, '<')
264
+ .replace(/&gt;/g, '>')
265
+ .replace(/\r?\n\s*\r?\n/g, '\n')
266
+ .trim();
268
267
  }
269
268
 
270
269
  function pad(str, len) {
@@ -315,7 +314,7 @@ async function cmdMe(args) {
315
314
  const me = await graphGet('/me', token);
316
315
  if (args.json) {
317
316
  const fields = ['displayName','userPrincipalName','id','mail','jobTitle',
318
- 'department','officeLocation','businessPhones','mobilePhone'];
317
+ 'department','officeLocation','businessPhones','mobilePhone'];
319
318
  const out = {};
320
319
  for (const k of fields) if (me[k] != null) out[k] = me[k];
321
320
  console.log(JSON.stringify(out, null, 2));
@@ -484,8 +483,8 @@ async function cmdSharepoint(args) {
484
483
  if (args.site) {
485
484
  const p = args.path || 'root';
486
485
  const ep = p === 'root'
487
- ? `/sites/${args.site}/drive/root/children`
488
- : `/sites/${args.site}/drive/root:/${p}:/children`;
486
+ ? `/sites/${args.site}/drive/root/children`
487
+ : `/sites/${args.site}/drive/root:/${p}:/children`;
489
488
  const data = await graphGet(ep, token, { $top: limit, $select: 'id,name,size,lastModifiedDateTime,file,folder' });
490
489
  const items = data.value || [];
491
490
  if (args.json) { console.log(JSON.stringify(items, null, 2)); return; }
@@ -526,9 +525,68 @@ async function cmdTeams(args) {
526
525
  return;
527
526
  }
528
527
 
528
+ // ── NEW: resolve a person's AAD user ID from their email/UPN ──────────────
529
+ // Usage: teams --lookup-user someone@company.com
530
+ // Shows AAD ID, display name, title, and the expected oneOnOne chat ID pattern.
531
+ // Note: oneOnOne chat IDs follow the pattern 19:ID1_ID2@unq.gbl.spaces
532
+ // where the IDs appear in the order Teams assigned them (not guaranteed sort order).
533
+ // Always verify by listing --chats and matching the target user's ID fragment.
534
+ if (args.lookupUser) {
535
+ const user = await graphGet(`/users/${args.lookupUser}`, token, {
536
+ $select: 'id,displayName,userPrincipalName,jobTitle,department',
537
+ });
538
+ const me = await graphGet('/me', token, { $select: 'id' });
539
+ console.log(`Display Name : ${user.displayName}`);
540
+ console.log(`Email : ${user.userPrincipalName}`);
541
+ console.log(`AAD User ID : ${user.id}`);
542
+ console.log(`Job Title : ${user.jobTitle || 'N/A'}`);
543
+ console.log(`Department : ${user.department || 'N/A'}`);
544
+ console.log(`\nYour AAD ID : ${me.id}`);
545
+ console.log(`\nTo find the direct chat, run:`);
546
+ console.log(` teams --chats (look for a oneOnOne chat containing "${user.id.slice(0, 8)}")`);
547
+ console.log(`\nThen send with:`);
548
+ console.log(` teams --dm ${args.lookupUser} --send "your message"`);
549
+ return;
550
+ }
551
+
552
+ // ── NEW: send a DM directly by email address ──────────────────────────────
553
+ // Usage: teams --dm someone@company.com --send "hello"
554
+ // Resolves the user's AAD ID, finds their oneOnOne chat from the chat list,
555
+ // and sends the message. More reliable than guessing the chat ID.
556
+ if (args.dm && args.send) {
557
+ // 1. Resolve target user's AAD ID
558
+ const user = await graphGet(`/users/${args.dm}`, token, {
559
+ $select: 'id,displayName',
560
+ });
561
+
562
+ // 2. List chats and find the oneOnOne chat containing the target user's ID
563
+ const chatsData = await graphGet('/me/chats', token, {
564
+ $top: 50,
565
+ $select: 'id,topic,chatType',
566
+ });
567
+ const chats = chatsData.value || [];
568
+ const directChat = chats.find(c =>
569
+ c.chatType === 'oneOnOne' && c.id.includes(user.id)
570
+ );
571
+
572
+ if (!directChat) {
573
+ console.error(`No existing direct chat found with ${user.displayName} (${args.dm}).`);
574
+ console.error(`They may need to message you first, or check --chats list manually.`);
575
+ process.exit(1);
576
+ }
577
+
578
+ const res = await graphPost(`/me/chats/${directChat.id}/messages`, token, {
579
+ body: { content: args.send },
580
+ });
581
+ console.log(`DM sent to ${user.displayName}. Message ID: ${res.id}`);
582
+ return;
583
+ }
584
+
585
+ // ── FIXED: $select is NOT supported by the Teams chat messages endpoint ───
586
+ // The Graph API returns HTTP 400 if $select is used here. Pass $top only.
529
587
  if (args.messages) {
530
588
  const data = await graphGet(`/me/chats/${args.messages}/messages`, token, {
531
- $top: limit, $select: 'id,from,body,createdDateTime',
589
+ $top: limit,
532
590
  });
533
591
  const msgs = data.value || [];
534
592
  if (args.json) { console.log(JSON.stringify(msgs, null, 2)); return; }
@@ -556,7 +614,112 @@ async function cmdTeams(args) {
556
614
  return;
557
615
  }
558
616
 
559
- console.log('Teams: --chats | --messages CHAT_ID | --send MSG --chat-id ID | --teams-list');
617
+ console.log('Teams: --chats | --messages CHAT_ID | --send MSG --chat-id ID');
618
+ console.log(' --lookup-user EMAIL | --dm EMAIL --send MSG | --teams-list');
619
+ }
620
+
621
+ async function cmdTranscripts(args) {
622
+ const token = await getValidToken();
623
+
624
+ // Search calendar events by date + optional subject keyword, then resolve meeting IDs + transcripts
625
+ // Usage: transcripts --start 2026-03-06 [--end 2026-03-06] [--subject "keyword"]
626
+ if (args.list || (!args.meeting && !args.download)) {
627
+ const startDate = args.start || new Date(Date.now() - 7 * 86400 * 1000).toISOString().slice(0, 10);
628
+ const endDate = args.end || startDate;
629
+ const startDT = startDate + 'T00:00:00Z';
630
+ const endDT = endDate + 'T23:59:59Z';
631
+
632
+ const data = await graphGet('/me/calendarView', token, {
633
+ startDateTime: startDT,
634
+ endDateTime: endDT,
635
+ $select: 'id,subject,start,end,isOnlineMeeting,onlineMeeting',
636
+ $top: 50,
637
+ $orderby: 'start/dateTime',
638
+ });
639
+ const events = (data.value || []).filter(e => e.isOnlineMeeting && e.onlineMeeting?.joinUrl);
640
+ if (args.subject) {
641
+ const kw = args.subject.toLowerCase();
642
+ const filtered = events.filter(e => (e.subject || '').toLowerCase().includes(kw));
643
+ if (!filtered.length) {
644
+ console.log(`No online meetings matching "${args.subject}" on ${startDate}.`);
645
+ return;
646
+ }
647
+ for (const e of filtered) {
648
+ console.log(`\nMeeting: ${e.subject}`);
649
+ console.log(`Start : ${fmtDt(e.start?.dateTime)}`);
650
+ const joinUrl = e.onlineMeeting.joinUrl;
651
+ // Resolve to online meeting object via joinWebUrl
652
+ let meetingId = null;
653
+ try {
654
+ const om = await graphGet('/me/onlineMeetings', token, {
655
+ $filter: `joinWebUrl eq '${joinUrl}'`,
656
+ });
657
+ const meetings = om.value || [];
658
+ if (meetings.length) {
659
+ meetingId = meetings[0].id;
660
+ console.log(`Meeting ID: ${meetingId}`);
661
+ }
662
+ } catch (e2) {
663
+ console.log(`Could not resolve meeting ID: ${e2.message}`);
664
+ }
665
+ if (meetingId) {
666
+ try {
667
+ const td = await graphGet(`/me/onlineMeetings/${meetingId}/transcripts`, token);
668
+ const transcripts = td.value || [];
669
+ if (!transcripts.length) {
670
+ console.log('No transcripts available for this meeting.');
671
+ } else {
672
+ for (const t of transcripts)
673
+ console.log(`Transcript ID: ${t.id} Created: ${fmtDt(t.createdDateTime)}`);
674
+ }
675
+ } catch (e3) {
676
+ console.log(`Transcripts error: ${e3.message}`);
677
+ }
678
+ }
679
+ }
680
+ return;
681
+ }
682
+
683
+ if (!events.length) { console.log('No online meetings found in range.'); return; }
684
+ console.log(`\nOnline meetings (${startDate} – ${endDate}):`);
685
+ console.log('─'.repeat(80));
686
+ for (const e of events)
687
+ console.log(` ${fmtDt(e.start?.dateTime).padEnd(20)} ${e.subject || '(no title)'}`);
688
+ return;
689
+ }
690
+
691
+ // List transcripts for a specific meeting ID
692
+ if (args.meeting && !args.transcript) {
693
+ const data = await graphGet(`/me/onlineMeetings/${args.meeting}/transcripts`, token);
694
+ const transcripts = data.value || [];
695
+ if (!transcripts.length) { console.log('No transcripts found for this meeting.'); return; }
696
+ console.log(`\nTranscripts for meeting ${args.meeting.slice(0, 30)}...:`);
697
+ console.log('─'.repeat(60));
698
+ for (const t of transcripts)
699
+ console.log(`ID: ${t.id} Created: ${fmtDt(t.createdDateTime)}`);
700
+ return;
701
+ }
702
+
703
+ // Download transcript content
704
+ if (args.meeting && args.transcript) {
705
+ const contentType = args.vtt ? 'text/vtt' : 'text/plain';
706
+ const url = `${GRAPH_BASE}/me/onlineMeetings/${args.meeting}/transcripts/${args.transcript}/content`;
707
+ const res = await httpsRequest(url, {
708
+ headers: { Authorization: `Bearer ${token}`, Accept: contentType },
709
+ });
710
+ const text = res.body;
711
+ if (args.output) {
712
+ fs.writeFileSync(args.output, text, 'utf8');
713
+ console.log(`Transcript saved to ${args.output}`);
714
+ } else {
715
+ console.log(text);
716
+ }
717
+ return;
718
+ }
719
+
720
+ console.log('Usage: transcripts --start YYYY-MM-DD [--end YYYY-MM-DD] [--subject "keyword"]');
721
+ console.log(' transcripts --meeting MEETING_ID');
722
+ console.log(' transcripts --meeting MEETING_ID --transcript TRANSCRIPT_ID [--output FILE] [--vtt]');
560
723
  }
561
724
 
562
725
  async function cmdOnedrive(args) {
@@ -773,9 +936,8 @@ async function cmdOnenote(args) {
773
936
 
774
937
  // ── CLI Parser ────────────────────────────────────────────────────────────────
775
938
  function parseArgs(argv) {
776
- // Flags that take no value (boolean)
777
939
  const BOOL = new Set(['json','unread','sites','chats','teamsList','contacts',
778
- 'manager','reports','availability','notebooks','help']);
940
+ 'manager','reports','availability','notebooks','list','vtt','help']);
779
941
  const args = { _: [] };
780
942
  let i = 0;
781
943
  while (i < argv.length) {
@@ -814,7 +976,8 @@ Data:
814
976
  [--create TITLE --start DT --end DT [--location L] [--timezone TZ]]
815
977
  [--availability --start DT --end DT]
816
978
  sharepoint [--sites] [--site ID [--path P]] [--download ID [--output FILE]] [--json]
817
- teams [--chats] [--messages CHAT_ID] [--send MSG --chat-id ID] [--teams-list] [--json]
979
+ teams [--chats] [--messages CHAT_ID] [--send MSG --chat-id ID] [--teams-list]
980
+ [--lookup-user EMAIL] [--dm EMAIL --send MSG] [--json]
818
981
  onedrive [--path P] [--upload FILE [--dest PATH]] [--download ID [--output FILE]]
819
982
  [--info ID] [--json]
820
983
  people [--contacts] [--search NAME] [--limit N] [--json]
@@ -831,6 +994,8 @@ Examples:
831
994
  node ${name} emails --send user@corp.com --subject "Hi" --body "Hello"
832
995
  node ${name} calendar --create "Standup" --start 2024-03-15T09:00 --end 2024-03-15T09:30
833
996
  node ${name} teams --chats
997
+ node ${name} teams --lookup-user alice@corp.com
998
+ node ${name} teams --dm alice@corp.com --send "Hello from the avatar!"
834
999
  node ${name} onedrive --upload report.pdf --dest "Documents/report.pdf"
835
1000
  node ${name} onenote --notebooks
836
1001
  node ${name} onenote --sections NOTEBOOK_ID
@@ -862,6 +1027,7 @@ async function main() {
862
1027
  people: () => cmdPeople(args),
863
1028
  org: () => cmdOrg(args),
864
1029
  onenote: () => cmdOnenote(args),
1030
+ transcripts: () => cmdTranscripts(args),
865
1031
  help: () => { printHelp(); process.exit(0); },
866
1032
  };
867
1033
 
@@ -1 +1 @@
1
- {"version":3,"file":"codemie-code.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/codemie-code.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,kBAAkB,CAAC;AAKnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAY1F;;GAEG;AACH,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AA+GjD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,yBAAyB,EAAE,aA0PvC,CAAC;AAEF;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB;IACrD,OAAO,CAAC,cAAc,CAAiB;;IAOvC;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAMrC;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;;;;;OAOG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBhC;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,qBAAqB,IAAI,sBAAsB,GAAG,SAAS;CAG5D"}
1
+ {"version":3,"file":"codemie-code.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/codemie-code.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,kBAAkB,CAAC;AAMnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAY1F;;GAEG;AACH,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAuIjD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,yBAAyB,EAAE,aA+QvC,CAAC;AAEF;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB;IACrD,OAAO,CAAC,cAAc,CAAiB;;IAOvC;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAMrC;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;;;;;OAOG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBhC;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,qBAAqB,IAAI,sBAAsB,GAAG,SAAS;CAG5D"}
@@ -1,7 +1,8 @@
1
1
  import { join } from 'path';
2
2
  import { existsSync } from 'fs';
3
3
  import { logger } from '../../utils/logger.js';
4
- import { getModelConfig, getAllOpenCodeModelConfigs } from './opencode/opencode-model-configs.js';
4
+ import { getModelConfig, getChatCompletionsModelConfigs, getResponsesApiModelConfigs } from './opencode/opencode-model-configs.js';
5
+ import { fetchDynamicModelConfigs } from './opencode/opencode-dynamic-models.js';
5
6
  import { BaseAgentAdapter } from '../core/BaseAgentAdapter.js';
6
7
  import { installGlobal, uninstallGlobal } from '../../utils/processes.js';
7
8
  import { OpenCodeSessionAdapter } from './opencode/opencode.session.js';
@@ -67,10 +68,15 @@ function resolveOllamaBaseUrl(baseUrl, provider) {
67
68
  }
68
69
  /**
69
70
  * Build the OpenCode config object that gets passed to the whitelabel binary.
71
+ *
72
+ * Models are split into two groups:
73
+ * - chatModels: routed via codemie-proxy/litellm (Chat Completions API)
74
+ * - responsesApiModels: routed via OpenCode's built-in openai CUSTOM_LOADER (Responses API)
70
75
  */
71
76
  function buildOpenCodeConfig(params) {
77
+ const hasResponsesApiModels = Object.keys(params.responsesApiModels).length > 0;
72
78
  return {
73
- enabled_providers: ['codemie-proxy', 'ollama', 'amazon-bedrock', 'litellm'],
79
+ enabled_providers: ['codemie-proxy', 'openai', 'ollama', 'amazon-bedrock', 'litellm'],
74
80
  share: 'disabled',
75
81
  provider: {
76
82
  ...(params.proxyBaseUrl && {
@@ -83,7 +89,24 @@ function buildOpenCodeConfig(params) {
83
89
  timeout: params.timeout,
84
90
  ...(params.providerOptions?.headers && { headers: params.providerOptions.headers })
85
91
  },
86
- models: params.allModels
92
+ models: params.chatModels
93
+ }
94
+ }),
95
+ // OpenCode's built-in openai CUSTOM_LOADER — uses @ai-sdk/openai sdk.responses()
96
+ // which calls POST /v1/responses instead of /v1/chat/completions
97
+ ...(params.responsesApiBaseUrl && hasResponsesApiModels && {
98
+ openai: {
99
+ name: 'CodeMie SSO',
100
+ // whitelist: suppress the built-in openai model list (GPT-4, GPT-4o, etc.)
101
+ // OpenCode merges user models with models.dev — whitelist restricts to ours only
102
+ whitelist: Object.keys(params.responsesApiModels),
103
+ options: {
104
+ baseURL: `${params.responsesApiBaseUrl}/`,
105
+ apiKey: 'proxy-handled',
106
+ timeout: params.timeout,
107
+ ...(params.providerOptions?.headers && { headers: params.providerOptions.headers })
108
+ },
109
+ models: params.responsesApiModels
87
110
  }
88
111
  }),
89
112
  ...(params.litellmBaseUrl && {
@@ -95,7 +118,7 @@ function buildOpenCodeConfig(params) {
95
118
  apiKey: params.litellmApiKey || 'not-required',
96
119
  timeout: params.timeout,
97
120
  },
98
- models: params.allModels
121
+ models: params.chatModels
99
122
  }
100
123
  }),
101
124
  ollama: {
@@ -195,10 +218,16 @@ export const CodeMieCodePluginMetadata = {
195
218
  logger.warn(`Invalid CODEMIE_BASE_URL format: ${baseUrl}`, { agent: 'codemie-code' });
196
219
  return env;
197
220
  }
221
+ // Fetch live model catalogue from the CodeMie API.
222
+ // Falls back to the static OPENCODE_MODEL_CONFIGS on any error.
223
+ const allModels = await fetchDynamicModelConfigs(baseUrl, env.CODEMIE_URL, env.CODEMIE_JWT_TOKEN);
224
+ // Model selection priority: env var > config > default
225
+ // Use dynamic catalogue first, then fall back to static getModelConfig for unknown IDs.
198
226
  const selectedModel = env.CODEMIE_MODEL || config?.model || 'gpt-5-2-2025-12-11';
199
- const modelConfig = getModelConfig(selectedModel);
227
+ const modelConfig = allModels[selectedModel] ?? getModelConfig(selectedModel);
200
228
  const { providerOptions } = modelConfig;
201
- const allModels = getAllOpenCodeModelConfigs();
229
+ const chatModels = getChatCompletionsModelConfigs(allModels);
230
+ const responsesApiModels = getResponsesApiModelConfigs(allModels);
202
231
  const isBedrock = provider === 'bedrock';
203
232
  const isLiteLLM = provider === 'litellm';
204
233
  const proxyBaseUrl = provider !== 'ollama' && !isBedrock && !isLiteLLM ? baseUrl : undefined;
@@ -208,11 +237,20 @@ export const CodeMieCodePluginMetadata = {
208
237
  const modelId = isBedrock
209
238
  ? toBedrockModelId(modelConfig.id, env.AWS_REGION || env.CODEMIE_AWS_REGION)
210
239
  : modelConfig.id;
240
+ // Responses API base URL: use proxyBaseUrl for SSO/bearer-auth, or baseUrl for LiteLLM.
241
+ // Always set regardless of selected model — fixes model-switching bug where switching
242
+ // from a Claude model to a GPT model mid-session would miss the CUSTOM_LOADER.
243
+ const responsesApiBaseUrl = proxyBaseUrl || (isLiteLLM ? baseUrl : undefined);
244
+ if (responsesApiBaseUrl && Object.keys(responsesApiModels).length > 0) {
245
+ env.OPENAI_API_KEY = 'proxy-handled';
246
+ logger.debug('[codemie-code] Enabling openai CUSTOM_LOADER for Responses API models');
247
+ }
211
248
  const openCodeConfig = buildOpenCodeConfig({
212
249
  proxyBaseUrl,
213
250
  litellmBaseUrl: isLiteLLM ? baseUrl : undefined,
214
251
  litellmApiKey: isLiteLLM ? env.CODEMIE_API_KEY : undefined,
215
- ollamaBaseUrl, activeProvider, modelId, timeout, providerOptions, allModels
252
+ ollamaBaseUrl, activeProvider, modelId, timeout, providerOptions,
253
+ chatModels, responsesApiModels, responsesApiBaseUrl
216
254
  });
217
255
  // --- Hooks injection ---
218
256
  // 1. Build default hooks (always present for session tracking + metrics)
@@ -1 +1 @@
1
- {"version":3,"file":"codemie-code.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/codemie-code.plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAClG,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,4BAA4B,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AACjH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAEjD,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAElF;;GAEG;AACH,SAAS,uBAAuB,CAAC,QAA4B;IAC3D,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC3C,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,gBAAgB,CAAC;IACpD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC7C,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB;IAC7B,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,kBAAkB,CAAC,CAAC;AACpD,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,GAAsB,EAAE,SAAiB;IAChE,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,aAAa,IAAI,kBAAkB;QAClD,SAAS;QACT,QAAQ,EAAE,GAAG,CAAC,gBAAgB;QAC9B,UAAU,EAAE,GAAG,CAAC,gBAAgB;QAChC,MAAM,EAAE,GAAG,CAAC,WAAW;QACvB,OAAO,EAAE,GAAG,CAAC,mBAAmB;QAChC,WAAW,EAAE,GAAG,CAAC,oBAAoB;QACrC,OAAO,EAAE,GAAG,CAAC,eAAe;QAC5B,KAAK,EAAE,GAAG,CAAC,aAAa;QACxB,UAAU,EAAE,cAAc;KAC3B,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CAAC,OAAe,EAAE,QAA4B;IACzE,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,2BAA2B,CAAC;IAC9D,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,OAAO,CAAC;IACxE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC;AAC5C,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,MAU5B;IACC,OAAO;QACL,iBAAiB,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,CAAC;QAC3E,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE;YACR,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI;gBACzB,eAAe,EAAE;oBACf,GAAG,EAAE,2BAA2B;oBAChC,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE;wBACP,OAAO,EAAE,GAAG,MAAM,CAAC,YAAY,GAAG;wBAClC,MAAM,EAAE,eAAe;wBACvB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;qBACpF;oBACD,MAAM,EAAE,MAAM,CAAC,SAAS;iBACzB;aACF,CAAC;YACF,GAAG,CAAC,MAAM,CAAC,cAAc,IAAI;gBAC3B,OAAO,EAAE;oBACP,GAAG,EAAE,2BAA2B;oBAChC,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE;wBACP,OAAO,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG;wBACvD,MAAM,EAAE,MAAM,CAAC,aAAa,IAAI,cAAc;wBAC9C,OAAO,EAAE,MAAM,CAAC,OAAO;qBACxB;oBACD,MAAM,EAAE,MAAM,CAAC,SAAS;iBACzB;aACF,CAAC;YACF,MAAM,EAAE;gBACN,GAAG,EAAE,2BAA2B;gBAChC,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;oBACP,OAAO,EAAE,GAAG,MAAM,CAAC,aAAa,GAAG;oBACnC,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,MAAM,CAAC,OAAO;iBACxB;aACF;SACF;QACD,KAAK,EAAE,GAAG,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,OAAO,EAAE;KACpD,CAAC;AACJ,CAAC;AAED,qDAAqD;AACrD,MAAM,cAAc,GAAG,4BAA4B,EAAE,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAkB;IACtD,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,oCAAoC;IAEjD,UAAU,EAAE,6BAA6B;IACzC,UAAU,EAAE,cAAc,IAAI,IAAI;IAElC,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;KAClB;IAED,gBAAgB,EAAE,oBAAoB;IAEtC,aAAa,EAAE;QACb,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,gCAAgC,EAAE;QACzE,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,sBAAsB,EAAE;QACzD,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;QACxD,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,wBAAwB,EAAE;QAC/D,EAAE,KAAK,EAAE,qBAAqB,EAAE,WAAW,EAAE,uCAAuC,EAAE;KACvF;IAED,SAAS,EAAE,IAAI;IAEf,UAAU,EAAE;QACV,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,EAAE;KACV;IAED,kBAAkB,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC;IAEjF,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE;IAExD,SAAS,EAAE;QACT,KAAK,CAAC,cAAc,CAAC,SAAiB,EAAE,GAAsB;YAC5D,IAAI,CAAC;gBACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;gBACpE,MAAM,KAAK,GAAG;oBACZ,eAAe,EAAE,cAAc;oBAC/B,UAAU,EAAE,SAAS;oBACrB,eAAe,EAAE,EAAE;oBACnB,eAAe,EAAE,SAAS;oBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;oBAClB,MAAM,EAAE,SAAS;iBAClB,CAAC;gBACF,MAAM,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,0DAA0D,SAAS,EAAE,CAAC,CAAC;YACrF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,2DAA2D,GAAG,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,GAAsB,EAAE,MAAmB;YACzD,MAAM,SAAS,GAAG,GAAG,CAAC,kBAAkB,CAAC;YACzC,IAAI,SAAS,EAAE,CAAC;gBACd,sDAAsD;gBACtD,MAAM,iBAAiB,CAAC,SAAS,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC9D,CAAC;YAED,MAAM,QAAQ,GAAG,GAAG,CAAC,gBAAgB,CAAC;YACtC,MAAM,OAAO,GAAG,GAAG,CAAC,gBAAgB,CAAC;YAErC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,CAAC;YACb,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBACtE,MAAM,CAAC,IAAI,CAAC,oCAAoC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;gBACtF,OAAO,GAAG,CAAC;YACb,CAAC;YAED,MAAM,aAAa,GAAG,GAAG,CAAC,aAAa,IAAI,MAAM,EAAE,KAAK,IAAI,oBAAoB,CAAC;YACjF,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;YAClD,MAAM,EAAE,eAAe,EAAE,GAAG,WAAW,CAAC;YACxC,MAAM,SAAS,GAAG,0BAA0B,EAAE,CAAC;YAE/C,MAAM,SAAS,GAAG,QAAQ,KAAK,SAAS,CAAC;YACzC,MAAM,SAAS,GAAG,QAAQ,KAAK,SAAS,CAAC;YACzC,MAAM,YAAY,GAAG,QAAQ,KAAK,QAAQ,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC7F,MAAM,aAAa,GAAG,oBAAoB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9D,MAAM,cAAc,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,eAAe,EAAE,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,eAAe,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC;YAC1F,MAAM,OAAO,GAAG,SAAS;gBACvB,CAAC,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,kBAAkB,CAAC;gBAC5E,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAEnB,MAAM,cAAc,GAAG,mBAAmB,CAAC;gBACzC,YAAY;gBACZ,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;gBAC/C,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;gBAC1D,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,SAAS;aAC5E,CAAC,CAAC;YAEH,0BAA0B;YAC1B,yEAAyE;YACzE,MAAM,YAAY,GAA8B;gBAC9C,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrF,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;aACrF,CAAC;YAEF,4CAA4C;YAC5C,IAAI,WAAW,GAAG,EAAE,GAAG,YAAY,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,sBAAsB,EAAE,CAAC;gBAC/B,IAAI,CAAC;oBACH,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;oBAC7D,IAAI,aAAa,CAAC,KAAK,IAAI,OAAO,aAAa,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACnE,WAAW,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,aAAa,CAAC,KAAK,EAAE,CAAC;wBAC1D,MAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;oBACpE,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACnE,MAAM,CAAC,KAAK,CAAC,8DAA8D,GAAG,EAAE,CAAC,CAAC;gBACpF,CAAC;YACH,CAAC;YAED,6DAA6D;YAC7D,IAAI,CAAC;gBACH,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;gBAC3F,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,uCAAuC,CAAC,CAAC;gBAC7E,MAAM,cAAc,GAAG,MAAM,kBAAkB,EAAE,CAAC;gBAClD,MAAM,eAAe,GAAG,MAAM,cAAc,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;gBAE/F,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;oBACrC,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;wBACnC,WAAW,GAAG,UAAU,CAAC,WAAkB,EAAE,MAAM,CAAC,KAAK,CAAQ,CAAC;wBAClE,MAAM,CAAC,KAAK,CAAC,4CAA4C,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;oBACpF,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,CAAC,KAAK,CAAC,4DAA4D,GAAG,EAAE,CAAC,CAAC;YAClF,CAAC;YAED,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YAE5D,yDAAyD;YACxD,cAAsC,CAAC,MAAM,GAAI,cAAsC,CAAC,MAAM,IAAI,EAAE,CAAC;YACtG,MAAM,OAAO,GAAI,cAAsC,CAAC,MAAkB,CAAC;YAE3E,MAAM,cAAc,GAAG,qBAAqB,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC7B,MAAM,CAAC,KAAK,CAAC,yCAAyC,cAAc,EAAE,CAAC,CAAC;YAExE,MAAM,kBAAkB,GAAG,8BAA8B,EAAE,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACjC,MAAM,CAAC,KAAK,CAAC,uDAAuD,kBAAkB,EAAE,CAAC,CAAC;YAE1F,qCAAqC;YACrC,+CAA+C;YAC/C,8EAA8E;YAC9E,wDAAwD;YACxD,+DAA+D;YAC/D,GAAG,CAAC,aAAa,GAAG,sBAAsB,EAAE,CAAC;YAE7C,MAAM,CAAC,KAAK,CAAC,wCAAwC,GAAG,CAAC,aAAa,wBAAwB,CAAC,CAAC;YAEhG,GAAG,CAAC,sBAAsB,GAAG,MAAM,CAAC;YACpC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YAElD,IAAI,UAAU,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC,gBAAgB,UAAU,CAAC,MAAM,kCAAkC,YAAY,6BAA6B,EAAE;oBACxH,KAAK,EAAE,cAAc;iBACtB,CAAC,CAAC;gBAEH,MAAM,UAAU,GAAG,qBAAqB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;gBACrE,MAAM,CAAC,KAAK,CAAC,6CAA6C,UAAU,EAAE,CAAC,CAAC;gBAExE,GAAG,CAAC,eAAe,GAAG,UAAU,CAAC;gBACjC,OAAO,GAAG,CAAC;YACb,CAAC;YAED,GAAG,CAAC,uBAAuB,GAAG,UAAU,CAAC;YACzC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,UAAU,EAAE,CAAC,IAAc,EAAE,OAAoB,EAAE,EAAE;YACnD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gBACtC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;oBAC5C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,GAAG,CAAC;wBAAE,OAAO,KAAK,CAAC;oBACzD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,WAAW;wBAAE,OAAO,KAAK,CAAC;oBACtD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,WAAW,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAC/E,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;gBACH,OAAO,CAAC,KAAK,EAAE,GAAG,SAAS,EAAE,SAAS,CAAC,CAAC;YAC1C,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,GAAsB;YACzD,MAAM,SAAS,GAAG,GAAG,CAAC,kBAAkB,CAAC;YAEzC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;gBAC1F,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,iEAAiE;gBACjE,2EAA2E;gBAC3E,qFAAqF;gBACrF,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;gBAClF,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,mBAAmB,CAAC;gBAExD,IAAI,cAAc,GAAG,EAAE,CAAC;gBACxB,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,sBAAsB,CAAC,yBAAyB,CAAC,CAAC;oBACtE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;oBACnE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;wBACtC,MAAM,CAAC,KAAK,CAAC,+CAA+C,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;oBACvF,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;oBACnE,CAAC;gBACH,CAAC;gBAAC,OAAO,aAAa,EAAE,CAAC;oBACvB,MAAM,GAAG,GAAG,aAAa,YAAY,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBAC3F,MAAM,CAAC,KAAK,CAAC,2DAA2D,GAAG,EAAE,CAAC,CAAC;gBACjF,CAAC;gBAED,8DAA8D;gBAC9D,8DAA8D;gBAC9D,wDAAwD;gBACxD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;gBACpE,MAAM,KAAK,GAAG;oBACZ,eAAe,EAAE,YAAY;oBAC7B,UAAU,EAAE,SAAS;oBACrB,eAAe,EAAE,cAAc;oBAC/B,eAAe,EAAE,SAAS;oBAC1B,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;oBAClB,MAAM,EAAE,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,QAAQ,GAAG;iBACtD,CAAC;gBACF,MAAM,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,wDAAwD,SAAS,EAAE,CAAC,CAAC;YACnF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,MAAM,CAAC,KAAK,CAAC,yDAAyD,YAAY,EAAE,CAAC,CAAC;YACxF,CAAC;oBAAS,CAAC;gBACT,OAAO,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;gBACzC,kBAAkB,EAAE,CAAC;gBACrB,+BAA+B,EAAE,CAAC;YACpC,CAAC;QACH,CAAC;KACF;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,iBAAkB,SAAQ,gBAAgB;IAC7C,cAAc,CAAiB;IAEvC;QACE,KAAK,CAAC,yBAAyB,CAAC,CAAC;QACjC,IAAI,CAAC,cAAc,GAAG,IAAI,sBAAsB,CAAC,yBAAyB,CAAC,CAAC;IAC9E,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW;QACf,MAAM,UAAU,GAAG,4BAA4B,EAAE,CAAC;QAClD,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9B,OAAO,UAAU,CAAC,UAAU,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,aAAa,CAAC,6BAA6B,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,SAAS;QACb,MAAM,eAAe,CAAC,6BAA6B,CAAC,CAAC;QAErD,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;QACzC,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;YACrC,CAAC;YAAC,MAAM,CAAC;gBACP,0DAA0D;gBAC1D,MAAM,CAAC,KAAK,CAAC,mCAAmC,WAAW,+BAA+B,CAAC,CAAC;YAC9F,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,MAAM,SAAS,GAAG,4BAA4B,EAAE,CAAC;QACjD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,sDAAsD,SAAS,EAAE,CAAC,CAAC;YAC/E,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
1
+ {"version":3,"file":"codemie-code.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/codemie-code.plugin.ts"],"names":[],"mappings":"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"}