@gramatr/mcp 0.13.78 → 0.13.80

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 (35) hide show
  1. package/dist/bin/gramatr-mcp.d.ts +1 -0
  2. package/dist/bin/gramatr-mcp.d.ts.map +1 -1
  3. package/dist/bin/gramatr-mcp.js +12 -0
  4. package/dist/bin/gramatr-mcp.js.map +1 -1
  5. package/dist/bin/setup-platforms.d.ts.map +1 -1
  6. package/dist/bin/setup-platforms.js +24 -6
  7. package/dist/bin/setup-platforms.js.map +1 -1
  8. package/dist/bin/setup-shared.d.ts +7 -0
  9. package/dist/bin/setup-shared.d.ts.map +1 -1
  10. package/dist/bin/setup-shared.js +18 -0
  11. package/dist/bin/setup-shared.js.map +1 -1
  12. package/dist/bin/setup.d.ts +1 -1
  13. package/dist/bin/setup.d.ts.map +1 -1
  14. package/dist/bin/setup.js +97 -22
  15. package/dist/bin/setup.js.map +1 -1
  16. package/dist/hooks/lib/client-runtime.d.ts +3 -3
  17. package/dist/hooks/lib/client-runtime.d.ts.map +1 -1
  18. package/dist/hooks/lib/client-runtime.js +10 -1
  19. package/dist/hooks/lib/client-runtime.js.map +1 -1
  20. package/dist/setup/examples/gramatr-opencode-plugin.d.ts +20 -38
  21. package/dist/setup/examples/gramatr-opencode-plugin.d.ts.map +1 -1
  22. package/dist/setup/examples/gramatr-opencode-plugin.js +192 -121
  23. package/dist/setup/examples/gramatr-opencode-plugin.js.map +1 -1
  24. package/dist/setup/instructions.d.ts +2 -0
  25. package/dist/setup/instructions.d.ts.map +1 -1
  26. package/dist/setup/instructions.js +32 -2
  27. package/dist/setup/instructions.js.map +1 -1
  28. package/dist/setup/integrations.d.ts.map +1 -1
  29. package/dist/setup/integrations.js +0 -3
  30. package/dist/setup/integrations.js.map +1 -1
  31. package/dist/setup/targets.d.ts +18 -8
  32. package/dist/setup/targets.d.ts.map +1 -1
  33. package/dist/setup/targets.js +193 -2
  34. package/dist/setup/targets.js.map +1 -1
  35. package/package.json +1 -1
@@ -14,6 +14,7 @@
14
14
  * gramatr setup claude Alias for claude-code (legacy)
15
15
  * gramatr setup claude-code --clean-install Remove legacy Claude/PAI/Fabric artifacts first
16
16
  * gramatr setup codex Auto-configure Codex hook settings
17
+ * gramatr setup opencode Auto-configure OpenCode MCP settings
17
18
  * gramatr setup claude-desktop Auto-configure Claude Desktop MCP settings
18
19
  * gramatr setup chatgpt-desktop Auto-configure ChatGPT Desktop MCP settings
19
20
  * gramatr setup gemini Auto-configure Gemini CLI extension files
