@polderlabs/bizar-omp 0.4.1 → 0.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +137 -58
  2. package/dist/cli/agents-ink.d.ts +24 -0
  3. package/dist/cli/agents-ink.d.ts.map +1 -0
  4. package/dist/cli/agents-ink.js +297 -0
  5. package/dist/cli/agents-ink.js.map +1 -0
  6. package/dist/cli/agents.d.ts +10 -2
  7. package/dist/cli/agents.d.ts.map +1 -1
  8. package/dist/cli/agents.js +137 -90
  9. package/dist/cli/agents.js.map +1 -1
  10. package/dist/cli/directory-selector.d.ts +19 -0
  11. package/dist/cli/directory-selector.d.ts.map +1 -0
  12. package/dist/cli/directory-selector.js +103 -0
  13. package/dist/cli/directory-selector.js.map +1 -0
  14. package/dist/cli/install.d.ts +6 -2
  15. package/dist/cli/install.d.ts.map +1 -1
  16. package/dist/cli/install.js +21 -6
  17. package/dist/cli/install.js.map +1 -1
  18. package/dist/cli/main.js +46 -5
  19. package/dist/cli/main.js.map +1 -1
  20. package/dist/cli/omb.js +9 -1
  21. package/dist/cli/omb.js.map +1 -1
  22. package/dist/cli/setup-ui.d.ts +38 -0
  23. package/dist/cli/setup-ui.d.ts.map +1 -0
  24. package/dist/cli/setup-ui.js +90 -0
  25. package/dist/cli/setup-ui.js.map +1 -0
  26. package/dist/omp/omb-sessions.d.ts +12 -0
  27. package/dist/omp/omb-sessions.d.ts.map +1 -1
  28. package/dist/omp/omb-sessions.js +148 -1
  29. package/dist/omp/omb-sessions.js.map +1 -1
  30. package/dist/omp/omb-settings.d.ts +10 -0
  31. package/dist/omp/omb-settings.d.ts.map +1 -0
  32. package/dist/omp/omb-settings.js +34 -0
  33. package/dist/omp/omb-settings.js.map +1 -0
  34. package/dist/omp/tmux.d.ts +6 -0
  35. package/dist/omp/tmux.d.ts.map +1 -1
  36. package/dist/omp/tmux.js +46 -10
  37. package/dist/omp/tmux.js.map +1 -1
  38. package/docs/assets/bizar-omp-banner.svg +20 -0
  39. package/docs/assets/sponsored-by-polderlabs.svg +9 -0
  40. package/docs/compatibility/baseline.json +1 -1
  41. package/docs/releases/0.4.2.md +9 -0
  42. package/docs/releases/0.4.3.md +6 -0
  43. package/docs/releases/native-stable.md +1 -1
  44. package/docs/releases/support-matrix.md +1 -1
  45. package/package.json +6 -1
  46. package/skills/bizar-omp/SKILL.md +4 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-ink.js","sourceRoot":"","sources":["../../src/cli/agents-ink.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAA6C,MAAM,wBAAwB,CAAC;AAE3H,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAwB,MAAM,yBAAyB,CAAC;AAoB7G,MAAM,WAAW,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/I,MAAM,WAAW,GAAG,CAAC,KAAsB,EAA+B,EAAE,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;AACvJ,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAU,EAAE,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AACrH,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;AAE7J,SAAS,GAAG,CAAC,OAAuB;IAClC,MAAM,SAAS,GAAG,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,SAAS,CAAC;IAC9D,IAAI,CAAC,SAAS;QAAE,OAAO,aAAa,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;IACvE,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,UAAU,CAAC;IACpC,IAAI,OAAO,GAAG,IAAI;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;IAC9D,IAAI,OAAO,GAAG,KAAK;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IACjE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAC/C,CAAC;AAED,SAAS,aAAa,CAAC,QAA0B;IAC/C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,OAAO,IAAI,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpG,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,eAAe,CAAC,WAA6B,EAAE,QAAqB;IAC3E,OAAO,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;AAC9G,CAAC;AAED,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,QAAQ,EAA+C;IAC5E,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;IAClF,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;IACrF,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IAC5E,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,aACzF,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,aACjC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,0CAA4B,EACnD,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,GAAQ,IAClC,EACN,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,aACvB,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,wBAAI,SAAS,kBAAkB,EAClD,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,wBAAI,YAAY,qBAAqB,EACzD,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBAAI,OAAO,gBAAgB,IACzC,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAA6D;IACtG,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,CACL,MAAC,GAAG,IAAC,KAAK,EAAC,KAAK,EAAC,QAAQ,EAAE,EAAE,EAAE,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,aACtG,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,2BAAkB,EACzC,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,aACvC,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,2CAAgB,KAAC,IAAI,IAAC,QAAQ,kBAAE,QAAQ,CAAC,MAAM,GAAQ,IAAO,EACrF,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,QAAQ,2CAA4B,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CACvG,MAAC,IAAI,IAAe,KAAK,EAAE,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aAC1E,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,OAAE,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,GAAQ,KAD1F,OAAO,CAEX,CACR,CAAC,IACE,EACN,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,aAC3F,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,QAAQ,0BAAiB,EAC1C,KAAC,IAAI,IAAC,QAAQ,iDAAkC,EAChD,KAAC,IAAI,IAAC,QAAQ,4CAA6B,EAC3C,KAAC,IAAI,IAAC,QAAQ,4CAA6B,IACvC,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAiE;IAC7G,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,WAAW,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACnD,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aACrF,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,aACjC,MAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,aACpD,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAG,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC,IAC3F,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,QAAQ,YAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,GAAQ,IAC7F,EACN,MAAC,GAAG,IAAC,WAAW,EAAE,CAAC,EAAE,cAAc,EAAC,eAAe,aACjD,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC,GAAQ,EAC5G,KAAC,IAAI,IAAC,QAAQ,kBAAE,GAAG,CAAC,OAAO,CAAC,GAAQ,IAChC,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAiF;IACrI,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,YAAY,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1H,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,CAAC,CAAC;IAC5D,IAAI,QAAqC,CAAC;IAC1C,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,aACzF,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,aACjC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,yBAAgB,EACvC,KAAC,IAAI,IAAC,QAAQ,kBAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,GAAQ,IACvI,EACN,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,YACtC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACtB,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,aACrC,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,+CAAsC,EAC1D,KAAC,IAAI,IAAC,QAAQ,+DAAgD,IAC1D,CACP,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAClC,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;oBAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC;oBAC3C,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC;oBACzB,OAAO,CACL,MAAC,GAAG,IAAoB,aAAa,EAAC,QAAQ,aAC3C,OAAO,IAAI,MAAC,IAAI,IAAC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,mBAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,IAAQ,EACzH,KAAC,UAAU,IAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,KAAK,QAAQ,EAAE,KAAK,EAAE,KAAK,GAAI,KAFpE,OAAO,CAAC,IAAI,CAGhB,CACP,CAAC;gBACJ,CAAC,CAAC,GACE,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,OAAO,EAAgC;IAC1D,OAAO,CACL,MAAC,GAAG,IAAC,KAAK,EAAC,KAAK,EAAC,QAAQ,EAAE,EAAE,EAAE,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,aACtG,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,iCAAwB,EAC9C,CAAC,OAAO,CAAC,CAAC,CAAC,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YAAE,KAAC,IAAI,IAAC,QAAQ,sDAAuC,GAAM,CAAC,CAAC,CAAC,CAC3F,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAC9C,MAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,aAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,OAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,IAAQ,EAC7G,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,QAAQ,2BAAY,EAC1B,KAAC,IAAI,cAAE,qBAAqB,CAAC,OAAO,CAAC,GAAQ,EAC7C,KAAC,IAAI,IAAC,QAAQ,kBAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,gCAAgC,GAAQ,IAC/F,EACN,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,QAAQ,8BAAe,EAC7B,KAAC,IAAI,cAAE,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAQ,IACjC,EACN,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,QAAQ,8BAAe,EAC7B,KAAC,IAAI,cAAE,KAAK,CAAC,OAAO,CAAC,OAAO,IAAI,KAAK,EAAE,EAAE,CAAC,GAAQ,IAC9C,EACN,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,QAAQ,oCAAqB,EACnC,KAAC,IAAI,cAAE,GAAG,CAAC,OAAO,CAAC,GAAQ,IACvB,IACF,CACP,IACG,CACP,CAAC;AACJ,CAAC;AAED,SAAS,MAAM;IACb,OAAO,CACL,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,EAAE,cAAc,EAAC,eAAe,aACnG,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,sBAAa,eAAS,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,qBAAe,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,eAAS,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,eAAc,EACrK,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,iBAAW,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,gBAAU,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,aAAO,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,aAAY,IACtJ,CACP,CAAC;AACJ,CAAC;AAED,SAAS,KAAK,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAgF;IAC9H,OAAO,CACL,MAAC,GAAG,IAAC,QAAQ,EAAC,UAAU,EAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,eAAe,EAAC,OAAO,EAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,aAClN,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,YAAE,KAAK,GAAQ,EACtC,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,YAAE,QAAQ,GAAO,IACtD,CACP,CAAC;AACJ,CAAC;AAID,SAAS,eAAe,CAAC,EACvB,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,OAAO,GASR;IACC,MAAM,gBAAgB,GAAG,QAAQ,EAAE,GAAG,IAAI,QAAQ,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACpF,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAiB,WAAW,CAAC,CAAC;IAC9D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACrE,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAoB,EAAE,CAAC,CAAC;IAChF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9D,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC/D,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvI,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;IACxI,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;IACzD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC,MAAM,GAAG,YAAY,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACvJ,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,KAAK,CAAC,cAAc,EAAE,cAAc,GAAG,YAAY,CAAC,CAAC;IACpG,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IAEjE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,KAAK,oBAAoB,CAAC,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACnF,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAC7B,oBAAoB,CAAC,CAAC,CAAC,CAAC;YACxB,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC;IAEjD,SAAS,CAAC,GAAG,EAAE;QACb,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9F,CAAC,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjC,MAAM,eAAe,GAAG,CAAC,MAAmC,EAAE,EAAE;QAC9D,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACtB,OAAO;QACT,CAAC;QACD,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,MAAmC,EAAE,EAAE;QAC5D,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO;QACjD,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;QAChG,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC7B,gBAAgB,CAAC,MAAM,CAAC,CAAC;YACzB,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;IAEF,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,CAAC,MAAM,CAAC,CAAC;iBAChC,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,CAAC,WAAW,CAAC,CAAC;;gBAC1C,OAAO,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QAED,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,IAAI,GAAG,CAAC,OAAO,IAAI,KAAK,KAAK,GAAG;gBAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;iBACnF,IAAI,GAAG,CAAC,SAAS,IAAI,KAAK,KAAK,GAAG;gBAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;iBACpI,IAAI,GAAG,CAAC,MAAM;gBAAE,eAAe,CAAC,iBAAiB,CAAC,CAAC;iBACnD,IAAI,GAAG,CAAC,UAAU,IAAI,KAAK,KAAK,GAAG;gBAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;iBACtE,IAAI,GAAG,CAAC,SAAS,IAAI,KAAK,KAAK,GAAG;gBAAE,UAAU,EAAE,CAAC;iBACjD,IAAI,GAAG,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,CAAC,EAAE,CAAC;gBAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;iBAC9H,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;gBAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;iBAClF,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,IAAI,GAAG,EAAE,CAAC;gBAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC;gBAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YACtI,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,MAAoD,EAAE,EAAE;YAC1E,IAAI,GAAG,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,CAAC;gBAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBACjF,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG;gBAAE,MAAM,CAAC,EAAE,CAAC,CAAC;iBAC1C,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,IAAI,GAAG;gBAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC;QAChG,CAAC,CAAC;QACF,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,IAAI,GAAG,CAAC,MAAM;gBAAE,OAAO,CAAC,MAAM,CAAC,CAAC;;gBAC3B,UAAU,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;aAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACtB,QAAQ,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC3E,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IACtD,OAAO,CACL,KAAC,KAAK,IAAC,KAAK,EAAC,mBAAmB,EAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,YAC7D,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,KAAK,WAAW,qCAA6B,EAC9G,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,CACtB,8BACE,MAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,aACpE,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBAAU,EAAA,KAAC,IAAI,cAAE,cAAc,IAAI,kCAAkC,GAAQ,IAC3F,EACN,KAAC,IAAI,IAAC,QAAQ,kBAAE,aAAa,GAAQ,EACrC,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,YACtC,OAAO,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,2CAA6B,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,wEAA+D,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;gCAC/N,MAAM,KAAK,GAAG,cAAc,GAAG,MAAM,CAAC;gCACtC,MAAM,UAAU,GAAG,KAAK,KAAK,iBAAiB,CAAC;gCAC/C,OAAO,CACL,MAAC,GAAG,IAAuC,aAAa,EAAC,QAAQ,EAAC,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aAChH,MAAC,IAAI,IAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,aAC9F,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAG,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAG,MAAM,CAAC,KAAK,IAC3I,EACN,UAAU,IAAI,MAAC,IAAI,IAAC,QAAQ,2BAAM,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,IAAQ,KAJ/D,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAKnC,CACP,CAAC;4BACJ,CAAC,CAAC,GACE,EACN,MAAC,IAAI,IAAC,QAAQ,mBAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,cAAc,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,eAAe,0DAA2C,IACxO,CACJ,CAAC,CAAC,CAAC,CACF,MAAC,IAAI,IAAC,QAAQ,yBAAI,UAAU,IAAQ,CACrC,EAED,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,aACvC,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,KAAK,MAAM,gCAAwB,EAC/F,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,aAAE,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBAAU,EAAA,KAAC,IAAI,cAAE,IAAI,IAAI,2BAA2B,GAAQ,IAAM,CAAC,CAAC,CAAC,MAAC,IAAI,IAAC,QAAQ,yBAAI,IAAI,IAAI,UAAU,IAAQ,IAC5M,EAEN,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,aACvC,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,KAAK,MAAM,gCAAwB,EAC/F,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAC,GAAG,IAAC,WAAW,EAAC,QAAQ,EAAC,WAAW,EAAC,MAAM,EAAC,QAAQ,EAAE,CAAC,aAAE,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBAAU,EAAA,KAAC,IAAI,cAAE,SAAS,IAAI,wBAAwB,GAAQ,IAAM,CAAC,CAAC,CAAC,MAAC,IAAI,IAAC,QAAQ,yBAAI,SAAS,IAAI,yBAAyB,IAAQ,IAClO,EACN,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,aACvC,KAAC,IAAI,IAAC,QAAQ,+GAAiF,EAC/F,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,YAAE,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,gEAAgE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,kCAAkC,GAAQ,IAC/M,IACF,GACA,CACT,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAA+H;IAC5M,MAAM,OAAO,GAA6B;QACxC,CAAC,yCAAyC,EAAE,QAAQ,CAAC,gBAAgB,CAAC;QACtE,CAAC,wCAAwC,EAAE,QAAQ,CAAC,cAAc,CAAC;QACnE,CAAC,oCAAoC,EAAE,QAAQ,CAAC,mBAAmB,CAAC;KACrE,CAAC;IACF,OAAO,CACL,MAAC,KAAK,IAAC,KAAK,EAAC,cAAc,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,aACzF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CACxC,MAAC,IAAI,IAAa,KAAK,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,eAAe,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aACxH,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,QAAI,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,QAAI,KAAK,KAD1D,KAAK,CAET,CACR,CAAC,EACF,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,QAAQ,gFAAiE,EAC/E,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,YAAE,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,yDAAyD,CAAC,CAAC,CAAC,EAAE,GAAQ,EAC7G,KAAC,IAAI,cAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAQ,EACtC,KAAC,kBAAkB,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAI,IACtE,CACT,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAqE;IAC1H,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS;YAAE,OAAO;QACzC,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;aACrB,IAAI,KAAK,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM;YAAE,QAAQ,EAAE,CAAC;aAC5C,IAAI,KAAK,KAAK,GAAG;YAAE,MAAM,EAAE,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAA4C;IAC/E,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACxF,OAAO,CACL,MAAC,KAAK,IAAC,KAAK,EAAC,sBAAsB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,aAClG,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,sBAAa,uCAAsC,EAC3E,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,kDAAiD,EAClF,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,oCAAmC,EACpE,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,kCAAiC,EAClE,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,+BAA8B,EAC/D,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,iCAAgC,EACjE,MAAC,IAAI,eAAC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBAAe,wBAAuB,EAC9D,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,QAAQ,6EAA8D,EAC5E,KAAC,IAAI,IAAC,QAAQ,oDAAqC,IAC7C,CACT,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAA4F;IACrJ,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG;YAAE,SAAS,EAAE,CAAC;aACxC,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;IACnE,CAAC,CAAC,CAAC;IACH,OAAO,CACL,MAAC,KAAK,IAAC,KAAK,EAAC,iBAAiB,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,aAC7F,MAAC,IAAI,IAAC,IAAI,mBAAE,OAAO,CAAC,OAAO,OAAG,OAAO,CAAC,EAAE,IAAQ,EAChD,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAQ,EAC9C,KAAC,IAAI,oBAAS,EACd,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,6DAAoD,EACxE,MAAC,IAAI,yBAAO,KAAC,IAAI,IAAC,KAAK,EAAC,KAAK,EAAC,IAAI,wBAAS,4CAA2C,IAChF,CACT,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAS;IACpG,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,aAAa,EAAE,CAAC;IAC1C,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IAChE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC1D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAW,CAAC;IAClD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IACpE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChG,MAAM,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE3C,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE,CAAC,cAAc,CAAC,MAAM,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAC5E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC3D,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACf,SAAS,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjH,MAAM,MAAM,GAAG,CAAC,MAAuB,EAAE,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1E,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,OAAO;YAAE,OAAO;QACpB,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QACpE,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QACtE,IAAI,GAAG,CAAC,OAAO,IAAI,KAAK,KAAK,GAAG;YAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;aAC1E,IAAI,GAAG,CAAC,SAAS,IAAI,KAAK,KAAK,GAAG;YAAE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;aAChH,IAAI,GAAG,CAAC,MAAM,IAAI,eAAe;YAAE,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;aACxF,IAAI,KAAK,KAAK,GAAG;YAAE,UAAU,CAAC,KAAK,CAAC,CAAC;aACrC,IAAI,KAAK,KAAK,GAAG,IAAI,eAAe;YAAE,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;aAC3F,IAAI,KAAK,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;YAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAAC,CAAC;aAC/D,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAAC,KAAK,OAAO,EAAE,CAAC;QAAC,CAAC;aACtC,IAAI,KAAK,KAAK,GAAG;YAAE,UAAU,CAAC,MAAM,CAAC,CAAC;aACtC,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;YAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,EAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,aACrF,KAAC,MAAM,IAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAI,EACxC,MAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,aACpC,KAAC,aAAa,IAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,GAAI,EAChE,KAAC,WAAW,IAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,GAAI,EACpH,KAAC,SAAS,IAAC,OAAO,EAAE,eAAe,GAAI,IACnC,EACN,KAAC,MAAM,KAAG,EACT,OAAO,KAAK,KAAK,IAAI,CACpB,KAAC,eAAe,IACd,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,EACpD,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,GACpC,CACH,EACA,OAAO,KAAK,MAAM,IAAI,KAAC,SAAS,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,GAAI,EAC3F,OAAO,KAAK,QAAQ,IAAI,eAAe,IAAI,KAAC,WAAW,IAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,GAAI,EACnN,OAAO,KAAK,UAAU,IAAI,CACzB,KAAC,aAAa,IACZ,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,GAAG,EAAE;oBACb,MAAM,KAAK,GAAsB,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,qBAAqB,CAAC;oBAC/I,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpE,CAAC,EACD,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,EACnE,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,GACpC,CACH,EACA,OAAO,KAAK,UAAU,IAAI,KAAC,kBAAkB,IAAC,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,kBAAkB,GAAI,IACtG,CACP,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAA2D;IACzG,QAAQ,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACvB,IAAI,GAAG,CAAC,OAAO;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;aAChD,IAAI,GAAG,CAAC,SAAS;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW,EAAE,GAAsB,EAAE,QAA0B,EAAE,QAAqB;IAC1H,IAAI,MAAM,GAAoB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,KAAC,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,GAAI,EAAE;QACpI,eAAe,EAAE,IAAI;KACtB,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,aAAa,EAAE,CAAC;IAC1B,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,6 +1,14 @@
