@noodleseed/one 0.7.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/dist/banner.d.ts +11 -0
  2. package/dist/banner.d.ts.map +1 -0
  3. package/dist/banner.js +183 -0
  4. package/dist/banner.js.map +1 -0
  5. package/dist/cli.d.ts.map +1 -1
  6. package/dist/cli.js +6 -0
  7. package/dist/cli.js.map +1 -1
  8. package/dist/commands/author-loop.d.ts.map +1 -1
  9. package/dist/commands/author-loop.js +78 -3
  10. package/dist/commands/author-loop.js.map +1 -1
  11. package/dist/commands/deploy-ops.d.ts +1 -30
  12. package/dist/commands/deploy-ops.d.ts.map +1 -1
  13. package/dist/commands/deploy-ops.js +79 -88
  14. package/dist/commands/deploy-ops.js.map +1 -1
  15. package/dist/commands/deploy-output.d.ts +31 -0
  16. package/dist/commands/deploy-output.d.ts.map +1 -0
  17. package/dist/commands/deploy-output.js +86 -0
  18. package/dist/commands/deploy-output.js.map +1 -0
  19. package/dist/commands/deploy-version-resolution.d.ts +20 -0
  20. package/dist/commands/deploy-version-resolution.d.ts.map +1 -0
  21. package/dist/commands/deploy-version-resolution.js +77 -0
  22. package/dist/commands/deploy-version-resolution.js.map +1 -0
  23. package/dist/commands/docs-mcp.d.ts +32 -0
  24. package/dist/commands/docs-mcp.d.ts.map +1 -0
  25. package/dist/commands/docs-mcp.js +66 -0
  26. package/dist/commands/docs-mcp.js.map +1 -0
  27. package/dist/commands/mcp-apps.d.ts.map +1 -1
  28. package/dist/commands/mcp-apps.js +38 -37
  29. package/dist/commands/mcp-apps.js.map +1 -1
  30. package/dist/commands/project-setup.d.ts +1 -1
  31. package/dist/commands/project-setup.d.ts.map +1 -1
  32. package/dist/commands/project-setup.js +36 -2
  33. package/dist/commands/project-setup.js.map +1 -1
  34. package/dist/commands/shared.d.ts +1 -0
  35. package/dist/commands/shared.d.ts.map +1 -1
  36. package/dist/commands/shared.js +10 -4
  37. package/dist/commands/shared.js.map +1 -1
  38. package/dist/deploy-version.d.ts +3 -0
  39. package/dist/deploy-version.d.ts.map +1 -0
  40. package/dist/deploy-version.js +28 -0
  41. package/dist/deploy-version.js.map +1 -0
  42. package/dist/deploy.d.ts +5 -1
  43. package/dist/deploy.d.ts.map +1 -1
  44. package/dist/deploy.js +27 -3
  45. package/dist/deploy.js.map +1 -1
  46. package/dist/dev.d.ts.map +1 -1
  47. package/dist/dev.js +9 -1
  48. package/dist/dev.js.map +1 -1
  49. package/dist/devtools-chat.d.ts +76 -0
  50. package/dist/devtools-chat.d.ts.map +1 -0
  51. package/dist/devtools-chat.js +114 -0
  52. package/dist/devtools-chat.js.map +1 -0
  53. package/dist/devtools-env.d.ts +16 -0
  54. package/dist/devtools-env.d.ts.map +1 -0
  55. package/dist/devtools-env.js +71 -0
  56. package/dist/devtools-env.js.map +1 -0
  57. package/dist/devtools-harness.d.ts +28 -0
  58. package/dist/devtools-harness.d.ts.map +1 -0
  59. package/dist/devtools-harness.js +387 -0
  60. package/dist/devtools-harness.js.map +1 -0
  61. package/dist/devtools-preview.d.ts +42 -0
  62. package/dist/devtools-preview.d.ts.map +1 -0
  63. package/dist/devtools-preview.js +394 -0
  64. package/dist/devtools-preview.js.map +1 -0
  65. package/dist/first-run-entry.d.ts +2 -0
  66. package/dist/first-run-entry.d.ts.map +1 -0
  67. package/dist/first-run-entry.js +36 -0
  68. package/dist/first-run-entry.js.map +1 -0
  69. package/dist/first-run.d.ts +26 -0
  70. package/dist/first-run.d.ts.map +1 -0
  71. package/dist/first-run.js +439 -0
  72. package/dist/first-run.js.map +1 -0
  73. package/dist/gradient.d.ts +46 -0
  74. package/dist/gradient.d.ts.map +1 -0
  75. package/dist/gradient.js +87 -0
  76. package/dist/gradient.js.map +1 -0
  77. package/dist/openapi-import.d.ts.map +1 -1
  78. package/dist/openapi-import.js +47 -8
  79. package/dist/openapi-import.js.map +1 -1
  80. package/dist/preview-session.d.ts +46 -0
  81. package/dist/preview-session.d.ts.map +1 -0
  82. package/dist/preview-session.js +132 -0
  83. package/dist/preview-session.js.map +1 -0
  84. package/dist/project.d.ts +2 -0
  85. package/dist/project.d.ts.map +1 -1
  86. package/dist/project.js +2 -0
  87. package/dist/project.js.map +1 -1
  88. package/dist/prompts.d.ts +61 -0
  89. package/dist/prompts.d.ts.map +1 -0
  90. package/dist/prompts.js +209 -0
  91. package/dist/prompts.js.map +1 -0
  92. package/dist/react-widget-build.js +3 -1
  93. package/dist/react-widget-build.js.map +1 -1
  94. package/dist/status.d.ts +58 -0
  95. package/dist/status.d.ts.map +1 -0
  96. package/dist/status.js +106 -0
  97. package/dist/status.js.map +1 -0
  98. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
  99. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +4 -0
  100. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
  101. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  102. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +1 -0
  103. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  104. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  105. package/node_modules/@noodle-borg/connector-defs/dist/compile-expr.d.ts +23 -0
  106. package/node_modules/@noodle-borg/connector-defs/dist/compile-expr.d.ts.map +1 -0
  107. package/node_modules/@noodle-borg/connector-defs/dist/compile-expr.js +41 -0
  108. package/node_modules/@noodle-borg/connector-defs/dist/compile-expr.js.map +1 -0
  109. package/node_modules/@noodle-borg/connector-defs/dist/compile.d.ts +2 -6
  110. package/node_modules/@noodle-borg/connector-defs/dist/compile.d.ts.map +1 -1
  111. package/node_modules/@noodle-borg/connector-defs/dist/compile.js +10 -32
  112. package/node_modules/@noodle-borg/connector-defs/dist/compile.js.map +1 -1
  113. package/node_modules/@noodle-borg/connector-defs/dist/schema.d.ts +16 -0
  114. package/node_modules/@noodle-borg/connector-defs/dist/schema.d.ts.map +1 -1
  115. package/node_modules/@noodle-borg/connector-defs/dist/schema.js +6 -0
  116. package/node_modules/@noodle-borg/connector-defs/dist/schema.js.map +1 -1
  117. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts +7 -0
  118. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts.map +1 -1
  119. package/node_modules/@noodle-borg/connector-http/dist/http-connector.js +14 -5
  120. package/node_modules/@noodle-borg/connector-http/dist/http-connector.js.map +1 -1
  121. package/node_modules/@noodle-borg/module/dist/contract.d.ts +12 -0
  122. package/node_modules/@noodle-borg/module/dist/contract.d.ts.map +1 -1
  123. package/node_modules/@noodle-borg/module/dist/contract.js +41 -0
  124. package/node_modules/@noodle-borg/module/dist/contract.js.map +1 -1
  125. package/node_modules/@noodle-borg/openapi-import/dist/index.d.ts +4 -0
  126. package/node_modules/@noodle-borg/openapi-import/dist/index.d.ts.map +1 -1
  127. package/node_modules/@noodle-borg/openapi-import/dist/index.js +27 -1
  128. package/node_modules/@noodle-borg/openapi-import/dist/index.js.map +1 -1
  129. package/node_modules/@noodle-borg/openapi-import/dist/response-schema.d.ts +50 -0
  130. package/node_modules/@noodle-borg/openapi-import/dist/response-schema.d.ts.map +1 -0
  131. package/node_modules/@noodle-borg/openapi-import/dist/response-schema.js +227 -0
  132. package/node_modules/@noodle-borg/openapi-import/dist/response-schema.js.map +1 -0
  133. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.d.ts +20 -2
  134. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.d.ts.map +1 -1
  135. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.js +37 -2
  136. package/node_modules/@noodle-borg/service/dist/auth/deploy-gate.js.map +1 -1
  137. package/node_modules/@noodle-borg/service/dist/deployment-versioning.d.ts +18 -0
  138. package/node_modules/@noodle-borg/service/dist/deployment-versioning.d.ts.map +1 -0
  139. package/node_modules/@noodle-borg/service/dist/deployment-versioning.js +29 -0
  140. package/node_modules/@noodle-borg/service/dist/deployment-versioning.js.map +1 -0
  141. package/node_modules/@noodle-borg/service/dist/main.js +7 -0
  142. package/node_modules/@noodle-borg/service/dist/main.js.map +1 -1
  143. package/node_modules/@noodle-borg/service/dist/oauth/app.d.ts.map +1 -1
  144. package/node_modules/@noodle-borg/service/dist/oauth/app.js +2 -1
  145. package/node_modules/@noodle-borg/service/dist/oauth/app.js.map +1 -1
  146. package/node_modules/@noodle-borg/service/dist/oauth/branding.d.ts +30 -0
  147. package/node_modules/@noodle-borg/service/dist/oauth/branding.d.ts.map +1 -0
  148. package/node_modules/@noodle-borg/service/dist/oauth/branding.js +224 -0
  149. package/node_modules/@noodle-borg/service/dist/oauth/branding.js.map +1 -0
  150. package/node_modules/@noodle-borg/service/dist/oauth/consent.d.ts +0 -6
  151. package/node_modules/@noodle-borg/service/dist/oauth/consent.d.ts.map +1 -1
  152. package/node_modules/@noodle-borg/service/dist/oauth/consent.js +23 -34
  153. package/node_modules/@noodle-borg/service/dist/oauth/consent.js.map +1 -1
  154. package/node_modules/@noodle-borg/service/dist/oauth/customer-bridge.d.ts.map +1 -1
  155. package/node_modules/@noodle-borg/service/dist/oauth/customer-bridge.js +13 -28
  156. package/node_modules/@noodle-borg/service/dist/oauth/customer-bridge.js.map +1 -1
  157. package/node_modules/@noodle-borg/service/dist/registry-helpers.d.ts +1 -1
  158. package/node_modules/@noodle-borg/service/dist/registry-helpers.d.ts.map +1 -1
  159. package/node_modules/@noodle-borg/service/dist/registry-helpers.js +5 -3
  160. package/node_modules/@noodle-borg/service/dist/registry-helpers.js.map +1 -1
  161. package/node_modules/@noodle-borg/service/dist/registry-targets.d.ts +1 -0
  162. package/node_modules/@noodle-borg/service/dist/registry-targets.d.ts.map +1 -1
  163. package/node_modules/@noodle-borg/service/dist/registry-targets.js +4 -0
  164. package/node_modules/@noodle-borg/service/dist/registry-targets.js.map +1 -1
  165. package/node_modules/@noodle-borg/service/dist/registry-types.d.ts +59 -0
  166. package/node_modules/@noodle-borg/service/dist/registry-types.d.ts.map +1 -0
  167. package/node_modules/@noodle-borg/service/dist/registry-types.js +2 -0
  168. package/node_modules/@noodle-borg/service/dist/registry-types.js.map +1 -0
  169. package/node_modules/@noodle-borg/service/dist/registry.d.ts +8 -65
  170. package/node_modules/@noodle-borg/service/dist/registry.d.ts.map +1 -1
  171. package/node_modules/@noodle-borg/service/dist/registry.js +100 -82
  172. package/node_modules/@noodle-borg/service/dist/registry.js.map +1 -1
  173. package/node_modules/@noodle-borg/service/dist/routes/access-mode.d.ts +4 -0
  174. package/node_modules/@noodle-borg/service/dist/routes/access-mode.d.ts.map +1 -0
  175. package/node_modules/@noodle-borg/service/dist/routes/access-mode.js +15 -0
  176. package/node_modules/@noodle-borg/service/dist/routes/access-mode.js.map +1 -0
  177. package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts +1 -1
  178. package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts.map +1 -1
  179. package/node_modules/@noodle-borg/service/dist/routes/control-plane.js +34 -21
  180. package/node_modules/@noodle-borg/service/dist/routes/control-plane.js.map +1 -1
  181. package/node_modules/@noodle-borg/service/dist/routes/rollback.d.ts.map +1 -1
  182. package/node_modules/@noodle-borg/service/dist/routes/rollback.js +4 -6
  183. package/node_modules/@noodle-borg/service/dist/routes/rollback.js.map +1 -1
  184. package/node_modules/@noodle-borg/service/dist/serve.d.ts +6 -0
  185. package/node_modules/@noodle-borg/service/dist/serve.d.ts.map +1 -1
  186. package/node_modules/@noodle-borg/service/dist/serve.js +72 -32
  187. package/node_modules/@noodle-borg/service/dist/serve.js.map +1 -1
  188. package/node_modules/@noodle-borg/service/dist/server-auth-bindings.d.ts +7 -0
  189. package/node_modules/@noodle-borg/service/dist/server-auth-bindings.d.ts.map +1 -0
  190. package/node_modules/@noodle-borg/service/dist/server-auth-bindings.js +14 -0
  191. package/node_modules/@noodle-borg/service/dist/server-auth-bindings.js.map +1 -0
  192. package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
  193. package/node_modules/@noodle-borg/service/dist/service.js +32 -3
  194. package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
  195. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.d.ts.map +1 -1
  196. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js +13 -2
  197. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js.map +1 -1
  198. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts +3 -2
  199. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts.map +1 -1
  200. package/node_modules/@noodle-borg/service/dist/store/postgres.js +41 -9
  201. package/node_modules/@noodle-borg/service/dist/store/postgres.js.map +1 -1
  202. package/node_modules/@noodle-borg/service/dist/store.d.ts +9 -3
  203. package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
  204. package/node_modules/@noodle-borg/service/dist/store.js +29 -27
  205. package/node_modules/@noodle-borg/service/dist/store.js.map +1 -1
  206. package/node_modules/@noodle-borg/transport-http/dist/handler.d.ts +1 -0
  207. package/node_modules/@noodle-borg/transport-http/dist/handler.d.ts.map +1 -1
  208. package/node_modules/@noodle-borg/transport-http/dist/handler.js +37 -0
  209. package/node_modules/@noodle-borg/transport-http/dist/handler.js.map +1 -1
  210. package/node_modules/@noodle-borg/transport-http/dist/index.d.ts +1 -1
  211. package/node_modules/@noodle-borg/transport-http/dist/index.d.ts.map +1 -1
  212. package/node_modules/@noodle-borg/transport-http/dist/index.js.map +1 -1
  213. package/package.json +3 -2
