@vibes.diy/api-svc 14.3.160 → 14.3.162

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 (41) hide show
  1. package/index.d.ts +1 -0
  2. package/index.js +1 -0
  3. package/index.js.map +1 -1
  4. package/intern/attempt-backend-fetch.js +1 -0
  5. package/intern/attempt-backend-fetch.js.map +1 -1
  6. package/intern/attempt-backend-onchange.js +1 -1
  7. package/intern/attempt-backend-onchange.js.map +1 -1
  8. package/intern/backend-db-callback.d.ts +1 -1
  9. package/intern/backend-db-callback.js +1 -1
  10. package/intern/backend-db-callback.js.map +1 -1
  11. package/intern/backend-do-addr.d.ts +1 -0
  12. package/intern/backend-do-addr.js +6 -0
  13. package/intern/backend-do-addr.js.map +1 -1
  14. package/intern/backend-github-callback.js +137 -53
  15. package/intern/backend-github-callback.js.map +1 -1
  16. package/intern/github-app-auth.d.ts +8 -0
  17. package/intern/github-app-auth.js +41 -1
  18. package/intern/github-app-auth.js.map +1 -1
  19. package/intern/github-binder-handle.d.ts +6 -0
  20. package/intern/github-binder-handle.js +5 -0
  21. package/intern/github-binder-handle.js.map +1 -0
  22. package/intern/mercury-first-build.d.ts +1 -0
  23. package/intern/mercury-first-build.js +7 -0
  24. package/intern/mercury-first-build.js.map +1 -1
  25. package/intern/opens-check.js +2 -0
  26. package/intern/opens-check.js.map +1 -1
  27. package/package.json +13 -13
  28. package/public/github-install-consent.html +30 -0
  29. package/public/github-install-signin.html +15 -0
  30. package/public/github-install.d.ts +23 -0
  31. package/public/github-install.js +109 -0
  32. package/public/github-install.js.map +1 -0
  33. package/public/github-setup.d.ts +31 -0
  34. package/public/github-setup.js +144 -10
  35. package/public/github-setup.js.map +1 -1
  36. package/public/github-webhook.d.ts +2 -0
  37. package/public/github-webhook.js +19 -3
  38. package/public/github-webhook.js.map +1 -1
  39. package/public/resolve-active-handle.d.ts +1 -0
  40. package/public/resolve-active-handle.js +7 -4
  41. package/public/resolve-active-handle.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"opens-check.js","sourceRoot":"","sources":["../../jsr/intern/opens-check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opens-check.js","sourceRoot":"","sources":["../../jsr/intern/opens-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAG/B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAgB,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACtH,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAgC,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAwEzG,MAAM,CAAC,MAAM,sBAAsB,GAAmC,IAAI,GAAG,CAAoB,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAWtH,MAAM,YAAY,GAAsB;IACtC,QAAQ;IACR,gBAAgB;IAChB,OAAO;IACP,QAAQ;IACR,MAAM;IACN,aAAa;IACb,iBAAiB;IACjB,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,eAAe;IACf,mBAAmB;IACnB,cAAc;IACd,cAAc;IACd,aAAa;IACb,eAAe;IACf,cAAc;IACd,qBAAqB;IACrB,kBAAkB;IAClB,qBAAqB;IACrB,OAAO;IACP,uBAAuB;IACvB,OAAO;IACP,SAAS;IACT,gBAAgB;IAChB,gBAAgB;IAChB,UAAU;IACV,QAAQ;IACR,eAAe;IACf,YAAY;IACZ,eAAe;IACf,aAAa;IACb,WAAW;IACX,OAAO;IACP,cAAc;IACd,kBAAkB;IAClB,aAAa;IACb,aAAa;IACb,YAAY;IACZ,cAAc;IACd,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,WAAW;IACX,WAAW;IACX,WAAW;IACX,aAAa;IACb,UAAU;IACV,MAAM;IACN,aAAa;IACb,UAAU;IACV,aAAa;IACb,UAAU;IACV,SAAS;IACT,gBAAgB;IAChB,iBAAiB;IACjB,gBAAgB;IAChB,IAAI;CACL,CAAC;AAGF,MAAM,oBAAoB,GAAsB;IAC9C,QAAQ;IACR,eAAe;IACf,mBAAmB;IACnB,cAAc;IACd,cAAc;IACd,aAAa;IACb,eAAe;IACf,cAAc;IACd,qBAAqB;IACrB,kBAAkB;IAClB,qBAAqB;IACrB,SAAS;IACT,gBAAgB;IAChB,gBAAgB;IAChB,QAAQ;IACR,eAAe;IACf,YAAY;IACZ,eAAe;IACf,aAAa;IACb,OAAO;IACP,cAAc;IACd,kBAAkB;IAClB,aAAa;IACb,aAAa;IACb,YAAY;IACZ,cAAc;IACd,SAAS;IACT,gBAAgB;IAChB,iBAAiB;IACjB,gBAAgB;CACjB,CAAC;AAGF,MAAM,aAAa,GAAsB;IACvC,UAAU;IACV,UAAU;IACV,WAAW;IACX,UAAU;IACV,UAAU;IACV,eAAe;IACf,YAAY;IACZ,UAAU;IACV,iEAAiE;IACjE,oBAAoB;IACpB,KAAK;IACL,OAAO;IACP,aAAa;IACb,mBAAmB;IACnB,cAAc;IACd,eAAe;IACf,eAAe;IACf,WAAW;IACX,SAAS;IACT,YAAY;IACZ,gBAAgB;IAChB,MAAM;IACN,MAAM;IACN,iBAAiB;IACjB,0BAA0B;IAC1B,KAAK;IACL,gBAAgB;IAChB,aAAa;IACb,YAAY;IACZ,eAAe;IACf,kBAAkB;IAClB,WAAW;IACX,gBAAgB;IAChB,OAAO;IACP,qBAAqB;IACrB,oBAAoB;IACpB,iBAAiB;IACjB,SAAS;IACT,eAAe;IACf,YAAY;IACZ,QAAQ;IACR,UAAU;IACV,sBAAsB;IACtB,eAAe;IACf,SAAS;CACV,CAAC;AAOF,MAAM,eAAe,GAAsB;IACzC,aAAa;IACb,uBAAuB;IACvB,sBAAsB;IACtB,yBAAyB;IACzB,6BAA6B;IAC7B,0BAA0B;IAC1B,oBAAoB;IACpB,UAAU;IACV,sBAAsB;IACtB,qBAAqB;IACrB,iBAAiB;IACjB,6BAA6B;IAC7B,qBAAqB;IACrB,aAAa;IACb,yBAAyB;IACzB,0BAA0B;IAC1B,QAAQ;IACR,eAAe;IACf,sBAAsB;IACtB,0BAA0B;IAC1B,yBAAyB;IACzB,yBAAyB;IACzB,uBAAuB;IACvB,qBAAqB;IACrB,gBAAgB;IAChB,WAAW;IACX,eAAe;IACf,2BAA2B;IAC3B,8BAA8B;IAC9B,yBAAyB;IACzB,qBAAqB;IACrB,uBAAuB;IACvB,iCAAiC;IACjC,qCAAqC;IACrC,4BAA4B;IAC5B,8BAA8B;IAC9B,0CAA0C;IAC1C,wCAAwC;IACxC,wCAAwC;IACxC,qCAAqC;IACrC,yBAAyB;IACzB,yCAAyC;IACzC,2BAA2B;IAC3B,2BAA2B;IAC3B,uCAAuC;IACvC,gCAAgC;IAChC,yBAAyB;IACzB,yBAAyB;IACzB,2BAA2B;IAC3B,WAAW;IACX,aAAa;IACb,2BAA2B;IAC3B,8BAA8B;IAC9B,sBAAsB;IACtB,UAAU;IACV,2BAA2B;IAC3B,iBAAiB;IACjB,UAAU;IACV,cAAc;IACd,sBAAsB;IACtB,sBAAsB;IACtB,0BAA0B;IAC1B,iBAAiB;IACjB,oBAAoB;IACpB,uBAAuB;IACvB,2BAA2B;IAC3B,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,WAAW;IACX,UAAU;IACV,gCAAgC;IAChC,4BAA4B;IAC5B,wBAAwB;IACxB,qBAAqB;IACrB,sBAAsB;IACtB,oBAAoB;IACpB,YAAY;IACZ,eAAe;IACf,eAAe;IACf,uBAAuB;IACvB,WAAW;IACX,oBAAoB;IACpB,4BAA4B;IAC5B,cAAc;IACd,eAAe;IACf,uBAAuB;IACvB,WAAW;IACX,cAAc;IACd,oBAAoB;IACpB,0BAA0B;IAC1B,oBAAoB;IACpB,gBAAgB;IAChB,mBAAmB;IACnB,8BAA8B;IAC9B,4BAA4B;IAC5B,sBAAsB;IACtB,4BAA4B;IAC5B,gCAAgC;IAChC,eAAe;IACf,QAAQ;IACR,SAAS;IACT,0BAA0B;IAC1B,iBAAiB;IACjB,sBAAsB;IACtB,mBAAmB;IACnB,yBAAyB;IACzB,0BAA0B;IAC1B,0BAA0B;IAC1B,iBAAiB;IACjB,iBAAiB;IACjB,yBAAyB;IACzB,0BAA0B;IAC1B,kCAAkC;IAClC,uBAAuB;IACvB,oBAAoB;IACpB,aAAa;IACb,YAAY;IACZ,uBAAuB;IACvB,eAAe;IACf,oBAAoB;IACpB,sBAAsB;IACtB,iBAAiB;IACjB,WAAW;IACX,mBAAmB;IACnB,oBAAoB;IACpB,oBAAoB;IACpB,qBAAqB;IACrB,qBAAqB;IACrB,mBAAmB;IACnB,uBAAuB;IACvB,0BAA0B;IAC1B,uBAAuB;IACvB,qBAAqB;IACrB,gBAAgB;IAChB,oCAAoC;IACpC,+BAA+B;IAC/B,6BAA6B;IAC7B,0BAA0B;IAC1B,6BAA6B;IAC7B,6BAA6B;IAC7B,gBAAgB;IAChB,6BAA6B;IAC7B,sBAAsB;IACtB,yBAAyB;IACzB,iBAAiB;IACjB,gBAAgB;IAChB,sBAAsB;IACtB,oBAAoB;IACpB,8BAA8B;IAC9B,wBAAwB;IACxB,iBAAiB;IACjB,wBAAwB;IACxB,gBAAgB;IAChB,wBAAwB;IACxB,mBAAmB;IACnB,sBAAsB;IACtB,qBAAqB;IACrB,sBAAsB;IACtB,0BAA0B;IAC1B,sBAAsB;IACtB,uBAAuB;IACvB,+BAA+B;IAC/B,2BAA2B;IAC3B,oCAAoC;IACpC,qBAAqB;IACrB,uBAAuB;IACvB,iBAAiB;IACjB,mBAAmB;IACnB,mBAAmB;IACnB,qBAAqB;IACrB,WAAW;IACX,kBAAkB;IAClB,yBAAyB;IACzB,gBAAgB;IAChB,qBAAqB;IACrB,aAAa;IACb,mBAAmB;IACnB,oBAAoB;IACpB,iBAAiB;IACjB,oBAAoB;IACpB,eAAe;IACf,QAAQ;IACR,cAAc;IACd,kBAAkB;IAClB,WAAW;IACX,aAAa;IACb,WAAW;IACX,SAAS;IACT,gBAAgB;IAChB,WAAW;IACX,MAAM;IACN,SAAS;IACT,SAAS;IACT,SAAS;IACT,iBAAiB;IACjB,WAAW;CACZ,CAAC;AAEF,MAAM,aAAa,GAAG,+BAA+B,CAAC;AAGtD,SAAS,gBAAgB;IACvB,OAAO,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AACvF,CAAC;AAOD,MAAM,CAAC,MAAM,oBAAoB,GAAgD;IAC/E,iBAAiB,EAAE,YAAY;IAC/B,yBAAyB,EAAE,oBAAoB;IAG/C,iBAAiB,EAAE,kBAAkB,CAAC,KAAK;IAC3C,6BAA6B,EAAE,kBAAkB,CAAC,WAAW;IAC7D,wBAAwB,EAAE,kBAAkB,CAAC,MAAM;IACnD,KAAK,EAAE,aAAa;IACpB,yBAAyB,EAAE,eAAe;IAC1C,GAAG,MAAM,CAAC,WAAW,CACnB,gBAAgB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAA4C,EAAE,CACtF,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAC1D,CACF;CACF,CAAC;AASF,MAAM,cAAc,GAAsB;IACxC,aAAa;IACb,gBAAgB;IAChB,eAAe;IACf,sBAAsB;IACtB,gBAAgB;IAChB,UAAU;IACV,SAAS;CACV,CAAC;AACF,MAAM,gBAAgB,GAAsB,CAAC,GAAG,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAG3G,MAAM,aAAa,GAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AAGjF,MAAM,yBAAyB,GAAsB;IACnD,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,qBAAqB;IACrB,UAAU;IACV,WAAW;IACX,cAAc;IACd,gBAAgB;IAChB,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,cAAc;IACd,gBAAgB;CACjB,CAAC;AAOF,MAAM,gBAAgB,GAAsB;IAC1C,SAAS;IACT,gBAAgB;IAChB,aAAa;IACb,eAAe;IACf,oBAAoB;IACpB,MAAM;IACN,SAAS;IACT,OAAO;IACP,SAAS;IACT,KAAK;IACL,aAAa;IACb,SAAS;IACT,YAAY;IACZ,mBAAmB;IACnB,iBAAiB;IACjB,cAAc;IACd,cAAc;IACd,KAAK;IACL,YAAY;IACZ,aAAa;IACb,sBAAsB;IACtB,oBAAoB;IACpB,oBAAoB;IACpB,iBAAiB;IACjB,MAAM;IACN,iBAAiB;IACjB,cAAc;IACd,qBAAqB;IACrB,eAAe;IACf,KAAK;IACL,OAAO;IACP,WAAW;IACX,OAAO;IACP,UAAU;IACV,gBAAgB;IAChB,QAAQ;IACR,aAAa;IACb,WAAW;IACX,UAAU;IACV,YAAY;IACZ,iBAAiB;IACjB,MAAM;IACN,UAAU;IACV,WAAW;IACX,WAAW;CACZ,CAAC;AAGF,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,KAAK,EAAE,aAAa;IACpB,kBAAkB,EAAE,yBAAyB;IAC7C,QAAQ,EAAE,gBAAgB;CAClB,CAAC;AAGX,MAAM,WAAW,GAAwB,IAAI,GAAG,CAAC,CAAC,6BAA6B,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAErG,SAAS,kBAAkB,CAAC,IAAY;IACtC,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,eAAe,CAAC;AACxD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACzG,CAAC;AAgBD,MAAM,eAAe,GAAwB,IAAI,GAAG,CAAC;IAEnD,WAAW;IACX,KAAK;IACL,UAAU;IACV,YAAY;IACZ,WAAW;IACX,MAAM;IACN,QAAQ;IACR,UAAU;IACV,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,QAAQ;IACR,OAAO;IACP,WAAW;IACX,YAAY;IACZ,aAAa;IACb,gBAAgB;IAChB,WAAW;IACX,UAAU;IACV,gBAAgB;IAChB,KAAK;IACL,KAAK;IACL,SAAS;IACT,SAAS;IACT,SAAS;IACT,sBAAsB;IACtB,SAAS;IACT,OAAO;IACP,SAAS;IACT,SAAS;IACT,UAAU;IACV,aAAa;IACb,mBAAmB;IACnB,UAAU;IACV,WAAW;IACX,YAAY;IACZ,mBAAmB;IACnB,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,aAAa;IACb,cAAc;IACd,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,MAAM;IACN,UAAU;IACV,YAAY;IACZ,OAAO;IACP,UAAU;IACV,WAAW;IACX,oBAAoB;IACpB,WAAW;IACX,oBAAoB;IACpB,QAAQ;IACR,UAAU;IAEV,QAAQ;IACR,MAAM;IACN,UAAU;IACV,WAAW;IACX,UAAU;IACV,SAAS;IACT,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,OAAO;IACP,SAAS;IACT,QAAQ;IACR,OAAO;IACP,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,cAAc;IACd,gBAAgB;IAChB,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,aAAa;IACb,SAAS;IACT,SAAS;IACT,aAAa;IACb,aAAa;IACb,UAAU;IACV,UAAU;IACV,QAAQ;IACR,YAAY;IACZ,kBAAkB;IAClB,cAAc;IACd,iBAAiB;IACjB,aAAa;IACb,YAAY;IACZ,cAAc;IACd,aAAa;IACb,eAAe;IACf,uBAAuB;IACvB,sBAAsB;IACtB,qBAAqB;IACrB,oBAAoB;IACpB,gBAAgB;IAChB,iBAAiB;IACjB,MAAM;IACN,MAAM;IACN,aAAa;IACb,kBAAkB;IAClB,qBAAqB;IACrB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IAEjB,OAAO;IACP,SAAS;IACT,SAAS;IACT,UAAU;IACV,KAAK;IACL,iBAAiB;IACjB,iBAAiB;IACjB,aAAa;IACb,UAAU;IACV,MAAM;IACN,MAAM;IACN,UAAU;IACV,YAAY;IACZ,aAAa;IACb,aAAa;IACb,WAAW;IACX,aAAa;IACb,kBAAkB;IAClB,gBAAgB;IAChB,aAAa;IACb,QAAQ;IACR,cAAc;IACd,WAAW;IACX,eAAe;IACf,gBAAgB;IAChB,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,mBAAmB;IACnB,qBAAqB;IACrB,cAAc;IACd,cAAc;IACd,KAAK;IACL,eAAe;IAEf,MAAM;IACN,SAAS;IACT,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,mBAAmB;IACnB,kBAAkB;IAClB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,mBAAmB;IACnB,iBAAiB;IACjB,mBAAmB;IACnB,YAAY;IACZ,UAAU;IACV,kBAAkB;IAClB,MAAM;IACN,OAAO;IACP,WAAW;IACX,YAAY;IACZ,OAAO;IACP,aAAa;IACb,eAAe;IACf,YAAY;IACZ,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,gBAAgB;IAChB,aAAa;IACb,sBAAsB;IACtB,gBAAgB;IAChB,kBAAkB;IAClB,OAAO;IACP,OAAO;IACP,QAAQ;IACR,iBAAiB;IACjB,QAAQ;IACR,WAAW;IACX,aAAa;IACb,mBAAmB;IACnB,0BAA0B;IAC1B,uBAAuB;IACvB,wBAAwB;IACxB,SAAS;IACT,WAAW;IACX,UAAU;IAEV,cAAc;IACd,oBAAoB;IACpB,qBAAqB;IACrB,aAAa;IACb,WAAW;IACX,YAAY;IACZ,UAAU;IACV,gBAAgB;IAChB,cAAc;IACd,kBAAkB;IAClB,uBAAuB;IACvB,eAAe;IACf,aAAa;IACb,aAAa;IACb,0BAA0B;IAC1B,mBAAmB;IACnB,yBAAyB;IACzB,aAAa;CACd,CAAC,CAAC;AAGH,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAAC,CAAC,GAAG,eAAe,EAAE,GAAG,yBAAyB,CAAC,CAAC,CAAC;AAG7G,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAQD,SAAS,cAAc,CAAC,OAAgB,EAAE,IAAuC;IAC/E,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvE,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,SAAS;QACvC,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,mBAAmB,EAAE,CAAC;gBACzB,MAAM,KAAK,GAAa,EAAE,CAAC;gBAC3B,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC;oBACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;oBAC/C,MAAM,YAAY,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;oBACtH,IAAI,SAAS,CAAC,IAAI,KAAK,iBAAiB,IAAI,YAAY,KAAK,SAAS;wBAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACjG,IAAI,SAAS,CAAC,IAAI,KAAK,wBAAwB;wBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzE,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC3D,MAAM;YACR,CAAC;YACD,KAAK,wBAAwB,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;oBACnE,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBACzC,MAAM,IAAI,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;oBACrG,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC1C,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC3D,MAAM;YACR,CAAC;YACD,KAAK,sBAAsB;gBACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC/D,MAAM;YACR;gBACE,MAAM;QACV,CAAC;IACH,CAAC;AACH,CAAC;AAGD,SAAS,qBAAqB,CAAC,IAAa,EAAE,IAAuC;IACnF,IAAI,IAAI,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvE,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,KAAK,MAAM,EAAE,KAAK,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC;QAAE,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAC/E,CAAC;AAGD,SAAS,eAAe,CAAC,IAAY,EAAE,IAAY;IACjD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACxB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,EAAE,CAAC;YACR,KAAK,GAAG;gBACN,MAAM;YACR,KAAK,IAAI;gBACP,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,SAAS,CAAC;gBACzC,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,MAAM;YACR;gBACE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY;IACvC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC;AACtH,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,mBAAmB,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC;AACrG,CAAC;AAGD,SAAS,eAAe,CAAC,IAAY,EAAE,QAAgB;IACrD,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK;QAAE,OAAO,QAAQ,CAAC;IACpD,MAAM,QAAQ,GAAG,gBAAgB,CAC/B,GAAG,EAAE,CACH,SAAS,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;SACxH,IAAI,CACV,CAAC;IACF,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;AACtD,CAAC;AAED,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAQ5C,MAAM,OAAO,GAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AAEtD,SAAS,SAAS,CAAC,IAIlB;IACC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACtB,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IACzC,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,EAAE,CACnC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC,CAC/H,CAAC;IACF,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;QACrC,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,OAAO,CAAC,QAAQ,CAAC,wCAAwC,CAAC,EAAE,CAAC;YAC/D,OAAO;gBACL,QAAQ,EAAE;oBACR;wBACE,KAAK,EAAE,kBAAkB;wBACzB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;wBAClD,IAAI,EAAE,IAAI;wBACV,IAAI,EAAE,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;qBACtC;iBACF;gBACD,IAAI,EAAE,EAAE;aACT,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IACpC,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IAE1C,MAAM,IAAI,GAAsC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAChE,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9B,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAEnC,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC;gBAC3D,QAAQ,CAAC,IAAI,CAAC;oBACZ,KAAK,EAAE,YAAY;oBACnB,OAAO,EAAE,IAAI,GAAG,CAAC,IAAI,oBAAoB,MAAM,IAAI,WAAW,kEAAkE;oBAChI,IAAI,EAAE,IAAI;oBACV,IAAI;iBACL,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpB,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK;YAAE,SAAS;QAClD,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBAC7B,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,SAAS;gBACnC,QAAQ,CAAC,IAAI,CAAC;oBACZ,KAAK,EAAE,gBAAgB;oBACvB,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,yBAAyB,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,yBAAyB,IAAI,EAAE;oBACjH,IAAI,EAAE,IAAI;oBACV,IAAI;iBACL,CAAC,CAAC;YACL,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;YAC1C,QAAQ,CAAC,IAAI,CAAC;gBACZ,KAAK,EAAE,iBAAiB;gBACxB,OAAO,EAAE,IAAI,GAAG,CAAC,IAAI,2EAA2E;gBAChG,IAAI,EAAE,IAAI;gBACV,IAAI;aACL,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS;YAAE,SAAS;QACvF,MAAM,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;QACnH,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAE7B,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS;YACrC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,IAAI,yCAAyC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;YAC1H,SAAS;QACX,CAAC;QAGD,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,yBAAyB;YAChC,OAAO,EAAE,GAAG,GAAG,CAAC,IAAI,0EAA0E,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,6EAA6E;YACrM,GAAG,KAAK;SACT,CAAC,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK;YAAE,SAAS;QAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QACjF,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,sBAAsB;YAC7B,OAAO,EAAE,GAAG,IAAI,6EAA6E;YAC7F,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;SACjC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACxE,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;YAChC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;SACrC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,gBAAgB;YACvB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC;YACtC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC;YAC1C,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;QAC5E,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;YACjC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;YACrC,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;SAC9F,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;AACtE,CAAC;AAKD,SAAS,YAAY,CAAC,OAA4B,EAAE,IAA4B,EAAE,IAAY;IAC5F,OAAO,OAAO,EAAE,MAAM,EAAE,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC7G,CAAC;AAED,SAAS,OAAO,CAAC,OAA4B;IAC3C,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAC/B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IAC9E,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAC7C,IAAI,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,cAAc,CAAC,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IAC3H,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS;QAAE,OAAO,oBAAoB,CAAC;IAC1D,OAAO,MAAM,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5D,CAAC;AAED,MAAM,aAAa,GAAsD;IACvE,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,aAAa,EAAE,GAAG,gBAAgB,CAAC,CAAC;IACvD,kBAAkB,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,yBAAyB,EAAE,GAAG,cAAc,CAAC,CAAC;IAC9E,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,gBAAgB,EAAE,GAAG,cAAc,CAAC,CAAC;CAC5D,CAAC;AAEF,SAAS,YAAY,CAAC,KAAiB,EAAE,IAAY,EAAE,MAAc;IACnE,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,OAAO;YACV,OAAO,GAAG,IAAI,IAAI,MAAM,iCAAiC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,eAAe,CAAC;QACpH,KAAK,oBAAoB;YACvB,OAAO,8BAA8B,MAAM,gBAAgB,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpG,KAAK,UAAU;YACb,OAAO,GAAG,IAAI,IAAI,MAAM,mHAAmH,CAAC;IAChJ,CAAC;AACH,CAAC;AAYD,SAAS,cAAc,CAAC,MAAiB;IACvC,MAAM,GAAG,GAAoB,EAAE,CAAC;IAEhC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,SAAS,MAAM,CAAC,OAAsB;QACpC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO;QACxC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC;IAGD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK;YAAE,SAAS;QACnC,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;QACjC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC;YACvE,MAAM,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;QACrH,CAAC;QAED,IACE,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YACrB,KAAK,KAAK,oBAAoB;YAC9B,KAAK,KAAK,UAAU;YACpB,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,EAC5C,CAAC;YACD,MAAM,CAAC;gBACL,OAAO,EAAE,YAAY,CAAC,UAAU,EAAE,GAAG,GAAG,CAAC,IAAI,WAAW,EAAE,MAAM,CAAC;gBACjE,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,GAAG,CAAC,SAAS;aACzB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI;YAAE,SAAS;QACxC,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACjE,IAAI,MAAM,EAAE,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS,IAAI,aAAa,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC;YAAE,SAAS;QACtH,IAAI,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,cAAc,CAAC,KAAK,KAAK;YAAE,SAAS;QACnH,MAAM,CAAC;YACL,OAAO,EAAE,YAAY,CAAC,oBAAoB,EAAE,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC;YACvE,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;YACtB,SAAS,EAAE,IAAI,CAAC,KAAK;SACtB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAGD,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,aAAa,CAAC;AAC5H,CAAC;AAMD,MAAM,UAAU,UAAU,CAAC,GAAgC;IAKzD,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxF,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IACrF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,KAAK,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,KAAK,SAAS,EAAE,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QACxE,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,SAAS,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,KAAK;YAAE,SAAS;QAC1F,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACf,MAAM,OAAO,GAAG,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QACzD,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;AACrG,CAAC;AAaD,MAAM,UAAU,qBAAqB,CAEnC,QAAsB;IACtB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,MAAM,KAAK,GAAG,CAAC,CAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9F,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAQ,EAAE,CAAC;IACpB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACZ,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAGD,MAAM,UAAU,eAAe,CAAC,OAAqB;IAEnD,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,EAAE,CAAC;AAChI,CAAC;AAGD,MAAM,UAAU,aAAa,CAAC,GAAgC;IAC5D,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IACrC,OAAO,IAAI,GAAG,CACZ,UAAU,CAAC,GAAG,CAAC;SACZ,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC;SACjF,GAAG,CAAC,eAAe,CAAC,CACxB,CAAC;AACJ,CAAC;AAGD,MAAM,UAAU,gBAAgB,CAAC,OAAqB,EAAE,QAA6B;IACnF,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,CAC5B,CAAC,OAAO,EAAE,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,CACrH,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/api-svc",
3
- "version": "14.3.160",
3
+ "version": "14.3.162",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -41,21 +41,21 @@
41
41
  "@neondatabase/serverless": "~1.2.0",
42
42
  "@noble/hashes": "~2.4.0",
43
43
  "@shadcn/lint": "~0.2.0",
44
- "@vibes.diy/api-pkg": "14.3.160",
45
- "@vibes.diy/api-sql": "14.3.160",
46
- "@vibes.diy/api-types": "14.3.160",
47
- "@vibes.diy/call-ai-v2": "14.3.160",
48
- "@vibes.diy/identity": "14.3.160",
49
- "@vibes.diy/look": "14.3.160",
50
- "@vibes.diy/pouf": "14.3.160",
51
- "@vibes.diy/prompts": "14.3.160",
52
- "@vibes.diy/vibe-db-explorer": "14.3.160",
53
- "@vibes.diy/vibe-runtime": "14.3.160",
54
- "@vibes.diy/vibe-types": "14.3.160",
44
+ "@vibes.diy/api-pkg": "14.3.162",
45
+ "@vibes.diy/api-sql": "14.3.162",
46
+ "@vibes.diy/api-types": "14.3.162",
47
+ "@vibes.diy/call-ai-v2": "14.3.162",
48
+ "@vibes.diy/identity": "14.3.162",
49
+ "@vibes.diy/look": "14.3.162",
50
+ "@vibes.diy/pouf": "14.3.162",
51
+ "@vibes.diy/prompts": "14.3.162",
52
+ "@vibes.diy/vibe-db-explorer": "14.3.162",
53
+ "@vibes.diy/vibe-runtime": "14.3.162",
54
+ "@vibes.diy/vibe-types": "14.3.162",
55
55
  "acorn": "~8.17.0",
56
56
  "acorn-jsx": "~5.3.2",
57
57
  "arktype": "~2.2.6",
58
- "call-ai": "14.3.160",
58
+ "call-ai": "14.3.162",
59
59
  "charwise": "~3.0.1",
60
60
  "cookie": "~2.0.1",
61
61
  "csv-parse": "~7.0.3",
@@ -0,0 +1,30 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Connect a GitHub repository</title>
7
+ </head>
8
+ <body style="font-family: system-ui, sans-serif; max-width: 32rem; margin: 4rem auto; padding: 0 1rem; line-height: 1.5">
9
+ <main>
10
+ <h1 style="font-size: 1.4rem">Connect a GitHub repository</h1>
11
+ <p>
12
+ <strong>{{vibe}}</strong> wants to review pull requests in the repositories you choose. Its backend will be able to read
13
+ code and comment on pull requests in those repositories, as the vibes.diy GitHub App.
14
+ </p>
15
+ <blockquote style="margin: 1.5rem 0; padding-left: 1rem; border-left: 3px solid #888">
16
+ <p>“{{why}}”</p>
17
+ <p style="margin: 0">— the app's author</p>
18
+ </blockquote>
19
+ <p>
20
+ It works on those repositories as you: what it saves is saved under your name, and any AI it uses runs on your vibes.diy
21
+ credits.
22
+ </p>
23
+ <p>You pick the repositories on GitHub, and you can remove the app there at any time.</p>
24
+ <p style="display: flex; gap: 1rem; flex-wrap: wrap">
25
+ <a href="{{installUrl}}" style="font-weight: 600">Continue to GitHub</a>
26
+ <a href="{{vibeHref}}">Cancel</a>
27
+ </p>
28
+ </main>
29
+ </body>
30
+ </html>
@@ -0,0 +1,15 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Sign in first</title>
7
+ </head>
8
+ <body style="font-family: system-ui, sans-serif; max-width: 32rem; margin: 4rem auto; padding: 0 1rem; line-height: 1.5">
9
+ <main>
10
+ <h1 style="font-size: 1.4rem">Sign in first</h1>
11
+ <p>Sign in on vibes.diy first, then use the app's Connect GitHub link again.</p>
12
+ <p><a href="{{vibeHref}}">Back to {{vibe}}</a></p>
13
+ </main>
14
+ </body>
15
+ </html>
@@ -0,0 +1,23 @@
1
+ import { Result } from "@adviser/cement";
2
+ import { CFEnv } from "@vibes.diy/api-types";
3
+ import type { VibesApiSQLCtx } from "../types.js";
4
+ import { type GithubDeclLoader, type GithubSetupSql, type VerifySessionToken } from "./github-setup.js";
5
+ export type GithubInstallTemplate = "github-install-consent.html" | "github-install-signin.html";
6
+ export type GithubInstallTemplateLoader = (name: GithubInstallTemplate) => Promise<Result<string>>;
7
+ export interface GithubInstallDeps {
8
+ readonly verifySessionToken: VerifySessionToken;
9
+ readonly githubDecl: GithubDeclLoader;
10
+ readonly templates: GithubInstallTemplateLoader;
11
+ readonly sql?: GithubSetupSql;
12
+ readonly fetchImpl?: typeof fetch;
13
+ readonly nowMs?: number;
14
+ }
15
+ export declare function githubDeclFromVctx(vctx: VibesApiSQLCtx): GithubDeclLoader;
16
+ export declare function resetGithubInstallTemplatesForTests(): void;
17
+ export declare function githubInstallTemplates(src: {
18
+ readonly workspace: string;
19
+ readonly fetchAsset: (url: string) => Promise<Result<ReadableStream<Uint8Array>>>;
20
+ }): GithubInstallTemplateLoader;
21
+ export declare function escapeHtml(text: string): string;
22
+ export declare function fillTemplate(template: string, values: Readonly<Record<string, string>>): string;
23
+ export declare function handleGithubInstall(request: Request, env: CFEnv, deps: GithubInstallDeps): Promise<Response>;
@@ -0,0 +1,109 @@
1
+ import { BuildURI, KeyedResolvOnce, loadAsset, URI } from "@adviser/cement";
2
+ import { getAppHtmlUrl } from "../intern/github-app-auth.js";
3
+ import { loadSelectedBackend } from "../intern/load-selected-backend.js";
4
+ import { createPromptAssetFetch } from "../intern/prompt-asset-fetch.js";
5
+ import { appExists, GITHUB_CONSENT_STATE_TTL_MS, GITHUB_SETUP_STATE_RE, htmlPage, ownsHandle, recordGithubConsent, sessionTokenFrom, signGithubConsentState, sqlFor, stateSecret, } from "./github-setup.js";
6
+ export function githubDeclFromVctx(vctx) {
7
+ return async function loadGithubDecl(owner, slug) {
8
+ const loaded = await loadSelectedBackend(vctx, owner, slug);
9
+ if (loaded.ok === false) {
10
+ if (loaded.reason === "release_lookup_failed") {
11
+ console.error(`[github-install] release lookup failed for ${owner}/${slug}; treating as undeclared`);
12
+ }
13
+ return undefined;
14
+ }
15
+ return loaded.parsed.github;
16
+ };
17
+ }
18
+ const templateOnce = new KeyedResolvOnce();
19
+ export function resetGithubInstallTemplatesForTests() {
20
+ templateOnce.reset();
21
+ }
22
+ export function githubInstallTemplates(src) {
23
+ const fetchImpl = createPromptAssetFetch({ fetchAsset: (url) => src.fetchAsset(url) });
24
+ const fallBackUrl = BuildURI.from(src.workspace).appendRelative("@vibes.diy/api-svc/public/").toString();
25
+ return async function loadTemplate(name) {
26
+ const r = await templateOnce
27
+ .get(name)
28
+ .once(() => loadAsset(`./${name}`, { fallBackUrl, basePath: () => import.meta.url, mock: { fetch: fetchImpl } }));
29
+ if (r.isErr())
30
+ templateOnce.unget(name);
31
+ return r;
32
+ };
33
+ }
34
+ export function escapeHtml(text) {
35
+ return text.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
36
+ }
37
+ export function fillTemplate(template, values) {
38
+ return template.replace(/\{\{(\w+)\}\}/g, (match, key) => Object.prototype.hasOwnProperty.call(values, key) ? escapeHtml(values[key]) : match);
39
+ }
40
+ async function templatePage(deps, page, values) {
41
+ const rTemplate = await deps.templates(page.name);
42
+ if (rTemplate.isErr()) {
43
+ console.error(`[github-install] template ${page.name} unreadable:`, rTemplate.Err().message);
44
+ return htmlPage("Not available", "This page could not be shown right now. Try again in a moment.", 503);
45
+ }
46
+ return new Response(fillTemplate(rTemplate.Ok(), values), {
47
+ status: page.status,
48
+ headers: {
49
+ "Content-Type": "text/html; charset=utf-8",
50
+ "Cache-Control": "no-store",
51
+ "X-Frame-Options": "DENY",
52
+ "Content-Security-Policy": "default-src 'none'; style-src 'unsafe-inline'; frame-ancestors 'none'",
53
+ },
54
+ });
55
+ }
56
+ function installUrlFor(htmlUrl, state) {
57
+ const base = URI.from(htmlUrl);
58
+ return BuildURI.from(htmlUrl)
59
+ .pathname(`${base.pathname.replace(/\/+$/, "")}/installations/new`)
60
+ .setParam("state", state)
61
+ .toString();
62
+ }
63
+ export async function handleGithubInstall(request, env, deps) {
64
+ const appId = env.VIBES_GH_APP_ID ?? "";
65
+ const privateKeyPem = env.VIBES_GH_APP_PRIVATE_KEY ?? "";
66
+ if (appId.length === 0 || privateKeyPem.length === 0) {
67
+ return htmlPage("Not available", "Connecting GitHub is not set up on this environment yet, so nothing has been connected.", 503);
68
+ }
69
+ const vibe = URI.from(request.url).getParam("vibe") ?? "";
70
+ if (!GITHUB_SETUP_STATE_RE.test(vibe)) {
71
+ return htmlPage("Invalid link", "This connect link is malformed. Open the app and try again.", 400);
72
+ }
73
+ const [owner, slug] = vibe.split("/");
74
+ const vibeHref = `/vibe/${vibe}`;
75
+ const token = sessionTokenFrom(request);
76
+ const userId = token === undefined ? undefined : await deps.verifySessionToken(token);
77
+ if (userId === undefined) {
78
+ return templatePage(deps, { name: "github-install-signin.html", status: 401 }, { vibe, vibeHref });
79
+ }
80
+ const sql = sqlFor(env, deps);
81
+ if (!(await appExists(sql, owner, slug))) {
82
+ return htmlPage("Vibe not found", "That app does not exist, so there is nothing to connect a repository to.", 404);
83
+ }
84
+ const isOwner = await ownsHandle(sql, userId, owner);
85
+ const decl = isOwner ? undefined : await deps.githubDecl(owner, slug);
86
+ if (isOwner === false && decl?.bind !== "anyone") {
87
+ return htmlPage("Not open to visitors", "This app has not asked visitors to connect their GitHub repositories, so only its author can connect one.", 403);
88
+ }
89
+ const nowMs = deps.nowMs ?? Date.now();
90
+ const secret = stateSecret(env);
91
+ if (decl?.bind === "anyone" && secret === undefined) {
92
+ return htmlPage("Not available", "Connecting GitHub is not fully set up on this environment yet.", 503);
93
+ }
94
+ const rHtmlUrl = await getAppHtmlUrl({ appId, privateKeyPem, nowMs, fetchImpl: deps.fetchImpl });
95
+ if (rHtmlUrl.isErr()) {
96
+ console.error("[github-install] could not resolve the App's install URL:", rHtmlUrl.Err().message);
97
+ return htmlPage("GitHub said no", "We could not reach GitHub to start the install. Try again in a moment.", 502);
98
+ }
99
+ if (decl?.bind === "anyone" && secret !== undefined) {
100
+ const id = await recordGithubConsent(sql, { userId, owner, slug, nowMs });
101
+ const consent = await signGithubConsentState(secret, { id, owner, slug, userId, exp: nowMs + GITHUB_CONSENT_STATE_TTL_MS });
102
+ return templatePage(deps, { name: "github-install-consent.html", status: 200 }, { vibe, why: decl.why, installUrl: installUrlFor(rHtmlUrl.Ok(), consent), vibeHref });
103
+ }
104
+ return new Response(null, {
105
+ status: 302,
106
+ headers: { Location: installUrlFor(rHtmlUrl.Ok(), vibe), "Cache-Control": "no-store" },
107
+ });
108
+ }
109
+ //# sourceMappingURL=github-install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-install.js","sourceRoot":"","sources":["../../jsr/public/github-install.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { CFEnv } from "@vibes.diy/api-types";
2
2
  import { cfDrizzle, VibesApiTables } from "@vibes.diy/api-sql";
3
+ import type { BackendGithubDecl } from "@vibes.diy/vibe-runtime/parse-backend-config.js";
3
4
  export interface GithubSetupSql {
4
5
  db: ReturnType<typeof cfDrizzle>["db"];
5
6
  tables: VibesApiTables;
@@ -10,7 +11,9 @@ export interface GithubSetupDeps {
10
11
  readonly sql?: GithubSetupSql;
11
12
  readonly fetchImpl?: typeof fetch;
12
13
  readonly nowMs?: number;
14
+ readonly githubDecl?: GithubDeclLoader;
13
15
  }
16
+ export type GithubDeclLoader = (owner: string, slug: string) => Promise<BackendGithubDecl | undefined>;
14
17
  export declare const GITHUB_SETUP_STATE_RE: RegExp;
15
18
  export declare function htmlPage(title: string, body: string, status: number): Response;
16
19
  export declare function sessionCookieTokenFrom(request: Request): string | undefined;
@@ -25,6 +28,10 @@ interface SetupOAuthState {
25
28
  readonly slug: string;
26
29
  readonly installationId: string;
27
30
  readonly exp: number;
31
+ readonly consent?: {
32
+ readonly id: string;
33
+ readonly userId: string;
34
+ };
28
35
  }
29
36
  export declare function b64urlEncode(bytes: Uint8Array): string;
30
37
  export declare function b64urlDecode(text: string): string | undefined;
@@ -40,6 +47,30 @@ export declare function exchangeOAuthCode(input: {
40
47
  export declare function sqlFor(env: CFEnv, deps: {
41
48
  readonly sql?: GithubSetupSql;
42
49
  }): GithubSetupSql;
50
+ export declare function ownsHandle(sql: GithubSetupSql, userId: string, ownerHandle: string): Promise<boolean>;
51
+ export declare function mayBindVibe(sql: GithubSetupSql, input: {
52
+ readonly userId: string;
53
+ readonly owner: string;
54
+ readonly slug: string;
55
+ }, githubDecl: GithubDeclLoader | undefined): Promise<boolean>;
43
56
  export declare function appExists(sql: GithubSetupSql, ownerHandle: string, appSlug: string): Promise<boolean>;
44
57
  export declare function handleGithubSetup(request: Request, env: CFEnv, deps: GithubSetupDeps): Promise<Response>;
58
+ export declare const GITHUB_CONSENT_STATE_PREFIX = "g1.";
59
+ export declare const GITHUB_CONSENT_STATE_TTL_MS: number;
60
+ export interface GithubConsentState {
61
+ readonly id: string;
62
+ readonly owner: string;
63
+ readonly slug: string;
64
+ readonly userId: string;
65
+ readonly exp: number;
66
+ }
67
+ export declare function signGithubConsentState(secret: string, state: GithubConsentState): Promise<string>;
68
+ export declare function verifyGithubConsentState(secret: string, signed: string, nowMs: number): Promise<GithubConsentState | undefined>;
69
+ export declare const GITHUB_BIND_CONSENT_PROVIDER = "github-app-bind";
70
+ export declare function recordGithubConsent(sql: GithubSetupSql, input: {
71
+ readonly userId: string;
72
+ readonly owner: string;
73
+ readonly slug: string;
74
+ readonly nowMs: number;
75
+ }): Promise<string>;
45
76
  export {};
@@ -94,7 +94,17 @@ export async function verifyGithubSetupState(secret, signed, nowMs) {
94
94
  return undefined;
95
95
  if (!GITHUB_SETUP_STATE_RE.test(`${parsed.owner}/${parsed.slug}`))
96
96
  return undefined;
97
- return { owner: parsed.owner, slug: parsed.slug, installationId: parsed.installationId, exp: parsed.exp };
97
+ const base = { owner: parsed.owner, slug: parsed.slug, installationId: parsed.installationId, exp: parsed.exp };
98
+ if (parsed.consent === undefined)
99
+ return base;
100
+ if (typeof parsed.consent !== "object" || parsed.consent === null)
101
+ return undefined;
102
+ const consent = parsed.consent;
103
+ if (typeof consent.id !== "string" || consent.id === "")
104
+ return undefined;
105
+ if (typeof consent.userId !== "string" || consent.userId === "")
106
+ return undefined;
107
+ return { ...base, consent: { id: consent.id, userId: consent.userId } };
98
108
  }
99
109
  export async function exchangeOAuthCode(input) {
100
110
  const rRes = await exception2Result(() => input.fetchImpl(GITHUB_OAUTH_TOKEN_URL, {
@@ -163,7 +173,7 @@ export function sqlFor(env, deps) {
163
173
  tables: createVibesApiTables(toDBFlavour(env.DB_FLAVOUR)),
164
174
  });
165
175
  }
166
- async function ownsHandle(sql, userId, ownerHandle) {
176
+ export async function ownsHandle(sql, userId, ownerHandle) {
167
177
  const t_hb = sql.tables.handleBinding;
168
178
  const row = await sql.db
169
179
  .select({ handle: t_hb.handle })
@@ -173,6 +183,14 @@ async function ownsHandle(sql, userId, ownerHandle) {
173
183
  .then((rows) => rows[0]);
174
184
  return row !== undefined;
175
185
  }
186
+ export async function mayBindVibe(sql, input, githubDecl) {
187
+ if (await ownsHandle(sql, input.userId, input.owner))
188
+ return true;
189
+ if (githubDecl === undefined)
190
+ return false;
191
+ const decl = await githubDecl(input.owner, input.slug);
192
+ return decl?.bind === "anyone";
193
+ }
176
194
  export async function appExists(sql, ownerHandle, appSlug) {
177
195
  const t_apps = sql.tables.apps;
178
196
  const row = await sql.db
@@ -204,17 +222,127 @@ export async function handleGithubSetup(request, env, deps) {
204
222
  ? phaseConnect({ env, deps, uri, userId, nowMs, fetchImpl, code })
205
223
  : phaseTwoBind({ env, deps, uri, userId, nowMs, fetchImpl, code });
206
224
  }
225
+ export const GITHUB_CONSENT_STATE_PREFIX = "g1.";
226
+ export const GITHUB_CONSENT_STATE_TTL_MS = 10 * 60 * 1000;
227
+ export async function signGithubConsentState(secret, state) {
228
+ const blob = b64urlEncode(TxtEnDecoderSingleton().encode(JSON.stringify(state)));
229
+ const message = `${GITHUB_CONSENT_STATE_PREFIX}${blob}`;
230
+ return `${message}.${await hmacHex(secret, message)}`;
231
+ }
232
+ export async function verifyGithubConsentState(secret, signed, nowMs) {
233
+ if (!signed.startsWith(GITHUB_CONSENT_STATE_PREFIX))
234
+ return undefined;
235
+ const dot = signed.lastIndexOf(".");
236
+ if (dot <= GITHUB_CONSENT_STATE_PREFIX.length)
237
+ return undefined;
238
+ const message = signed.slice(0, dot);
239
+ const provided = signed.slice(dot + 1);
240
+ const expected = await hmacHex(secret, message);
241
+ if (!timingSafeEqualString(provided, expected))
242
+ return undefined;
243
+ const json = b64urlDecode(message.slice(GITHUB_CONSENT_STATE_PREFIX.length));
244
+ if (json === undefined)
245
+ return undefined;
246
+ const rParsed = exception2Result(() => JSON.parse(json));
247
+ if (rParsed.isErr())
248
+ return undefined;
249
+ const parsed = rParsed.Ok();
250
+ if (typeof parsed.owner !== "string" || typeof parsed.slug !== "string")
251
+ return undefined;
252
+ if (typeof parsed.id !== "string" || parsed.id === "")
253
+ return undefined;
254
+ if (typeof parsed.userId !== "string" || parsed.userId === "")
255
+ return undefined;
256
+ if (typeof parsed.exp !== "number" || nowMs >= parsed.exp)
257
+ return undefined;
258
+ if (!GITHUB_SETUP_STATE_RE.test(`${parsed.owner}/${parsed.slug}`))
259
+ return undefined;
260
+ return { id: parsed.id, owner: parsed.owner, slug: parsed.slug, userId: parsed.userId, exp: parsed.exp };
261
+ }
262
+ export const GITHUB_BIND_CONSENT_PROVIDER = "github-app-bind";
263
+ export async function recordGithubConsent(sql, input) {
264
+ const id = crypto.randomUUID();
265
+ await sql.db.insert(sql.tables.connectionApprovals).values({
266
+ id,
267
+ userId: input.userId,
268
+ provider: GITHUB_BIND_CONSENT_PROVIDER,
269
+ ownerHandle: input.owner,
270
+ appSlug: input.slug,
271
+ created: new Date(input.nowMs).toISOString(),
272
+ consumedAt: "",
273
+ });
274
+ return id;
275
+ }
276
+ function consentRowMatches(sql, key) {
277
+ const t = sql.tables.connectionApprovals;
278
+ return and(eq(t.id, key.id), eq(t.consumedAt, ""), eq(t.userId, key.userId), eq(t.provider, GITHUB_BIND_CONSENT_PROVIDER), eq(t.ownerHandle, key.owner), eq(t.appSlug, key.slug));
279
+ }
280
+ async function githubConsentUnspent(sql, key) {
281
+ const t = sql.tables.connectionApprovals;
282
+ const rows = await sql.db.select({ id: t.id }).from(t).where(consentRowMatches(sql, key)).limit(1);
283
+ return rows.length > 0;
284
+ }
285
+ async function claimGithubConsent(sql, key) {
286
+ const t = sql.tables.connectionApprovals;
287
+ const claimed = await sql.db
288
+ .update(t)
289
+ .set({ consumedAt: new Date(key.nowMs).toISOString() })
290
+ .where(consentRowMatches(sql, key))
291
+ .returning({ id: t.id });
292
+ return claimed.length > 0;
293
+ }
294
+ function notYourVibePage() {
295
+ return htmlPage("Not your vibe", "You can only connect a repository to a vibe you own.", 403);
296
+ }
297
+ async function admitPhaseOne(input) {
298
+ const { env, deps, state, userId, nowMs } = input;
299
+ const sql = sqlFor(env, deps);
300
+ if (state.startsWith(GITHUB_CONSENT_STATE_PREFIX) === false) {
301
+ if (!GITHUB_SETUP_STATE_RE.test(state)) {
302
+ return {
303
+ ok: false,
304
+ refusal: htmlPage("Invalid link", "This install link is malformed. Start the connection again from your vibe's settings.", 400),
305
+ };
306
+ }
307
+ const [owner, slug] = state.split("/");
308
+ if (!(await ownsHandle(sql, userId, owner)))
309
+ return { ok: false, refusal: notYourVibePage() };
310
+ return { ok: true, owner, slug };
311
+ }
312
+ const secret = stateSecret(env);
313
+ const consent = secret === undefined ? undefined : await verifyGithubConsentState(secret, state, nowMs);
314
+ if (consent === undefined || consent.userId !== userId) {
315
+ if (consent !== undefined) {
316
+ console.error(`[github-setup] consent state for clerk user ${consent.userId} presented by ${userId}; refusing`);
317
+ }
318
+ return {
319
+ ok: false,
320
+ refusal: htmlPage("Consent not confirmed", "This install did not come from a consent you confirmed on vibes.diy, or that consent has expired. Open the " +
321
+ "app and use its Connect GitHub link again.", 403),
322
+ };
323
+ }
324
+ if (!(await githubConsentUnspent(sql, { id: consent.id, userId, owner: consent.owner, slug: consent.slug }))) {
325
+ return {
326
+ ok: false,
327
+ refusal: htmlPage("Consent already used", "That consent has already connected a repository. Open the app and use its Connect GitHub link again.", 403),
328
+ };
329
+ }
330
+ if (!(await mayBindVibe(sql, { userId, owner: consent.owner, slug: consent.slug }, deps.githubDecl))) {
331
+ return { ok: false, refusal: notYourVibePage() };
332
+ }
333
+ return { ok: true, owner: consent.owner, slug: consent.slug, consentId: consent.id };
334
+ }
207
335
  async function phaseOneStartOAuth(input) {
208
336
  const { env, deps, uri, userId, nowMs } = input;
209
337
  const installationId = uri.getParam("installation_id") ?? "";
210
338
  const state = uri.getParam("state") ?? "";
211
- if (installationId === "" || !GITHUB_SETUP_STATE_RE.test(state)) {
339
+ if (installationId === "") {
212
340
  return htmlPage("Invalid link", "This install link is malformed. Start the connection again from your vibe's settings.", 400);
213
341
  }
214
- const [ownerHandle] = state.split("/");
215
- if (!(await ownsHandle(sqlFor(env, deps), userId, ownerHandle))) {
216
- return htmlPage("Not your vibe", "You can only connect a repository to a vibe you own.", 403);
217
- }
342
+ const admitted = await admitPhaseOne({ env, deps, state, userId, nowMs });
343
+ if (admitted.ok === false)
344
+ return admitted.refusal;
345
+ const { owner, slug } = admitted;
218
346
  const signingKey = stateSecret(env);
219
347
  const clientId = env.VIBES_GH_APP_CLIENT_ID ?? "";
220
348
  const clientSecret = env.VIBES_GH_APP_CLIENT_SECRET ?? "";
@@ -222,12 +350,12 @@ async function phaseOneStartOAuth(input) {
222
350
  return htmlPage("Not available", "The GitHub connection is not fully provisioned on this environment: connecting a repository needs a GitHub " +
223
351
  "authorization step that is not configured yet, so nothing has been connected.", 503);
224
352
  }
225
- const [owner, slug] = state.split("/");
226
353
  const signed = await signGithubSetupState(signingKey, {
227
354
  owner,
228
355
  slug,
229
356
  installationId,
230
357
  exp: nowMs + GITHUB_SETUP_OAUTH_STATE_TTL_MS,
358
+ ...(admitted.consentId === undefined ? {} : { consent: { id: admitted.consentId, userId } }),
231
359
  });
232
360
  const redirectUri = uri.build().cleanParams().hash("").toString();
233
361
  const authorize = BuildURI.from(GITHUB_OAUTH_AUTHORIZE_URL)
@@ -250,7 +378,7 @@ async function phaseTwoBind(input) {
250
378
  if (verified === undefined) {
251
379
  return htmlPage("Link expired", "That authorization link is no longer valid. Start the connection again from your vibe's settings.", 400);
252
380
  }
253
- const { owner: ownerHandle, slug: appSlug, installationId } = verified;
381
+ const { owner: ownerHandle, slug: appSlug, installationId, consent } = verified;
254
382
  const userToken = await exchangeOAuthCode({
255
383
  clientId,
256
384
  clientSecret,
@@ -270,7 +398,13 @@ async function phaseTwoBind(input) {
270
398
  }
271
399
  const sql = sqlFor(env, deps);
272
400
  if (!(await ownsHandle(sql, userId, ownerHandle))) {
273
- return htmlPage("Not your vibe", "You can only connect a repository to a vibe you own.", 403);
401
+ const admittedVisitor = consent !== undefined &&
402
+ consent.userId === userId &&
403
+ (await mayBindVibe(sql, { userId, owner: ownerHandle, slug: appSlug }, deps.githubDecl)) &&
404
+ (await claimGithubConsent(sql, { id: consent.id, userId, owner: ownerHandle, slug: appSlug, nowMs }));
405
+ if (admittedVisitor === false) {
406
+ return htmlPage("Not your vibe", "You can only connect a repository to a vibe you own.", 403);
407
+ }
274
408
  }
275
409
  if (!(await appExists(sql, ownerHandle, appSlug))) {
276
410
  return htmlPage("Vibe not found", "That vibe does not exist. Publish it first, then connect the repository.", 404);