1
1
  #!/usr/bin/env node
2
+ import { type OmbSettings } from "../omp/omb-settings.js";
2
3
  import { type OmbSessionInfo } from "../omp/omb-sessions.js";
3
- export declare function renderAgentsHub(sessions: OmbSessionInfo[], selected: number): string;
4
- /** Run the small, keyboard-first cross-project session switcher. */
4
+ interface HubRenderOptions {
5
+ currentCwd?: string;
6
+ maxVisible?: number;
7
+ notice?: string;
8
+ }
9
+ export declare function renderAgentsHub(sessions: OmbSessionInfo[], selected: number, options?: HubRenderOptions): string;
10
+ export declare function renderSettingsOverlay(settings: OmbSettings, selected: number): string;
11
+ /** Run the keyboard-first cross-project session manager. */
5
12
  export declare function runAgentsHub(cwd?: string, _args?: string[], env?: NodeJS.ProcessEnv): Promise<number>;
13
+ export {};
6
14
  //# sourceMappingURL=agents.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/cli/agents.ts"],"names":[],"mappings":";AAQA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAW9E,wBAAgB,eAAe,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAsBpF;AAiED,oEAAoE;AACpE,wBAAsB,YAAY,CAChC,GAAG,SAAgB,EACnB,KAAK,GAAE,MAAM,EAAO,EACpB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,MAAM,CAAC,CAkCjB"}
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/cli/agents.ts"],"names":[],"mappings":";AAcA,OAAO,EAAoC,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAA0C,KAAK,cAAc,EAAwB,MAAM,wBAAwB,CAAC;AAG3H,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAiDD,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,cAAc,EAAE,EAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,gBAAqB,GAC7B,MAAM,CAoCR;AAiBD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYrF;AA8CD,4DAA4D;AAC5D,wBAAsB,YAAY,CAChC,GAAG,SAAgB,EACnB,KAAK,GAAE,MAAM,EAAO,EACpB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,OAAO,CAAC,MAAM,CAAC,CAsBjB"}
@@ -1,63 +1,132 @@
1
1
  #!/usr/bin/env node