@@ -1,3 +1,4 @@
1
+ import { renderOAuthPage } from './branding.js';
1
2
  const FIREBASE_AUTHORIZE_PATH = '/oauth/customer/firebase/authorize';
2
3
  const FIREBASE_CALLBACK_PATH = '/oauth/customer/firebase/callback';
3
4
  export const MICROSOFT_CALLBACK_PATH = '/oauth/customer/microsoft/callback';
@@ -121,35 +122,14 @@ function firebaseWebConfig(auth) {
121
122
  function htmlPage(input) {
122
123
  const configJson = safeScriptJson(input.config ?? {});
123
124
  const tenantJson = safeScriptJson(input.tenantId ?? null);
124
- return `<!doctype html>
125
- <html lang="en">
126
- <head>
127
- <meta charset="utf-8">
128
- <meta name="viewport" content="width=device-width, initial-scale=1">
129
- <title>${escapeHtml(input.title)}</title>
130
- <style>
131
- :root { color-scheme: light dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
132
- body { min-height: 100vh; margin: 0; display: grid; place-items: center; background: #101010; color: #f5f1ea; }
133
- main { width: min(100% - 32px, 440px); }
134
- h1 { font-size: 1.5rem; line-height: 1.2; margin: 0 0 12px; }
135
- p { color: #cfc7bc; line-height: 1.55; margin: 0 0 24px; }
136
- button { width: 100%; border: 0; border-radius: 8px; padding: 12px 16px; font: inherit; font-weight: 650; background: #f5c0a8; color: #171412; cursor: pointer; }
137
- button:disabled { cursor: not-allowed; opacity: .55; }
138
- .error { color: #ffb4a8; }
139
- </style>
140
- </head>
141
- <body>
142
- <main>
143
- <h1>${escapeHtml(input.title)}</h1>
144
- <p class="${input.disabled ? 'error' : ''}" id="status">${escapeHtml(input.details)}</p>
125
+ const contentHtml = `<p class="ns-lede ${input.disabled ? 'ns-error' : ''}" id="status">${escapeHtml(input.details)}</p>
145
126
  <form id="firebase-auth-form" method="post" action="${escapeAttribute(input.expectedRedirectUri)}">
146
127
  <input type="hidden" name="state" value="${escapeAttribute(input.state)}">
147
128
  <input type="hidden" name="id_token" id="id-token">
148
129
  <input type="hidden" name="refresh_token" id="refresh-token">
149
- <button type="button" id="firebase-sign-in" ${input.disabled ? 'disabled' : ''}>Continue with Google</button>
150
- </form>
151
- </main>
152
- <script type="module">
130
+ <div class="ns-row"><span class="btn-glow"><button type="button" id="firebase-sign-in" class="btn btn-primary" ${input.disabled ? 'disabled' : ''}><svg width="18" height="18" viewBox="0 0 18 18" style="flex:none" aria-hidden="true"><path fill="#4285F4" d="M17.64 9.205c0-.639-.057-1.252-.164-1.841H9v3.481h4.844a4.14 4.14 0 0 1-1.796 2.716v2.259h2.908c1.702-1.567 2.684-3.875 2.684-6.615z"/><path fill="#34A853" d="M9 18c2.43 0 4.467-.806 5.956-2.18l-2.908-2.259c-.806.54-1.837.86-3.048.86-2.344 0-4.328-1.584-5.036-3.711H.957v2.332A8.997 8.997 0 0 0 9 18z"/><path fill="#FBBC05" d="M3.964 10.71A5.41 5.41 0 0 1 3.682 9c0-.593.102-1.17.282-1.71V4.958H.957A8.997 8.997 0 0 0 0 9c0 1.452.348 2.827.957 4.042l3.007-2.332z"/><path fill="#EA4335" d="M9 3.58c1.321 0 2.508.454 3.44 1.345l2.582-2.58C13.463.891 11.426 0 9 0A8.997 8.997 0 0 0 .957 4.958L3.964 7.29C4.672 5.163 6.656 3.58 9 3.58z"/></svg>Continue with Google</button></span></div>
131
+ </form>`;
132
+ const scriptHtml = `<script type="module">
153
133
  const firebaseConfig = ${configJson};
154
134
  const tenantId = ${tenantJson};
155
135
  const disabled = ${JSON.stringify(input.disabled)};
@@ -180,9 +160,14 @@ function htmlPage(input) {
180
160
  }
181
161
  });
