@opengeni/contracts 3.1.0-canary.2 → 3.1.2

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 (429) hide show
  1. package/dist/agent-authored-durable-text.d.ts +9 -9
  2. package/dist/agent-config.d.ts +971 -0
  3. package/dist/agent-instruction-changes.d.ts +0 -2
  4. package/dist/allowance-refusal.d.ts +9 -0
  5. package/dist/allowance-refusal.js +50 -0
  6. package/dist/allowance-refusal.js.map +1 -0
  7. package/dist/analytics-consent-report.d.ts +19 -0
  8. package/dist/analytics-consent-report.js +10 -0
  9. package/dist/analytics-consent-report.js.map +1 -0
  10. package/dist/api-key-presets.d.ts +19 -0
  11. package/dist/artifact-catalog.d.ts +188 -0
  12. package/dist/artifacts.d.ts +86 -0
  13. package/dist/atlassian-native-retirement.d.ts +16 -0
  14. package/dist/atlassian-native-retirement.js +30 -0
  15. package/dist/atlassian-native-retirement.js.map +1 -0
  16. package/dist/atlassian.d.ts +1 -0
  17. package/dist/atlassian.js +34 -19
  18. package/dist/browser-storage.d.ts +5 -0
  19. package/dist/browser-storage.js +9 -0
  20. package/dist/browser-storage.js.map +1 -0
  21. package/dist/bundled-skills.d.ts +24 -1
  22. package/dist/canonical-human-identities.js +2 -1
  23. package/dist/chunk-2ZIHHL72.js +153 -0
  24. package/dist/chunk-2ZIHHL72.js.map +1 -0
  25. package/dist/{chunk-5LYFSZ7O.js → chunk-352X6ENP.js} +31 -31
  26. package/dist/chunk-4JGHSSB7.js +11 -0
  27. package/dist/chunk-4JGHSSB7.js.map +1 -0
  28. package/dist/chunk-4QO6GJUX.js +85 -0
  29. package/dist/chunk-4QO6GJUX.js.map +1 -0
  30. package/dist/chunk-4VDMHLLL.js +49 -0
  31. package/dist/chunk-4VDMHLLL.js.map +1 -0
  32. package/dist/chunk-56SNIMDO.js +9 -0
  33. package/dist/chunk-56SNIMDO.js.map +1 -0
  34. package/dist/chunk-6C2HKFTU.js +207 -0
  35. package/dist/chunk-6C2HKFTU.js.map +1 -0
  36. package/dist/chunk-6IXO76Z6.js +72 -0
  37. package/dist/chunk-6IXO76Z6.js.map +1 -0
  38. package/dist/chunk-7272KVWZ.js +60 -0
  39. package/dist/chunk-7272KVWZ.js.map +1 -0
  40. package/dist/{chunk-7ABONTXE.js → chunk-E3GGUBHS.js} +49 -5
  41. package/dist/chunk-E3GGUBHS.js.map +1 -0
  42. package/dist/chunk-EFZYKUE2.js +767 -0
  43. package/dist/chunk-EFZYKUE2.js.map +1 -0
  44. package/dist/chunk-EKWNTOG3.js +154 -0
  45. package/dist/chunk-EKWNTOG3.js.map +1 -0
  46. package/dist/chunk-HABQ7ADB.js +234 -0
  47. package/dist/chunk-HABQ7ADB.js.map +1 -0
  48. package/dist/chunk-HRRU4QPI.js +91 -0
  49. package/dist/chunk-HRRU4QPI.js.map +1 -0
  50. package/dist/{chunk-3SIZGL3O.js → chunk-IK36LXKC.js} +18 -2
  51. package/dist/chunk-IK36LXKC.js.map +1 -0
  52. package/dist/{chunk-TXTQIYCV.js → chunk-ILJ72KPO.js} +56 -3
  53. package/dist/chunk-ILJ72KPO.js.map +1 -0
  54. package/dist/chunk-J4HQ3UKY.js +93 -0
  55. package/dist/chunk-J4HQ3UKY.js.map +1 -0
  56. package/dist/chunk-KHHZTBP7.js +11 -0
  57. package/dist/chunk-KHHZTBP7.js.map +1 -0
  58. package/dist/{chunk-WYBDERIY.js → chunk-LZ2LAHIX.js} +47 -41
  59. package/dist/chunk-LZ2LAHIX.js.map +1 -0
  60. package/dist/chunk-NDZHPTCL.js +400 -0
  61. package/dist/chunk-NDZHPTCL.js.map +1 -0
  62. package/dist/chunk-OF6OKOBF.js +54793 -0
  63. package/dist/chunk-OF6OKOBF.js.map +1 -0
  64. package/dist/chunk-OL23ARTF.js +94 -0
  65. package/dist/chunk-OL23ARTF.js.map +1 -0
  66. package/dist/chunk-PUIUXIOL.js +189 -0
  67. package/dist/chunk-PUIUXIOL.js.map +1 -0
  68. package/dist/{chunk-Y3KNXVTD.js → chunk-RMWXDZEO.js} +128 -21
  69. package/dist/chunk-RMWXDZEO.js.map +1 -0
  70. package/dist/{chunk-MRWYRAS5.js → chunk-SHO4YO4B.js} +27 -35
  71. package/dist/chunk-SHO4YO4B.js.map +1 -0
  72. package/dist/chunk-SWRN2DJ3.js +153 -0
  73. package/dist/chunk-SWRN2DJ3.js.map +1 -0
  74. package/dist/chunk-TCXCRBPF.js +267 -0
  75. package/dist/chunk-TCXCRBPF.js.map +1 -0
  76. package/dist/chunk-TLU3UEMD.js +324 -0
  77. package/dist/chunk-TLU3UEMD.js.map +1 -0
  78. package/dist/chunk-TSWWZMUS.js +186 -0
  79. package/dist/chunk-TSWWZMUS.js.map +1 -0
  80. package/dist/{chunk-PX3VCKAU.js → chunk-WVCFSOUZ.js} +1 -1
  81. package/dist/{chunk-PX3VCKAU.js.map → chunk-WVCFSOUZ.js.map} +1 -1
  82. package/dist/chunk-XDLAGX66.js +127 -0
  83. package/dist/chunk-XDLAGX66.js.map +1 -0
  84. package/dist/chunk-YKZ4WU4P.js +33 -0
  85. package/dist/chunk-YKZ4WU4P.js.map +1 -0
  86. package/dist/{chunk-O5LEQHDM.js → chunk-Z7WEVGCL.js} +3 -3
  87. package/dist/{chunk-YBW5JSA3.js → chunk-ZDCRWCGZ.js} +119 -101
  88. package/dist/chunk-ZDCRWCGZ.js.map +1 -0
  89. package/dist/claude-provider-account-authority.d.ts +18 -0
  90. package/dist/claude-subscription-oauth.d.ts +42 -0
  91. package/dist/claude-subscription-usage.d.ts +159 -0
  92. package/dist/client-error-report.d.ts +158 -0
  93. package/dist/client-error-report.js +164 -0
  94. package/dist/client-error-report.js.map +1 -0
  95. package/dist/code-search.d.ts +52 -0
  96. package/dist/code-search.js +40 -0
  97. package/dist/code-search.js.map +1 -0
  98. package/dist/codex-provider-account-authority.js +20 -12
  99. package/dist/codex-provider-account-authority.js.map +1 -1
  100. package/dist/company-profile.d.ts +144 -6
  101. package/dist/connect.d.ts +37 -0
  102. package/dist/connect.js +216 -159
  103. package/dist/connect.js.map +1 -1
  104. package/dist/connection-account-label.d.ts +2 -0
  105. package/dist/connection-account-label.js +35 -0
  106. package/dist/connection-account-label.js.map +1 -0
  107. package/dist/connection-authority.d.ts +9 -317
  108. package/dist/connection-authority.js +37 -42
  109. package/dist/connector-attachments.js +2 -1
  110. package/dist/connector-destinations.js +2 -1
  111. package/dist/connector-tool-permissions.d.ts +137 -0
  112. package/dist/cua-desktop-tools.d.ts +17 -0
  113. package/dist/define-schema.d.ts +8 -0
  114. package/dist/direct-model-provider.d.ts +36 -0
  115. package/dist/editable-artifact-codec-registry.js +5 -5
  116. package/dist/editable-artifact-committed-transaction.js +3 -2
  117. package/dist/editable-artifact-live.js +5 -5
  118. package/dist/editable-artifact-serialized-commit.js +6 -6
  119. package/dist/editable-artifact-versions.d.ts +7 -1
  120. package/dist/editable-artifact-versions.js +1 -1
  121. package/dist/editable-artifacts.js +62 -56
  122. package/dist/event-preview.d.ts +22 -0
  123. package/dist/external-identities.d.ts +138 -0
  124. package/dist/external-identities.js +9 -4
  125. package/dist/first-party-tool-authorization.d.ts +815 -0
  126. package/dist/github-repository-contracts.js +60 -43
  127. package/dist/github-repository-contracts.js.map +1 -1
  128. package/dist/google-drive.d.ts +2 -1
  129. package/dist/google-drive.js +305 -238
  130. package/dist/google-drive.js.map +1 -1
  131. package/dist/host-mcp-bindings.d.ts +5 -0
  132. package/dist/host-mcp-bindings.js +233 -170
  133. package/dist/host-mcp-bindings.js.map +1 -1
  134. package/dist/image-generation.d.ts +1 -0
  135. package/dist/index.d.ts +16761 -5946
  136. package/dist/index.js +1973 -260
  137. package/dist/insights-usage.d.ts +877 -0
  138. package/dist/insights-usage.js +559 -0
  139. package/dist/insights-usage.js.map +1 -0
  140. package/dist/interaction.d.ts +1176 -829
  141. package/dist/knowledge-entries.d.ts +81 -2
  142. package/dist/knowledge-preparation.d.ts +239 -0
  143. package/dist/managed-auth-session-sets.d.ts +7 -0
  144. package/dist/managed-auth-session-sets.js +198 -132
  145. package/dist/managed-auth-session-sets.js.map +1 -1
  146. package/dist/managed-sign-in-methods.d.ts +56 -0
  147. package/dist/managed-sign-in-methods.js +64 -0
  148. package/dist/managed-sign-in-methods.js.map +1 -0
  149. package/dist/mcp-catalog-limits.d.ts +2 -0
  150. package/dist/mcp-oauth.d.ts +2 -2
  151. package/dist/mcp-structured-content.d.ts +25 -0
  152. package/dist/modal-native-proof-v2.d.ts +587 -0
  153. package/dist/modal-native-proof-v2.js +38 -0
  154. package/dist/modal-native-proof-v2.js.map +1 -0
  155. package/dist/model-account-choice.d.ts +235 -0
  156. package/dist/model-account-settings.d.ts +422 -0
  157. package/dist/model-availability.d.ts +15 -0
  158. package/dist/model-connection-access.d.ts +13 -0
  159. package/dist/model-context-inspector.d.ts +98 -0
  160. package/dist/model-display.d.ts +43 -0
  161. package/dist/model-display.js +17 -0
  162. package/dist/model-display.js.map +1 -0
  163. package/dist/model-picker-order.d.ts +3 -1
  164. package/dist/model-picker-order.js +3 -0
  165. package/dist/model-picker-order.js.map +1 -1
  166. package/dist/organization-access.d.ts +412 -0
  167. package/dist/organization-access.js +39 -0
  168. package/dist/organization-access.js.map +1 -0
  169. package/dist/organization-integration-policy.d.ts +27 -0
  170. package/dist/organization-membership-lifecycle.d.ts +38 -0
  171. package/dist/organization-model-usage.d.ts +146 -0
  172. package/dist/organization-model-usage.js +78 -0
  173. package/dist/organization-model-usage.js.map +1 -0
  174. package/dist/organization-recovery.js +2 -1
  175. package/dist/organization-usage.d.ts +138 -0
  176. package/dist/permissions.d.ts +18 -0
  177. package/dist/personal-github.d.ts +1 -0
  178. package/dist/personal-github.js +199 -144
  179. package/dist/personal-github.js.map +1 -1
  180. package/dist/prepared-mcp-setup.d.ts +54 -0
  181. package/dist/prepared-mcp-setup.js +12 -0
  182. package/dist/prepared-mcp-setup.js.map +1 -0
  183. package/dist/product-analytics.d.ts +116 -0
  184. package/dist/product-lifecycle-facts.d.ts +73 -0
  185. package/dist/remember.d.ts +98 -6
  186. package/dist/retained-output.d.ts +8 -0
  187. package/dist/sandbox-file-artifacts.d.ts +1 -0
  188. package/dist/sandbox-provider-command.d.ts +91 -1
  189. package/dist/sandbox-recovery.d.ts +146 -0
  190. package/dist/secret-generator.d.ts +44 -0
  191. package/dist/secret-references.d.ts +90 -0
  192. package/dist/secret-resolution.d.ts +111 -0
  193. package/dist/secret-totp.d.ts +41 -0
  194. package/dist/session-final-reply.d.ts +6 -0
  195. package/dist/session-final-reply.js +9 -0
  196. package/dist/session-final-reply.js.map +1 -0
  197. package/dist/session-goal-reports.d.ts +21 -0
  198. package/dist/session-history-import.d.ts +1272 -0
  199. package/dist/session-list-entries.d.ts +4 -0
  200. package/dist/session-list-entries.js +56 -0
  201. package/dist/session-list-entries.js.map +1 -0
  202. package/dist/session-mcp-projections.d.ts +6 -0
  203. package/dist/session-mcp-tool-permissions.d.ts +62 -0
  204. package/dist/session-message-search.d.ts +68 -0
  205. package/dist/session-target.d.ts +18 -0
  206. package/dist/session-titles.d.ts +8 -0
  207. package/dist/session-titles.js +5 -1
  208. package/dist/session-usage-limit-refusal.d.ts +34 -0
  209. package/dist/session-usage-limit-refusal.js +15 -0
  210. package/dist/session-usage-limit-refusal.js.map +1 -0
  211. package/dist/session-usage-limits.d.ts +127 -0
  212. package/dist/session-usage-limits.js +41 -0
  213. package/dist/session-usage-limits.js.map +1 -0
  214. package/dist/signup-attribution.d.ts +39 -0
  215. package/dist/site-data.d.ts +286 -0
  216. package/dist/site-operations.d.ts +39 -0
  217. package/dist/site-publishing.d.ts +778 -0
  218. package/dist/site-session-http.d.ts +89 -4
  219. package/dist/site-session-http.js +25 -1
  220. package/dist/site-sql.d.ts +421 -0
  221. package/dist/skill-catalog-context.d.ts +7 -0
  222. package/dist/skill-files.d.ts +1 -1
  223. package/dist/skill-use.d.ts +61 -0
  224. package/dist/skills.d.ts +15 -0
  225. package/dist/slack-bot-scopes.d.ts +17 -12
  226. package/dist/slack-bot-scopes.js +10 -3
  227. package/dist/slack-rest-mcp.d.ts +36 -0
  228. package/dist/slack-rest-mcp.js +25 -0
  229. package/dist/slack-rest-mcp.js.map +1 -0
  230. package/dist/spreadsheet-artifact-commands.d.ts +14 -1
  231. package/dist/spreadsheet-artifact-commands.js +8 -2
  232. package/dist/spreadsheet-artifact-query.d.ts +13 -6
  233. package/dist/spreadsheet-artifact-query.js +3 -3
  234. package/dist/subscription-account-actions.d.ts +64 -0
  235. package/dist/subscription-account-pools.d.ts +292 -0
  236. package/dist/subscription-personal-authority-v2.d.ts +28 -0
  237. package/dist/subscription-personal-authority-v2.js +12 -0
  238. package/dist/subscription-personal-authority-v2.js.map +1 -0
  239. package/dist/tool-action-review.d.ts +132 -0
  240. package/dist/tool-catalog.d.ts +408 -0
  241. package/dist/tool-policy.d.ts +5 -0
  242. package/dist/tool-review-presentation.d.ts +12 -0
  243. package/dist/tool-review-presentation.js +17 -0
  244. package/dist/tool-review-presentation.js.map +1 -0
  245. package/dist/transcription-recordings.d.ts +21 -0
  246. package/dist/turn-serving-policy.d.ts +221 -0
  247. package/dist/usage-allowances.d.ts +314 -0
  248. package/dist/usage-allowances.js +52 -0
  249. package/dist/usage-allowances.js.map +1 -0
  250. package/dist/vaults.d.ts +1286 -0
  251. package/dist/video-generation.d.ts +3 -0
  252. package/dist/video-generation.js +2 -1
  253. package/dist/workspace-integration-wire.d.ts +36 -0
  254. package/dist/workspace-integration-wire.js +23 -0
  255. package/dist/workspace-integration-wire.js.map +1 -0
  256. package/dist/workspace-integrations.d.ts +1028 -0
  257. package/dist/xai-provider-account-authority.js +2 -1
  258. package/package.json +93 -5
  259. package/src/agent-authored-durable-text.ts +14 -11
  260. package/src/agent-config.ts +1698 -0
  261. package/src/agent-instruction-changes.ts +91 -74
  262. package/src/agent-learning.ts +94 -67
  263. package/src/agent-topology.ts +57 -52
  264. package/src/allowance-refusal.ts +81 -0
  265. package/src/analytics-consent-report.ts +20 -0
  266. package/src/api-key-presets.ts +28 -0
  267. package/src/artifact-catalog.ts +82 -0
  268. package/src/artifacts.ts +299 -227
  269. package/src/atlassian-native-retirement.ts +33 -0
  270. package/src/atlassian.ts +135 -108
  271. package/src/browser-storage.ts +10 -0
  272. package/src/bundled-skills.ts +60 -17
  273. package/src/canonical-human-identities.ts +60 -58
  274. package/src/claude-provider-account-authority.ts +12 -0
  275. package/src/claude-subscription-oauth.ts +73 -0
  276. package/src/claude-subscription-usage.ts +68 -0
  277. package/src/client-error-report.ts +343 -0
  278. package/src/code-search.ts +105 -0
  279. package/src/codex-provider-account-authority.ts +21 -16
  280. package/src/company-brain-governed-writes.ts +255 -233
  281. package/src/company-brain.ts +164 -153
  282. package/src/company-profile.ts +365 -292
  283. package/src/connect.ts +212 -173
  284. package/src/connection-account-label.ts +46 -0
  285. package/src/connection-authority.ts +183 -364
  286. package/src/connector-attachments.ts +137 -122
  287. package/src/connector-destinations.ts +46 -42
  288. package/src/connector-tool-permissions.ts +117 -0
  289. package/src/cua-desktop-tools.gen.json +6512 -0
  290. package/src/cua-desktop-tools.linux.gen.json +6600 -0
  291. package/src/cua-desktop-tools.ts +36 -0
  292. package/src/cua-desktop-tools.windows.gen.json +6353 -0
  293. package/src/define-schema.ts +10 -0
  294. package/src/direct-model-provider.ts +108 -0
  295. package/src/editable-artifact-committed-transaction.ts +17 -0
  296. package/src/editable-artifact-versions.ts +7 -1
  297. package/src/event-preview.ts +53 -3
  298. package/src/external-identities.ts +249 -176
  299. package/src/feedback.ts +43 -30
  300. package/src/first-party-tool-authorization.ts +356 -0
  301. package/src/github-repository-contracts.ts +78 -64
  302. package/src/google-drive.ts +285 -234
  303. package/src/governed-learning-activation.ts +152 -131
  304. package/src/governed-learning-evaluator.ts +140 -133
  305. package/src/host-mcp-bindings.ts +252 -198
  306. package/src/image-generation.ts +104 -95
  307. package/src/index.ts +13235 -8687
  308. package/src/insights-usage.ts +727 -0
  309. package/src/interaction.ts +3070 -2326
  310. package/src/knowledge-entries.ts +361 -276
  311. package/src/knowledge-preparation.ts +57 -0
  312. package/src/knowledge.ts +246 -213
  313. package/src/managed-auth-session-sets.ts +220 -144
  314. package/src/managed-sign-in-methods.ts +52 -0
  315. package/src/mcp-catalog-limits.ts +2 -0
  316. package/src/mcp-oauth.ts +43 -34
  317. package/src/mcp-receipts.ts +192 -192
  318. package/src/mcp-structured-content.ts +81 -0
  319. package/src/memory-slack-delivery.ts +171 -142
  320. package/src/modal-native-proof-v2.ts +429 -0
  321. package/src/model-account-choice.ts +177 -0
  322. package/src/model-account-settings.ts +210 -0
  323. package/src/model-availability.ts +22 -0
  324. package/src/model-connection-access.ts +61 -14
  325. package/src/model-context-inspector.ts +133 -99
  326. package/src/model-display.ts +221 -0
  327. package/src/model-picker-order.ts +12 -1
  328. package/src/organization-access.ts +217 -0
  329. package/src/organization-integration-policy.ts +63 -0
  330. package/src/organization-membership-lifecycle.ts +528 -382
  331. package/src/organization-model-usage.ts +81 -0
  332. package/src/organization-recovery.ts +147 -135
  333. package/src/organization-usage.ts +94 -0
  334. package/src/permissions.ts +88 -52
  335. package/src/personal-github.ts +210 -171
  336. package/src/preference-registry.ts +314 -258
  337. package/src/prepared-mcp-setup.ts +189 -0
  338. package/src/product-analytics.ts +261 -0
  339. package/src/product-lifecycle-facts.ts +122 -0
  340. package/src/remember.ts +181 -167
  341. package/src/retained-output.ts +194 -165
  342. package/src/sandbox-file-artifacts.ts +60 -47
  343. package/src/sandbox-provider-command.ts +88 -20
  344. package/src/sandbox-recovery.ts +129 -0
  345. package/src/scoped-knowledge.ts +61 -43
  346. package/src/secret-generator.ts +155 -0
  347. package/src/secret-references.ts +414 -0
  348. package/src/secret-resolution.ts +274 -0
  349. package/src/secret-totp.ts +188 -0
  350. package/src/session-final-reply.ts +16 -0
  351. package/src/session-goal-reports.ts +64 -0
  352. package/src/session-history-import.ts +177 -0
  353. package/src/session-list-entries.ts +96 -0
  354. package/src/session-mcp-projections.ts +11 -0
  355. package/src/session-mcp-tool-permissions.ts +108 -0
  356. package/src/session-message-search.ts +61 -0
  357. package/src/session-target.ts +57 -0
  358. package/src/session-titles.ts +80 -10
  359. package/src/session-topology-primitives.ts +19 -12
  360. package/src/session-usage-limit-refusal.ts +101 -0
  361. package/src/session-usage-limits.ts +171 -0
  362. package/src/signup-attribution.ts +86 -0
  363. package/src/site-data.ts +339 -0
  364. package/src/site-operations.ts +154 -0
  365. package/src/site-publishing.ts +876 -0
  366. package/src/site-session-http.ts +294 -16
  367. package/src/site-sql.ts +1123 -0
  368. package/src/skill-catalog-context.ts +50 -0
  369. package/src/skill-files.ts +3 -3
  370. package/src/skill-use.ts +80 -0
  371. package/src/skills.ts +82 -54
  372. package/src/slack-bot-scopes.ts +31 -39
  373. package/src/slack-rest-mcp.ts +222 -0
  374. package/src/slack-task-policy.ts +96 -73
  375. package/src/spreadsheet-artifact-commands.ts +73 -2
  376. package/src/spreadsheet-artifact-query.ts +187 -39
  377. package/src/subscription-account-actions.ts +84 -0
  378. package/src/subscription-account-pools.ts +53 -0
  379. package/src/subscription-personal-authority-v2.ts +66 -0
  380. package/src/task-notes.ts +55 -51
  381. package/src/tool-action-review.ts +258 -0
  382. package/src/tool-catalog.ts +609 -372
  383. package/src/tool-policy.ts +82 -0
  384. package/src/tool-result-spill.ts +12 -9
  385. package/src/tool-review-presentation.ts +385 -0
  386. package/src/transcription-recordings.ts +145 -131
  387. package/src/turn-serving-policy.ts +166 -0
  388. package/src/usage-allowances.ts +248 -0
  389. package/src/vaults.ts +850 -0
  390. package/src/video-generation.ts +385 -360
  391. package/src/work-claims.ts +173 -149
  392. package/src/workspace-instruction-policies.ts +349 -276
  393. package/src/workspace-integration-wire.ts +101 -0
  394. package/src/workspace-integrations.ts +724 -0
  395. package/src/workspace-learning-administration.ts +57 -44
  396. package/src/workspace-learning-policy.ts +127 -96
  397. package/src/workspace-state.ts +250 -220
  398. package/src/xai-provider-account-authority.ts +22 -17
  399. package/dist/chunk-2AC63F4S.js +0 -171
  400. package/dist/chunk-2AC63F4S.js.map +0 -1
  401. package/dist/chunk-3SIZGL3O.js.map +0 -1
  402. package/dist/chunk-7ABONTXE.js.map +0 -1
  403. package/dist/chunk-BCS7WHCK.js +0 -139
  404. package/dist/chunk-BCS7WHCK.js.map +0 -1
  405. package/dist/chunk-GRG7PHWQ.js +0 -25
  406. package/dist/chunk-GRG7PHWQ.js.map +0 -1
  407. package/dist/chunk-JUFK3T4Q.js +0 -80
  408. package/dist/chunk-JUFK3T4Q.js.map +0 -1
  409. package/dist/chunk-M5ZGRVIQ.js +0 -719
  410. package/dist/chunk-M5ZGRVIQ.js.map +0 -1
  411. package/dist/chunk-MRWYRAS5.js.map +0 -1
  412. package/dist/chunk-OVFORMPW.js +0 -348
  413. package/dist/chunk-OVFORMPW.js.map +0 -1
  414. package/dist/chunk-P3HLDT77.js +0 -59
  415. package/dist/chunk-P3HLDT77.js.map +0 -1
  416. package/dist/chunk-QQUJ6NPW.js +0 -23093
  417. package/dist/chunk-QQUJ6NPW.js.map +0 -1
  418. package/dist/chunk-TXTQIYCV.js.map +0 -1
  419. package/dist/chunk-WYBDERIY.js.map +0 -1
  420. package/dist/chunk-Y3KNXVTD.js.map +0 -1
  421. package/dist/chunk-YBW5JSA3.js.map +0 -1
  422. package/dist/chunk-YRXAWWCU.js +0 -45
  423. package/dist/chunk-YRXAWWCU.js.map +0 -1
  424. package/dist/host-mcp-resolvers.d.ts +0 -32
  425. package/dist/host-mcp-resolvers.js +0 -34
  426. package/dist/host-mcp-resolvers.js.map +0 -1
  427. package/src/host-mcp-resolvers.ts +0 -50
  428. /package/dist/{chunk-5LYFSZ7O.js.map → chunk-352X6ENP.js.map} +0 -0
  429. /package/dist/{chunk-O5LEQHDM.js.map → chunk-Z7WEVGCL.js.map} +0 -0