@@ -1 +1 @@
1
- {"version":3,"file":"gramatr-mcp.d.ts","sourceRoot":"","sources":["../../src/bin/gramatr-mcp.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAmBH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CA2BzF;AAqBD,wBAAgB,SAAS,IAAI,IAAI,CA8FhC;AAED,wBAAsB,OAAO,CAAC,OAAO,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CA2gBtF"}
1
+ {"version":3,"file":"gramatr-mcp.d.ts","sourceRoot":"","sources":["../../src/bin/gramatr-mcp.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AAmBH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CA2BzF;AAqBD,wBAAgB,SAAS,IAAI,IAAI,CAgGhC;AAED,wBAAsB,OAAO,CAAC,OAAO,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAqhBtF"}
@@ -14,6 +14,7 @@
14
14
  * gramatr setup claude Alias for claude-code (legacy)
15
15
  * gramatr setup claude-code --clean-install Remove legacy Claude/PAI/Fabric artifacts first
16
16
  * gramatr setup codex Auto-configure Codex hook settings
17
+ * gramatr setup opencode Auto-configure OpenCode MCP settings
17
18
  * gramatr setup claude-desktop Auto-configure Claude Desktop MCP settings
18
19
  * gramatr setup chatgpt-desktop Auto-configure ChatGPT Desktop MCP settings
19
20
  * gramatr setup gemini Auto-configure Gemini CLI extension files
@@ -131,6 +132,7 @@ export function printHelp() {
131
132
  gramatr setup claude-code --clean-install
132
133
  Remove legacy pre-rebrand artifacts first
133
134
  gramatr setup codex Configure Codex hook wiring
135
+ gramatr setup opencode Configure OpenCode MCP settings
134
136
  gramatr setup claude-desktop Configure Claude Desktop to use this server
135
137
  gramatr setup chatgpt-desktop Configure ChatGPT Desktop to use this server
136
138
  gramatr setup gemini Configure Gemini CLI extension files
@@ -181,6 +183,7 @@ export function printHelp() {
181
183
  Setup:
182
184
  gramatr setup claude-code Write MCP config to ~/.claude.json
183
185
  gramatr setup claude Alias for claude-code (legacy)
186
+ gramatr setup opencode Write OpenCode MCP config
184
187
  gramatr setup claude-code --clean-install
185
188
  Remove stale legacy artifacts before writing setup
186
189
  gramatr setup claude-desktop Write Claude Desktop config
@@ -439,6 +442,15 @@ export async function cliMain(cliArgs = process.argv.slice(2)) {
439
442
  setupCodex(dryRun, showPrompts);
440
443
  return;
441
444
  }
445
+ if (target === "opencode") {
446
+ if (cleanInstall) {
447
+ const { runCleanInstall } = await import("./setup.js");
448
+ runCleanInstall(dryRun);
449
+ }
450
+ const { setupOpenCode } = await import("./setup.js");
451
+ setupOpenCode(dryRun, showPrompts);
452
+ return;
453
+ }
442
454
  if (target === "claude-desktop") {
443
455
  if (cleanInstall) {
444
456
  const { runCleanInstall } = await import("./setup.js");
@@ -1 +1 @@
1
- {"version":3,"file":"gramatr-mcp.js","sourceRoot":"","sources":["../../src/bin/gramatr-mcp.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,MAAM,uBAAuB,GAAwB;IACnD,aAAa;IACb,OAAO;IACP,UAAU;IACV,QAAQ;IACR,gBAAgB;IAChB,iBAAiB;IACjB,QAAQ;IACR,UAAU;IACV,QAAQ;CACT,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,GAAW,EAAE,QAAkB;IACtE,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,CAAC,UAAU;QAAE,OAAO,QAAQ,CAAC;IACjC,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,KAAK,GAAG;QAAE,OAAO,QAAQ,CAAC;IAChE,IACE,UAAU,KAAK,MAAM;QACrB,UAAU,KAAK,QAAQ;QACvB,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,MAAM;QAErB,OAAO,IAAI,CAAC;IAEd,MAAM,OAAO,GAAG,UAAU;SACvB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAE9C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO;SACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3B,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;IAEjE,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACxE,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,QAAkB;IACzD,MAAM,EAAE,GAAG,eAAe,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC7E,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;QACxD,OAAO,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4FtB,CAAC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,UAAoB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACrE,0EAA0E;IAC1E,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzD,SAAS,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;QAChC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC1D,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAEvB,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC3D,MAAM,WAAW,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YACnB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAI,MAAM,KAAK,CAAC,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC;gBAC9E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YACrB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;YACnE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YACtD,IAAI,MAAM,KAAK,kBAAkB,EAAE,CAAC;gBAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,IAAI,GAAG,MAMZ,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,kCAAkC,IAAI,CAAC,GAAG,YAAY,IAAI,CAAC,OAAO,WAAW,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,QAAQ,IAAI,CACpI,CAAC;YACF,OAAO;QACT,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wCAAwC,MAAM,CAAC,GAAG,CAAC,qCAAqC,CACzF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,kFAAkF;IAClF,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QAEjE,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACjE,KAAK,CAAC,EAAE,CAAC,CAAC;QAEV,wCAAwC;QACxC,IAAI,CAAC;YACH,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACvC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACxD,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9F,EAAE,CAAC,gBAAgB,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,iBAAiB,MAAM,EAAE,CAAC,CAAC;YAChC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,oDAAoD;QACpD,IAAI,CAAC;YACH,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;YAC5B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,EAAE,CAAC,uBAAuB,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBAC7B,MAAM,YAAY,EAAE,CAAC;gBACrB,EAAE,CAAC,eAAe,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;YACzC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAChD,0CAA0C;QAC5C,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC;YACH,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YACpF,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;gBACvB,EAAE,CAAC,kBAAkB,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,mCAAmC,CAAC,CAAC;gBAC1C,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,uBAAuB;QACvB,IAAI,CAAC;YACH,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC;YACzC,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;gBACd,EAAE,CAAC,oBAAoB,MAAM,CAAC,OAAO,IAAI,SAAS,GAAG,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,uBAAuB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5C,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,KAAK,CAAC,8EAA8E,CAAC,CAAC;QACtF,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;QACjC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;QACjC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;QAChC,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACxF,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAExC,gFAAgF;QAChF,mFAAmF;QACnF,uFAAuF;QACvF,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+EAA+E;gBAC/E,kFAAkF;gBAClF,mFAAmF,CACpF,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,KAAK,aAAa,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACpD,mEAAmE;YACnE,6EAA6E;YAC7E,yEAAyE;YACzE,+DAA+D;YAC/D,sDAAsD;YACtD,IAAI,cAAc,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC3D,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC7E,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC,CAAC;oBAC1F,cAAc,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC;gBACvD,CAAC;wBAAS,CAAC;oBACT,EAAE,CAAC,KAAK,EAAE,CAAC;gBACb,CAAC;YACH,CAAC;YACD,oDAAoD;YACpD,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAC/E,YAAY,CACb,CAAC;YACF,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;YACtC,MAAM,mBAAmB,GAAI,YAAoB,EAAE,YAAY,CAAC;YAChE,IACE,mBAAmB,EAAE,IAAI,KAAK,SAAS;gBACvC,CAAC,MAAM;gBACP,OAAO,CAAC,KAAK,CAAC,KAAK;gBACnB,OAAO,CAAC,MAAM,CAAC,KAAK,EACpB,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,uFAAuF,CACxF,CAAC;gBACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0EAA0E,CAC3E,CAAC;gBACF,MAAM,GAAG,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC9E,IAAI,CAAC;oBACH,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;oBAChF,MAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC;oBACrE,eAAe,CAAC;wBACd,GAAG,YAAY;wBACf,YAAY,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE;qBAC5E,CAAC,CAAC;gBACL,CAAC;wBAAS,CAAC;oBACT,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,CAAC;YACH,CAAC;YACD,+EAA+E;YAC/E,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACvD,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YACvB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAClD,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAChC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,gBAAgB,EAAE,CAAC;YAChC,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,iBAAiB,EAAE,CAAC;YACjC,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3D,mBAAmB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACrD,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACnC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,QAAQ,GACZ,SAAS,KAAK,SAAS;gBACrB,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,SAAS,KAAK,QAAQ;oBACtB,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,YAAY,CAAC;YACrB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAChD,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,MAAM,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAChF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC/E,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtE,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEhF,IAAI,eAAgD,CAAC;YACrD,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,IAAI,kBAAkB,EAAE,CAAC;gBAClD,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;gBAC1C,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC,QAAQ,CAAC,CAAC;gBAC3D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;oBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,eAAe,GAAG,QAA+B,CAAC;YACpD,CAAC;YAED,gBAAgB,CAAC;gBACf,MAAM;gBACN,YAAY;gBACZ,QAAQ;gBACR,eAAe;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACxD,gBAAgB,CAAC;gBACf,MAAM;gBACN,YAAY;gBACZ,QAAQ,EAAE,KAAK;gBACf,eAAe,EAAE,uBAAuB;gBACxC,WAAW;aACZ,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;YAC/B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACxD,gBAAgB,CAAC;gBACf,MAAM;gBACN,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,KAAK;gBACf,eAAe,EAAE,uBAAuB;gBACxC,WAAW;aACZ,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,MAAM,eAAe,GACnB,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;YAC5E,MAAM,YAAY,GAAG,eAUT,CAAC;YACb,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,MAAM,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0KAA0K,CAC3K,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,2EAA2E;IAC3E,8BAA8B;IAC9B,yFAAyF;IACzF,CAAC;QACC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACvC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CACnE,4BAA4B,CAC7B,CAAC;YACF,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1C,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,oCAAoC,MAAM,CAAC,SAAS,CAAC,sBAAsB,KAAK,IAAI,CACrF,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,OAAO;YACT,CAAC;YACD,cAAc,CAAC,SAAS,CAAC,CAAC;YAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,SAAS,IAAI,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,2EAA2E;IAC3E,+EAA+E;IAC/E,+DAA+D;IAC/D,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,iBAAiB,GAAG;YACxB,MAAM;YACN,YAAY;YACZ,QAAQ;YACR,OAAO;YACP,OAAO;YACP,OAAO;YACP,OAAO;YACP,aAAa;YACb,QAAQ;YACR,aAAa;YACb,YAAY;YACZ,OAAO;SACR,CAAC;QACF,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,KAAK,IAAI,CAAC,CAAC;QACjE,qFAAqF;QACrF,SAAS,WAAW,CAAC,CAAS,EAAE,CAAS;YACvC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACnB,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,GAAe,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACzE,CAAC;YACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC5B,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACN,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;4BACnB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;4BAClB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;YACD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;aACxF,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC;aAC/B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,kFAAkF;IAClF,gFAAgF;IAChF,IAAI,CAAC;QACH,MAAM,EAAE,qBAAqB,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAC5E,sBAAsB,CACvB,CAAC;QACF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,qBAAqB,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAA4B,CAAC;QACpE,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;QACpF,MAAM,qBAAqB,GAAI,QAAQ,EAAE,sBAA8B,EAAE,OAAO,CAAC;QACjF,IAAI,CAAC,qBAAqB,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,4EAA4E,CAC7E,CAAC;YACF,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACvD,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,uDAAuD;IACzD,CAAC;IAED,yEAAyE;IACzE,2CAA2C;IAC3C,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC5D,MAAM,WAAW,EAAE,CAAC;AACtB,CAAC;AAED,gFAAgF;AAChF,4EAA4E;AAC5E,sCAAsC;AACtC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI;IACvB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;QAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACjC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,OAAO,IAAI,CAAC,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"gramatr-mcp.js","sourceRoot":"","sources":["../../src/bin/gramatr-mcp.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,MAAM,uBAAuB,GAAwB;IACnD,aAAa;IACb,OAAO;IACP,UAAU;IACV,QAAQ;IACR,gBAAgB;IAChB,iBAAiB;IACjB,QAAQ;IACR,UAAU;IACV,QAAQ;CACT,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,GAAW,EAAE,QAAkB;IACtE,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,CAAC,UAAU;QAAE,OAAO,QAAQ,CAAC;IACjC,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,KAAK,GAAG;QAAE,OAAO,QAAQ,CAAC;IAChE,IACE,UAAU,KAAK,MAAM;QACrB,UAAU,KAAK,QAAQ;QACvB,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,MAAM;QAErB,OAAO,IAAI,CAAC;IAEd,MAAM,OAAO,GAAG,UAAU;SACvB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAE9C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO;SACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3B,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;IAEjE,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACxE,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,QAAkB;IACzD,MAAM,EAAE,GAAG,eAAe,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC7E,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;QACxD,OAAO,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8FtB,CAAC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,UAAoB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACrE,0EAA0E;IAC1E,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzD,SAAS,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;QAChC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC1D,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAEvB,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC3D,MAAM,WAAW,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YACnB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;YAC1D,IAAI,MAAM,KAAK,CAAC,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC;gBAC9E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YACrB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;YACnE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;YACtD,IAAI,MAAM,KAAK,kBAAkB,EAAE,CAAC;gBAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,IAAI,GAAG,MAMZ,CAAC;YACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,kCAAkC,IAAI,CAAC,GAAG,YAAY,IAAI,CAAC,OAAO,WAAW,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,QAAQ,IAAI,CACpI,CAAC;YACF,OAAO;QACT,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wCAAwC,MAAM,CAAC,GAAG,CAAC,qCAAqC,CACzF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,kFAAkF;IAClF,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;QAChE,MAAM,EAAE,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QAEjE,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACjE,KAAK,CAAC,EAAE,CAAC,CAAC;QAEV,wCAAwC;QACxC,IAAI,CAAC;YACH,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACvC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACxD,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9F,EAAE,CAAC,gBAAgB,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,iBAAiB,MAAM,EAAE,CAAC,CAAC;YAChC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,oDAAoD;QACpD,IAAI,CAAC;YACH,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;YAC5B,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,EAAE,CAAC,uBAAuB,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBAC7B,MAAM,YAAY,EAAE,CAAC;gBACrB,EAAE,CAAC,eAAe,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;YACzC,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAChD,0CAA0C;QAC5C,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC;YACH,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YACpF,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;gBACvB,EAAE,CAAC,kBAAkB,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,mCAAmC,CAAC,CAAC;gBAC1C,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,uBAAuB;QACvB,IAAI,CAAC;YACH,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC;YACzC,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;gBACd,EAAE,CAAC,oBAAoB,MAAM,CAAC,OAAO,IAAI,SAAS,GAAG,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,uBAAuB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5C,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,KAAK,CAAC,8EAA8E,CAAC,CAAC;QACtF,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;QACjC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;QACjC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;QAChC,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACxF,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAExC,gFAAgF;QAChF,mFAAmF;QACnF,uFAAuF;QACvF,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+EAA+E;gBAC/E,kFAAkF;gBAClF,mFAAmF,CACpF,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,KAAK,aAAa,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACpD,mEAAmE;YACnE,6EAA6E;YAC7E,yEAAyE;YACzE,+DAA+D;YAC/D,sDAAsD;YACtD,IAAI,cAAc,GAAG,IAAI,CAAC;YAC1B,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC3D,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC7E,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC,CAAC;oBAC1F,cAAc,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC;gBACvD,CAAC;wBAAS,CAAC;oBACT,EAAE,CAAC,KAAK,EAAE,CAAC;gBACb,CAAC;YACH,CAAC;YACD,oDAAoD;YACpD,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAC/E,YAAY,CACb,CAAC;YACF,MAAM,YAAY,GAAG,cAAc,EAAE,CAAC;YACtC,MAAM,mBAAmB,GAAI,YAAoB,EAAE,YAAY,CAAC;YAChE,IACE,mBAAmB,EAAE,IAAI,KAAK,SAAS;gBACvC,CAAC,MAAM;gBACP,OAAO,CAAC,KAAK,CAAC,KAAK;gBACnB,OAAO,CAAC,MAAM,CAAC,KAAK,EACpB,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,uFAAuF,CACxF,CAAC;gBACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0EAA0E,CAC3E,CAAC;gBACF,MAAM,GAAG,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC9E,IAAI,CAAC;oBACH,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;oBAChF,MAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC;oBACrE,eAAe,CAAC;wBACd,GAAG,YAAY;wBACf,YAAY,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE;qBAC5E,CAAC,CAAC;gBACL,CAAC;wBAAS,CAAC;oBACT,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,CAAC;YACH,CAAC;YACD,+EAA+E;YAC/E,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACvD,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YACvB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAClD,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAChC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACrD,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACnC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,gBAAgB,EAAE,CAAC;YAChC,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,iBAAiB,EAAE,CAAC;YACjC,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC3D,mBAAmB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACrD,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACnC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACnD,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvD,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,QAAQ,GACZ,SAAS,KAAK,SAAS;gBACrB,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,SAAS,KAAK,QAAQ;oBACtB,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,YAAY,CAAC;YACrB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAChD,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,MAAM,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAChF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;YAC/E,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtE,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEhF,IAAI,eAAgD,CAAC;YACrD,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,IAAI,kBAAkB,EAAE,CAAC;gBAClD,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;gBAC1C,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC,QAAQ,CAAC,CAAC;gBAC3D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;oBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,eAAe,GAAG,QAA+B,CAAC;YACpD,CAAC;YAED,gBAAgB,CAAC;gBACf,MAAM;gBACN,YAAY;gBACZ,QAAQ;gBACR,eAAe;gBACf,WAAW;aACZ,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACxD,gBAAgB,CAAC;gBACf,MAAM;gBACN,YAAY;gBACZ,QAAQ,EAAE,KAAK;gBACf,eAAe,EAAE,uBAAuB;gBACxC,WAAW;aACZ,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;YAC/B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACxD,gBAAgB,CAAC;gBACf,MAAM;gBACN,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,KAAK;gBACf,eAAe,EAAE,uBAAuB;gBACxC,WAAW;aACZ,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,MAAM,eAAe,GACnB,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;YAC5E,MAAM,YAAY,GAAG,eAUT,CAAC;YACb,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,MAAM,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0KAA0K,CAC3K,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,2EAA2E;IAC3E,8BAA8B;IAC9B,yFAAyF;IACzF,CAAC;QACC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACvC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CACnE,4BAA4B,CAC7B,CAAC;YACF,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1C,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,oCAAoC,MAAM,CAAC,SAAS,CAAC,sBAAsB,KAAK,IAAI,CACrF,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAChB,OAAO;YACT,CAAC;YACD,cAAc,CAAC,SAAS,CAAC,CAAC;YAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,SAAS,IAAI,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,2EAA2E;IAC3E,+EAA+E;IAC/E,+DAA+D;IAC/D,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,iBAAiB,GAAG;YACxB,MAAM;YACN,YAAY;YACZ,QAAQ;YACR,OAAO;YACP,OAAO;YACP,OAAO;YACP,OAAO;YACP,aAAa;YACb,QAAQ;YACR,aAAa;YACb,YAAY;YACZ,OAAO;SACR,CAAC;QACF,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,KAAK,IAAI,CAAC,CAAC;QACjE,qFAAqF;QACrF,SAAS,WAAW,CAAC,CAAS,EAAE,CAAS;YACvC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACnB,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,GAAe,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACzE,CAAC;YACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC5B,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACN,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;4BACnB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;4BAClB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC;YACD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;aACxF,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC;aAC/B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,kFAAkF;IAClF,gFAAgF;IAChF,IAAI,CAAC;QACH,MAAM,EAAE,qBAAqB,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAC5E,sBAAsB,CACvB,CAAC;QACF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,qBAAqB,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAA4B,CAAC;QACpE,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;QACpF,MAAM,qBAAqB,GAAI,QAAQ,EAAE,sBAA8B,EAAE,OAAO,CAAC;QACjF,IAAI,CAAC,qBAAqB,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,4EAA4E,CAC7E,CAAC;YACF,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACvD,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,uDAAuD;IACzD,CAAC;IAED,yEAAyE;IACzE,2CAA2C;IAC3C,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;IAC5D,MAAM,WAAW,EAAE,CAAC;AACtB,CAAC;AAED,gFAAgF;AAChF,4EAA4E;AAC5E,sCAAsC;AACtC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI;IACvB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;QAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAEjD,IAAI,YAAY,EAAE,CAAC;IACjB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACjC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,OAAO,IAAI,CAAC,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup-platforms.d.ts","sourceRoot":"","sources":["../../src/bin/setup-platforms.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,OAAO,EAIL,4BAA4B,EAC7B,MAAM,0BAA0B,CAAC;AA0ClC,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAoBrE;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAM5G;AAED,wBAAgB,UAAU,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAuCpE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAkB5F;AAED,wBAAgB,WAAW,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CA2BrE;AAED,wBAAgB,aAAa,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAyBvE;AAED,wBAAsB,QAAQ,CAAC,MAAM,GAAE,YAAY,GAAG,aAAa,GAAG,YAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAmChH"}
1
+ {"version":3,"file":"setup-platforms.d.ts","sourceRoot":"","sources":["../../src/bin/setup-platforms.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,OAAO,EAIL,4BAA4B,EAC7B,MAAM,0BAA0B,CAAC;AAoDlC,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAsBrE;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAM5G;AAED,wBAAgB,UAAU,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CA+CpE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAkB5F;AAED,wBAAgB,WAAW,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CA2BrE;AAED,wBAAgB,aAAa,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAgCvE;AAED,wBAAsB,QAAQ,CAAC,MAAM,GAAE,YAAY,GAAG,aAAa,GAAG,YAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAmChH"}
@@ -9,9 +9,9 @@ import { join, dirname } from 'node:path';
9
9
  import { getGramatrDirFromEnv, getGramatrUrlFromEnv } from '../config-runtime.js';
10
10
  import { buildCodexHooksFile, ensureCodexHooksFeature, mergeManagedHooks, } from '../setup/integrations.js';
11
11
  import { CODEX_BLOCK_END, CODEX_BLOCK_START, CODEX_GUIDANCE, buildInstallPromptSuggestion, } from '../setup/instructions.js';
12
- import { buildGeminiExtensionManifest, buildGeminiHooksFile, buildLocalMcpServerEntry, buildOpenCodeMcpServerEntry, getGeminiExtensionDir, getGeminiHooksPath, getGeminiManifestPath, getOpenCodeConfigPath, mergeMcpServerConfig, } from '../setup/targets.js';
12
+ import { buildGeminiExtensionManifest, buildGeminiHooksFile, buildLocalMcpServerEntry, buildOpenCodeMcpServerEntry, buildOpenCodePlugin, getGeminiExtensionDir, getGeminiHooksPath, getGeminiManifestPath, getOpenCodeConfigPath, getOpenCodePluginPath, mergeMcpServerConfig, mergeOpenCodeMcpConfig, } from '../setup/targets.js';
13
13
  import { buildConnectorInstructions, buildPromptSuggestion, validateServerReachability, } from '../setup/web-connector.js';
14
- import { deployPlatformBinary, resolveBinaryPath } from './setup-shared.js';
14
+ import { deployPlatformBinary, resolveBinaryPath, writeHookWrappers } from './setup-shared.js';
15
15
  import { readJsonFile, readClaudeConfig, escapeRegExp, upsertManagedBlock, ensureLocalSettings, getCodexHooksPath, getCodexConfigPath, getCodexAgentsPath, HOME, } from './setup-config-io.js';
16
16
  function toTomlString(value) {
17
17
  return `"${value.replace(/\\/g, '\\\\').replace(/"/g, '\\"')}"`;
@@ -20,10 +20,16 @@ function stripTomlSection(content, section) {
20
20
  const pattern = new RegExp(`^\\[${escapeRegExp(section)}\\]\\n[\\s\\S]*?(?=^\\[[^\\n]+\\]\\n|\\s*$)`, 'm');
21
21
  return content.replace(pattern, '').replace(/\n{3,}/g, '\n\n').trimEnd();
22
22
  }
23
+ function stripLegacyTopLevelGramatrEnv(content) {
24
+ return content
25
+ .replace(/^\s*GRAMATR_(?:DIR|URL)\s*=\s*.*\n?/gm, '')
26
+ .replace(/\n{3,}/g, '\n\n')
27
+ .trimEnd();
28
+ }
23
29
  export function ensureCodexMcpServerConfig(configToml) {
24
30
  const gramatrDir = getGramatrDirFromEnv() || join(HOME, '.gramatr');
25
31
  const gramatrUrl = getGramatrUrlFromEnv() || 'https://api.gramatr.com/mcp';
26
- const base = stripTomlSection(stripTomlSection(configToml.trimEnd(), 'mcp_servers.gramatr.env'), 'mcp_servers.gramatr');
32
+ const base = stripLegacyTopLevelGramatrEnv(stripTomlSection(stripTomlSection(configToml.trimEnd(), 'mcp_servers.gramatr.env'), 'mcp_servers.gramatr'));
27
33
  const { command: mcpCommand, args: mcpArgs } = resolveBinaryPath();
28
34
  const block = [
29
35
  '[mcp_servers.gramatr]',
@@ -48,13 +54,15 @@ export function setupCodex(dryRun = false, showPrompts = false) {
48
54
  const hooksPath = getCodexHooksPath();
49
55
  const configPath = getCodexConfigPath();
50
56
  const agentsPath = getCodexAgentsPath();
57
+ const gramatrDir = join(HOME, '.gramatr');
51
58
  const hooksConfig = readClaudeConfig(hooksPath);
52
- const managedHooks = buildCodexHooksFile(join(HOME, '.gramatr'));
59
+ const managedHooks = buildCodexHooksFile(gramatrDir);
53
60
  const mergedHooks = mergeManagedHooks(hooksConfig, managedHooks);
54
61
  const existingToml = existsSync(configPath) ? readFileSync(configPath, 'utf8') : '';
55
62
  const updatedToml = ensureCodexMcpServerConfig(ensureCodexHooksFeature(existingToml));
56
63
  const existingAgents = existsSync(agentsPath) ? readFileSync(agentsPath, 'utf8') : '';
57
64
  const updatedAgents = upsertManagedBlock(existingAgents, CODEX_GUIDANCE, CODEX_BLOCK_START, CODEX_BLOCK_END);
65
+ const repoLocalHooksPath = join(process.cwd(), '.codex', 'hooks.json');
58
66
  if (dryRun) {
59
67
  process.stderr.write('[gramatr] Dry run — would write to: ' + hooksPath + '\n');
60
68
  process.stderr.write(JSON.stringify(mergedHooks, null, 2) + '\n');
@@ -66,12 +74,16 @@ export function setupCodex(dryRun = false, showPrompts = false) {
66
74
  }
67
75
  mkdirSync(join(HOME, '.codex'), { recursive: true });
68
76
  ensureLocalSettings();
77
+ writeHookWrappers(gramatrDir);
69
78
  writeFileSync(hooksPath, JSON.stringify(mergedHooks, null, 2) + '\n', 'utf8');
70
79
  writeFileSync(configPath, updatedToml, 'utf8');
71
80
  writeFileSync(agentsPath, updatedAgents, 'utf8');
72
81
  process.stderr.write(`[gramatr] Configured Codex hooks in ${hooksPath}\n`);
73
82
  process.stderr.write(`[gramatr] Configured Codex MCP + hooks in ${configPath}\n`);
74
83
  process.stderr.write(`[gramatr] Configured Codex guidance in ${agentsPath}\n`);
84
+ if (existsSync(repoLocalHooksPath)) {
85
+ process.stderr.write(`[gramatr] Warning: repo-local Codex hooks detected at ${repoLocalHooksPath}. Global Codex hooks are authoritative and duplicate execution can occur until the repo-local file is removed.\n`);
86
+ }
75
87
  process.stderr.write('[gramatr] Restart Codex or start a new session to pick up the change.\n');
76
88
  if (showPrompts)
77
89
  emitInstallPromptSuggestion('codex');
@@ -131,19 +143,25 @@ export function setupOpenCode(dryRun = false, showPrompts = false) {
131
143
  const mcpEntry = buildOpenCodeMcpServerEntry(HOME, gramatrUrl);
132
144
  // OpenCode stores its config as JSON with an mcp section (similar to Cursor/VS Code)
133
145
  const current = readJsonFile(configPath, {});
134
- const next = mergeMcpServerConfig(current, mcpEntry);
146
+ const next = mergeOpenCodeMcpConfig(current, mcpEntry);
147
+ const pluginSource = buildOpenCodePlugin();
148
+ const pluginPath = getOpenCodePluginPath(HOME);
135
149
  if (dryRun) {
136
150
  process.stderr.write('[gramatr] Dry run — would write OpenCode config to: ' + configPath + '\n');
137
151
  process.stderr.write(JSON.stringify(next, null, 2) + '\n');
152
+ process.stderr.write(`[gramatr] Dry run — would write OpenCode plugin to: ${pluginPath}\n`);
153
+ process.stderr.write(pluginSource.split('\n').slice(0, 10).join('\n') + '\n');
138
154
  if (showPrompts)
139
155
  emitInstallPromptSuggestion('opencode');
140
156
  return;
141
157
  }
142
158
  mkdirSync(dirname(configPath), { recursive: true });
159
+ mkdirSync(dirname(pluginPath), { recursive: true });
143
160
  ensureLocalSettings();
144
161
  writeFileSync(configPath, JSON.stringify(next, null, 2) + '\n', 'utf8');
162
+ writeFileSync(pluginPath, pluginSource, 'utf8');
145
163
  process.stderr.write(`[gramatr] Configured OpenCode MCP server in ${configPath}\n`);
146
- process.stderr.write('[gramatr] Copy the plugin scaffold from packages/mcp/src/setup/examples/gramatr-opencode-plugin.ts\n');
164
+ process.stderr.write(`[gramatr] Deployed OpenCode plugin to ${pluginPath}\n`);
147
165
  process.stderr.write('[gramatr] Restart OpenCode to pick up the change.\n');
148
166
  if (showPrompts)
149
167
  emitInstallPromptSuggestion('opencode');
@@ -1 +1 @@
1
- {"version":3,"file":"setup-platforms.js","sourceRoot":"","sources":["../../src/bin/setup-platforms.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,YAAY,EACZ,aAAa,EACb,UAAU,EACV,SAAS,GACV,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,4BAA4B,GAC7B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,IAAI,GACL,MAAM,sBAAsB,CAAC;AAE9B,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;AAClE,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe,EAAE,OAAe;IACxD,MAAM,OAAO,GAAG,IAAI,MAAM,CACxB,OAAO,YAAY,CAAC,OAAO,CAAC,6CAA6C,EACzE,GAAG,CACJ,CAAC;IACF,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,UAAkB;IAC3D,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAC3E,MAAM,IAAI,GAAG,gBAAgB,CAC3B,gBAAgB,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,yBAAyB,CAAC,EACjE,qBAAqB,CACtB,CAAC;IAEF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACnE,MAAM,KAAK,GAAG;QACZ,uBAAuB;QACvB,aAAa,YAAY,CAAC,UAAU,CAAC,EAAE;QACvC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,EAAE;QACF,2BAA2B;QAC3B,iBAAiB,YAAY,CAAC,UAAU,CAAC,EAAE;QAC3C,iBAAiB,YAAY,CAAC,UAAU,CAAC,EAAE;KAC5C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAA0D;IACpG,MAAM,WAAW,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACxF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6FAA6F,CAAC,CAAC;AACtH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAM,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK;IAC5D,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpF,MAAM,WAAW,GAAG,0BAA0B,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC,CAAC;IACtF,MAAM,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,aAAa,GAAG,kBAAkB,CACtC,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,eAAe,CAChB,CAAC;IAEF,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;QAChF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAClE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;QACjF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;QACnF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;QAC3C,OAAO;IACT,CAAC;IAED,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,mBAAmB,EAAE,CAAC;IACtB,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9E,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAC/C,aAAa,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,SAAS,IAAI,CAAC,CAAC;IAC3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,UAAU,IAAI,CAAC,CAAC;IAClF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,UAAU,IAAI,CAAC,CAAC;IAC/E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAChG,IAAI,WAAW;QAAE,2BAA2B,CAAC,OAAO,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,UAAkB,EAAE,UAAkB,EAAE,MAAe;IACpF,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,MAAM,OAAO,GAAG,YAAY,CAA0B,UAAU,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAC3E,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,EAAE,wBAAwB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAEvF,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,UAAU,eAAe,UAAU,IAAI,CAAC,CAAC;QACjG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,mBAAmB,EAAE,CAAC;IACtB,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IACxE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,UAAU,kBAAkB,UAAU,IAAI,CAAC,CAAC;IACzF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,UAAU,2BAA2B,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAM,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK;IAC7D,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAC3E,MAAM,QAAQ,GAAG,4BAA4B,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,GAAG,YAAY,GAAG,IAAI,CAAC,CAAC;QACnG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC/D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mDAAmD,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;QAC7F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC5D,IAAI,WAAW;YAAE,2BAA2B,CAAC,YAAY,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,mBAAmB,EAAE,CAAC;IACtB,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9E,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IACxE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,YAAY,IAAI,CAAC,CAAC;IAC5F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,SAAS,IAAI,CAAC,CAAC;IAC5E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC9E,IAAI,WAAW;QAAE,2BAA2B,CAAC,YAAY,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAM,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK;IAC/D,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAC3E,MAAM,QAAQ,GAAG,2BAA2B,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE/D,qFAAqF;IACrF,MAAM,OAAO,GAAG,YAAY,CAA0B,UAAU,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAErD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;QACjG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3D,IAAI,WAAW;YAAE,2BAA2B,CAAC,UAAU,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IAED,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,mBAAmB,EAAE,CAAC;IACtB,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IACxE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,UAAU,IAAI,CAAC,CAAC;IACpF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sGAAsG,CAAC,CAAC;IAC7H,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAC5E,IAAI,WAAW;QAAE,2BAA2B,CAAC,UAAU,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,SAAsD,YAAY;IAC/F,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAE3E,2BAA2B;IAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,UAAU,OAAO,CAAC,CAAC;IACrF,MAAM,YAAY,GAAG,MAAM,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAClE,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,YAAY,CAAC,UAAU,OAAO,CAAC,CAAC;IAC9F,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC;QACxF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oFAAoF,CAAC,CAAC;IAC7G,CAAC;IAED,2CAA2C;IAC3C,MAAM,YAAY,GAAG,0BAA0B,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,YAAY,CAAC,MAAM,IAAI,CAAC,CAAC;IAC/D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,YAAY,CAAC,SAAS,IAAI,CAAC,CAAC;IAClE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,YAAY,CAAC,UAAU,IAAI,CAAC,CAAC;IACnE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,YAAY,CAAC,aAAa,MAAM,CAAC,CAAC;IAEzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,0CAA0C;IAC1C,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAElD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACxF,mDAAmD;IACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAEzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6FAA6F,CAAC,CAAC;AACtH,CAAC"}
1
+ {"version":3,"file":"setup-platforms.js","sourceRoot":"","sources":["../../src/bin/setup-platforms.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,YAAY,EACZ,aAAa,EACb,UAAU,EACV,SAAS,GACV,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,4BAA4B,GAC7B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,IAAI,GACL,MAAM,sBAAsB,CAAC;AAE9B,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;AAClE,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe,EAAE,OAAe;IACxD,MAAM,OAAO,GAAG,IAAI,MAAM,CACxB,OAAO,YAAY,CAAC,OAAO,CAAC,6CAA6C,EACzE,GAAG,CACJ,CAAC;IACF,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;AAC3E,CAAC;AAED,SAAS,6BAA6B,CAAC,OAAe;IACpD,OAAO,OAAO;SACX,OAAO,CAAC,uCAAuC,EAAE,EAAE,CAAC;SACpD,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;SAC1B,OAAO,EAAE,CAAC;AACf,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,UAAkB;IAC3D,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAC3E,MAAM,IAAI,GAAG,6BAA6B,CACxC,gBAAgB,CACd,gBAAgB,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,yBAAyB,CAAC,EACjE,qBAAqB,CACtB,CACF,CAAC;IAEF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACnE,MAAM,KAAK,GAAG;QACZ,uBAAuB;QACvB,aAAa,YAAY,CAAC,UAAU,CAAC,EAAE;QACvC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,EAAE;QACF,2BAA2B;QAC3B,iBAAiB,YAAY,CAAC,UAAU,CAAC,EAAE;QAC3C,iBAAiB,YAAY,CAAC,UAAU,CAAC,EAAE;KAC5C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAA0D;IACpG,MAAM,WAAW,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACxF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6FAA6F,CAAC,CAAC;AACtH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAM,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK;IAC5D,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpF,MAAM,WAAW,GAAG,0BAA0B,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC,CAAC;IACtF,MAAM,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,aAAa,GAAG,kBAAkB,CACtC,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,eAAe,CAChB,CAAC;IACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAEvE,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;QAChF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAClE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;QACjF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;QACnF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;QAC3C,OAAO;IACT,CAAC;IAED,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,mBAAmB,EAAE,CAAC;IACtB,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC9B,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9E,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IAC/C,aAAa,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,SAAS,IAAI,CAAC,CAAC;IAC3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,UAAU,IAAI,CAAC,CAAC;IAClF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,UAAU,IAAI,CAAC,CAAC;IAC/E,IAAI,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,yDAAyD,kBAAkB,kHAAkH,CAC9L,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAChG,IAAI,WAAW;QAAE,2BAA2B,CAAC,OAAO,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,UAAkB,EAAE,UAAkB,EAAE,MAAe;IACpF,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,MAAM,OAAO,GAAG,YAAY,CAA0B,UAAU,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAC3E,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,EAAE,wBAAwB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAEvF,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,UAAU,eAAe,UAAU,IAAI,CAAC,CAAC;QACjG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,mBAAmB,EAAE,CAAC;IACtB,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IACxE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,UAAU,kBAAkB,UAAU,IAAI,CAAC,CAAC;IACzF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,UAAU,2BAA2B,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAM,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK;IAC7D,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAC3E,MAAM,QAAQ,GAAG,4BAA4B,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,GAAG,YAAY,GAAG,IAAI,CAAC,CAAC;QACnG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC/D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mDAAmD,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;QAC7F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC5D,IAAI,WAAW;YAAE,2BAA2B,CAAC,YAAY,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,mBAAmB,EAAE,CAAC;IACtB,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9E,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IACxE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,YAAY,IAAI,CAAC,CAAC;IAC5F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,SAAS,IAAI,CAAC,CAAC;IAC5E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC9E,IAAI,WAAW;QAAE,2BAA2B,CAAC,YAAY,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAM,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK;IAC/D,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAC3E,MAAM,QAAQ,GAAG,2BAA2B,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE/D,qFAAqF;IACrF,MAAM,OAAO,GAAG,YAAY,CAA0B,UAAU,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAEvD,MAAM,YAAY,GAAG,mBAAmB,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE/C,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sDAAsD,GAAG,UAAU,GAAG,IAAI,CAAC,CAAC;QACjG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uDAAuD,UAAU,IAAI,CAAC,CAAC;QAC5F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAC9E,IAAI,WAAW;YAAE,2BAA2B,CAAC,UAAU,CAAC,CAAC;QACzD,OAAO;IACT,CAAC;IAED,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,mBAAmB,EAAE,CAAC;IACtB,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IACxE,aAAa,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAChD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,UAAU,IAAI,CAAC,CAAC;IACpF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,UAAU,IAAI,CAAC,CAAC;IAC9E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAC5E,IAAI,WAAW;QAAE,2BAA2B,CAAC,UAAU,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,SAAsD,YAAY;IAC/F,MAAM,UAAU,GAAG,oBAAoB,EAAE,IAAI,6BAA6B,CAAC;IAE3E,2BAA2B;IAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,UAAU,OAAO,CAAC,CAAC;IACrF,MAAM,YAAY,GAAG,MAAM,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAClE,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;QAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,YAAY,CAAC,UAAU,OAAO,CAAC,CAAC;IAC9F,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC;QACxF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oFAAoF,CAAC,CAAC;IAC7G,CAAC;IAED,2CAA2C;IAC3C,MAAM,YAAY,GAAG,0BAA0B,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,YAAY,CAAC,MAAM,IAAI,CAAC,CAAC;IAC/D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,YAAY,CAAC,SAAS,IAAI,CAAC,CAAC;IAClE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,YAAY,CAAC,UAAU,IAAI,CAAC,CAAC;IACnE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,YAAY,CAAC,aAAa,MAAM,CAAC,CAAC;IAEzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,0CAA0C;IAC1C,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAElD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACxF,mDAAmD;IACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAEzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6FAA6F,CAAC,CAAC;AACtH,CAAC"}
@@ -11,4 +11,11 @@ export declare function resolveBinaryPath(): {
11
11
  args: string[];
12
12
  };
13
13
  export declare function deployPlatformBinary(_dryRun?: boolean): boolean;
14
+ /**
15
+ * Write stable local wrappers for hook dispatch.
16
+ *
17
+ * Client configs should invoke `gramatr-hook ...` and rely on PATH resolution
18
+ * to reach these wrappers under ~/.gramatr/bin.
19
+ */
20
+ export declare function writeHookWrappers(gramatrDir: string): void;
14
21
  //# sourceMappingURL=setup-shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-shared.d.ts","sourceRoot":"","sources":["../../src/bin/setup-shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAQvE;AAED,wBAAgB,oBAAoB,CAAC,OAAO,UAAQ,GAAG,OAAO,CAI7D"}
1
+ {"version":3,"file":"setup-shared.d.ts","sourceRoot":"","sources":["../../src/bin/setup-shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAQvE;AAED,wBAAgB,oBAAoB,CAAC,OAAO,UAAQ,GAAG,OAAO,CAI7D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAuB1D"}
@@ -2,6 +2,8 @@
2
2
  * setup-shared — Small shared utilities used across setup modules.
3
3
  */
4
4
  import { execSync } from 'node:child_process';
5
+ import { mkdirSync, writeFileSync } from 'node:fs';
6
+ import { join } from 'node:path';
5
7
  /**
6
8
  * Returns the best available invocation for the gramatr server.
7
9
  * Prefers the globally installed binary (no network, no cache miss) over npx.
@@ -22,4 +24,20 @@ export function deployPlatformBinary(_dryRun = false) {
22
24
  // nothing to deploy. The globally installed package is always current.
23
25
  return true;
24
26
  }
27
+ /**
28
+ * Write stable local wrappers for hook dispatch.
29
+ *
30
+ * Client configs should invoke `gramatr-hook ...` and rely on PATH resolution
31
+ * to reach these wrappers under ~/.gramatr/bin.
32
+ */
33
+ export function writeHookWrappers(gramatrDir) {
34
+ const binDir = join(gramatrDir, 'bin');
35
+ mkdirSync(binDir, { recursive: true });
36
+ const shWrapper = join(binDir, 'gramatr-hook');
37
+ writeFileSync(shWrapper, '#!/bin/sh\nif command -v gramatr >/dev/null 2>&1; then\n exec gramatr hook "$@"\nfi\nif [ -x "$(dirname "$0")/gramatr" ]; then\n exec "$(dirname "$0")/gramatr" hook "$@"\nfi\nexec npx -y --prefer-offline @gramatr/mcp hook "$@"\n', { mode: 0o755 });
38
+ const cmdWrapper = join(binDir, 'gramatr-hook.cmd');
39
+ writeFileSync(cmdWrapper, '@echo off\nwhere gramatr >nul 2>&1\nif %ERRORLEVEL% == 0 (\n gramatr hook %*\n) else (\n npx -y --prefer-offline @gramatr/mcp hook %*\n)\n');
40
+ const gramatrWrapper = join(binDir, 'gramatr');
41
+ writeFileSync(gramatrWrapper, '#!/bin/sh\n# Locate gramatr and ensure the correct Node.js version is on PATH.\n# The gramatr binary uses #!/usr/bin/env node, so the nvm bin dir must\n# come first on PATH or it will pick up the system node which lacks node:sqlite.\nif [ -d "$HOME/.nvm/versions/node" ]; then\n for bin_dir in "$HOME"/.nvm/versions/node/*/bin; do\n if [ -x "$bin_dir/gramatr" ]; then\n export PATH="$bin_dir:$PATH"\n exec "$bin_dir/gramatr" "$@"\n fi\n done\nfi\nexec npx -y --prefer-offline @gramatr/mcp "$@"\n', { mode: 0o755 });
42
+ }
25
43
  //# sourceMappingURL=setup-shared.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-shared.js","sourceRoot":"","sources":["../../src/bin/setup-shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;;;GAIG;AACH,MAAM,UAAU,iBAAiB;IAC/B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;QAC7E,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACjC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAO,GAAG,KAAK;IAClD,2EAA2E;IAC3E,uEAAuE;IACvE,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"setup-shared.js","sourceRoot":"","sources":["../../src/bin/setup-shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;;;GAIG;AACH,MAAM,UAAU,iBAAiB;IAC/B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;QAC7E,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACjC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAO,GAAG,KAAK;IAClD,2EAA2E;IAC3E,uEAAuE;IACvE,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC/C,aAAa,CACX,SAAS,EACT,wOAAwO,EACxO,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAC;IAEF,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACpD,aAAa,CACX,UAAU,EACV,8IAA8I,CAC/I,CAAC;IAEF,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC/C,aAAa,CACX,cAAc,EACd,mgBAAmgB,EACngB,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAC;AACJ,CAAC"}
@@ -19,7 +19,7 @@
19
19
  export { addPluginRegistration, ensureLocalSettings, escapeRegExp, getClaudeConfigPath, getClaudeMarkdownPath, getClaudeSettingsPath, getCodexAgentsPath, getCodexConfigPath, getCodexHooksPath, getGramatrPluginDir, getGramatrSettingsPath, hasHookCommand, parseJson, readClaudeConfig, readJsonFile, readManagedBlock, removeGramatrHooks, upsertManagedBlock, writeMarketplaceManifest, writePluginFiles, } from "./setup-config-io.js";
20
20
  export { runCleanInstall } from "./setup-legacy.js";
21
21
  export { emitInstallPromptSuggestion, ensureCodexMcpServerConfig, setupCodex, setupGemini, setupMcpTarget, setupOpenCode, setupWeb, } from "./setup-platforms.js";
22
- export { deployPlatformBinary, resolveBinaryPath, } from "./setup-shared.js";
22
+ export { deployPlatformBinary, resolveBinaryPath, writeHookWrappers, } from "./setup-shared.js";
23
23
  type SetupTarget = "all" | "claude-code" | "claude" | "codex" | "opencode" | "claude-desktop" | "chatgpt-desktop" | "gemini" | "cursor" | "windsurf" | "vscode";
24
24
  export type InstallableTarget = Exclude<SetupTarget, "all">;
25
25
  export declare const AUTO_TARGET_ORDER: InstallableTarget[];
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/bin/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAyBH,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,QAAQ,GACT,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAmC3B,KAAK,WAAW,GACZ,KAAK,GACL,aAAa,GACb,QAAQ,GACR,OAAO,GACP,UAAU,GACV,gBAAgB,GAChB,iBAAiB,GACjB,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,QAAQ,CAAC;AAUb,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;AAC5D,eAAO,MAAM,iBAAiB,EAAE,iBAAiB,EAUhD,CAAC;AAkCF,wBAAgB,eAAe,CAC7B,MAAM,UAAQ,EACd,YAAY,UAAQ,EACpB,WAAW,UAAQ,EACnB,cAAc,UAAO,GACpB,IAAI,CA+JN;AAED,qEAAqE;AACrE,wBAAgB,WAAW,CACzB,MAAM,UAAQ,EACd,YAAY,UAAQ,EACpB,WAAW,UAAQ,EACnB,cAAc,UAAO,GACpB,IAAI,CAEN;AAID,wBAAgB,kBAAkB,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAG5E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAG7E;AAED,wBAAgB,WAAW,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAGrE;AAED,wBAAgB,aAAa,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAGvE;AAED,wBAAgB,WAAW,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAGrE;AAID,wBAAgB,sBAAsB,IAAI,iBAAiB,EAAE,CAc5D;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;CAClB,GACL,MAAM,CA6ER;AAqOD,wBAAgB,kBAAkB,CAChC,MAAM,GAAE,WAAmB,EAC3B,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GACtD,MAAM,CAiER"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/bin/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAyBH,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,QAAQ,GACT,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAmC3B,KAAK,WAAW,GACZ,KAAK,GACL,aAAa,GACb,QAAQ,GACR,OAAO,GACP,UAAU,GACV,gBAAgB,GAChB,iBAAiB,GACjB,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,QAAQ,CAAC;AAUb,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;AAC5D,eAAO,MAAM,iBAAiB,EAAE,iBAAiB,EAUhD,CAAC;AAIF,wBAAgB,eAAe,CAC7B,MAAM,UAAQ,EACd,YAAY,UAAQ,EACpB,WAAW,UAAQ,EACnB,cAAc,UAAO,GACpB,IAAI,CA+JN;AAED,qEAAqE;AACrE,wBAAgB,WAAW,CACzB,MAAM,UAAQ,EACd,YAAY,UAAQ,EACpB,WAAW,UAAQ,EACnB,cAAc,UAAO,GACpB,IAAI,CAEN;AAID,wBAAgB,kBAAkB,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAG5E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAG7E;AAED,wBAAgB,WAAW,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAGrE;AAED,wBAAgB,aAAa,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAGvE;AAED,wBAAgB,WAAW,CAAC,MAAM,UAAQ,EAAE,WAAW,UAAQ,GAAG,IAAI,CAGrE;AAID,wBAAgB,sBAAsB,IAAI,iBAAiB,EAAE,CAc5D;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;CAClB,GACL,MAAM,CA+ER;AA0YD,wBAAgB,kBAAkB,CAChC,MAAM,GAAE,WAAmB,EAC3B,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO,GACtD,MAAM,CAiER"}
package/dist/bin/setup.js CHANGED
@@ -25,14 +25,14 @@ import { getChatgptDesktopConfigPath, getClaudeDesktopConfigPath, getCursorConfi
25
25
  export { addPluginRegistration, ensureLocalSettings, escapeRegExp, getClaudeConfigPath, getClaudeMarkdownPath, getClaudeSettingsPath, getCodexAgentsPath, getCodexConfigPath, getCodexHooksPath, getGramatrPluginDir, getGramatrSettingsPath, hasHookCommand, parseJson, readClaudeConfig, readJsonFile, readManagedBlock, removeGramatrHooks, upsertManagedBlock, writeMarketplaceManifest, writePluginFiles, } from "./setup-config-io.js";
26
26
  export { runCleanInstall } from "./setup-legacy.js";
27
27
  export { emitInstallPromptSuggestion, ensureCodexMcpServerConfig, setupCodex, setupGemini, setupMcpTarget, setupOpenCode, setupWeb, } from "./setup-platforms.js";
28
- export { deployPlatformBinary, resolveBinaryPath, } from "./setup-shared.js";
28
+ export { deployPlatformBinary, resolveBinaryPath, writeHookWrappers, } from "./setup-shared.js";
29
29
  // ── Local imports from sub-modules ──
30
30
  import { migrateSettingsJson } from "../hooks/lib/gramatr-hook-utils.js";
31
31
  import { CLAUDE_CODE_HOOKS } from "../setup/generated/platform-hooks.js";
32
32
  import { ensureLocalSettings, getClaudeConfigPath, getClaudeMarkdownPath, getClaudeSettingsPath, getCodexAgentsPath, getCodexConfigPath as getCodexConfigPathFn, getCodexHooksPath as getCodexHooksPathFn, HOME, hasHookCommand, parseJson, readClaudeConfig, readManagedBlock, removeGramatrHooks, upsertManagedBlock, } from "./setup-config-io.js";
33
33
  import { runCleanInstall } from "./setup-legacy.js";
34
34
  import { emitInstallPromptSuggestion, setupCodex, setupGemini, setupMcpTarget, setupOpenCode, } from "./setup-platforms.js";
35
- import { deployPlatformBinary, resolveBinaryPath } from "./setup-shared.js";
35
+ import { deployPlatformBinary, resolveBinaryPath, writeHookWrappers } from "./setup-shared.js";
36
36
  import { killStaleMcpServers } from "./login.js";
37
37
  export const AUTO_TARGET_ORDER = [
38
38
  "claude-code",
@@ -45,20 +45,6 @@ export const AUTO_TARGET_ORDER = [
45
45
  "windsurf",
46
46
  "vscode",
47
47
  ];
48
- // ── writeHookWrappers — OS-specific thin wrappers for hook dispatch ──
49
- // Writes gramatr-hook (Unix) and gramatr-hook.cmd (Windows) into $GRAMATR_DIR/bin/.
50
- // Prefers the globally installed binary; falls back to npx if not in PATH.
51
- // Runtime check so the wrapper stays correct after package installs/upgrades.
52
- function writeHookWrappers(gramatrDir) {
53
- const binDir = join(gramatrDir, "bin");
54
- mkdirSync(binDir, { recursive: true });
55
- const shWrapper = join(binDir, "gramatr-hook");
56
- writeFileSync(shWrapper, '#!/bin/sh\nif command -v gramatr >/dev/null 2>&1; then\n exec gramatr hook "$@"\nelse\n exec npx -y --prefer-offline @gramatr/mcp hook "$@"\nfi\n', { mode: 0o755 });
57
- const cmdWrapper = join(binDir, "gramatr-hook.cmd");
58
- writeFileSync(cmdWrapper, "@echo off\nwhere gramatr >nul 2>&1\nif %ERRORLEVEL% == 0 (\n gramatr hook %*\n) else (\n npx -y --prefer-offline @gramatr/mcp hook %*\n)\n");
59
- const gramatrWrapper = join(binDir, "gramatr");
60
- writeFileSync(gramatrWrapper, '#!/bin/sh\n# Locate gramatr and ensure the correct Node.js version is on PATH.\n# The gramatr binary uses #!/usr/bin/env node, so the nvm bin dir must\n# come first on PATH or it will pick up the system node which lacks node:sqlite.\nif [ -d "$HOME/.nvm/versions/node" ]; then\n for bin_dir in "$HOME"/.nvm/versions/node/*/bin; do\n if [ -x "$bin_dir/gramatr" ]; then\n export PATH="$bin_dir:$PATH"\n exec "$bin_dir/gramatr" "$@"\n fi\n done\nfi\nexec npx -y --prefer-offline @gramatr/mcp "$@"\n', { mode: 0o755 });
61
- }
62
48
  // ── setupClaudeCode — the primary Claude Code setup ──
63
49
  export function setupClaudeCode(dryRun = false, cleanInstall = false, showPrompts = false, showStatusLine = true) {
64
50
  if (!dryRun) {
@@ -246,16 +232,13 @@ export function setupAutoInstall(options = {}) {
246
232
  process.stderr.write("[gramatr] list-only mode: no setup changes made.\n");
247
233
  return selected.length;
248
234
  }
249
- if (cleanInstall) {
250
- runCleanInstall(dryRun);
251
- }
252
235
  for (const target of selected) {
253
236
  switch (target) {
254
237
  case "claude-code":
255
- setupClaudeCode(dryRun, false, showPrompts);
238
+ setupClaudeCode(dryRun, cleanInstall, showPrompts);
256
239
  break;
257
240
  case "claude": // legacy alias
258
- setupClaudeCode(dryRun, false, showPrompts);
241
+ setupClaudeCode(dryRun, cleanInstall, showPrompts);
259
242
  break;
260
243
  case "codex":
261
244
  setupCodex(dryRun, showPrompts);
@@ -285,6 +268,9 @@ export function setupAutoInstall(options = {}) {
285
268
  break;
286
269
  }
287
270
  }
271
+ if (cleanInstall && !selected.some((target) => target === "claude-code" || target === "claude")) {
272
+ process.stderr.write("[gramatr] clean-install requested, but no Claude Code target selected. Legacy cleanup is only applied during setup claude-code.\n");
273
+ }
288
274
  process.stderr.write(`[gramatr] Auto setup completed for ${selected.length} target(s).\n`);
289
275
  return selected.length;
290
276
  }
@@ -292,6 +278,24 @@ export function setupAutoInstall(options = {}) {
292
278
  function addResult(items, severity, label, detail) {
293
279
  items.push({ severity, label, detail });
294
280
  }
281
+ function collectHookCommands(config, eventName) {
282
+ if (!config || typeof config !== "object")
283
+ return [];
284
+ const hooksRoot = config.hooks;
285
+ if (!hooksRoot || typeof hooksRoot !== "object")
286
+ return [];
287
+ const entries = hooksRoot[eventName];
288
+ if (!Array.isArray(entries))
289
+ return [];
290
+ return entries.flatMap((entry) => Array.isArray(entry?.hooks)
291
+ ? entry.hooks
292
+ .map((hook) => (typeof hook?.command === "string" ? hook.command : null))
293
+ .filter((command) => command !== null)
294
+ : []);
295
+ }
296
+ function usesCanonicalLauncher(command) {
297
+ return /\bgramatr-hook\b/.test(command);
298
+ }
295
299
  function verifyClaudeCode(items) {
296
300
  const settingsPath = getClaudeSettingsPath();
297
301
  const configPath = getClaudeConfigPath();
@@ -307,6 +311,15 @@ function verifyClaudeCode(items) {
307
311
  else {
308
312
  addResult(items, "error", "claude.mcp_server", `${configPath} missing mcpServers.gramatr — run: npx @gramatr/mcp setup claude-code`);
309
313
  }
314
+ const misplacedMcpServer = !!settings?.mcpServers &&
315
+ typeof settings.mcpServers === "object" &&
316
+ typeof settings.mcpServers.gramatr === "object";
317
+ if (misplacedMcpServer) {
318
+ addResult(items, "error", "claude.settings_boundary", `${settingsPath} should not contain mcpServers.gramatr — run: npx @gramatr/mcp setup claude-code`);
319
+ }
320
+ else {
321
+ addResult(items, "ok", "claude.settings_boundary", `${settingsPath} keeps mcpServers.gramatr out of settings.json`);
322
+ }
310
323
  // Check that settings.json hooks include the required gramatr hook commands.
311
324
  // hasHookCommand expects an object with a `hooks` key (same shape as hooks.json),
312
325
  // so we pass the whole settings object — it reads settings.hooks[eventName].
@@ -318,6 +331,30 @@ function verifyClaudeCode(items) {
318
331
  else {
319
332
  addResult(items, "error", "claude.hooks", `${settingsPath} missing required hooks (session-start=${hasSessionStartHook}, user-prompt-submit=${hasPromptHook}) — run: npx @gramatr/mcp setup claude-code`);
320
333
  }
334
+ const claudeCommands = [
335
+ ...collectHookCommands(settings, "SessionStart"),
336
+ ...collectHookCommands(settings, "UserPromptSubmit"),
337
+ ...collectHookCommands(settings, "PreToolUse"),
338
+ ...collectHookCommands(settings, "PostToolUse"),
339
+ ...collectHookCommands(settings, "Stop"),
340
+ ].filter((command) => command.includes("gramatr"));
341
+ const hasCanonicalClaudeLauncher = claudeCommands.length > 0 && claudeCommands.every(usesCanonicalLauncher);
342
+ if (hasCanonicalClaudeLauncher) {
343
+ addResult(items, "ok", "claude.launcher", `${settingsPath} uses the canonical gramatr-hook launcher`);
344
+ }
345
+ else {
346
+ addResult(items, "error", "claude.launcher", `${settingsPath} has non-canonical hook commands — run: npx @gramatr/mcp setup claude-code`);
347
+ }
348
+ const envPath = typeof settings?.env?.PATH === "string" ? String(settings.env.PATH) : "";
349
+ const sep = process.platform === "win32" ? ";" : ":";
350
+ const pathEntries = envPath.split(sep).filter(Boolean);
351
+ const expectedClaudeBin = `${HOME}/.gramatr/bin`;
352
+ if (pathEntries.includes(expectedClaudeBin)) {
353
+ addResult(items, "ok", "claude.path_injection", `${settingsPath} injects ${expectedClaudeBin} into PATH`);
354
+ }
355
+ else {
356
+ addResult(items, "error", "claude.path_injection", `${settingsPath} missing PATH injection for ${expectedClaudeBin}`);
357
+ }
321
358
  const managedBlock = readManagedBlock(markdownPath, CLAUDE_BLOCK_START, CLAUDE_BLOCK_END);
322
359
  if (managedBlock) {
323
360
  addResult(items, "ok", "claude.guidance", `${markdownPath} contains managed gramatr guidance block`);
@@ -330,6 +367,7 @@ function verifyCodex(items) {
330
367
  const hooksPath = getCodexHooksPathFn();
331
368
  const configPath = getCodexConfigPathFn();
332
369
  const agentsPath = getCodexAgentsPath();
370
+ const repoLocalHooksPath = join(process.cwd(), ".codex", "hooks.json");
333
371
  const hooks = parseJson(hooksPath);
334
372
  const hasPromptHook = hasHookCommand(hooks, "UserPromptSubmit", "hook user-prompt-submit");
335
373
  const hasSessionStartHook = hasHookCommand(hooks, "SessionStart", "hook session-start");
@@ -340,6 +378,18 @@ function verifyCodex(items) {
340
378
  else {
341
379
  addResult(items, "error", "codex.hooks", `${hooksPath} missing required hooks (session-start=${hasSessionStartHook}, user-prompt-submit=${hasPromptHook}, stop=${hasStopHook})`);
342
380
  }
381
+ const codexCommands = [
382
+ ...collectHookCommands(hooks, "SessionStart"),
383
+ ...collectHookCommands(hooks, "UserPromptSubmit"),
384
+ ...collectHookCommands(hooks, "Stop"),
385
+ ].filter((command) => command.includes("gramatr"));
386
+ const hasCanonicalCodexLauncher = codexCommands.length > 0 && codexCommands.every(usesCanonicalLauncher);
387
+ if (hasCanonicalCodexLauncher) {
388
+ addResult(items, "ok", "codex.launcher", `${hooksPath} uses the canonical gramatr-hook launcher`);
389
+ }
390
+ else {
391
+ addResult(items, "error", "codex.launcher", `${hooksPath} has non-canonical hook commands — run: npx @gramatr/mcp setup codex`);
392
+ }
343
393
  const configToml = existsSync(configPath) ? readFileSync(configPath, "utf8") : "";
344
394
  const hooksEnabled = /^\s*codex_hooks\s*=\s*true\s*$/m.test(configToml);
345
395
  if (hooksEnabled) {
@@ -355,6 +405,21 @@ function verifyCodex(items) {
355
405
  else {
356
406
  addResult(items, "error", "codex.mcp_server", `${configPath} missing mcp_servers.gramatr`);
357
407
  }
408
+ const hasScopedEnv = /^\[mcp_servers\.gramatr\.env\]\s*$/m.test(configToml);
409
+ const configWithoutScopedEnv = configToml.replace(/^\[mcp_servers\.gramatr\.env\]\n(?:\s*GRAMATR_(?:DIR|URL)\s*=.*\n?)*/m, "");
410
+ const hasLegacyTopLevelEnv = /^\s*GRAMATR_(?:DIR|URL)\s*=\s*.+$/m.test(configWithoutScopedEnv);
411
+ if (hasScopedEnv && !hasLegacyTopLevelEnv) {
412
+ addResult(items, "ok", "codex.env_scope", `${configPath} keeps GRAMATR_* env scoped under [mcp_servers.gramatr.env]`);
413
+ }
414
+ else {
415
+ addResult(items, "error", "codex.env_scope", `${configPath} has stale or missing GRAMATR_* env scoping — run: npx @gramatr/mcp setup codex`);
416
+ }
417
+ if (existsSync(repoLocalHooksPath)) {
418
+ addResult(items, "error", "codex.duplicate_hooks", `${repoLocalHooksPath} exists alongside global Codex hooks and can cause duplicate execution`);
419
+ }
420
+ else {
421
+ addResult(items, "ok", "codex.duplicate_hooks", `no repo-local Codex hooks detected under ${join(process.cwd(), ".codex")}`);
422
+ }
358
423
  const managedBlock = readManagedBlock(agentsPath, CODEX_BLOCK_START, CODEX_BLOCK_END);
359
424
  if (managedBlock) {
360
425
  addResult(items, "ok", "codex.guidance", `${agentsPath} contains managed gramatr guidance block`);
@@ -376,7 +441,17 @@ function verifyJsonMcpTarget(items, label, configPath) {
376
441
  }
377
442
  }
378
443
  function verifyOpenCode(items) {
379
- verifyJsonMcpTarget(items, "opencode", getOpenCodeConfigPath(HOME));
444
+ const configPath = getOpenCodeConfigPath(HOME);
445
+ const json = parseJson(configPath);
446
+ const gramatrServer = json?.mcp && typeof json.mcp === "object"
447
+ ? json.mcp.gramatr
448
+ : null;
449
+ if (gramatrServer) {
450
+ addResult(items, "ok", "opencode.mcp_server", `${configPath} has mcp.gramatr`);
451
+ }
452
+ else {
453
+ addResult(items, "error", "opencode.mcp_server", `${configPath} missing mcp.gramatr`);
454
+ }
380
455
  }
381
456
  function verifyGemini(items) {
382
457
  const manifestPath = getGeminiManifestPath(HOME);