182
162
  }
183
- </script>
184
- </body>
185
- </html>`;
163
+ </script>`;
164
+ return renderOAuthPage({
165
+ title: input.title,
166
+ kicker: 'Sign in',
167
+ heading: input.title,
168
+ contentHtml,
169
+ scriptHtml,
170
+ });
186
171
  }
187
172
  function firebaseCallbackUrl(issuer) {
188
173
  return `${issuer}${FIREBASE_CALLBACK_PATH}`;
@@ -1 +1 @@
1
- {"version":3,"file":"customer-bridge.js","sourceRoot":"","sources":["../../src/oauth/customer-bridge.ts"],"names":[],"mappings":"AAGA,MAAM,uBAAuB,GAAG,oCAAoC,CAAC;AACrE,MAAM,sBAAsB,GAAG,mCAAmC,CAAC;AACnE,MAAM,CAAC,MAAM,uBAAuB,GAAG,oCAAoC,CAAC;AAC5E,MAAM,yBAAyB,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,CAAU,CAAC;AAE5F,MAAM,UAAU,kBAAkB,CAChC,IAA4B,EAC5B,KAA4E;IAE5E,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,qBAAqB,CAAC,IAAI,EAAE;YACjC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,oBAAoB,CAAC,MAAM,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IACnD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACxF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,GAAG,MAAM,GAAG,uBAAuB,EAAE,CAAC,CAAC;IAChF,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;IAClE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACjD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;QAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACrF,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClF,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAAY;IAMxD,OAAO;QACL,GAAG,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/F,GAAG,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,GAAG,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,GAAY;IAOvD,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;IACzD,OAAO;QACL,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;YAChC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;YACvB,CAAC,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ;gBACnC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE;gBAC5B,CAAC,CAAC,EAAE,CAAC;QACT,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;YAC/B,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;YACrB,CAAC,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAClC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;gBAC1B,CAAC,CAAC,EAAE,CAAC;QACT,GAAG,CAAC,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ;YACnC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;YAC7B,CAAC,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ;gBACtC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE;gBAClC,CAAC,CAAC,EAAE,CAAC;QACT,GAAG,CAAC,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ;YACxC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE;YACvC,CAAC,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,aAAa,KAAK,QAAQ;gBAC3C,CAAC,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE;gBAC5C,CAAC,CAAC,EAAE,CAAC;QACT,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;YAChC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;YACvB,CAAC,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ;gBACnC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE;gBAC5B,CAAC,CAAC,EAAE,CAAC;KACV,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAO3C;IACC,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;IACjE,MAAM,MAAM,GACV,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,UAAU;QAC5D,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;QAC/B,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,QAAQ,GAAG,KAAK,KAAK,SAAS,CAAC;IACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,qBAAqB,CAAC;IAChF,MAAM,OAAO,GAAG,QAAQ;QACtB,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,0HAA0H,CAAC;IAC/H,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;QAC5B,IAAI,EAAE,QAAQ,CAAC;YACb,KAAK;YACL,OAAO;YACP,mBAAmB;YACnB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;YACxB,MAAM;YACN,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ;YAC9B,QAAQ;SACT,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAKC,EACD,mBAA2B;IAE3B,IAAI,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,8BAA8B,CAAC;IACxD,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO,mBAAmB,CAAC;IAChD,IAAI,KAAK,CAAC,WAAW,KAAK,mBAAmB,EAAE,CAAC;QAC9C,OAAO,4DAA4D,CAAC;IACtE,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QACnE,OAAO,uEAAuE,CAAC;IACjF,CAAC;IACD,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,OAAO,yEAAyE,CAAC;IACnF,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,uBAAuB,CAAC,IAA4B;IAC3D,OAAO,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAA4B;IACrD,MAAM,MAAM,GAA2B;QACrC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;QACzB,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,CAAC,SAAS,kBAAkB;QAClE,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE;KAChC,CAAC;IACF,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACxD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,QAAQ,CAAC,KAQjB;IACC,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;IAC1D,OAAO;;;;;WAKE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;;;;;;;;;;;;;;UAcxB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;gBACjB,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,iBAAiB,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;0DAC7B,eAAe,CAAC,KAAK,CAAC,mBAAmB,CAAC;iDACnD,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;;;oDAGzB,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;;;;6BAIvD,UAAU;uBAChB,UAAU;uBACV,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8B7C,CAAC;AACT,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc;IACzC,OAAO,GAAG,MAAM,GAAG,sBAAsB,EAAE,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,OAAO,GAAG,MAAM,GAAG,uBAAuB,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAA4B;IAC5D,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAClD,OAAO,qCAAqC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC;AACpG,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAA4B;IAC1D,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAClD,OAAO,qCAAqC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAA4B;IAC1D,OAAO,MAAM,CAAC,CAAC,GAAG,yBAAyB,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,qBAAqB,CAC5B,IAA4B,EAC5B,KAA+D;IAE/D,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACjF,MAAM,GAAG,GAAG,IAAI,GAAG,CACjB,IAAI,CAAC,YAAY;QACf,qCAAqC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CACjG,CAAC;IACF,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAC9C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACxD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAC/C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC;AAED,SAAS,MAAM,CAAC,MAAyB;IACvC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,SAAS;QAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACpD,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK;SACT,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"customer-bridge.js","sourceRoot":"","sources":["../../src/oauth/customer-bridge.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,6 @@ import type { TenantRef } from './store.js';
5
5
  export declare function missingCapabilityErrors(required: readonly CapabilityName[], available: readonly CapabilityName[]): readonly DeployError[];
6
6
  export declare function missingSecretErrors(bindings: readonly SecretBinding[], secrets: Readonly<Record<string, string>>): DeployError[];
7
7
  export declare function missingVariableErrors(bindings: readonly string[], variables: Readonly<Record<string, string>>): DeployError[];
8
- export declare function tenantMcpUrl(base: string, tenant: TenantRef): string;
8
+ export declare function tenantMcpUrl(base: string, tenant: TenantRef, serverVersion?: string): string;
9
9
  export declare function missingSecretNames(errors: readonly DeployError[]): string[];
10
10
  //# sourceMappingURL=registry-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry-helpers.d.ts","sourceRoot":"","sources":["../src/registry-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,SAAS,cAAc,EAAE,EACnC,SAAS,EAAE,SAAS,cAAc,EAAE,GACnC,SAAS,WAAW,EAAE,CASxB;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACxC,WAAW,EAAE,CAef;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC1C,WAAW,EAAE,CAcf;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,MAAM,CAIpE;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,EAAE,CAQ3E"}
1
+ {"version":3,"file":"registry-helpers.d.ts","sourceRoot":"","sources":["../src/registry-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,SAAS,cAAc,EAAE,EACnC,SAAS,EAAE,SAAS,cAAc,EAAE,GACnC,SAAS,WAAW,EAAE,CASxB;AAED,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,SAAS,aAAa,EAAE,EAClC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACxC,WAAW,EAAE,CAef;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC1C,WAAW,EAAE,CAcf;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAM5F;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,EAAE,CAQ3E"}
@@ -1,3 +1,4 @@
1
+ import { serverVersionPathSegment } from '@noodle-borg/module';
1
2
  export function missingCapabilityErrors(required, available) {
2
3
  const enabled = new Set(available);
3
4
  return required
@@ -40,10 +41,11 @@ export function missingVariableErrors(bindings, variables) {
40
41
  }
41
42
  return errors;
42
43
  }
43
- export function tenantMcpUrl(base, tenant) {
44
+ export function tenantMcpUrl(base, tenant, serverVersion) {
45
+ const versionPath = serverVersion !== undefined ? `/${serverVersionPathSegment(serverVersion)}` : '';
44
46
  return tenant.env === 'prod'
45
- ? `${base}/o/${tenant.org}/${tenant.app}/mcp`
46
- : `${base}/o/${tenant.org}/${tenant.app}/${tenant.env}/mcp`;
47
+ ? `${base}/o/${tenant.org}/${tenant.app}${versionPath}/mcp`
48
+ : `${base}/o/${tenant.org}/${tenant.app}/${tenant.env}${versionPath}/mcp`;
47
49
  }
48
50
  export function missingSecretNames(errors) {
49
51
  const names = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"registry-helpers.js","sourceRoot":"","sources":["../src/registry-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry-helpers.js","sourceRoot":"","sources":["../src/registry-helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAI/D,MAAM,UAAU,uBAAuB,CACrC,QAAmC,EACnC,SAAoC;IAEpC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IACnC,OAAO,QAAQ;SACZ,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACpC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACd,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,YAAY,IAAI,EAAE;QACxB,OAAO,EAAE,wBAAwB,IAAI,0CAA0C,eAAe,CAAC,IAAI,CAAC,wBAAwB,IAAI,8CAA8C;KAC/K,CAAC,CAAC,CAAC;AACR,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,QAAkC,EAClC,OAAyC;IAEzC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;YAAE,SAAS;QAC9C,IAAI,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7E,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,WAAW,OAAO,CAAC,SAAS,EAAE;gBACpC,OAAO,EAAE,+CAA+C,OAAO,CAAC,SAAS,GAAG;aAC7E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAA2B,EAC3B,SAA2C;IAE3C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACf,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,aAAa,IAAI,EAAE;gBACzB,OAAO,EAAE,iDAAiD,IAAI,GAAG;aAClE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,MAAiB,EAAE,aAAsB;IAClF,MAAM,WAAW,GACf,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,wBAAwB,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,OAAO,MAAM,CAAC,GAAG,KAAK,MAAM;QAC1B,CAAC,CAAC,GAAG,IAAI,MAAM,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,WAAW,MAAM;QAC3D,CAAC,CAAC,GAAG,IAAI,MAAM,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,WAAW,MAAM,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAA8B;IAC/D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACzE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,eAAe,CAAC,IAAoB;IAC3C,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,CAAC"}
@@ -15,6 +15,7 @@ export declare function recordTenant(record: DeployRecord): TenantRef;
15
15
  export declare function recordMatchesTenant(record: DeployRecord, ref: TenantRef): boolean;
16
16
  export declare function emptySecretEnvelope(): SecretEnvelope;
17
17
  export declare function tenantKey(ref: TenantRef): string;
18
+ export declare function tenantDeploymentKey(ref: TenantRef, serverVersion?: string): string;
18
19
  /** Build a URL-safe, human-readable id from the manifest's server name plus a short random suffix. */
19
20
  export declare function mintDeploymentId(name: string): string;
20
21
  //# sourceMappingURL=registry-targets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry-targets.d.ts","sourceRoot":"","sources":["../src/registry-targets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,SAAS,EACV,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,cAAc,EACtB,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,kBAAkB,GACvE,YAAY,CAiBd;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,gBAAgB,EACtB,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,kBAAkB,GACvE;IACD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;CAC3C,CAUA;AAID,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,iBAAiB,CAYrE;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAE5D;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAEjF;AAED,wBAAgB,mBAAmB,IAAI,cAAc,CAEpD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,CAEhD;AAED,sGAAsG;AACtG,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOrD"}
1
+ {"version":3,"file":"registry-targets.d.ts","sourceRoot":"","sources":["../src/registry-targets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,SAAS,EACV,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,cAAc,EACtB,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,kBAAkB,GACvE,YAAY,CAiBd;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,gBAAgB,EACtB,uBAAuB,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,kBAAkB,GACvE;IACD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;CAC3C,CAUA;AAID,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,iBAAiB,CAarE;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAE5D;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAEjF;AAED,wBAAgB,mBAAmB,IAAI,cAAc,CAEpD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,CAEhD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAElF;AAED,sGAAsG;AACtG,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOrD"}
@@ -39,6 +39,7 @@ export function recordSummary(record) {
39
39
  orgSlug: record.orgSlug,
40
40
  appSlug: record.appSlug,
41
41
  environment: record.environment,
42
+ ...(record.serverVersion !== undefined ? { serverVersion: record.serverVersion } : {}),
42
43
  active: record.active,
43
44
  serverName: record.serverName,
44
45
  createdAt: record.createdAt,
@@ -58,6 +59,9 @@ export function emptySecretEnvelope() {
58
59
  export function tenantKey(ref) {
59
60
  return `${ref.org}/${ref.app}/${ref.env}`;
60
61
  }
62
+ export function tenantDeploymentKey(ref, serverVersion) {
63
+ return serverVersion === undefined ? tenantKey(ref) : `${tenantKey(ref)}@${serverVersion}`;
64
+ }
61
65
  /** Build a URL-safe, human-readable id from the manifest's server name plus a short random suffix. */
62
66
  export function mintDeploymentId(name) {
63
67
  const slug = name
@@ -1 +1 @@
1
- {"version":3,"file":"registry-targets.js","sourceRoot":"","sources":["../src/registry-targets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry-targets.js","sourceRoot":"","sources":["../src/registry-targets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import type { CapabilityName } from '@noodle-borg/capabilities';
2
+ import type { CatalogConnector } from '@noodle-borg/compiler';
3
+ import type { PolicyGate } from '@noodle-borg/module';
4
+ import type { Connector } from '@noodle-borg/runtime';
5
+ import type { AccessMode, OwnerTokenVerifier } from '@noodle-borg/transport-http';
6
+ import type { OAuthStore } from './oauth/store.js';
7
+ import type { StateHandleStoreFactory } from './state-connector-factory.js';
8
+ import type { SecretEnvelope, TenantAuthConfig } from './store.js';
9
+ /** A deploy error from compiling either the connector catalog or the manifest. */
10
+ export interface DeployError {
11
+ readonly code: string;
12
+ readonly path: string;
13
+ readonly message: string;
14
+ }
15
+ export type DeployResult = {
16
+ readonly ok: true;
17
+ readonly deploymentId: string;
18
+ readonly deploymentVersion: number;
19
+ readonly serverVersion?: string;
20
+ readonly accessMode?: AccessMode;
21
+ } | {
22
+ readonly ok: false;
23
+ readonly errors: readonly DeployError[];
24
+ };
25
+ export type RollbackResult = {
26
+ readonly ok: true;
27
+ readonly deploymentId: string;
28
+ readonly serverVersion?: string;
29
+ readonly previousDeploymentId?: string;
30
+ readonly alreadyActive: boolean;
31
+ readonly accessMode: AccessMode;
32
+ readonly previousAccessMode?: AccessMode;
33
+ readonly serverName: string;
34
+ readonly createdAt: string;
35
+ } | {
36
+ readonly ok: false;
37
+ readonly status: 404 | 409;
38
+ readonly error: string;
39
+ };
40
+ export interface ServerRegistryOptions {
41
+ readonly customerVerifierFactory?: (auth: TenantAuthConfig) => OwnerTokenVerifier;
42
+ readonly policyGate?: PolicyGate;
43
+ readonly serviceCapabilities?: readonly CapabilityName[];
44
+ readonly platformCatalog?: readonly CatalogConnector[];
45
+ readonly platformConnectors?: readonly Connector[];
46
+ readonly stateHandleStoreFactory?: StateHandleStoreFactory;
47
+ readonly delegatedCredentialStore?: Pick<OAuthStore, 'getDelegatedCredential' | 'putDelegatedCredential'>;
48
+ readonly sealCustomerCredential?: (credential: string) => Promise<SecretEnvelope>;
49
+ readonly openCustomerCredential?: (credential: SecretEnvelope) => Promise<string>;
50
+ }
51
+ /** Outcome of recover: how many servers were rebuilt, and which records failed. */
52
+ export interface RecoverResult {
53
+ readonly recovered: number;
54
+ readonly failed: ReadonlyArray<{
55
+ readonly deploymentId: string;
56
+ readonly errors: readonly DeployError[];
57
+ }>;
58
+ }
59
+ //# sourceMappingURL=registry-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-types.d.ts","sourceRoot":"","sources":["../src/registry-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=registry-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry-types.js","sourceRoot":"","sources":["../src/registry-types.ts"],"names":[],"mappings":""}
@@ -1,60 +1,11 @@
1
1
  import type { CapabilityName } from '@noodle-borg/capabilities';
2
2
  import { type CatalogConnector, type HostedPackagedAsset, type LocalAssetOptions, type PackagedAsset } from '@noodle-borg/compiler';
3
- import type { PolicyGate } from '@noodle-borg/module';
4
3
  import { type Connector, type SecretBox } from '@noodle-borg/runtime';
5
- import type { AccessMode, OwnerTokenVerifier, ServedTarget } from '@noodle-borg/transport-http';
4
+ import type { AccessMode, ServedTarget } from '@noodle-borg/transport-http';
6
5
  import type { ControlPlaneIdentity } from './auth/deploy-gate.js';
7
- import type { OAuthStore } from './oauth/store.js';
8
- import { type StateHandleStoreFactory } from './state-connector-factory.js';
9
- import { type ArtifactStore, type ConfigStore, type DeploymentStatus, type DeploymentSummary, type DeployRecord, type SecretEnvelope, type TenantAuthConfig, type TenantRef } from './store.js';
10
- /** A deploy error from compiling either the connector catalog or the manifest. */
11
- export interface DeployError {
12
- readonly code: string;
13
- readonly path: string;
14
- readonly message: string;
15
- }
16
- export type DeployResult = {
17
- readonly ok: true;
18
- readonly deploymentId: string;
19
- readonly deploymentVersion: number;
20
- readonly accessMode?: AccessMode;
21
- } | {
22
- readonly ok: false;
23
- readonly errors: readonly DeployError[];
24
- };
25
- export type RollbackResult = {
26
- readonly ok: true;
27
- readonly deploymentId: string;
28
- readonly previousDeploymentId?: string;
29
- readonly alreadyActive: boolean;
30
- readonly accessMode: AccessMode;
31
- readonly previousAccessMode?: AccessMode;
32
- readonly serverName: string;
33
- readonly createdAt: string;
34
- } | {
35
- readonly ok: false;
36
- readonly status: 404 | 409;
37
- readonly error: string;
38
- };
39
- export interface ServerRegistryOptions {
40
- readonly customerVerifierFactory?: (auth: TenantAuthConfig) => OwnerTokenVerifier;
41
- readonly policyGate?: PolicyGate;
42
- readonly serviceCapabilities?: readonly CapabilityName[];
43
- readonly platformCatalog?: readonly CatalogConnector[];
44
- readonly platformConnectors?: readonly Connector[];
45
- readonly stateHandleStoreFactory?: StateHandleStoreFactory;
46
- readonly delegatedCredentialStore?: Pick<OAuthStore, 'getDelegatedCredential' | 'putDelegatedCredential'>;
47
- readonly sealCustomerCredential?: (credential: string) => Promise<SecretEnvelope>;
48
- readonly openCustomerCredential?: (credential: SecretEnvelope) => Promise<string>;
49
- }
50
- /** Outcome of {@link ServerRegistry.recover}: how many servers were rebuilt, and which records failed. */
51
- export interface RecoverResult {
52
- readonly recovered: number;
53
- readonly failed: ReadonlyArray<{
54
- readonly deploymentId: string;
55
- readonly errors: readonly DeployError[];
56
- }>;
57
- }
6
+ import type { DeployResult, RecoverResult, RollbackResult, ServerRegistryOptions } from './registry-types.js';
7
+ import { type ArtifactStore, type ConfigStore, type DeploymentStatus, type DeploymentSummary, type DeployRecord, type TenantRef } from './store.js';
8
+ export type { DeployError, DeployResult, RecoverResult, RollbackResult, ServerRegistryOptions, } from './registry-types.js';
58
9
  /**
59
10
  * Holds deployed servers in memory and serves them by id. Each deploy compiles an optional declarative
60
11
  * connector catalog and the manifest (against that catalog) to a resolved artifact, then registers the
@@ -86,31 +37,23 @@ export declare class ServerRegistry {
86
37
  }): void;
87
38
  setLocalAssetOptions(options: LocalAssetOptions): void;
88
39
  getLocalAsset(pathname: string): PackagedAsset | undefined;
89
- deploy(tenant: TenantRef, manifest: string, connectors?: string, actor?: ControlPlaneIdentity, accessMode?: AccessMode, hostedAssets?: readonly HostedPackagedAsset[]): Promise<DeployResult>;
40
+ deploy(tenant: TenantRef, manifest: string, connectors?: string, actor?: ControlPlaneIdentity, accessMode?: AccessMode, hostedAssets?: readonly HostedPackagedAsset[], serverVersion?: string): Promise<DeployResult>;
90
41
  /**
91
42
  * Rebuild every persisted server into memory on startup. Each record is replayed through the same
92
43
  * compile path as a fresh deploy, reusing its stored id and access metadata. A record that no longer
93
44
  * compiles (e.g. source/catalog drift) is skipped and reported — the remaining servers still recover.
94
45
  */
95
46
  recover(): Promise<RecoverResult>;
96
- /**
97
- * Resolve a served server by id. A cache hit returns immediately. On a cache miss **with a durable
98
- * store**, the record is point-read ({@link ArtifactStore.get}), recompiled through the shared
99
- * {@link #compileTarget} path, cached, and returned — so **any instance can serve any deploy**, including
100
- * one it never handled (multi-instance correctness, ADR 0036). A miss with no record resolves to
101
- * `undefined` (→ `404`). A record that no longer compiles, or whose secret will not decrypt, **throws**
102
- * (→ `500`) — failing only its own request, never the instance. Concurrent first-hits for the same id
103
- * share one in-flight compile (single-flight).
104
- */
105
47
  get(deploymentId: string): Promise<ServedTarget | undefined>;
106
48
  getActiveByTenant(ref: TenantRef): Promise<ServedTarget | undefined>;
49
+ getActiveByTenantVersion(ref: TenantRef, serverVersion: string): Promise<ServedTarget | undefined>;
107
50
  listDeployments(filter: {
108
51
  org: string;
109
52
  app?: string;
110
53
  env?: string;
111
54
  }): Promise<readonly DeploymentSummary[]>;
112
- getStatus(ref: TenantRef, baseUrl: string): Promise<DeploymentStatus | undefined>;
113
- updateAccess(ref: TenantRef, accessMode: AccessMode): Promise<DeployRecord | undefined>;
55
+ getStatus(ref: TenantRef, baseUrl: string, serverVersion?: string): Promise<DeploymentStatus | undefined>;
56
+ updateAccess(ref: TenantRef, accessMode: AccessMode, serverVersion?: string): Promise<DeployRecord | undefined>;
114
57
  rollback(ref: TenantRef, deploymentId: string): Promise<RollbackResult>;
115
58
  get configStore(): ConfigStore;
116
59
  get size(): number;
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EACL,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EAExB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EACnB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAAE,KAAK,SAAS,EAA6B,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjG,OAAO,KAAK,EAAE,UAAU,EAAsB,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAwBlE,OAAO,KAAK,EAEV,YAAY,EACZ,aAAa,EACb,cAAc,EACd,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAKjB,KAAK,SAAS,EAGf,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,WAAW,EACX,YAAY,EACZ,aAAa,EACb,cAAc,EACd,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;;;;GAaG;AACH,qBAAa,cAAc;;IAsBzB;;;;;;OAMG;gBAED,KAAK,CAAC,EAAE,aAAa,EACrB,UAAU,CAAC,EAAE,SAAS,EACtB,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,qBAA0B;IAoBrC,sBAAsB,CAAC,YAAY,EAAE,SAAS,cAAc,EAAE,GAAG,IAAI;IAIrE,qBAAqB,CAAC,KAAK,EAAE;QAC3B,QAAQ,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;QAC9C,QAAQ,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,CAAC;KAC3C,GAAG,IAAI;IAKR,oBAAoB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAKtD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAGpD,MAAM,CACV,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,oBAAoB,EAC5B,UAAU,CAAC,EAAE,UAAU,EACvB,YAAY,CAAC,EAAE,SAAS,mBAAmB,EAAE,EAC7C,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,YAAY,CAAC;IAuGxB;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;IA6KjC,GAAG,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAa5D,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAiBpE,wBAAwB,CAC5B,GAAG,EAAE,SAAS,EACd,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAsB9B,eAAe,CAAC,MAAM,EAAE;QAC5B,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,GAAG,OAAO,CAAC,SAAS,iBAAiB,EAAE,CAAC;IAsBnC,SAAS,CACb,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAsClC,YAAY,CAChB,GAAG,EAAE,SAAS,EACd,UAAU,EAAE,UAAU,EACtB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAuB9B,QAAQ,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAqJ7E,IAAI,WAAW,IAAI,WAAW,CAE7B;IAqCD,IAAI,IAAI,IAAI,MAAM,CAEjB;CACF"}