2
2
  import { randomBytes } from "node:crypto";
3
3
  import { existsSync, statSync } from "node:fs";
4
- import { homedir } from "node:os";
5
4
  import { resolve } from "node:path";
6
5
  import { createInterface } from "node:readline/promises";
7
6
  import { stdin as input, stdout as output } from "node:process";
8
- import { attachOmbSession, launchOmb } from "../omp/tmux.js";
9
- import { listOmbSessions } from "../omp/omb-sessions.js";
7
+ import { attachOmbSession, deleteOmbSession, launchOmb, ombSessionName, renameOmbSession, setOmbSessionMouse, } from "../omp/tmux.js";
8
+ import { loadOmbSettings, saveOmbSettings } from "../omp/omb-settings.js";
9
+ import { listOmbSessions, ombSessionDisplayName } from "../omp/omb-sessions.js";
10
+ import { runInkAgentsHub } from "./agents-ink.js";
11
+ const RESET = "\u001b[0m";
12
+ const DIM = "\u001b[2m";
13
+ const BOLD = "\u001b[1m";
14
+ const REVERSE = "\u001b[7m";
10
15
  function generatedSessionId() {
11
16
  return `s-${Date.now().toString(36)}-${randomBytes(2).toString("hex")}`;
12
17
  }
13
- function sessionGroups(sessions) {
14
- const projects = new Set(sessions.map(session => session.cwd));
15
- return `${sessions.length} session${sessions.length === 1 ? "" : "s"} across ${projects.size} project${projects.size === 1 ? "" : "s"}`;
18
+ function statusLabel(state) {
19
+ return state === "attached" ? "connected" : state === "detached" ? "disconnected" : "stopped";
16
20
  }
17
- export function renderAgentsHub(sessions, selected) {
21
+ function sessionAge(session) {
22
+ const timestamp = session.lastAttachedAt ?? session.createdAt;
23
+ if (!timestamp)
24
+ return "age ?";
25
+ const seconds = Math.max(0, Math.floor(Date.now() / 1000) - timestamp);
26
+ if (seconds < 60)
27
+ return "now";
28
+ if (seconds < 3600)
29
+ return `${Math.floor(seconds / 60)}m`;
30
+ if (seconds < 86400)
31
+ return `${Math.floor(seconds / 3600)}h`;
32
+ return `${Math.floor(seconds / 86400)}d`;
33
+ }
34
+ function truncate(value, width) {
35
+ if (value.length <= width)
36
+ return value;
37
+ if (width <= 1)
38
+ return value.slice(0, width);
39
+ return `${value.slice(0, width - 1)}…`;
40
+ }
41
+ function sessionSummary(session, currentCwd, terminalWidth) {
42
+ const project = truncate(ombSessionDisplayName(session), 28).padEnd(28);
43
+ const location = session.cwd === currentCwd ? "current project" : session.cwd;
44
+ const locationWidth = Math.max(18, Math.min(44, terminalWidth - 28 - 12 - 8));
45
+ return `${project} ${statusLabel(session.state).padEnd(12)} ${truncate(location, locationWidth).padEnd(locationWidth)} ${sessionAge(session)}`;
46
+ }
47
+ function counts(sessions) {
48
+ const connected = sessions.filter(session => session.state === "attached").length;
49
+ const disconnected = sessions.filter(session => session.state === "detached").length;
50
+ const stopped = sessions.filter(session => session.state === "dead").length;
51
+ return `${sessions.length} session${sessions.length === 1 ? "" : "s"} · ${connected} connected · ${disconnected} disconnected · ${stopped} stopped`;
52
+ }
53
+ function sectionName(state) {
54
+ return state === "attached" ? "Connected" : state === "detached" ? "Disconnected" : "Stopped";
55
+ }
56
+ export function renderAgentsHub(sessions, selected, options = {}) {
57
+ const currentCwd = options.currentCwd || process.cwd();
58
+ const terminalWidth = Math.max(60, output.columns || 90);
59
+ const maxVisible = Math.max(4, options.maxVisible ?? Math.max(4, (output.rows || 24) - 10));
60
+ const start = Math.max(0, Math.min(Math.max(0, sessions.length - maxVisible), selected - Math.floor(maxVisible / 2)));
61
+ const visible = sessions.slice(start, start + maxVisible);
18
62
  const lines = [
19
- "Bizar Agents",
20
- sessionGroups(sessions),
63
+ `${BOLD}Bizar Agents${RESET}`,
64
+ counts(sessions),
65
+ `${DIM}${truncate(currentCwd, terminalWidth - 2)}${RESET}`,
21
66
  "",
22
- "Enter attach n new session r refresh q quit",
67
+ `${DIM}Enter attach n new e rename d delete s settings r refresh ? help q quit${RESET}`,
23
68
  "",
24
69
  ];
25
70
  if (sessions.length === 0) {
26
71
  lines.push("No Bizar sessions are running.", "", "Press n to dispatch a new session.");
27
- return `${lines.join("\n")}\n`;
28
72
  }
29
- for (const [index, session] of sessions.entries()) {
30
- const marker = index === selected ? ">" : " ";
31
- const status = session.state.padEnd(8);
32
- const id = session.id === "main" ? "main" : session.id;
33
- lines.push(`${marker} ${session.project}/${id} ${status} ${session.cwd}`);
73
+ else {
74
+ let previousState;
75
+ for (const [offset, session] of visible.entries()) {
76
+ const index = start + offset;
77
+ if (session.state !== previousState) {
78
+ lines.push(`${BOLD}${sectionName(session.state)}${RESET}`);
79
+ previousState = session.state;
80
+ }
81
+ const row = `${index === selected ? ">" : " "} ${sessionSummary(session, currentCwd, terminalWidth)}`;
82
+ lines.push(index === selected ? `${REVERSE}${row}${RESET}` : row);
83
+ }
84
+ if (start > 0 || start + visible.length < sessions.length) {
85
+ lines.push(`${DIM}Showing ${start + 1}-${start + visible.length} of ${sessions.length}. Use Up/Down to scroll.${RESET}`);
86
+ }
34
87
  }
35
- lines.push("", "The hub manages Bizar's durable OMP sessions; other tmux sessions are left untouched.");
88
+ if (options.notice)
89
+ lines.push("", `${options.notice}`);
90
+ lines.push("", `${DIM}Bizar owns only sessions with the bizar- prefix; unrelated tmux sessions are untouched.${RESET}`);
36
91
  return `${lines.join("\n")}\n`;
37
92
  }
38
- function keyOf(data) {
39
- const value = data.toString("utf8");
40
- if (value === "\u0003" || value === "q" || value === "\u0004")
41
- return "quit";
42
- if (value === "\r" || value === "\n")
43
- return "enter";
44
- if (value === "j" || value === "\u001b[B")
45
- return "down";
46
- if (value === "k" || value === "\u001b[A")
47
- return "up";
48
- if (value === "n")
49
- return "new";
50
- if (value === "r")
51
- return "refresh";
52
- return "other";
93
+ function boxed(title, body, width = 58) {
94
+ const inner = width - 2;
95
+ const top = `┌${"─".repeat(inner)}┐`;
96
+ const bottom = `└${"─".repeat(inner)}┘`;
97
+ const rows = [`│ ${BOLD}${title}${RESET}${" ".repeat(Math.max(0, inner - title.length - 1))}│`];
98
+ const ansi = /\u001b\[[0-9;]*m/g;
99
+ for (const line of body) {
100
+ const visible = line.replace(ansi, "");
101
+ const clipped = truncate(visible, inner - 1);
102
+ const content = visible.length > inner - 1 ? clipped : line;
103
+ rows.push(`│ ${content}${" ".repeat(Math.max(0, inner - 1 - clipped.length))}│`);
104
+ }
105
+ return [top, ...rows, bottom].join("\n");
53
106
  }
54
- function nextKey() {
55
- return new Promise(resolveKey => {
56
- const onData = (data) => resolveKey(keyOf(data));
57
- input.once("data", onData);
107
+ export function renderSettingsOverlay(settings, selected) {
108
+ const options = [
109
+ ["Attach plain omb to latest live session", settings.autoAttachLatest],
110
+ ["Enable mouse scrolling in OMB sessions", settings.mouseScrolling],
111
+ ["Show stopped sessions in this view", settings.showStoppedSessions],
112
+ ];
113
+ const body = options.map(([label, enabled], index) => {
114
+ const row = `${index === selected ? ">" : " "} [${enabled ? "on " : "off"}] ${label}`;
115
+ return index === selected ? `${REVERSE}${row}${RESET}` : row;
58
116
  });
117
+ body.push("", `${DIM}Up/Down select Space/Enter toggle s save Esc cancel${RESET}`);
118
+ return boxed("OMB Settings", body);
119
+ }
120
+ async function dispatchSession(currentCwd, projectCwd, task, requestedId, env) {
121
+ const resolvedCwd = resolve(projectCwd || currentCwd);
122
+ if (!existsSync(resolvedCwd) || !statSync(resolvedCwd).isDirectory()) {
123
+ output.write(`omb agents: not a directory: ${resolvedCwd}\n`);
124
+ return;
125
+ }
126
+ await launchOmb(resolvedCwd, task ? [task] : [], env, requestedId || generatedSessionId());
59
127
  }
60
128
  async function promptLine(prompt) {
129
+ input.ref?.();
61
130
  input.setRawMode?.(false);
62
131
  input.resume();
63
132
  const readline = createInterface({ input, output });
@@ -69,69 +138,47 @@ async function promptLine(prompt) {
69
138
  input.setRawMode?.(true);
70
139
  }
71
140
  }
72
- function restoreTerminal() {
73
- input.setRawMode?.(false);
74
- input.pause();
75
- output.write("\u001b[?25h\u001b[0m\n");
76
- }
77
- function prepareTerminal() {
78
- output.write("\u001b[?25l");
79
- input.setRawMode?.(true);
80
- input.resume();
141
+ async function renameSession(session, env) {
142
+ const requestedId = (await promptLine(`New name for ${session.id} [${session.id}]: `)).trim() || session.id;
143
+ const projectCwd = session.cwd === "?" ? process.cwd() : session.cwd;
144
+ const nextName = ombSessionName(projectCwd, requestedId);
145
+ if (nextName === session.name)
146
+ return "Session name unchanged.";
147
+ const code = await renameOmbSession(session.name, nextName, projectCwd, env);
148
+ return code === 0 ? `Renamed session to ${requestedId}.` : "Could not rename that session.";
81
149
  }
82
- async function dispatchSession(currentCwd, selected, env) {
83
- const defaultCwd = selected?.cwd && selected.cwd !== "?" ? selected.cwd : currentCwd;
84
- const requestedCwd = (await promptLine(`Project directory [${defaultCwd}]: `)).trim() || defaultCwd;
85
- const expandedCwd = requestedCwd === "~" ? homedir() : requestedCwd.startsWith("~/") ? resolve(homedir(), requestedCwd.slice(2)) : requestedCwd;
86
- const projectCwd = resolve(expandedCwd);
87
- if (!existsSync(projectCwd) || !statSync(projectCwd).isDirectory()) {
88
- output.write(`omb agents: not a directory: ${projectCwd}\n`);
89
- return;
150
+ async function applySavedSettings(previous, next, sessions, cwd, env) {
151
+ saveOmbSettings(next, env);
152
+ if (previous.mouseScrolling !== next.mouseScrolling) {
153
+ await Promise.all(sessions.map(session => setOmbSessionMouse(session.name, next.mouseScrolling, cwd, env)));
90
154
  }
91
- const task = (await promptLine("Describe a task for the new session (optional): ")).trim();
92
- const requestedId = (await promptLine("Session name (blank=generated): ")).trim();
93
- const sessionId = requestedId || generatedSessionId();
94
- restoreTerminal();
95
- await launchOmb(projectCwd, task ? [task] : [], env, sessionId);
96
155
  }
97
- /** Run the small, keyboard-first cross-project session switcher. */
156
+ /** Run the keyboard-first cross-project session manager. */
98
157
  export async function runAgentsHub(cwd = process.cwd(), _args = [], env = process.env) {
99
158
  if (!input.isTTY || !output.isTTY) {
100
159
  output.write("omb agents requires an interactive terminal.\n");
101
160
  return 1;
102
161
  }
103
- let sessions = await listOmbSessions(cwd, env);
104
- let selected = 0;
105
- try {
106
- while (true) {
107
- selected = Math.min(selected, Math.max(0, sessions.length - 1));
108
- output.write("\u001b[2J\u001b[H");
109
- output.write(renderAgentsHub(sessions, selected));
110
- prepareTerminal();
111
- const key = await nextKey();
112
- if (key === "quit")
113
- return 0;
114
- if (key === "up")
115
- selected = Math.max(0, selected - 1);
116
- else if (key === "down")
117
- selected = Math.min(Math.max(0, sessions.length - 1), selected + 1);
118
- else if (key === "refresh")
119
- sessions = await listOmbSessions(cwd, env);
120
- else if (key === "enter" && sessions[selected]) {
121
- const session = sessions[selected];
122
- restoreTerminal();
123
- await attachOmbSession(session.name, session.cwd === "?" ? cwd : session.cwd, env);
124
- sessions = await listOmbSessions(cwd, env);
125
- }
126
- else if (key === "new") {
127
- restoreTerminal();
128
- await dispatchSession(cwd, sessions[selected], env);
129
- sessions = await listOmbSessions(cwd, env);
130
- }
162
+ let settings = loadOmbSettings(env);
163
+ while (true) {
164
+ const allSessions = await listOmbSessions(cwd, env);
165
+ const sessions = settings.showStoppedSessions ? allSessions : allSessions.filter(session => session.state !== "dead");
166
+ const action = await runInkAgentsHub(cwd, env, sessions, settings);
167
+ if (action.type === "quit")
168
+ return 0;
169
+ if (action.type === "settings") {
170
+ await applySavedSettings(settings, action.settings, allSessions, cwd, env);
171
+ settings = action.settings;
172
+ continue;
131
173
  }
132
- }
133
- finally {
134
- restoreTerminal();
174
+ if (action.type === "attach")
175
+ await attachOmbSession(action.session.name, action.session.cwd === "?" ? cwd : action.session.cwd, env);
176
+ else if (action.type === "new")
177
+ await dispatchSession(cwd, action.projectCwd, action.task, action.sessionId, env);
178
+ else if (action.type === "rename")
179
+ await renameSession(action.session, env);
180
+ else if (action.type === "delete")
181
+ await deleteOmbSession(action.session.name, cwd, env);
135
182
  }
136
183
  }
137
184
  //# sourceMappingURL=agents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/cli/agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/cli/agents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export type DirectoryOptionKind = "current" | "parent" | "directory" | "recent" | "path";
2
+ export interface DirectoryOption {
3
+ path: string;
4
+ label: string;
5
+ kind: DirectoryOptionKind;
6
+ detail?: string;
7
+ }
8
+ /** Score a fuzzy subsequence match. Higher scores are better; no match is undefined. */
9
+ export declare function fuzzyScore(query: string, candidate: string): number | undefined;
10
+ /** Filter and rank options without touching the filesystem. */
11
+ export declare function filterDirectoryOptions(options: DirectoryOption[], query: string): DirectoryOption[];
12
+ /**
13
+ * Build the directory candidates shown by the in-hub session selector.
14
+ * The list is intentionally shallow and fast. Recent session projects make
15
+ * cross-project switching quick, while the current directory remains a
16
+ * normal browser with parent and child navigation.
17
+ */
18
+ export declare function readDirectoryOptions(currentPath: string, recentPaths?: string[], query?: string): Promise<DirectoryOption[]>;
19
+ //# sourceMappingURL=directory-selector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory-selector.d.ts","sourceRoot":"","sources":["../../src/cli/directory-selector.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEzF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wFAAwF;AACxF,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAsB/E;AAMD,+DAA+D;AAC/D,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,eAAe,EAAE,CAMnG;AAeD;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,GAAE,MAAM,EAAO,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAuClI"}
@@ -0,0 +1,103 @@
1
+ import { readdir, stat } from "node:fs/promises";
2
+ import { basename, dirname, isAbsolute, resolve } from "node:path";
3
+ import { homedir } from "node:os";
4
+ /** Score a fuzzy subsequence match. Higher scores are better; no match is undefined. */
5
+ export function fuzzyScore(query, candidate) {
6
+ const needle = query.trim().toLocaleLowerCase();
7
+ const haystack = candidate.toLocaleLowerCase();
8
+ if (!needle)
9
+ return 0;
10
+ if (haystack === needle)
11
+ return 10_000;
12
+ const exactAt = haystack.indexOf(needle);
13
+ if (exactAt >= 0)
14
+ return 8_000 - exactAt * 4 + Math.max(0, 200 - haystack.length);
15
+ let cursor = 0;
16
+ let previous = -2;
17
+ let score = 0;
18
+ for (const character of needle) {
19
+ const found = haystack.indexOf(character, cursor);
20
+ if (found < 0)
21
+ return undefined;
22
+ const boundary = found === 0 || "/\\_- .".includes(haystack[found - 1] ?? "");
23
+ score += boundary ? 35 : 12;
24
+ if (found === previous + 1)
25
+ score += 18;
26
+ score -= found;
27
+ previous = found;
28
+ cursor = found + 1;
29
+ }
30
+ return score;
31
+ }
32
+ function kindRank(kind) {
33
+ return kind === "current" ? 0 : kind === "recent" ? 1 : kind === "parent" ? 2 : 3;
34
+ }
35
+ /** Filter and rank options without touching the filesystem. */
36
+ export function filterDirectoryOptions(options, query) {
37
+ return options
38
+ .map(option => ({ option, score: fuzzyScore(query, `${option.label} ${option.path} ${option.detail ?? ""}`) }))
39
+ .filter((entry) => entry.score !== undefined)
40
+ .sort((a, b) => b.score - a.score || kindRank(a.option.kind) - kindRank(b.option.kind) || a.option.path.localeCompare(b.option.path))
41
+ .map(entry => entry.option);
42
+ }
43
+ function expandPath(value, base) {
44
+ const expanded = value === "~" ? homedir() : value.startsWith("~/") ? resolve(homedir(), value.slice(2)) : value;
45
+ return resolve(isAbsolute(expanded) ? expanded : base, isAbsolute(expanded) ? "." : expanded);
46
+ }
47
+ async function directoryExists(path) {
48
+ try {
49
+ return (await stat(path)).isDirectory();
50
+ }
51
+ catch {
52
+ return false;
53
+ }
54
+ }
55
+ /**
56
+ * Build the directory candidates shown by the in-hub session selector.
57
+ * The list is intentionally shallow and fast. Recent session projects make
58
+ * cross-project switching quick, while the current directory remains a
59
+ * normal browser with parent and child navigation.
60
+ */
61
+ export async function readDirectoryOptions(currentPath, recentPaths = [], query = "") {
62
+ const directory = resolve(currentPath);
63
+ const options = [
64
+ { path: directory, label: "Use this directory", kind: "current", detail: directory },
65
+ ];
66
+ const parent = dirname(directory);
67
+ if (parent !== directory)
68
+ options.push({ path: parent, label: ".. Parent directory", kind: "parent", detail: parent });
69
+ const seen = new Set(options.map(option => option.path));
70
+ for (const recent of recentPaths.map(path => resolve(path)).filter(path => path !== directory && !seen.has(path))) {
71
+ if (await directoryExists(recent)) {
72
+ options.push({ path: recent, label: basename(recent) || recent, kind: "recent", detail: recent });
73
+ seen.add(recent);
74
+ }
75
+ }
76
+ try {
77
+ const entries = await readdir(directory, { withFileTypes: true });
78
+ for (const entry of entries) {
79
+ if (!entry.isDirectory() || entry.name === "node_modules" || entry.name === ".git")
80
+ continue;
81
+ if (entry.name.startsWith(".") && !query.trim().startsWith("."))
82
+ continue;
83
+ const path = resolve(directory, entry.name);
84
+ if (seen.has(path))
85
+ continue;
86
+ options.push({ path, label: entry.name, kind: "directory", detail: path });
87
+ seen.add(path);
88
+ }
89
+ }
90
+ catch {
91
+ // The selector still offers the current path, parent, and recent paths
92
+ // when a directory becomes unreadable between refreshes.
93
+ }
94
+ const direct = query.trim();
95
+ if (direct.includes("/") || direct.startsWith("~")) {
96
+ const candidate = expandPath(direct, directory);
97
+ if (!seen.has(candidate) && await directoryExists(candidate)) {
98
+ options.unshift({ path: candidate, label: `Use ${basename(candidate) || candidate}`, kind: "path", detail: candidate });
99
+ }
100
+ }
101
+ return options;
102
+ }
103
+ //# sourceMappingURL=directory-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory-selector.js","sourceRoot":"","sources":["../../src/cli/directory-selector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAWlC,wFAAwF;AACxF,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,SAAiB;IACzD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC;IAChD,MAAM,QAAQ,GAAG,SAAS,CAAC,iBAAiB,EAAE,CAAC;IAC/C,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC;IACtB,IAAI,QAAQ,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,KAAK,GAAG,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAElF,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;IAClB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAClD,IAAI,KAAK,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;QAChC,MAAM,QAAQ,GAAG,KAAK,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9E,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5B,IAAI,KAAK,KAAK,QAAQ,GAAG,CAAC;YAAE,KAAK,IAAI,EAAE,CAAC;QACxC,KAAK,IAAI,KAAK,CAAC;QACf,QAAQ,GAAG,KAAK,CAAC;QACjB,MAAM,GAAG,KAAK,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,QAAQ,CAAC,IAAyB;IACzC,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,sBAAsB,CAAC,OAA0B,EAAE,KAAa;IAC9E,OAAO,OAAO;SACX,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;SAC9G,MAAM,CAAC,CAAC,KAAK,EAAuD,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC;SACjG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SACpI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,UAAU,CAAC,KAAa,EAAE,IAAY;IAC7C,MAAM,QAAQ,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACjH,OAAO,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAChG,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAAY;IACzC,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,WAAmB,EAAE,WAAW,GAAa,EAAE,EAAE,KAAK,GAAG,EAAE;IACpG,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACvC,MAAM,OAAO,GAAsB;QACjC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE;KACrF,CAAC;IACF,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAClC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAExH,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAClH,IAAI,MAAM,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAClG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;gBAAE,SAAS;YAC7F,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC1E,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC7B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,uEAAuE;QACvE,yDAAyD;IAC3D,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACnD,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7D,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1H,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -4,16 +4,18 @@ export interface InstallOptions {
4
4
  profile?: string;
5
5
  dryRun?: boolean;
6
6
  root?: string;
7
+ pluginSpec?: string;
7
8
  env?: NodeJS.ProcessEnv;
8
9
  }
9
10
  type Host = (args: string[]) => string;
10
- export declare function installWithHost(host: Host, root: string, dryRun?: boolean): {
11
+ export declare function installWithHost(host: Host, root: string, dryRun?: boolean, pluginSpec?: string): {
11
12
  toolPolicies: {};
12
13
  note: string;
13
14
  ok: boolean;
14
15
  dryRun: boolean;
15
16
  config: string;
16
17
  packageRoot: string;
18
+ pluginSpec?: string | undefined;
17
19
  settings: {
18
20
  key: string;
19
21
  before: unknown;
@@ -25,12 +27,13 @@ export declare function installWithHost(host: Host, root: string, dryRun?: boole
25
27
  ok: boolean;
26
28
  dryRun: boolean;
27
29
  config: string;
28
- packageRoot: string;
30
+ pluginSpec?: string | undefined;
29
31
  settings: {
30
32
  key: string;
31
33
  before: unknown;
32
34
  after: unknown;
33
35
  }[];
36
+ packageRoot: string;
34
37
  version: string;
35
38
  receipt: string;
36
39
  restartRequired: boolean;
@@ -80,6 +83,7 @@ export declare function manageInstallation(action: "install" | "uninstall" | "in
80
83
  dryRun: boolean;
81
84
  config: string;
82
85
  packageRoot: string;
86
+ pluginSpec?: string | undefined;
83
87
  settings: {
84
88
  key: string;
85
89
  before: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,WAAW,QAA4D,CAAC;AAWrF,MAAM,WAAW,cAAc;IAAG,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE;AAC5H,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;AA4BvC,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,UAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyCvE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,UAAQ;;;;;;;;;;;;;;;;;;;;;;;;EAuB3D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI;;;;;;;;;;;;EAS5C;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,gBAAgB,EAAE,OAAO,GAAE,cAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASlH"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/cli/install.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,WAAW,QAA4D,CAAC;AAWrF,MAAM,WAAW,cAAc;IAAG,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE;AACjJ,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;AA4BvC,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,UAAQ,EAAE,UAAU,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmD5F;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,UAAQ;;;;;;;;;;;;;;;;;;;;;;;;EAuB3D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI;;;;;;;;;;;;EAS5C;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,gBAAgB,EAAE,OAAO,GAAE,cAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASlH"}