@@ -1,9 +1,13 @@
1
1
  import { z } from "zod";
2
2
  export declare const BundledSkillId: z.ZodEnum<{
3
3
  "builtin:document-parsing": "builtin:document-parsing";
4
+ "builtin:opengeni-client": "builtin:opengeni-client";
4
5
  "builtin:opengeni-documents": "builtin:opengeni-documents";
6
+ "builtin:opengeni-help": "builtin:opengeni-help";
5
7
  "builtin:opengeni-presentations": "builtin:opengeni-presentations";
6
8
  "builtin:opengeni-projects": "builtin:opengeni-projects";
9
+ "builtin:opengeni-schedules": "builtin:opengeni-schedules";
10
+ "builtin:opengeni-secrets": "builtin:opengeni-secrets";
7
11
  "builtin:opengeni-sites": "builtin:opengeni-sites";
8
12
  "builtin:opengeni-skills": "builtin:opengeni-skills";
9
13
  "builtin:opengeni-spreadsheets": "builtin:opengeni-spreadsheets";
@@ -13,16 +17,35 @@ export declare const BundledSkillId: z.ZodEnum<{
13
17
  export type BundledSkillId = z.infer<typeof BundledSkillId>;
14
18
  export declare const BundledSkillSelection: z.ZodPipe<z.ZodArray<z.ZodEnum<{
15
19
  "builtin:document-parsing": "builtin:document-parsing";
20
+ "builtin:opengeni-client": "builtin:opengeni-client";
16
21
  "builtin:opengeni-documents": "builtin:opengeni-documents";
22
+ "builtin:opengeni-help": "builtin:opengeni-help";
17
23
  "builtin:opengeni-presentations": "builtin:opengeni-presentations";
18
24
  "builtin:opengeni-projects": "builtin:opengeni-projects";
25
+ "builtin:opengeni-schedules": "builtin:opengeni-schedules";
26
+ "builtin:opengeni-secrets": "builtin:opengeni-secrets";
19
27
  "builtin:opengeni-sites": "builtin:opengeni-sites";
20
28
  "builtin:opengeni-skills": "builtin:opengeni-skills";
21
29
  "builtin:opengeni-spreadsheets": "builtin:opengeni-spreadsheets";
22
30
  "builtin:opengeni-video-generation": "builtin:opengeni-video-generation";
23
31
  "builtin:opengeni-visualize": "builtin:opengeni-visualize";
24
- }>>, z.ZodTransform<("builtin:document-parsing" | "builtin:opengeni-documents" | "builtin:opengeni-presentations" | "builtin:opengeni-projects" | "builtin:opengeni-sites" | "builtin:opengeni-skills" | "builtin:opengeni-spreadsheets" | "builtin:opengeni-video-generation" | "builtin:opengeni-visualize")[], ("builtin:document-parsing" | "builtin:opengeni-documents" | "builtin:opengeni-presentations" | "builtin:opengeni-projects" | "builtin:opengeni-sites" | "builtin:opengeni-skills" | "builtin:opengeni-spreadsheets" | "builtin:opengeni-video-generation" | "builtin:opengeni-visualize")[]>>;
32
+ }>>, z.ZodTransform<("builtin:document-parsing" | "builtin:opengeni-client" | "builtin:opengeni-documents" | "builtin:opengeni-help" | "builtin:opengeni-presentations" | "builtin:opengeni-projects" | "builtin:opengeni-schedules" | "builtin:opengeni-secrets" | "builtin:opengeni-sites" | "builtin:opengeni-skills" | "builtin:opengeni-spreadsheets" | "builtin:opengeni-video-generation" | "builtin:opengeni-visualize")[], ("builtin:document-parsing" | "builtin:opengeni-client" | "builtin:opengeni-documents" | "builtin:opengeni-help" | "builtin:opengeni-presentations" | "builtin:opengeni-projects" | "builtin:opengeni-schedules" | "builtin:opengeni-secrets" | "builtin:opengeni-sites" | "builtin:opengeni-skills" | "builtin:opengeni-spreadsheets" | "builtin:opengeni-video-generation" | "builtin:opengeni-visualize")[]>>;
25
33
  /** Undefined is defaults/inheritance; an explicit empty list disables bundles. */
26
34
  export declare function resolveBundledSkillSelection(requested: readonly BundledSkillId[] | undefined, parent: readonly BundledSkillId[] | undefined): BundledSkillId[] | undefined;
35
+ /**
36
+ * Freeze the defaults a session's agent configuration implies. An agent that
37
+ * starts from `capabilities: "none"` carries no bundled Opengeni guides unless
38
+ * the request lists them; an explicit list (including `[]`) is kept exactly,
39
+ * and `"all"` or legacy (null) configurations keep the bundled defaults.
40
+ */
41
+ export declare function bundledSkillSelectionForAgentConfig(selection: BundledSkillId[] | undefined, agentConfig: {
42
+ from: "all" | "none";
43
+ } | null | undefined): BundledSkillId[] | undefined;
27
44
  export declare function withBundledSkillSelectionMetadata(metadata: Record<string, unknown>, ids: readonly BundledSkillId[] | undefined): Record<string, unknown>;
45
+ /**
46
+ * Exact stored selection for keyed create replay identity. Unlike the
47
+ * tolerant read, it keeps ids this build does not know: a retry must match
48
+ * what was stored, not the narrowed projection of it.
49
+ */
50
+ export declare function storedBundledSkillSelectionIdentity(metadata: Record<string, unknown>): unknown;
28
51
  export declare function bundledSkillSelectionFromMetadata(metadata: Record<string, unknown>): BundledSkillId[] | undefined;
@@ -8,7 +8,8 @@ import {
8
8
  CanonicalHumanLoginBindingStatus,
9
9
  CanonicalHumanRecoveryState,
10
10
  LinkCanonicalHumanLoginBindingRequest
11
- } from "./chunk-JUFK3T4Q.js";
11
+ } from "./chunk-4QO6GJUX.js";
12
+ import "./chunk-56SNIMDO.js";
12
13
  export {
13
14
  CanonicalHumanBindingOperationRequest,
14
15
  CanonicalHumanIdentityMutationOutcome,
@@ -0,0 +1,153 @@
1
+ // src/model-display.ts
2
+ function modelLogoUrl(input) {
3
+ const value = typeof input === "string" ? void 0 : input.logoUrl;
4
+ if (!value || value.length > 2048 || value !== value.trim()) return null;
5
+ try {
6
+ const url = new URL(value);
7
+ return url.protocol === "https:" && !url.username && !url.password ? value : null;
8
+ } catch {
9
+ return null;
10
+ }
11
+ }
12
+ var WORDS = {
13
+ gpt: "GPT",
14
+ chatgpt: "ChatGPT",
15
+ claude: "Claude",
16
+ grok: "Grok",
17
+ gemini: "Gemini",
18
+ gemma: "Gemma",
19
+ llama: "Llama",
20
+ deepseek: "DeepSeek",
21
+ qwen: "Qwen",
22
+ glm: "GLM",
23
+ kimi: "Kimi",
24
+ mistral: "Mistral",
25
+ codestral: "Codestral",
26
+ devstral: "Devstral",
27
+ magistral: "Magistral",
28
+ nemotron: "Nemotron",
29
+ oss: "OSS",
30
+ // Region-pinned gateway routes (Opper `aws/claude-sonnet-4-6-eu`).
31
+ eu: "EU"
32
+ };
33
+ function modelSlug(value) {
34
+ const last = value.split("/").filter(Boolean).at(-1) ?? value;
35
+ return last.replace(/:[^:]*$/, "") || last;
36
+ }
37
+ function upstreamOf(input) {
38
+ return input.upstreamModelId?.trim() || input.deployment?.upstreamModelId?.trim() || null;
39
+ }
40
+ function titleToken(token, index) {
41
+ const lower = token.toLowerCase();
42
+ const word = WORDS[lower];
43
+ if (word) return word;
44
+ if (index === 0 && /^o\d+$/.test(lower)) return lower;
45
+ if (/^\d+(?:\.\d+)?[bkmt]$/.test(lower) || /^[a-z]\d+[a-z\d]*$/.test(lower)) {
46
+ return lower.toUpperCase();
47
+ }
48
+ if (/^\d/.test(token)) return lower;
49
+ return lower.charAt(0).toUpperCase() + lower.slice(1);
50
+ }
51
+ function humanizeModelSlug(value) {
52
+ const slug = modelSlug(value.trim()).replace(/[-_](?:\d{8}|\d{4}-\d{2}-\d{2})$/, "").replace(/[-_]latest$/i, "");
53
+ const raw = slug.split(/[-_\s]+/).filter(Boolean);
54
+ if (raw.length === 0) return value.trim() || value;
55
+ const tokens = [];
56
+ for (const token of raw) {
57
+ const previous = tokens.at(-1);
58
+ if (previous !== void 0 && /^\d{1,2}$/.test(token) && /^\d{1,2}$/.test(previous)) {
59
+ tokens[tokens.length - 1] = `${previous}.${token}`;
60
+ continue;
61
+ }
62
+ tokens.push(token);
63
+ }
64
+ const words = tokens.map(titleToken);
65
+ if (words[0] === "GPT" && words.length > 1 && /^\d/.test(words[1])) {
66
+ return [`GPT-${words[1]}`, ...words.slice(2)].join(" ");
67
+ }
68
+ return words.join(" ");
69
+ }
70
+ function isRawModelLabel(label, ids = []) {
71
+ const text = label.trim();
72
+ if (!text) return true;
73
+ return ids.some((id) => {
74
+ if (!id) return false;
75
+ const segments = id.trim().split("/").filter(Boolean);
76
+ return segments.some((_, index) => {
77
+ const tail = segments.slice(index).join("/");
78
+ return tail === text || modelSlug(tail) === text;
79
+ });
80
+ });
81
+ }
82
+ function modelDisplayName(input) {
83
+ if (typeof input === "string") {
84
+ return input.trim() && !/\s/.test(input.trim()) ? withoutClaudeFamilyPrefix(humanizeModelSlug(input)) : input;
85
+ }
86
+ const upstream = upstreamOf(input);
87
+ const label = input.label?.trim();
88
+ if (label && !isRawModelLabel(label, [input.id, upstream])) {
89
+ return withoutClaudeFamilyPrefix(label);
90
+ }
91
+ return withoutClaudeFamilyPrefix(humanizeModelSlug(upstream ?? label ?? input.id));
92
+ }
93
+ function withoutClaudeFamilyPrefix(name) {
94
+ return name.replace(/^Claude\s+(?=(?:Opus|Sonnet|Haiku)\b)/, "");
95
+ }
96
+ var VENDOR_PATTERNS = [
97
+ ["anthropic", /^claude\b/],
98
+ ["openai", /^(?:gpt|chatgpt|o\d+|codex|dall-e|sora|text-embedding|whisper)\b/],
99
+ ["xai", /^grok\b/],
100
+ ["google", /^(?:gemini|gemma)\b/],
101
+ ["meta", /^llama\b/],
102
+ ["mistral", /^(?:mistral|codestral|devstral|magistral|ministral|pixtral)\b/],
103
+ ["deepseek", /^deepseek\b/],
104
+ ["moonshot", /^(?:kimi|moonshot)\b/],
105
+ ["qwen", /^(?:qwen|qwq)\b/],
106
+ ["zhipu", /^glm\b/],
107
+ ["nvidia", /^nemotron\b/]
108
+ ];
109
+ var VENDOR_SEGMENTS = {
110
+ anthropic: "anthropic",
111
+ openai: "openai",
112
+ "x-ai": "xai",
113
+ xai: "xai",
114
+ google: "google",
115
+ "meta-llama": "meta",
116
+ mistralai: "mistral",
117
+ deepseek: "deepseek",
118
+ moonshotai: "moonshot",
119
+ qwen: "qwen",
120
+ "z-ai": "zhipu",
121
+ nvidia: "nvidia"
122
+ };
123
+ function vendorFromSlug(slug) {
124
+ for (const [vendor, pattern] of VENDOR_PATTERNS) if (pattern.test(slug)) return vendor;
125
+ return null;
126
+ }
127
+ function modelVendor(input) {
128
+ const ids = typeof input === "string" ? [input] : [upstreamOf(input), input.id];
129
+ for (const id of ids) {
130
+ if (!id) continue;
131
+ const lower = id.trim().toLowerCase();
132
+ if (lower.startsWith("codex/")) return "openai";
133
+ if (lower.startsWith("supergrok/")) return "xai";
134
+ const vendor = vendorFromSlug(modelSlug(lower));
135
+ if (vendor) return vendor;
136
+ const segment = lower.split("/").filter(Boolean).at(-2);
137
+ if (segment && Object.hasOwn(VENDOR_SEGMENTS, segment)) return VENDOR_SEGMENTS[segment];
138
+ }
139
+ if (typeof input !== "string" && input.label) {
140
+ return vendorFromSlug(input.label.trim().toLowerCase().replace(/\s+/g, "-"));
141
+ }
142
+ return null;
143
+ }
144
+
145
+ export {
146
+ modelLogoUrl,
147
+ modelSlug,
148
+ humanizeModelSlug,
149
+ isRawModelLabel,
150
+ modelDisplayName,
151
+ modelVendor
152
+ };
153
+ //# sourceMappingURL=chunk-2ZIHHL72.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/model-display.ts"],"sourcesContent":["/**\n * One display identity for a model everywhere outside the Models settings page.\n *\n * Catalog ids carry routing facts (`codex/`, `organization-claude-subscription/`,\n * `workspace-openrouter/anthropic/...`) and custom models may have no curated\n * label. People should only ever see the model itself: `GPT-6.1 Sol`,\n * `Opus 5.5`. The same upstream model therefore renders identically\n * whether an organization or a workspace connection serves it.\n *\n * Pure and dependency-free so the API, SDK, React package and web app share it.\n */\n\nexport type ModelVendor =\n | \"openai\"\n | \"anthropic\"\n | \"xai\"\n | \"google\"\n | \"meta\"\n | \"mistral\"\n | \"deepseek\"\n | \"moonshot\"\n | \"qwen\"\n | \"zhipu\"\n | \"nvidia\";\n\nexport type ModelDisplayInput =\n | string\n | {\n id: string;\n label?: string | null | undefined;\n logoUrl?: string | null | undefined;\n upstreamModelId?: string | null | undefined;\n deployment?: { upstreamModelId?: string | null | undefined } | null | undefined;\n };\n\n/** Catalog maker logo; remote images must use HTTPS without embedded credentials. */\nexport function modelLogoUrl(input: ModelDisplayInput): string | null {\n const value = typeof input === \"string\" ? undefined : input.logoUrl;\n if (!value || value.length > 2048 || value !== value.trim()) return null;\n try {\n const url = new URL(value);\n return url.protocol === \"https:\" && !url.username && !url.password ? value : null;\n } catch {\n return null;\n }\n}\n\nconst WORDS: Readonly<Record<string, string>> = {\n gpt: \"GPT\",\n chatgpt: \"ChatGPT\",\n claude: \"Claude\",\n grok: \"Grok\",\n gemini: \"Gemini\",\n gemma: \"Gemma\",\n llama: \"Llama\",\n deepseek: \"DeepSeek\",\n qwen: \"Qwen\",\n glm: \"GLM\",\n kimi: \"Kimi\",\n mistral: \"Mistral\",\n codestral: \"Codestral\",\n devstral: \"Devstral\",\n magistral: \"Magistral\",\n nemotron: \"Nemotron\",\n oss: \"OSS\",\n // Region-pinned gateway routes (Opper `aws/claude-sonnet-4-6-eu`).\n eu: \"EU\",\n};\n\n/** The upstream model slug without routing prefixes or `:variant` suffixes. */\nexport function modelSlug(value: string): string {\n const last = value.split(\"/\").filter(Boolean).at(-1) ?? value;\n return last.replace(/:[^:]*$/, \"\") || last;\n}\n\nfunction upstreamOf(input: Exclude<ModelDisplayInput, string>): string | null {\n return input.upstreamModelId?.trim() || input.deployment?.upstreamModelId?.trim() || null;\n}\n\nfunction titleToken(token: string, index: number): string {\n const lower = token.toLowerCase();\n const word = WORDS[lower];\n if (word) return word;\n // OpenAI reasoning series stay lowercase: o3, o4 Mini.\n if (index === 0 && /^o\\d+$/.test(lower)) return lower;\n // Sizes and lettered versions read as identifiers: 120B, V4, K3, A12B.\n if (/^\\d+(?:\\.\\d+)?[bkmt]$/.test(lower) || /^[a-z]\\d+[a-z\\d]*$/.test(lower)) {\n return lower.toUpperCase();\n }\n if (/^\\d/.test(token)) return lower;\n return lower.charAt(0).toUpperCase() + lower.slice(1);\n}\n\n/** `claude-opus-5-5` → `Claude Opus 5.5`, `codex/gpt-6.1-sol` → `GPT-6.1 Sol`. */\nexport function humanizeModelSlug(value: string): string {\n const slug = modelSlug(value.trim())\n // Snapshot dates are release detail, not a different model name.\n .replace(/[-_](?:\\d{8}|\\d{4}-\\d{2}-\\d{2})$/, \"\")\n .replace(/[-_]latest$/i, \"\");\n const raw = slug.split(/[-_\\s]+/).filter(Boolean);\n if (raw.length === 0) return value.trim() || value;\n // Consecutive short numbers are one version: 5-5 → 5.5, 3-5 → 3.5. Longer\n // numbers are snapshots (gpt-4-1106-preview), never a minor version.\n const tokens: string[] = [];\n for (const token of raw) {\n const previous = tokens.at(-1);\n if (previous !== undefined && /^\\d{1,2}$/.test(token) && /^\\d{1,2}$/.test(previous)) {\n tokens[tokens.length - 1] = `${previous}.${token}`;\n continue;\n }\n tokens.push(token);\n }\n const words = tokens.map(titleToken);\n // OpenAI's own spelling joins family and version: GPT-6.1, GPT-4o.\n if (words[0] === \"GPT\" && words.length > 1 && /^\\d/.test(words[1]!)) {\n return [`GPT-${words[1]}`, ...words.slice(2)].join(\" \");\n }\n return words.join(\" \");\n}\n\n/**\n * True when a catalog label is only the model's identifier: empty, or exactly\n * its id, upstream id, or any trailing path of them (`claude-opus-4-8`,\n * `anthropic/claude-sonnet-4.6`). Any other label is a curated name and wins.\n */\nexport function isRawModelLabel(\n label: string,\n ids: readonly (string | null | undefined)[] = [],\n): boolean {\n const text = label.trim();\n if (!text) return true;\n return ids.some((id) => {\n if (!id) return false;\n const segments = id.trim().split(\"/\").filter(Boolean);\n return segments.some((_, index) => {\n const tail = segments.slice(index).join(\"/\");\n return tail === text || modelSlug(tail) === text;\n });\n });\n}\n\n/**\n * The clean name to show for a model: its curated catalog label when it has\n * one, otherwise a readable form of the upstream model id. Never a routing\n * prefix, connection id or connection scope. Anthropic's Opus, Sonnet and\n * Haiku families drop the redundant `Claude` word (the maker mark already says\n * it): `Opus 5.5`, `Sonnet 4.6 EU`.\n */\nexport function modelDisplayName(input: ModelDisplayInput): string {\n if (typeof input === \"string\") {\n // A bare id is humanized; text with spaces is already a name (\"Workspace default\").\n return input.trim() && !/\\s/.test(input.trim())\n ? withoutClaudeFamilyPrefix(humanizeModelSlug(input))\n : input;\n }\n const upstream = upstreamOf(input);\n const label = input.label?.trim();\n if (label && !isRawModelLabel(label, [input.id, upstream])) {\n return withoutClaudeFamilyPrefix(label);\n }\n return withoutClaudeFamilyPrefix(humanizeModelSlug(upstream ?? label ?? input.id));\n}\n\n/** `Claude Opus 5.5` → `Opus 5.5`; other names (`Claude 3.5 Sonnet`) unchanged. */\nfunction withoutClaudeFamilyPrefix(name: string): string {\n return name.replace(/^Claude\\s+(?=(?:Opus|Sonnet|Haiku)\\b)/, \"\");\n}\n\nconst VENDOR_PATTERNS: ReadonlyArray<readonly [ModelVendor, RegExp]> = [\n [\"anthropic\", /^claude\\b/],\n [\"openai\", /^(?:gpt|chatgpt|o\\d+|codex|dall-e|sora|text-embedding|whisper)\\b/],\n [\"xai\", /^grok\\b/],\n [\"google\", /^(?:gemini|gemma)\\b/],\n [\"meta\", /^llama\\b/],\n [\"mistral\", /^(?:mistral|codestral|devstral|magistral|ministral|pixtral)\\b/],\n [\"deepseek\", /^deepseek\\b/],\n [\"moonshot\", /^(?:kimi|moonshot)\\b/],\n [\"qwen\", /^(?:qwen|qwq)\\b/],\n [\"zhipu\", /^glm\\b/],\n [\"nvidia\", /^nemotron\\b/],\n];\n\n/** OpenRouter / Gateway vendor path segments (`anthropic/claude-…`). */\nconst VENDOR_SEGMENTS: Readonly<Record<string, ModelVendor>> = {\n anthropic: \"anthropic\",\n openai: \"openai\",\n \"x-ai\": \"xai\",\n xai: \"xai\",\n google: \"google\",\n \"meta-llama\": \"meta\",\n mistralai: \"mistral\",\n deepseek: \"deepseek\",\n moonshotai: \"moonshot\",\n qwen: \"qwen\",\n \"z-ai\": \"zhipu\",\n nvidia: \"nvidia\",\n};\n\nfunction vendorFromSlug(slug: string): ModelVendor | null {\n for (const [vendor, pattern] of VENDOR_PATTERNS) if (pattern.test(slug)) return vendor;\n return null;\n}\n\n/** Who makes the model, for its logo. Null when it cannot be told. */\nexport function modelVendor(input: ModelDisplayInput): ModelVendor | null {\n const ids = typeof input === \"string\" ? [input] : [upstreamOf(input), input.id];\n for (const id of ids) {\n if (!id) continue;\n const lower = id.trim().toLowerCase();\n if (lower.startsWith(\"codex/\")) return \"openai\";\n if (lower.startsWith(\"supergrok/\")) return \"xai\";\n const vendor = vendorFromSlug(modelSlug(lower));\n if (vendor) return vendor;\n const segment = lower.split(\"/\").filter(Boolean).at(-2);\n if (segment && Object.hasOwn(VENDOR_SEGMENTS, segment)) return VENDOR_SEGMENTS[segment]!;\n }\n if (typeof input !== \"string\" && input.label) {\n return vendorFromSlug(input.label.trim().toLowerCase().replace(/\\s+/g, \"-\"));\n }\n return null;\n}\n"],"mappings":"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","names":[]}
@@ -1,14 +1,21 @@
1
1
  import {
2
- SPREADSHEET_ARTIFACT_PROJECTION_MAX_BYTES,
3
- SPREADSHEET_ARTIFACT_QUERY_MAX_BYTES,
4
- SPREADSHEET_ARTIFACT_QUERY_VERSION,
5
- assertCanonicalSpreadsheetArtifactKernelProjectionBytes,
6
- assertCanonicalSpreadsheetArtifactKernelQueryBytes,
7
- decodeSpreadsheetArtifactKernelProjection,
8
- decodeSpreadsheetArtifactKernelQuery,
9
- encodeSpreadsheetArtifactKernelProjection,
10
- encodeSpreadsheetArtifactKernelQuery
11
- } from "./chunk-Y3KNXVTD.js";
2
+ DOCUMENT_ARTIFACT_COMMAND_MAX_BYTES,
3
+ DOCUMENT_ARTIFACT_COMMAND_MAX_COMMANDS,
4
+ DOCUMENT_ARTIFACT_COMMAND_VERSION,
5
+ DOCUMENT_ARTIFACT_QUERY_MAX_BYTES,
6
+ DOCUMENT_ARTIFACT_QUERY_RESPONSE_MAX_BYTES,
7
+ DOCUMENT_ARTIFACT_QUERY_RESPONSE_VERSION,
8
+ DOCUMENT_ARTIFACT_QUERY_VERSION,
9
+ assertCanonicalDocumentArtifactCommandBytes,
10
+ assertCanonicalDocumentArtifactQueryBytes,
11
+ assertCanonicalDocumentArtifactQueryResponseBytes,
12
+ decodeDocumentArtifactCommandBatch,
13
+ decodeDocumentArtifactQuery,
14
+ decodeDocumentArtifactQueryResponse,
15
+ encodeDocumentArtifactCommandBatch,
16
+ encodeDocumentArtifactQuery,
17
+ encodeDocumentArtifactQueryResponse
18
+ } from "./chunk-RIY7GYQS.js";
12
19
  import {
13
20
  PRESENTATION_ARTIFACT_COMMAND_MAX_BYTES,
14
21
  PRESENTATION_ARTIFACT_COMMAND_MAX_COMMANDS,
@@ -27,31 +34,24 @@ import {
27
34
  encodePresentationArtifactQuery,
28
35
  encodePresentationArtifactQueryResponse
29
36
  } from "./chunk-D2HKF2EF.js";
37
+ import {
38
+ SPREADSHEET_ARTIFACT_PROJECTION_MAX_BYTES,
39
+ SPREADSHEET_ARTIFACT_QUERY_MAX_BYTES,
40
+ SPREADSHEET_ARTIFACT_QUERY_VERSION,
41
+ assertCanonicalSpreadsheetArtifactKernelProjectionBytes,
42
+ assertCanonicalSpreadsheetArtifactKernelQueryBytes,
43
+ decodeSpreadsheetArtifactKernelProjection,
44
+ decodeSpreadsheetArtifactKernelQuery,
45
+ encodeSpreadsheetArtifactKernelProjection,
46
+ encodeSpreadsheetArtifactKernelQuery
47
+ } from "./chunk-RMWXDZEO.js";
30
48
  import {
31
49
  SPREADSHEET_ARTIFACT_COMMAND_MAX_BYTES,
32
50
  SPREADSHEET_ARTIFACT_COMMAND_MAX_COMMANDS,
33
51
  assertCanonicalSpreadsheetArtifactCommandBytes,
34
52
  decodeSpreadsheetArtifactCommandBatch,
35
53
  encodeSpreadsheetArtifactCommandBatch
36
- } from "./chunk-TXTQIYCV.js";
37
- import {
38
- DOCUMENT_ARTIFACT_COMMAND_MAX_BYTES,
39
- DOCUMENT_ARTIFACT_COMMAND_MAX_COMMANDS,
40
- DOCUMENT_ARTIFACT_COMMAND_VERSION,
41
- DOCUMENT_ARTIFACT_QUERY_MAX_BYTES,
42
- DOCUMENT_ARTIFACT_QUERY_RESPONSE_MAX_BYTES,
43
- DOCUMENT_ARTIFACT_QUERY_RESPONSE_VERSION,
44
- DOCUMENT_ARTIFACT_QUERY_VERSION,
45
- assertCanonicalDocumentArtifactCommandBytes,
46
- assertCanonicalDocumentArtifactQueryBytes,
47
- assertCanonicalDocumentArtifactQueryResponseBytes,
48
- decodeDocumentArtifactCommandBatch,
49
- decodeDocumentArtifactQuery,
50
- decodeDocumentArtifactQueryResponse,
51
- encodeDocumentArtifactCommandBatch,
52
- encodeDocumentArtifactQuery,
53
- encodeDocumentArtifactQueryResponse
54
- } from "./chunk-RIY7GYQS.js";
54
+ } from "./chunk-ILJ72KPO.js";
55
55
  import {
56
56
  COMMITTED_TRANSACTION_PROTOCOL_VERSION,
57
57
  DOCUMENT_ARTIFACT_MODEL_SCHEMA_VERSION,
@@ -63,7 +63,7 @@ import {
63
63
  SPREADSHEET_ARTIFACT_COMMAND_VERSION,
64
64
  SPREADSHEET_ARTIFACT_MODEL_SCHEMA_VERSION,
65
65
  SPREADSHEET_COLLABORATION_SNAPSHOT_VERSION
66
- } from "./chunk-PX3VCKAU.js";
66
+ } from "./chunk-WVCFSOUZ.js";
67
67
 
68
68
  // src/editable-artifact-codec-registry.ts
69
69
  var spreadsheet = Object.freeze({
@@ -214,4 +214,4 @@ export {
214
214
  currentEditableArtifactCompatibility,
215
215
  editableArtifactCodecFor
216
216
  };
217
- //# sourceMappingURL=chunk-5LYFSZ7O.js.map
217
+ //# sourceMappingURL=chunk-352X6ENP.js.map
@@ -0,0 +1,11 @@
1
+ // src/browser-storage.ts
2
+ var EPHEMERAL_CHROMIUM_DRIVER_ID = "opengeni.cdp.ephemeral-context.v1";
3
+ function browserSessionStorageMode(session) {
4
+ return session.driverId === EPHEMERAL_CHROMIUM_DRIVER_ID ? "ephemeral_context" : "private_profile";
5
+ }
6
+
7
+ export {
8
+ EPHEMERAL_CHROMIUM_DRIVER_ID,
9
+ browserSessionStorageMode
10
+ };
11
+ //# sourceMappingURL=chunk-4JGHSSB7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/browser-storage.ts"],"sourcesContent":["/** Persisted discriminator; null identity alone never implies ephemeral storage. */\nexport const EPHEMERAL_CHROMIUM_DRIVER_ID = \"opengeni.cdp.ephemeral-context.v1\" as const;\n\nexport function browserSessionStorageMode(session: {\n driverId: string;\n}): \"private_profile\" | \"ephemeral_context\" {\n return session.driverId === EPHEMERAL_CHROMIUM_DRIVER_ID\n ? \"ephemeral_context\"\n : \"private_profile\";\n}\n"],"mappings":";AACO,IAAM,+BAA+B;AAErC,SAAS,0BAA0B,SAEE;AAC1C,SAAO,QAAQ,aAAa,+BACxB,sBACA;AACN;","names":[]}
@@ -0,0 +1,85 @@
1
+ import {
2
+ defineSchema
3
+ } from "./chunk-56SNIMDO.js";
4
+
5
+ // src/canonical-human-identities.ts
6
+ import { z } from "zod";
7
+ var CanonicalHumanIdentityStatus = /* @__PURE__ */ defineSchema(
8
+ () => z.enum(["active", "recovery_required", "disputed", "disabled"])
9
+ );
10
+ var CanonicalHumanLoginBindingStatus = /* @__PURE__ */ defineSchema(
11
+ () => z.enum(["active", "recovery_pending", "stale", "disputed", "revoked"])
12
+ );
13
+ var CanonicalHumanRecoveryState = /* @__PURE__ */ defineSchema(
14
+ () => z.enum(["ready", "recovery_required", "lost_factor", "disputed", "disabled"])
15
+ );
16
+ var CanonicalHumanLoginBinding = /* @__PURE__ */ defineSchema(
17
+ () => z.object({
18
+ id: z.string().uuid(),
19
+ providerId: z.string().min(1).max(128),
20
+ providerAccountId: z.string().min(1).max(1024),
21
+ status: CanonicalHumanLoginBindingStatus,
22
+ revision: z.number().int().positive(),
23
+ verifiedAt: z.string().datetime(),
24
+ lastVerifiedAt: z.string().datetime(),
25
+ revokedAt: z.string().datetime().nullable(),
26
+ createdAt: z.string().datetime(),
27
+ updatedAt: z.string().datetime()
28
+ })
29
+ );
30
+ var CanonicalHumanIdentityProjection = /* @__PURE__ */ defineSchema(
31
+ () => z.object({
32
+ activeIdentity: z.object({
33
+ id: z.string().uuid(),
34
+ displayName: z.string().min(1).max(256),
35
+ status: CanonicalHumanIdentityStatus,
36
+ identityRevision: z.number().int().positive(),
37
+ authRevision: z.number().int().positive(),
38
+ activeLoginBindingId: z.string().uuid().nullable(),
39
+ recoveryState: CanonicalHumanRecoveryState,
40
+ createdAt: z.string().datetime(),
41
+ updatedAt: z.string().datetime()
42
+ }),
43
+ loginBindings: z.array(CanonicalHumanLoginBinding).max(64)
44
+ })
45
+ );
46
+ var OperationFields = {
47
+ operationId: z.string().uuid().optional(),
48
+ expectedIdentityRevision: z.number().int().positive(),
49
+ reason: z.string().trim().min(1).max(512)
50
+ };
51
+ var LinkCanonicalHumanLoginBindingRequest = /* @__PURE__ */ defineSchema(
52
+ () => z.object({
53
+ ...OperationFields,
54
+ providerId: z.string().trim().min(1).max(128),
55
+ providerAccountId: z.string().trim().min(1).max(1024)
56
+ })
57
+ );
58
+ var CanonicalHumanBindingOperationRequest = /* @__PURE__ */ defineSchema(
59
+ () => z.object({
60
+ ...OperationFields
61
+ })
62
+ );
63
+ var CanonicalHumanIdentityMutationOutcome = /* @__PURE__ */ defineSchema(
64
+ () => z.enum(["applied", "lost_factor", "disputed"])
65
+ );
66
+ var CanonicalHumanIdentityMutationResponse = /* @__PURE__ */ defineSchema(
67
+ () => z.object({
68
+ outcome: CanonicalHumanIdentityMutationOutcome,
69
+ operationId: z.string().uuid(),
70
+ identity: CanonicalHumanIdentityProjection
71
+ })
72
+ );
73
+
74
+ export {
75
+ CanonicalHumanIdentityStatus,
76
+ CanonicalHumanLoginBindingStatus,
77
+ CanonicalHumanRecoveryState,
78
+ CanonicalHumanLoginBinding,
79
+ CanonicalHumanIdentityProjection,
80
+ LinkCanonicalHumanLoginBindingRequest,
81
+ CanonicalHumanBindingOperationRequest,
82
+ CanonicalHumanIdentityMutationOutcome,
83
+ CanonicalHumanIdentityMutationResponse
84
+ };
85
+ //# sourceMappingURL=chunk-4QO6GJUX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/canonical-human-identities.ts"],"sourcesContent":["import { defineSchema } from \"./define-schema\";\nimport { z } from \"zod\";\n\nexport const CanonicalHumanIdentityStatus = /* @__PURE__ */ defineSchema(() =>\n z.enum([\"active\", \"recovery_required\", \"disputed\", \"disabled\"]),\n);\nexport type CanonicalHumanIdentityStatus = z.infer<typeof CanonicalHumanIdentityStatus>;\n\nexport const CanonicalHumanLoginBindingStatus = /* @__PURE__ */ defineSchema(() =>\n z.enum([\"active\", \"recovery_pending\", \"stale\", \"disputed\", \"revoked\"]),\n);\nexport type CanonicalHumanLoginBindingStatus = z.infer<typeof CanonicalHumanLoginBindingStatus>;\n\nexport const CanonicalHumanRecoveryState = /* @__PURE__ */ defineSchema(() =>\n z.enum([\"ready\", \"recovery_required\", \"lost_factor\", \"disputed\", \"disabled\"]),\n);\nexport type CanonicalHumanRecoveryState = z.infer<typeof CanonicalHumanRecoveryState>;\n\nexport const CanonicalHumanLoginBinding = /* @__PURE__ */ defineSchema(() =>\n z.object({\n id: z.string().uuid(),\n providerId: z.string().min(1).max(128),\n providerAccountId: z.string().min(1).max(1024),\n status: CanonicalHumanLoginBindingStatus,\n revision: z.number().int().positive(),\n verifiedAt: z.string().datetime(),\n lastVerifiedAt: z.string().datetime(),\n revokedAt: z.string().datetime().nullable(),\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n }),\n);\nexport type CanonicalHumanLoginBinding = z.infer<typeof CanonicalHumanLoginBinding>;\n\nexport const CanonicalHumanIdentityProjection = /* @__PURE__ */ defineSchema(() =>\n z.object({\n activeIdentity: z.object({\n id: z.string().uuid(),\n displayName: z.string().min(1).max(256),\n status: CanonicalHumanIdentityStatus,\n identityRevision: z.number().int().positive(),\n authRevision: z.number().int().positive(),\n activeLoginBindingId: z.string().uuid().nullable(),\n recoveryState: CanonicalHumanRecoveryState,\n createdAt: z.string().datetime(),\n updatedAt: z.string().datetime(),\n }),\n loginBindings: z.array(CanonicalHumanLoginBinding).max(64),\n }),\n);\nexport type CanonicalHumanIdentityProjection = z.infer<typeof CanonicalHumanIdentityProjection>;\n\nconst OperationFields = {\n operationId: z.string().uuid().optional(),\n expectedIdentityRevision: z.number().int().positive(),\n reason: z.string().trim().min(1).max(512),\n} as const;\n\nexport const LinkCanonicalHumanLoginBindingRequest = /* @__PURE__ */ defineSchema(() =>\n z.object({\n ...OperationFields,\n providerId: z.string().trim().min(1).max(128),\n providerAccountId: z.string().trim().min(1).max(1024),\n }),\n);\nexport type LinkCanonicalHumanLoginBindingRequest = z.infer<\n typeof LinkCanonicalHumanLoginBindingRequest\n>;\n\nexport const CanonicalHumanBindingOperationRequest = /* @__PURE__ */ defineSchema(() =>\n z.object({\n ...OperationFields,\n }),\n);\nexport type CanonicalHumanBindingOperationRequest = z.infer<\n typeof CanonicalHumanBindingOperationRequest\n>;\n\nexport const CanonicalHumanIdentityMutationOutcome = /* @__PURE__ */ defineSchema(() =>\n z.enum([\"applied\", \"lost_factor\", \"disputed\"]),\n);\nexport type CanonicalHumanIdentityMutationOutcome = z.infer<\n typeof CanonicalHumanIdentityMutationOutcome\n>;\n\nexport const CanonicalHumanIdentityMutationResponse = /* @__PURE__ */ defineSchema(() =>\n z.object({\n outcome: CanonicalHumanIdentityMutationOutcome,\n operationId: z.string().uuid(),\n identity: CanonicalHumanIdentityProjection,\n }),\n);\nexport type CanonicalHumanIdentityMutationResponse = z.infer<\n typeof CanonicalHumanIdentityMutationResponse\n>;\n"],"mappings":";;;;;AACA,SAAS,SAAS;AAEX,IAAM,+BAA+C;AAAA,EAAa,MACvE,EAAE,KAAK,CAAC,UAAU,qBAAqB,YAAY,UAAU,CAAC;AAChE;AAGO,IAAM,mCAAmD;AAAA,EAAa,MAC3E,EAAE,KAAK,CAAC,UAAU,oBAAoB,SAAS,YAAY,SAAS,CAAC;AACvE;AAGO,IAAM,8BAA8C;AAAA,EAAa,MACtE,EAAE,KAAK,CAAC,SAAS,qBAAqB,eAAe,YAAY,UAAU,CAAC;AAC9E;AAGO,IAAM,6BAA6C;AAAA,EAAa,MACrE,EAAE,OAAO;AAAA,IACP,IAAI,EAAE,OAAO,EAAE,KAAK;AAAA,IACpB,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,IACrC,mBAAmB,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI;AAAA,IAC7C,QAAQ;AAAA,IACR,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,IACpC,YAAY,EAAE,OAAO,EAAE,SAAS;AAAA,IAChC,gBAAgB,EAAE,OAAO,EAAE,SAAS;AAAA,IACpC,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS;AAAA,IAC1C,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,IAC/B,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,CAAC;AACH;AAGO,IAAM,mCAAmD;AAAA,EAAa,MAC3E,EAAE,OAAO;AAAA,IACP,gBAAgB,EAAE,OAAO;AAAA,MACvB,IAAI,EAAE,OAAO,EAAE,KAAK;AAAA,MACpB,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,MACtC,QAAQ;AAAA,MACR,kBAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,MAC5C,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,MACxC,sBAAsB,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;AAAA,MACjD,eAAe;AAAA,MACf,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,MAC/B,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,IACjC,CAAC;AAAA,IACD,eAAe,EAAE,MAAM,0BAA0B,EAAE,IAAI,EAAE;AAAA,EAC3D,CAAC;AACH;AAGA,IAAM,kBAAkB;AAAA,EACtB,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;AAAA,EACxC,0BAA0B,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EACpD,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAC1C;AAEO,IAAM,wCAAwD;AAAA,EAAa,MAChF,EAAE,OAAO;AAAA,IACP,GAAG;AAAA,IACH,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,IAC5C,mBAAmB,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI;AAAA,EACtD,CAAC;AACH;AAKO,IAAM,wCAAwD;AAAA,EAAa,MAChF,EAAE,OAAO;AAAA,IACP,GAAG;AAAA,EACL,CAAC;AACH;AAKO,IAAM,wCAAwD;AAAA,EAAa,MAChF,EAAE,KAAK,CAAC,WAAW,eAAe,UAAU,CAAC;AAC/C;AAKO,IAAM,yCAAyD;AAAA,EAAa,MACjF,EAAE,OAAO;AAAA,IACP,SAAS;AAAA,IACT,aAAa,EAAE,OAAO,EAAE,KAAK;AAAA,IAC7B,UAAU;AAAA,EACZ,CAAC;AACH;","names":[]}
@@ -0,0 +1,49 @@
1
+ import {
2
+ defineSchema
3
+ } from "./chunk-56SNIMDO.js";
4
+
5
+ // src/subscription-personal-authority-v2.ts
6
+ import { z } from "zod";
7
+ var PositiveSafeInteger = /* @__PURE__ */ defineSchema(
8
+ () => z.number().int().positive().max(Number.MAX_SAFE_INTEGER)
9
+ );
10
+ var CanonicalUuid = /* @__PURE__ */ defineSchema(
11
+ () => z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/)
12
+ );
13
+ var SubscriptionPersonalAuthorityV2 = /* @__PURE__ */ defineSchema(
14
+ () => z.object({
15
+ version: z.literal(2),
16
+ personal: z.array(
17
+ z.object({
18
+ provider: z.enum(["codex", "claude", "xai"]),
19
+ ownerMembershipId: CanonicalUuid,
20
+ authorityGeneration: PositiveSafeInteger,
21
+ /**
22
+ * Explicit personal consent accepted in a shared chat. Unlike the
23
+ * historical private-work pool, this authorizes only this connection
24
+ * in this session. Copies retain the restriction verbatim.
25
+ */
26
+ sharedSessionChoice: z.object({ sessionId: CanonicalUuid, connectionId: CanonicalUuid }).strict().optional()
27
+ }).strict()
28
+ ).max(3)
29
+ }).strict().superRefine((snapshot, ctx) => {
30
+ const providers = snapshot.personal.map((authority) => authority.provider);
31
+ if (new Set(providers).size !== providers.length) {
32
+ ctx.addIssue({ code: "custom", message: "Duplicate provider personal authority" });
33
+ }
34
+ })
35
+ );
36
+ function subscriptionPersonalAuthorityForProviderV2(snapshot, provider) {
37
+ return snapshot.personal.find((authority) => authority.provider === provider) ?? null;
38
+ }
39
+ var EMPTY_SUBSCRIPTION_PERSONAL_AUTHORITY_V2 = {
40
+ version: 2,
41
+ personal: []
42
+ };
43
+
44
+ export {
45
+ SubscriptionPersonalAuthorityV2,
46
+ subscriptionPersonalAuthorityForProviderV2,
47
+ EMPTY_SUBSCRIPTION_PERSONAL_AUTHORITY_V2
48
+ };
49
+ //# sourceMappingURL=chunk-4VDMHLLL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/subscription-personal-authority-v2.ts"],"sourcesContent":["import { defineSchema } from \"./define-schema\";\nimport { z } from \"zod\";\n\nconst PositiveSafeInteger = /* @__PURE__ */ defineSchema(() =>\n z.number().int().positive().max(Number.MAX_SAFE_INTEGER),\n);\n/**\n * Canonical lowercase UUID, matching PostgreSQL uuid::text and the\n * session_turns CHECK, so an accepted snapshot can never silently mismatch.\n */\nconst CanonicalUuid = /* @__PURE__ */ defineSchema(() =>\n z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/),\n);\n\n/**\n * Immutable personal authority for accepted subscription work. Shared pool\n * eligibility is live and deliberately absent from this snapshot.\n */\nexport const SubscriptionPersonalAuthorityV2 = /* @__PURE__ */ defineSchema(() =>\n z\n .object({\n version: z.literal(2),\n personal: z\n .array(\n z\n .object({\n provider: z.enum([\"codex\", \"claude\", \"xai\"]),\n ownerMembershipId: CanonicalUuid,\n authorityGeneration: PositiveSafeInteger,\n /**\n * Explicit personal consent accepted in a shared chat. Unlike the\n * historical private-work pool, this authorizes only this connection\n * in this session. Copies retain the restriction verbatim.\n */\n sharedSessionChoice: z\n .object({ sessionId: CanonicalUuid, connectionId: CanonicalUuid })\n .strict()\n .optional(),\n })\n .strict(),\n )\n .max(3),\n })\n .strict()\n .superRefine((snapshot, ctx) => {\n const providers = snapshot.personal.map((authority) => authority.provider);\n if (new Set(providers).size !== providers.length) {\n ctx.addIssue({ code: \"custom\", message: \"Duplicate provider personal authority\" });\n }\n }),\n);\n\nexport type SubscriptionPersonalAuthorityV2 = z.infer<typeof SubscriptionPersonalAuthorityV2>;\n\n/** Return one provider's immutable personal authority from a parsed snapshot. */\nexport function subscriptionPersonalAuthorityForProviderV2(\n snapshot: SubscriptionPersonalAuthorityV2,\n provider: SubscriptionPersonalAuthorityV2[\"personal\"][number][\"provider\"],\n): SubscriptionPersonalAuthorityV2[\"personal\"][number] | null {\n return snapshot.personal.find((authority) => authority.provider === provider) ?? null;\n}\n\nexport const EMPTY_SUBSCRIPTION_PERSONAL_AUTHORITY_V2 = {\n version: 2,\n personal: [],\n} as const satisfies SubscriptionPersonalAuthorityV2;\n"],"mappings":";;;;;AACA,SAAS,SAAS;AAElB,IAAM,sBAAsC;AAAA,EAAa,MACvD,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,OAAO,gBAAgB;AACzD;AAKA,IAAM,gBAAgC;AAAA,EAAa,MACjD,EAAE,OAAO,EAAE,MAAM,2EAA2E;AAC9F;AAMO,IAAM,kCAAkD;AAAA,EAAa,MAC1E,EACG,OAAO;AAAA,IACN,SAAS,EAAE,QAAQ,CAAC;AAAA,IACpB,UAAU,EACP;AAAA,MACC,EACG,OAAO;AAAA,QACN,UAAU,EAAE,KAAK,CAAC,SAAS,UAAU,KAAK,CAAC;AAAA,QAC3C,mBAAmB;AAAA,QACnB,qBAAqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAMrB,qBAAqB,EAClB,OAAO,EAAE,WAAW,eAAe,cAAc,cAAc,CAAC,EAChE,OAAO,EACP,SAAS;AAAA,MACd,CAAC,EACA,OAAO;AAAA,IACZ,EACC,IAAI,CAAC;AAAA,EACV,CAAC,EACA,OAAO,EACP,YAAY,CAAC,UAAU,QAAQ;AAC9B,UAAM,YAAY,SAAS,SAAS,IAAI,CAAC,cAAc,UAAU,QAAQ;AACzE,QAAI,IAAI,IAAI,SAAS,EAAE,SAAS,UAAU,QAAQ;AAChD,UAAI,SAAS,EAAE,MAAM,UAAU,SAAS,wCAAwC,CAAC;AAAA,IACnF;AAAA,EACF,CAAC;AACL;AAKO,SAAS,2CACd,UACA,UAC4D;AAC5D,SAAO,SAAS,SAAS,KAAK,CAAC,cAAc,UAAU,aAAa,QAAQ,KAAK;AACnF;AAEO,IAAM,2CAA2C;AAAA,EACtD,SAAS;AAAA,EACT,UAAU,CAAC;AACb;","names":[]}
@@ -0,0 +1,9 @@
1
+ // src/define-schema.ts
2
+ function defineSchema(factory) {
3
+ return factory();
4
+ }
5
+
6
+ export {
7
+ defineSchema
8
+ };
9
+ //# sourceMappingURL=chunk-56SNIMDO.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/define-schema.ts"],"sourcesContent":["/**\n * Construct a schema eagerly, but give bundlers one removable boundary around\n * the whole initializer (including nested schemas and chained builders).\n * Annotate calls with @__PURE__ only when the factory has no effects beyond\n * constructing its returned schema. This is not lazy validation: used schemas\n * are created once, in the same module evaluation order as ordinary constants.\n */\nexport function defineSchema<Schema>(factory: () => Schema): Schema {\n return factory();\n}\n"],"mappings":";AAOO,SAAS,aAAqB,SAA+B;AAClE,SAAO,QAAQ;AACjB;","names":[]}