@entrydesk/cli 2.2.0-beta → 2.2.0-beta.1
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.
- package/README.md +30 -0
- package/dist/add-BJv6tPO-.js +10 -0
- package/dist/agents-fP3hIH7X.js +10 -0
- package/dist/{billing-DHV0Wfwm.js → billing-Cy0BYngu.js} +1 -1
- package/dist/{budget-Dvl1Q6_g.js → budget-MVbF8WbS.js} +1 -1
- package/dist/build-task-request-config-BzI-dDZP.js +10 -0
- package/dist/{commands-qNH4DlB_.js → commands-CfDSEDKI.js} +1 -1
- package/dist/{commands-ghS7KAQr.js → commands-DU48SG8W.js} +1 -1
- package/dist/config-Cl-c7scx.js +11 -0
- package/dist/connectors-DVzXDbUU.js +11 -0
- package/dist/{file-upload-CgLvxPGL.js → file-upload-Dq6B0x4m.js} +3 -3
- package/dist/{format-BaXJBAlk.js → format-CIj0qQba.js} +1 -1
- package/dist/{hash-CnSb1n2t.js → hash-92fWniGT.js} +1 -1
- package/dist/index.js +25 -20
- package/dist/{instruction-DaoJgFgE.js → instruction-6ZWRQh4G.js} +1 -1
- package/dist/{login-CVUzJp76.js → login-CO1aBG6c.js} +1 -1
- package/dist/{resource-grants-DMj0dy5m.js → logout-WKIZVWJ7.js} +1 -1
- package/dist/{marketplace-C-7CArF7.js → marketplace-C0C2JpYf.js} +2 -2
- package/dist/{mcp-BnFLUTG-.js → mcp-CqMrd5AI.js} +2 -2
- package/dist/{mcp-client-CPFC6TCy.js → mcp-client-CEH9X7Vs.js} +1 -1
- package/dist/meeting-C5vHfcTw.js +11 -0
- package/dist/message-utils-D48Yqd9T.js +25 -0
- package/dist/{models-pzt8nNX7.js → models-BENTHton.js} +2 -2
- package/dist/{notifications-Bo7oPqK5.js → notifications-DdadH0Wc.js} +1 -1
- package/dist/{paginate-DetNe5nU.js → paginate-Cbe4RaEq.js} +1 -1
- package/dist/paths-BiowKnkz.js +10 -0
- package/dist/profile-hhU_G-Ea.js +10 -0
- package/dist/profile-storage-CKrZ-xsd.js +73 -0
- package/dist/{project-context-D8YawkvR.js → project-context-DeYepfN2.js} +1 -1
- package/dist/{project-governance-EFbI_Qan.js → project-governance-R__UPIhr.js} +1 -1
- package/dist/{project-sources-CFgB4loh.js → project-sources-C-MXx6j-.js} +1 -1
- package/dist/project-sources-write-ygvHaDUu.js +10 -0
- package/dist/{project-tasks-Bk8-wOyn.js → project-tasks-B0STK_8Q.js} +1 -1
- package/dist/{project-CPKxduou.js → project-xiz3Jopl.js} +1 -1
- package/dist/{push-4Y4mjxO7.js → push-BxQQWCZ2.js} +1 -1
- package/dist/{recordings-DtgXMjp2.js → recordings-68Oe1Kvd.js} +2 -2
- package/dist/{remove-DUFnCuRT.js → remove-C7BCBdoq.js} +1 -1
- package/dist/resolve-IOW00hfy.js +14 -0
- package/dist/resource-grants-Bb4evqsH.js +10 -0
- package/dist/{schedules-6T2-994t.js → schedules-wopieg4D.js} +2 -2
- package/dist/skills-Drr0gw-l.js +10 -0
- package/dist/{status-DHllWQ7c.js → status-Bw2E5bfa.js} +1 -1
- package/dist/status-DX6A6ugk.js +10 -0
- package/dist/task-bZNZ_yxV.js +116 -0
- package/dist/tasks-ZC9uSdkB.js +22 -0
- package/dist/{tasks-CLlI3fiV.js → tasks-lK8PTMnE.js} +1 -1
- package/dist/{team-aQszguLF.js → team-8-enl9cj.js} +2 -2
- package/dist/teams-ByeuT2Ks.js +10 -0
- package/dist/{logout-B6Bb4w2Y.js → token-DrAF7BWj.js} +1 -1
- package/dist/tool-82NKBr29.js +17 -0
- package/dist/update-DfOBWme1.js +10 -0
- package/dist/{usage-BLPq7c6l.js → usage-BS_didkP.js} +1 -1
- package/dist/{usage-audit-BYvZgTJp.js → usage-audit-DOuyWGaq.js} +3 -3
- package/dist/{version-jPJWKUcc.js → version-D7DOD1ug.js} +1 -1
- package/dist/{webhook-BxPA95wd.js → webhook-Da2l-gv6.js} +1 -1
- package/dist/{workflow-DJkPvmuA.js → workflow-oudE3gsp.js} +4 -4
- package/dist/{workspaces-CDotU443.js → workspaces-9SRfDSh3.js} +2 -2
- package/package.json +5 -4
- package/dist/add-A1EZKhMH.js +0 -10
- package/dist/agents-CZzVru0_.js +0 -10
- package/dist/build-task-request-config-B_mlDg_c.js +0 -10
- package/dist/config-B3pbK-VP.js +0 -11
- package/dist/connectors-Dqa8qg7s.js +0 -11
- package/dist/meeting-B5-UQSO3.js +0 -11
- package/dist/message-utils-DRHsMlj2.js +0 -15
- package/dist/paths-CLGwOhp4.js +0 -10
- package/dist/profile-Cth2_rzi.js +0 -10
- package/dist/profile-storage-BVSyHoBn.js +0 -68
- package/dist/project-sources-write-DUx1voCZ.js +0 -10
- package/dist/resolve-yAqzT64X.js +0 -14
- package/dist/skills-C56S2Z62.js +0 -10
- package/dist/status-BBvz4l0p.js +0 -10
- package/dist/task-Hcgf0oDf.js +0 -110
- package/dist/tasks-D2CtxbpJ.js +0 -22
- package/dist/tool-CASBzR_z.js +0 -17
- package/dist/update-CSh9DfHK.js +0 -10
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var __entrydeskNodeFloor = 24;
|
|
3
|
+
if (parseInt(process.versions.node, 10) < __entrydeskNodeFloor) {
|
|
4
|
+
process.stderr.write(
|
|
5
|
+
'entrydesk: Node.js ' + __entrydeskNodeFloor + ' or newer is required, but this is Node ' + process.versions.node + '.\n' +
|
|
6
|
+
'Upgrade Node (https://nodejs.org/en/download), then reinstall @entrydesk/cli.\n'
|
|
7
|
+
);
|
|
8
|
+
process.exit(1);
|
|
9
|
+
}
|
|
10
|
+
import{n as e,t}from"./rolldown-runtime-CiM6yMNq.js";import n from"node:fs";import r from"node:os";import i from"node:path";import a,{HTTPError as o,TimeoutError as s,isHTTPError as c,isNetworkError as l,isTimeoutError as u}from"ky";import{getToolName as d,isToolUIPart as f}from"ai";import{lookup as p}from"node:dns/promises";import{isIP as m}from"node:net";import{Agent as ee,fetch as te}from"undici";import ne from"node:crypto";import{execFile as re}from"node:child_process";import{setTimeout as ie}from"node:timers/promises";import{decodeJwt as ae}from"jose";let oe;function se(){return oe===void 0&&(oe=typeof Intl<`u`&&typeof Intl.Segmenter==`function`?new Intl.Segmenter(void 0,{granularity:`grapheme`}):null),oe}function ce(e){let t=0;for(let n of e)t+=1;return t}function le(e){let t=[];for(let n of e)t.push(n);return t}function ue(e){let t=se();return t?Array.from(t.segment(e),e=>e.segment):le(e)}function de(e,t){let n=se();if(!n)return le(e).slice(0,t).join(``);let r=0,i=0;for(let{segment:a,index:o}of n.segment(e)){let e=ce(a);if(r+e>t)break;r+=e,i=o+a.length}return i===0&&e.length>0?le(e).slice(0,t).join(``):e.slice(0,i)}function fe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function pe(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?fe(Object(n),!0).forEach(function(t){me(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):fe(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function me(e,t,n){return t=he(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function he(e){var t=ge(e,`string`);return typeof t==`symbol`?t:String(t)}function ge(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}_e({});function _e(e){return t.withOptions=t=>_e(pe(pe({},e),t)),t;function t(t,...n){let r=typeof t==`string`?[t]:t.raw,{alignValues:i=!1,escapeSpecialCharacters:a=Array.isArray(t),trimWhitespace:o=!0}=e,s=``;for(let e=0;e<r.length;e++){let t=r[e];if(a&&(t=t.replace(/\\\n[ \t]*/g,``).replace(/\\`/g,"`").replace(/\\\$/g,`$`).replace(/\\\{/g,`{`)),s+=t,e<n.length){let t=i?ve(n[e],s):n[e];s+=t}}let c=s.split(`
|
|
11
|
+
`),l=null;for(let e of c){let t=e.match(/^(\s+)\S+/);if(t){let e=t[1].length;l=l?Math.min(l,e):e}}if(l!==null){let e=l;s=c.map(t=>t[0]===` `||t[0]===` `?t.slice(e):t).join(`
|
|
12
|
+
`)}return o&&(s=s.trim()),a&&(s=s.replace(/\\n/g,`
|
|
13
|
+
`).replace(/\\t/g,` `).replace(/\\r/g,`\r`).replace(/\\v/g,`\v`).replace(/\\b/g,`\b`).replace(/\\f/g,`\f`).replace(/\\0/g,`\0`).replace(/\\x([\da-fA-F]{2})/g,(e,t)=>String.fromCharCode(parseInt(t,16))).replace(/\\u\{([\da-fA-F]{1,6})\}/g,(e,t)=>String.fromCodePoint(parseInt(t,16))).replace(/\\u([\da-fA-F]{4})/g,(e,t)=>String.fromCharCode(parseInt(t,16)))),typeof Bun<`u`&&(s=s.replace(/\\u(?:\{([\da-fA-F]{1,6})\}|([\da-fA-F]{4}))/g,(e,t,n)=>{let r=t??n??``;return String.fromCodePoint(parseInt(r,16))})),s}}function ve(e,t){if(typeof e!=`string`||!e.includes(`
|
|
14
|
+
`))return e;let n=t.slice(t.lastIndexOf(`
|
|
15
|
+
`)+1).match(/^(\s+)/);if(n){let t=n[1];return e.replace(/\n/g,`\n${t}`)}return e}const ye={blue:`#0360f0`,yellow:`#ffce25`,cyan:`#00d2ff`},be={width:570.45,height:120.05};`${be.width}${be.height}`;const xe=[{tag:`polygon`,points:`893.15 145.4 764.8 145.4 764.8 171.11 816.12 171.11 816.12 265.19 841.83 265.19 841.83 171.11 893.15 171.11 893.15 145.4`},{tag:`path`,commands:`M935.9,183.97c0-7.1,5.76-12.86,12.86-12.86h86.93v-25.71h-95.26c-16.7,0-30.24,13.54-30.24,30.24v59.31c0,16.7,13.54,30.24,30.24,30.24h95.26v-25.71h-86.93c-7.1,0-12.86-5.76-12.86-12.86v-42.65Z`},{tag:`path`,commands:`M717.67,145.14v89.92l-66.31-85.23h0c-2.36-2.86-5.93-4.68-9.92-4.68-.33,0-13.61,0-13.61,0-7.1,0-12.86,5.76-12.86,12.86v107.19h25.71v-89l66.31,84.32h0c2.36,2.86,5.93,4.68,9.92,4.68q1.25,0,0,0h13.62q-2.5,0,0,0c7.04,0,12.75-5.66,12.85-12.68v-107.37h-25.71Z`},{tag:`path`,commands:`M495.48,145.14c-16.7,0-30.24,13.54-30.24,30.24v59.57c0,16.07,12.53,29.2,28.35,30.18h87.25c7.07,0,12.81-5.76,12.81-12.87v-47.1c0-7.11-5.73-12.87-12.81-12.87h-64.29v25.71h51.39v21.44h-64.15c-7.06,0-12.78-5.69-12.86-12.73v-43.1c.07-7.04,5.8-12.73,12.86-12.73l89.85-.02v-25.71h-98.17`}],Se=[{tag:`path`,commands:`M1378.44,219.45c0,30.39-18.05,46.04-44.94,46.04s-44.94-15.47-44.94-46.04v-47.33h21.92v47.33c0,17.31,9.21,25.6,23.02,25.6s23.02-8.29,23.02-25.6v-47.33h21.92v47.33Z`},{tag:`path`,commands:`M1396.49,230.5v-88.22h21.92v32.23h46.96v19.89h-46.96v36.1c0,12.15,6.26,16.94,15.29,16.94s15.29-4.6,15.29-16.94v-2.39h21.92v2.39c0,25.23-15.1,37.39-37.2,37.39s-37.2-12.16-37.2-37.39Z`},{tag:`path`,commands:`M1485.49,218.16c0-30.39,18.05-46.04,44.94-46.04s44.94,15.47,44.94,46.04v47.33h-21.92v-47.33c0-17.31-9.21-25.6-23.02-25.6s-23.02,8.29-23.02,25.6v47.33h-21.92v-47.33Z`},{tag:`rect`,x:`1485.49`,y:`133.11`,width:`21.92`,height:`132.38`},{tag:`path`,commands:`M1172.56,217.04c0-29.54,22.45-48.9,48.41-48.9s48.61,19.36,48.61,48.9-22.64,49.1-48.61,49.1-48.41-19.56-48.41-49.1ZM1248.03,217.04c0-16.77-12.3-28.71-27.06-28.71s-26.85,11.95-26.85,28.71,12.09,28.92,26.85,28.92,27.06-11.74,27.06-28.92Z`},{tag:`rect`,x:`1248.21`,y:`172.2`,width:`21.92`,height:`93.29`},{tag:`rect`,x:`1077.07`,y:`193.92`,width:`55.68`,height:`21.92`}],Ce=[{tag:`polygon`,fill:ye.cyan,points:`232.67 341.7 241.66 346.89 250.66 341.68 361.69 277.59 297.18 240.35 297.17 240.35 250.66 267.2 241.66 272.4 232.67 267.21 186.15 240.35 121.63 277.59 232.67 341.7`},{tag:`polygon`,fill:ye.yellow,points:`177.15 224.77 177.15 160.66 186.14 155.47 232.67 128.6 232.67 54.11 121.63 118.23 112.64 123.42 112.64 262.01 177.15 224.77`},{tag:`polygon`,fill:ye.blue,points:`306.17 160.66 306.17 224.77 370.68 262.01 370.68 123.42 361.69 118.23 250.66 54.12 250.66 128.61 297.18 155.47 306.17 160.66`}];[...xe,...Se,...Ce];function we(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}new TextEncoder,new TextDecoder(`utf-8`,{fatal:!1});function Te(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Ee(e,t=`|`){return e.map(e=>Xe(e)).join(t)}function De(e,t){return typeof t==`bigint`?t.toString():t}var Oe=class{constructor(e){this._getter=e,this._value=void 0}get value(){let e=this._getter;return e!==void 0&&(this._value=e(),this._getter=void 0),this._value}};function ke(e){return new Oe(e)}function Ae(e){return e==null}function je(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function Me(e,t){let n=e/t,r=Math.round(n),i=4*2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}function Ne(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Pe(e){let t=Object.getOwnPropertyDescriptor(e,`shape`);return t?.get?t.get.raw:t?.value}function Fe(e){return Pe(e._zod.def)??e._zod.def.shape}function Ie(e,t,n){Object.defineProperty(e,t,{get(){let e=n();return Ne(this,t,e),e},enumerable:!0,configurable:!0})}function Le(e,t,n){t in e?Ne(e,t,n):e[t]=n}function Re(e,t,n,r){let i=Fe(t);for(let a of n){let n=Object.getOwnPropertyDescriptor(i,a);n.enumerable&&(n.get?Ie(e,a,()=>{let e=t._zod.def.shape[a];return r?r(e,a):e}):Le(e,a,r?r(n.value,a):n.value))}}function ze(e,t){for(let n of Reflect.ownKeys(t)){let r=Object.getOwnPropertyDescriptor(t,n);r.enumerable&&(r.get?Ie(e,n,()=>t[n]):Le(e,n,r.value))}}function h(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function Be(e){return JSON.stringify(e)}function Ve(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}const He=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Ue(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const We=ke(()=>{if(y.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function Ge(e){if(Ue(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return Ue(n)!==!1&&Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)!==!1}function Ke(e){return Ge(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}const qe=new Set([`string`,`number`,`symbol`]);function Je(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Ye(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function g(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Xe(e){return typeof e==`bigint`?e.toString()+`n`:typeof e==`string`?`"${e}"`:`${e}`}function Ze(e){return Object.keys(e).filter(t=>e[t]._zod.optin!==void 0&&e[t]._zod.optout===`optional`)}const Qe={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},$e={int64:[BigInt(`-9223372036854775808`),BigInt(`9223372036854775807`)],uint64:[BigInt(0),BigInt(`18446744073709551615`)]};function et(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);let i={};return Re(i,e,tt(e,t)),Ye(e,h(n,{shape:i,checks:[]}))}function tt(e,t){let n=Fe(e),r=[];for(let e of Reflect.ownKeys(t)){if(!Object.getOwnPropertyDescriptor(n,e)?.enumerable)throw Error(`Unrecognized key: "${String(e)}"`);t[e]&&r.push(e)}return r}function nt(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);let i=new Set(tt(e,t)),a={};return Re(a,e,Reflect.ownKeys(Fe(e)).filter(e=>!i.has(e))),Ye(e,h(n,{shape:a,checks:[]}))}function rt(e,t){if(!Ge(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=Fe(e);for(let e of Reflect.ownKeys(t))if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return Ye(e,h(e._zod.def,{shape:it(e,t)}))}function it(e,t){let n={};return Re(n,e,Reflect.ownKeys(Fe(e))),ze(n,t),n}function at(e,t){if(!Ge(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return Ye(e,h(e._zod.def,{shape:it(e,t)}))}function ot(e,t){if(!t?._zod?.def)throw Error("Invalid input to merge: expected an object schema. To merge a plain shape, use `.extend()`.");if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);let n={};return Re(n,e,Reflect.ownKeys(Fe(e))),Re(n,t,Reflect.ownKeys(Fe(t))),Ye(e,h(e._zod.def,{shape:n,get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function st(e,t,n,r=`partial`){let i=t._zod.def.checks;if(i&&i.length>0)throw Error(`.${r}() cannot be used on object schemas containing refinements`);let a=n?new Set(tt(t,n)):void 0,o={};return Re(o,t,Reflect.ownKeys(Fe(t)),e&&((t,n)=>a&&!a.has(n)?t:new e({type:`optional`,innerType:t}))),Ye(t,h(t._zod.def,{shape:o,checks:[]}))}function ct(e,t,n){let r=n?new Set(tt(t,n)):void 0,i={};return Re(i,t,Reflect.ownKeys(Fe(t)),(t,n)=>r&&!r.has(n)?t:new e({type:`nonoptional`,innerType:t})),Ye(t,h(t._zod.def,{shape:i}))}function lt(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function ut(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function dt(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function ft(e){return typeof e==`string`?e:e?.message}function pt(e,t,n){var r;for(let i=t;i<e.length;i++)(r=e[i]).schema??(r.schema=n)}function mt(e,t,n){var r;let i=e.inst?._zod?.traits;i?.has(`$ZodType`)&&(i.has(`$ZodCheck`)?(r=e).schema??(r.schema=e.inst):e.schema=e.inst);let a=e.schema===e.inst?void 0:e.schema?._zod.def?.error,o=e.message?e.message:ft(e.inst?._zod.def?.error?.(e))??ft(a?.(e))??ft(t?.error?.(e))??ft(n.customError?.(e))??ft(n.localeError?.(e))??`Invalid input`,s={};for(let t of Object.keys(e))t!==`inst`&&t!==`schema`&&t!==`continue`&&t!==`input`&&t!==`__proto__`&&(s[t]=e[t]);return s.path??=[],s.message=o,t?.reportInput&&(s.input=e.input),s}const ht=/[\uD800-\uDBFF]/;function gt(e){let t=e.length;if(!ht.test(e))return t;let n=t;for(let r=0;r<t-1;r++)(e.charCodeAt(r)&64512)==55296&&(e.charCodeAt(r+1)&64512)==56320&&(n--,r++);return n}function _t(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function vt(e){let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`nan`:`number`;case`object`:{if(e===null)return`null`;if(Array.isArray(e))return`array`;let t=e;if(t&&Object.getPrototypeOf(t)!==Object.prototype&&`constructor`in t&&t.constructor)return t.constructor.name}}return t}function yt(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}function bt(e,t){for(let n in t){let r=Object.getOwnPropertyDescriptor(t,n);r.get?Object.defineProperty(e,n,{...r,enumerable:!1}):wt(e,n,r.value)}}function xt(e,t,n,r=!0){return Object.defineProperty(e,t,{configurable:!0,writable:!0,enumerable:r,value:n}),n}function St(e,t,n){return xt(e,t,n,!1)}function Ct(e,t){for(let n in e){let r=e[n];Object.defineProperty(t,n,{configurable:!0,enumerable:!0,get(){return xt(this,n,r(this))},set(e){xt(this,n,e)}})}return t}function wt(e,t,n){Object.defineProperty(e,t,{configurable:!0,get(){return this==null?n:xt(this,t,n.bind(this))},set(e){xt(this,t,e)}})}function Tt(e,t){let n=Object.getPrototypeOf(e);return t in n?void 0:n}let Et,Dt=!1;const Ot={configurable:!0,get(){Dt=!0}};function _(e,t,n){let r=Object.getPrototypeOf(e._zod);if(t in r&&Et!==e._zod){Et=void 0;return}Et=e._zod,Object.defineProperty(r,t,{configurable:!0,get(){Object.defineProperty(this,t,Ot);let e=Dt;Dt=!1;try{let r=n(this);return Dt?delete this[t]:Object.defineProperty(this,t,{configurable:!0,writable:!0,value:r}),Dt||=e,r}catch(n){throw delete this[t],Dt||=e,n}},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:e})}})}function kt(e,t,n,r){let i=Tt(e,t);i&&Object.defineProperty(i,t,{configurable:!0,get(){let e={configurable:!0,writable:!0,enumerable:r,value:void 0};return Object.defineProperty(this,t,e),e.value=n(this),Object.defineProperty(this,t,e),e.value},set(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,enumerable:r,value:e})}})}function At(e){let t=()=>e;return t[`~constantCatch`]=!0,t}var jt;const Mt={value:void 0,enumerable:!1};let Nt=`captureStackTrace`in Error?Error:null;function Pt(e){let t=Nt;if(t){let n=t.stackTraceLimit;if(typeof n==`number`){try{t.stackTraceLimit=0}catch{return Nt=null,new e}try{return new e}finally{t.stackTraceLimit=n}}}return new e}function v(e,t,n,r){let i={};function a(e){this.def=e,this.constr=d,this.traits=new Set}a.prototype=i;let o=n,s=o&&new WeakSet;function c(n,r){if(!n._zod){Mt.value=new a(r);try{Object.defineProperty(n,"_zod",Mt)}finally{Mt.value=void 0}}else if(n._zod.traits.has(e))return;if(n._zod.traits.add(e),t(n,r),s){let e=Object.getPrototypeOf(n),t=n._zod.constr.prototype,r=e;for(;r&&r!==t;)r=Object.getPrototypeOf(r);let i=r??e;s.has(i)||(s.add(i),bt(i,o))}let i=d.prototype;for(let e in i)Object.prototype.hasOwnProperty.call(i,e)&&(e in n||(n[e]=i[e].bind(n)))}let l=r?.Parent??Object;class u extends l{}Object.defineProperty(u,"name",{value:e});function d(e){let t=r?.Parent?Pt(u):this;c(t,e);let n=t._zod.deferred;if(n){for(let e of n)e();t._zod.deferred=void 0}let i=globalThis.__zod_globalConfig?.postProcessor;return i&&i(t),t}return Object.defineProperty(d,"init",{value:c}),Object.defineProperty(d,Symbol.hasInstance,{value:t=>r?.Parent&&t instanceof r.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(d,"name",{value:e}),d}var Ft=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},It=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(jt=globalThis).__zod_globalConfig??(jt.__zod_globalConfig={});const y=globalThis.__zod_globalConfig;function Lt(e){return e&&Object.assign(y,e),y}function Rt(){let e=this._zod;return e.message??=JSON.stringify(e.def,De,2),e.message}function zt(e){this._zod.message=e}const Bt={get:Rt,set:zt,enumerable:!0,configurable:!0},Vt={value:void 0,enumerable:!1},Ht=new WeakSet([Object.prototype,Error.prototype]),Ut=(e,t)=>{e.name=`$ZodError`,Vt.value=t,Object.defineProperty(e,"issues",Vt),Vt.value=void 0,Object.defineProperty(e,"message",Bt);let n=Object.getPrototypeOf(e);Ht.has(n)||(Ht.add(n),Object.defineProperty(n,"toString",{configurable:!0,enumerable:!1,get(){let e=()=>this.message;return Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,"toString",{value:e,configurable:!0,writable:!0})}}))},Wt=v(`$ZodError`,Ut);v(`$ZodError`,Ut,void 0,{Parent:Error});function Gt(e,t,n){return Object.prototype.hasOwnProperty.call(e,t)||(t===`__proto__`?Object.defineProperty(e,t,{value:n(),writable:!0,enumerable:!0,configurable:!0}):e[t]=n()),e[t]}function Kt(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?Gt(n,i.path[0],()=>[]).push(t(i)):r.push(t(i));return{formErrors:r,fieldErrors:n}}function qt(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i],o=i===e.length-1;if(n===`_errors`){o&&r._errors.push(t(a)),i++;continue}Object.prototype.hasOwnProperty.call(r,n)||Object.defineProperty(r,n,{value:{_errors:[]},enumerable:!0,writable:!0,configurable:!0});let s=r[n];o&&s._errors.push(t(a)),r=s,i++}}}};return r(e),n}function Jt(e,t){return{callee:t?.callee??e,Err:t?.Err}}const Yt=e=>{let t=(n,r,i,a)=>{let o=i?{...i,async:!1}:{async:!1},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Ft;if(s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>mt(e,o,Lt())));throw He(n,a?.callee??t),n}return s.value};return t},Xt=e=>{let t=async(n,r,i,a)=>{let o=i?{...i,async:!0}:{async:!0},s=n._zod.run({value:r,issues:[]},o);if(s instanceof Promise&&(s=await s),s.issues.length){let n=new((a?.Err)??e)(s.issues.map(e=>mt(e,o,Lt())));throw He(n,a?.callee??t),n}return s.value};return t},Zt=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Ft;return a.issues.length?Qt(e,a.issues,i):{success:!0,data:a.value}};function Qt(e,t,n){let r;return{success:!1,get error(){return r||(r=new e(t.map(e=>mt(e,n,Lt()))),t=void 0,n=void 0),r},set error(e){r=e,t=void 0,n=void 0}}}const $t=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?Qt(e,a.issues,i):{success:!0,data:a.value}},en=Symbol.for(`zod.compile.invalid`),tn=Symbol.for(`zod.compile.fallback`),nn=((e,t,n)=>{let r=e._zod.bag.validator;if(r!==void 0){if(r(t)!==en)return!0;if(r.definite===!0&&n===void 0)return!1}return rn(e,t,n)});function rn(e,t,n){let r=n?{...n,async:!1,abortEarly:!0}:{async:!1,abortEarly:!0},i=e._zod.bag.fallbackRun,a;if(i?(r[tn]=!0,a=i({value:t,issues:[]},r)):a=e._zod.run({value:t,issues:[]},r),a instanceof Promise)throw new Ft;return a.issues.length===0}const an=async(e,t,n)=>{let r=n?{...n,async:!0,abortEarly:!0}:{async:!0,abortEarly:!0},i=e._zod.run({value:t,issues:[]},r);return i instanceof Promise&&(i=await i),i.issues.length===0},on=e=>{let t=Yt(e),n=(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return t(e,r,o,Jt(n,a))};return n},sn=e=>{let t=Yt(e),n=(e,r,i,a)=>t(e,r,i,Jt(n,a));return n},cn=e=>{let t=Xt(e),n=async(e,r,i,a)=>{let o=i?{...i,direction:`backward`}:{direction:`backward`};return await t(e,r,o,Jt(n,a))};return n},ln=e=>{let t=Xt(e),n=async(e,r,i,a)=>await t(e,r,i,Jt(n,a));return n},un=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Zt(e)(t,n,i)},dn=e=>(t,n,r)=>Zt(e)(t,n,r),fn=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return $t(e)(t,n,i)},pn=e=>async(t,n,r)=>$t(e)(t,n,r),mn=/^[cC][0-9a-z]{6,}$/,hn=/^[0-9a-z]+$/,gn=/^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$/,_n=/^[0-9a-vA-V]{20}$/,vn=/^[A-Za-z0-9]{27}$/,yn=/^[a-zA-Z0-9_-]{21}$/;function bn(e){return RegExp(`^[a-zA-Z0-9_-]{${e}}$`)}const xn=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Sn=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Cn=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,wn=/^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function Tn(){return RegExp(`^(?=[\\s\\S]*[\\p{Extended_Pictographic}\\p{Regional_Indicator}\\u20E3])[\\p{Extended_Pictographic}\\p{Emoji_Component}]+$`,`u`)}const En=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Dn=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,On=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,kn=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,An=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,jn=/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2,3})?$/,Mn=/^https?$/,Nn=/^\+[1-9]\d{6,14}$/,Pn=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`;function Fn(e){return RegExp(`^${e}$`)}const In=Fn(Pn);function Ln(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:e.seconds?`${t}:[0-5]\\d(?:\\.\\d+)?`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Rn(e){return RegExp(`^${Ln(e)}$`)}function zn(e){let t=[`Z`];e.offset&&t.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let n=`${Ln({precision:e.precision,seconds:!0})}(?:${t.join(`|`)})`,r=e.local?`${n}|${Ln({precision:e.precision})}`:n;return RegExp(`^${Pn}T(?:${r})$`)}const Bn=/^[\s\S]{0,}$/,Vn=/^-?\d+$/,Hn=/^-?\d+(?:\.\d+)?$/,Un=/^(?:true|false)$/i,Wn=/^null$/i,Gn=/^[^A-Z]*$/,Kn=/^[^a-z]*$/,b=v(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),qn=e=>{let t=e.value;return!Ae(t)&&t.length!==void 0},Jn={number:`number`,bigint:`bigint`,object:`date`},Yn=v(`$ZodCheckLessThan`,(e,t)=>{b.init(e,t);let n=Jn[typeof t.value];e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:Jn[typeof r.value]??n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Xn=v(`$ZodCheckGreaterThan`,(e,t)=>{b.init(e,t);let n=Jn[typeof t.value];e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:Jn[typeof r.value]??n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Zn=v(`$ZodCheckMultipleOf`,(e,t)=>{b.init(e,t),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?t.value!==BigInt(0)&&n.value%t.value===BigInt(0):Me(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Qn=v(`$ZodCheckNumberFormat`,(e,t)=>{b.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=Qe[t.format];e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),$n=v(`$ZodCheckMaxLength`,(e,t)=>{var n;b.init(e,t),(n=e._zod.def).when??(n.when=qn),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>t.maximum?gt(r):i)<=t.maximum)return;let a=_t(r);n.issues.push({origin:a,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),er=v(`$ZodCheckMinLength`,(e,t)=>{var n;b.init(e,t),(n=e._zod.def).when??(n.when=qn),e._zod.check=n=>{let r=n.value,i=r.length;if((typeof r==`string`&&i>=t.minimum&&i<t.minimum*2?gt(r):i)>=t.minimum)return;let a=_t(r);n.issues.push({origin:a,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),tr=v(`$ZodCheckLengthEquals`,(e,t)=>{var n;b.init(e,t),(n=e._zod.def).when??(n.when=qn),e._zod.check=n=>{let r=n.value,i=r.length,a=typeof r==`string`&&i>=t.length&&i<=t.length*2?gt(r):i;if(a===t.length)return;let o=_t(r),s=a>t.length;n.issues.push({origin:o,...s?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),nr=v(`$ZodCheckStringFormat`,(e,t)=>{var n,r;b.init(e,t),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),rr=v(`$ZodCheckRegex`,(e,t)=>{nr.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),ir=v(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Gn,nr.init(e,t)}),ar=v(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=Kn,nr.init(e,t)}),or=v(`$ZodCheckIncludes`,(e,t)=>{b.init(e,t);let n=Je(t.includes);t.pattern=new RegExp(typeof t.position==`number`?`^.{${t.position},}${n}`:n),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),sr=v(`$ZodCheckStartsWith`,(e,t)=>{b.init(e,t);let n=RegExp(`^${Je(t.prefix)}.*`);t.pattern??=n,e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),cr=v(`$ZodCheckEndsWith`,(e,t)=>{b.init(e,t);let n=RegExp(`.*${Je(t.suffix)}$`);t.pattern??=n,e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),lr=v(`$ZodCheckOverwrite`,(e,t)=>{b.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});var ur=class{constructor(e=[],t={}){this.content=[],this.indent=0,this.args=e,this.closed=t}indented(e){this.indent+=1;try{e(this)}finally{--this.indent}}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
16
|
+
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.content??[``];return new e(...Object.keys(this.closed),`return function (${this.args.join(`, `)}) {\n${t.join(`
|
|
17
|
+
`)}\n};`)(...Object.values(this.closed))}};const dr={major:4,minor:6,patch:5},x=v(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=dr;let r=e._zod.def.checks,i=e._zod.traits.has(`$ZodCheck`)?[e,...r??[]]:r?.length?[...r]:[];for(let t of i)for(let n of t._zod.onattach)n(e);if(i.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(t,n,r)=>{if(t.memo)return t;let i=lt(t),a;for(let o of n){if(o._zod.def.when){if(ut(t)||!o._zod.def.when(t))continue}else if(i)continue;let n=t.issues.length,s=o._zod.check(t);if(s instanceof Promise&&r?.async===!1)throw new Ft;if(a||s instanceof Promise)a=(a??Promise.resolve()).then(async()=>{await s,t.issues.length!==n&&(pt(t.issues,n,e),i||=lt(t,n))});else{if(t.issues.length===n)continue;pt(t.issues,n,e),i||=lt(t,n)}}return a?a.then(()=>t):t},n=(n,r,a)=>{if(lt(n))return n.aborted=!0,n;let o=t(r,i,a);if(o instanceof Promise){if(a.async===!1)throw new Ft;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(r,a)=>{if(a.skipChecks)return e._zod.parse(r,a);if(a.direction===`backward`){let t=e._zod.parse({value:r.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,r,a)):n(t,r,a)}let o=e._zod.parse(r,a);if(o instanceof Promise){if(a.async===!1)throw new Ft;return o.then(e=>t(e,i,a))}return t(o,i,a)}}},{get"~standard"(){return St(this,`~standard`,mr(this))},set"~standard"(e){xt(this,`~standard`,e)}}),fr=(e,t)=>e.issues.length?{issues:e.issues.map(e=>mt(e,t,Lt()))}:{value:e.value};async function pr(e,t){let n={async:!0};return fr(await e._zod.run({value:t,issues:[]},n),n)}function mr(e){return{validate:t=>{let n={async:!1};try{let r=e._zod.run({value:t,issues:[]},n);if(!(r instanceof Promise))return fr(r,n)}catch{}return pr(e,t)},vendor:`zod`,version:1}}const hr=v(`$ZodString`,(e,t)=>{x.init(e,t),e._zod.pattern=t.pattern??Bn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),S=v(`$ZodStringFormat`,(e,t)=>{nr.init(e,t),hr.init(e,t)}),gr=v(`$ZodGUID`,(e,t)=>{t.pattern??=Sn,S.init(e,t)}),_r=v(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=Cn(e)}else t.pattern??=Cn();S.init(e,t)}),vr=v(`$ZodEmail`,(e,t)=>{t.pattern??=wn,S.init(e,t)});function yr(e){try{return typeof URL<`u`&&typeof URL.canParse==`function`?URL.canParse(e):(new URL(e),!0)}catch{return!1}}function br(e,t){return!(`normalize`in t)&&!(`hostname`in t)&&!(`protocol`in t)?yr(e)||2:xr(e,t)}function xr(e,t){if(!t.normalize&&t.protocol?.source===Mn.source&&!/^https?:\/\//i.test(e))return 1;try{if(typeof URL<`u`){let t=URL;if(typeof t.parse==`function`)return t.parse(e)??2}return new URL(e)}catch{return 2}}const Sr=/[\t\n\r]/g;function Cr(e){return e.replace(Sr,``)}function wr(e,t){return t.lastIndex=0,t.test(e.hostname)}function Tr(e,t){return t.lastIndex=0,t.test(e.protocol.endsWith(`:`)?e.protocol.slice(0,-1):e.protocol)}const Er=v(`$ZodURL`,(e,t)=>{S.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=br(r,t);if(i===1){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}if(i===2){n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort});return}if(i===!0){n.value=Cr(r);return}t.hostname&&!wr(i,t.hostname)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort}),t.protocol&&!Tr(i,t.protocol)&&n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort}),n.value=t.normalize?i.href:Cr(r);return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),Dr=v(`$ZodEmoji`,(e,t)=>{t.pattern??=Tn(),S.init(e,t)}),Or=v(`$ZodNanoID`,(e,t)=>{if(t.length!==void 0&&(!Number.isInteger(t.length)||t.length<1))throw Error(`Invalid nanoid length: ${t.length}`);t.pattern??=t.length===void 0?yn:bn(t.length),S.init(e,t)}),kr=v(`$ZodCUID`,(e,t)=>{t.pattern??=mn,S.init(e,t)}),Ar=v(`$ZodCUID2`,(e,t)=>{t.pattern??=hn,S.init(e,t)}),jr=v(`$ZodULID`,(e,t)=>{t.pattern??=gn,S.init(e,t)}),Mr=v(`$ZodXID`,(e,t)=>{t.pattern??=_n,S.init(e,t)}),Nr=v(`$ZodKSUID`,(e,t)=>{t.pattern??=vn,S.init(e,t)}),Pr=v(`$ZodISODateTime`,(e,t)=>{t.pattern??=zn(t),S.init(e,t)}),Fr=v(`$ZodISODate`,(e,t)=>{t.pattern??=In,S.init(e,t)}),Ir=v(`$ZodISOTime`,(e,t)=>{t.pattern??=Rn(t),S.init(e,t)}),Lr=v(`$ZodISODuration`,(e,t)=>{t.pattern??=xn,S.init(e,t)}),Rr=v(`$ZodIPv4`,(e,t)=>{t.pattern??=En,S.init(e,t)}),zr=/^[0-9a-fA-F:.]+$/;function Br(e){return zr.test(e)?yr(`http://[${e}]`):!1}const Vr=v(`$ZodIPv6`,(e,t)=>{t.pattern??=Dn,S.init(e,t),e._zod.check=n=>{Br(n.value)||n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}),Hr=v(`$ZodCIDRv4`,(e,t)=>{t.pattern??=On,S.init(e,t)});function Ur(e){let t=e.split(`/`);if(t.length!==2)return!1;let[n,r]=t;if(!r)return!1;let i=Number(r);return`${i}`!==r||i<0||i>128?!1:Br(n)}const Wr=v(`$ZodCIDRv6`,(e,t)=>{t.pattern??=kn,S.init(e,t),e._zod.check=n=>{Ur(n.value)||n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}});function Gr(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const Kr=/^[0-9a-zA-Z+/]*={0,2}$/,qr=v(`$ZodBase64`,(e,t)=>{t.pattern??=Kr,S.init(e,t),e._zod.check=n=>{Gr(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}}),Jr=/^[A-Za-z0-9_-]*$/;function Yr(e){if(!Jr.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Gr(t.padEnd(Math.ceil(t.length/4)*4,`=`))}const Xr=v(`$ZodBase64URL`,(e,t)=>{t.pattern??=Jr,S.init(e,t),e._zod.check=n=>{Yr(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Zr=v(`$ZodE164`,(e,t)=>{t.pattern??=Nn,S.init(e,t)});function Qr(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}const $r=v(`$ZodJWT`,(e,t)=>{S.init(e,t),e._zod.check=n=>{Qr(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),ei=v(`$ZodNumber`,(e,t)=>{x.init(e,t),e._zod.pattern=Hn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:String(i):void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),ti=v(`$ZodNumberFormat`,(e,t)=>{Qn.init(e,t),ei.init(e,t)}),ni=v(`$ZodBoolean`,(e,t)=>{x.init(e,t),e._zod.pattern=Un,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),ri=v(`$ZodNull`,(e,t)=>{x.init(e,t),e._zod.pattern=Wn,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),ii=v(`$ZodAny`,(e,t)=>{x.init(e,t),e._zod.parse=e=>e}),ai=v(`$ZodUnknown`,(e,t)=>{x.init(e,t),e._zod.parse=e=>e}),oi=v(`$ZodNever`,(e,t)=>{x.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)}),si=v(`$ZodDate`,(e,t)=>{x.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch{}let i=n.value,a=i instanceof Date;return a&&!Number.isNaN(i.getTime())||n.issues.push({expected:`date`,code:`invalid_type`,input:i,...a?{received:`Invalid Date`}:{},inst:e}),n}});function ci(e,t,n){e.issues.length&&t.issues.push(...dt(n,e.issues)),t.value[n]=e.value}const li=v(`$ZodArray`,(e,t)=>{x.init(e,t);let n=y.memoizer;n?.attach(e),e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({expected:`array`,code:`invalid_type`,input:a,inst:e}),r;r.value=n?n.alloc(e,r,Array(a.length),i):Array(a.length);let o=[],s=i?.abortEarly;for(let e=0;e<a.length;e++){let n=a[e],c=t.element._zod.run({value:n,issues:[]},i);if(c instanceof Promise)o.push(c.then(t=>ci(t,r,e)));else if(ci(c,r,e),s&&c.issues.length!==0&<(c))break}return o.length?Promise.all(o).then(()=>r):r}});function ui(e,t,n,r,i,a){let o=n in r,s=a===`optional`;if(!(!o&&s&&i===`optional`)){if(e.issues.length){if(i!==void 0&&s&&!o)return;t.issues.push(...dt(n,e.issues))}if(!o&&i===void 0){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?(o||i===`defaulted`&&!s)&&(t.value[n]=void 0):t.value[n]=e.value}}const di=[];function fi(e){let t=Object.keys(e.shape),n=Object.getOwnPropertySymbols(e.shape),r=n.length?n:di,i=r.length?[...t,...r]:t;for(let t of i)if(!e.shape?.[t]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${String(t)}": expected a Zod schema`);let a=Ze(e.shape);return{...e,allKeys:i,symbolKeys:r,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(a)}}function pi(e,t,n,r,i,a,o){let s=[],c=i.keySet,l=i.catchall._zod,u=l.def.type,d=l.optin,f=l.optout,p=0;for(let i in t){if(o&&n.issues.length!==p){if(lt(n,p))break;p=n.issues.length}if(c.has(i))continue;if(i===`__proto__`){u===`never`&&s.push(i);continue}if(u===`never`){s.push(i);continue}let a=l.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>ui(e,n,i,t,d,f))):ui(a,n,i,t,d,f)}return s.length&&n.issues.push({code:`unrecognized_keys`,keys:s,input:t,inst:a,continue:!0}),e.length?Promise.all(e).then(()=>n):n}const mi=v(`$ZodObject`,(e,t)=>{x.init(e,t);let n=Object.getOwnPropertyDescriptor(t,`shape`),r=n?.get?n.get.raw:t.shape??{};if(r){let e=()=>{let n={...r};return Object.defineProperty(t,"shape",{value:n}),e.raw=n,n};e.raw=r,Object.defineProperty(t,"shape",{get:e})}let i=ke(()=>fi(t));_(e,`propValues`,e=>{let t=e.def.shape,n={};for(let e in t){let r=t[e]._zod;if(r.values){Object.prototype.hasOwnProperty.call(n,e)||Ne(n,e,new Set);for(let t of r.values)n[e].add(t);r.optin!==void 0&&n[e].add(void 0)}}return n});let a=Ue,o=t.catchall,s,c=y.memoizer;c?.attach(e),e._zod.parse=(t,n)=>{s??=i.value;let r=t.value;if(!a(r))return t.issues.push({expected:`object`,code:`invalid_type`,input:r,inst:e}),t;t.value=c?c.alloc(e,t,{},n):{};let l=[],u=s.shape,d=n?.abortEarly,f=t.issues.length;for(let e of s.allKeys){if(d&&t.issues.length!==f){if(lt(t,f))break;f=t.issues.length}if(e===`__proto__`)continue;let i=u[e],a=i._zod.optin,o=i._zod.optout,s=i._zod.run({value:r[e],issues:[]},n);s instanceof Promise?l.push(s.then(n=>ui(n,t,e,r,a,o))):ui(s,t,e,r,a,o)}return o?pi(l,r,t,n,i.value,e,d===!0):l.length?Promise.all(l).then(()=>t):t}}),hi=v(`$ZodObjectJIT`,(e,t)=>{mi.init(e,t);let n=e._zod.parse,r=ke(()=>fi(t)),i=y.memoizer,a=t=>{let n=r.value,a=n.symbolKeys,o=new ur([`payload`,`ctx`],{shape:t,inst:e,memo:i,syms:a}),s=e=>`shape[${e}]._zod.run({ value: input[${e}], issues: [] }, ctx)`,c=(e,t)=>`
|
|
18
|
+
let ${e}_ab = false;
|
|
19
|
+
for (let i = 0; i < ${e}.issues.length; i++) {
|
|
20
|
+
const iss = ${e}.issues[i];
|
|
21
|
+
iss.path = iss.path ? [${t}, ...iss.path] : [${t}];
|
|
22
|
+
payload.issues.push(iss);
|
|
23
|
+
if (iss.continue !== true) ${e}_ab = true;
|
|
24
|
+
}
|
|
25
|
+
if (${e}_ab && ctx && ctx.abortEarly) {
|
|
26
|
+
payload.value = newResult;
|
|
27
|
+
return payload;
|
|
28
|
+
}`;o.write(`const input = payload.value;`);let l=Object.create(null),u=0;for(let e of n.allKeys)l[e]=`key_${u++}`;o.write(i?`const newResult = memo.alloc(inst, payload, {}, ctx);`:`const newResult = {};`);for(let e of n.allKeys){if(e===`__proto__`)continue;let n=l[e],r=typeof e==`symbol`?`syms[${a.indexOf(e)}]`:Be(e),i=`${r} in input`,u=t[e],d=u?._zod?.optin,f=d!==void 0,p=u?._zod?.optout===`optional`;if(o.write(`const ${n} = ${s(r)};`),f&&p){let e=d===`optional`?`${n}_present`:`${n}.value !== undefined || ${n}_present`;o.write(`
|
|
29
|
+
const ${n}_present = ${i};
|
|
30
|
+
if (!${n}.issues.length || ${n}_present) {
|
|
31
|
+
if (${n}.issues.length) {${c(n,r)}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
if (${e}) {
|
|
35
|
+
newResult[${r}] = ${n}.value;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
`)}else f?(o.write(`
|
|
40
|
+
if (${n}.issues.length) {${c(n,r)}
|
|
41
|
+
}
|
|
42
|
+
`),d===`defaulted`?o.write(`newResult[${r}] = ${n}.value;`):o.write(`
|
|
43
|
+
if (${n}.value !== undefined || ${i}) {
|
|
44
|
+
newResult[${r}] = ${n}.value;
|
|
45
|
+
}
|
|
46
|
+
`)):o.write(`
|
|
47
|
+
const ${n}_present = ${i};
|
|
48
|
+
if (${n}.issues.length) {${c(n,r)}
|
|
49
|
+
}
|
|
50
|
+
if (!${n}_present && !${n}.issues.length) {
|
|
51
|
+
payload.issues.push({
|
|
52
|
+
code: "invalid_type",
|
|
53
|
+
expected: "nonoptional",
|
|
54
|
+
input: undefined,
|
|
55
|
+
path: [${r}]
|
|
56
|
+
});
|
|
57
|
+
if (ctx && ctx.abortEarly) {
|
|
58
|
+
payload.value = newResult;
|
|
59
|
+
return payload;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (${n}_present) {
|
|
64
|
+
newResult[${r}] = ${n}.value;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
`)}return o.write(`payload.value = newResult;`),o.write(`return payload;`),o.compile()},o,s=Ue,c=!y.jitless,l=c&&We.value,u=t.catchall,d;e._zod.parse=(i,f)=>{d??=r.value;let p=i.value;return s(p)?c&&l&&f?.async===!1&&f.jitless!==!0?(o||=a(t.shape),i=o(i,f),u?pi([],p,i,f,d,e,f?.abortEarly===!0):i):n(i,f):(i.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),i)}});function gi(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!lt(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>mt(e,r,Lt())))}),t)}const _i=v(`$ZodUnion`,(e,t)=>{x.init(e,t),_(e,`optin`,e=>e.def.options.some(e=>e._zod.optin===`defaulted`)?`defaulted`:e.def.options.some(e=>e._zod.optin!==void 0)?`optional`:void 0),_(e,`optout`,e=>e.def.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),_(e,`values`,e=>{if(e.def.options.every(e=>e._zod.values))return new Set(e.def.options.flatMap(e=>Array.from(e._zod.values)))}),_(e,`pattern`,e=>{if(e.def.options.every(e=>e._zod.pattern)){let t=e.def.options.map(e=>e._zod.pattern);return RegExp(`^(${t.map(e=>je(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>gi(t,r,e,i)):gi(o,r,e,i)}});function vi(e){let t=new Map;for(let n of e.options){let r=n._zod.propValues?.[e.discriminator];if(!r||r.size===0)throw Error(`Invalid discriminated union option at index "${e.options.indexOf(n)}"`);for(let e of r)if(t.has(e)){if(e!==void 0)throw Error(`Duplicate discriminator value "${String(e)}"`);t.set(e,null)}else t.set(e,n)}return t}const yi=v(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,_i.init(e,t);let n=e._zod.parse;_(e,`propValues`,e=>{let t={},n=0;for(let r of e.def.options){let i=r._zod.propValues;if(!i||Object.keys(i).length===0)throw Error(`Invalid discriminated union option at index "${e.def.options.indexOf(r)}"`);i[e.def.discriminator]?.has(void 0)&&n++;for(let[e,n]of Object.entries(i)){Object.prototype.hasOwnProperty.call(t,e)||Ne(t,e,new Set);for(let r of n)t[e].add(r)}}return!e.def.unionFallback&&n>1&&t[e.def.discriminator]?.delete(void 0),t}),t.options.forEach((e,n)=>{let r=Pe(e._zod.def);if(r&&!Object.prototype.hasOwnProperty.call(r,t.discriminator))throw Error(`Invalid discriminated union option at index "${n}"`)});let r=ke(()=>vi(t));e._zod.parse=(i,a)=>{let o=i.value;if(!Ue(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=o?.[t.discriminator],c=r.value.get(s);return c&&(s!==void 0||a.direction!==`backward`)?c._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()).filter(e=>r.value.get(e)!==null),input:o,path:[t.discriminator],inst:e}),i)}}),bi=v(`$ZodIntersection`,(e,t)=>{x.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>Si(e,t,n)):Si(e,i,a)}});function xi(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Ge(e)&&Ge(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};Object.prototype.hasOwnProperty.call(i,`__proto__`)&&delete i.__proto__;for(let n of r){if(n===`__proto__`)continue;let r=xi(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=xi(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Si(e,t,n){let r=new Map,i,a=new Map,o=(e,t)=>{let n;if(e.code===`unrecognized_keys`&&!e.path?.length)i??=e,n=e.keys;else if(e.code===`invalid_key`&&e.origin===`record`&&e.path?.length===1){let t=String(e.path[0]);a.has(t)||a.set(t,e),n=[t]}else return!1;for(let e of n)r.has(e)||r.set(e,{}),r.get(e)[t]=!0;return!0};for(let n of t.issues)o(n,`l`)||e.issues.push(n);for(let t of n.issues)o(t,`r`)||e.issues.push(t);let s=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(s.length){let t=i?s.filter(e=>i.keys.includes(e)):[];t.length&&e.issues.push({...i,keys:t});for(let n of s)!t.includes(n)&&a.has(n)&&e.issues.push(a.get(n))}let c=xi(t.value,n.value);if(!c.valid){if(lt(e))return e;throw Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`)}return e.value=c.data,e}const Ci=v(`$ZodTuple`,(e,t)=>{x.init(e,t);let n=t.items,r=y.memoizer;r?.attach(e),e._zod.parse=(i,a)=>{let o=i.value;if(!Array.isArray(o))return i.issues.push({input:o,inst:e,expected:`tuple`,code:`invalid_type`}),i;i.value=r?r.alloc(e,i,[],a):[];let s=[],c=wi(n,`optin`),l=wi(n,`optout`);if(!t.rest){if(o.length<c)return i.issues.push({code:`too_small`,minimum:c,inclusive:!0,input:o,inst:e,origin:`array`}),i;o.length>n.length&&i.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:o,inst:e,origin:`array`})}let u=Array(n.length),d=t.rest?a?.abortEarly:void 0,f=!1;for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:o[e],issues:[]},a);t instanceof Promise?s.push(t.then(t=>{u[e]=t})):(u[e]=t,d&&!f&&t.issues.length&&(f=lt(t)))}if(t.rest&&!f){let e=n.length-1,r=o.slice(n.length),c=i.issues.length;for(let n of r){if(d&&i.issues.length!==c){if(lt(i,c))break;c=i.issues.length}e++;let r=t.rest._zod.run({value:n,issues:[]},a);r instanceof Promise?s.push(r.then(t=>Ti(t,i,e))):Ti(r,i,e)}}return s.length?Promise.all(s).then(()=>Ei(u,i,n,o,l)):Ei(u,i,n,o,l)}});function wi(e,t){for(let n=e.length-1;n>=0;n--)if(!(t===`optin`?e[n]._zod.optin!==void 0:e[n]._zod.optout===`optional`))return n+1;return 0}function Ti(e,t,n){e.issues.length&&t.issues.push(...dt(n,e.issues)),t.value[n]=e.value}function Ei(e,t,n,r,i){for(let a=0;a<n.length;a++){let o=e[a],s=a<r.length;if(!s&&a>=i&&n[a]._zod.optin===`optional`){t.value.length=a;break}if(o.issues.length){if(!s&&a>=i){t.value.length=a;break}t.issues.push(...dt(a,o.issues))}t.value[a]=o.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}const Di=v(`$ZodRecord`,(e,t)=>{x.init(e,t);let n=y.memoizer;n?.attach(e),e._zod.parse=(r,i)=>{let a=r.value;if(!Ge(a))return r.issues.push({expected:`record`,code:`invalid_type`,input:a,inst:e}),r;let o=[],s=t.keyType._zod.values;if(s&&!t.partial){r.value=n?n.alloc(e,r,{},i):{};let c=new Set;for(let n of s)if(typeof n==`string`||typeof n==`number`||typeof n==`symbol`){if(c.add(typeof n==`number`?n.toString():n),n===`__proto__`)continue;let s=t.keyType._zod.run({value:n,issues:[]},i);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(s.issues.length){r.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>mt(e,i,Lt())),input:n,path:[n],inst:e});continue}let l=s.value;if(l===`__proto__`)continue;let u=t.valueType._zod.run({value:a[n],issues:[]},i);u instanceof Promise?o.push(u.then(e=>{e.issues.length&&r.issues.push(...dt(n,e.issues)),r.value[l]=e.value})):(u.issues.length&&r.issues.push(...dt(n,u.issues)),r.value[l]=u.value)}let l;for(let e in a)if(!c.has(e))if(t.mode===`loose`){if(e===`__proto__`)continue;r.value[e]=a[e]}else l??=[],l.push(e);l&&l.length>0&&r.issues.push({code:`unrecognized_keys`,input:a,inst:e,keys:l,continue:!0})}else{r.value=n?n.alloc(e,r,{},i):{};let c;for(let n of Reflect.ownKeys(a)){if(n===`__proto__`||!Object.prototype.propertyIsEnumerable.call(a,n))continue;let l=t.keyType._zod.run({value:n,issues:[]},i);if(l instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof n==`string`&&Hn.test(n)&&l.issues.length){let e=t.keyType._zod.run({value:Number(n),issues:[]},i);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(l=e)}if(l.issues.length){t.mode===`loose`?r.value[n]=a[n]:s?(c??=[],c.push(n)):r.issues.push({code:`invalid_key`,origin:`record`,issues:l.issues.map(e=>mt(e,i,Lt())),input:n,path:[n],inst:e});continue}let u=l.value;if(u===`__proto__`)continue;let d=t.valueType._zod.run({value:a[n],issues:[]},i);d instanceof Promise?o.push(d.then(e=>{e.issues.length&&r.issues.push(...dt(n,e.issues)),r.value[u]=e.value})):(d.issues.length&&r.issues.push(...dt(n,d.issues)),r.value[u]=d.value)}c&&c.length>0&&r.issues.push({code:`unrecognized_keys`,input:a,inst:e,keys:c,continue:!0})}return o.length?Promise.all(o).then(()=>r):r}}),Oi=v(`$ZodEnum`,(e,t)=>{x.init(e,t);let n=Te(t.entries),r=new Set(n);e._zod.values=r,_(e,`pattern`,e=>{let t=Te(e.def.entries).filter(e=>qe.has(typeof e));return RegExp(t.length?`^(${t.map(e=>Je(e.toString())).join(`|`)})$`:`^[^\\s\\S]$`)}),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),ki=v(`$ZodLiteral`,(e,t)=>{x.init(e,t);let n=new Set(t.values);e._zod.values=n,_(e,`pattern`,e=>{let t=e.def.values;return RegExp(t.length?`^(${t.map(e=>typeof e==`string`?Je(e):e?Je(e.toString()):String(e)).join(`|`)})$`:`^[^\\s\\S]$`)}),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),Ai=v(`$ZodTransform`,(e,t)=>{x.init(e,t),e._zod.optin=`optional`,y.memoizer?.guard(e),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new It(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new Ft;return n.value=i,n}});function ji(e,t){return e.value=t.issues.length?void 0:t.value,e}const Mi=v(`$ZodOptional`,(e,t)=>{x.init(e,t),_(e,`optin`,e=>e.def.innerType._zod.optin===`defaulted`?`defaulted`:`optional`),e._zod.optout=`optional`,_(e,`values`,e=>{let t=e.def.innerType._zod.values;return t?new Set([...t,void 0]):void 0}),_(e,`pattern`,e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${je(t.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(e.value===void 0){if(t.innerType._zod.optin!==`defaulted`)return e;let r=t.innerType._zod.run({value:e.value,issues:[]},n);return r instanceof Promise?r.then(t=>ji(e,t)):ji(e,r)}return t.innerType._zod.run(e,n)}}),Ni=v(`$ZodExactOptional`,(e,t)=>{Mi.init(e,t),_(e,`values`,e=>e.def.innerType._zod.values),_(e,`pattern`,e=>e.def.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),Pi=v(`$ZodNullable`,(e,t)=>{x.init(e,t),_(e,`optin`,e=>e.def.innerType._zod.optin),_(e,`optout`,e=>e.def.innerType._zod.optout),_(e,`pattern`,e=>{let t=e.def.innerType._zod.pattern;return t?RegExp(`^(${je(t.source)}|null)$`):void 0}),_(e,`values`,e=>e.def.innerType._zod.values?new Set([...e.def.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),Fi=v(`$ZodDefault`,(e,t)=>{x.init(e,t),e._zod.optin=`defaulted`,_(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Ii(e,t)):Ii(r,t)}});function Ii(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Li=v(`$ZodPrefault`,(e,t)=>{x.init(e,t),e._zod.optin=`defaulted`,_(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Ri=v(`$ZodNonOptional`,(e,t)=>{x.init(e,t),_(e,`values`,e=>{let t=e.def.innerType._zod.values;return t?new Set([...t].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>zi(t,e)):zi(i,e)}});function zi(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}function Bi(e,t,n,r){return t.issues.length?(e.value=n.catchValue({...t,value:e.value,error:{issues:t.issues.map(e=>mt(e,r,Lt()))},input:e.value}),e):(e.value=t.value,t.memo&&(e.memo=!0),e)}const Vi=v(`$ZodCatch`,(e,t)=>{x.init(e,t),_(e,`optin`,e=>e.def.innerType._zod.optin===`defaulted`?`defaulted`:`optional`),_(e,`optout`,e=>e.def.innerType._zod.optout),_(e,`values`,e=>e.def.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run({value:e.value,issues:[]},n);return r instanceof Promise?r.then(r=>Bi(e,r,t,n)):Bi(e,r,t,n)}}),Hi=v(`$ZodPipe`,(e,t)=>{x.init(e,t),_(e,`values`,e=>e.def.in._zod.values),_(e,`optin`,e=>e.def.in._zod.optin),_(e,`optout`,e=>e.def.out._zod.optout),_(e,`propValues`,e=>e.def.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Ui(e,t.in,n)):Ui(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Ui(e,t.out,n)):Ui(r,t.out,n)}});function Ui(e,t,n){return e.issues.some(e=>e.code!==`unrecognized_keys`)?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Wi=v(`$ZodCodec`,(e,t)=>{x.init(e,t),_(e,`values`,e=>e.def.in._zod.values),_(e,`optin`,e=>e.def.in._zod.optin),_(e,`optout`,e=>e.def.out._zod.optout),_(e,`propValues`,e=>e.def.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Gi(e,t,n)):Gi(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Gi(e,t,n)):Gi(r,t,n)}}});function Gi(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>Ki(e,r,t.out,n)):Ki(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>Ki(e,r,t.in,n)):Ki(e,r,t.in,n)}}function Ki(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}const qi=v(`$ZodPreprocess`,(e,t)=>{Hi.init(e,t)}),Ji=v(`$ZodReadonly`,(e,t)=>{x.init(e,t),_(e,`propValues`,e=>e.def.innerType._zod.propValues),_(e,`values`,e=>e.def.innerType._zod.values),_(e,`optin`,e=>e.def.innerType?._zod?.optin),_(e,`optout`,e=>e.def.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Yi):Yi(r)}});function Yi(e){return e.memo||(e.value=Object.freeze(e.value)),e}const Xi=v(`$ZodCustom`,(e,t)=>{b.init(e,t),x.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>Zi(t,n,r,e));Zi(i,n,r,e)}});function Zi(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(yt(e))}}var Qi=class extends Error{constructor(){super(`Cannot parse a reference cycle that closes through a transform`),this.name=`ZodCyclicError`}};const $i=`~memo`,ea=[];function ta(e){return typeof e==`object`&&!!e}function na(e){return e.map(e=>e.path?{...e,path:e.path.slice()}:{...e})}const ra=new WeakMap;function ia(e,t,n){let r=ra.get(e);if(r!==void 0)return r?2:0;if(t.has(e))return 2;t.add(e);let i=0,a=e=>{if(i!==2&&e?._zod){let r=ia(e,t,n);r>i&&(i=r)}},o=(e,r)=>{let i=0;for(let a of Reflect.ownKeys(e)){let o=Object.getOwnPropertyDescriptor(e,a);if(r&&!o.enumerable)continue;let s=o.get?1:o.value?._zod?ia(o.value,t,n):0;s>i&&(i=s)}return i},s=e=>{e>i&&(i=e)},c=e._zod.def;switch(c.type){case`object`:{let e=Pe(c);s(e?o(e,!0):1),a(c.catchall);break}case`array`:a(c.element);break;case`tuple`:for(let e of c.items)a(e);a(c.rest);break;case`record`:case`map`:a(c.keyType),a(c.valueType);break;case`set`:a(c.valueType);break;case`union`:for(let e of c.options)a(e);break;case`intersection`:a(c.left),a(c.right);break;case`optional`:case`nullable`:case`default`:case`prefault`:case`catch`:case`readonly`:case`nonoptional`:case`promise`:case`success`:a(c.innerType);break;case`pipe`:a(c.in),a(c.out);break;case`function`:a(c.input),a(c.output);break;case`lazy`:{let r=c._cachedInner??(n?e._zod.innerType:void 0);s(r?ia(r,t,!1):1);break}case`template_literal`:case`string`:case`number`:case`int`:case`boolean`:case`bigint`:case`symbol`:case`undefined`:case`null`:case`void`:case`never`:case`any`:case`unknown`:case`date`:case`nan`:case`enum`:case`literal`:case`file`:case`transform`:case`custom`:break;default:for(let e in c){let t=Object.getOwnPropertyDescriptor(c,e);if(!t||t.get)continue;let n=t.value;if(!(!n||typeof n!=`object`)){if(n._zod)a(n);else if(Array.isArray(n))for(let e of n)a(e)}}}return t.delete(e),aa(e,i)}function aa(e,t){return t!==1&&ra.set(e,t===2),t}function oa(e,t){let n=e.buckets.get(t);return n||(n=new WeakMap,e.buckets.set(t,n)),n}let sa;const ca=[],la={alloc(e,t,n){let r=sa;if(!r)return n;sa=void 0;let i={value:n,issues:null};return r.set(t.value,i),ca.push(i),n},guard(e){var t;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,n=(e,n)=>{if(n.direction!==`backward`&&da(n,e.value))throw new Qi;return t(e,n)};e._zod.parse=n,e._zod.run===t&&(e._zod.run=n)})},attach(e){var t;let n,r=!1,i,a;(t=e._zod).deferred??(t.deferred=[]),e._zod.deferred.push(()=>{let t=e._zod.parse,o=(s,c)=>{if(n===void 0){let i=ia(e,new Set,!1);if(i===0)return e._zod.parse=t,e._zod.run===o&&(e._zod.run=t),t(s,c);i===2||r?n=!0:r=!0}let l=s.value;if(!ta(l))return t(s,c);let u=c[$i];u||(u={buckets:new WeakMap,backEdges:void 0},c[$i]=u);let d;i===c?d=a:(d=oa(u,e),i=c,a=d);let f=d.get(l);if(f)return s.value=f.value,f.issues?f.issues.length&&s.issues.push(...na(f.issues)):(s.memo=!0,u.backEdges??=new WeakSet,u.backEdges.add(f.value)),s;sa=d;let p=ca.length,m=t(s,c);sa=void 0;let ee=ca.length>p?ca.pop():void 0;return m instanceof Promise?m.then(e=>(ee&&(ee.issues=e.issues.length?na(e.issues):ea),e)):(ee&&(ee.issues=m.issues.length?na(m.issues):ea),m)};e._zod.parse=o,e._zod.run===t&&(e._zod.run=o)})}};function ua(){return la}function da(e,t){let n=e[$i]?.backEdges;return n!==void 0&&ta(t)&&n.has(t)}const fa=()=>{let e={string:{unit:`characters`,verb:`to have`},file:{unit:`bytes`,verb:`to have`},array:{unit:`items`,verb:`to have`},set:{unit:`items`,verb:`to have`},map:{unit:`entries`,verb:`to have`}};function t(t){return e[t]??null}let n={regex:`input`,email:`email address`,url:`URL`,emoji:`emoji`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO datetime`,date:`ISO date`,time:`ISO time`,duration:`ISO duration`,ipv4:`IPv4 address`,ipv6:`IPv6 address`,mac:`MAC address`,cidrv4:`IPv4 range`,cidrv6:`IPv6 range`,base64:`base64-encoded string`,base64url:`base64url-encoded string`,json_string:`JSON string`,e164:`E.164 number`,currency_code:`currency code`,credit_card:`credit card number`,iban:`IBAN`,jwt:`JWT`,template_literal:`input`},r={nan:`NaN`};function i(e,t){return e===`number`&&typeof t==`number`&&!Number.isFinite(t)?String(t):r[e]??e}return e=>{switch(e.code){case`invalid_type`:return`Invalid input: expected ${i(e.expected)}, received ${i(vt(e.input),e.input)}`;case`invalid_value`:return e.values.length===1?`Invalid input: expected ${Xe(e.values[0])}`:`Invalid option: expected one of ${Ee(e.values,`|`)}`;case`too_big`:{let n=e.exact?`exactly `:e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Too big: expected ${e.origin??`value`} to have ${n}${e.maximum.toString()} ${r.unit??`elements`}`:`Too big: expected ${e.origin??`value`} to be ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.exact?`exactly `:e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Too small: expected ${e.origin} to have ${n}${e.minimum.toString()} ${r.unit}`:`Too small: expected ${e.origin} to be ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Invalid string: must start with "${t.prefix}"`:t.format===`ends_with`?`Invalid string: must end with "${t.suffix}"`:t.format===`includes`?`Invalid string: must include "${t.includes}"`:t.format===`regex`?`Invalid string: must match pattern ${t.pattern}`:`Invalid ${n[t.format]??e.format}`}case`not_multiple_of`:return`Invalid number: must be a multiple of ${e.divisor}`;case`unrecognized_keys`:return`Unrecognized key${e.keys.length>1?`s`:``}: ${Ee(e.keys,`, `)}`;case`invalid_key`:return`Invalid key in ${e.origin}`;case`invalid_union`:return e.options&&Array.isArray(e.options)&&e.options.length>0?`Invalid discriminator value. Expected ${e.options.map(e=>`'${e}'`).join(` | `)}`:e.inclusive===!1?`Invalid input: more than one option matched`:`Invalid input`;case`invalid_element`:return`Invalid value in ${e.origin}`;default:return`Invalid input`}}};function pa(){return{localeError:fa()}}var ma,ha=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function ga(){return new ha}(ma=globalThis).__zod_globalRegistry??(ma.__zod_globalRegistry=ga());const _a=globalThis.__zod_globalRegistry;function va(e){return e.checks&&=[...e.checks],e}function ya(e,t){return new e(va({type:`string`,...g(t)}))}function ba(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...g(t)})}function xa(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...g(t)})}function Sa(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...g(t)})}function Ca(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...g(t)})}function wa(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...g(t)})}function Ta(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...g(t)})}function Ea(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...g(t)})}function Da(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...g(t)})}function Oa(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...g(t)})}function ka(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...g(t)})}function Aa(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...g(t)})}function ja(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...g(t)})}function Ma(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...g(t)})}function Na(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...g(t)})}function Pa(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...g(t)})}function Fa(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...g(t)})}function Ia(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...g(t)})}function La(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...g(t)})}function Ra(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...g(t)})}function za(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...g(t)})}function Ba(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...g(t)})}function Va(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...g(t)})}function Ha(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...g(t)})}function Ua(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...g(t)})}function Wa(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...g(t)})}function Ga(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...g(t)})}function Ka(e,t){return new e(va({type:`number`,checks:[],...g(t)}))}function qa(e,t){return new e(va({type:`number`,coerce:!0,checks:[],...g(t)}))}function Ja(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...g(t)})}function Ya(e,t){return new e({type:`boolean`,...g(t)})}function Xa(e,t){return new e({type:`null`,...g(t)})}function Za(e){return new e({type:`any`})}function Qa(e){return new e({type:`unknown`})}function $a(e,t){return new e({type:`never`,...g(t)})}function eo(e,t){return new e({type:`date`,coerce:!0,...g(t)})}function to(e,t){return new Yn({check:`less_than`,...g(t),value:e,inclusive:!1})}function no(e,t){return new Yn({check:`less_than`,...g(t),value:e,inclusive:!0})}function ro(e,t){return new Xn({check:`greater_than`,...g(t),value:e,inclusive:!1})}function io(e,t){return new Xn({check:`greater_than`,...g(t),value:e,inclusive:!0})}function ao(e,t){return new Zn({check:`multiple_of`,...g(t),value:e})}function oo(e,t){return new $n({check:`max_length`,...g(t),maximum:e})}function so(e,t){return new er({check:`min_length`,...g(t),minimum:e})}function co(e,t){return new tr({check:`length_equals`,...g(t),length:e})}function lo(e,t){return new rr({check:`string_format`,format:`regex`,...g(t),pattern:e})}function uo(e){return new ir({check:`string_format`,format:`lowercase`,...g(e)})}function fo(e){return new ar({check:`string_format`,format:`uppercase`,...g(e)})}function po(e,t){return new or({check:`string_format`,format:`includes`,...g(t),includes:e})}function mo(e,t){return new sr({check:`string_format`,format:`starts_with`,...g(t),prefix:e})}function ho(e,t){return new cr({check:`string_format`,format:`ends_with`,...g(t),suffix:e})}function go(e){return new lr({check:`overwrite`,tx:e})}function _o(e){return go(t=>t.normalize(e))}function vo(){return go(e=>e.trim())}function yo(){return go(e=>e.toLowerCase())}function bo(){return go(e=>e.toUpperCase())}function xo(){return go(e=>Ve(e))}function So(e,t,n){return new e({type:`array`,element:t,...g(n)})}function Co(e,t,n){let r=g(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function wo(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...g(n)})}function To(e,t){let n=Eo(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(yt(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,`input`in r||(r.input=t.value),r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(yt(r))}},e(t.value,t)),t);return n}function Eo(e,t){let n=new b({check:`custom`,...g(t)});return n._zod.check=e,n}function Do(e,t){let n=g(t),r=n.truthy??[`true`,`1`,`yes`,`on`,`y`,`enabled`],i=n.falsy??[`false`,`0`,`no`,`off`,`n`,`disabled`];n.case!==`sensitive`&&(r=r.map(e=>typeof e==`string`?e.toLowerCase():e),i=i.map(e=>typeof e==`string`?e.toLowerCase():e));let a=new Set(r),o=new Set(i),s=e.Codec??Wi,c=e.Boolean??ni,l=new s({type:`pipe`,in:new(e.String??hr)({type:`string`,error:n.error}),out:new c({type:`boolean`,error:n.error}),transform:((e,t)=>{let r=e;return n.case!==`sensitive`&&(r=r.toLowerCase()),a.has(r)?!0:o.has(r)?!1:(t.issues.push({code:`invalid_value`,expected:`stringbool`,values:[...a,...o],input:t.value,inst:l,continue:!1}),{})}),reverseTransform:((e,t)=>e===!0?r[0]||`true`:i[0]||`false`),error:n.error});return l._zod.bag.truthy=r,l._zod.bag.falsy=i,l._zod.bag.case=n.case??`insensitive`,l}function Oo(e,...t){for(let n of t)for(let t of Reflect.ownKeys(n))Object.prototype.propertyIsEnumerable.call(n,t)&&Ne(e,t,n[t]);return e}function ko(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??_a,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,sharedDefsExtractedFor:void 0,sharedEmitDoneFor:void 0,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,intersections:[],deferred:[],external:e?.external??void 0}}function Ao(e,t,n,r,i){let a=typeof t.unrepresentable==`function`?t.unrepresentable({zodSchema:e,path:r.path,message:i}):t.unrepresentable;if(a===`any`)return!1;if(a===void 0||a===`throw`)throw Error(i);return Object.assign(n,a),!0}function C(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o),t.sharedDefsExtractedFor=void 0,t.sharedEmitDoneFor=void 0;let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,C(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Oo(o.schema,c),t.io===`input`&&w(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function jo(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}function Mo(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);if(e.external&&e.sharedDefsExtractedFor===e.external)return;let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${jo(a)}`}}let i=`#/${r}/`;if(t[1]===n&&!t[1].schema.id)return{ref:`#`};let a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+jo(a)}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
|
|
68
|
+
|
|
69
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}r.count>1&&e.reused===`ref`&&a(n)}e.external&&(e.sharedDefsExtractedFor=e.external)}function No(e){let t=e.anyOf;if(!Array.isArray(t)||t.length===0||e.type!==void 0)return;let n=[];for(let e of t){if(!e||typeof e!=`object`)return;No(e);let t=Object.keys(e);if(t.length!==1||t[0]!==`type`)return;let r=e.type;for(let e of Array.isArray(r)?r:[r]){if(typeof e!=`string`)return;n.includes(e)||n.push(e)}}delete e.anyOf,e.type=n.length===1?n[0]:n}const Po=new Set([`type`,`properties`,`required`,`additionalProperties`]),Fo=[`oneOf`,`anyOf`];function Io(e){let t=e.additionalProperties;return t===void 0||t===!1||typeof t!=`object`||!t?null:Object.keys(t).length?t:null}function Lo(e){let t=[];for(let n of e){if(typeof n!=`object`||n.type!==`object`)return null;for(let e in n)if(!Po.has(e))return null;t.push(n)}let n={},r=new Set;for(let e of t){for(let r in e.properties){if(Object.prototype.hasOwnProperty.call(n,r))continue;let e=[];for(let n of t){let t=n.properties?.[r]??Io(n);t!=null&&(e.some(e=>JSON.stringify(e)===JSON.stringify(t))||e.push(t))}Ne(n,r,e.length===1?e[0]:Lo(e)??{allOf:e})}for(let t of e.required??[])r.add(t)}let i={type:`object`,properties:n};if(r.size&&(i.required=[...r]),t.every(e=>e.additionalProperties===!1))i.additionalProperties=!1;else{let e=[];for(let n of t){let t=Io(n);t&&!e.some(e=>JSON.stringify(e)===JSON.stringify(t))&&e.push(t)}e.length===1?i.additionalProperties=e[0]:e.length>1&&(i.additionalProperties={allOf:e})}return i}function Ro(e){let t=e.allOf;if(!Array.isArray(t)||t.length<2)return;for(let t of Po)if(t in e)return;let n=t.filter(e=>Fo.some(t=>Array.isArray(e[t]))),r=null;if(!n.length)r=Lo(t);else{let e=n[0],i=Fo.find(t=>Array.isArray(e[t]));if(Object.keys(e).length!==1)return;let a=t.filter(t=>t!==e),o=e[i].map(e=>Lo([...a,e]));if(o.some(e=>!e))return;r={[i]:o}}r&&(delete e.allOf,Oo(e,r))}function zo(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Oo(i,s),Oo(i,a),t._zod.parent===o)for(let e in i)e!==`$ref`&&e!==`allOf`&&(e in a||delete i[e]);if(s.$ref&&n.def)for(let e in i)e!==`$ref`&&e!==`allOf`&&e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e!==`$ref`&&e!==`allOf`&&e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};if(!e.external||e.sharedEmitDoneFor!==e.external){for(let t of[...e.seen.entries()].reverse())r(t[0]);if(e.target!==`openapi-3.0`)for(let t of e.seen.entries())No(t[1].def??t[1].schema);for(let t of e.deferred)t();if(e.intersections.length){let t=new Map;for(let n of e.seen.values())for(let e of[n.schema,n.def]){let n=e?.allOf;if(!Array.isArray(n))continue;let r=t.get(n);r?r.push(e):t.set(n,[e])}for(let n of e.intersections)for(let e of t.get(n)??[])Ro(e)}}let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Oo(i,n.defId?n.schema:n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};if(!e.external||e.sharedEmitDoneFor!==e.external)for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,Ne(o,e.defId,e.def))}e.external&&(e.sharedEmitDoneFor=e.external),e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:Vo(t,`input`,e.processors),output:Vo(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function w(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return w(r.element,n);if(r.type===`set`)return w(r.valueType,n);if(r.type===`lazy`)return w(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`||r.type===`catch`)return w(r.innerType,n);if(r.type===`intersection`)return w(r.left,n)||w(r.right,n);if(r.type===`record`||r.type===`map`)return w(r.keyType,n)||w(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:w(r.in,n)||w(r.out,n);if(r.type===`object`){for(let e in r.shape)if(w(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(w(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(w(e,n))return!0;return!!(r.rest&&w(r.rest,n))}return!1}const Bo=(e,t={})=>n=>{let r=ko({...n,processors:t});return C(e,r),Mo(r,e),zo(r,e)},Vo=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=ko({...i??{},target:a,io:t,processors:n});return C(e,o),Mo(o,e),zo(o,e)},Ho=(e,t,n)=>{(e[t]===void 0||n>e[t])&&(e[t]=n)},Uo=(e,t,n)=>{(e[t]===void 0||n<e[t])&&(e[t]=n)},Wo=(e,t)=>{Ho(e,`minimum`,t),Uo(e,`maximum`,t)},Go=(e,t)=>{e.multipleOf??=[],e.multipleOf.includes(t)||e.multipleOf.push(t)},Ko=(e,t)=>{e.patterns??=new Set,e.patterns.add(t)},qo=(e,t)=>{e.mime=e.mime?e.mime.filter(e=>t.includes(e)):[...t]},Jo=(e,t)=>{e.format=t,t.includes(`int`)&&(e.isInt=!0)},Yo=(e,t)=>Ho(e,`minimum`,t.minimum),Xo=(e,t)=>Uo(e,`maximum`,t.maximum),Zo=e=>(t,n)=>{Jo(t,n.format);let[r,i]=e[n.format];Ho(t,`minimum`,r),Uo(t,`maximum`,i)},Qo={greater_than:(e,t)=>Ho(e,t.inclusive?`minimum`:`exclusiveMinimum`,t.value),less_than:(e,t)=>Uo(e,t.inclusive?`maximum`:`exclusiveMaximum`,t.value),multiple_of:(e,t)=>Go(e,t.value),number_format:Zo(Qe),bigint_format:Zo($e),min_length:Yo,max_length:Xo,length_equals:(e,t)=>Wo(e,t.length),min_size:Yo,max_size:Xo,size_equals:(e,t)=>Wo(e,t.size),string_format:(e,t)=>{Jo(e,t.format),t.pattern&&Ko(e,t.pattern),(t.format===`base64`||t.format===`base64url`)&&(e.contentEncoding=t.format),(t.local||t.precision===-1)&&(e.laxFormat=!0)},mime_type:(e,t)=>qo(e,t.mime)};function T(e){let t={},n=e._zod.def,r=e._zod.traits.has(`$ZodCheck`)?[e,...n.checks??[]]:n.checks??[];for(let e of r)Qo[e._zod.def.check]?.(t,e._zod.def);let i=e._zod.bag;i.minimum!==void 0&&Ho(t,`minimum`,i.minimum),i.exclusiveMinimum!==void 0&&Ho(t,`exclusiveMinimum`,i.exclusiveMinimum),i.maximum!==void 0&&Uo(t,`maximum`,i.maximum),i.exclusiveMaximum!==void 0&&Uo(t,`exclusiveMaximum`,i.exclusiveMaximum),i.multipleOf!==void 0&&Go(t,i.multipleOf),i.format!==void 0&&(t.format??=i.format,i.format.includes(`int`)&&(t.isInt=!0)),i.mime&&qo(t,i.mime);for(let e of i.patterns??[])Ko(t,e);return t}const $o={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},es=new Map([[Kr,An],[Jr,jn]]),ts=e=>es.get(e)??e,ns=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l,laxFormat:u}=T(e);if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=$o[s]??s,i.format===``&&delete i.format,(s===`time`||u)&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c].map(ts);e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},rs=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,multipleOf:s,exclusiveMaximum:c,exclusiveMinimum:l,isInt:u}=T(e);i.type=u?`integer`:`number`;let d=typeof l==`number`&&l>=(a??-1/0),f=typeof c==`number`&&c<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;if(d?p?(i.minimum=l,i.exclusiveMinimum=!0):i.exclusiveMinimum=l:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=c,i.exclusiveMaximum=!0):i.exclusiveMaximum=c:typeof o==`number`&&(i.maximum=o),s){let n=new Set;for(let a of s)Number.isFinite(a)&&a!==0?n.add(Math.abs(a)):Ao(e,t,i,r,`A multipleOf divisor of ${a} cannot be represented in JSON Schema`);let[a,...o]=n;a!==void 0&&(i.multipleOf=a),o.length&&(i.allOf=[...i.allOf??[],...o.map(e=>({multipleOf:e}))])}},is=(e,t,n,r)=>{n.type=`boolean`},as=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},os=(e,t,n,r)=>{n.not={}},ss=(e,t,n,r)=>{Ao(e,t,n,r,`Date cannot be represented in JSON Schema`)},cs=(e,t,n,r)=>{let i=e._zod.def,a=Te(i.entries);if(a.length===0){n.not={};return}a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},ls=(e,t,n,r)=>{let i=e._zod.def;if(i.values.length===0){n.not={};return}let a=[];for(let o of i.values)if(o===void 0){if(Ao(e,t,n,r,"Literal `undefined` cannot be represented in JSON Schema"))return}else if(typeof o==`bigint`){if(Ao(e,t,n,r,`BigInt literals cannot be represented in JSON Schema`))return;a.push(Number(o))}else a.push(o);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},us=(e,t,n,r)=>{Ao(e,t,n,r,`Custom types cannot be represented in JSON Schema`)},ds=(e,t,n,r)=>{Ao(e,t,n,r,`Transforms cannot be represented in JSON Schema`)},fs=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=T(e);typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=C(a.element,t,{...r,path:[...r.path,`items`]})};function ps(e){let t=e._zod.def;return t.type===`pipe`&&t.in._zod.traits.has(`$ZodTransform`)?ps(t.out):t.type===`catch`?ps(t.innerType):e._zod.optin}const ms=(e,t,n,r)=>{let i=n,a=e._zod.def,o=a.shape;if(Object.getOwnPropertySymbols(o).length&&Ao(e,t,i,r,`Symbol keys cannot be represented in JSON Schema`))return;i.type=`object`,i.properties={};for(let e in o)Ne(i.properties,e,C(o[e],t,{...r,path:[...r.path,`properties`,e]}));let s=[];for(let e of Object.keys(o)){let n=a.shape[e];(t.io===`input`?ps(n)===void 0:n._zod.optout===void 0)&&s.push(e)}s.length>0&&(i.required=s),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=C(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},hs=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>C(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},gs=(e,t,n,r)=>{let i=e._zod.def,a=C(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=C(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1,c=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]];n.allOf=c,t.intersections.push(c)},_s=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`array`;let o=t.target===`draft-2020-12`?`prefixItems`:`items`,s=t.target===`draft-2020-12`||t.target===`openapi-3.0`?`items`:`additionalItems`,c=a.items.map((e,n)=>C(e,t,{...r,path:[...r.path,o,n]})),l=a.rest?C(a.rest,t,{...r,path:[...r.path,s,...t.target===`openapi-3.0`?[a.items.length]:[]]}):null,u=a.items.length;for(;u>0;){let e=a.items[u-1];if(!(t.io===`input`?ps(e)!==void 0:e._zod.optout===`optional`))break;u--}let d=a.items.length,f=!a.rest;t.target===`draft-2020-12`?(i.prefixItems=c,f?i.items=!1:l&&(i.items=l),u>0&&(i.minItems=u),f&&(i.maxItems=d)):t.target===`openapi-3.0`?(i.items={anyOf:c},l&&i.items.anyOf.push(l),u>0&&(i.minItems=u),f&&(i.maxItems=d)):(i.items=c,f?i.additionalItems=!1:l&&(i.additionalItems=l),u>0&&(i.minItems=u),f&&(i.maxItems=d));let{minimum:p,maximum:m}=T(e);typeof p==`number`&&(i.minItems=p),typeof m==`number`&&(i.maxItems=m)};function vs(e,t,n){if(t.$ref){if(n.has(t))return t;n.add(t);let r=e.get(t)?.def;if(!r)return t;let i=vs(e,r,n);return i===r?t:i}for(let r of[`anyOf`,`oneOf`]){let i=t[r];if(!Array.isArray(i))continue;let a=i.map(t=>vs(e,t,n));a.some((e,t)=>e!==i[t])&&(t={...t,[r]:a})}let r=Array.isArray(t.type)?t.type:[t.type],i=!r.includes(`string`)&&r.some(e=>e===`number`||e===`integer`),a=t.enum??(t.const===void 0?void 0:[t.const]);if(!i&&!a?.some(e=>typeof e==`number`))return t;let{minimum:o,maximum:s,exclusiveMinimum:c,exclusiveMaximum:l,multipleOf:u,format:d,id:f,...p}=t;return p.enum?p.enum=p.enum.map(e=>typeof e==`number`?String(e):e):typeof p.const==`number`&&(p.const=String(p.const)),i?(p.type=`string`,a||(p.pattern=(r.includes(`number`)?Hn:Vn).source),p):p}const ys=new WeakMap;function bs(e){let t=new Map;for(let n of e.seen.values())n.def&&!t.has(n.schema)&&t.set(n.schema,n);let n=new Map;for(let r of ys.get(e)??[]){let i=e.seen.get(r),a=(i?.def??i?.schema)?.propertyNames;if(!a||a===!0||n.has(a))continue;let o=vs(t,a,new Set);o!==a&&n.set(a,o)}if(n.size)for(let t of e.seen.values())for(let e of[t.schema,t.def]){let t=e&&n.get(e.propertyNames);t&&(e.propertyNames=t)}}const xs=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=T(o).patterns;if(a.mode===`loose`&&s&&s.size>0){let e=C(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)Ne(i.patternProperties,ts(t).source,e)}else{if(t.target===`draft-07`||t.target===`draft-2020-12`){i.propertyNames=C(a.keyType,t,{...r,path:[...r.path,`propertyNames`]});let n=ys.get(t);n||(n=[],ys.set(t,n),t.deferred.push(()=>bs(t))),n.push(e)}i.additionalProperties=C(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]})}let c=o._zod.values,l=t.io===`input`&&ps(a.valueType)!==void 0;if(c&&!a.partial&&!l){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e.map(String))}},Ss=(e,t,n,r)=>{let i=e._zod.def,a=C(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Cs=(e,t,n,r)=>{let i=e._zod.def;C(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},ws=Symbol();function Ts(e,t,n,r,i){let a=!1,o=JSON.stringify(e,(e,t)=>typeof t==`bigint`?(a=!0,null):t);return a?(Ao(t,n,r,i,`BigInt defaults cannot be represented in JSON Schema`),ws):JSON.parse(o)}const Es=(e,t,n,r)=>{let i=e._zod.def;C(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o=Ts(i.defaultValue,e,t,n,r);o!==ws&&(n.default=o)},Ds=(e,t,n,r)=>{let i=e._zod.def;C(i.innerType,t,r);let a=t.seen.get(e);if(a.ref=i.innerType,t.io!==`input`)return;let o=Ts(i.defaultValue,e,t,n,r);o!==ws&&(n._prefault=o)},Os=(e,t,n,r)=>{let i=e._zod.def;C(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{Ao(e,t,n,r,`Dynamic catch values are not supported in JSON Schema`);return}n.default=o},ks=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;C(o,t,r);let s=t.seen.get(e);s.ref=o},As=(e,t,n,r)=>{let i=e._zod.def;C(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},js=(e,t,n,r)=>{let i=e._zod.def;C(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Ms=new WeakSet([Object.prototype,Error.prototype]);function Ns(e,t,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,get(){let e=n(this);return Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0}),e},set(e){Object.defineProperty(this,t,{value:e,configurable:!0,writable:!0})}})}const Ps=v(`ZodError`,(e,t)=>{Wt.init(e,t),e.name=`ZodError`;let n=Object.getPrototypeOf(e);Ms.has(n)||(Ms.add(n),Ns(n,`format`,e=>t=>qt(e,t)),Ns(n,`flatten`,e=>t=>Kt(e,t)),Ns(n,`addIssue`,e=>t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,De,2)}),Ns(n,`addIssues`,e=>t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,De,2)}),Object.defineProperty(n,"isEmpty",{configurable:!0,enumerable:!1,get(){return this.issues.length===0}}))},void 0,{Parent:Error}),Fs=Yt(Ps),Is=Xt(Ps),Ls=Zt(Ps),Rs=$t(Ps),zs=on(Ps),Bs=sn(Ps),Vs=cn(Ps),Hs=ln(Ps),Us=un(Ps),Ws=dn(Ps),Gs=fn(Ps),Ks=pn(Ps);function qs(){y.localeError||Lt(pa())}function Js(){y.memoizer||Lt({memoizer:ua()})}const E=v(`ZodType`,(e,t)=>(qs(),x.init(e,t),e.def=t,e.type=t.type,e),{check(...e){let t=this.def;return this.clone(h(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return Ye(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(_l(e,t))},superRefine(e,t){return this.check(vl(e,t))},overwrite(e){return this.check(go(e))},optional(){return Xc(this)},exactOptional(){return Qc(this)},nullable(){return el(this)},nullish(){return Xc(el(this))},nonoptional(e){return ol(this,e)},array(){return P(this)},or(e){return I([this,e])},and(e){return Bc(this,e)},transform(e){return ul(this,Jc(e))},default(e){return nl(this,e)},prefault(e){return il(this,e)},catch(e){return cl(this,e)},pipe(e){return ul(this,e)},readonly(){return ml(this)},describe(e){let t=this.clone();return _a.add(t,{description:e}),t},meta(...e){if(e.length===0)return _a.get(this);let t=this.clone();return _a.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e,...t){return t.length===0?e(this):e(this,...t)},get"~standard"(){return St(this,`~standard`,{...mr(this),jsonSchema:{input:Vo(this,`input`),output:Vo(this,`output`)}})},set"~standard"(e){xt(this,`~standard`,e)},parse:function e(t,n){return Fs(this,t,n,{callee:e})},parseAsync:async function e(t,n){return await Is(this,t,n,{callee:e})},safeParse(e,t){return Ls(this,e,t)},async safeParseAsync(e,t){return Rs(this,e,t)},get spa(){return this?.safeParseAsync},set spa(e){xt(this,`spa`,e)},validate(e,t){return nn(this,e,t)},validateAsync(e,t){return an(this,e,t)},encode:function e(t,n){return zs(this,t,n,{callee:e})},decode:function e(t,n){return Bs(this,t,n,{callee:e})},encodeAsync:async function e(t,n){return await Vs(this,t,n,{callee:e})},decodeAsync:async function e(t,n){return await Hs(this,t,n,{callee:e})},safeEncode(e,t){return Us(this,e,t)},safeDecode(e,t){return Ws(this,e,t)},async safeEncodeAsync(e,t){return Gs(this,e,t)},async safeDecodeAsync(e,t){return Ks(this,e,t)},toJSONSchema(e){return Bo(this,{})(e)},get description(){return _a.get(this)?.description},get _def(){return this._zod.def}}),Ys=v(`_ZodString`,(e,t)=>{hr.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ns(e,t,n,r)},Ct({format:e=>T(e).format??null,minLength:e=>T(e).minimum??null,maxLength:e=>T(e).maximum??null},{regex(...e){return this.check(lo(...e))},includes(...e){return this.check(po(...e))},startsWith(...e){return this.check(mo(...e))},endsWith(...e){return this.check(ho(...e))},min(...e){return this.check(so(...e))},max(...e){return this.check(oo(...e))},length(...e){return this.check(co(...e))},nonempty(...e){return this.check(so(1,...e))},lowercase(e){return this.check(uo(e))},uppercase(e){return this.check(fo(e))},trim(){return this.check(vo())},normalize(...e){return this.check(_o(...e))},toLowerCase(){return this.check(yo())},toUpperCase(){return this.check(bo())},slugify(){return this.check(xo())}})),Xs=v(`ZodString`,(e,t)=>{hr.init(e,t),Ys.init(e,t)},{email(e){return this.check(ba(tc,e))},url(e){return this.check(Ea(ac,e))},jwt(e){return this.check(Va(xc,e))},emoji(e){return this.check(Da(oc,e))},guid(e){return this.check(xa(rc,e))},uuid(e){return this.check(Sa(ic,e))},uuidv4(e){return this.check(Ca(ic,e))},uuidv6(e){return this.check(wa(ic,e))},uuidv7(e){return this.check(Ta(ic,e))},nanoid(e){return this.check(Oa(sc,e))},cuid(e){return this.check(ka(cc,e))},cuid2(e){return this.check(Aa(lc,e))},ulid(e){return this.check(ja(uc,e))},base64(e){return this.check(Ra(_c,e))},base64url(e){return this.check(za(yc,e))},xid(e){return this.check(Ma(dc,e))},ksuid(e){return this.check(Na(fc,e))},ipv4(e){return this.check(Pa(pc,e))},ipv6(e){return this.check(Fa(mc,e))},cidrv4(e){return this.check(Ia(hc,e))},cidrv6(e){return this.check(La(gc,e))},e164(e){return this.check(Ba(bc,e))},datetime(e){return this.check(Ha(Zs,e))},date(e){return this.check(Ua(Qs,e))},time(e){return this.check(Wa($s,e))},duration(e){return this.check(Ga(ec,e))}});function D(e){return ya(Xs,e)}const O=v(`ZodStringFormat`,(e,t)=>{S.init(e,t),Ys.init(e,t)}),Zs=v(`ZodISODateTime`,(e,t)=>{Pr.init(e,t),O.init(e,t)}),Qs=v(`ZodISODate`,(e,t)=>{Fr.init(e,t),O.init(e,t)}),$s=v(`ZodISOTime`,(e,t)=>{Ir.init(e,t),O.init(e,t)}),ec=v(`ZodISODuration`,(e,t)=>{Lr.init(e,t),O.init(e,t)}),tc=v(`ZodEmail`,(e,t)=>{vr.init(e,t),O.init(e,t)});function nc(e){return ba(tc,e)}const rc=v(`ZodGUID`,(e,t)=>{gr.init(e,t),O.init(e,t)}),ic=v(`ZodUUID`,(e,t)=>{_r.init(e,t),O.init(e,t)});function k(e){return Sa(ic,e)}const ac=v(`ZodURL`,(e,t)=>{Er.init(e,t),O.init(e,t)});function A(e){return Ea(ac,e)}const oc=v(`ZodEmoji`,(e,t)=>{Dr.init(e,t),O.init(e,t)}),sc=v(`ZodNanoID`,(e,t)=>{Or.init(e,t),O.init(e,t)}),cc=v(`ZodCUID`,(e,t)=>{kr.init(e,t),O.init(e,t)}),lc=v(`ZodCUID2`,(e,t)=>{Ar.init(e,t),O.init(e,t)}),uc=v(`ZodULID`,(e,t)=>{jr.init(e,t),O.init(e,t)}),dc=v(`ZodXID`,(e,t)=>{Mr.init(e,t),O.init(e,t)}),fc=v(`ZodKSUID`,(e,t)=>{Nr.init(e,t),O.init(e,t)}),pc=v(`ZodIPv4`,(e,t)=>{Rr.init(e,t),O.init(e,t)}),mc=v(`ZodIPv6`,(e,t)=>{Vr.init(e,t),O.init(e,t)}),hc=v(`ZodCIDRv4`,(e,t)=>{Hr.init(e,t),O.init(e,t)}),gc=v(`ZodCIDRv6`,(e,t)=>{Wr.init(e,t),O.init(e,t)}),_c=v(`ZodBase64`,(e,t)=>{qr.init(e,t),O.init(e,t)});function vc(e){return Ra(_c,e)}const yc=v(`ZodBase64URL`,(e,t)=>{Xr.init(e,t),O.init(e,t)}),bc=v(`ZodE164`,(e,t)=>{Zr.init(e,t),O.init(e,t)}),xc=v(`ZodJWT`,(e,t)=>{$r.init(e,t),O.init(e,t)}),Sc=v(`ZodNumber`,(e,t)=>{ei.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>rs(e,t,n,r),e.isFinite=!0},Ct({minValue:e=>{let{minimum:t,exclusiveMinimum:n}=T(e);return Math.max(t??-1/0,n??-1/0)},maxValue:e=>{let{maximum:t,exclusiveMaximum:n}=T(e);return Math.min(t??1/0,n??1/0)},isInt:e=>{let{isInt:t,multipleOf:n}=T(e);return!!t||!!n?.some(Number.isSafeInteger)},format:e=>T(e).format??null},{gt(e,t){return this.check(ro(e,t))},gte(e,t){return this.check(io(e,t))},min(e,t){return this.check(io(e,t))},lt(e,t){return this.check(to(e,t))},lte(e,t){return this.check(no(e,t))},max(e,t){return this.check(no(e,t))},int(e){return this.check(wc(e))},safe(e){return this.check(wc(e))},positive(e){return this.check(ro(0,e))},nonnegative(e){return this.check(io(0,e))},negative(e){return this.check(to(0,e))},nonpositive(e){return this.check(no(0,e))},multipleOf(e,t){return this.check(ao(e,t))},step(e,t){return this.check(ao(e,t))},finite(){return this}}));function j(e){return Ka(Sc,e)}const Cc=v(`ZodNumberFormat`,(e,t)=>{ti.init(e,t),Sc.init(e,t)});function wc(e){return Ja(Cc,e)}const Tc=v(`ZodBoolean`,(e,t)=>{ni.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>is(e,t,n,r)});function M(e){return Ya(Tc,e)}const Ec=v(`ZodNull`,(e,t)=>{ri.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>as(e,t,n,r)});function Dc(e){return Xa(Ec,e)}const Oc=v(`ZodAny`,(e,t)=>{ii.init(e,t),E.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function kc(){return Za(Oc)}const Ac=v(`ZodUnknown`,(e,t)=>{ai.init(e,t),E.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function N(){return Qa(Ac)}const jc=v(`ZodNever`,(e,t)=>{oi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>os(e,t,n,r)});function Mc(e){return $a(jc,e)}const Nc=v(`ZodDate`,(e,t)=>{si.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ss(e,t,n,r),e.min=(t,n)=>e.check(io(t,n)),e.max=(t,n)=>e.check(no(t,n))},Ct({minDate:e=>{let{minimum:t}=T(e);return t?new Date(t):null},maxDate:e=>{let{maximum:t}=T(e);return t?new Date(t):null}},{})),Pc=v(`ZodArray`,(e,t)=>{Js(),li.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>fs(e,t,n,r),e.element=t.element},{min(e,t){return this.check(so(e,t))},nonempty(e){return this.check(so(1,e))},max(e,t){return this.check(oo(e,t))},length(e,t){return this.check(co(e,t))},unwrap(){return this.element}});function P(e,t){return So(Pc,e,t)}const Fc=v(`ZodObject`,(e,t)=>{Js(),hi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ms(e,t,n,r),kt(e,`shape`,e=>e._zod.def.shape,!1)},{keyof(){return z(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(h(this._zod.def,{catchall:e}))},passthrough(){return this.clone(h(this._zod.def,{catchall:N()}))},loose(){return this.clone(h(this._zod.def,{catchall:N()}))},strict(){return this.clone(h(this._zod.def,{catchall:Mc()}))},strip(){return this.clone(h(this._zod.def,{catchall:void 0}))},extend(e){return rt(this,e)},safeExtend(e){return at(this,e)},merge(e){return ot(this,e)},pick(e){return et(this,e)},omit(e){return nt(this,e)},partial(...e){return st(Yc,this,e[0])},exactPartial(...e){return st(Zc,this,e[0],`exactPartial`)},required(...e){return ct(al,this,e[0])}});function F(e,t){let n={type:`object`,shape:e??{},...g(t)};return new Fc(n)}function Ic(e,t){return new Fc({type:`object`,shape:e,catchall:N(),...g(t)})}const Lc=v(`ZodUnion`,(e,t)=>{_i.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>hs(e,t,n,r),e.options=t.options});function I(e,t){return new Lc({type:`union`,options:e,...g(t)})}const Rc=v(`ZodDiscriminatedUnion`,(e,t)=>{Lc.init(e,t),yi.init(e,t)});function L(e,t,n){return new Rc({type:`union`,options:t,discriminator:e,...g(n)})}const zc=v(`ZodIntersection`,(e,t)=>{bi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>gs(e,t,n,r)});function Bc(e,t){return new zc({type:`intersection`,left:e,right:t})}const Vc=v(`ZodTuple`,(e,t)=>{Js(),Ci.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_s(e,t,n,r)},{rest(e){return this.clone({...this._zod.def,rest:e})},partial(){let e=this._zod.def;if(e.checks?.length)throw Error(`.partial() cannot be used on tuple schemas containing refinements`);return this.clone({...e,items:e.items.map(e=>new Yc({type:`optional`,innerType:e}))})}});function Hc(e,t,n){let r=t instanceof x;return new Vc({type:`tuple`,items:e,rest:r?t:null,...g(r?n:t)})}const Uc=v(`ZodRecord`,(e,t)=>{Js(),Di.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xs(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function R(e,t,n){return!t||!t._zod?new Uc({type:`record`,keyType:D(),valueType:e,...g(t)}):new Uc({type:`record`,keyType:e,valueType:t,...g(n)})}function Wc(e,t,n){return new Uc({type:`record`,keyType:e,valueType:t,...g(n),partial:!0})}const Gc=v(`ZodEnum`,(e,t)=>{Oi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>cs(e,t,n,r),e.enum=t.entries,e.options=[...e._zod.values];let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Gc({...t,checks:[],...g(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Gc({...t,checks:[],...g(r),entries:i})}});function z(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e;return new Gc({type:`enum`,entries:n,...g(t)})}const Kc=v(`ZodLiteral`,(e,t)=>{ki.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ls(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function B(e,t){return new Kc({type:`literal`,values:Array.isArray(e)?e:[e],...g(t)})}const qc=v(`ZodTransform`,(e,t)=>{Js(),Ai.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ds(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new It(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(yt(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,`input`in t||(t.input=n.value),t.inst??=e,n.issues.push(yt(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Jc(e){return new qc({type:`transform`,transform:e})}const Yc=v(`ZodOptional`,(e,t)=>{Mi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>js(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Xc(e){return new Yc({type:`optional`,innerType:e})}const Zc=v(`ZodExactOptional`,(e,t)=>{Ni.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>js(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Qc(e){return new Zc({type:`optional`,innerType:e})}const $c=v(`ZodNullable`,(e,t)=>{Pi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ss(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function el(e){return new $c({type:`nullable`,innerType:e})}const tl=v(`ZodDefault`,(e,t)=>{Fi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Es(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function nl(e,t){return new tl({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ke(t)}})}const rl=v(`ZodPrefault`,(e,t)=>{Li.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ds(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function il(e,t){return new rl({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ke(t)}})}const al=v(`ZodNonOptional`,(e,t)=>{Ri.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Cs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ol(e,t){return new al({type:`nonoptional`,innerType:e,...g(t)})}const sl=v(`ZodCatch`,(e,t)=>{Vi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Os(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function cl(e,t){return new sl({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:At(t)})}const ll=v(`ZodPipe`,(e,t)=>{Hi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ks(e,t,n,r),e.in=t.in,e.out=t.out});function ul(e,t){return new ll({type:`pipe`,in:e,out:t})}const dl=v(`ZodCodec`,(e,t)=>{ll.init(e,t),Wi.init(e,t)}),fl=v(`ZodPreprocess`,(e,t)=>{ll.init(e,t),qi.init(e,t)}),pl=v(`ZodReadonly`,(e,t)=>{Ji.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>As(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ml(e){return new pl({type:`readonly`,innerType:e})}const hl=v(`ZodCustom`,(e,t)=>{Xi.init(e,t),E.init(e,t),e._zod.processJSONSchema=(t,n,r)=>us(e,t,n,r)});function gl(e,t){return Co(hl,e??(()=>!0),t)}function _l(e,t={}){return wo(hl,e,t)}function vl(e,t){return To(e,t)}const yl=(...e)=>Do({Codec:dl,Boolean:Tc,String:Xs},...e);function bl(e,t){return new fl({type:`pipe`,in:Jc(e),out:t})}function V(e){return Ha(Zs,e)}function xl(e){return Ua(Qs,e)}function H(e){return qa(Sc,e)}function Sl(e){return eo(Nc,e)}const U=I([V(),V({precision:-1})]);I([V({offset:!0}),V({offset:!0,precision:-1})]);const Cl=z([`mobile_to_desktop`,`desktop_to_mobile`]),wl=z([`project`,`task`,`asset`,`asset_conflict`]),Tl=F({kind:z([`project`,`task`]),id:k()});F({direction:Cl,target:Tl}),F({workspaceId:k()}),F({workspaceId:k(),notificationId:k()}),F({target:Tl});const El=[`en`,`zh-TW`,`de`,`fr`,`es-ES`,`es-419`,`ja`,`ko`,`it`,`pt-BR`],Dl=z(El).default(`en`);function Ol(e){return e?El.includes(e):!1}function kl(e){return Ol(e)?e:`en`}const Al=[`usage_exhausted`,`payment_failed`,`auto_reload_threshold_exceeded`,`role_changed`,`schedules_agent_deleted`,`agent_binding_removed`,`schedule_run_completed`,`publish_submitted`,`publish_approved`,`publish_rejected`,`task_complete`,`task_waiting_approval`,`workspace_join_request`,`access_request`,`meeting_shared`,`meeting_shared_workspace`,`project_member_added`,`task_shared_to_project`,`task_shared_with_member`,`schedules_calendar_auth_expired`,`agent_monthly_cap_threshold`,`handoff_requested`,`webhook_destination_disabled`,`announcement`],jl=[`info`,`action`],Ml=[`all`,`action`,`info`],Nl=[`low`,`medium`,`high`],Pl=[`web`,`ios`,`android`],W=k(),Fl=z(El),Il=z(Al),Ll=z(jl),Rl=z(Nl),zl=z(Pl);F({workspaceId:W}),F({workspaceId:W,notificationId:W}),F({workspaceId:W,deviceId:W}),F({tab:z(Ml).default(`all`),eventType:I([Il,P(Il)]).transform(e=>Array.isArray(e)?e:[e]).optional(),cursor:D().optional(),limit:H().int().min(1).max(100).default(20),lang:Fl.optional()});const Bl=F({id:D().min(1),labelKey:D().min(1),method:B(`POST`),path:D().min(1),requiresInput:P(F({fieldName:D().min(1),displayNameKey:D().min(1)})).min(1).optional(),style:z([`primary`,`destructive`,`secondary`]).optional()}),Vl=F({scope:z([`workspace`,`team`]),scopeName:D(),oldRole:D(),newRole:D(),canManageMember:M()}),Hl=F({workspaceName:D().min(1)}),Ul=F({workspaceName:D().min(1),invoiceId:D().min(1)}),Wl=F({workspaceName:D().min(1),thresholdUsd:D().min(1),reloadAmountUsd:D().min(1)}),Gl=F({scheduleName:D().min(1),agentName:D().min(1),scheduleId:W}),Kl=F({scheduleName:D().min(1),scheduleId:W}),ql=B([100,80]),Jl=F({agentName:D().min(1),agentId:W,threshold:ql,spentUsd:D().min(1),capUsd:D().min(1)}),Yl=F({destinationId:W,destinationName:D().min(1)}),Xl=F({agentName:D().min(1),resourceName:D().min(1),resourceType:z([`model`,`connector`]),agentId:W}),Zl=F({requesterName:D().min(1),resourceName:D().min(1),resourceType:z([`agent`,`connector`,`skill`]),scope:z([`team`,`workspace`]),teamId:W.optional(),scopeName:D().min(1),inlineActions:P(Bl),publishId:W}),Ql=F({approverName:D().min(1),resourceName:D().min(1),resourceType:z([`agent`,`connector`,`skill`]),resourceId:W}),$l=F({approverName:D().min(1),resourceName:D().min(1),resourceType:z([`agent`,`connector`,`skill`]),reason:D(),actions:P(F({id:z([`resubmit`,`viewResource`]),labelKey:D().min(1),href:D().min(1)})),resourceId:W}),eu=F({workspaceName:D().min(1),requesterEmail:D(),invitationId:W});z([`task`,`preview`,`meeting`]);const tu=F({requesterName:D().min(1),resourceName:D().min(1),resourceId:W}),nu=L(`resourceType`,[tu.extend({resourceType:B([`task`,`preview`]),parentTaskId:W}),tu.extend({resourceType:B(`meeting`),meetingId:W})]),ru=F({meetingId:W,meetingTitle:D().min(1),sharedByName:D().min(1),role:z([`viewer`,`editor`])}),iu=F({meetingId:W,meetingTitle:D().min(1),sharedByName:D().min(1)}),au=F({projectId:W,projectName:D().min(1),addedByName:D().min(1),teamId:W.optional(),teamName:D().min(1).optional()}).refine(e=>e.teamId===void 0==(e.teamName===void 0),{message:`teamId and teamName must be provided together`,path:[`teamName`]}),ou=F({direction:Cl,targetKind:wl,targetId:W}),su=F({taskId:W,taskTitle:D(),projectId:W,projectName:D().min(1),sharedByName:D().min(1)}),cu=F({taskId:W,taskTitle:D(),projectId:W,projectName:D().min(1),sharedByName:D().min(1),teamId:W.optional(),teamName:D().min(1).optional()}).refine(e=>e.teamId===void 0==(e.teamName===void 0),{message:`teamId and teamName must be provided together`,path:[`teamName`]}),lu=F({name:D(),taskTitle:D(),taskId:W}),uu=F({aiResponseSnippet:D(),taskId:W}),du=F({aiResponseSnippet:D(),taskId:W}),fu=F({title:D().min(1).max(200),body:D().min(1).max(2e3),ctaLabel:D().max(80).optional()}),pu=F({en:fu}).catchall(fu),mu=F({notification:B(!0),webPush:M(),mobilePush:M(),email:M()}),hu=z([`notification`,`popup`]),gu=F({announcementId:W,contentI18n:pu,channels:mu,category:Ll,ctaUrl:D().optional(),surface:hu.optional(),mediaKey:D().optional()}),_u=F({id:D().min(1),label:D().min(1),method:B(`POST`),path:D().min(1),style:z([`primary`,`destructive`,`secondary`]).optional(),requiresInput:P(F({fieldName:D().min(1),displayName:D().min(1)})).min(1).optional()}),vu=D().refine(e=>e.startsWith(`/`)||/^https?:\/\//.test(e),{message:`ctaUrl must be an absolute URL or a path starting with /`}),yu=F({title:D(),body:D(),ctaLabel:D().optional(),ctaUrl:vu.optional(),inlineActions:P(_u).optional()}),bu=F({id:W,urgency:Rl,category:Ll,relatedEntityId:D().nullable(),rendered:yu,renderedLocale:Fl,readAt:V().nullable(),processedAt:V().nullable(),createdAt:V()}),xu=L(`eventType`,[F({eventType:B(`role_changed`),payload:Vl}),F({eventType:B(`usage_exhausted`),payload:Hl}),F({eventType:B(`payment_failed`),payload:Ul}),F({eventType:B(`auto_reload_threshold_exceeded`),payload:Wl}),F({eventType:B(`schedules_agent_deleted`),payload:Gl}),F({eventType:B(`schedules_calendar_auth_expired`),payload:Kl}),F({eventType:B(`agent_binding_removed`),payload:Xl}),F({eventType:B(`agent_monthly_cap_threshold`),payload:Jl}),F({eventType:B(`webhook_destination_disabled`),payload:Yl}),F({eventType:B(`schedule_run_completed`),payload:lu}),F({eventType:B(`publish_submitted`),payload:Zl}),F({eventType:B(`publish_approved`),payload:Ql}),F({eventType:B(`publish_rejected`),payload:$l}),F({eventType:B(`task_complete`),payload:uu}),F({eventType:B(`task_waiting_approval`),payload:du}),F({eventType:B(`workspace_join_request`),payload:eu}),F({eventType:B(`access_request`),payload:nu}),F({eventType:B(`meeting_shared`),payload:ru}),F({eventType:B(`meeting_shared_workspace`),payload:iu}),F({eventType:B(`project_member_added`),payload:au}),F({eventType:B(`task_shared_to_project`),payload:su}),F({eventType:B(`task_shared_with_member`),payload:cu}),F({eventType:B(`handoff_requested`),payload:ou}),F({eventType:B(`announcement`),payload:gu})]),Su=bu.and(xu);F({items:P(Su),nextKey:D().optional()}),F({item:Su.nullable()}),F({count:j().int().min(0),capped:M().optional()}),F({deviceType:zl,fcmToken:D().min(1),description:D().max(500).optional()}),F({id:W,createdAt:V()}),F({}).strict();const Cu=L(`kind`,[F({kind:B(`all`)}),F({kind:B(`admins`)}),F({kind:B(`specific`),userIds:P(W).min(1)})]);F({workspaceId:W.nullish(),contentI18n:pu,ctaUrl:A({protocol:/^https?$/}).max(2e3).optional(),urgency:Rl,category:Ll,audience:Cu,channels:mu,surface:hu.default(`notification`),mediaKey:D().min(1).max(100).optional()}).refine(e=>e.audience.kind===`all`||e.workspaceId!=null,{message:`workspaceId is required when audience.kind is 'admins' or 'specific'`,path:[`workspaceId`]}).refine(e=>e.surface!==`popup`||e.ctaUrl!=null,{message:`ctaUrl is required when surface is 'popup'`,path:[`ctaUrl`]}),F({id:W,createdAt:V()});const wu=F({limit:H().int().min(1).max(100).default(20),nextKey:D().optional()}),Tu=F({limit:H().int().min(1).max(100).default(20),offset:H().int().nonnegative().default(0)});F({limit:H().int().min(1).max(100).default(50),beforeVersionNumber:H().int().positive().optional()}).extend({versionNumber:H().int().positive().optional()});const Eu=[e=>!e.editableFirst||!e.createdBy&&!!e.sortBy,{message:`editableFirst requires sortBy and no createdBy`,path:[`editableFirst`]}],Du=[`asc`,`desc`],Ou=[`chatgpt`,`claude`],ku={chatgpt:{modelProvider:`chatgpt-subscription`,modelIdPrefix:`chatgpt-sub/`,connectionFlow:`device-code`},claude:{modelProvider:`claude-subscription`,modelIdPrefix:`claude-sub/`,connectionFlow:`authorization-code`}},Au=z(Ou);F({connections:P(F({provider:Au,status:z([`pending`,`connected`,`expired`,`error`]),accountLabel:D().nullable(),plan:D().nullable(),lastError:D().nullable(),connectedAt:V().nullable()})),connectableProviders:P(Au)}),L(`connectionFlow`,[F({userCode:D(),verificationUrl:A(),expiresAt:V(),pollIntervalSeconds:j().int().positive()}).extend({connectionFlow:B(`device-code`)}),F({connectionFlow:B(`authorization-code`),authorizationUrl:A(),expiresAt:V()})]),F({code:D().trim().min(1).max(4096)}),F({models:P(F({id:D(),name:D(),provider:Au}))});const ju=[`openai`,`anthropic`,`vertex-anthropic`,`vertex-google`,`vertex-google-gemma`,`google`,`openrouter`,`selfhosted`,`apmic`,`cerebras`],Mu=[`none`,`minimal`,`low`,`medium`,`high`,`xhigh`,`max`],Nu=[{id:`gpt-6-astra`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-6 Astra`,description:`Frontier intelligence for the most demanding work`,hiddenInTask:!1,active:!1,contextWindowTokens:105e4,maxOutputTokens:128e3,pricing:{input:`0.000_010`,output:`0.000_050`,cachedInput:`0.000_001`,cacheCreation:`0.000_012_5`,longContext:{input:`0.000_020`,output:`0.000_075`,cachedInput:`0.000_002`,cacheCreation:`0.000_025`}},capabilities:{midConversationSystem:!0,reasoning:!0},tokenCalculator:{kind:`input-context`,thresholdTokens:272e3}},{id:`gpt-6.1-sol`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-6.1 Sol`,description:`Latest workhorse model for coding and everyday work`,hiddenInTask:!1,active:!0,contextWindowTokens:105e4,maxOutputTokens:128e3,pricing:{input:`0.000_002`,output:`0.000_010`,cachedInput:`0.000_000_1`,cacheCreation:`0.000_002_5`,longContext:{input:`0.000_004`,output:`0.000_015`,cachedInput:`0.000_000_2`,cacheCreation:`0.000_005`}},capabilities:{midConversationSystem:!0,reasoning:!0},tokenCalculator:{kind:`input-context`,thresholdTokens:272e3}},{id:`gpt-6-luna`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-6 Luna`,description:`GPT-6 model optimized for cost-sensitive workloads`,hiddenInTask:!1,active:!0,contextWindowTokens:105e4,maxOutputTokens:128e3,pricing:{input:`0.000_000_1`,output:`0.000_000_5`,cachedInput:`0.000_000_01`,cacheCreation:`0.000_000_125`,longContext:{input:`0.000_000_2`,output:`0.000_000_75`,cachedInput:`0.000_000_02`,cacheCreation:`0.000_000_25`}},capabilities:{midConversationSystem:!0,reasoning:!0},tokenCalculator:{kind:`input-context`,thresholdTokens:272e3}},{id:`gpt-5.6-sol`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5.6 Sol`,description:`Frontier model for complex professional work`,hiddenInTask:!1,active:!0,contextWindowTokens:105e4,maxOutputTokens:128e3,pricing:{input:`0.000_004`,output:`0.000_020`,cachedInput:`0.000_000_4`,cacheCreation:`0.000_005`,longContext:{input:`0.000_008`,output:`0.000_030`,cachedInput:`0.000_000_8`,cacheCreation:`0.000_010`}},capabilities:{midConversationSystem:!0,reasoning:!0},tokenCalculator:{kind:`input-context`,thresholdTokens:272e3}},{id:`gpt-5.6-terra`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5.6 Terra`,description:`GPT-5.6 model that balances intelligence and cost`,hiddenInTask:!1,active:!0,contextWindowTokens:105e4,maxOutputTokens:128e3,pricing:{input:`0.000_002`,output:`0.000_012`,cachedInput:`0.000_000_2`,cacheCreation:`0.000_002_5`,longContext:{input:`0.000_004`,output:`0.000_018`,cachedInput:`0.000_000_4`,cacheCreation:`0.000_005`}},capabilities:{midConversationSystem:!0,reasoning:!0},tokenCalculator:{kind:`input-context`,thresholdTokens:272e3}},{id:`gpt-5.6-luna`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5.6 Luna`,description:`GPT-5.6 model optimized for cost-sensitive workloads`,hiddenInTask:!1,active:!0,contextWindowTokens:105e4,maxOutputTokens:128e3,pricing:{input:`0.000_000_2`,output:`0.000_001_2`,cachedInput:`0.000_000_02`,cacheCreation:`0.000_000_25`,longContext:{input:`0.000_000_4`,output:`0.000_001_8`,cachedInput:`0.000_000_04`,cacheCreation:`0.000_000_5`}},capabilities:{midConversationSystem:!0,reasoning:!0},tokenCalculator:{kind:`input-context`,thresholdTokens:272e3}},{id:`gpt-5.5`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5.5`,description:`A new class of intelligence for coding and professional work`,hiddenInTask:!1,active:!0,contextWindowTokens:272e3,maxOutputTokens:64e3,pricing:{input:`0.000_005`,output:`0.000_030`,cachedInput:`0.000_000_5`,longContext:{input:`0.000_010`,output:`0.000_045`,cachedInput:`0.000_001`}},capabilities:{midConversationSystem:!0,reasoning:!0},tokenCalculator:{kind:`input-context`,thresholdTokens:272e3}},{id:`gpt-5.4`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5.4`,description:`A more affordable model for coding and professional work`,hiddenInTask:!1,active:!0,contextWindowTokens:272e3,maxOutputTokens:64e3,pricing:{input:`0.000_002_5`,output:`0.000_015`,cachedInput:`0.000_000_25`,longContext:{input:`0.000_005`,output:`0.000_022_5`,cachedInput:`0.000_000_5`}},capabilities:{midConversationSystem:!0,reasoning:!0},tokenCalculator:{kind:`input-context`,thresholdTokens:272e3}},{id:`gpt-5.4-mini`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5.4 mini`,description:`Our strongest mini model yet for coding, computer use, and subagents`,hiddenInTask:!1,active:!0,contextWindowTokens:272e3,maxOutputTokens:32e3,pricing:{input:`0.000_000_75`,output:`0.000_004_5`,cachedInput:`0.000_000_075`},capabilities:{midConversationSystem:!0,reasoning:!0}},{id:`gpt-5.2`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5.2`,description:`The most advanced frontier model for professional work and long-running agents`,hiddenInTask:!1,active:!1,contextWindowTokens:272e3,maxOutputTokens:64e3,pricing:{input:`0.000_001_75`,output:`0.000_014`,cachedInput:`0.000_000_175`},capabilities:{midConversationSystem:!0,reasoning:!0}},{id:`gpt-5.1`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5.1`,description:`Smarter, more conversational TaskGPT`,hiddenInTask:!1,active:!1,contextWindowTokens:272e3,maxOutputTokens:64e3,pricing:{input:`0.000_001_25`,output:`0.000_010`,cachedInput:`0.000_000_125`},capabilities:{midConversationSystem:!0,reasoning:!0}},{id:`gpt-5`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5`,description:`Smartest, fastest, most useful model from OpenAI`,hiddenInTask:!1,active:!1,contextWindowTokens:272e3,maxOutputTokens:64e3,pricing:{input:`0.000_001_25`,output:`0.000_010`,cachedInput:`0.000_000_125`},capabilities:{midConversationSystem:!0,reasoning:!0}},{id:`gpt-5-mini`,provider:`openai`,reasoning:{effort:`medium`},name:`GPT-5 mini`,description:`Fast for everyday tasks in low-cost`,hiddenInTask:!1,active:!1,contextWindowTokens:272e3,maxOutputTokens:32e3,pricing:{input:`0.000_000_25`,output:`0.000_002`,cachedInput:`0.000_000_025`},capabilities:{midConversationSystem:!0,reasoning:!0}},{id:`o3`,provider:`openai`,reasoning:{effort:`medium`},name:`o3`,description:`Great for advanced reasoning`,hiddenInTask:!1,active:!1,contextWindowTokens:2e5,maxOutputTokens:64e3,pricing:{input:`0.000_002`,output:`0.000_008`,cachedInput:`0.000_000_5`},capabilities:{midConversationSystem:!0,reasoning:!0}},{id:`gpt-4o`,provider:`openai`,name:`GPT-4o`,description:`Great for most tasks`,hiddenInTask:!1,active:!1,contextWindowTokens:2e5,maxOutputTokens:16e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_002_5`,output:`0.000_010`,cachedInput:`0.000_001_25`}},{id:`gpt-4.1-mini`,provider:`openai`,name:`GPT-4.1 mini`,description:`Fast for everyday tasks in low-cost`,hiddenInTask:!1,active:!1,contextWindowTokens:2e5,maxOutputTokens:32e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_000_4`,output:`0.000_001_6`,cachedInput:`0.000_000_1`}},{id:`gpt-image-2`,provider:`openai`,name:`GPT Image 2`,description:`OpenAI state-of-the-art image generation model. Supports text + image input; outputs images.`,hiddenInTask:!0,active:!0,contextWindowTokens:2e5,pricing:{input:`0.000_005`,inputImage:`0.000_008`,cachedInput:`0.000_001_25`,output:`0.000_030`},imageGeneration:`gpt-image-2`,imageModel:!0,tokenCalculator:{kind:`image-input`}},{id:`gpt-image-2.5-flare`,provider:`openai`,name:`GPT Image 2.5 Flare`,description:`Fast, high-quality everyday image generation and editing.`,hiddenInTask:!0,active:!0,contextWindowTokens:2e5,pricing:{input:`0.000_005`,inputImage:`0.000_008`,cachedInput:`0.000_001_25`,output:`0.000_030`},imageGeneration:`gpt-image-2`,imageModel:!0,tokenCalculator:{kind:`image-input`}},{id:`gpt-image-2.5-sunburst`,provider:`openai`,name:`GPT Image 2.5 Sunburst`,description:`High-quality image generation with precise editing and detail preservation.`,hiddenInTask:!0,active:!0,contextWindowTokens:2e5,pricing:{input:`0.000_005`,inputImage:`0.000_008`,cachedInput:`0.000_001_25`,output:`0.000_030`},imageGeneration:`gpt-image-2`,imageModel:!0,tokenCalculator:{kind:`image-input`}},{id:`claude-haiku-4-5-20251001`,provider:`anthropic`,reasoning:{thinking:{type:`enabled`,budgetTokens:12e3}},name:`Claude Haiku 4.5`,description:`Near-frontier performance with much greater cost-efficiency`,hiddenInTask:!1,active:!0,contextWindowTokens:2e5,maxOutputTokens:64e3,pricing:{input:`0.000_001`,output:`0.000_005`,cachedInput:`0.000_000_1`,cacheCreation:`0.000_001_25`,cacheCreation1h:`0.000_002`}},{id:`claude-haiku-5-5`,provider:`anthropic`,reasoning:{thinking:{type:`adaptive`,blockBinding:{prefixMismatchBehavior:`drop_block`}},effort:`high`},name:`Claude Haiku 5.5`,description:`Fast, low-cost model for high-volume, latency-sensitive work`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_000_1`,output:`0.000_000_5`,cachedInput:`0.000_000_01`,cacheCreation:`0.000_000_125`,cacheCreation1h:`0.000_000_2`,longContext:{input:`0.000_000_5`,output:`0.000_002_5`,cachedInput:`0.000_000_05`,cacheCreation:`0.000_000_625`,cacheCreation1h:`0.000_001`}},tokenCalculator:{kind:`input-context`,thresholdTokens:1e5}},{id:`claude-sonnet-4-20250514`,provider:`anthropic`,reasoning:{thinking:{type:`enabled`,budgetTokens:12e3}},name:`Claude Sonnet 4`,description:`Smart, efficient model for everyday use`,hiddenInTask:!1,active:!1,contextWindowTokens:2e5,extendedContextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_003`,output:`0.000_015`,cachedInput:`0.000_000_3`,cacheCreation:`0.000_003_75`,cacheCreation1h:`0.000_006`,longContext:{input:`0.000_006`,output:`0.000_022_5`,cachedInput:`0.000_000_6`,cacheCreation:`0.000_007_5`,cacheCreation1h:`0.000_012`}},tokenCalculator:{kind:`long-context`,thresholdTokens:2e5}},{id:`claude-sonnet-4-5-20250929`,provider:`anthropic`,reasoning:{thinking:{type:`enabled`,budgetTokens:12e3}},name:`Claude Sonnet 4.5`,description:`Anthropic's best model for complex agents and coding`,hiddenInTask:!1,active:!0,contextWindowTokens:2e5,extendedContextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_003`,output:`0.000_015`,cachedInput:`0.000_000_3`,cacheCreation:`0.000_003_75`,cacheCreation1h:`0.000_006`,longContext:{input:`0.000_006`,output:`0.000_022_5`,cachedInput:`0.000_000_6`,cacheCreation:`0.000_007_5`,cacheCreation1h:`0.000_012`}},tokenCalculator:{kind:`long-context`,thresholdTokens:2e5}},{id:`claude-sonnet-4-6`,provider:`anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},name:`Claude Sonnet 4.6`,description:`Anthropic's best model for complex agents and coding`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_003`,output:`0.000_015`,cachedInput:`0.000_000_3`,cacheCreation:`0.000_003_75`,cacheCreation1h:`0.000_006`}},{id:`claude-sonnet-5`,provider:`anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},name:`Claude Sonnet 5`,description:`Best combination of speed and intelligence for agents and coding`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_002`,output:`0.000_010`,cachedInput:`0.000_000_2`,cacheCreation:`0.000_002_5`,cacheCreation1h:`0.000_004`}},{id:`claude-sonnet-5-5`,provider:`anthropic`,reasoning:{thinking:{type:`adaptive`,blockBinding:{prefixMismatchBehavior:`drop_block`}},effort:`high`},name:`Claude Sonnet 5.5`,description:`Best combination of speed and intelligence for agents and coding`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_002`,output:`0.000_010`,cachedInput:`0.000_000_2`,cacheCreation:`0.000_002_5`,cacheCreation1h:`0.000_004`}},{id:`claude-opus-4-1-20250805`,provider:`anthropic`,reasoning:{thinking:{type:`enabled`,budgetTokens:12e3}},name:`Claude Opus 4.1`,description:`Powerful model for complex challenges with 5x money cost`,hiddenInTask:!1,active:!1,contextWindowTokens:2e5,maxOutputTokens:32e3,pricing:{input:`0.000_015`,output:`0.000_075`,cachedInput:`0.000_001_5`,cacheCreation:`0.000_018_75`,cacheCreation1h:`0.000_030`}},{id:`claude-opus-4-6`,provider:`anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},name:`Claude Opus 4.6`,description:`Most powerful model for complex challenges`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_005`,output:`0.000_025`,cachedInput:`0.000_000_5`,cacheCreation:`0.000_006_25`,cacheCreation1h:`0.000_010`}},{id:`claude-opus-4-8`,provider:`anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},name:`Claude Opus 4.8`,description:`Most powerful model for complex challenges`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_005`,output:`0.000_025`,cachedInput:`0.000_000_5`,cacheCreation:`0.000_006_25`,cacheCreation1h:`0.000_010`}},{id:`claude-opus-5`,provider:`anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},name:`Claude Opus 5`,description:`Most powerful model for complex challenges`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_005`,output:`0.000_025`,cachedInput:`0.000_000_5`,cacheCreation:`0.000_006_25`,cacheCreation1h:`0.000_010`}},{id:`claude-opus-5-5`,provider:`anthropic`,reasoning:{thinking:{type:`adaptive`,blockBinding:{prefixMismatchBehavior:`drop_block`}},effort:`high`},name:`Claude Opus 5.5`,description:`Most powerful model for complex challenges`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_004`,output:`0.000_020`,cachedInput:`0.000_000_2`,cacheCreation:`0.000_005`,cacheCreation1h:`0.000_008`}},{id:`claude-haiku-4-5@20251001`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`enabled`,budgetTokens:12e3}},name:`Claude Haiku 4.5`,description:`Near-frontier performance with much greater cost-efficiency (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:2e5,maxOutputTokens:64e3,pricing:{input:`0.000_001`,output:`0.000_005`,cachedInput:`0.000_000_1`,cacheCreation:`0.000_001_25`,cacheCreation1h:`0.000_002`}},{id:`vertex/claude-haiku-5-5`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`adaptive`,blockBinding:{prefixMismatchBehavior:`drop_block`}},effort:`high`},providerModelId:`claude-haiku-5-5`,name:`Claude Haiku 5.5`,description:`Fast, low-cost model for high-volume, latency-sensitive work (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_000_1`,output:`0.000_000_5`,cachedInput:`0.000_000_01`,cacheCreation:`0.000_000_125`,cacheCreation1h:`0.000_000_2`,longContext:{input:`0.000_000_5`,output:`0.000_002_5`,cachedInput:`0.000_000_05`,cacheCreation:`0.000_000_625`,cacheCreation1h:`0.000_001`}},tokenCalculator:{kind:`input-context`,thresholdTokens:1e5}},{id:`claude-sonnet-4-5@20250929`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`enabled`,budgetTokens:12e3}},name:`Claude Sonnet 4.5`,description:`Anthropic's best model for complex agents and coding (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:2e5,extendedContextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_003`,output:`0.000_015`,cachedInput:`0.000_000_3`,cacheCreation:`0.000_003_75`,cacheCreation1h:`0.000_006`,longContext:{input:`0.000_006`,output:`0.000_022_5`,cachedInput:`0.000_000_6`,cacheCreation:`0.000_007_5`,cacheCreation1h:`0.000_012`}},tokenCalculator:{kind:`long-context`,thresholdTokens:2e5}},{id:`vertex/claude-sonnet-4-6`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},providerModelId:`claude-sonnet-4-6`,name:`Claude Sonnet 4.6`,description:`Anthropic's best model for complex agents and coding (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_003`,output:`0.000_015`,cachedInput:`0.000_000_3`,cacheCreation:`0.000_003_75`,cacheCreation1h:`0.000_006`}},{id:`vertex/claude-sonnet-5`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},providerModelId:`claude-sonnet-5`,name:`Claude Sonnet 5`,description:`Best combination of speed and intelligence for agents and coding (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_002`,output:`0.000_010`,cachedInput:`0.000_000_2`,cacheCreation:`0.000_002_5`,cacheCreation1h:`0.000_004`}},{id:`vertex/claude-sonnet-5-5`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`adaptive`,blockBinding:{prefixMismatchBehavior:`drop_block`}},effort:`high`},providerModelId:`claude-sonnet-5-5`,name:`Claude Sonnet 5.5`,description:`Best combination of speed and intelligence for agents and coding (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_002`,output:`0.000_010`,cachedInput:`0.000_000_2`,cacheCreation:`0.000_002_5`,cacheCreation1h:`0.000_004`}},{id:`claude-opus-4-5@20251101`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`enabled`,budgetTokens:12e3}},name:`Claude Opus 4.5`,description:`Latest Opus model for most complex tasks (via Vertex AI)`,hiddenInTask:!1,active:!1,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_015`,output:`0.000_075`,cachedInput:`0.000_001_5`,cacheCreation:`0.000_018_75`,cacheCreation1h:`0.000_030`}},{id:`vertex/claude-opus-4-6`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},providerModelId:`claude-opus-4-6`,name:`Claude Opus 4.6`,description:`Most powerful model for complex challenges (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_005`,output:`0.000_025`,cachedInput:`0.000_000_5`,cacheCreation:`0.000_006_25`,cacheCreation1h:`0.000_010`}},{id:`vertex/claude-opus-4-8`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},providerModelId:`claude-opus-4-8`,name:`Claude Opus 4.8`,description:`Most powerful model for complex challenges (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_005`,output:`0.000_025`,cachedInput:`0.000_000_5`,cacheCreation:`0.000_006_25`,cacheCreation1h:`0.000_010`}},{id:`vertex/claude-opus-5`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`adaptive`},effort:`high`},providerModelId:`claude-opus-5`,name:`Claude Opus 5`,description:`Most powerful model for complex challenges (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_005`,output:`0.000_025`,cachedInput:`0.000_000_5`,cacheCreation:`0.000_006_25`,cacheCreation1h:`0.000_010`}},{id:`vertex/claude-opus-5-5`,provider:`vertex-anthropic`,reasoning:{thinking:{type:`adaptive`,blockBinding:{prefixMismatchBehavior:`drop_block`}},effort:`high`},providerModelId:`claude-opus-5-5`,name:`Claude Opus 5.5`,description:`Most powerful model for complex challenges (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,capabilities:{midConversationSystem:!0},pricing:{input:`0.000_004`,output:`0.000_020`,cachedInput:`0.000_000_2`,cacheCreation:`0.000_005`,cacheCreation1h:`0.000_008`}},{id:`vertex/gemini-3.8-flash`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3.8-flash`,name:`Gemini 3.8 Flash (Vertex)`,description:`Most intelligent Flash model for long-horizon software engineering and autonomous agents (via Vertex AI).`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_75`,output:`0.000_003_75`,cachedInput:`0.000_000_075`}},{id:`vertex/gemini-3.7-flash`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3.7-flash`,name:`Gemini 3.7 Flash (Vertex)`,description:`Fast, efficient model for agentic, multimodal, and coding workflows (via Vertex AI).`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_75`,output:`0.000_003_75`,cachedInput:`0.000_000_075`}},{id:`vertex/gemini-3.5-flash`,provider:`vertex-google`,reasoning:{type:`level`,level:`medium`},providerModelId:`gemini-3.5-flash`,name:`Gemini 3.5 Flash (Vertex)`,description:`Frontier-level intelligence optimized for fast agentic and coding workflows (via Vertex AI).`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_001_5`,output:`0.000_009`,cachedInput:`0.000_000_15`}},{id:`vertex/gemini-3.1-pro-preview`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3.1-pro-preview`,name:`Gemini 3.1 Pro (Vertex)`,description:`Next-generation model with enhanced reasoning capabilities and improved performance (via Vertex AI).`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_002`,cachedInput:`0.000_000_2`,output:`0.000_012`,longContext:{input:`0.000_004`,cachedInput:`0.000_000_4`,output:`0.000_018`}},tokenCalculator:{kind:`long-context`,thresholdTokens:2e5}},{id:`vertex/gemini-3.5-flash-lite`,provider:`vertex-google`,reasoning:{type:`level`,level:`medium`},providerModelId:`gemini-3.5-flash-lite`,name:`Gemini 3.5 Flash Lite (Vertex)`,description:`Most cost-efficient model for high-volume agentic tasks (via Vertex AI).`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_3`,output:`0.000_002_5`,cachedInput:`0.000_000_03`}},{id:`vertex/gemma-4-26b-a4b-it-maas`,provider:`vertex-google-gemma`,providerModelId:`google/gemma-4-26b-a4b-it-maas`,name:`Gemma 4 26B A4B IT (Vertex)`,description:`Lightweight text and image understanding (experimental, via Vertex AI).`,hiddenInTask:!0,active:!0,contextWindowTokens:262144,maxOutputTokens:128e3,pricing:{input:`0.000_000_15`,output:`0.000_000_6`,cachedInput:`0.000_000_015`}},{id:`vertex/gemini-3.1-flash-lite`,provider:`vertex-google`,reasoning:{type:`level`,level:`minimal`},providerModelId:`gemini-3.1-flash-lite`,name:`Gemini 3.1 Flash Lite (Vertex)`,description:`Lightweight and fast (via Vertex AI).`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_25`,output:`0.000_001_5`,cachedInput:`0.000_000_025`}},{id:`vertex/gemini-3.1-flash-lite-preview`,provider:`vertex-google`,reasoning:{type:`level`,level:`minimal`},providerModelId:`gemini-3.1-flash-lite-preview`,name:`Gemini 3.1 Flash Lite (Vertex)`,description:`Lightweight and fast (via Vertex AI).`,hiddenInTask:!0,active:!1,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_25`,output:`0.000_001_5`,cachedInput:`0.000_000_025`}},{id:`vertex/gemini-3-pro-preview`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3-pro-preview`,name:`Gemini 3 Pro (Vertex)`,description:`The most powerful agentic model yet combines state-of-the-art reasoning with richer visuals and deep interactivity (via Vertex AI).`,hiddenInTask:!1,active:!1,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_002`,cachedInput:`0.000_000_2`,output:`0.000_012`,longContext:{input:`0.000_004`,cachedInput:`0.000_000_4`,output:`0.000_018`}},tokenCalculator:{kind:`long-context`,thresholdTokens:2e4}},{id:`vertex/gemini-3-pro-image-preview`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3-pro-image-preview`,name:`Gemini 3 Pro Image Preview (Vertex)`,description:`The most powerful image generation model that lets you generate and edit images conversationally with state-of-the-art quality (via Vertex AI).`,hiddenInTask:!0,active:!1,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_002`,output:`0.000_012`,outputImage:`0.000_12`,cachedInput:`0.000_000_2`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3`},{id:`vertex/gemini-3-pro-image`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3-pro-image`,name:`Gemini 3 Pro Image (Vertex)`,description:`The most powerful image generation model that lets you generate and edit images conversationally with state-of-the-art quality (via Vertex AI).`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_002`,output:`0.000_012`,outputImage:`0.000_12`,cachedInput:`0.000_000_2`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3`},{id:`vertex/gemini-3.1-flash-image`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3.1-flash-image`,name:`Gemini 3.1 Flash Image (Vertex)`,description:`Fast, efficient image generation model that lets you generate and edit images conversationally (via Vertex AI).`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_000_5`,output:`0.000_003`,outputImage:`0.000_06`,cachedInput:`0.000_000_05`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3`},{id:`vertex/gemini-nano-banana-2.1`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-nano-banana-2.1`,name:`Nano Banana 2.1 (Vertex)`,description:`Fast image generation and conversational editing with sharper text rendering and character consistency (via Vertex AI).`,hiddenInTask:!0,active:!0,contextWindowTokens:131072,maxOutputTokens:32e3,pricing:{input:`0.000_001_5`,output:`0.000_007_5`,outputImage:`0.000_03`,cachedInput:`0.000_000_15`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3`},{id:`vertex/gemini-3.1-flash-lite-image`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3.1-flash-lite-image`,name:`Gemini 3.1 Flash-Lite Image (Vertex)`,description:`Lightweight, lowest-cost image generation model for icons and small visuals (via Vertex AI).`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_000_25`,output:`0.000_001_5`,outputImage:`0.000_03`,cachedInput:`0.000_000_025`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3-lite`},{id:`vertex/gemini-3-flash-preview`,provider:`vertex-google`,reasoning:{type:`level`,level:`high`},providerModelId:`gemini-3-flash-preview`,name:`Gemini 3 Flash (Vertex)`,description:`Fast and efficient preview model (via Vertex AI)`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_5`,output:`0.000_003`,cachedInput:`0.000_000_05`}},{id:`vertex/gemini-2.5-flash-image`,provider:`vertex-google`,reasoning:{type:`budget`,budgetTokens:12e3},providerModelId:`gemini-2.5-flash-image`,name:`Gemini 2.5 Flash Image (Vertex)`,description:`Latest, fastest, and most efficient natively multimodal model that lets you generate and edit images conversationally (via Vertex AI).`,hiddenInTask:!0,active:!1,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_000_3`,output:`0.000_002_5`,outputImage:`0.000_03`,cachedInput:`0.000_000_03`,cacheCreation:`0.000_001`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-2.5-flash`},{id:`vertex/gemini-2.5-flash-lite`,provider:`vertex-google`,reasoning:{type:`budget`,budgetTokens:12e3},providerModelId:`gemini-2.5-flash-lite`,name:`Gemini 2.5 Flash Lite (Vertex)`,description:`Lightweight and fast (via Vertex AI).`,hiddenInTask:!0,active:!1,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_1`,output:`0.000_000_4`,cachedInput:`0.000_000_01`,cacheCreation:`0.000_001`}},{id:`gemini-3.8-flash`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3.8 Flash`,description:`Most intelligent Flash model for long-horizon software engineering and autonomous agents`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_75`,output:`0.000_003_75`,cachedInput:`0.000_000_075`}},{id:`gemini-3.7-flash`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3.7 Flash`,description:`Fast, efficient model for agentic, multimodal, and coding workflows`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_75`,output:`0.000_003_75`,cachedInput:`0.000_000_075`}},{id:`gemini-3.5-flash`,provider:`google`,reasoning:{type:`level`,level:`medium`},name:`Gemini 3.5 Flash`,description:`Frontier-level intelligence optimized for fast agentic and coding workflows`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_001_5`,output:`0.000_009`,cachedInput:`0.000_000_15`}},{id:`gemini-3.1-pro-preview`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3.1 Pro`,description:`Next-generation model with enhanced reasoning capabilities and improved performance.`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_002`,cachedInput:`0.000_000_2`,output:`0.000_012`,longContext:{input:`0.000_004`,cachedInput:`0.000_000_4`,output:`0.000_018`}},tokenCalculator:{kind:`long-context`,thresholdTokens:2e5}},{id:`gemini-3.5-flash-lite`,provider:`google`,reasoning:{type:`level`,level:`medium`},name:`Gemini 3.5 Flash Lite`,description:`Most cost-efficient model for high-volume agentic tasks`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_3`,output:`0.000_002_5`,cachedInput:`0.000_000_03`}},{id:`gemini-3.1-flash-lite`,provider:`google`,reasoning:{type:`level`,level:`minimal`},name:`Gemini 3.1 Flash Lite`,description:`Lightweight and fast.`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_25`,output:`0.000_001_5`,cachedInput:`0.000_000_025`}},{id:`gemini-3.1-flash-lite-preview`,provider:`google`,reasoning:{type:`level`,level:`minimal`},name:`Gemini 3.1 Flash Lite`,description:`Lightweight and fast`,hiddenInTask:!0,active:!1,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_25`,output:`0.000_001_5`,cachedInput:`0.000_000_025`}},{id:`gemini-3-pro-preview`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3 Pro`,description:`The most powerful agentic model yet combines state-of-the-art reasoning with richer visuals and deep interactivity.`,hiddenInTask:!1,active:!1,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_002`,cachedInput:`0.000_000_2`,output:`0.000_012`,longContext:{input:`0.000_004`,cachedInput:`0.000_000_4`,output:`0.000_018`}},tokenCalculator:{kind:`long-context`,thresholdTokens:2e4}},{id:`gemini-3-pro-image-preview`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3 Pro Image Preview`,description:`The most powerful image generation model that lets you generate and edit images conversationally with state-of-the-art quality.`,hiddenInTask:!0,active:!1,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_002`,output:`0.000_012`,outputImage:`0.000_12`,cachedInput:`0.000_000_2`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3`},{id:`gemini-3-pro-image`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3 Pro Image`,description:`The most powerful image generation model that lets you generate and edit images conversationally with state-of-the-art quality.`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_002`,output:`0.000_012`,outputImage:`0.000_12`,cachedInput:`0.000_000_2`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3`},{id:`gemini-3.1-flash-image`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3.1 Flash Image`,description:`Fast, efficient image generation model that lets you generate and edit images conversationally.`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_000_5`,output:`0.000_003`,outputImage:`0.000_06`,cachedInput:`0.000_000_05`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3`},{id:`gemini-nano-banana-2.1`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Nano Banana 2.1`,description:`Fast image generation and conversational editing with sharper text rendering and character consistency.`,hiddenInTask:!0,active:!0,contextWindowTokens:131072,maxOutputTokens:32e3,pricing:{input:`0.000_001_5`,output:`0.000_007_5`,outputImage:`0.000_03`,cachedInput:`0.000_000_15`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3`},{id:`gemini-3.1-flash-lite-image`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3.1 Flash-Lite Image`,description:`Lightweight, lowest-cost image generation model for icons and small visuals.`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_000_25`,output:`0.000_001_5`,outputImage:`0.000_03`,cachedInput:`0.000_000_025`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-3-lite`},{id:`gemini-3-flash-preview`,provider:`google`,reasoning:{type:`level`,level:`high`},name:`Gemini 3 Flash`,description:`Fast and efficient preview model`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_5`,output:`0.000_003`,cachedInput:`0.000_000_05`}},{id:`gemini-2.5-pro`,provider:`google`,reasoning:{type:`budget`,budgetTokens:12e3},name:`Gemini 2.5 Pro`,description:`For reasoning, mathematics and programming`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_001_25`,output:`0.000_010`,cachedInput:`0.000_000_125`,cacheCreation:`0.000_004_5`,longContext:{input:`0.000_002_5`,output:`0.000_015`,cachedInput:`0.000_000_25`,cacheCreation:`0.000_004_5`}},tokenCalculator:{kind:`long-context`,thresholdTokens:2e5}},{id:`gemini-2.5-flash`,provider:`google`,reasoning:{type:`budget`,budgetTokens:12e3},name:`Gemini 2.5 Flash`,description:`Get quick assistance for various types`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_3`,output:`0.000_002_5`,cachedInput:`0.000_000_03`,cacheCreation:`0.000_001`}},{id:`gemini-2.5-flash-image`,provider:`google`,reasoning:{type:`budget`,budgetTokens:12e3},name:`Gemini 2.5 Flash Image `,description:`Latest, fastest, and most efficient natively multimodal model that lets you generate and edit images conversationally.`,hiddenInTask:!0,active:!1,contextWindowTokens:1e6,maxOutputTokens:32e3,pricing:{input:`0.000_000_3`,output:`0.000_002_5`,outputImage:`0.000_03`,cachedInput:`0.000_000_03`,cacheCreation:`0.000_001`},tokenCalculator:{kind:`image-output`},imageGeneration:`gemini-2.5-flash`},{id:`gemini-2.5-flash-lite`,provider:`google`,reasoning:{type:`budget`,budgetTokens:12e3},name:`Gemini 2.5 Flash Lite`,description:`Lightweight and fast`,hiddenInTask:!0,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_1`,output:`0.000_000_4`,cachedInput:`0.000_000_01`,cacheCreation:`0.000_001`}},{id:`openai/gpt-oss-120b`,provider:`openrouter`,reasoning:{type:`effort`,effort:`medium`},name:`GPT-OSS 120B`,description:`Open source model from OpenAI`,hiddenInTask:!1,active:!0,contextWindowTokens:131072,maxOutputTokens:16e3,pricing:{input:`0.000_000_1`,output:`0.000_000_5`}},{id:`z-ai/glm-4.6`,provider:`openrouter`,reasoning:{type:`enabled`},name:`GLM 4.6`,description:`GLM-4.6 with 200K context window, superior coding performance, advanced reasoning, and refined writing`,hiddenInTask:!1,active:!0,contextWindowTokens:2e5,maxOutputTokens:64e3,pricing:{input:`0.000_000_6`,output:`0.000_002_2`,cachedInput:`0.000_000_11`}},{id:`moonshotai/kimi-k2-thinking`,provider:`openrouter`,reasoning:{type:`enabled`},name:`Kimi K2 Thinking`,description:`Moonshot AI's most advanced open reasoning model with 256K context window, optimized for persistent step-by-step thought and complex reasoning workflows`,hiddenInTask:!1,active:!0,contextWindowTokens:2e5,maxOutputTokens:64e3,pricing:{input:`0.000_000_6`,output:`0.000_002_5`,cachedInput:`0.000_000_15`}},{id:`minimax/minimax-m2`,provider:`openrouter`,reasoning:{type:`enabled`},name:`MiniMax M2`,description:`Compact, high-efficiency model optimized for end-to-end coding and agentic workflows with 204.8K context window`,hiddenInTask:!1,active:!0,contextWindowTokens:2e5,maxOutputTokens:64e3,pricing:{input:`0.000_000_3`,output:`0.000_001_2`}},{id:`meta/muse-glimmer-30b`,provider:`openrouter`,reasoning:{type:`effort`,effort:`medium`},name:`Muse Glimmer 30B`,description:`Dense, open-weight multimodal model from Meta Superintelligence Labs, distilled from Muse Spark and optimized for autonomous agents on consumer hardware`,hiddenInTask:!1,active:!0,contextWindowTokens:131072,maxOutputTokens:16e3,pricing:{input:`0.000_000_35`,output:`0.000_001_5`,cachedInput:`0.000_000_04`}},{id:`moonshotai/kimi-k3`,provider:`openrouter`,reasoning:{type:`effort`,effort:`max`},name:`Kimi K3`,description:`Moonshot AI's multimodal reasoning model with a 1M context window, built for long-horizon agentic workflows`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_003`,output:`0.000_015`,cachedInput:`0.000_000_3`}},{id:`z-ai/glm-5.2`,provider:`openrouter`,reasoning:{type:`effort`,effort:`high`},name:`GLM 5.2`,description:`GLM-5.2 with strong coding and agentic performance, advanced reasoning, and long-context support`,hiddenInTask:!1,active:!0,contextWindowTokens:262144,maxOutputTokens:64e3,pricing:{input:`0.000_000_76`,output:`0.000_002_42`,cachedInput:`0.000_000_14`}},{id:`deepseek/deepseek-v4-flash-0731`,provider:`openrouter`,reasoning:{type:`effort`,effort:`high`},name:`DeepSeek V4 Flash`,description:`Low-cost, high-throughput DeepSeek model with a 1M context window, suited for high-volume agentic and coding workloads`,hiddenInTask:!1,active:!0,contextWindowTokens:1e6,maxOutputTokens:64e3,pricing:{input:`0.000_000_08`,output:`0.000_000_18`,cachedInput:`0.000_000_016`}},{id:`mistralai/mistral-small-2603`,provider:`openrouter`,reasoning:{type:`effort`,effort:`high`},name:`Mistral Small 4`,description:`Efficient Mistral model that unifies several flagship Mistral capabilities in one system, with configurable reasoning and a 262K context window`,hiddenInTask:!1,active:!0,contextWindowTokens:262144,maxOutputTokens:64e3,pricing:{input:`0.000_000_15`,output:`0.000_000_6`,cachedInput:`0.000_000_015`}},{id:`google/gemma-4-31b-it`,provider:`openrouter`,reasoning:{type:`enabled`},name:`Gemma 4 31B`,description:`Dense, open-weight Google DeepMind model with configurable thinking, native function calling and a 262K context window`,hiddenInTask:!1,active:!0,contextWindowTokens:262144,maxOutputTokens:16e3,pricing:{input:`0.000_000_09`,output:`0.000_000_34`,cachedInput:`0.000_000_05`}},{id:`gpt-oss-120b`,provider:`selfhosted`,name:`GPT-OSS 120B`,description:`Open source model from OpenAI`,hiddenInTask:!1,active:!0,contextWindowTokens:131072,maxOutputTokens:16e3,pricing:{input:`0.000_000_1`,output:`0.000_000_5`}},{id:`apmic/qwen3.8-27b`,provider:`apmic`,providerModelId:`Qwen3.8-27B`,name:`Qwen3.8 27B`,description:`Qwen 3.8 27B served by APMIC`,hiddenInTask:!1,active:!0,contextWindowTokens:262144,maxOutputTokens:64e3,pricing:{input:`0`,output:`0`}},{id:`cerebras/qwen-3.8-27b`,provider:`cerebras`,providerModelId:`qwen-3.8-27b`,reasoning:{effort:`medium`},name:`Qwen3.8 27B (Cerebras)`,description:`Qwen 3.8 27B served on Cerebras wafer-scale inference`,hiddenInTask:!1,active:!0,capabilities:{reasoning:!0},contextWindowTokens:131072,maxOutputTokens:4e4,pricing:{input:`0.000_000_99`,output:`0.000_001_49`}},{id:`cerebras/gpt-oss-120b`,provider:`cerebras`,providerModelId:`gpt-oss-120b`,reasoning:{effort:`medium`},name:`GPT-OSS 120B (Cerebras)`,description:`Open source model from OpenAI served on Cerebras wafer-scale inference`,hiddenInTask:!1,active:!0,capabilities:{reasoning:!0},contextWindowTokens:131e3,maxOutputTokens:4e4,pricing:{input:`0.000_000_35`,output:`0.000_000_75`}}],Pu=[...ju,`azure-openai`],Fu=Ou.map(e=>ku[e].modelProvider),Iu=[...Pu,...Fu];function Lu(e){return Nu.filter(t=>t.provider===e).map(e=>e.id)}Lu(`openai`),Lu(`anthropic`),Lu(`vertex-anthropic`),Lu(`vertex-google`),Lu(`google`),Lu(`openrouter`),Lu(`selfhosted`),Lu(`apmic`),Lu(`cerebras`);const Ru=[`chatgpt-sub/gpt-6.1-sol`,`chatgpt-sub/gpt-6-astra`,`chatgpt-sub/gpt-6-luna`,`chatgpt-sub/gpt-5.6-sol`,`chatgpt-sub/gpt-5.6-terra`,`chatgpt-sub/gpt-5.6-luna`,`chatgpt-sub/gpt-5.5`,`claude-sub/opus-5`,`claude-sub/sonnet-5`,`claude-sub/haiku-4-5`],zu=[`chatgpt-pool/gpt-6.1-sol`,`chatgpt-pool/gpt-6-astra`,`chatgpt-pool/gpt-6-luna`,`chatgpt-pool/gpt-5.6-sol`,`chatgpt-pool/gpt-5.6-terra`,`chatgpt-pool/gpt-5.6-luna`,`chatgpt-pool/gpt-5.5`],Bu=Nu.map(e=>e.id);function Vu(e){return e.startsWith(`azure-`)}const Hu=[`lite`,`pro`,`max`],Uu=[`image`,`image-lite`],Wu=[`functionality`],Gu=[...Hu,...Uu,...Wu],Ku=I([z(Bu),z(Hu),D().refine(e=>Vu(e)),z(Ru),z(zu)]);I([Ku,z([...Uu,...Wu])]);const qu=I([Ku,B(`auto`)]),Ju=F({id:D(),name:D(),shortName:D().optional(),description:D(),shortDescription:D().optional(),enabled:M().optional(),tags:P(D()).optional()});F({models:P(Ju)}),F({tiers:P(F({tier:D(),available:M().optional(),model:Ju.optional()}))});const Yu=F({modelId:D()}),Xu=z([`additional`]),Zu=F({replacementModelId:qu.optional()});Yu.extend(Zu.shape),F({agentCount:j(),scheduleCount:j(),recentAgentCount:j(),recentTaskCount:j(),affectedModelSelections:P(qu)}).extend({modelId:D()});const Qu=z([`pool`,`provider`]);F({modelId:I([D(),P(D()).min(1)]).optional(),revocation:Xu.optional(),scope:Qu.optional(),providerId:D().optional()}),F({replacements:P(F({modelId:D(),replacementModelId:qu,references:F({agentCount:j(),scheduleCount:j()}),updatedAt:V()}))}),F({modelId:D(),replacementModelId:qu}),F({modelId:D()}),F({providers:P(F({id:D(),name:D(),baseUrl:D().nullable().optional(),verified:M(),models:P(F({id:D(),name:D(),enabled:M().optional(),additional:M().optional()})),options:R(D(),kc()).optional()}))}),F({models:P(F({id:D(),name:D(),provider:z(Iu),supportsChat:M(),supportsImageGeneration:M(),imageBackend:z([`image-api`,`language-model`]).optional(),availableForAdvanced:M()}))}),F({tiers:P(F({tier:z(Gu),modelId:D(),fallbackModelId:D().nullable()}))}),F({tier:z(Gu)}),F({modelId:D().min(1),fallbackModelId:D().min(1).nullable().optional()});const $u=z([`starter`,`pro`,`premium`]);z([`pro`,`premium`]).options,z([`basic_window`,`granted_pool`,`purchased_pool`]);const ed=z([`purchased`,`granted`]);z([`task`,`title_generate`,`agent`,`schedule`,`sandbox_llm`,`sandbox_runtime`,`web_search`,`image_generation`,`agent_icon_generation`,`auto_routing`,`chatbot`,`meeting`,`mcp_tool_api_call`]);const G={TASK_MESSAGE:`task_message`,TITLE_GENERATION:`title_generation`,SENSITIVITY_CHECK:`sensitivity_check`,TOOL_CALL_EXTRA_TOKENS:`tool_call_extra_tokens`,TASK_SUMMARY:`task_summary`,SUBAGENT:`subagent`,WORKFLOW_AGENT:`workflow_agent`,LLM_PROXY:`llm_proxy`,IMAGE_GENERATION:`image_generation`,WEB_SEARCH:`web_search`,SANDBOX_RUNTIME:`sandbox_runtime`,MEETING:`meeting`,MEETING_RECORDING_TRANSCRIPTION:`meeting_recording_transcription`,MEETING_RECORDING_SUMMARY:`meeting_recording_summary`,MEETING_RECORDING_REFINE:`meeting_recording_refine`,MEETING_RECORDING_TITLE:`meeting_recording_title`,TOOL_CALL_RISK_ASSESSMENT:`tool_call_risk_assessment`,SCHEDULE_JUDGE:`schedule_judge`,SCHEDULE_JUDGE_REVIEW:`schedule_judge_review`,SCHEDULE_JUDGE_EXTRACT:`schedule_judge_extract`,PROJECT_KNOWLEDGE_DESCRIPTION:`project_knowledge_description`,PROJECT_KNOWLEDGE_EXTRACTION:`project_knowledge_extraction`,PROJECT_KNOWLEDGE_EMBEDDING:`project_knowledge_embedding`,PUBLISH_CHANGE_SUMMARY:`publish_change_summary`};G.MEETING,G.MEETING_RECORDING_TRANSCRIPTION,G.MEETING_RECORDING_SUMMARY,G.MEETING_RECORDING_REFINE,G.MEETING_RECORDING_TITLE,G.WORKFLOW_AGENT,G.SCHEDULE_JUDGE_EXTRACT,G.WEB_SEARCH,G.PROJECT_KNOWLEDGE_DESCRIPTION,G.PROJECT_KNOWLEDGE_EXTRACTION,G.PROJECT_KNOWLEDGE_EMBEDDING,G.SENSITIVITY_CHECK,G.PUBLISH_CHANGE_SUMMARY;const td={WEB_SEARCH:G.WEB_SEARCH,SANDBOX_RUNTIME:G.SANDBOX_RUNTIME,PROJECT_KNOWLEDGE_EMBEDDING:G.PROJECT_KNOWLEDGE_EMBEDDING};z([td.WEB_SEARCH,td.SANDBOX_RUNTIME,td.PROJECT_KNOWLEDGE_EMBEDDING]);const nd={SEARCH:`search`,SCRAPE:`scrape`};z([nd.SEARCH,nd.SCRAPE]),F({workspaceId:k()});const rd=F({usedPercent:j().min(0).max(100),resetAt:V().nullable()});F({seatType:$u,hourly:rd.nullable(),weekly:rd,trial:F({endsAt:V(),remainingDays:j().int().positive()}).optional(),extraUsage:F({spentUsd:j().nonnegative(),resetAt:V().nullable()}),availability:F({allowed:M(),reason:z([`usage_exhausted`,`budget_exceeded`]).nullable(),resetAt:V().nullable()})});const id=F({startAt:V(),endAt:V(),previousStartAt:V().optional()}),ad=F({period:id,balanceUsd:j().nonnegative(),nextExpiry:F({amountUsd:j().positive(),expiresAt:V()}).optional(),currentSpentUsd:j().nonnegative(),currentSpentUsedPercent:j().nonnegative().nullable(),monthlyExtraUsageLimitUsd:j().positive().nullable(),memberMonthlyExtraUsageLimitUsd:j().positive().nullable()});F({periodStart:U.optional()}),F({period:id,spentUsd:j().nonnegative(),purchasedUsd:j().nonnegative()});const od=z([`extraUsage:desc`,`extraUsage:asc`]);F({periodStart:U.optional(),limit:H().int().min(1).max(100).default(20),offset:H().int().nonnegative().default(0),sort:od.default(`extraUsage:desc`),search:D().trim().max(200).optional()}),F({items:P(F({id:k(),user:F({id:k(),name:D(),email:D()}),seatType:$u,extraUsage:j().nonnegative(),monthlyLimitOverride:F({limitUsd:j().positive().nullable()}).nullable().optional()})),total:j().int().nonnegative()}),F({id:k(),poolType:ed,balanceUsd:j().nonnegative(),initialAmountUsd:j().positive(),expiresAt:V().nullable(),isAutoReload:M().nullable(),purchaseId:k().nullable(),createdBy:k(),createdAt:V(),updatedAt:V()}),F({amountUsd:j().positive().max(1e5),expiresAt:U.optional()}),F({id:k(),workspaceId:k(),amountUsd:D(),expiresAt:V().nullable(),createdAt:V()}),F({enabled:M(),thresholdUsd:j().positive(),reloadAmountUsd:j().positive()}).nullable(),F({enabled:M(),thresholdUsd:j().positive(),reloadAmountUsd:j().positive()}),F({checkoutUrl:A().nullable()}),F({limitUsd:j().positive().nullable()}),F({limitUsd:j().positive().nullable()});const sd=F({id:k(),name:D(),email:D()});F({items:P(F({user:sd,limitUsd:j().positive().nullable()}))}),F({workspaceId:k(),userId:k()}),F({limitUsd:j().min(.01).max(999999.99).nullable()});const cd=D().regex(/^\d+(\.\d+)?$/,`Budget must be a valid positive decimal number`).refine(e=>Number(e)>0,{message:`Budget must be a valid positive decimal number`});F({items:P(F({user:sd,budget:D().nullable()}))}),F({workspaceId:k(),userId:k()}),F({budget:cd.nullable()}),F({allowance:D().regex(/^\d+(\.\d{1,2})?$/u,`Allowance must be a positive amount with at most 2 decimals`).refine(e=>Number(e)>0&&Number(e)<=9999999999.99,{message:`Allowance must be greater than 0 and at most 9999999999.99`}).nullable()}),F({periodStart:U.optional()});const ld=F({model:D(),costUsd:j(),tokens:j()}),ud=F({costUsd:j(),totalTokens:j(),tokens:F({input:j(),output:j(),cachedInput:j(),cacheCreation:j()}),byModel:P(ld)});F({taskId:k(),totalCostUsd:j(),totalTokens:j(),tokens:ud.shape.tokens,byModel:ud.shape.byModel,taskRun:ud}),F({taskId:k(),scheduleId:k(),scheduleRunId:k(),work:ud,extraction:ud,judgePrimary:ud,judgeReview:ud,runTotal:ud,includingExtraction:ud});const dd=[`google`,`password`];F({users:P(F({id:k(),name:D(),email:D(),image:D().nullable().optional(),role:D(),loginMethods:P(z(dd)),createdAt:V(),seatType:$u.nullable(),pendingSeatType:$u.nullable(),pendingEffectiveAt:V().nullable()})),total:j().int().nonnegative()}),Tu.extend({search:D().trim().max(200).optional()});const fd=D().min(10,`Password must be at least 10 characters long`).regex(/[a-z]/,`Password must contain at least one lowercase letter`).regex(/[A-Z]/,`Password must contain at least one uppercase letter`).regex(/[0-9]/,`Password must contain at least one number`).regex(/[^a-zA-Z0-9]/,`Password must contain at least one special character`);F({currentPassword:D().min(1,`Current password is required`),newPassword:fd}),F({message:D()});const pd=z(El);F({email:D(),name:D(),image:D().nullable().optional(),locale:pd,hasPassword:M()}),F({locale:pd});const K={Access:`access`,ManageWorkspace:`manage_workspace`,ManageRole:`manage_role`,ManageMember:`manage_member`,ManagePayment:`manage_payment`,SubmitCustomConnector:`submit_custom_connector`,ReviewCustomConnector:`review_custom_connector`,ManageConnector:`manage_connector`,ManageResource:`manage_resource`,ManageModel:`manage_model`,ManageCapability:`manage_capability`,ManageTeam:`manage_team`,ReviewResourcePublish:`review_resource_publish`,CreateAgent:`create_agent`,PublishAgent:`publish_agent`,CreateSkill:`create_skill`,PublishSkill:`publish_skill`,CreateWorkflow:`create_workflow`,CreateCustomConnector:`create_custom_connector`,PublishCustomConnector:`publish_custom_connector`,ManageAllTeams:`manage_all_teams`,ManageChatbot:`manage_chatbot`,ManageChannelAgents:`manage_channel_agents`,ViewAuditLogs:`view_audit_logs`},md=[K.ManageConnector,K.ReviewResourcePublish];[K.ManageResource,...md],K.ManageWorkspace,K.ManageRole,K.ManageMember,K.ManagePayment,K.ManageModel,K.ManageCapability,K.ManageResource,K.ManageChatbot,K.ManageChannelAgents,K.CreateCustomConnector,K.PublishCustomConnector,K.CreateAgent,K.PublishAgent,K.CreateSkill,K.PublishSkill,K.CreateWorkflow,K.ManageTeam,K.ManageAllTeams,K.ViewAuditLogs,K.ManageMember,K.ManageCapability,K.ManageResource,K.ManageChatbot,K.ManageChannelAgents,K.CreateCustomConnector,K.PublishCustomConnector,K.CreateAgent,K.PublishAgent,K.CreateSkill,K.PublishSkill,K.CreateWorkflow,K.ManageTeam,K.CreateCustomConnector,K.PublishCustomConnector,K.CreateAgent,K.PublishAgent,K.CreateSkill,K.PublishSkill,K.CreateWorkflow;const hd=z([`workspace`,`resource`,`team`]),gd=z([{id:`manage_role`,category:`workspace`},{id:`manage_member`,category:`workspace`},{id:`manage_workspace`,category:`workspace`},{id:`manage_payment`,category:`workspace`},{id:`manage_model`,category:`workspace`},{id:`view_audit_logs`,category:`workspace`},{id:`manage_capability`,category:`resource`},{id:`create_custom_connector`,category:`resource`},{id:`publish_custom_connector`,category:`resource`},{id:`create_agent`,category:`resource`},{id:`publish_agent`,category:`resource`},{id:`create_skill`,category:`resource`},{id:`publish_skill`,category:`resource`},{id:`create_workflow`,category:`resource`},{id:`manage_resource`,category:`resource`},{id:`manage_team`,category:`team`},{id:`manage_all_teams`,category:`team`},{id:`manage_chatbot`,category:`workspace`},{id:`manage_channel_agents`,category:`workspace`}].map(e=>e.id)),_d=F({id:gd,name:D(),descriptions:P(D()).min(1),category:hd});F({lang:Dl}),F({permissions:P(_d)}),new Set(Object.values({[K.ManageCapability]:K.ManageCapability,[K.ManageTeam]:K.ManageTeam,[K.ManageChannelAgents]:K.ManageChannelAgents})),F({permissions:P(gd)});const q={SELF:`self`,WORKSPACE:`workspace`,PUBLIC:`public`},vd=z([q.SELF,q.WORKSPACE,q.PUBLIC]);q.SELF,q.WORKSPACE,q.PUBLIC;const yd=z([q.PUBLIC,q.WORKSPACE,`none`]);q.PUBLIC,q.WORKSPACE;const bd=j().int().positive().optional(),xd=k().nullable(),Sd=F({id:k(),name:D(),mimeType:D(),size:j(),url:A()}),Cd=L(`type`,[F({id:k(),type:B(`file`),workingCopyAvailable:M().optional(),hasUnsavedWork:M().optional(),baseVersionNumber:j().int().positive().optional(),projectId:xd,file:Sd,versionNumber:bd,createdAt:V(),updatedAt:V()}),F({id:k(),type:B(`website`),projectId:xd,url:A(),sandboxId:D().nullable(),title:D().optional(),visibility:vd.default(q.SELF),source:Sd.optional(),hasUnsavedWork:M().optional(),baseVersionNumber:j().int().positive().optional(),versionNumber:bd,createdAt:V(),updatedAt:V()}),F({id:k(),type:B(`deck`),projectId:xd,title:D(),pdf:Sd,pptx:Sd.optional(),hasUnsavedWork:M().optional(),baseVersionNumber:j().int().positive().optional(),versionNumber:bd,createdAt:V(),updatedAt:V()})]);F({data:P(Cd),nextKey:D().optional()}),F({data:Cd}),F({data:F({webViewLink:A()})}),F({visibility:vd});const wd=F({id:k(),versionNumber:j().int().positive(),title:D().nullable(),summary:D().nullable(),editor:F({id:k(),name:D(),email:D(),image:D().nullable()}),createdAt:V(),file:Sd.nullable(),sourceTask:I([F({visible:B(!0),id:k(),title:D().nullable()}),F({visible:B(!1)})]).nullable(),revertedFrom:j().int().positive().nullable()});F({data:F({headVersionId:k(),canRevert:M(),versions:P(wd)})}),F({summary:D().trim().min(1).max(500).optional()}),F({data:L(`status`,[F({status:B(`saved`),versionId:k(),versionNumber:j().int().positive()}),F({status:B(`unchanged`),versionNumber:j().int().positive()})])});const Td=F({id:k(),name:D()});F({assetProjectId:k().nullable(),assetName:D(),assetHasPreviewableVersions:M(),currentVersionNumber:j().int().positive(),currentVersionSavedAt:V(),currentVersionEditor:Td,baseVersionNumber:j().int().positive()}).extend({assetId:k()}),F({expectedHeadVersionId:k()}),F({data:F({versionId:k(),versionNumber:j().int().positive(),revertedFrom:j().int().positive()})});const Ed=`always_allow`,Dd={ALWAYS_ASK:`always_ask`,AUTO:`auto`,ALWAYS_ALLOW:`always_allow`},Od=z(Dd);Od.exclude([`ALWAYS_ASK`]);const kd={BY_USER:`The user denied this tool call, so it did not run.`,UNATTENDED:`This tool call needs human approval and this run has no one to ask, so it did not run.`,ASSESSMENT:`The risk assessment said:`,INSTRUCTION:`Do not call it again unless the user explicitly asks you to, and do not reach the same result through another tool or route. Continue with the parts of the task that do not depend on it. In your reply, say which call was refused and what you left out; if the task cannot be completed without it, stop and ask the user how to proceed.`,TURN_REMINDER:`These calls were refused in the turn you are answering. Name each of them in your reply and say what you could not do without it. Do not present earlier results, background knowledge, or a guess as if the refused call had returned them, and do not reach the same result through another tool or route. If what the user asked for cannot be finished without these calls, say so and ask how to proceed instead of answering around them.`},Ad={ASK:`ask`,DENY:`deny`,BYPASS:`bypass`},jd=z(Ad);Dd.ALWAYS_ALLOW,Dd.AUTO,Dd.ALWAYS_ASK,Ad.BYPASS,Ad.ASK,Ad.DENY,z([`allow_all`,`auto_ask`,`auto_deny`]);const Md=[{id:`allow_all`,toolApprovalMode:Dd.ALWAYS_ALLOW,approvalHandling:Ad.BYPASS},{id:`auto_ask`,toolApprovalMode:Dd.AUTO,approvalHandling:Ad.ASK},{id:`auto_deny`,toolApprovalMode:Dd.AUTO,approvalHandling:Ad.DENY}];function Nd(e,t){return Md.find(n=>n.toolApprovalMode===e&&n.approvalHandling===t)?.id}const Pd={always_ask:`Always Ask`,auto:`Auto`,always_allow:`Always Allow`},Fd={always_ask:`Ask before each tool, unless it is already set to always allow`,auto:`Ask before high-risk calls and tools that need approval; run the rest`,always_allow:`Run tools without asking, except those that need approval`},Id={WORKSPACE_POLICY:`workspace_policy_need_approval`,TASK_POLICY:`task_policy_need_approval`,USER_POLICY:`user_policy_need_approval`,ALWAYS_ASK_MODE:`always_ask_mode`,REQUIRES_USER_INTERACTION:`tool_requires_user_interaction`,HIGH_SENSITIVITY:`high_sensitivity`,MUTATING_TOOL:`mutating_tool`,NO_SIGNALS:`no_signals`,ASSESSMENT_HIGH_RISK:`assessment_high_risk`,ASSESSMENT_WRITE_CLIPPED:`assessment_write_clipped`,ASSESSMENT_WRITES_DROPPED:`assessment_writes_dropped`,ASSESSMENT_WRITES_TOO_LONG:`assessment_writes_too_long`,ASSESSMENT_FAILED:`assessment_failed`,POLICY_LOOKUP_FAILED:`policy_lookup_failed`,INNER_TOOL_NOT_FOUND:`inner_tool_not_found`,INPUT_MISSING_TOOL_NAME:`input_missing_tool_name`,INNER_RESOLUTION_FAILED:`inner_resolution_failed`},Ld=new Set(Object.values(Id));function Rd(e){return Ld.has(e)}const zd=new Set([Id.POLICY_LOOKUP_FAILED,Id.INNER_TOOL_NOT_FOUND,Id.INPUT_MISSING_TOOL_NAME,Id.INNER_RESOLUTION_FAILED]);function Bd(e){return zd.has(e)}function Vd(e){let[t,...n]=e?.split(`
|
|
70
|
+
`)??[],r=n.join(`
|
|
71
|
+
`).trim();return{reason:t===void 0||!Rd(t)?`generic`:Bd(t)?`policy_unresolved`:t,detail:r||void 0}}function Hd(e){return Vd(e).reason}const Ud={workspace_policy_need_approval:`Your workspace requires approval before this tool runs.`,task_policy_need_approval:`This task is set to ask before this tool runs.`,user_policy_need_approval:`You chose to be asked before this tool runs.`,always_ask_mode:`Your approval mode asks before every tool.`,tool_requires_user_interaction:`This tool needs your input to continue.`,high_sensitivity:`This tool is marked high risk.`,mutating_tool:`This tool can change data.`,no_signals:`This tool has not declared what it changes.`,assessment_high_risk:`This call was assessed as high risk.`,assessment_write_clipped:`A file this command may run was recorded only in part, so it cannot be inspected:`,assessment_writes_dropped:`Files written this turn are no longer on record, so this command cannot be inspected.`,assessment_writes_too_long:`The files this command may run are too long to inspect.`,assessment_failed:`The risk check was unavailable, so it needs your approval.`,policy_unresolved:`This tool's policy could not be resolved, so it needs your approval.`,generic:`This tool needs your approval before it runs.`};function Wd(e){return Ud[Hd(e)]}const Gd={PREAUTHORIZED:`preauthorized`,LOW_RISK:`low_risk`};function Kd(e){if(e?.isAutomatic===!0&&e.approved===!0)return e.reason===`Preauthorized for this task.`?{kind:Gd.PREAUTHORIZED,reason:void 0}:{kind:Gd.LOW_RISK,reason:e.reason}}const qd=z([`invite-only`,`open`]),Jd=D().min(1,`Workspace name is required`).max(50,`Workspace name must be 50 characters or less`).regex(/^[\p{L}\p{N} ._-]+$/u,`Workspace name can only contain letters, numbers, spaces, dashes, underscores, and periods`).refine(e=>e===e.trim(),{message:`Workspace name cannot start or end with spaces`}),Yd=F({name:D().trim().min(1).max(50),latinName:D().trim().max(50).nullable().optional(),logoIconId:k(),faviconIconId:k().nullable().optional()}),Xd=F({name:D().trim().min(1).max(50),latinName:D().trim().max(50).nullable().optional(),logoUrl:D().min(1),faviconUrl:D().nullable().optional()}),Zd=F({id:D(),name:D(),userCount:j(),config:F({branding:Xd.nullable().optional(),additionalModelsEnabled:M().optional(),modelTierCustomizationEnabled:M().optional(),subscriptionModelsEnabled:M().optional(),subscriptionModelsAllowed:M().optional(),subscriptionPoolEnabled:M().optional(),subscriptionPoolAllowed:M().optional(),managedAgentEnabled:M().optional(),autopilotEnabled:M().optional(),subscriptionPoolFallbackModelId:Ku.nullable().optional()}).optional(),createdAt:V(),updatedAt:V()});F({workspaces:P(Zd)}),F({workspaces:P(Zd.extend({config:F({joinPolicy:qd})}))}),F({joined:M()}),F({name:Jd,ownerId:k()}),F({name:Jd});const Qd=D().trim().toLowerCase().max(253).regex(/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z]{2,63}$/,`Invalid email domain`);F({hideThinking:M().optional(),joinPolicy:qd.optional(),allowedDomains:P(D()),defaultToolApprovalMode:Od.optional(),requireReview:M().optional(),shareSensitiveScanEnabled:M().optional(),maxShareVisibility:yd.optional(),maxPreviewVisibility:yd.optional(),disabledModelTiers:P(z(Hu)).optional(),additionalModelsEnabled:M().optional(),modelTierCustomizationEnabled:M().optional(),subscriptionModelsEnabled:M().optional(),subscriptionModelsAllowed:M().optional(),subscriptionPoolEnabled:M().optional(),subscriptionPoolAllowed:M().optional(),managedAgentEnabled:M().optional(),autopilotEnabled:M().optional(),subscriptionPoolFallbackModelId:Ku.nullable().optional(),subscriptionPoolMemberAllowance:D().nullable().optional(),autoTierDisabled:M().optional(),chatbotSlackEffectivelyEnabled:M().optional(),chatbotTeamsEffectivelyEnabled:M().optional(),systemPrompt:D().trim().max(1e3).nullable().optional()}),F({email:D(),name:D(),roles:P(D()),permissions:P(gd)});const $d=z([`requested`,`approved`,`rejected`]);F({workspaceId:k(),invitationId:k()}),F({email:D(),status:$d,workspace:F({id:k(),name:D()})}),F({invitations:P(F({id:k(),workspaceId:k(),email:D(),status:$d,role:D(),requestedSeatType:$u,invitedBy:F({email:D(),name:D(),isMe:M()}).optional(),invitedAt:V().optional(),expiresAt:V().optional(),createdAt:V(),updatedAt:V()})),total:j().int().nonnegative()}),Tu.extend({status:$d.optional(),search:D().trim().max(200).optional()});const ef=F({starter:j().int().nonnegative(),pro:j().int().nonnegative(),premium:j().int().nonnegative()}),tf=F({id:D(),email:D()}),nf=F({id:D(),name:D(),owners:P(tf),userCount:j().int().nonnegative(),paidSeatCount:j().int().nonnegative(),seatCountsByType:ef,createdAt:V(),updatedAt:V()});Tu.extend({search:D().trim().max(200).optional(),exact:yl().optional(),sortBy:z([`createdAt`,`userCount`,`paidSeatCount`]).default(`createdAt`),order:z(Du).default(`desc`)}),F({workspaces:P(nf),total:j().int().nonnegative()}),F({workspaceId:k()});const rf=F({purchasedUsd:j().nonnegative(),grantedUsd:j().nonnegative(),totalUsd:j().nonnegative(),nextExpiry:F({amountUsd:j().nonnegative(),expiresAt:V()}).nullable()}),af=z([`owner`,`admin`,`member`]),of=F({id:D(),email:D(),name:D(),role:D(),seatType:$u.nullable(),joinedAt:V(),loginMethods:P(z(dd)),lastLoginAt:V().nullable(),passwordSetupEmailSentAt:V().nullable()}),sf=F({enabled:M(),modelIds:P(D())}),cf=F({id:D(),name:D()}),lf=F({slackEnabled:M(),slackAvailable:M(),teamsEnabled:M(),teamsAvailable:M(),defaultAgentId:D().nullable(),ownerPanelDisabled:M(),inheritsLegacySettings:M(),agents:P(cf)});F({slackEnabled:M(),teamsEnabled:M(),defaultAgentId:k().nullable(),ownerPanelDisabled:M()});const uf=Yd.extend({logoUrl:D(),faviconUrl:D().nullable().optional()});F({branding:Yd.nullable()}),F({logoIconId:k(),faviconIconId:k(),logoUrl:D(),faviconUrl:D()}),F({id:D(),name:D(),owners:P(tf),userCount:j().int().nonnegative(),paidSeatCount:j().int().nonnegative(),seatCountsByType:ef,extraUsage:rf,members:P(of),allowedDomains:P(D()),advancedModels:sf,modelTierCustomizationEnabled:M(),chatbotSettings:lf,subscriptionModelsAllowed:M(),subscriptionPoolAllowed:M(),managedAgentEnabled:M(),autopilotEnabled:M(),branding:uf.nullable(),createdAt:V(),updatedAt:V()}),F({allowedDomains:P(Qd).max(50)}),F({enabled:M(),modelIds:P(D().trim().min(1).max(200)).max(100)}).extend(Zu.shape),F({enabled:M()}).extend(Zu.shape);const df=F({id:k(),userId:k(),workspaceId:k(),year:j(),month:j(),totalCost:D(),poolCost:D().optional(),operationCount:j(),createdAt:V(),updatedAt:V(),user:F({id:k(),name:D(),email:D()}),budgetOverride:F({budget:D().nullable()}).nullable().optional(),poolAllowanceOverride:F({allowance:D().nullable()}).nullable().optional()});wu.extend({search:D().trim().max(200).optional()}),F({monthlyUsages:P(df),nextKey:D().optional()});const ff=[`super_admin`,`operator`];z([`vertex/gemini-3.7-flash`,`vertex/gemini-3.5-flash`]),F({provider:B(`gemini`),model:D().min(1),estimatedHourlyCostUsd:j().nonnegative()}),F({model:D().min(1)});const pf=F({id:k(),email:D()});F({admins:P(F({id:k(),email:D(),role:z(ff),createdBy:pf.nullable(),createdAt:V(),updatedAt:V()}))}),F({id:k(),role:z(ff)}),F({email:nc(),role:z(ff)}),F({adminId:k()}),F({email:nc(),name:D().trim().min(1).max(100).optional(),password:fd,workspaceId:k().optional(),role:af.default(`member`)});const mf=F({id:k(),email:D(),name:D(),createdAt:V()}),hf=F({resetPasswordUrl:A(),resetPasswordExpiresAt:V()});mf.extend(hf.shape),F({email:nc(),role:af.default(`member`),sendPasswordSetupEmail:M().default(!1)}),F({id:k(),email:D(),name:D(),role:D(),passwordSetupEmailSent:M()}),F({workspaceId:k(),userId:k()}),F({sendEmail:M().default(!1)}),hf.extend({emailSentAt:V().nullable()}),F({role:af}),F({role:z(ff)});const gf=[`create`,`update`,`delete`],_f=[`workspace`,`admin`,`user`,`extra_usage`,`marketplace_agent`,`marketplace_skill`,`azure_openai_deployment`,`connector`,`model_tier`,`announcement`],vf=[`success`,`failure`],yf=F({adminId:k(),email:D().nullable(),isRemoved:M()}),bf=F({ipAddress:D().optional(),details:R(D(),N()).optional(),errorMessage:D().optional()}),xf=F({id:k(),actor:yf,action:z(gf),resourceType:z(_f),resourceId:D().nullable(),resourceLabel:D().nullable(),status:z(vf),metadata:bf,createdAt:V()});Tu.extend({actorAdminId:k().optional(),action:z(gf).optional(),resourceType:z(_f).optional(),status:z(vf).optional(),workspaceSearch:D().trim().max(200).optional(),from:U.optional(),to:U.optional()}),F({items:P(xf),total:j().int().nonnegative()});const Sf=F({id:k(),workspaceId:k().nullable(),contentI18n:pu,ctaUrl:D().nullable(),urgency:Rl,category:Ll,audience:Cu,channels:mu,surface:hu,mediaKey:D().nullable(),createdBy:k().nullable(),createdAt:V()});Tu.extend({surface:hu.optional()}),F({items:P(Sf),total:j().int().nonnegative()}),F({announcementId:k()});const Cf={"user:read":`Read your profile information`,"user:write":`Update your profile and preferences`,"user:email":`Read your email address`,"workspaces:read":`List and read your workspaces`,"workspaces:write":`Create and modify workspaces`,"tasks:read":`Read your task history and messages`,"tasks:write":`Create and send messages`,"tasks:delete":`Delete your tasks`,"projects:read":`List and read your projects`,"projects:write":`Create and modify projects`,"agents:read":`List and read agents`,"agents:write":`Create and modify agents`,"agents:execute":`Execute agents via the external API`,"connectors:read":`List available connectors`,"connectors:write":`Configure connector settings`,"tools:read":`List available tools`,"tools:execute":`Execute tools`,"skills:read":`List and read skills`,"skills:write":`Create and modify skills`,"meetings:read":`Read meetings and recordings`,"meetings:write":`Create and modify meetings and recordings`,"notifications:read":`Read your notifications`,"notifications:write":`Manage notification state and device registrations`,"publishes:read":`List and read publish requests`,"publishes:write":`Submit, approve, reject, and revoke publishes`,"calendar:read":`Read your calendar accounts and events`,"calendar:write":`Manage calendar accounts and sync settings`,"schedules:read":`Read your schedules`,"schedules:write":`Create and modify schedules`,"subscriptions:read":`Read your personal subscription connections`,"subscriptions:write":`Connect and disconnect personal subscriptions`,"workflows:read":`Read your workflows and their runs`,"workflows:write":`Create, modify, and run workflows`,"chatbot:read":`List and read chatbot installations and configurations`,"chatbot:write":`Manage chatbot installations and configurations`,"llm:chat":`Call LLM models via the proxy endpoint`,offline_access:`Access your data when you are not present`},wf=[`offline_access`,`user:email`],Tf=Object.keys(Cf).filter(e=>!wf.includes(e));if(Tf.length===0)throw Error(`PAT_AVAILABLE_SCOPES must not be empty`);const Ef=z(Tf),Df=F({id:k(),name:D(),tokenPrefix:D(),scopes:P(D()).nullable(),resources:F({agents:P(D()).optional(),skills:P(D()).optional(),connectors:P(D()).optional()}).nullable(),expiresAt:V().nullable(),lastUsedAt:V().nullable(),createdAt:V()});F({name:D().trim().min(1).max(200),expiresInDays:j().int().min(1).max(3650).nullable(),scopes:P(Ef).min(1).transform(e=>[...new Set(e)]).nullable().default(null)}).refine(e=>!e.scopes?.includes(`agents:execute`),{message:`issue execute keys via POST /agents/:agentId/apiKeys`,path:[`scopes`]});const Of=F({token:D(),data:Df});F({tokens:P(Df)});var kf=e(t(((e,t)=>{(function(e){let n=`(0?\\d+|0x[a-f0-9]+)`,r={fourOctet:RegExp(`^${n}\\.${n}\\.${n}\\.${n}$`,`i`),threeOctet:RegExp(`^${n}\\.${n}\\.${n}$`,`i`),twoOctet:RegExp(`^${n}\\.${n}$`,`i`),longValue:RegExp(`^${n}$`,`i`)},i=RegExp(`^0[0-7]+$`,`i`),a=RegExp(`^0x[a-f0-9]+$`,`i`),o=`%[0-9a-z]{1,}`,s=`(?:[0-9a-f]+::?)+`,c={zoneIndex:RegExp(o,`i`),native:RegExp(`^(::)?(${s})?([0-9a-f]+)?(::)?(${o})?$`,`i`),deprecatedTransitional:RegExp(`^(?:::)(${n}\\.${n}\\.${n}\\.${n}(${o})?)$`,`i`),transitional:RegExp(`^((?:${s})|(?:::)(?:${s})?)${n}\\.${n}\\.${n}\\.${n}(${o})?$`,`i`)};function l(e,t){if(e.indexOf(`::`)!==e.lastIndexOf(`::`))return null;let n=0,r=-1,i=(e.match(c.zoneIndex)||[])[0],a,o;for(i&&(i=i.substring(1),e=e.replace(/%.+$/,``));(r=e.indexOf(`:`,r+1))>=0;)n++;if(e.substr(0,2)===`::`&&n--,e.substr(-2,2)===`::`&&n--,n>t)return null;for(o=t-n,a=`:`;o--;)a+=`0:`;return e=e.replace(`::`,a),e[0]===`:`&&(e=e.slice(1)),e[e.length-1]===`:`&&(e=e.slice(0,-1)),t=(function(){let t=e.split(`:`),n=[];for(let e=0;e<t.length;e++)n.push(parseInt(t[e],16));return n})(),{parts:t,zoneId:i}}function u(e,t,n,r){if(e.length!==t.length)throw Error(`ipaddr: cannot match CIDR for objects with different lengths`);let i=0,a;for(;r>0;){if(a=n-r,a<0&&(a=0),e[i]>>a!==t[i]>>a)return!1;r-=n,i+=1}return!0}function d(e){if(a.test(e))return parseInt(e,16);if(e[0]===`0`&&!isNaN(parseInt(e[1],10))){if(i.test(e))return parseInt(e,8);throw Error(`ipaddr: cannot parse ${e} as octal`)}return parseInt(e,10)}function f(e,t){for(;e.length<t;)e=`0${e}`;return e}let p={};p.IPv4=(function(){function e(e){if(e.length!==4)throw Error(`ipaddr: ipv4 octet count should be 4`);let t,n;for(t=0;t<e.length;t++)if(n=e[t],!(0<=n&&n<=255))throw Error(`ipaddr: ipv4 octet should fit in 8 bits`);this.octets=e}return e.prototype.SpecialRanges={unspecified:[[new e([0,0,0,0]),8]],broadcast:[[new e([255,255,255,255]),32]],multicast:[[new e([224,0,0,0]),4]],linkLocal:[[new e([169,254,0,0]),16]],loopback:[[new e([127,0,0,0]),8]],carrierGradeNat:[[new e([100,64,0,0]),10]],private:[[new e([10,0,0,0]),8],[new e([172,16,0,0]),12],[new e([192,168,0,0]),16]],reserved:[[new e([192,0,0,0]),24],[new e([192,0,2,0]),24],[new e([192,88,99,0]),24],[new e([198,18,0,0]),15],[new e([198,51,100,0]),24],[new e([203,0,113,0]),24],[new e([240,0,0,0]),4]],as112:[[new e([192,175,48,0]),24],[new e([192,31,196,0]),24]],amt:[[new e([192,52,193,0]),24]]},e.prototype.kind=function(){return`ipv4`},e.prototype.match=function(e,t){let n;if(t===void 0&&(n=e,e=n[0],t=n[1]),e.kind()!==`ipv4`)throw Error(`ipaddr: cannot match ipv4 address with non-ipv4 one`);return u(this.octets,e.octets,8,t)},e.prototype.prefixLengthFromSubnetMask=function(){let e=0,t=!1,n={0:8,128:7,192:6,224:5,240:4,248:3,252:2,254:1,255:0},r,i,a;for(r=3;r>=0;--r)if(i=this.octets[r],i in n){if(a=n[i],t&&a!==0)return null;a!==8&&(t=!0),e+=a}else return null;return 32-e},e.prototype.range=function(){return p.subnetMatch(this,this.SpecialRanges)},e.prototype.toByteArray=function(){return this.octets.slice(0)},e.prototype.toIPv4MappedAddress=function(){return p.IPv6.parse(`::ffff:${this.toString()}`)},e.prototype.toNormalizedString=function(){return this.toString()},e.prototype.toString=function(){return this.octets.join(`.`)},e})(),p.IPv4.broadcastAddressFromCIDR=function(e){try{let t=this.parseCIDR(e),n=t[0].toByteArray(),r=this.subnetMaskFromPrefixLength(t[1]).toByteArray(),i=[],a=0;for(;a<4;)i.push(parseInt(n[a],10)|parseInt(r[a],10)^255),a++;return new this(i)}catch{throw Error(`ipaddr: the address does not have IPv4 CIDR format`)}},p.IPv4.isIPv4=function(e){return this.parser(e)!==null},p.IPv4.isValid=function(e){try{return new this(this.parser(e)),!0}catch{return!1}},p.IPv4.isValidCIDR=function(e){try{return this.parseCIDR(e),!0}catch{return!1}},p.IPv4.isValidFourPartDecimal=function(e){return!!(p.IPv4.isValid(e)&&e.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/))},p.IPv4.isValidCIDRFourPartDecimal=function(e){let t=e.match(/^(.+)\/(\d+)$/);return!p.IPv4.isValidCIDR(e)||!t?!1:p.IPv4.isValidFourPartDecimal(t[1])},p.IPv4.networkAddressFromCIDR=function(e){let t,n,r,i,a;try{for(t=this.parseCIDR(e),r=t[0].toByteArray(),a=this.subnetMaskFromPrefixLength(t[1]).toByteArray(),i=[],n=0;n<4;)i.push(parseInt(r[n],10)&parseInt(a[n],10)),n++;return new this(i)}catch{throw Error(`ipaddr: the address does not have IPv4 CIDR format`)}},p.IPv4.parse=function(e){let t=this.parser(e);if(t===null)throw Error(`ipaddr: string is not formatted like an IPv4 Address`);return new this(t)},p.IPv4.parseCIDR=function(e){let t;if(t=e.match(/^(.+)\/(\d+)$/)){let e=parseInt(t[2]);if(e>=0&&e<=32){let n=[this.parse(t[1]),e];return Object.defineProperty(n,"toString",{value:function(){return this.join(`/`)}}),n}}throw Error(`ipaddr: string is not formatted like an IPv4 CIDR range`)},p.IPv4.parser=function(e){let t,n,i;if(t=e.match(r.fourOctet))return(function(){let e=t.slice(1,6),r=[];for(let t=0;t<e.length;t++)n=e[t],r.push(d(n));return r})();if(t=e.match(r.longValue)){if(i=d(t[1]),i>4294967295||i<0)throw Error(`ipaddr: address outside defined range`);return(function(){let e=[],t;for(t=0;t<=24;t+=8)e.push(i>>t&255);return e})().reverse()}else if(t=e.match(r.twoOctet))return(function(){let e=t.slice(1,4),n=[];if(i=d(e[1]),i>16777215||i<0)throw Error(`ipaddr: address outside defined range`);return n.push(d(e[0])),n.push(i>>16&255),n.push(i>>8&255),n.push(i&255),n})();else if(t=e.match(r.threeOctet))return(function(){let e=t.slice(1,5),n=[];if(i=d(e[2]),i>65535||i<0)throw Error(`ipaddr: address outside defined range`);return n.push(d(e[0])),n.push(d(e[1])),n.push(i>>8&255),n.push(i&255),n})();else return null},p.IPv4.subnetMaskFromPrefixLength=function(e){if(e=parseInt(e),e<0||e>32)throw Error(`ipaddr: invalid IPv4 prefix length`);let t=[0,0,0,0],n=0,r=Math.floor(e/8);for(;n<r;)t[n]=255,n++;return r<4&&(t[r]=2**(e%8)-1<<8-e%8),new this(t)},p.IPv6=(function(){function e(e,t){let n,r;if(e.length===16)for(this.parts=[],n=0;n<=14;n+=2)this.parts.push(e[n]<<8|e[n+1]);else if(e.length===8)this.parts=e;else throw Error(`ipaddr: ipv6 part count should be 8 or 16`);for(n=0;n<this.parts.length;n++)if(r=this.parts[n],!(0<=r&&r<=65535))throw Error(`ipaddr: ipv6 part should fit in 16 bits`);t&&(this.zoneId=t)}return e.prototype.SpecialRanges={unspecified:[new e([0,0,0,0,0,0,0,0]),128],linkLocal:[new e([65152,0,0,0,0,0,0,0]),10],multicast:[new e([65280,0,0,0,0,0,0,0]),8],loopback:[new e([0,0,0,0,0,0,0,1]),128],uniqueLocal:[new e([64512,0,0,0,0,0,0,0]),7],ipv4Mapped:[new e([0,0,0,0,0,65535,0,0]),96],discard:[new e([256,0,0,0,0,0,0,0]),64],rfc6145:[new e([0,0,0,0,65535,0,0,0]),96],rfc6052:[new e([100,65435,0,0,0,0,0,0]),96],"6to4":[new e([8194,0,0,0,0,0,0,0]),16],teredo:[new e([8193,0,0,0,0,0,0,0]),32],benchmarking:[new e([8193,2,0,0,0,0,0,0]),48],amt:[new e([8193,3,0,0,0,0,0,0]),32],as112v6:[[new e([8193,4,274,0,0,0,0,0]),48],[new e([9760,79,32768,0,0,0,0,0]),48]],deprecated:[new e([8193,16,0,0,0,0,0,0]),28],orchid2:[new e([8193,32,0,0,0,0,0,0]),28],droneRemoteIdProtocolEntityTags:[new e([8193,48,0,0,0,0,0,0]),28],reserved:[[new e([8193,0,0,0,0,0,0,0]),23],[new e([8193,3512,0,0,0,0,0,0]),32]]},e.prototype.isIPv4MappedAddress=function(){return this.range()===`ipv4Mapped`},e.prototype.kind=function(){return`ipv6`},e.prototype.match=function(e,t){let n;if(t===void 0&&(n=e,e=n[0],t=n[1]),e.kind()!==`ipv6`)throw Error(`ipaddr: cannot match ipv6 address with non-ipv6 one`);return u(this.parts,e.parts,16,t)},e.prototype.prefixLengthFromSubnetMask=function(){let e=0,t=!1,n={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},r,i;for(let a=7;a>=0;--a)if(r=this.parts[a],r in n){if(i=n[r],t&&i!==0)return null;i!==16&&(t=!0),e+=i}else return null;return 128-e},e.prototype.range=function(){return p.subnetMatch(this,this.SpecialRanges)},e.prototype.toByteArray=function(){let e,t=[],n=this.parts;for(let r=0;r<n.length;r++)e=n[r],t.push(e>>8),t.push(e&255);return t},e.prototype.toFixedLengthString=function(){let e=(function(){let e=[];for(let t=0;t<this.parts.length;t++)e.push(f(this.parts[t].toString(16),4));return e}).call(this).join(`:`),t=``;return this.zoneId&&(t=`%${this.zoneId}`),e+t},e.prototype.toIPv4Address=function(){if(!this.isIPv4MappedAddress())throw Error(`ipaddr: trying to convert a generic ipv6 address to ipv4`);let e=this.parts.slice(-2),t=e[0],n=e[1];return new p.IPv4([t>>8,t&255,n>>8,n&255])},e.prototype.toNormalizedString=function(){let e=(function(){let e=[];for(let t=0;t<this.parts.length;t++)e.push(this.parts[t].toString(16));return e}).call(this).join(`:`),t=``;return this.zoneId&&(t=`%${this.zoneId}`),e+t},e.prototype.toRFC5952String=function(){let e=/((^|:)(0(:|$)){2,})/g,t=this.toNormalizedString(),n=0,r=-1,i;for(;i=e.exec(t);)i[0].length>r&&(n=i.index,r=i[0].length);return r<0?t:`${t.substring(0,n)}::${t.substring(n+r)}`},e.prototype.toString=function(){return this.toRFC5952String()},e})(),p.IPv6.broadcastAddressFromCIDR=function(e){try{let t=this.parseCIDR(e),n=t[0].toByteArray(),r=this.subnetMaskFromPrefixLength(t[1]).toByteArray(),i=[],a=0;for(;a<16;)i.push(parseInt(n[a],10)|parseInt(r[a],10)^255),a++;return new this(i)}catch(e){throw Error(`ipaddr: the address does not have IPv6 CIDR format (${e})`)}},p.IPv6.isIPv6=function(e){return this.parser(e)!==null},p.IPv6.isValid=function(e){if(typeof e==`string`&&e.indexOf(`:`)===-1)return!1;try{let t=this.parser(e);return new this(t.parts,t.zoneId),!0}catch{return!1}},p.IPv6.isValidCIDR=function(e){if(typeof e==`string`&&e.indexOf(`:`)===-1)return!1;try{return this.parseCIDR(e),!0}catch{return!1}},p.IPv6.networkAddressFromCIDR=function(e){let t,n,r,i,a;try{for(t=this.parseCIDR(e),r=t[0].toByteArray(),a=this.subnetMaskFromPrefixLength(t[1]).toByteArray(),i=[],n=0;n<16;)i.push(parseInt(r[n],10)&parseInt(a[n],10)),n++;return new this(i)}catch(e){throw Error(`ipaddr: the address does not have IPv6 CIDR format (${e})`)}},p.IPv6.parse=function(e){let t=this.parser(e);if(t.parts===null)throw Error(`ipaddr: string is not formatted like an IPv6 Address`);return new this(t.parts,t.zoneId)},p.IPv6.parseCIDR=function(e){let t,n,r;if((n=e.match(/^(.+)\/(\d+)$/))&&(t=parseInt(n[2]),t>=0&&t<=128))return r=[this.parse(n[1]),t],Object.defineProperty(r,"toString",{value:function(){return this.join(`/`)}}),r;throw Error(`ipaddr: string is not formatted like an IPv6 CIDR range`)},p.IPv6.parser=function(e){let t,n,r,i,a,o;if(r=e.match(c.deprecatedTransitional))return this.parser(`::ffff:${r[1]}`);if(c.native.test(e))return l(e,8);if((r=e.match(c.transitional))&&(o=r[6]||``,t=r[1],r[1].endsWith(`::`)||(t=t.slice(0,-1)),t=l(t+o,6),t.parts)){for(a=[parseInt(r[2]),parseInt(r[3]),parseInt(r[4]),parseInt(r[5])],n=0;n<a.length;n++)if(i=a[n],!(0<=i&&i<=255))return null;return t.parts.push(a[0]<<8|a[1]),t.parts.push(a[2]<<8|a[3]),{parts:t.parts,zoneId:t.zoneId}}return null},p.IPv6.subnetMaskFromPrefixLength=function(e){if(e=parseInt(e),e<0||e>128)throw Error(`ipaddr: invalid IPv6 prefix length`);let t=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],n=0,r=Math.floor(e/8);for(;n<r;)t[n]=255,n++;return r<16&&(t[r]=2**(e%8)-1<<8-e%8),new this(t)},p.fromByteArray=function(e){let t=e.length;if(t===4)return new p.IPv4(e);if(t===16)return new p.IPv6(e);throw Error(`ipaddr: the binary input is neither an IPv6 nor IPv4 address`)},p.isValid=function(e){return p.IPv6.isValid(e)||p.IPv4.isValid(e)},p.isValidCIDR=function(e){return p.IPv6.isValidCIDR(e)||p.IPv4.isValidCIDR(e)},p.parse=function(e){if(p.IPv6.isValid(e))return p.IPv6.parse(e);if(p.IPv4.isValid(e))return p.IPv4.parse(e);throw Error(`ipaddr: the address has neither IPv6 nor IPv4 format`)},p.parseCIDR=function(e){try{return p.IPv6.parseCIDR(e)}catch{try{return p.IPv4.parseCIDR(e)}catch{throw Error(`ipaddr: the address has neither IPv6 nor IPv4 CIDR format`)}}},p.process=function(e){let t=this.parse(e);return t.kind()===`ipv6`&&t.isIPv4MappedAddress()?t.toIPv4Address():t},p.subnetMatch=function(e,t,n){let r,i,a,o;for(i in n??=`unicast`,t)if(Object.prototype.hasOwnProperty.call(t,i)){for(a=t[i],a[0]&&!(a[0]instanceof Array)&&(a=[a]),r=0;r<a.length;r++)if(o=a[r],e.kind()===o[0].kind()&&e.match.apply(e,o))return i}return n},t!==void 0&&t.exports?t.exports=p:e.ipaddr=p})(e)}))(),1);const Af={ipv4Compatible:[kf.default.IPv6.parseCIDR(`::/96`)],localUseNat64:[kf.default.IPv6.parseCIDR(`64:ff9b:1::/48`)],siteLocal:[kf.default.IPv6.parseCIDR(`fec0::/10`)],documentation:[kf.default.IPv6.parseCIDR(`3fff::/20`)],segmentRoutingSid:[kf.default.IPv6.parseCIDR(`5f00::/16`)]};function jf(e){if(!kf.default.isValid(e))return!1;let t=kf.default.parse(e);return t.range()===`unicast`?t.kind()===`ipv4`||kf.default.subnetMatch(t,Af,`public`)===`public`:!1}function Mf(e){try{let{hostname:t}=new URL(e),n=t.toLowerCase().replace(/\.$/u,``);if(n===`localhost`||n.endsWith(`.localhost`))return!1;let r=n.startsWith(`[`)&&n.endsWith(`]`)?n.slice(1,-1):n;return!kf.default.isValid(r)||jf(r)}catch{return!1}}const Nf=A().min(1).max(4096).refine(e=>{try{return[`http:`,`https:`].includes(new URL(e).protocol)}catch{return!1}},{message:`Only HTTP/HTTPS protocols are allowed`}).refine(Mf,{message:`Access to private network addresses is not allowed`}),Pf=z([`queued`,`running`,`completed`,`failed`]),Ff=F({tool:D(),connectorId:D().optional(),summary:D(),status:D()});F({executionId:k(),status:Pf,agentVersionId:k().optional(),output:F({text:D(),structured:N().optional()}).optional(),actions:P(Ff).optional(),cost:j().optional()}),F({executionId:k(),status:B(`running`)}),F({input:D().min(1).max(1e5),agentVersionId:k().optional(),webhookUrl:Nf.optional(),metadata:R(D().max(100),D().max(1e3)).refine(e=>Object.keys(e).length<=20,{message:`metadata supports at most 20 keys`}).optional()}),F({requestsPerMinute:j().int().min(1).max(1e4).nullable()}),F({requestsPerMinute:j().int().nullable()}),F({items:P(Df.pick({id:!0,name:!0,createdAt:!0,lastUsedAt:!0}))}),F({name:D().trim().min(1).max(200),expiresInDays:j().int().min(1).max(3650).nullable()}),Of.extend({webhookSecret:D()});const J={AGENT:`agent`,ASSET:`asset`,AUDIT_LOG:`audit_log`,CHART:`chart`,IMAGE_GENERATION:`image_generation`,MEETING:`meeting`,MEMORY:`memory`,PROJECT:`project`,SANDBOX:`sandbox`,SCHEDULE:`schedule`,SKILL:`skill`,SKILL_MANAGEMENT:`skill_management`,SLIDES:`slides`,SUBAGENT:`subagent`,TASK:`task`,WEB_SEARCH:`web_search`,WORKFLOW:`workflow`};Object.values(J);const If=[J.WEB_SEARCH,J.IMAGE_GENERATION],Y={SANDBOX:`sandbox`,MULTITASKING:`multitasking`,HISTORY:`history`,CREATION:`creation`,PROJECT:`project`,WEB_SEARCH:`web_search`,SCHEDULE:`schedule`,AGENTS_AND_SKILLS:`agents_and_skills`,AUDIT_LOG:`audit_log`},Lf=Object.values(Y);Y.SANDBOX,J.SANDBOX,J.SKILL,Y.MULTITASKING,J.SUBAGENT,J.WORKFLOW,Y.HISTORY,J.TASK,J.MEETING,J.MEMORY,Y.CREATION,J.ASSET,J.SLIDES,J.IMAGE_GENERATION,Y.PROJECT,J.PROJECT,J.ASSET,Y.WEB_SEARCH,J.WEB_SEARCH,Y.SCHEDULE,J.SCHEDULE,Y.AGENTS_AND_SKILLS,J.AGENT,J.SKILL_MANAGEMENT,Y.AUDIT_LOG,J.AUDIT_LOG;const Rf=Wc(z(Lf),M());function zf(e,t){return e===void 0?!0:e[t]??t!==Y.AUDIT_LOG}function Bf(e){return Object.fromEntries(Lf.map(t=>[t,e.includes(t)]))}function Vf(e){return Lf.filter(t=>zf(e,t))}const Hf=Object.freeze(Bf([Y.SANDBOX,Y.AGENTS_AND_SKILLS]));J.CHART;const Uf=z([`create`,`user_edit`,`agent_tool`,`restore`,`marketplace_install`,`publish`,`migration`]),Wf=F({id:k(),versionNumber:j().int(),origin:Uf,note:D().nullable(),restoredFromVersionNumber:j().int().nullable(),createdBy:F({id:k(),name:D(),image:D().nullable()}).nullable(),createdAt:V()});F({versions:P(Wf.extend({publishedTargets:F({workspace:M(),teams:P(F({id:k(),name:D()}))})})),nextVersionNumber:j().int().nullable()});const Gf=F({id:k(),name:D(),available:M()}),Kf=Wf.extend({name:D(),description:D(),systemPrompt:D(),modelId:D(),connectorIds:P(k()),capabilities:Rf,conversationStarters:P(D()),tools:P(D()).nullable(),iconId:k().nullable(),iconUrl:D().optional(),skillIds:P(k()),delegatableAgentIds:P(k()),connectors:P(Gf),skills:P(Gf),delegatableAgents:P(Gf)});F({workspaceId:k(),agentId:k(),versionId:k()}),F({expectedHeadVersionId:k(),dryRun:M().optional(),modelId:qu.optional(),omitConnectorIds:P(k()).optional(),omitSkillIds:P(k()).optional(),omitDelegatableAgentIds:P(k()).optional(),omitTools:P(D()).optional(),note:D().trim().max(500).optional()}),F({issues:F({modelUnavailable:M(),connectorIds:P(k()),skillIds:P(k()),delegatableAgentIds:P(k()),tools:P(D())}).optional(),version:F({id:k(),versionNumber:j().int().positive()}).nullable()});const qf={PENDING:`pending`,APPROVED:`approved`,REJECTED:`rejected`,PENDING_UPDATE:`pending_update`};qf.APPROVED,qf.PENDING_UPDATE,qf.PENDING,qf.PENDING_UPDATE;const Jf={CONNECTOR:`connector`,AGENT:`agent`,SKILL:`skill`,MEETING:`meeting`};({...Jf}),Object.values(Jf);const Yf={OWNER:`owner`,MANAGER:`manager`,MEMBER:`member`},Xf={VISIBLE:`visible`,HIDDEN:`hidden`},Zf={OWNER:`owner`,EDITOR:`editor`,VIEWER:`viewer`},Qf=z([Zf.OWNER,Zf.EDITOR,Zf.VIEWER]);Zf.OWNER,Zf.EDITOR,Zf.VIEWER;const $f={USER:`user`,TEAM:`team`},ep=z([$f.USER,$f.TEAM]),tp=Qf.nullable(),np={invalidInput:`invalid_input`,staleRef:`stale_ref`,noMatch:`no_match`,ambiguousLocator:`ambiguous_locator`,resolutionFailed:`resolution_failed`,permissionDenied:`permission_denied`,userCancelled:`user_cancelled`,navigationFailed:`navigation_failed`,timeout:`timeout`,sensitiveContext:`sensitive_context`,backendFailure:`backend_failure`};np.permissionDenied,np.userCancelled,np.sensitiveContext;const rp={DIRECT:`direct`,HINTED:`hinted`};rp.DIRECT,rp.HINTED,new TextEncoder;function ip(e,t){return e.map(e=>({...e,disclosureMode:e.disclosureMode??t}))}const ap=`meta_tool__`,op={SEARCH_TOOLS:`${ap}search_tools`,GET_TOOL_SCHEMAS:`${ap}get_tool_schemas`,EXECUTE_TOOL:`${ap}execute_tool`};function sp(e,t){if(e===op.EXECUTE_TOOL)return we(t)&&typeof t.toolName==`string`?t.toolName:void 0}function cp(e,t){return e===op.EXECUTE_TOOL?sp(e,t):e}const lp=`usage_audit__`,up={GET_DAILY_SUMMARY:`${lp}get_daily_summary`,GET_MONTHLY_COSTS:`${lp}get_monthly_costs`,GET_USER_BREAKDOWN:`${lp}get_user_breakdown`,GET_USER_DAILY_TREND:`${lp}get_user_daily_trend`,FIND_USAGE_DROPS:`${lp}find_usage_drops`,FIND_STALE_SCHEDULES:`${lp}find_stale_schedules`,GET_SCHEDULE_TOOL_CALLS:`${lp}get_schedule_tool_calls`,GET_COST_RANKING:`${lp}get_cost_ranking`,GET_WORKSPACE_TOTALS:`${lp}get_workspace_totals`},dp=`subagent__`,fp={SPAWN:`${dp}spawn`,GET_RUN:`${dp}get_run`},pp=`background__`,mp={LIST_RUNS:`${pp}list_runs`,GET_RUN:`${pp}get_run`,STOP_RUN:`${pp}stop_run`,WAIT:`${pp}wait`},hp=[`browser__`,`task__`,`project__`,`asset__`,`agent__`,pp,`connector__`,`filesystem__`,`image__`,`meeting__`,`memory__`,`sandbox__`,`schedule__`,`skill__`,`site__`,`slides__`,`tool_result__`,ap,lp,`audit_log__`,dp,`ui__`,`web__`,`workflow__`].map(e=>e.slice(0,-2)),gp=[`updatedAt`,`name`],_p={BUILT_IN:`built_in`,CUSTOM_SOURCE_CODE:`custom_source_code`,CUSTOM_REMOTE_URL:`custom_remote_url`},vp=[_p.BUILT_IN,_p.CUSTOM_SOURCE_CODE,_p.CUSTOM_REMOTE_URL],yp=z([`pat`,`oauth`,`dcard-dual`,`google-iap`,`credentials`,`mcp-oauth`,`composio`]),bp=/^[a-z][a-z0-9-]*$/,xp=[`pat`,`credentials`],Sp=F({key:D().regex(bp).max(32),label:D().min(1).max(50),description:D().max(200).optional(),placeholder:D().max(100).optional(),required:M()}),Cp=P(Sp).max(10).refine(e=>new Set(e.map(e=>e.key)).size===e.length,{message:`config field keys must be unique`}),wp=/^[\u0020-\u007E]*$/;R(D().regex(bp).max(32),D().min(1).max(256).regex(wp,`must be printable ASCII`)),D().trim().regex(wp,`must be printable ASCII`);const Tp={pat:!1,oauth:!0,"dcard-dual":!0,"google-iap":!0,credentials:!1,"mcp-oauth":!0,composio:!0};function Ep(e){let t=yp.safeParse(e);return t.success&&Tp[t.data]}const Dp=z([`pending`,`running`,`failed`]),Op=z([`pending`,`in_review`,`approved`,`rejected`]),kp=F({name:D(),isMe:M()}),Ap=F({id:D(),name:D(),configured:M(),builtIn:M()}),jp=F({type:yp,tutorial:D().optional(),configFields:P(Sp).optional(),tokenless:M().optional().describe(`PAT connectors whose connect step is a pure opt-in: the client submits a constant token without asking the user for input`),provider:Ap.optional().describe(`The OAuth provider, only present for OAuth authorization`)});F({iconId:k(),url:A()});const Mp=F({id:k(),name:D(),description:D(),provider:D().nullable().describe(`The provider of the connector, either EntryDesk (for built-in connectors) or Workspace name`),author:F(kp.shape).optional().describe(`The author of the connector, not available for built-in connectors`),connected:M().describe(`Whether the user has connected the connector to the workspace`),iconUrl:D().optional().describe(`The URL of the connector icon`),team:F({id:k(),name:D()}).optional().describe(`The team this connector is published to, only present when createdBy is team`),hasPermission:M().describe(`Whether the user has permission to use the connector`),added:M().describe(`Whether the connector has a workspace_connectors record. Without one it has no tool registry, so the per-connector tool endpoints answer 404`),hasWorkspaceToken:M().describe(`Whether the workspace has a workspace token configured for this connector`),tokenMode:z([`personal`,`workspace`]).describe(`Token mode: personal (each member connects) or workspace (admin provides shared token)`),reviewStatus:Op.optional().describe(`The review status of the connector, not available for built-in connectors`),authorization:jp.optional(),versionNumber:j().int().nullable(),myRole:tp,createdAt:V(),updatedAt:V()});F({connectors:P(Mp),nextKey:D().optional()}),F({connectors:P(Mp.extend({preferredForWorkItems:M().optional(),workItemCapabilities:F({read:M(),create:M(),update:M()})})),nextKey:D().optional()}),wu.extend({reviewStatus:Op.optional().describe(`Filter connectors by review status (only applies to custom connectors)`),includeNotAdded:I([B(`true`).transform(()=>!0),B(`false`).transform(()=>!1),M()]).optional().describe(`Include connectors that have not been added to the workspace (no workspace_connectors record)`),type:z(vp).optional().describe(`Filter connectors by type`),sortBy:z(gp).optional()}).refine(e=>!(e.type===_p.BUILT_IN&&e.reviewStatus),{message:`reviewStatus parameter is not applicable when type is built_in`,path:[`reviewStatus`]}),wu.extend({createdBy:z([`workspace`,`team`,`me`]).optional(),teamId:k().optional(),connectionStatus:z([`all`,`connected`]).optional().default(`all`).describe(`Filter connectors by connection status`),strict:I([B(`true`).transform(()=>!0),B(`false`).transform(()=>!1),M()]).optional().default(!0).describe(`Whether to filter out connectors that the user does not have permission to use`),search:D().trim().max(200).optional().describe(`Search connectors by name using SQL LIKE query`),connectorIds:I([k(),P(k())]).optional().transform(e=>{if(e!==void 0)return Array.isArray(e)?e:[e]}).describe(`Filter connectors by specific IDs`),sortBy:z(gp).optional(),editableFirst:yl().optional()}).refine(e=>!e.teamId||e.createdBy===`team`,{message:`teamId can only be used with createdBy: team`,path:[`teamId`]}).refine(...Eu);const Np=F({id:D(),name:D()}),Pp=F({id:k()}).nullable();F({connectors:P(F({id:k(),type:z(vp),name:D(),description:D(),provider:D().describe(`The provider of the connector, either EntryDesk (for built-in connectors) or Workspace name`),iconUrl:D().optional().describe(`The URL of the connector icon`),author:kp.optional().describe(`The author of the connector, not available for built-in connectors`),roles:P(Np).describe(`The roles of the user who has access to the connector`),executionStatus:Dp.optional().describe(`The execution status of the connector, not available for built-in connectors`),reviewStatus:Op.optional().describe(`The review status of the connector, not available for built-in connectors`),hasWorkspaceToken:M().describe(`Whether the workspace has a workspace token configured for this connector`),tokenMode:z([`personal`,`workspace`]).describe(`Token mode: personal (each member connects) or workspace (admin provides shared token)`),added:M().describe(`Whether the connector has been added to the workspace`),toolNamespace:D().optional().describe(`The namespace of the tool name, available when the connector is added to the workspace`),toolPrefix:D().optional().describe(`Deprecated alias for toolNamespace`),authorization:jp.optional().describe(`The authorization of the connector.`),publish:Pp,myRole:tp,createdAt:V(),updatedAt:V()})),nextKey:D().optional()});const Fp=z([`pat`,`oauth`,`dcard-dual`,`google-iap`,`credentials`,`mcp-oauth`]),Ip={pat:!1,oauth:!0,"dcard-dual":!0,"google-iap":!0,credentials:!1,"mcp-oauth":!1};function Lp(e){let t=Fp.safeParse(e);return t.success&&Ip[t.data]}const Rp=F({type:Fp,provider:D().optional(),scopes:P(D()).optional(),tutorial:D().optional(),configFields:P(Sp).optional()}),zp=F({type:Fp,provider:D().optional(),scopes:P(D()).optional(),tutorial:A().max(100).optional(),configFields:Cp.optional()}).refine(e=>!Lp(e.type)||e.provider!==void 0&&e.provider.trim().length>0&&e.scopes!==void 0&&e.scopes.length>0,{message:`provider and at least one scope are required when type is oauth, google-iap, or dcard-dual`,path:[`provider`,`scopes`]}).refine(e=>e.type!==`dcard-dual`||e.provider!==`googleIAP`,{message:`dcard-dual requires a second provider other than googleIAP`,path:[`provider`]}).refine(e=>!(e.tutorial&&![`pat`,`credentials`].includes(e.type)),{message:`tutorial is only allowed for PAT and CREDENTIALS authorization types`,path:[`tutorial`]}).refine(e=>!(e.configFields?.length&&!xp.some(t=>t===e.type)),{message:`configFields is only allowed for PAT and CREDENTIALS authorization types`,path:[`configFields`]}),Bp=/^[A-Za-z0-9\s]+$/u,Vp=[`empty`,`too_long`,`invalid_characters`,`consecutive_spaces`,`untrimmed`],Hp={empty:e=>e.length===0,too_long:e=>e.length>50,invalid_characters:e=>!Bp.test(e),consecutive_spaces:e=>/\s{2,}/u.test(e),untrimmed:e=>e.trim()!==e},Up={empty:`must not be empty`,too_long:`must be at most 50 characters`,invalid_characters:`must use only letters, digits and spaces`,consecutive_spaces:`must not contain consecutive spaces`,untrimmed:`must not start or end with whitespace`};function Wp(e){return Vp.find(t=>Hp[t](e))}const Gp=/^[a-z][a-z0-9_-]*$/u,Kp=[`empty`,`too_long`,`invalid_characters`,`consecutive_underscores`,`trailing_underscore`,`reserved`],qp={empty:e=>e.length===0,too_long:e=>e.length>32,invalid_characters:e=>!Gp.test(e),consecutive_underscores:e=>e.includes(`__`),trailing_underscore:e=>e.endsWith(`_`),reserved:e=>hp.includes(e)},Jp={empty:`must not be empty`,too_long:`must be at most 32 characters`,invalid_characters:`must start with a lowercase letter and use only lowercase letters, digits, hyphen and underscore`,consecutive_underscores:`must not contain consecutive underscores`,trailing_underscore:`must not end with an underscore`,reserved:`is reserved for a built-in EntryDesk tool namespace`};function Yp(e){return Kp.find(t=>qp[t](e))}function Xp(){return D().superRefine((e,t)=>{let n=Yp(e);n&&t.addIssue({code:`custom`,message:`Tool namespace "${e}" ${Jp[n]}`})})}function Zp(e){let t=e.toLowerCase().replaceAll(/[^a-z0-9]+/gu,`_`).replace(/^_/u,``).replace(/_$/u,``);return/^[0-9]/u.test(t)?`c_${t}`:t}const Qp=z([`streamable_http`,`sse`]);F({id:k(),type:B(_p.CUSTOM_REMOTE_URL),name:D(),description:D(),url:D(),transport:Qp,toolNamespace:D(),toolPrefix:D().describe(`Deprecated alias for toolNamespace`),author:kp.optional(),authorization:Rp.optional(),executionStatus:Dp.optional(),reviewStatus:Op.optional(),createdAt:V(),updatedAt:V(),iconId:k().nullable().optional(),iconUrl:D().optional(),publish:F({id:k()}).nullable(),myRole:tp}),F({id:k(),type:B(_p.CUSTOM_REMOTE_URL),name:D(),description:D(),transport:Qp,url:D(),executionStatus:Dp,reviewStatus:Op,toolNamespace:D(),toolPrefix:D().describe(`Deprecated alias for toolNamespace`),createdAt:V(),updatedAt:V()});function $p(e){return bl(e=>{if(!we(e))return e;let{toolPrefix:t,...n}=e;return t===void 0||`toolNamespace`in n?e:{...n,toolNamespace:t}},e)}$p(F({type:B(_p.CUSTOM_REMOTE_URL),name:D().min(1),description:D().min(1),transport:Qp,url:A(),toolNamespace:Xp().describe(`The tool namespace for the connector. Also accepted as toolPrefix.`),authorization:zp.optional().nullable(),iconId:k().nullable().optional()}));const em=z([Jf.CONNECTOR,Jf.AGENT,Jf.SKILL]),tm=[qf.PENDING,qf.APPROVED,qf.REJECTED,qf.PENDING_UPDATE],nm=F({id:k(),name:D()}),rm=F({id:k(),type:em,name:D(),description:D().optional(),connectorType:z(vp).optional(),tokenMode:z([`personal`,`workspace`]).optional(),authorization:jp.optional(),iconUrl:D().optional(),provider:D().optional()});F({rejectReason:D().trim().max(500).optional()}),F({search:D().trim().max(200).optional(),status:I([z(tm),P(z(tm)).min(1)]).optional(),resourceType:em.optional(),limit:H().int().min(1).max(100).default(20),nextKey:D().optional()});const im=F({id:k(),name:D(),versionNumber:j().int().nullable(),versionId:k().nullable(),publishId:k(),status:z(tm),rejectReason:D().nullable()}),am=F({workspace:F({published:M(),versionNumber:j().int().nullable(),versionId:k().nullable(),publishId:k().nullable(),status:z(tm).nullable(),rejectReason:D().nullable()}),teams:P(im)}),om=F({type:D(),provider:D().optional(),scopes:P(D()).optional(),tutorial:D().optional()}),sm=F({type:B(`connector`),id:k(),name:D(),description:D(),iconUrl:D().optional(),toolPrefix:D(),url:D(),transport:D(),authorization:om.optional()}),cm=F({id:k(),name:D(),hasPermission:M()}),lm=F({id:D(),name:D(),available:M()}),um=F({previous:Kf,current:Kf}),dm=F({type:B(`agent`),id:k(),name:D(),description:D(),iconUrl:D().optional(),systemPrompt:D(),conversationStarters:P(D()),model:lm,connectors:P(cm),capabilities:Rf,diff:um.optional(),changeSummary:D().nullable().optional()}),fm=F({id:k(),description:D(),createdBy:F({id:k(),name:D()}),createdAt:V()}),pm=fm.extend({name:D(),downloadUrl:D(),contentChanged:M()});L(`type`,[sm,dm,F({type:B(`skill`),id:k(),name:D(),description:D(),currentVersion:fm,downloadUrl:D(),previousVersion:pm.optional(),changeSummary:D().nullable().optional()})]);const mm=[`private`,`review`,`live`,`rejected`],hm=F({private:j().int().nonnegative(),review:j().int().nonnegative(),live:j().int().nonnegative(),rejected:j().int().nonnegative()}),gm=F({id:k(),versionNumber:j().int().positive()});function _m(e){let t=e;for(;typeof t==`string`;)try{let e=JSON.parse(t);if(e===t)break;t=e}catch{break}return t}const vm=e=>bl(_m,I([e,D()])),ym=e=>bl(_m,e),bm=F({name:D().describe(`Identifier: file path, resource id, URL, or title.`),detail:D().describe(`What it is plus what was done to it or why it matters — detailed enough to act on again.`)});F({overview:D().describe(`1–3 sentences: what this session is about and where it stands now.`),userRequests:vm(P(D())).describe(`Every distinct thing the user has asked for, in their own framing, oldest → newest. Never drop an ask — even a completed one (record completion in state). Merge near-duplicate or sub-divided asks into a single entry so this list stays bounded across repeated compactions.`),keyFacts:vm(P(D())).describe(`Durable facts, decisions made, concepts/constraints discovered, and errors with their fixes. Omit facts later turns made obsolete.`),artifacts:vm(P(bm)).optional().default([]).describe(`Concrete things touched that may need further action: files, resources, documents, datasets, URLs, IDs.`),constraints:vm(F({preferences:P(D()).describe(`How the user wants output: format, tone, language, style.`),negativeConstraints:P(D()).describe(`What the user explicitly said NOT to do.`)})).describe(`What the user wants and explicitly does not want.`),state:vm(F({status:z([`pending_input`,`in_progress`,`completed`]).describe(`Overall task state at the point of truncation.`),currentWork:D().describe(`What was actively in progress at truncation, detailed enough to resume immediately.`),nextStep:D().describe(`The single most logical next action. Empty only if genuinely blocked or awaiting the user.`),pendingQuestions:P(D()).describe(`Questions the agent still needs answered to proceed.`)})).describe(`Resumption state — how to pick the work back up seamlessly.`)});const xm=1500,Sm=2e3;function Cm(e,t){return e.length<=t?e:`${e.slice(0,t-1)}…`}function wm(e){return[...new Set(e)].slice(0,12)}function Tm(e){let t=new Set;return e.filter(e=>{let n=JSON.stringify([e.value,e.context]);return t.has(n)?!1:(t.add(n),!0)}).slice(0,12)}const Em=P(D().overwrite(e=>Cm(e,500)).max(500)).overwrite(wm).max(12),Dm=P(F({value:D().overwrite(e=>Cm(e,Sm)).max(Sm).describe(`Exact identifier, path, URL, value, resource id, or title.`),context:D().overwrite(e=>Cm(e,500)).max(500).describe(`Why this reference still matters for the continuation.`)})).overwrite(Tm).max(12);F({version:j().min(2).max(2).transform(()=>2),overview:D().overwrite(e=>Cm(e,xm)).max(xm).describe(`A concise orientation to the current conversation and active objective.`),userRequests:ym(Em).describe(`Active or still-relevant user requests. Merge repetitions and omit superseded requests whose effects are preserved elsewhere.`),keyFacts:ym(Em).describe(`Facts and observations whose loss would change later reasoning. Preserve uncertainty and exact values.`),decisions:ym(Em).describe(`Still-relevant accepted, rejected, superseded, or abandoned decisions with enough rationale to apply them consistently and avoid repeating discarded approaches.`),reportedProgress:ym(Em).describe(`Relevant work, observations, and outcomes reported in the conversation. Preserve who or what reported uncertain claims; narration is not runtime-verified progress.`),references:ym(Dm).describe(`Exact identifiers and artifacts that remain necessary for continuation.`),constraints:ym(Em).describe(`Still-governing requirements, preferences, and prohibitions.`),currentFocus:D().overwrite(e=>Cm(e,xm)).max(xm).describe(`The current conversational focus, not a lifecycle state.`),openQuestions:ym(Em).describe(`Unresolved questions, dependencies, or user decisions that still matter.`),continuationHint:D().overwrite(e=>Cm(e,xm)).max(xm).describe(`Advisory conversational guidance only. It never grants permission or defines an executable runtime transition.`)});const Om=F({key:D(),value:D()});F({summary:D(),sessionMeta:vm(F({currentIntent:D()})),knowledgeBase:vm(F({entities:P(Om),factsEstablished:P(D())})),userConstraints:vm(F({formatPreferences:D(),toneStyle:D(),negativeConstraints:P(D())})),workflowStatus:vm(F({lastAction:D(),pendingQuestions:P(D())}))});const km=z([`pending`,`ready`,`failed`]),Am=z([`too_large`,`pdf_encrypted`,`pdf_unreadable`,`unsupported`,`conversion_failed`,`model_unavailable`,`extraction_failed`,`unknown`]),jm=F({unit:z([`page`,`slide`,`row`]).optional(),start:j().int().positive().optional(),end:j().int().positive().optional(),sheet:D().optional(),section:D().optional()}).describe(`Where the passage sits in its source: a page, slide or row range (unit, start and end, inclusive), the spreadsheet sheet, and the heading path. Each field is present only when the source format provides it.`),Mm=k().describe(`Identifies one indexed passage for read_knowledge in this conversation only: re-indexing a source replaces it, so never store it or cite it.`),Nm=2e3,Pm=F({id:k(),projectId:k(),fileId:k(),name:D(),title:D().nullable(),mimeType:D(),size:j().int().nonnegative(),url:D().nullable(),description:D().nullable(),knowledgeIssue:Am.nullable().optional(),addedBy:k(),versionNumber:j().int().positive(),createdAt:V(),updatedAt:V()}),Fm=F({id:k(),projectId:k(),url:D(),title:D().nullable(),status:km,description:D().nullable(),fetchError:D().nullable(),lastFetchedAt:V().nullable(),addedBy:k(),createdAt:V(),updatedAt:V()}),Im=D().max(Nm),Lm=F({description:Im.optional()});Lm.extend({fileId:k()});const Rm=`project_file_version_conflict`,zm=F({expectedVersionNumber:H().int().positive()}),Bm=F({projectFileId:k(),fileName:D(),mimeType:D(),size:j().int().nonnegative(),url:D().nullable(),currentVersionNumber:j().int().positive(),currentVersionSavedAt:V(),currentVersionEditor:Td,baseVersionNumber:j().int().positive()}),Vm=F({code:B(Rm),data:Bm});Lm.extend({url:Nf});const Hm=F({title:D().transform(e=>e.replace(/[\s\p{Cc}]+/gu,` `).trim()||null).pipe(D().max(200).nullable()).optional(),description:Im.optional()}).refine(e=>e.title!==void 0||e.description!==void 0,{message:`Provide a title or a description`});function Um(e){return e.title??e.name}function Wm(e){return e.title??e.url}F({files:P(Pm)}),F({links:P(Fm)});const Gm=1e5,Km=z([`self`,`project`]),qm=z([`task_messages_contain_sensitive_content`,`sharing_disabled`,`share_visibility_not_allowed`,`share_failed`]);F({content:D().trim().min(1).max(Gm),title:D().trim().min(1).max(100).optional(),visibility:Km.optional()}),F({taskId:k(),projectId:k(),visibility:Km,shareLink:A().optional(),shareFailure:qm.optional()});const Jm=z([`task`,`file`,`link`]);F({q:D().trim().min(1).max(200),type:I([Jm,P(Jm).min(1)]).optional().transform(e=>{if(e!==void 0)return[...new Set(Array.isArray(e)?e:[e])]}),limit:H().int().min(1).max(20).default(10)}),F({results:P(L(`type`,[F({type:B(`task`),taskId:k(),title:D(),updatedAt:V(),snippet:D().optional()}),F({type:B(`file`),sourceId:k(),title:D(),description:D().optional(),snippet:D().optional(),evidenceId:Mm,locator:jm}),F({type:B(`link`),sourceId:k(),title:D(),description:D().optional(),snippet:D().optional(),evidenceId:Mm,locator:jm})]))}),F({depth:z([`summary`,`full`]).default(`summary`),offset:H().int().min(0).optional().describe(`Continue a truncated read from a previous response's nextOffset. For a task in full depth it is the number of newest messages to skip; for a file or link it is the byte position to resume the stored text from.`),revision:D().optional().describe(`The revision the previous page reported. A file or link whose stored text was replaced since then answers 409 context_source_changed instead of continuing at the old offset.`),evidenceId:Mm.optional().describe(`Files and links: read the indexed passage a search result's evidenceId names, with the passages right before and after it.`),start:H().int().min(1).optional().describe("Files and links: read the indexed passages overlapping this page, slide or row range (1-based, inclusive). Defaults to `end` when only `end` is given."),end:H().int().min(1).optional().describe("Inclusive end of the `start` range; defaults to `start`.")}),L(`status`,[F({status:B(`text`),sourceType:Jm,sourceId:k(),title:D(),content:D(),truncated:M(),nextOffset:j().int().nonnegative().optional().describe(`Present only when truncated and more remains; pass it back as offset to read the next page.`),revision:D().optional().describe(`Files and links: identifies the stored text this page came from; pass it back with offset so a replaced snapshot is detected.`),passages:P(F({evidenceId:Mm,locator:jm})).optional().describe("Present when the read named an evidenceId or a range: the indexed passages `content` joins, in source order."),nextStart:j().int().positive().optional().describe(`Present when a range read was cut short: pass it as start to continue.`)}),F({status:B(`download`),sourceType:z([`file`,`link`]),sourceId:k(),title:D(),downloadUrl:A()}),F({status:B(`pending`),sourceType:B(`link`),sourceId:k(),title:D()}),F({status:B(`failed`),sourceType:B(`link`),sourceId:k(),title:D(),error:D()})]);const Ym=2e3,Xm=1e4,Zm=z([`owner`,`member`]),Qm=F({id:k(),workspaceId:k(),name:D(),description:D().nullable(),instruction:D().nullable(),createdAt:V(),updatedAt:V()}),$m=F({userId:k(),role:Zm,name:D(),email:D(),image:D().nullable().optional()}),eh=F({teamId:k(),name:D(),memberCount:j().int().nonnegative(),role:B(`member`),visibility:z([`visible`,`hidden`]),canExpand:M(),addedAt:V()}),th=D().max(Xm,`Instruction is too long: the maximum is ${Xm} characters.`);F({name:D().trim().min(1).max(255),description:D().max(Ym).nullable().optional(),instruction:th.nullable().optional()}).partial();const nh=F({userId:k(),name:D(),email:D(),image:D().nullable()}),rh=Qm.extend({role:Zm,creator:nh.nullable(),isShared:M(),hasOtherMembers:M()}),ih=z([`all`,`mine`,`shared`]),ah=z([`lastActivityAt`,`createdAt`]);F({limit:H().int().min(1).max(100).default(50),nextKey:D().optional(),filter:ih.default(`all`),search:D().trim().max(200).optional(),sortBy:ah.default(`lastActivityAt`),order:z(Du).default(`desc`)}),F({projects:P(rh),nextKey:D().optional()}),Qm.extend({role:Zm,creator:nh.nullable(),isShared:M(),members:P($m),teams:P(eh),taskCount:j().int().nonnegative(),sourceCount:j().int().nonnegative(),assetCount:j().int().nonnegative(),assetVersionCount:j().int().nonnegative()}),F({userId:k()}),F({teamId:k()}),F({members:P($m)});const oh=F({teamId:k(),name:D(),memberCount:j().int().nonnegative(),visibility:z([`visible`,`hidden`])});F({q:D().trim().max(100).optional()}),F({teams:P(oh)}),F({role:Zm});const sh=k().optional().describe(`The project the caller last saw the task in. Compared against the current project under the task row lock; a mismatch answers 409 task_project_mismatch and writes nothing. Omitted, the write is unconditional.`);F({projectId:k().nullable(),confirmAssetSharing:M().optional(),expectedProjectId:sh}),F({taskId:k(),projectId:k().nullable()}),F({expectedProjectId:sh});const ch=F({id:k(),name:D()});F({projects:P(F({id:k(),name:D(),description:D().nullable(),addedAt:V(),addedBy:F({id:k(),name:D()}).nullable()})),nextKey:D().optional()});const lh=[`personal`,`managed`],uh={ALWAYS_ALLOW:`always_allow`,NEED_APPROVAL:`need_approval`,BLOCK:`block`},dh=z([uh.ALWAYS_ALLOW,uh.NEED_APPROVAL,uh.BLOCK]),fh=F({toolName:D().trim().min(1).max(200),policy:dh});P(fh).refine(e=>{let t=e.map(e=>e.toolName);return new Set(t).size===t.length},{message:`Duplicate toolName in toolPolicies`});const ph={[uh.ALWAYS_ALLOW]:0,[uh.NEED_APPROVAL]:1,[uh.BLOCK]:2};function mh(...e){let t=new Map;for(let n of e)for(let{toolName:e,policy:r}of n??[]){let n=t.get(e);(n===void 0||ph[r]>ph[n])&&t.set(e,r)}return t}const hh=F({hour:j().int().min(0).max(23),minute:j().int().min(0).max(59)}).describe(`Wall-clock local time in the schedule's own utcOffset timezone (NOT UTC). E.g. { "hour": 9, "minute": 0 } means 9:00 AM in that timezone, regardless of what utcOffset is — do not convert a user-stated local time to UTC before setting this field.`),gh=D().trim().min(1).max(2e3),_h=F({enabled:M().optional(),criteria:gh.optional(),extracted:F({outcomes:P(gh).min(1).max(20),extractedAt:V(),inputFingerprint:D().regex(/^[a-f0-9]{64}$/u).optional(),extractorVersion:j().int().positive().optional()}).optional()});F({completed:B(!1),reason:gh,unmet:P(gh).max(20),criteriaSource:z([`inferred`,`explicit`,`extracted`]),analysis:D().trim().min(1).max(1e3).optional(),escalated:M().optional(),reviewSkipped:M().optional()});const vh=e=>e.hour*60+e.minute,yh=P(F({start:hh,end:hh}).refine(e=>vh(e.end)>vh(e.start),{message:`Run window end must be after start (no cross-midnight)`,path:[`end`]})).min(1).max(5),bh=P(hh).min(1).max(5).refine(e=>new Set(e.map(e=>e.hour*60+e.minute)).size===e.length,{message:`Trigger times must not contain duplicates`}).optional(),xh=P(j().int().min(0).max(6)).min(1);L(`type`,[F({type:B(`no-repeat`)}),F({type:B(`repeat`),interval:L(`unit`,[F({unit:B(`minutes`),every:j().int().min(15,`Minimum interval is 15 minutes`).max(1440,`Maximum interval is 1440 minutes (24 hours)`),dailyWindows:yh.optional(),daysOfWeek:xh.optional()}),F({unit:B(`hours`),every:j().int().min(1),minute:j().int().min(0).max(59),dailyWindows:yh.optional(),daysOfWeek:xh.optional()}),F({unit:B(`days`),every:j().int().min(1),time:hh,times:bh,daysOfWeek:xh.optional()}),F({unit:B(`weeks`),every:j().int().min(1),daysOfWeek:P(j().int().min(0).max(6)).min(1),time:hh}),F({unit:B(`months`),every:j().int().min(1),daysOfMonth:P(j().int().min(1).max(31)),lastDayOfMonth:M(),time:hh})])})]).superRefine((e,t)=>{if(e.type!==`repeat`)return;let n=e.interval;if(n.unit===`months`&&n.daysOfMonth.length===0&&!n.lastDayOfMonth&&t.addIssue({code:`custom`,message:`lastDayOfMonth must be true when daysOfMonth is empty`,path:[`interval`,`daysOfMonth`]}),n.unit===`hours`&&n.every>=24&&(n.daysOfWeek?.length??0)>0&&t.addIssue({code:`custom`,message:`Weekday filter is not available for hourly intervals of 24 hours or more`,path:[`interval`,`daysOfWeek`]}),n.unit===`days`&&n.every%7==0&&(n.daysOfWeek?.length??0)>0&&t.addIssue({code:`custom`,message:`Weekday filter is not supported for day intervals that are a multiple of 7 (the weekday never changes); use the weeks unit instead`,path:[`interval`,`daysOfWeek`]}),n.unit===`hours`&&n.every>=24&&(n.dailyWindows?.length??0)>0&&t.addIssue({code:`custom`,message:`Active windows are not available for hourly intervals of 24 hours or more`,path:[`interval`,`dailyWindows`]}),n.unit!==`minutes`&&n.unit!==`hours`||n.unit===`hours`&&n.every>=24)return;let r=n.dailyWindows;if(!r)return;let i=n.unit===`minutes`?n.every:n.every*60;r.some(e=>vh(e.end)-vh(e.start)<i)&&t.addIssue({code:`custom`,message:`Each run window must be at least as long as the interval`,path:[`interval`,`dailyWindows`]});let a=[...r].toSorted((e,t)=>vh(e.start)-vh(t.start));for(let e=1;e<a.length;e++){let n=a[e],r=a[e-1];if(n&&r&&vh(n.start)<vh(r.end)){t.addIssue({code:`custom`,message:`Run windows must not overlap`,path:[`interval`,`dailyWindows`]});break}}});const Sh=F({id:k(),name:D(),kind:z(lh).optional(),iconUrl:D().optional(),deletedAt:V().optional(),specifiedVersion:gm.nullable().optional(),updatableToVersion:gm.nullable().optional()});k().nullable().optional();const Ch=F({id:D(),name:D()}),wh=F({id:k(),title:D(),read:M(),deletedAt:V().nullable()}),Th=F({id:k(),name:D(),isWorkspaceMember:M()}),Eh=F({id:k(),name:D(),prompt:D(),user:Th.optional(),agent:Sh.optional(),model:Ch.optional(),startsAt:V(),isActive:M(),unreadTasks:j().int(),nextRunAt:V().nullable(),utcOffset:D(),config:gl().meta({type:`object`}),judge:_h.nullish(),toolApprovalMode:Od.nullish(),approvalHandling:jd.nullish(),holidayCalendarIds:P(k()).nullish(),recentTasks:P(wh).optional(),createdAt:V(),updatedAt:V()});Eh.extend({toolPolicies:P(fh)}),F({schedules:P(Eh),nextKey:D().optional()}),wu.extend({search:D().trim().max(200).optional(),sortBy:z([`nextRunAt`,`name`]).optional(),isActive:yl().optional(),agentId:k().optional()});const Dh=z([`queued`,`running`,`completed`,`failed`,`skipped`]),Oh=F({type:D().optional().transform(e=>e===`runtime`||e===`judge`?e:void 0),message:D(),code:D().optional()}),kh=F({id:k(),name:D()}),Ah=z([`approval`,`client`]);F({runs:P(F({id:k(),scheduledAt:V(),agent:Sh.optional(),model:Ch.optional(),task:wh.nullable(),error:Oh.nullish(),status:Dh.optional(),skipReason:D().nullish(),resolvedAt:V().nullish(),resolvedBy:kh.nullish(),waitingReason:Ah.nullish()})),nextKey:D().optional()}),F({resolvedAt:V(),resolvedBy:kh.nullable()});const jh=z([q.SELF,`project`,q.WORKSPACE,q.PUBLIC]);q.SELF,q.WORKSPACE,q.PUBLIC,F({shareId:k(),assetId:k()}),F({data:Cd}),F({visibility:jh.optional(),expectedProjectId:sh}),F({id:k(),visibility:jh,createdAt:V(),updatedAt:V()});const Mh=F({userId:k(),name:D(),email:D(),image:D().nullable().optional(),grantedAt:V()}),Nh=F({teamId:k(),name:D(),memberCount:j().int().nonnegative(),grantedAt:V()});F({data:P(Mh),teams:P(Nh)}),F({data:Mh}),F({data:Nh});const Ph=[`queued`,`running`,`waiting`],Fh=[`approval`,`background`,`client`],Ih=F({taskRunId:k(),streamId:k().nullable(),status:z(Ph),waitingReason:z(Fh).nullable(),pendingToolCalls:P(F({toolCallId:D(),toolName:D(),state:D()})).optional()});F({code:B(`task_busy`),data:Ih}),F({message:F({id:D().optional(),role:D(),parts:P(F({type:D(),text:D().optional()}))}).optional(),fileIds:P(D()).optional()}),z([`step_limit`,`usage_exhausted`,`output_limit`,`retry_limit`,`client_unresponsive`]),z([`running`,`completed`,`failed`]);const Lh=F({id:k(),name:D(),iconId:k().optional(),iconUrl:D().optional(),deletedAt:V().optional(),specifiedVersion:gm.nullable().optional()}),Rh=[`chat`,`chatbot`,`schedule`,`agent_api`],zh=z(Rh);F({tasks:P(F({editAssetId:k().optional(),id:k(),title:D(),read:M(),toolApprovalMode:Od.optional(),userId:k(),workspaceId:k(),source:zh,waitingReason:z(Fh).optional(),share:F({id:k(),visibility:jh}).optional(),isSharedWithOthers:M().optional(),isOwn:M().optional(),agent:Lh.optional(),schedule:F({id:k(),name:D()}).optional(),scheduleRun:F({runId:k(),status:Dh,error:Oh.nullish(),resolvedAt:V().nullable(),resolvedBy:kh.nullish(),canResolve:M()}).optional(),project:ch.nullable().optional(),containsSensitiveContent:M().optional(),createdAt:V(),updatedAt:V()})),nextKey:D().optional()}),F({id:k(),title:D(),visibility:jh,workspace:F({id:k()}),agent:Lh.optional(),project:ch.optional(),createdAt:V()}),F({results:P(F({id:k(),title:D(),titleHighlight:D().nullable(),contentSnippet:D().nullable(),project:ch.nullable().optional(),createdAt:V(),updatedAt:V()})),nextKey:D().optional()});const Bh=[`enabled`,`disabled`];F({userId:k()}),F({status:z(Bh)}),F({monthlyCapUsd:j().positive().nullable()}),F({items:P(F({connectorId:k(),name:D(),authorizedBy:F({id:k(),name:D(),disabled:M()}),updatedAt:V()}))});const Vh=Rh,Hh=[`completed`,`failed`,`running`];wu.extend({limit:H().int().min(1).max(100).default(30),source:z(Vh).optional(),status:z(Hh).optional(),initiatorId:k().optional(),from:U.optional(),to:U.optional(),q:D().trim().max(200).optional()}).refine(e=>e.from===void 0||e.to===void 0||new Date(e.from)<=new Date(e.to),{message:`to must be greater than or equal to from`,path:[`to`]}),F({items:P(F({taskId:k(),title:D(),source:z(Vh),initiator:F({userId:k().nullable(),name:D(),unlinked:M()}).nullable(),status:z(Hh),actionCount:j().int(),cost:j(),createdAt:V()})),nextKey:D().nullable()});const Uh=F({conversationCount:j().int(),actionCount:j().int(),cost:j(),errorRate:j()});F({today:Uh,week:Uh,monthCost:j(),monthlyCapUsd:j().nullable()}),F({items:P(F({id:k(),name:D(),missingConnectorNames:P(D()),unselectedConnectorNames:P(D()),unconnectedConnectorNames:P(D()),disabled:M()})),nextKey:D().nullable()});const Wh={[Y.SANDBOX]:`Sandbox`,[Y.MULTITASKING]:`Multitasking`,[Y.HISTORY]:`History`,[Y.CREATION]:`Content Creation`,[Y.PROJECT]:`Project Knowledge`,[Y.WEB_SEARCH]:`Web Search`,[Y.SCHEDULE]:`Schedules`,[Y.AGENTS_AND_SKILLS]:`Agents & Skills`,[Y.AUDIT_LOG]:`Audit Logs`};function Gh(e){return Wh[e]??e}F({id:k(),versionNumber:j().int().positive()}).nullable();const Kh=10*1024*1024;F({iconId:k(),url:A()});const qh=[`updatedAt`,`usedAt`,`name`];F({search:D().trim().max(200).optional(),nextKey:D().optional(),limit:H().int().min(1).max(100).default(20),sortBy:z(qh).optional()});const Jh=F({id:k(),name:D(),isMe:M()}),Yh=F({id:k()}).nullable();F({agents:P(F({id:k(),name:D(),description:D(),kind:z(lh),isBuiltIn:M().optional(),managedStatus:z(Bh).optional(),provider:D(),author:Jh,iconUrl:D().optional(),publish:Yh,myRole:tp,createdAt:V(),updatedAt:V()})),nextKey:D().optional()}),F({kind:z(lh).optional(),search:D().trim().max(200).optional(),status:z(mm).optional(),nextKey:D().optional(),limit:H().int().min(1).max(100).default(20),sortBy:z(qh).optional()}),F({agents:P(F({id:k(),name:D(),description:D(),kind:z(lh),isBuiltIn:M().optional(),managedStatus:z(Bh).optional(),iconUrl:D().optional(),hasUnpublishedChanges:M(),latestVersionNumber:j().int().nullable(),publishedTo:am.optional(),myRole:tp,createdAt:V(),updatedAt:V()})),nextKey:D().optional(),totalCount:j().int().nonnegative(),statusCounts:hm}),F({id:k(),name:D(),deletedAt:V().optional()});const Xh=F({id:D(),name:D(),available:M(),replacement:F({id:D(),name:D()}).optional()}),Zh=F({id:k(),name:D(),hasPermission:M(),added:M()}),Qh=F({name:D(),isMe:M()}),$h=F({sponsor:F({id:k(),name:D(),image:D().nullable().optional()}),monthlyCapUsd:j().nullable(),skills:P(F({id:k(),name:D()})),delegatableAgents:P(F({id:k(),name:D()})),apiRateLimit:j().int().nullable()});F({id:k(),name:D(),description:D(),kind:z(lh),isBuiltIn:M().optional(),managedStatus:z(Bh).optional(),managed:$h.optional(),model:Xh.optional(),systemPrompt:D().optional(),conversationStarters:P(D()),connectors:P(Zh).optional(),capabilities:Rf.optional(),provider:D(),author:Qh,iconId:k().optional(),iconUrl:D().optional(),versionNumber:j().int().nullable(),selectableVersions:P(gm).optional(),latestVersionNumber:j().int().nullable().optional(),publishedTo:am.optional(),myRole:tp,createdAt:V(),updatedAt:V()}),F({agents:P(F({id:k(),isBuiltIn:M().optional(),name:D(),description:D(),iconUrl:D().optional(),versionNumber:j().int().nullable(),createdAt:V(),updatedAt:V()}))}),F({agents:P(F({id:k(),name:D(),description:D(),kind:z(lh),isBuiltIn:M().optional(),managedStatus:z(Bh).optional(),conversationStarters:P(D()),provider:D().nullable(),author:Qh,publishedTo:am.optional(),team:F({id:k(),name:D()}).optional(),iconUrl:D().optional(),versionNumber:j().int().nullable(),myRole:tp,createdAt:V(),updatedAt:V()})),nextKey:D().optional()});const eg=z([`true`,`false`]).transform(e=>e===`true`);wu.extend({createdBy:z([`workspace`,`team`,`me`]).optional(),kind:z(lh).optional(),teamId:k().optional(),search:D().trim().max(200).optional(),executableOnly:eg.optional(),sortBy:z(qh).optional(),editableFirst:yl().optional()}).refine(e=>!e.teamId||e.createdBy===`team`,{message:`teamId can only be used with createdBy: team`,path:[`teamId`]}).refine(...Eu),F({workspaceId:k(),agentId:k()}),F({limit:H().int().min(1).max(100).default(20),offset:H().int().nonnegative().default(0)});const tg=F({taskId:k(),title:D(),source:zh,amountUsd:j().nonnegative().nullable(),amountCredits:j().nonnegative().nullable(),usageCount:j().int().nonnegative(),lastUsageAt:V(),createdAt:V(),updatedAt:V()}),ng=F({toolName:D(),input:D().optional(),output:D().optional()}),rg=F({role:z([`user`,`assistant`]),texts:P(D()),toolCalls:P(ng).optional()}),ig=F({taskId:k(),title:D(),amountUsd:j().nonnegative().nullable(),amountCredits:j().nonnegative().nullable(),promptTexts:P(D()),messages:P(rg).optional()});F({agentName:D().optional(),totalAmountUsd:j().nonnegative().nullable(),totalAmountCredits:j().nonnegative().nullable(),runCount:j().int().nonnegative(),total:j().int().nonnegative(),runs:P(tg),promptSamples:P(ig).optional(),promptSamplesTruncated:M().optional()});const ag=F({agentId:k(),agentName:D(),amountUsd:j().nonnegative().nullable(),amountCredits:j().nonnegative().nullable(),runCount:j().int().nonnegative(),usageCount:j().int().nonnegative(),lastUsageAt:V()});F({periodDays:j().int().positive(),since:V(),totalAmountUsd:j().nonnegative().nullable(),totalAmountCredits:j().nonnegative().nullable(),totalAgents:j().int().nonnegative(),agents:P(ag)});const og=F({p50AmountUsdPerRun:j().nonnegative().nullable(),p50AmountCreditsPerRun:j().nonnegative().nullable(),percentile:j().min(0).max(100).nullable(),workspaceAgentCount:j().int().nonnegative()}),sg=F({avgInputTokensPerRun:j().nonnegative(),avgOutputTokensPerRun:j().nonnegative(),avgCachedInputTokensPerRun:j().nonnegative(),avgTotalTokensPerRun:j().nonnegative(),inputToOutputRatio:j().nonnegative(),cachedInputRatio:j().min(0).max(1),avgLlmCallsPerRun:j().nonnegative()}),cg=F({usageType:D(),amountUsd:j().nonnegative().nullable(),amountCredits:j().nonnegative().nullable()});F({agentId:k(),agentName:D(),modelId:D(),periodDays:j().int().positive(),since:V(),runCount:j().int().nonnegative(),totalAmountUsd:j().nonnegative().nullable(),totalAmountCredits:j().nonnegative().nullable(),avgAmountUsdPerRun:j().nonnegative().nullable(),avgAmountCreditsPerRun:j().nonnegative().nullable(),scheduleRunCount:j().int().nonnegative(),manualRunCount:j().int().nonnegative(),runsPerDay:j().nonnegative(),benchmark:og,tokenProfile:sg.nullable(),costByType:P(cg),llmCostRatio:j().min(0).max(1).nullable(),highCostPerRun:M(),highFrequency:M(),systemPrompt:D(),systemPromptLength:j().int().nonnegative()}),F({capabilities:P(z(Lf)),workspaceCapabilities:P(z(If))});const lg=[`single_select`,`multi_select`],ug=F({label:D().min(1).max(200).describe(`Display text for this option`),description:D().max(500).optional().describe(`Optional explanation of what this option means`)});F({questions:P(F({question:D().min(1).max(500).describe(`The question to ask the user`),type:z(lg).describe(`single_select: user picks one option. multi_select: user picks one or more options.`),options:P(ug).min(2).max(4).describe(`The available choices (2-4 options)`)})).min(1).max(3).describe(`One to three structured questions to ask the user`)}),F({answers:P(F({questionIndex:j().int().min(0).describe(`Index of the question answered`),type:z(lg).describe(`Question type`),selectedOptions:P(D()).describe(`Labels of selected options (empty if skipped)`),customText:D().optional().describe(`Free text if user chose "Something else"`),skipped:M().describe(`Whether the user skipped this question`)})).describe(`Answers for each question`),dismissed:M().describe(`True if the user dismissed the entire wizard without answering`)});const dg=z([`all`,`agent`,`general-task`,`connector`,`skill`,`system`]),fg=z([`workspace_owner`,`agent_owner`]),pg=z([`success`,`failure`]),mg=z([`personal`,`managed`]),hg=z([`manual`,`scheduled`]);F({workspaceId:k()}),F({...F({category:dg.optional(),targetId:D().trim().min(1).optional(),agentType:mg.optional(),executionSource:hg.optional(),result:pg.optional(),actorId:k().optional(),search:D().trim().max(200).optional()}).shape,category:dg.optional().default(`all`),snapshot:D().min(1).max(2048).optional(),beforeOccurredAt:U.optional(),beforeId:D().min(1).optional(),limit:H().int().min(1).max(100).default(50),offset:H().int().min(0).default(0)}).refine(e=>!!e.beforeOccurredAt==!!e.beforeId,{message:`beforeOccurredAt and beforeId must be provided together`,path:[`beforeOccurredAt`]});const gg=F({id:k(),name:D(),email:D()}),_g=F({type:D(),id:D(),name:D(),agentId:k().optional()}),vg=L(`type`,[F({type:B(`role`),from:D().optional(),to:D()})]),yg=F({type:z([`user`,`team`,`email`]),id:D().optional(),name:D(),email:D().optional(),role:D().optional()}),bg=F({id:D(),occurredAt:V(),actor:gg.nullable(),event:D(),category:dg.exclude([`all`]),result:pg,resource:_g,change:vg.optional(),subject:yg.optional(),changedFields:P(D()).optional(),detail:D().optional(),taskUrl:D().optional()}),xg=F({id:D(),name:D(),category:dg.exclude([`all`])}),Sg=F({all:j().int().nonnegative(),agent:j().int().nonnegative(),"general-task":j().int().nonnegative(),connector:j().int().nonnegative(),skill:j().int().nonnegative(),system:j().int().nonnegative()});F({items:P(bg),asOf:V(),snapshot:D().min(1),total:j().int().nonnegative(),scope:fg,counts:Sg,targets:P(xg),actors:P(gg),retentionDays:j().int().positive()}),F({items:P(bg),asOf:V(),maxRows:j().int().positive()}),F({canAccess:M(),scope:fg.nullable()});const Cg=z([`chat`,`image`]),wg=D().refine(e=>{if(e===``)return!1;let t=e.replace(/_/g,``),n=Number(t);return!Number.isNaN(n)&&Number.isFinite(n)&&n>=0},{message:`Invalid decimal string`}),Tg=F({input:D(),output:D(),cachedInput:D().optional(),cacheCreation:D().optional()}),Eg=F({input:wg,output:wg,cachedInput:wg.optional(),cacheCreation:wg.optional()}),Dg=F({effort:z(Mu)}),Og=F({modelId:D(),deploymentName:D(),workspaceId:D().nullable(),kind:Cg,name:D(),description:D(),pricing:Tg,reasoning:Dg.nullable(),createdAt:V(),updatedAt:V()});F({deployments:P(Og),nextKey:D().optional()}),F({deploymentName:D().min(1),name:D().min(1),description:D().default(``),pricing:Eg,reasoning:Dg.nullable().default(null)}),F({name:D().min(1).optional(),description:D().optional(),pricing:Eg.optional(),reasoning:Dg.nullable().optional()}),F({deploymentName:D().min(1),kind:Cg,name:D().min(1),description:D().default(``),pricing:Eg,reasoning:Dg.nullable().default(null)}),F({name:D().min(1).optional(),description:D().optional(),kind:Cg.optional(),pricing:Eg.optional(),reasoning:Dg.nullable().optional()}),F({deploymentName:D().min(1)}),F({deployments:P(Og)}),F({workspaceId:k()}),F({amountUsd:j().positive().max(1e4)}),F({checkoutUrl:A()}),F({id:k(),workspaceId:k(),amountUsd:D(),purchasedBy:k().nullable(),stripeCheckoutSessionId:D(),stripePaymentIntentId:D().nullable(),isAutoReload:M(),createdAt:V()}),F({workspaceId:k()}),F({checkoutUrl:A()}),z([`incomplete`,`incomplete_expired`,`trialing`,`active`,`past_due`,`canceled`,`unpaid`,`paused`]);const kg=z([`draft`,`open`,`paid`,`uncollectible`,`void`]);z([`upgrade`,`downgrade`,`invite_accept`,`member_join`]),z([`pending`,`processing`,`processed`,`failed`]),z([`seat_change`,`extra_usage_purchase`]),z([`pending`,`processing`,`requires_action`,`succeeded`,`failed`,`expired`,`superseded`]),z([`pending`,`applied`,`failed`,`canceled`]);const Ag=z([`subscription`,`extra_usage`]),jg=F({id:k(),type:Ag,status:kg,totalUsd:j().nonnegative(),billingDate:V(),hostedInvoiceUrl:A().nullable()});F({workspaceId:k()}),F({limit:H().int().min(1).max(100).default(20),nextKey:D().optional()}),F({invoices:P(jg),nextKey:D().optional()});const Mg=z([`pro`,`premium`]),Ng=F({pro:j().int().nonnegative(),premium:j().int().nonnegative()});F({pro:j().int(),premium:j().int()});const Pg=F({lineItems:P(F({seatType:Mg,quantity:j().int(),amountUsd:D()})),subtotalUsd:D(),taxUsd:D(),totalUsd:D()}),Fg=z([`seat_pool_invariant`,`subscription_canceling`,`payment_required`,`unsupported_billing_state`]);F({workspaceId:k()});const Ig=F({targetPurchasedSeats:Ng,seatAssignment:F({userId:k(),seatType:Mg}).optional()});L(`outcome`,[F({outcome:B(`unchanged`),quoteHash:D().min(1),targetPurchasedSeats:Ng,nextMonthlyAmountUsd:D()}),F({outcome:B(`immediate`),quoteHash:D().min(1),targetPurchasedSeats:Ng,nextMonthlyAmountUsd:D(),dueToday:Pg}),F({outcome:B(`scheduled`),quoteHash:D().min(1),targetPurchasedSeats:Ng,nextMonthlyAmountUsd:D(),dueToday:Pg,effectiveAt:V()}),F({outcome:B(`split`),quoteHash:D().min(1),immediatePurchasedSeats:Ng,targetPurchasedSeats:Ng,nextMonthlyAmountUsd:D(),dueToday:Pg,effectiveAt:V()}),F({outcome:B(`blocked`),reason:Fg})]),F({workspaceId:k()}),Ig.extend({expectedQuoteHash:D().min(1)}),L(`kind`,[F({kind:B(`completed`),operationId:k().nullable()}),F({kind:B(`processing`),operationId:k()}),F({kind:B(`redirect`),operationId:k().nullable(),url:A()})]),F({workspaceId:k()});const Lg=F({startAt:V(),endAt:V()}),Rg=F({cancelAtPeriodEnd:M(),canceledAt:V().nullable()}),zg=F({reason:z([`invoice_payment_failed`,`checkout_incomplete`,`subscription_unpaid`,`subscription_paused`,`unsupported_state`]),startedAt:V().nullable(),retryEndsAt:V().nullable(),stripeInvoiceId:D().min(1).nullable(),hostedInvoiceUrl:A().nullable()});F({lifecycle:L(`kind`,[F({kind:B(`default`),period:Dc(),cancellation:Dc(),paymentIssue:Dc()}),F({kind:B(`active`),period:Lg,cancellation:Rg,paymentIssue:Dc()}),F({kind:B(`payment_required`),period:Lg.nullable(),cancellation:Dc(),paymentIssue:zg}),F({kind:B(`canceled`),period:Dc(),cancellation:Rg,paymentIssue:Dc()}),F({kind:B(`unavailable`),period:Lg.nullable(),cancellation:Dc(),paymentIssue:zg})]),subscription:F({planName:D().min(1),estimatedMonthlyChargeUsd:j().nonnegative(),nextInvoiceDueAt:V().nullable()}).nullable(),seats:F({purchased:Ng,assigned:Ng,available:Ng,totalPurchased:j().int().nonnegative(),totalAssigned:j().int().nonnegative(),totalAvailable:j().int().nonnegative()}),extraUsage:ad.extend({currentPurchasedUsd:j().nonnegative()})}),F({workspaceId:k()}),F({portalUrl:A()}),F({workspaceId:k(),userId:k()}),F({seatType:$u});const Bg=[`2026-10-01`],Vg=z(Bg).describe(`Payload version, locked when the destination is created. Receivers must ignore unknown fields and enum values.`),Hg=F({amount:D().regex(/^-?\d+(\.\d+)?$/).describe(`Decimal string, never a float`),currency:B(`USD`)}).describe(`A monetary amount`),Ug=F({id:k(),email:D(),name:D()}).describe(`The workspace member the event is about`),Wg=D().regex(/^\d{4}-(0[1-9]|1[0-2])$/).describe(`Calendar month of the usage (YYYY-MM), in the same server time zone as monthly usage`);function Gg(e,t){return F({id:D().startsWith(`evt_`).describe(`evt_<uuid v7>. Unchanged across retries and resends; receivers deduplicate on it`),type:B(e),apiVersion:Vg,occurredAt:V().describe(`When the event happened (ISO 8601), not when it was sent`),workspace:F({id:k(),name:D()}),data:t})}const Kg={limitReached:`budget.limit_reached`,thresholdReached:`budget.threshold_reached`},qg=[`workspace`,`member_override`];P(j().int().min(1).max(99)).max(5).transform(e=>[...new Set(e)].toSorted((e,t)=>e-t)).describe(`Percentages of the effective budget that fire budget.threshold_reached; empty disables it`);const Jg=z(qg).describe(`Where the effective budget comes from: the workspace budget or the member override`),Yg=F({member:Ug,period:Wg,usage:Hg.describe(`The member's billed usage this month when the limit was crossed`),effectiveBudget:Hg.describe(`The member override, or the workspace budget when there is none`),budgetSource:Jg}),Xg=F({member:Ug,period:Wg,thresholdPercent:j().int().min(1).max(99).describe(`The notify threshold that was crossed, e.g. 80`),usage:Hg.describe(`The member's billed usage this month when the threshold was crossed`),effectiveBudget:Hg.describe(`The member override, or the workspace budget when there is none`),budgetSource:Jg}),Zg={id:`8b1d2c3e-4f50-7a61-8b72-9c83d4e5f601`,name:`Acme`},Qg={id:`3f2a1b0c-9d8e-7f60-8a51-b4c3d2e1f0a9`,email:`alice@example.com`,name:`Alice`},$g={id:`evt_01929c3e-7a1b-7c4d-9e2f-3a4b5c6d7e8f`,type:Kg.limitReached,apiVersion:`2026-10-01`,occurredAt:`2026-10-15T06:12:03.120Z`,workspace:Zg,data:{member:Qg,period:`2026-10`,usage:{amount:`50.31`,currency:`USD`},effectiveBudget:{amount:`50.00`,currency:`USD`},budgetSource:`workspace`}},e_=Gg(Kg.limitReached,Yg).meta({description:`A member's billed usage this month reached their effective budget. Once usage is above the budget, the member's requests are blocked until the budget is raised or the month ends.`,examples:[$g]}),t_=Gg(Kg.thresholdReached,Xg).meta({description:`A member's billed usage this month crossed one of the workspace's notify thresholds (a percentage of their effective budget), before the member is blocked.`,examples:[{id:`evt_01929c3e-6f00-7b2a-8c3d-4e5f60718293`,type:Kg.thresholdReached,apiVersion:`2026-10-01`,occurredAt:`2026-10-12T02:40:51.004Z`,workspace:Zg,data:{member:Qg,period:`2026-10`,thresholdPercent:80,usage:{amount:`40.02`,currency:`USD`},effectiveBudget:{amount:`50.00`,currency:`USD`},budgetSource:`workspace`}}]}),n_=F({eventType:D().describe(`The event type this test stands in for`),sample:R(D(),N()).describe(`An example event of that type, shaped exactly like a real delivery`)}),r_=F({challenge:D().describe(`Random string the endpoint must echo back as {"challenge": "<value>"} with a 200 within 10 seconds`)}),i_={id:`8b1d2c3e-4f50-7a61-8b72-9c83d4e5f601`,name:`Acme`},a_=Gg(`destination.test_sent`,n_).meta({description:"Sent on demand from the Hub or `entrydesk webhook test` to check that a destination receives and verifies deliveries. Always delivered to the destination being tested, whatever it subscribes to.",examples:[{id:`evt_01929c3f-0000-7000-8000-000000000001`,type:`destination.test_sent`,apiVersion:`2026-10-01`,occurredAt:`2026-10-15T06:00:00.000Z`,workspace:i_,data:{eventType:Kg.limitReached,sample:{...$g}}}]}),o_=Gg(`destination.verification_requested`,r_).meta({description:`Sent when an Owner verifies an endpoint from the Hub. The endpoint proves it is controlled by the person who configured it by echoing the challenge.`,examples:[{id:`evt_01929c3f-0000-7000-8000-000000000002`,type:`destination.verification_requested`,apiVersion:`2026-10-01`,occurredAt:`2026-10-15T06:00:00.000Z`,workspace:i_,data:{challenge:`b7c1f0e2d9a84c3e9f5a6b7c8d9e0f1a`}}]}),s_={[Kg.limitReached]:{schema:e_,trigger:`Recording usage moves the member's billed monthly usage from below their effective budget to at or above it. Fires once per member, month and effective budget; raising the budget and crossing it again fires again. On-premises deployments only.`,addedIn:`2026-10-01`,subscribable:!0},[Kg.thresholdReached]:{schema:t_,trigger:`Recording usage moves the member's billed monthly usage across one of the workspace's notify thresholds (a percentage of the effective budget). Fires once per member, month, threshold and effective budget. On-premises deployments only.`,addedIn:`2026-10-01`,subscribable:!0},"destination.test_sent":{schema:a_,trigger:"An Owner sends a test from the Hub or `entrydesk webhook test`. Goes only to that destination.",addedIn:`2026-10-01`,subscribable:!1},"destination.verification_requested":{schema:o_,trigger:`An Owner verifies the endpoint from the Hub. Goes only to that destination and is not retried.`,addedIn:`2026-10-01`,subscribable:!1}},c_=Object.keys(s_),l_=[Kg.limitReached,Kg.thresholdReached],u_=z(l_),d_=z(c_),f_=[`active`,`disabled`],p_=[`manual`,`consecutive_failures`],m_=[`pending`,`succeeded`,`failed`],h_=10080*60,g_=z(f_),__=z(p_),v_=z(m_);function y_(e){try{let{username:t,password:n}=new URL(e);return t!==``||n!==``}catch{return!1}}const b_=/^[a-z][\d+.a-z-]*:\/\/[^/?#]/iu,x_=/\p{Cc}/u,S_=/[^\P{Cc}\t\n\r]/u,C_=/[^\p{Cf}\p{Z}\s]/u,w_=2048,T_=A({protocol:/^https$/u}).max(w_).refine(e=>b_.test(e),{message:`URL must include a host`}).refine(e=>!y_(e),{message:`URL must not contain a username or password`}).transform(e=>new URL(e).href).refine(e=>e.length<=w_,{message:`URL must be at most ${w_} characters once percent-encoded`}).describe(`HTTPS endpoint that receives the POSTs`),E_=D().trim().min(1).max(200).refine(e=>!x_.test(e),{message:`Name must not contain control characters`}).refine(e=>C_.test(e),{message:`Name must contain a visible character`}),D_=D().trim().max(1e3).refine(e=>!S_.test(e),{message:`Description must not contain control characters`}),O_=P(u_).min(1).transform(e=>[...new Set(e)]).nullable().describe(`Event types to receive; null subscribes to all events`);F({workspaceId:k(),destinationId:k()}).extend({deliveryId:k()}),F({workspaceId:k()});const k_=F({activity:P(F({date:xl(),count:j().int()})).describe(`Deliveries per day over the last 7 days, oldest first`),deliveryCount:j().int(),failedCount:j().int(),errorRate:j().nullable().describe(`failed / all deliveries over the last 7 days; null when none`),p50ResponseTimeMs:j().int().nullable()}),A_=F({id:k(),type:B(`https`),name:D(),description:D().nullable(),url:D(),apiVersion:Vg,payloadStyle:B(`snapshot`),eventTypes:P(D()).nullable(),status:g_,disabledReason:__.nullable(),verifiedAt:V().nullable(),previousSecretExpiresAt:V().nullable(),createdAt:V(),updatedAt:V(),metrics:k_});F({items:P(A_)}),F({name:E_,description:D_.nullable().default(null),url:T_,eventTypes:O_,apiVersion:Vg.optional()}),F({destination:A_,signingSecret:D().describe(`Shown only once; store it to verify X-ED-Signature`)}),F({name:E_,description:D_.nullable(),url:T_,eventTypes:O_,apiVersion:Vg,status:g_}).partial().refine(e=>Object.keys(e).length>0,{message:`Provide at least one field to update`}),F({expirePreviousInSeconds:j().int().min(0).max(h_).default(86400).describe(`How long the previous secret keeps signing alongside the new one; 0 expires it now`)}),F({signingSecret:D(),previousSecretExpiresAt:V().nullable()}),F({status:v_.optional(),eventType:d_.optional(),limit:H().int().min(1).max(100).default(20),nextKey:D().optional()});const j_=F({id:k(),destinationId:k(),eventId:D(),eventType:D(),status:v_,attempts:j().int(),lastHttpStatus:j().int().nullable(),lastError:D().nullable(),responseTimeMs:j().int().nullable(),nextAttemptAt:V().nullable(),deliveredAt:V().nullable(),occurredAt:V(),createdAt:V()});F({items:P(j_),nextKey:D().nullable()});const M_=F({id:k().describe(`Sent as X-ED-Delivery-Id`),attempt:j().int(),requestHeaders:R(D(),D()),httpStatus:j().int().nullable(),responseBody:D().nullable().describe(`First 4 KB of the response body`),responseTimeMs:j().int().nullable(),error:D().nullable().describe(`Null together with httpStatus while the request is still in progress`),attemptedAt:V()});j_.extend({requestBody:D().describe(`The exact bytes POSTed on every attempt`),attemptHistory:P(M_)}),F({delivery:j_}),F({eventType:u_.default(l_[0])});const N_=F({succeeded:M(),httpStatus:j().int().nullable(),responseTimeMs:j().int().nullable(),error:D().nullable()});F({delivery:j_,outcome:N_}),F({verified:M(),verifiedAt:V().nullable(),outcome:N_}),F({items:P(F({type:d_,domain:D(),description:D(),trigger:D(),addedIn:Vg,subscribable:M(),example:R(D(),N())})),apiVersions:P(Vg)});const P_=z([`google`,`outlook`,`caldav`]),F_=z([`confirmed`,`tentative`,`cancelled`]),I_=F({email:D(),displayName:D().optional(),responseStatus:z([`needsAction`,`declined`,`tentative`,`accepted`]).optional(),organizer:M().optional(),self:M().optional(),resource:M().optional()}),L_=F({type:z([`hangoutsMeet`,`zoom`,`teams`,`webex`,`other`]),uri:D().optional(),label:D().optional()}),R_=F({id:k(),providerCalendarId:D(),name:D(),color:D().nullable(),isVisible:M()});F({accounts:P(F({id:k(),provider:P_,email:D(),isActive:M(),lastSyncAt:D().nullable(),reminderEnabled:M(),reminderMinutesBefore:j(),createdAt:V(),calendars:P(R_)}))}),F({events:P(F({id:k(),calendarId:k(),calendarName:D(),calendarColor:D().nullable(),provider:P_,providerEventId:D(),title:D(),description:D().nullable(),location:D().nullable(),startTime:D(),endTime:D(),isAllDay:M(),status:F_,conferenceLink:D().nullable(),conferenceData:L_.nullable(),attendees:P(I_).nullable(),organizerEmail:D().nullable()}).extend({meetingId:k().nullable(),hasRecordings:M(),hasAudioFile:M()})),nextCursor:k().nullable(),hasMore:M()}),F({startTime:U.optional(),endTime:U.optional(),limit:H().int().min(1).max(500).default(50),cursor:k().optional()}).refine(e=>e.startTime&&e.endTime?new Date(e.startTime)<new Date(e.endTime):!0,{message:`endTime must be greater than startTime`,path:[`endTime`]}),F({hours:H().int().min(1).max(168).default(24),limit:H().int().min(1).max(50).default(10),cursor:k().optional()}),F({id:k(),reminderEnabled:M(),reminderMinutesBefore:j()}),F({updated:j()}),J.IMAGE_GENERATION,J.PROJECT,J.SANDBOX,J.WEB_SEARCH,J.SKILL,J.SLIDES,J.WORKFLOW;const z_=F({inputTokens:j().optional(),outputTokens:j().optional(),totalTokens:j().optional(),reasoningTokens:j().optional(),cachedInputTokens:j().optional(),cachedCreationTokens:j().optional()});F({modelId:D().optional(),toolApprovalMode:Od.optional(),usage:z_.optional(),totalUsage:z_.optional(),platformMessageTs:D().optional(),postedMessageTs:P(D()).optional()}),F({id:k(),name:D(),mimeType:D(),size:j(),url:D().optional().describe(`The signed URL for the file, only available if the file is not expired`),expired:M(),createdAt:V(),updatedAt:V()}),F({phase:z([`running`,`done`])});const B_=z([`step_limit`,`output_limit`,`retry_limit`]);F({reason:B_,toolCallIds:P(D()).optional()});function V_(e){return e.state===`approval-requested`&&e.approval?.isAutomatic!==!0}const H_=F({reason:B_,sourceMessageId:k()}),U_=new TextEncoder;function W_(e){try{let t=JSON.stringify(e);return typeof t==`string`?U_.encode(t).byteLength:null}catch{return null}}const G_=F({sourceMessageId:k(),action:B(`continueConversation`),values:N().refine(e=>{let t=W_(e);return t!==null&&t<=65536},`Widget interaction values must be JSON and at most 64 KiB`)});F({context:D()});const K_=F({runId:D(),kind:z([`subagent`,`workflow`]),status:D(),summary:D()});F({delivery:z([`wake`,`passive`]).default(`wake`),runs:P(K_)});const q_=`data-background-run-receipt`,J_=F({runs:P(L(`kind`,[F({kind:B(`tool`),runId:D(),status:D()}),K_])),text:D()});function Y_(e){let t=J_.safeParse(e);return t.success?t.data.runs:[]}const X_=`data-tool-run-start`,Z_=F({system:j(),tools:j(),history:j()});F({totalTokens:j(),breakdown:Z_,contextWindowTokens:j().optional(),compactionTriggerTokens:j().optional()});const Q_=z([`pending_tool_responses`,`tool_response_not_merged`,`continuation_already_claimed`]),$_=F({taskId:D(),streamId:D()});I([$_,F({taskId:D(),noop:B(!0),reason:Q_})]);const ev=I([$_,F({taskId:D(),noop:B(!0),reason:D().optional()})]);function tv(e){let t=ev.safeParse(e);return t.success?t.data:null}const nv=F({text:D(),type:B(`text`)}),rv=F({type:B(`data-widget-interaction`),data:G_}),iv=F({type:B(`data-task-continuation`),data:H_}),av=F({id:k(),createdAt:Sl().optional(),role:B(`user`),parts:I([Hc([nv]),Hc([rv]),Hc([iv])])}),ov=I([D().startsWith(`tool-`),B(`dynamic-tool`)]),sv=F({id:D(),approved:M(),reason:D().optional()}),cv=F({type:ov,toolCallId:D(),state:B(`approval-responded`),input:kc().optional(),approval:sv}),lv=F({type:ov,toolCallId:D(),state:B(`output-available`),output:kc(),approval:sv.optional()}),uv=F({type:ov,toolCallId:D(),state:B(`output-error`),errorText:D(),approval:sv.optional()}),dv=F({id:D(),approved:B(!1),reason:D().optional()}),fv=F({type:ov,toolCallId:D(),state:B(`output-denied`),errorText:D().optional(),approval:dv.optional()}).refine(e=>e.errorText!==void 0||e.approval!==void 0,{message:`An output-denied part must carry the refusal, as errorText or as approval.reason`,path:[`errorText`]});L(`role`,[av,F({id:k(),createdAt:Sl().optional(),role:B(`assistant`),parts:P(L(`state`,[cv,lv,uv,fv])).min(1)})]);function pv(e,t){let n=new Map(e);for(let e of t)n.delete(e);return n}function mv(e,t,n){return new Map(e.map(({toolCallId:e})=>{let r=t.get(e);return[e,{approved:n,preauthorize:n&&r?.approved?r.preauthorize:void 0}]}))}function hv(e,t){let n=[],r=new Set,i=[];for(let a of e){let e=t.get(a.toolCallId);if(!e||(n.push({toolCallId:a.toolCallId,approvalId:a.approvalId,approved:e.approved}),!e.approved||!e.preauthorize))continue;let o=cp(a.toolName,a.input);o&&(r.add(o),i.push(a.toolCallId))}return{responses:n,preauthorizeToolNames:[...r],preauthorizingToolCallIds:i}}const gv=[`approval-responded`,`output-available`,`output-error`,`output-denied`],_v=[`output-available`,`output-error`,`output-denied`];function vv(e){for(let t=e.length-1;t>=0;--t)if(e[t]?.type===`step-start`)return t;return-1}function yv(e){return gv.includes(e)}function bv(e){return _v.includes(e)}function xv(e){return e?.role===`assistant`?e.parts.filter(f).filter(e=>!e.providerExecuted):[]}function Sv(e){if(e?.role!==`assistant`)return[];let t=vv(e.parts);return xv({role:e.role,parts:e.parts.slice(t+1)})}function Cv(e,t){return t(e)?bv(e.state):yv(e.state)}function wv(e,t){return t(e)?bv(e.state):e.state===`approval-responded`||e.state===`output-denied`}function Tv(e){return e.state===`input-available`||e.state===`approval-responded`&&e.approval.approved}function Ev(e){return e.state===`approval-responded`&&!e.approval.approved}const Dv=[];function Ov(e){let t=[];for(let n of Sv(e)){if(!V_(n))continue;let e=n.approval?.id;typeof e==`string`&&e!==``&&t.push({toolCallId:n.toolCallId,toolName:d(n),input:n.input,approvalId:e,requestReason:n.approval.requestReason})}return t.length===0?Dv:t}function kv(e){let t=`approval`in e?e.approval:void 0;return{type:e.type,toolCallId:e.toolCallId,state:e.state,...e.state===`output-available`&&{output:e.output},...`errorText`in e&&e.errorText!==void 0&&{errorText:e.errorText},...t!==void 0&&{approval:t}}}function Av(e,{isClientTool:t}){return e?.role===`assistant`?{id:e.id,role:`assistant`,parts:Sv(e).filter(e=>wv(e,t)).map(kv)}:e}function jv(e){let t=e?.message?.parts;return Array.isArray(t)?t.flatMap(e=>{let t=e?.toolCallId;return typeof t==`string`?[t]:[]}):[]}function Mv({messages:e,isClientTool:t,suppressAutomaticSend:n=!1,submittedToolCallIds:r}){if(n)return!1;let i=Sv(e.at(-1));return!i.some(e=>!Cv(e,t))&&i.some(e=>wv(e,t)&&!r.has(e.toolCallId))}function Nv(e){if(e.reason!==void 0)return e.reason;let t=Error(`The operation was aborted.`);return t.name=`AbortError`,t}function Pv(e,t){if(!t)return e;let n=()=>Nv(t),r,i,a=()=>{i&&=(t.removeEventListener(`abort`,i),void 0)};return new ReadableStream({start(a){if(i=()=>{a.error(n()),(r??e).cancel(n()).catch(()=>{})},t.aborted){i();return}t.addEventListener(`abort`,i,{once:!0})},async pull(n){r??=e.getReader();try{let{done:e,value:t}=await r.read();if(e){n.close(),a();return}n.enqueue(t)}catch(e){t.aborted||n.error(e),a()}},cancel(t){a(),(r??e).cancel(t).catch(()=>{})}})}const Fv={schemaVersion:B(2),siteKey:D().min(1),assetId:k(),title:D()};L(`state`,[F({...Fv,state:B(`working`),revision:D().min(1)}),F({...Fv,state:B(`saved`),versionId:k(),versionNumber:j().int().positive()})]);const Iv=z([`pending`,`generating`,`ready`,`error`]),Lv=F({page:j().int().positive(),heading:D(),status:Iv,version:j().int().nonnegative().default(0),imageUrl:D().optional(),assetId:D().optional(),note:D().optional()});F({deckId:D().min(1),title:D(),style:D(),aspectRatio:D(),status:z([`generating`,`partial`,`ready`]),outputs:F({pdfUrl:D().optional(),pptxUrl:D().optional(),pdfAssetId:D().optional(),pptxAssetId:D().optional()}).default({}),slides:P(Lv)});const Rv=F({slideId:k(),position:j().int().positive(),heading:D(),status:Iv,note:D().optional()}),zv={schemaVersion:B(2),deckKey:D().min(1),assetId:k(),title:D(),style:D(),aspectRatio:D(),slides:P(Rv)};L(`state`,[F({...zv,state:B(`working`),revision:D().min(1)}),F({...zv,state:B(`saved`),versionId:k(),versionNumber:j().int().positive()})]),F({data:F({assetId:k(),versionId:k(),versionNumber:j().int().positive(),title:D(),style:D(),aspectRatio:D(),slides:P(F({slideId:k(),position:j().int().positive(),heading:D(),imageUrl:A()})),pdfUrl:A(),pptxUrl:A().optional()})});const Bv=[`slack`,`teams`],Vv=[`active`,`inactive`,`needs_reauth`],Hv=z(Bv),Uv=z(Vv),Wv=F({id:k(),platform:Hv,platformWorkspaceId:D(),platformWorkspaceName:D(),botUserId:D(),botIconUrl:A().nullable().optional(),status:Uv,autoBindEnabled:M(),createdAt:V(),updatedAt:V()});F({platform:Hv.optional(),limit:H().int().min(1).max(100).default(20),cursor:k().optional()}),F({installations:P(Wv),nextKey:D().optional()}),F({status:z([`active`,`inactive`]).optional()});const Gv=F({id:k(),workspaceInstallationId:k(),platform:Hv,platformWorkspaceName:D(),platformUserId:D(),createdAt:V()});F({installations:P(Gv)}),F({workspaceInstallation:Wv.nullable(),userInstallation:Gv.nullable(),canManageChatbot:M()}).extend({installUrl:A().nullable()}),F({userInstallation:Gv}),F({autoBindEnabled:M()}),F({workspaceInstallation:Wv}),F({bindings:P(F({id:k().nullable(),workspaceInstallationId:k().nullable(),userId:k(),userName:D(),userEmail:D(),platformUserId:D().nullable(),createdAt:V().nullable(),updatedAt:V().nullable()})),total:j().int().nonnegative()}),Tu.extend({search:D().trim().max(200).optional()}),F({authorizeUrl:D()});const Kv=2048,qv=z([`self`,`anyone`]),Jv=F({id:k(),platform:Hv,userInstallationId:k(),platformChannelId:D(),channelName:D().nullable(),platformThreadId:D().nullable(),keyword:D().nullable(),triggerScope:qv,agentId:k().nullable(),agentName:D().nullable(),agentIconUrl:D().nullable(),sourceKeywordListenerIds:P(k()),taskId:k().nullable(),titlePreview:D().nullable(),threadUrl:A().nullable(),lastInteractedAt:V().nullable(),enabled:M(),createdAt:V(),updatedAt:V()});F({installationId:k().optional()}),F({listeners:P(Jv)}),F({installationId:k(),platformChannelId:D().trim().min(1).max(Kv).regex(/^(?:(?:slack:)?[CG][A-Z0-9]+|teams:[A-Za-z0-9_-]+:[A-Za-z0-9_-]+)$/u,`Must be a valid Slack or Microsoft Teams channel id.`),keyword:D().trim().min(1).max(200),triggerScope:qv.optional(),agentId:k().nullable().optional()}),F({listener:Jv}),F({keyword:D().trim().min(1).max(200).optional(),triggerScope:qv.optional(),agentId:k().nullable().optional(),enabled:M().optional()}).refine(e=>e.keyword!==void 0||e.triggerScope!==void 0||e.agentId!==void 0||e.enabled!==void 0,{message:`At least one field must be provided`}),F({installationId:k(),platformChannelId:D().trim().min(1).max(Kv),keyword:D().trim().min(1).max(200)}),F({count:j().int().nonnegative()}),F({installationId:k()}),F({channels:P(F({id:D(),name:D(),isPrivate:M()}))}),F({}).optional(),F({ok:B(!0),messageTs:D()}),F({olderThanDays:j().int().min(1).max(365).default(14).optional()}).optional(),F({deletedCount:j().int().min(0)});const Yv=z([`enabled`,`disabled`]);F({items:P(F({agentId:k(),agentName:D(),agentIconUrl:D().nullable(),status:Yv,capReached:M(),connectorNames:P(D())}))}),F({items:P(F({agentId:k(),agentName:D(),connectorNames:P(D())}))}),F({agentId:k()}),F({activeConversationCount:j().int(),suppressedListenerCount:j().int()});const Xv=D().regex(/^\d+\.\d+\.\d+(?:[-+][\w.-]+)?$/),Zv=F({minSupportedVersion:Xv,latestVersion:Xv});F({ios:Zv,android:Zv,gntcLoginEnabled:M(),googleLoginEnabled:M(),emailPasswordLoginEnabled:M()});function Qv(e){let t=e.split(`.`);if(t.length!==4)return null;let n=t.map(e=>/^\d{1,3}$/u.test(e)?Number(e):NaN);return n.every(e=>e>=0&&e<=255)?n:null}function $v(e){if(!e.startsWith(`[`)||!e.endsWith(`]`))return null;let[t,n,...r]=e.slice(1,-1).toLowerCase().split(`::`);if(r.length>0)return null;let i=e=>e===``?[]:e.split(`:`),a=i(t??``);if(n===void 0)return a.length===8?a:null;let o=i(n),s=8-a.length-o.length;return s<1?null:[...a,...Array.from({length:s}).fill(`0`),...o]}function ey(e){let[t,n]=e;return t===127?`loopback`:t===0||t===10||t===172&&n>=16&&n<=31||t===192&&n===168||t===100&&n>=64&&n<=127||t===169&&n===254?`internal`:`public`}function ty(e){if(e===`localhost`||e.endsWith(`.localhost`))return`loopback`;let t=Qv(e);if(t)return ey(t);let n=$v(e);if(!n)return`public`;let r=Qv(n[7]??``);if(r&&n.slice(0,5).every(e=>Number(e)===0))return ey(r);if(n.slice(0,5).every(e=>Number(e)===0)&&n[5]===`ffff`){let e=Number.parseInt(n[6]??`0`,16),t=Number.parseInt(n[7]??`0`,16);return ey([e>>8,e&255,t>>8,t&255])}let i=n.map(e=>Number.parseInt(e,16));if(i.slice(0,7).every(e=>e===0)&&i[7]!==void 0&&i[7]<=1)return`loopback`;let a=i[0]??0;return(a&65024)==64512||(a&65472)==65152?`internal`:`public`}function ny(e){return Qv(e)!==null||$v(e)!==null}async function ry(e,t){let n=ty(e);if(t===`literal-only`||ny(e))return n;let r=await t(e);if(r.length===0)throw Error(`${e} does not resolve`);let i=r.map(({address:e,family:t})=>ty(t===6?`[${e}]`:e));return n===`public`?i.find(e=>e===`loopback`)??i.find(e=>e===`internal`)??`public`:n}function iy(e){return ty(e.hostname)===`loopback`}function ay(e){return e.protocol===`https:`||e.protocol===`http:`&&iy(e)}async function oy(e,t,n){if(!ay(t))return`api.baseUrl is not https`;if(t.pathname!==`/`||t.search!==``||t.hash!==``||t.username!==``||t.password!==``)return`api.baseUrl is not an origin`;let r,i;try{[r,i]=await Promise.all([ry(t.hostname,n),ry(e.hostname,n)])}catch{return`api.baseUrl does not resolve`}return r===`loopback`&&i!==`loopback`?`api.baseUrl is a local address for a remote Hub`:r===`internal`&&i===`public`?`api.baseUrl is an internal address for a remote Hub`:null}const sy=[{webHost:`app.entrydesk.com`,apiHost:`api.entrydesk.com`},{webHost:`entrydesk.dcard.io`,apiHost:`entrydesk-api.dcard.io`},{webHost:`stage.gntc.io`,apiHost:`api-stage.gntc.io`}];function cy(e){return sy.find(t=>t.webHost===e)}function ly(e){if(!URL.canParse(e))return;let t=new URL(e);if(t.protocol!==`https:`||t.pathname!==`/`)return;let n=cy(t.host);return n?`https://${n.apiHost}`:void 0}const uy=F({api:F({baseUrl:A()})}),dy=[`composio`,`mcp`],fy=[`stdio`,`sse`,`streamable_http`];Qp.options;const py=yp.exclude([`composio`]);py.options;const my=[`pat`,`credentials`];F({items:P(F({id:k(),name:D(),description:D(),iconUrl:D().nullable(),kind:z(dy),toolkit:D().nullable(),transport:z(fy),authorizationType:yp.nullable(),createdAt:V()}))});const hy=F({kind:B(`composio`),name:D().min(1).max(100),description:D().min(1),toolkit:D().min(1),tools:P(D().min(1)).optional(),extraTools:P(D().min(1)).optional(),composioAuthConfigId:D().min(1).optional()}),gy=F({kind:B(`mcp`),name:D().min(1).max(100),description:D().min(1),url:A(),transport:Qp,authorization:F({type:py,provider:D().min(1).optional(),scopes:P(D().min(1)).optional(),tutorial:A().max(100).optional(),configFields:Cp.optional()}).optional()}).refine(e=>e.authorization?.type!==`oauth`||e.authorization.provider!==void 0&&e.authorization.scopes!==void 0,{message:`provider and scopes are required when type is oauth`,path:[`authorization`]}).refine(e=>!e.authorization?.tutorial||my.some(t=>t===e.authorization?.type),{message:`tutorial is only allowed for pat and credentials authorization types`,path:[`authorization`,`tutorial`]}).refine(e=>!e.authorization?.configFields?.length||xp.some(t=>t===e.authorization?.type),{message:`configFields is only allowed for pat and credentials authorization types`,path:[`authorization`,`configFields`]});F({toolkit:D().min(1)});const _y=F({name:D(),mode:D(),scopes:P(D())});F({slug:D(),name:D(),managedAuthSchemes:P(D()),auths:P(_y)}),L(`kind`,[hy,gy]);const vy={en:{authLink:[`auth`,`oauth`,`authorize`,`authorization`,`connect`,`login`,`sign in`,`sign-in`,`signin`],authGlossVerbs:[`authorize`,`connect`,`login`,`sign in`,`sign-in`,`signin`],placement:[`button`,`buttons`,`link`,`links`,`click`,`below`,`following`]},"zh-TW":{authLink:[`授權`,`授权`,`連接`,`连接`,`認證`,`认证`,`登入`,`登录`],authGlossVerbs:[`授權`,`授权`,`連接`,`连接`,`認證`,`认证`,`登入`,`登录`],placement:[`按鈕`,`按钮`,`連結`,`链接`,`點擊`,`点击`,`下方`,`以下`]},de:{authLink:[`autorisieren`,`autorisierung`,`verbinden`,`anmelden`,`login`],authGlossVerbs:[`autorisieren`,`verbinden`,`anmelden`,`login`],placement:[`schaltfläche`,`schaltflächen`,`button`,`buttons`,`link`,`links`,`klicken`,`unten`,`folgende`,`folgenden`]},fr:{authLink:[`autoriser`,`autorisation`,`connecter`,`connexion`,`login`,`se connecter`],authGlossVerbs:[`autoriser`,`connecter`,`connexion`,`login`,`se connecter`],placement:[`bouton`,`boutons`,`lien`,`liens`,`cliquer`,`cliquez`,`ci-dessous`,`suivant`,`suivants`]},"es-ES":{authLink:[`autorizar`,`autorización`,`conectar`,`conexión`,`iniciar sesión`,`login`],authGlossVerbs:[`autorizar`,`conectar`,`iniciar sesión`,`login`],placement:[`botón`,`botones`,`enlace`,`enlaces`,`clic`,`haz clic`,`hacer clic`,`abajo`,`siguiente`,`siguientes`]},"es-419":{authLink:[`autorizar`,`autorización`,`conectar`,`conexión`,`iniciar sesión`,`login`],authGlossVerbs:[`autorizar`,`conectar`,`iniciar sesión`,`login`],placement:[`botón`,`botones`,`enlace`,`enlaces`,`clic`,`haz clic`,`hacer clic`,`abajo`,`siguiente`,`siguientes`]},ja:{authLink:[`認可`,`承認`,`認証`,`接続`,`ログイン`],authGlossVerbs:[`認可`,`承認`,`認証`,`接続`,`ログイン`],placement:[`ボタン`,`リンク`,`クリック`,`下`,`以下`,`次`]},ko:{authLink:[`인증`,`승인`,`권한`,`연결`,`로그인`],authGlossVerbs:[`인증`,`승인`,`연결`,`로그인`],placement:[`버튼`,`링크`,`클릭`,`아래`,`다음`]},it:{authLink:[`autorizza`,`autorizzare`,`autorizzazione`,`connetti`,`connettere`,`accesso`,`login`],authGlossVerbs:[`autorizza`,`autorizzare`,`connetti`,`connettere`,`accedi`,`login`],placement:[`pulsante`,`pulsanti`,`link`,`collegamento`,`collegamenti`,`clic`,`fare clic`,`sotto`,`seguente`,`seguenti`]},"pt-BR":{authLink:[`autorizar`,`autorização`,`conectar`,`conexão`,`entrar`,`login`],authGlossVerbs:[`autorizar`,`conectar`,`entrar`,`login`],placement:[`botão`,`botões`,`link`,`links`,`clicar`,`clique`,`abaixo`,`seguinte`,`seguintes`]}},yy=/[.*+?^${}()|[\]\\]/g;function by(e){return e.replace(yy,`\\$&`)}function xy(e){let t=new Set,n=[];for(let r of e){let e=r.trim();e.length>0&&!t.has(e)&&(t.add(e),n.push(e))}return n}function Sy(e){return xy(Object.values(vy).flatMap(t=>t[e]))}function Cy(e){let t=Sy(e).toSorted((e,t)=>t.length-e.length).map(by).join(`|`);return new RegExp(t,`iu`)}function wy(){let e=Sy(`authGlossVerbs`).toSorted((e,t)=>t.length-e.length).map(by).join(`|`);return RegExp(`^(?:${e})(?=\\s|$|[^\\p{Letter}\\p{Number}])`,`iu`)}Cy(`authLink`),Cy(`placement`),wy(),F({fileId:D().regex(/^[A-Za-z0-9_-]{1,256}$/u),fileName:D().min(1).max(1024),mimeType:D().max(256).regex(/^[\w.+-]+\/[\w.+-]+$/u)}),F({url:D(),expiresAt:V()}),F({toolkit:D(),tools:P(D()).optional(),extraTools:P(D()).optional()}),F({search:D().trim().max(200).optional(),status:z(mm).optional(),nextKey:D().optional(),limit:H().int().min(1).max(100).default(20),sortBy:z(gp).optional()}),F({connectors:P(F({id:k(),name:D(),iconUrl:D().optional(),hasUnpublishedChanges:M(),latestVersionNumber:j().int().nullable(),publishedTo:am.optional(),myRole:tp,createdAt:V(),updatedAt:V()})),nextKey:D().optional(),totalCount:j().int().nonnegative(),statusCounts:hm});const Ty=z([`need_approval`,`block`]),Ey=`user_configurable`;I([Ty,B(Ey)]).nullable().transform(e=>e===Ey?null:e);const Dy=z([`need_approval`,`always_allow`,`block`]),Oy=F({id:k(),name:D(),toolName:D(),description:D(),workspacePolicy:Ty.nullable(),userPolicy:Dy.nullable()});F({tools:P(Oy)}),F({tools:P(Oy.extend({schedulePolicy:dh.nullable()}))});const ky=z([`saas`,`on-premises`]),Ay=10**3;function jy(e){let t=Number((Number(e)*Ay).toPrecision(12));return Math.ceil(t)/Ay}F({path:D(),value:N().optional()});const My=F({connectorId:k(),boardUrl:A().max(2e3).refine(e=>{let t=new URL(e);return t.protocol===`https:`&&!t.username&&!t.password}),dataSourceId:D().min(1).max(255),contextPropertyId:D().min(1).max(255).optional()}).extend({databaseId:D().min(1).max(255),connectorName:D(),name:D()});F({databaseId:D(),name:D(),sources:P(F({id:D(),name:D(),contextProperties:P(F({id:D(),name:D()}))}))});const Ny=F({key:k(),createdBy:k(),startedAt:V(),status:z([`pending`,`succeeded`]),destination:My,title:D().max(1e4),values:R(D(),F({type:B(`text`),value:D().max(1e6)}))}),Py=z([`scheduled`,`in_progress`,`completed`,`cancelled`]),Fy=F({term:D().trim().min(1).max(100),kind:z([`company`,`product`,`person`,`technical`]),usageContext:D().max(100),evidenceLine:j().int().positive(),evidenceQuote:D().min(1).max(1e3)}),Iy=F({id:k(),status:z([`matched`,`not_found`,`ambiguous`]),confirmed:M(),selectionMode:z([`meeting-date`,`reference`]).optional(),summary:M().optional(),glossary:M().optional(),sourceUrl:A().nullable(),connectorId:k().nullable(),documentId:D().min(1).max(256),documentTitle:D(),documentVersion:I([j(),D().max(256)]).nullable(),contentHash:D(),notesHash:D(),startTime:D(),meetingDate:D(),timezone:D(),preparedBy:k(),preparedAt:V(),modelId:D(),lines:P(F({id:j().int().positive(),text:D()})),reason:D().max(500),background:D().max(450),terms:P(Fy).max(24),excludedTerms:P(D()).max(24)});F({blocks:P(L(`type`,[F({id:k(),type:B(`text`),text:D()}),F({id:k(),type:B(`resource`),resourceId:k()})]))});const Ly=F({summary:M(),glossary:M(),excludedTerms:P(D().max(100)).max(24)});F({sourceUrl:A().nullable(),documentTitle:D(),lines:P(F({id:j().int().positive(),text:D()}))}),F({modelId:D(),notesHash:D(),startTime:D(),meetingDate:D(),timezone:D()}),F({id:k(),title:D(),url:A(),mimeType:D(),size:j(),projectSource:F({projectId:k(),projectName:D(),sourceType:z([`file`,`link`,`task`]),sourceId:k(),capturedAt:V()}).optional(),context:Iy.nullable(),stale:M(),contextUsage:Ly}).omit({mimeType:!0,size:!0,projectSource:!0});const Ry=z([`manual`,`calendar`,`recording`]),zy=z([`local`,`upload`,`zoom`,`youtube`,`media`,`bot`]),By=z([`chrome_extension`]),Vy=z([`pending`,`extracting_subtitles`,`downloading`,`transcribing`,`refining`,`completed`,`failed`]),Hy=z([`recall`]),Uy=z([`scheduled`,`joining`,`in_call`,`recording`,`done`,`failed`,`removed`]),Wy=z([`manual`,`api`,`connector`,`calendar_subscription`]),Gy=z([`idle`,`queued`,`generating`,`completed`,`failed`]),Ky=z([`generated`,`import`,`user_edit`,`restore`,`migration`]),qy=F({type:z([`hangoutsMeet`,`zoom`,`teams`,`webex`,`other`]),uri:D().optional(),label:D().optional()}),Jy=F({email:D(),displayName:D().nullable().optional(),role:z([`organizer`,`attendee`,`optional`]).optional(),responseStatus:z([`needsAction`,`declined`,`tentative`,`accepted`]).nullable().optional(),userId:k().nullable().optional()}),Yy=F({start:j(),end:j(),text:D()}),Xy=R(D().regex(/^[A-Z0-9]{1,2}$/u),D().trim().min(1).max(100).regex(/^[^\r\n]+$/u)),Zy=F({handlingType:z([`agent`,`assisted`,`human`]),reason:D().max(2e3),nextStep:D().max(2e3),missingInformation:P(D().max(1e3)).max(20)}),Qy=F({ticketDestination:My.optional(),ticketCreation:Ny.optional(),id:k(),revision:j().int().nonnegative(),status:z([`open`,`completed`,`dismissed`]),assignedTo:z([`agent`,`human`]).nullable().optional(),sourceFingerprint:D().regex(/^[a-f0-9]{64}$/u).optional(),execution:F({taskId:k(),reportedAt:V(),note:D().max(4e3)}).optional(),tracking:F({connectorId:k(),externalId:D().min(1).max(500),url:A({protocol:/^https$/}).refine(e=>{try{let t=new URL(e);return!t.username&&!t.password}catch{return!1}}),reportedStatus:D().max(500).nullable(),reportedAt:V(),sourceTaskId:k().optional()}).optional(),analysis:F({status:z([`running`,`succeeded`,`failed`]),requestId:k(),sourceFingerprint:D(),startedAt:V(),finishedAt:V().optional(),result:Zy.optional()}).optional()}),$y=F({description:D(),assignee:D().nullable().optional(),dueDate:D().nullable().optional(),completed:M()}).extend({workflow:Qy.optional()}),eb=z([`private`,`workspace`]),tb=z([`viewer`,`editor`]),nb=z([`owner`,`editor`,`viewer`]),rb=z([`explicit`,`workspace`]),ib=F({userId:k(),userName:D(),userEmail:D(),userImage:D().nullable().optional(),role:tb,grantedBy:k().nullable(),createdAt:V()}),ab=F({teamId:k(),teamName:D(),memberCount:j(),role:tb,grantedBy:k().nullable(),createdAt:V()});F({visibility:eb,userGrants:P(ib),teamGrants:P(ab)}),F({role:tb}),F({title:D().trim().min(1).max(500),description:D().optional(),location:D().optional(),startTime:U.optional(),endTime:U.optional(),conferenceLink:A().optional(),conferenceData:qy.optional(),calendarEventId:k().optional(),notes:D().optional()}),F({title:D().trim().min(1).max(500).optional(),description:D().nullable().optional(),location:D().nullable().optional(),startTime:U.nullable().optional(),endTime:U.nullable().optional(),status:Py.optional(),conferenceLink:A().nullable().optional(),conferenceData:qy.nullable().optional(),notes:D().nullable().optional(),expectedNotes:D().nullable().optional(),summary:D().nullable().optional(),expectedSummary:D().nullable().optional(),calendarEventId:k().nullable().optional(),visibility:eb.optional()});const ob=F({processedChunks:j().int().nonnegative(),totalChunks:j().int().positive()}),sb=z([`preparing`,`queued`,`transcribing`,`validating`,`finalizing`,`falling_back`]),cb=F({estimated:M().optional(),percentage:j().int().min(0).max(100),batchStage:sb.optional(),batchStartedAt:V().optional(),batchElapsedSeconds:j().int().nonnegative().optional()}),lb=F({provisionalCoverageRatio:j().min(0).max(1),finalTranscription:ob}),ub=F({transcript:D(),transcriptWithTimestamps:D(),segments:P(Yy),summary:D().nullable(),actionItems:P($y).nullable().optional(),generatedAt:V(),stability:F({coverageRatio:j().min(0).max(1),eligible:M(),failedChunkCount:j().int().nonnegative(),maxGapSec:j().nonnegative(),missingRangeCount:j().int().nonnegative(),missingRanges:P(F({startSec:j().nonnegative(),endSec:j().nonnegative(),durationSec:j().positive()})).optional(),pendingChunkCount:j().int().nonnegative(),reason:D()})}),db=ub.pick({summary:!0,actionItems:!0}),fb=z([`pending`,`ready`,`failed`]);F({url:D(),downloadUrl:D()}),F({id:k(),uploadedBy:k(),meetingId:k(),title:D(),duration:j().nullable(),transcript:D().nullable(),transcriptWithTimestamps:D().nullable(),segments:P(Yy).nullable(),legacyTranscriptDisplayTail:F({transcriptRevision:j().int().nonnegative(),canonicalTail:Yy,segments:P(Yy)}).nullable().optional(),speakerNames:Xy,transcriptRevision:j().int().nonnegative(),needsSummaryRefresh:M(),isSummaryStale:M(),summary:D().nullable(),actionItems:P($y).nullable(),summaryStatus:Gy,audioStorageKey:D().nullable(),videoStorageKey:D().nullable().optional(),videoStatus:fb.nullable().optional(),canRetranscribe:M().optional(),captureClient:By.nullable().optional(),processingStatus:Vy.nullable(),isLiveRecording:M().optional().describe(`Recent unfinished local recording activity within the orphan idle window; not a guarantee that capture remains connected.`),captureOutcome:B(`no_recording`).nullable().optional(),transcriptionOutcome:z([`speech`,`no_speech`]).nullable().optional(),transcriptionNotice:z([`no_speech_skipped`,`speech_unconfirmed`]).nullable().optional(),processingProgress:cb.nullable().optional(),hybridProgress:lb.nullable().optional(),provisionalResult:ub.nullable().optional(),transcriptionProgress:ob.nullable().optional(),recordedAt:V().nullable(),createdAt:V(),updatedAt:V()});const pb=F({hasVideo:M().optional(),id:k(),title:D(),duration:j().nullable(),hasSummary:M(),hasTranscript:M(),canRetry:M().optional(),needsSummaryRefresh:M(),isSummaryStale:M(),summary:D().nullable().optional(),actionItems:P($y).nullable().optional(),summaryStatus:Gy,source:zy.nullable().optional(),captureClient:By.nullable().optional(),processingStatus:Vy.nullable(),captureOutcome:B(`no_recording`).nullable().optional(),transcriptionOutcome:z([`speech`,`no_speech`]).nullable().optional(),transcriptionNotice:z([`no_speech_skipped`,`speech_unconfirmed`]).nullable().optional(),processingProgress:cb.nullable().optional(),hybridProgress:lb.nullable().optional(),provisionalResult:db.nullable().optional(),transcriptionProgress:ob.nullable().optional(),recordedAt:V().nullable(),createdAt:V(),updatedAt:V().optional()}),mb=z([`transcript`,`summary`]),hb=F({id:k(),name:D()}),gb=F({id:k(),versionNumber:j().int().nonnegative(),origin:Ky,restoredFromVersionId:k().nullable(),createdBy:hb.nullable(),createdAt:V(),excerpt:D().nullable()});F({contentType:mb,currentVersionId:k().nullable(),canRestore:M(),versions:P(gb),nextVersionNumber:j().int().nonnegative().nullable()});const _b=gb.omit({excerpt:!0});L(`contentType`,[_b.extend({contentType:B(`transcript`),transcript:D().nullable(),transcriptWithTimestamps:D().nullable(),rawTranscript:D().nullable(),segments:P(Yy).nullable(),speakerNames:Xy}),_b.extend({contentType:B(`summary`),summary:D(),actionItems:P($y).nullable(),sourceTranscriptRevision:j().int().nonnegative().nullable()})]),F({expectedHeadVersionId:k()}),F({currentVersionId:k().nullable(),canRestore:M(),versions:P(gb),nextVersionNumber:j().int().positive().nullable()}),_b.extend({summary:D(),actionItems:P($y).nullable(),sourceRecordingSummaryVersionIds:P(k())});const vb=F({recordingStartedAt:V().nullable().optional(),saveVideo:M().default(!1),recordingControlPending:M().default(!1),videoCaptureActive:M().default(!1),id:k(),meetingRecordingId:k().nullable(),provider:Hy,meetingUrl:D(),botName:D().nullable(),status:Uy,statusDetail:D().nullable(),dispatchSource:Wy,joinedAt:V().nullable(),endedAt:V().nullable(),recordingReadyAt:V().nullable(),createdAt:V(),updatedAt:V()});F({relatedActiveBot:F({meetingId:k(),status:Uy,dispatchedAt:V(),dispatchedBy:F({id:k(),name:D().nullable()}).nullable(),canAccess:M()}).nullable()});const yb=z([`all`,`matching_rules`,`none`]),bb=F({field:z([`meeting_type`,`meeting_title`]),matchType:z([`is`,`is_not`,`contains`,`does_not_contain`]),value:D().trim().min(1).max(200)}).superRefine((e,t)=>{if(e.field===`meeting_type`){e.matchType!==`is`&&e.matchType!==`is_not`&&t.addIssue({code:`custom`,path:[`matchType`],message:`meeting_type conditions must use is / is_not`}),e.value!==`internal`&&e.value!==`external`&&t.addIssue({code:`custom`,path:[`value`],message:`meeting_type conditions must match internal / external`});return}e.matchType!==`contains`&&e.matchType!==`does_not_contain`&&t.addIssue({code:`custom`,path:[`matchType`],message:`meeting_title conditions must use contains / does_not_contain`})});F({settings:F({recorderAgentName:D().trim().min(1).max(100),recordingPolicy:yb,saveVideo:M().default(!1),conditions:P(bb).max(20)}).superRefine((e,t)=>{e.recordingPolicy===`matching_rules`&&e.conditions.length===0&&t.addIssue({code:`custom`,path:[`conditions`],message:`matching_rules requires at least one condition`})}).nullable(),hasCalendarAccounts:M()}),F({policyVersion:D(),segmentSeconds:j().int().positive(),minFlushSegmentSeconds:j().positive(),maxSegmentDurationSeconds:j().int().positive(),idlePollIntervalMs:j().int().positive(),pendingPollBackoffIntervalsMs:P(j().int().positive()).min(1),pendingPollIntervalMs:j().int().positive(),pollJitterRatio:j().min(0).max(1),uploadTimeoutMs:j().int().positive(),liveTranscriptionModelTimeoutMs:j().int().positive(),maxQueuedSegments:j().int().positive(),maxPendingChunks:j().int().positive(),maxUploadBytes:j().int().positive(),displayLagSeconds:j().nonnegative(),timelineCatchUpIntervalMs:j().int().positive(),timelineGapRevealAheadChunks:j().int().nonnegative(),timelineMaxBurstSegments:j().int().positive(),timelineMaxDisplaySegmentDurationSeconds:j().positive(),timelineMinDisplaySegmentDurationSeconds:j().positive(),timelineTypingCriticalBacklogChars:j().int().positive(),timelineTypingCriticalCharsPerSecond:j().int().positive(),timelineTypingHighBacklogChars:j().int().positive(),timelineTypingHighBacklogCharsPerSecond:j().int().positive(),timelineTypingLowBacklogChars:j().int().positive(),timelineTypingLowBacklogCharsPerSecond:j().int().positive(),timelineTypingNormalCharsPerSecond:j().int().positive(),timelineTypingRevealTickMs:j().int().positive()});const xb=F({userId:k(),name:D().nullable(),email:D(),image:D().nullable().optional()});F({id:k(),workspaceId:k(),createdBy:k(),owner:xb.optional(),calendarEventId:k().nullable(),title:D(),description:D().nullable(),location:D().nullable(),startTime:D().nullable(),endTime:D().nullable(),status:Py,source:Ry,conferenceLink:D().nullable(),conferenceData:qy.nullable(),notes:D().nullable(),summary:D().nullable(),actionItems:P($y).nullable().optional(),calendarEvent:F({title:D(),providerEventId:D(),calendarId:D(),provider:z([`google`,`outlook`,`caldav`]),providerCalendarId:D(),startTime:D(),endTime:D()}).nullable(),participants:P(Jy).optional(),recordings:P(pb).optional(),hasEverRecorded:M().optional(),meetingBots:P(vb).optional(),isOwner:M().optional(),sharedVia:rb.optional(),visibility:eb,myRole:nb.optional(),createdAt:V(),updatedAt:V()});const Sb=F({hasVideo:M().optional(),id:k(),title:D(),sortTime:D(),createdAt:V(),updatedAt:V(),startTime:D().nullable(),endTime:D().nullable(),status:Py.nullable(),source:Ry.nullable(),conferenceLink:D().nullable(),hasRecordings:M(),hasNotes:M().optional(),hasEverRecorded:M().optional(),participantCount:j().nullable(),isOwner:M(),myRole:nb,owner:xb.optional(),sharedVia:rb.optional(),isSharedWithOthers:M().optional(),visibility:eb.optional(),duration:j().nullable(),hasTranscript:M(),hasSummary:M(),summaryStatus:Gy,recordingStats:F({total:j().int().nonnegative(),available:j().int().nonnegative(),processing:j().int().nonnegative(),needsAttention:j().int().nonnegative(),failed:j().int().nonnegative().optional(),noRecording:j().int().nonnegative()}).optional(),recordingSource:zy.nullable(),processingStatus:Vy.nullable(),hasActiveMeetingBot:M().optional(),activeMeetingBot:vb.optional()}),Cb=F({meetingId:D(),userId:D(),userName:D(),userEmail:D(),userImage:D().nullable().optional(),createdAt:V()});F({recordings:P(pb),nextKey:D().optional()}),F({meetings:P(Sb),nextKey:D().optional()}),F({shares:P(Cb)}),F({meetings:P(F({id:D(),title:D(),startTime:D().nullable()}))}),F({photos:R(D(),D())});const wb=F({meetingId:k(),title:D(),startTime:D().nullable(),summary:D(),actionItems:P($y)}),Tb=F({meetingId:k(),title:D(),startTime:D().nullable(),item:$y});F({previous:wb.nullable(),seriesActionItems:F({open:P(Tb),recentlyCompleted:P(Tb)}).optional()}),wu.extend({search:D().trim().max(200).optional(),filter:z([`mine`,`shared`,`all`]).default(`all`),sortBy:z([`updated_at`,`start_time`]).default(`updated_at`),hasContent:yl().optional(),hasActiveMeetingBot:yl().optional()});function Eb(e){return e.summary?e.summary:e.recordings?.find(e=>e.summary)?.summary||e.recordings?.find(e=>e.provisionalResult?.summary)?.provisionalResult?.summary}const Db=Object.values({AGENT:`agent`,SKILL:`skill`}),Ob={ROLE:`role`,BADGE:`badge`,USE_CASE:`use_case`},kb=Object.values(Ob),Ab=F({speaker:z([`user`,`assistant`]),text:D()}),jb=F({id:k(),name:D(),provider:D(),iconUrl:D().nullable(),purpose:D()}),Mb=F({tag:D(),category:z(kb),label:D()}),Nb=F({slug:D(),type:z(Db),name:D(),description:D(),iconUrl:D().nullable(),tags:P(Mb)}),Pb=D().optional().transform(e=>kl(e));F({type:z(Db).optional(),tag:D().optional(),limit:H().int().min(1).max(100).default(30),cursor:D().optional(),lang:Pb}),F({items:P(Nb),nextCursor:D().nullable()}),L(`type`,[F({slug:D(),type:B(`agent`),name:D(),description:D(),iconUrl:D().nullable(),tags:P(Mb),starterPrompts:P(D()),exampleConversation:P(Ab),connectors:P(jb)}),F({slug:D(),type:B(`skill`),name:D(),description:D(),iconUrl:D().nullable(),tags:P(Mb),exampleConversation:P(Ab)})]),F({items:P(F({tag:D(),name:D(),tagline:D()}))}),F({toolApprovalMode:Od.optional()}).default({}),F({resourceId:k(),resourceType:z(Db),workspaceId:k(),taskId:k().nullable(),resourceSlug:D()}),F({type:z(Db),slug:D().min(1)}),F({lang:Pb});const Fb=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,Ib=F({connectorId:k(),purpose:D().trim().min(1,`Purpose is required`)}),Lb={name:D().trim().min(1).max(120),description:D().trim().min(1).max(2e3),iconId:k().nullable().optional(),tags:P(D()).default([]),model:qu,systemPrompt:D().trim().min(1),conversationStarters:P(D().trim().min(1)).max(5).default([]),exampleConversation:P(Ab).min(1,`At least one example turn is required`),connectors:P(Ib).refine(e=>new Set(e.map(e=>e.connectorId)).size===e.length,{message:`Each connector can only be added once`}).default([])};F({slug:D().trim().regex(Fb,`Use lowercase-kebab-case`).max(120),...Lb}),F(Lb),F({id:k()}),F({type:z(Db).optional(),limit:H().int().min(1).max(100).default(30),offset:H().int().min(0).default(0)}),F({items:P(F({id:k(),type:z(Db),slug:D(),name:D(),description:D(),tags:P(D()),isDelisted:M(),createdAt:V(),updatedAt:V()})),total:j().int().min(0)});const Rb=F({connectorId:k(),name:D(),purpose:D()});F({id:k(),slug:D(),name:D(),description:D(),iconId:k().nullable(),tags:P(D()),model:D(),systemPrompt:D(),conversationStarters:P(D()),exampleConversation:P(Ab),connectors:P(Rb),isDelisted:M(),createdAt:V(),updatedAt:V()}),F({items:P(F({tag:D(),category:z([Ob.ROLE,Ob.BADGE,Ob.USE_CASE])}))}),F({items:P(F({id:k(),name:D(),description:D()}))});const zb={description:D().trim().min(1).max(2e3),iconId:k().nullable().optional(),tags:P(D()).default([]),exampleConversation:P(Ab).min(1,`At least one example turn is required`)};F({slug:D().trim().regex(Fb,`Use lowercase-kebab-case`).max(120),...zb}),F(zb),F({id:k()}),F({id:k(),slug:D(),name:D(),description:D(),iconId:k().nullable(),tags:P(D()),exampleConversation:P(Ab),hasPackagedContent:M(),isDelisted:M(),createdAt:V(),updatedAt:V()}),F({name:D(),description:D()});const Bb=F({id:j(),content:D(),createdAt:V(),updatedAt:V()});F({limit:H().int().min(1).max(100).default(100),nextKey:D().optional()}),F({memories:P(Bb),nextKey:D().optional()}),F({workspaceId:k()}),F({workspaceId:k(),memoryId:H().int()}),F({kind:B(`stream_error`),code:z([`context_length_exceeded`,`request_too_large`,`token_compaction_failed`,`rate_limited`,`quota_exhausted`,`auth`,`timeout`,`content_filter`,`subscription_vendor_quota_exhausted`,`subscription_pool_exhausted`,`subscription_pool_not_configured`,`subscription_pool_member_allowance_reached`,`provider_unavailable`,`agent_unavailable`,`invalid_tool_schema`,`unknown`]).catch(`unknown`),errorId:D().max(128).optional()}),F({providers:P(F({id:D(),name:D(),clientId:D().nullable(),authUrl:D(),tokenUrl:D(),usePKCE:M(),defaultScopes:P(D()).nullable(),strategy:D(),configured:M(),builtIn:M(),iconUrl:D().optional()}))});const Vb={AGENT:`agent`,SKILL:`skill`,WORKFLOW:`workflow`,CONNECTOR:`connector`,SCHEDULE:`schedule`,PROJECT:`project`};function Hb({resourceType:e,resourceId:t}){return`${e}:${t}`}const Ub=z([Vb.AGENT,Vb.SKILL,Vb.WORKFLOW,Vb.CONNECTOR,Vb.SCHEDULE,Vb.PROJECT]),Wb=F({resourceType:Ub,resourceId:k(),name:D(),managedAgent:F({channelCount:j().int().nonnegative()}).optional()}),Gb=F({projectId:k(),name:D(),teams:P(F({teamId:k(),name:D()}))});F({hash:D().regex(/^[0-9a-f]{64}$/),items:P(Wb),teamOnlyProjects:P(Gb)});const Kb=L(`action`,[F({resourceType:Ub,resourceId:k(),action:B(`transfer`),successorUserId:k()}),F({resourceType:Ub,resourceId:k(),action:B(`delete`)})]),qb=L(`action`,[F({action:B(`transfer`),successorUserId:k()}),F({action:B(`delete`)})]);F({inventoryHash:D().min(1),defaultAction:qb.optional(),decisions:P(Kb).max(1e3).superRefine((e,t)=>{let n=new Set;for(let[r,i]of e.entries()){let e=Hb(i);n.has(e)?t.addIssue({code:`custom`,path:[r],message:`Duplicate decision for resource`}):n.add(e)}})}),F({transferred:j(),deleted:j()}),F({userId:k()}),F({roleId:k()}),F({url:Nf.refine(e=>{if(!URL.canParse(e))return!1;let t=new URL(e);return!t.username&&!t.password&&!t.port},`Preview URLs must not contain credentials or a custom port`)}),F({title:D().max(300).nullable(),description:D().max(600).nullable(),siteName:D().max(100).nullable()});const Jb=F({en:z([`en-US`,`en-GB`]).optional(),zh:z([`zh-CN`,`zh-HK`,`zh-TW`]).optional(),es:z([`es-MX`,`es-ES`,`es-US`]).optional(),fr:z([`fr-FR`,`fr-CA`]).optional(),pt:z([`pt-PT`,`pt-BR`]).optional()}).strict(),Yb=F({displayName:D().nullable(),jobTitle:D().nullable(),language:D().nullable(),customPreferences:D().nullable(),voiceLanguageVariants:Jb.nullable(),updatedAt:V()});F({displayName:D().trim().max(100).nullable().optional(),jobTitle:D().trim().max(100).nullable().optional(),language:D().trim().max(100).nullable().optional(),customPreferences:D().trim().max(1e3).nullable().optional(),voiceLanguageVariants:Jb.nullable().optional()}),F({workspaceId:k()}),Yb.extend({updatedAt:V().nullable()}),F({workspaceId:k()}),F({workspaceId:k(),teamId:k(),publishId:k()}),F({workspaceId:k(),teamId:k()});const Xb=[Yf.MEMBER,Yf.MANAGER,Yf.OWNER];F({resourceType:em,resourceId:k(),versionId:k().optional(),teamIds:P(k()).min(1).max(20).refine(e=>new Set(e).size===e.length,{message:`teamIds must not contain duplicates`}),message:D().trim().max(500).optional()}),F({roles:P(z(Xb)).min(1).refine(e=>new Set(e).size===e.length,{message:`Roles must be unique`})}),F({roles:P(z(Xb)).min(1).refine(e=>new Set(e).size===e.length,{message:`Roles must be unique`})}),F({items:P(F({id:k(),resource:rm,author:nm,requester:nm,teamId:k(),versionNumber:j().int().nullable(),status:z(tm),message:D().nullable(),roles:P(z(Xb)).nullable(),reviewer:nm.nullable(),reviewedAt:V().nullable(),rejectReason:D().nullable(),createdAt:V(),updatedAt:V()})),nextKey:D().optional()}),F({count:j().int()}),F({workspaceId:k()}),F({workspaceId:k(),publishId:k()}),F({resourceType:em,resourceId:k(),versionId:k().optional(),message:D().trim().max(500).optional()}),F({roleIds:P(k()).min(1).optional()}),F({roleIds:P(k()).nullable().optional()}),F({items:P(F({id:k(),resource:rm,author:nm.nullable(),requester:nm.nullable(),versionNumber:j().int().nullable(),workspaceId:k(),status:z(tm),message:D().nullable(),roleIds:P(k()).nullable(),reviewer:nm.nullable(),reviewedAt:V().nullable(),rejectReason:D().nullable(),createdAt:V(),updatedAt:V()})),total:j().int().nonnegative(),nextKey:D().optional()}),F({resourceType:em.optional()}),F({count:j().int()});const Zb=F({low:j().min(-12).max(12),mid:j().min(-12).max(12),high:j().min(-12).max(12)});F({startSeconds:j().int().nonnegative(),endSeconds:j().int().positive(),equalizer:Zb.optional()}).refine(e=>e.endSeconds-e.startSeconds>=1,{message:`Keep at least one second of audio`,path:[`endSeconds`]}).safeExtend({requestId:k(),expectedTranscriptRevision:j().int().nonnegative()}),F({recordingId:k(),meetingId:k()}),F({revision:j().int().nonnegative(),rejectedRanges:P(Hc([j().int(),j().int()]))});const Qb=z([`web`,`desktop`,`chrome_extension`]);F({sessionId:k(),ownerId:k(),client:Qb,title:D().trim().min(1).max(500)});const $b=F({sessionId:k(),ownerId:k()});$b.extend({phase:z([`capturing`,`finalizing`])}),$b.extend({reason:z([`saved`,`discarded`,`start_failed`])});const ex=F({sessionId:k(),ownerId:k(),userId:k(),workspaceId:k(),client:Qb,title:D(),recordingId:k().nullable(),meetingId:k().nullable(),phase:z([`capturing`,`finalizing`]),health:z([`active`,`unknown`]),startedAt:V(),lastSeenAt:V()});F({userId:k(),capture:ex.nullable()}).extend({acquired:M()}),F({peaks:P(j().min(0).max(1)).max(1728e3),duration:j().positive(),secondsPerPeak:j().positive()}),F({version:B(1),transcriptRevision:j().int().nonnegative(),operationId:k().optional(),model:D(),processingPath:z([`batch`,`chunks`]).optional(),kind:z([`upload`,`trim`,`retry`]),fileBytes:j().nonnegative(),format:D(),audioSeconds:j().nonnegative(),uploadSeconds:j().positive(),observedUploadSeconds:j().positive().optional(),processingSeconds:j().positive(),uploadSampleCount:j().int().nonnegative(),processingSampleCount:j().int().nonnegative(),preparedAt:V(),processingStartedAt:V().optional(),completedAt:V().optional(),uploadFraction:j().min(0).max(.99).optional()}),[{extension:`mp3`,mimeTypes:[`audio/mpeg`]},{extension:`m4a`,mimeTypes:[`audio/mp4`,`audio/x-m4a`]},{extension:`wav`,mimeTypes:[`audio/wav`,`audio/wave`]},{extension:`mp4`,mimeTypes:[`video/mp4`]},{extension:`webm`,mimeTypes:[`audio/webm`,`video/webm`]},{extension:`aac`,mimeTypes:[`audio/aac`]},{extension:`ogg`,mimeTypes:[`audio/ogg`]},{extension:`flac`,mimeTypes:[`audio/flac`]},{extension:`mpeg`,mimeTypes:[`audio/mpeg`]}].map(({extension:e})=>`.${e}`),F({url:A(),title:D().trim().min(1).max(500).optional(),preferredLanguage:D().trim().min(2).max(10).regex(/^[a-zA-Z]{2,3}(-[a-zA-Z]{2,8})?$/,`Invalid language code format`).optional()}),F({recordingId:k(),source:B(`media`),message:D()}),F({url:A()}),F({url:D(),type:B(`media`),title:D(),duration:j().optional(),thumbnailUrl:D().optional(),contentType:D().optional(),fileSize:j().optional(),extractor:D().optional(),channelName:D().optional(),uploadDate:D().optional()}),F({downloadUrl:D(),playbackPending:M(),url:D()}),F({eventId:k(),occurredAt:V(),clientVersion:D().max(64),captureClient:z([`chrome_extension`,`web`,`desktop`,`mobile`]),stage:z([`capture`,`persistence`,`live_upload`,`finalize`,`upload`]),outcome:z([`started`,`completed`,`failed`,`degraded`,`recovered`]),reason:z([`started`,`stopped`,`capture_failed`,`capture_interrupted`,`storage_unavailable`,`storage_write_failed`,`finalize_failed`,`upload_failed`,`upload_completed`,`upload_recovered`,`live_segment_dropped`,`live_segment_recovered`]),attempt:j().int().min(0).max(100).optional(),seq:j().int().min(0).optional(),status:j().int().min(0).max(599).optional(),recoverable:M().optional()}),F({deploymentMode:ky,features:F({enableCapability:M(),enableCapabilityProviderSwitch:M(),enableChatbotSlack:M(),enableChatbotTeams:M(),enableOutgoingWebhooks:M(),enableProject:M(),enableScheduleActiveWindows:M(),enableScheduleJudge:M(),scheduleJudgeDefaultEnabled:M()})});const tx=F({id:k(),name:D(),email:D(),image:D().nullable().optional()}),nx=F({id:k(),name:D()});F({subjectType:ep,subjectId:k()}),F({grants:P(L(`subjectType`,[F({subjectType:B($f.USER),subjectId:k(),userId:k().optional(),role:Qf,user:tx}),F({subjectType:B($f.TEAM),subjectId:k(),teamId:k().optional(),role:Qf,team:nx})]))}),F({role:Qf});function rx(e){return e.subjectType===$f.USER}function ix(e){return e.grants.filter(rx)}F({workspaceId:k(),resourceType:em}),F({teams:P(F({id:k(),name:D()}))}),F({roles:P(F({id:k(),name:D(),description:D().optional(),isDefault:M(),memberCount:j().int(),permissions:P(D()),fixedPermissions:P(D()).optional(),createdAt:V(),updatedAt:V()})),nextKey:D().optional()}),F({name:D().trim().min(1).max(100),description:D().trim().max(500).optional(),permissions:P(gd).min(1)}),F({name:D().trim().min(1).max(100),description:D().trim().max(500).optional(),permissions:P(gd).min(1)});const ax=z([`skills`,`connectors`,`schedules`,`chatbot`,`workflows`,`projects`,`meetings`,`marketplace`]),ox=P(ax).transform(e=>[...new Set(e)]),sx=F({roleId:k(),hiddenEntries:ox});F({roles:P(sx)}),F({roles:P(sx)}),F({hiddenEntries:P(ax)});const cx={},lx={};function ux(e,t){try{let n=(cx[e]||=new Intl.DateTimeFormat(`en-US`,{timeZone:e,timeZoneName:`longOffset`}).format)(t).split(`GMT`)[1];return n in lx?lx[n]:fx(n,n.split(`:`))}catch{if(e in lx)return lx[e];let t=e?.match(dx);return t?fx(e,t.slice(1)):NaN}}const dx=/([+-]\d\d):?(\d\d)?/;function fx(e,t){let n=+(t[0]||0),r=+(t[1]||0),i=(t[2]||0)/60;return lx[e]=n*60+r>0?n*60+r+i:n*60-r-i}var px=class e extends Date{constructor(...e){super(),e.length>1&&typeof e[e.length-1]==`string`&&(this.timeZone=e.pop()),this.internal=new Date,isNaN(ux(this.timeZone,this))?this.setTime(NaN):e.length?typeof e[0]==`number`&&(e.length===1||e.length===2&&typeof e[1]!=`number`)?this.setTime(e[0]):typeof e[0]==`string`?this.setTime(+new Date(e[0])):e[0]instanceof Date?this.setTime(+e[0]):(this.setTime(+new Date(...e)),_x(this,e)):this.setTime(Date.now())}static tz(t,...n){return n.length?new e(...n,t):new e(Date.now(),t)}withTimeZone(t){return new e(+this,t)}getTimezoneOffset(){let e=-ux(this.timeZone,this);return e>0?Math.floor(e):Math.ceil(e)}setTime(e){return Date.prototype.setTime.apply(this,arguments),hx(this),+this}[Symbol.for(`constructDateFrom`)](t){return new e(+new Date(t),this.timeZone)}};const mx=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!mx.test(e))return;let t=e.replace(mx,`$1UTC`);px.prototype[t]&&(e.startsWith(`get`)?px.prototype[e]=function(){return this.internal[t]()}:(px.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),gx(this),+this},px.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),hx(this),+this}))});function hx(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-ux(e.timeZone,e)*60))}function gx(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),_x(e)}function _x(e,t){let n=Array.isArray(t)?vx(t):+e.internal,r=ux(e.timeZone,e),i=r>0?Math.floor(r):Math.ceil(r),a=new Date(+e);a.setUTCHours(a.getUTCHours()-1);let o=-new Date(+e).getTimezoneOffset(),s=-new Date(+a).getTimezoneOffset(),c=o-s,l=o;if(c&&o!==i&&Date.prototype.getHours.apply(e)!==(Array.isArray(t)?t[3]||0:e.internal.getUTCHours())){let t=new Date(+e),n=o-i;n&&t.setUTCMinutes(t.getUTCMinutes()+n);let r=ux(e.timeZone,t);(r>0?Math.floor(r):Math.ceil(r))===i&&(l=s)}let u=l-i;u&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+u);let d=new Date(+e);d.setUTCSeconds(0);let f=o>0?d.getSeconds():(d.getSeconds()-60)%60,p=Math.round(-(ux(e.timeZone,e)*60))%60;(p||f)&&Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+p+f);let m=ux(e.timeZone,e),ee=m>0?Math.floor(m):Math.ceil(m),te=-new Date(+e).getTimezoneOffset()-ee,ne=ee!==i,re=te-u,ie=ee-i,ae=n-ee*60*1e3,oe=ie>0&&yx(e)-n===ie*60*1e3&&yx(e,ae)!==n;if(ne&&re&&!oe){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+re);let t=ux(e.timeZone,e),n=ee-(t>0?Math.floor(t):Math.ceil(t));n&&re<0&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+n)}hx(e);let se=(t?n:n+p*1e3)-+e.internal;se&&Math.abs(se)<1800*1e3&&(Date.prototype.setTime.call(e,+e+se),hx(e))}function vx(e){return Date.UTC(e[0],e.length>1?e[1]:0,e.length>2?e[2]:1,...e.slice(3))}function yx(e,t){let n=new Date(t??+e);return n.setUTCSeconds(n.getUTCSeconds()-Math.round(-ux(e.timeZone,n)*60)),+n}const bx=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/u,xx=R(D().regex(/^[A-Za-z_][A-Za-z0-9_]*$/u),D()).optional();F({runId:D().regex(bx),command:D().min(1),cwd:D().optional(),env:xx,secretEnv:xx,deadlineMs:j().int().min(1e3).max(72e5),outputLimitBytes:j().int().positive().max(1073741824).default(104857600)});const Sx=D().length(12).regex(/^[a-z0-9]+$/u),Cx=I([L(`mode`,[F({mode:B(`version`),versionId:k()}),F({mode:B(`work`),taskId:k()})]),F({mode:B(`file`),fileId:k()}),F({mode:B(`live`)})]);Ic({siteKey:Sx,env:D().min(1),serve:Cx,iat:j().optional(),exp:j().optional()});const wx=[`preview_site_ready`,`preview_site_publish`,`preview_site_read`,`preview_site_delete`];function Tx(e,t){let n=new Set;for(let r of e){let e=t(r);if(n.has(e))return e;n.add(e)}}const Ex=P(D().min(1)).superRefine((e,t)=>{let n=Tx(e,e=>e);n&&t.addIssue({code:`custom`,message:`Duplicate path: ${n}`})});z(wx);const Dx={env:D().min(1),sandboxDomain:D().min(1),sandboxId:D().min(1)},Ox={...Dx,siteDir:D().min(1).default(`app`)},kx={env:D().min(1),siteKey:Sx},Ax={...kx,serve:Cx};L(`op`,[F({op:B(`preview_site_ready`),...Ox}),F({op:B(`preview_site_publish`),...Ox}),F({op:B(`preview_site_delete`),...Dx})]),L(`op`,[F({op:B(`preview_site_ready`),...Ax}),F({op:B(`preview_site_publish`),...Ax}),F({op:B(`preview_site_read`),...Ax}),F({op:B(`preview_site_delete`),...kx})]),F({files:P(F({path:D().min(1),contentBase64:vc(`Invalid base64 content`),contentType:D().optional()})).max(128).superRefine((e,t)=>{let n=Tx(e,e=>e.path);n&&t.addIssue({code:`custom`,message:`Duplicate path: ${n}`})}),finalize:M().default(!0),manifestFiles:Ex.optional()}).superRefine((e,t)=>{if(!e.finalize||!e.manifestFiles)return;let n=new Set(e.manifestFiles);for(let r of e.files)if(!n.has(r.path)){t.addIssue({code:`custom`,message:`Manifest is missing published file: ${r.path}`});return}}),F({filesUploaded:j().int().nonnegative(),filesDeleted:j().int().nonnegative()}),F({files:Ex});const jx=Object.values({BUILT_IN:`built_in`,CUSTOM:`custom`}),Mx=[`updatedAt`,`name`];wu.extend({createdBy:z([`me`]).optional(),search:D().trim().max(200).optional(),sortBy:z(Mx).optional()});const Nx=F({id:k(),name:D(),isMe:M()}),Px=F({id:k()}).nullable(),Fx=F({id:k(),name:D(),description:D(),type:z(jx).optional(),provider:D().nullable(),author:Nx.nullable(),publish:Px,publishedTo:am.optional(),team:F({id:k(),name:D()}).optional().describe(`The team this skill is published to, only present when createdBy is team`),versionNumber:j().int().nullable().optional(),isEnabled:M(),myRole:tp,createdAt:V(),updatedAt:V()});F({skills:P(Fx),nextKey:D().optional()}),F({id:k(),workspaceId:k(),authorId:k(),name:D(),description:D(),currentVersionId:k(),createdAt:V(),updatedAt:V()}),F({workspaceId:k(),skillId:k(),versionId:k()});const Ix=F({id:k(),name:D()}),Lx=F({id:k(),versionNumber:j().int().min(1),description:D(),createdBy:Ix,createdAt:V()});F({skillId:k(),skillName:D(),versions:P(Lx)}),F({url:A()}),F({search:D().trim().max(200).optional(),status:z(mm).optional(),nextKey:D().optional(),limit:H().int().min(1).max(100).default(20),sortBy:z(Mx).optional()}),F({skills:P(F({id:k(),name:D(),description:D().optional(),hasUnpublishedChanges:M(),latestVersionNumber:j().int().nullable(),publishedTo:am.optional(),myRole:tp,createdAt:V(),updatedAt:V()})),nextKey:D().optional(),totalCount:j().int().nonnegative(),statusCounts:hm}),wu.extend({createdBy:z([`workspace`,`team`,`me`]).optional(),teamId:k().optional(),search:D().trim().max(200).optional(),sortBy:z(Mx).optional()}).refine(e=>!e.teamId||e.createdBy===`team`,{message:`teamId can only be used with createdBy: team`,path:[`teamId`]}),F({field:D(),message:D()}),F({workspaceId:k(),skillId:k()}),F({isEnabled:M()}),F({isEnabled:M()}),F({skills:P(Fx),nextKey:D().optional()}),F({workspaceId:k(),skillId:k()});const Rx=F({path:D(),size:j().int().nonnegative()});F({skillId:k(),skillName:D(),description:D(),versionId:k(),files:P(Rx)}),F({workspaceId:k(),skillId:k()}),F({path:D().trim().min(1).max(1024)}),L(`kind`,[F({kind:B(`text`),path:D(),size:j().int().nonnegative(),content:D()}),F({kind:B(`image`),path:D(),size:j().int().nonnegative(),content:D()}),F({kind:B(`binary`),path:D(),size:j().int().nonnegative()}),F({kind:B(`too_large`),path:D(),size:j().int().nonnegative()})]);const zx=z([`queued`,`running`,`completed`,`failed`,`cancelled`,`unknown`]),Bx=new Set([`completed`,`failed`,`cancelled`,`unknown`]);function Vx(e){return Bx.has(e)}const Hx=[`tool`,`subagent`,`workflow`],Ux=z(Hx),Wx=z([`stdout`,`stderr`]),Gx=F({tail:D(),bytes:j().int().nonnegative()}),Kx=F({runId:k(),kind:B(`tool`),toolName:D(),description:D().nullable(),status:zx,stopRequestedAt:D().nullable(),createdAt:D(),startedAt:D().nullable(),completedAt:D().nullable(),summary:D().nullable(),exitCode:j().int().nullable(),timedOut:M(),outputLimitExceeded:M(),errorMessage:D().nullable(),fullOutputAvailable:M()}),qx=F({runs:P(Kx),nextKey:D().optional()}),Jx=Kx.extend({stdout:Gx.nullable(),stderr:Gx.nullable(),liveTail:F({stdout:D(),stderr:D()}).nullable()});F({stream:Wx});const Yx=z([`queued`,`running`,`completed`,`failed`,`cancelled`]),Xx=zx;z([`subagent`,`workflow`]);const Zx={subagent:`subagentRuns`,workflow:`workflowRuns`,tool:`toolRuns`};function Qx(e){return Zx[e]}const $x=new Set([`completed`,`failed`,`cancelled`]);function eS(e){return $x.has(e)}function tS(e){return e.at(-1)?.toolCallCount??0}F({runs:P(F({runId:D(),kind:Ux,status:Xx,label:D(),startedAt:D().nullable(),createdAt:D()}))}),F({kinds:I([Ux,P(Ux).min(1)]).transform(e=>[...new Set(Array.isArray(e)?e:[e])]).default([`subagent`,`workflow`])}),F({runId:k(),status:Yx,startedAt:D().nullable(),progress:gl().nullable().meta({type:`object`}),result:gl().nullable().meta({type:`object`}),error:gl().nullable().meta({type:`object`})});const nS=z([`chatgpt`]),rS=z([`active`,`expired`,`needs_reauth`,`quota_exhausted`,`error`]),iS=rd,aS=F({observedAt:V(),windows:R(D(),iS),resetCreditsAvailable:j().int().nonnegative().optional()}),oS=F({id:k(),provider:nS,label:D(),accountId:D(),status:rS,quotaResetAt:V().nullable(),quota:aS.nullable(),lastCheckedAt:V().nullable(),createdAt:V()});F({accounts:P(oS)}),F({outcome:z([`reset`,`nothing_to_reset`,`no_credit`,`already_redeemed`]),windowsReset:j().int().nonnegative(),account:oS}),F({accountIds:P(k()).min(1)}),F({provider:nS,label:D().trim().min(1).max(100).optional()}),F({provider:nS}),F({status:z([`pending`,`connected`,`error`]),account:oS.nullable(),lastError:D().nullable()}),F({errorMessage:D().min(1).max(1e3),url:A().max(2e3).optional(),userAgent:D().max(500),workspaceId:k().optional(),sentryEventId:D().max(64).optional(),description:D().max(5e3).nullable()}),F({requestId:j().int()});const sS=[`pending`,`running`,`completed`,`failed`,`cancelled`],cS=[`input`,`output`],lS=z(sS),uS=z(cS),dS=F({taskAssetId:k(),role:uS}),fS=F({id:k(),position:j().int().positive().nullable(),title:D(),status:lS,startedAt:Sl().nullable(),finishedAt:Sl().nullable(),assets:P(dS)}),pS=F({id:k(),taskRunId:k(),revision:j().int().nonnegative(),items:P(fS)}),mS=fS.extend({startedAt:V().nullable(),finishedAt:V().nullable()});pS.extend({items:P(mS)}),F({workspaceId:k()}),F({workspaceId:k(),teamId:k()}),F({workspaceId:k(),teamId:k(),userId:k()});const hS=[Yf.OWNER,Yf.MANAGER,Yf.MEMBER],gS=[Xf.VISIBLE,Xf.HIDDEN],_S=[Yf.OWNER,Yf.MANAGER,Yf.MEMBER],vS=F({email:nc(),role:z(_S)});F({name:D().trim().min(1).max(100),description:D().trim().max(500).nullable().default(null),visibility:z(gS).optional(),requireReview:M().optional(),acceptExternalSubmissions:M().optional(),members:P(vS).min(1).max(50).optional()}),F({name:D().trim().min(1).max(100).optional(),description:D().trim().max(500).nullable().optional(),visibility:z(gS).optional(),requireReview:M().optional(),acceptExternalSubmissions:M().optional()}).refine(e=>e.name!==void 0||e.description!==void 0||e.visibility!==void 0||e.requireReview!==void 0||e.acceptExternalSubmissions!==void 0,{message:`At least one field must be provided`}),F({members:P(vS).min(1).max(50)}),F({role:z(_S)});const yS=F({id:k(),name:D()});F({teams:P(F({id:k(),name:D(),description:D().nullable(),visibility:z(gS),requireReview:M(),acceptExternalSubmissions:M(),memberCount:j().int(),currentUserRole:z(hS).nullable(),createdBy:yS,createdAt:V(),updatedAt:V()}).extend({publishPendingCount:j().int(),published:M().optional()})),nextKey:D().optional()}),wu.extend({search:D().trim().max(200).optional(),resourceType:em.optional(),resourceId:k().optional()}),F({members:P(F({userId:k(),name:D(),email:D(),role:z(hS),createdAt:V()})),total:j().int().nonnegative()}),Tu.extend({search:D().trim().max(200).optional()}),F({platform:z([`posthog`,`sentry`,`zendesk`])}),F({id:k()});const bS=1e3,xS=z([`personal`,`team`,`workspace`]),SS=z([`manual`,`auto_learned`]),CS=F({id:k(),workspaceId:k(),scope:xS,userId:k().nullable(),teamId:k().nullable(),term:D(),usageContext:D().nullable(),source:SS,createdBy:k().nullable(),createdAt:V(),updatedAt:V()}),wS=F({workspaceId:k()}),TS=wS.extend({teamId:k()});wS.extend({entryId:k()}),TS.extend({entryId:k()}),F({limit:H().int().min(1).max(100).default(100),nextKey:D().optional()}),F({entries:P(CS),nextKey:D().optional()});const ES=D().trim().min(1).max(200);F({term:ES,usageContext:D().trim().max(bS).nullable().optional()}),F({term:ES.optional(),usageContext:D().trim().max(bS).nullable().optional()}).refine(e=>Object.keys(e).length>0,{message:`At least one field is required`});const DS=R(D(),N()),OS=D().min(1).max(64).regex(/^[a-z][a-z0-9_]*$/,`node id must be lower_snake_case`),kS=z(Hu),AS=I([B(`auto`),kS]),jS=z([`routine`,`reasoning`,`judgment`]),MS=z([`implicit_auto`,`fanout_max_excluded`,`only_enabled_tier`,`single_eligible_tier`,`tier_unavailable`]),NS=F({requestedTier:AS,classifiedDemand:jS.optional(),selectedTier:kS,source:z([`pinned`,`classified`,`fallback`,`policy`,`chat-router`]),constraints:P(MS),policyVersion:z([`chat-router-v1`,`workflow-v1`])});F({id:OS,label:D().min(1).max(120)}).extend({kind:B(`agent`),promptTemplate:D().min(1),agentId:k().optional(),toolAllowlist:P(D()).optional(),outputSchema:DS.optional(),modelSelection:AS.optional(),maxSteps:j().int().min(1).max(50).optional()}),F({status:z([`queued`,`running`,`done`,`failed`]),output:N().optional(),error:D().optional(),durationMs:j().int().optional(),tokens:j().int().optional(),usage:F({inputTokens:j().int(),outputTokens:j().int(),totalTokens:j().int(),reasoningTokens:j().int(),cachedInputTokens:j().int(),cachedCreationTokens:j().int(),model:D().optional()}).optional(),fanOut:F({total:j().int(),done:j().int(),failed:j().int(),running:j().int()}).optional(),label:D().optional(),kind:z([`agent`,`fan_out`]).optional(),seq:j().int().optional(),prompt:D().optional(),invocation:F({schema:N().optional(),toolAllowlist:P(D()).optional(),agentId:D().optional(),maxSteps:j().int().optional(),model:AS.optional()}).optional(),modelAllocation:NS.optional(),stepCount:j().int().optional(),toolCalls:P(F({name:D(),summary:D()})).optional(),phaseId:D().optional(),phaseSeq:j().int().optional()}),F({workflows:P(F({id:k(),name:D(),description:D().nullable(),scriptSource:D(),isActive:M(),createdAt:V(),updatedAt:V(),myRole:tp})),nextKey:D().optional()});const PS=z([`queued`,`running`,`completed`,`failed`,`cancelled`]),FS=F({id:k(),status:PS,startedAt:V().nullable(),completedAt:V().nullable(),error:N().nullable(),createdAt:V()});F({runs:P(FS),nextKey:D().optional()}),FS.extend({workflowId:k(),context:gl().meta({type:`object`}),scriptSnapshot:D(),args:N().nullable()}),F({error:D(),code:D().optional(),errorId:D().max(128).optional()});const IS=D().regex(/^(?:rs1:[0-9a-f-]{36}:\d+:\d+:[0-9a-f]{64}|rsl1:[0-9a-f-]{36}:[0-9a-f-]{36}:\d+)$/);F({recordingId:k(),transcriptRevision:j().int().nonnegative(),segmentIndex:j().int().nonnegative(),mediaFingerprint:D().regex(/^[0-9a-f]{64}$/)}),F({recordingId:k(),chunkId:k(),segmentIndex:j().int().nonnegative()});const LS=F({start:j().nonnegative(),end:j().nonnegative(),text:D(),speaker:D().nullable(),speakerName:D().nullable()});F({sourceId:IS,recordingId:k(),meetingId:k(),title:D(),transcriptRevision:j().int().nonnegative(),segment:LS,context:P(LS),audioUrl:D().nullable(),audioOffsetSec:j().nonnegative().optional(),playbackPending:M().optional(),isHistorical:M()});const RS=[`apiUrl`,`hubUrl`];function zS(e,t){if(e!==`apiUrl`)return null;let n;try{({pathname:n}=new URL(t))}catch{return null}return n.replace(/\/+$/u,``).endsWith(`/api`)?`Warning: ${t} looks like a web app's "/api" browser proxy path. Such proxies usually strip the Authorization header, so CLI requests will fail with 401 missing_token — prefer the API server's own URL unless you know this proxy forwards Authorization.`:null}function BS(e){let t=$.getEffectiveProfileName(e);return $.getProfileConfigFile(t)}function X(e){let t=BS(e);try{if(!n.existsSync(t))return{};let e=n.readFileSync(t,`utf-8`);return JSON.parse(e)}catch{return{}}}function VS(e,t){let r=$.getEffectiveProfileName(t);$.ensureProfileDir(r);let i=$.getProfileConfigFile(r);n.writeFileSync(i,JSON.stringify(e,null,2),{mode:384});try{n.chmodSync(i,384)}catch{}}const HS={getApiUrl(e){return X(e).apiUrl??null},setApiUrl(e,t){let n=X(t);n.apiUrl=e,VS(n,t)},clearApiUrl(e){let t=X(e);delete t.apiUrl,VS(t,e)},getHubUrl(e){return X(e).hubUrl??null},setHubUrl(e,t){let n=X(t);n.hubUrl=e,VS(n,t)},getAll(e){return X(e)},setAll(e,t){VS(e,t)},set(e,t,n){let r=X(n);r[e]=t,VS(r,n)},get(e,t){return X(t)[e]},unset(e,t){let n=X(t);delete n[e],VS(n,t)},getDefaultModel(e){return X(e).model?.default??null},setDefaultModel(e,t){let n=X(t);n.model={...n.model,default:e},VS(n,t)},getDefaultConnectorIds(e){return X(e).connectors?.defaults??null},setDefaultConnectorIds(e,t){let n=X(t);n.connectors={...n.connectors,defaults:e},VS(n,t)},getLocalTools(e){return X(e).localTools??null},setLocalTools(e,t){let n=X(t);n.localTools={...n.localTools,...e},VS(n,t)},getToolApprovalMode(e){let t=Od.safeParse(X(e).toolApprovalMode);return t.success?t.data:null},setToolApprovalMode(e,t){let n=X(t);n.toolApprovalMode=e,VS(n,t)},clearToolApprovalMode(e){let t=X(e);delete t.toolApprovalMode,VS(t,e)}};function US(){return i.join(Nw(),`hub-discovery.json`)}function WS(e){return typeof e==`object`&&!!e&&`checkedAt`in e&&typeof e.checkedAt==`number`&&`apiUrl`in e&&typeof e.apiUrl==`string`}function GS(){try{let e=JSON.parse(n.readFileSync(US(),`utf-8`));return typeof e==`object`&&e?e:{}}catch{return{}}}const KS={get(e){let t=new Map(Object.entries(GS())).get(e);return WS(t)?t:null},set(e,t){try{Vw(US(),{...GS(),[e]:t})}catch{}}};function qS(){let e=process.env.X_WEB_PROXY_ID;return e?{"x-web-proxy-id":e}:{}}const JS=new Map,YS=new Map;function XS(e,t){JS.set(e,t)}function ZS(e){return(t,n,r)=>{if(m(t)){let e=m(t);r(null,n.all?[{address:t,family:e}]:t,e);return}let i=t===e?JS.get(e):void 0,[a]=i??[];if(!i||!a){r(Object.assign(Error(`${t} was not the address verified for ${e}`),{code:`ENOTFOUND`}),[]);return}r(null,n.all?i:a.address,a.family)}}function QS(e){let{hostname:t}=new URL(e),n=YS.get(t);n||(n=new ee({connect:{lookup:ZS(t)}}),YS.set(t,n));let r=n,i=te;return async(e,t)=>{let n=e instanceof Request?e:new Request(e,t),a=n.method===`GET`||n.method===`HEAD`?void 0:await n.arrayBuffer();return i(n.url,{method:n.method,headers:[...n.headers],body:a&&a.byteLength>0?a:void 0,signal:n.signal,redirect:n.redirect,dispatcher:r})}}function $S(e){return e.replace(/\/+$/u,``)}function eC(e){return sy.some(({apiHost:t})=>`https://${t}`===e)}function tC(e){return ly(e)}async function nC(e){let t=await p(e,{all:!0});return t.length>0&&XS(e,t),t}async function rC(e,t){return oy(e,t,nC)}async function iC(e,t){return URL.canParse(e)&&URL.canParse(t)&&new URL(t).origin===t&&await rC(new URL(e),new URL(t))===null}async function aC(e,t){let n=uy.safeParse(t);if(!n.success)throw Error(`malformed response`);let r=new URL(n.data.api.baseUrl),i=await rC(new URL(e),r);if(i)throw Error(i);return r.origin}async function oC(e){if(!URL.canParse(e)||!ay(new URL(e)))throw Error(`hubUrl is not https`);try{return await a.get(`${e}/.well-known/entrydesk/client`,{headers:tC(e)?qS():{},redirect:`error`,retry:0,timeout:5e3}).json()}catch(e){throw c(e)?Error(e.response.status===404?`no discovery endpoint`:`HTTP ${e.response.status}`,{cause:e}):e instanceof SyntaxError?Error(`response is not JSON`,{cause:e}):Error(u(e)?`timed out`:`network error`,{cause:e})}}async function sC(e){return aC(e,await oC(e))}const cC=`https://api.entrydesk.com`,lC=`https://app.entrydesk.com`,uC=new Map,dC=new Map,fC=`ENTRYDESK_MCP_TIMEOUT`,pC=`ENTRYDESK_MCP_MAX_TIMEOUT`;function mC(e,t){let n=process.env[e];if(!n)return t;let r=Number(n);return Number.isSafeInteger(r)&&r>0?Math.min(r,2147483647):t}function hC(e){return process.env.ENTRYDESK_API_URL||HS.getApiUrl(e)||null}function gC(e){return process.env.ENTRYDESK_HUB_URL||HS.getHubUrl(e)||null}async function _C(e){let t=KS.get(e),n=t&&await iC(e,t.apiUrl)?t:null;if(n&&Date.now()-n.checkedAt<3e5)return n.apiUrl;try{let t=await sC(e);return KS.set(e,{apiUrl:t,checkedAt:Date.now()}),t}catch(t){let r=n?.apiUrl??tC(e);if(!r)throw new Ew(`Could not find the EntryDesk API for Hub ${e} (${t instanceof Error?t.message:String(t)}). Set the API URL with \`entrydesk profile set apiUrl <url>\`.`);return KS.set(e,{apiUrl:r,checkedAt:Date.now()}),r}}async function vC(e){try{let t=await _C(e);return dC.set(e,t),t}finally{uC.delete(e)}}async function yC(e){let t=hC(e);if(t)return t;let n=gC(e);if(!n)return cC;let r=$S(n),i=uC.get(r)??vC(r);return uC.set(r,i),i}function bC(e,t){return e===hC(t)||e===`https://api.entrydesk.com`||eC(e)}function xC(e,t){return bC(e,t)?qS():{}}function SC(e,t){return bC(e,t)?void 0:QS(e)}function CC(e){let t=hC(e);if(t)return t;let n=gC(e);if(!n)return cC;let r=$S(n);return dC.get(r)??`resolved from ${r} on first request`}function wC(e){return gC(e)||`https://app.entrydesk.com`}function TC(){return{loginTimeout:3e5,ignoreSslErrors:process.env.ENTRYDESK_IGNORE_SSL_ERRORS===`true`||!1}}function EC(){let e=mC(fC,3e5);return{httpPort:3100,requestTimeout:e,requestMaxTotalTimeout:Math.max(mC(pC,18e5),e)}}function DC(e,t){return`${$S(wC(t))}${e}`}function OC(e){return Array.isArray(e)?e.flatMap(e=>{if(typeof e!=`object`||!e||!(`message`in e)||typeof e.message!=`string`)return[];let{message:t}=e;return[{path:(`path`in e&&Array.isArray(e.path)?e.path.filter(e=>typeof e==`string`||typeof e==`number`):[]).join(`.`),message:t}]}):[]}function kC(e){if(typeof e!=`object`||!e)return{error:``,issues:[]};let t=e;return{code:typeof t.code==`string`?t.code:void 0,error:typeof t.error==`string`?t.error:``,issues:OC(t.errors)}}const AC=/^[a-z0-9_.-]{1,64}$/iu;function jC(e){let t=kC(e).code;return t&&AC.test(t)?t:void 0}function Z(e){return le(e).filter(e=>{let t=e.codePointAt(0)??0;return!(t<=31)&&t!==127&&!(t>=128&&t<=159)}).join(``)}const MC=`EntryDesk CLI`,NC={keychain:!1,permissions:!1,corruptFile:!1,windowsFile:!1};function PC(e,t){NC[e]||(NC[e]=!0,console.error(t))}function FC(){return process.env.ENTRYDESK_DEBUG?.toLowerCase()===`true`}function IC(e){return!(!we(e)||!(`accessToken`in e||`refreshToken`in e||`email`in e||`workspaceId`in e)||`accessToken`in e&&typeof e.accessToken!=`string`||`refreshToken`in e&&typeof e.refreshToken!=`string`||`email`in e&&typeof e.email!=`string`||`workspaceId`in e&&typeof e.workspaceId!=`string`)}function LC(e){return we(e)?typeof e.getPassword==`function`&&typeof e.setPassword==`function`&&typeof e.deletePassword==`function`:!1}function RC(e){return $.getProfileCredentialsFile(e)}var zC=class{getKeyFilePath(e){return i.join($.getProfileDir(e),`.credentials.key`)}loadEncryptionKey(e){let t=this.getKeyFilePath(e);try{if(!n.existsSync(t))return null;let e=n.readFileSync(t);return e.length===32?(this.ensureSecureFilePermissions(t),e):null}catch{return null}}createEncryptionKey(e){$.ensureProfileDir(e);let t=this.getKeyFilePath(e),r=ne.randomBytes(32);return n.writeFileSync(t,r,{mode:384}),this.ensureSecureFilePermissions(t),r}getOrCreateEncryptionKey(e){return this.loadEncryptionKey(e)||this.createEncryptionKey(e)}encrypt(e,t){let n=ne.randomBytes(16),r=ne.createCipheriv(`aes-256-gcm`,t,n),i=r.update(e,`utf8`,`hex`);i+=r.final(`hex`);let a=r.getAuthTag();return`${n.toString(`hex`)}:${a.toString(`hex`)}:${i}`}decrypt(e,t){let n=e.split(`:`),r=n.at(0),i=n.at(1),a=n.at(2);if(n.length!==3||r===void 0||i===void 0||a===void 0)throw Error(`Invalid encrypted data format`);let o=Buffer.from(r,`hex`),s=Buffer.from(i,`hex`),c=ne.createDecipheriv(`aes-256-gcm`,t,o,{authTagLength:16});c.setAuthTag(s);let l=c.update(a,`hex`,`utf8`);return l+=c.final(`utf8`),l}tryDecrypt(e,t){try{return this.decrypt(e,t)}catch{return null}}tryParseCredentials(e){try{let t=JSON.parse(e);return IC(t)?t:null}catch{return null}}ensureSecureFilePermissions(e){if(process.platform!==`win32`){try{n.chmodSync(e,384)}catch{PC(`permissions`,`Warning: Failed to set secure permissions on credentials file.`);return}try{(n.statSync(e).mode&511)!=384&&PC(`permissions`,`Warning: Credentials file permissions are too permissive.`)}catch{PC(`permissions`,`Warning: Failed to verify credentials file permissions.`)}}}async getCredentials(e){let t=RC(e);try{if(!n.existsSync(t))return null;let r=n.readFileSync(t,`utf-8`).trim();if(!r)return null;let i=this.loadEncryptionKey(e),a=i?this.tryDecrypt(r,i):null;if(a){let e=this.tryParseCredentials(a);if(e)return e}return PC(`corruptFile`,"Warning: Credentials file is unreadable. Run `entrydesk login` again."),null}catch{return null}}async setCredentials(e,t){$.ensureProfileDir(e);let r=RC(e),i=this.getOrCreateEncryptionKey(e),a=this.encrypt(JSON.stringify(t),i);n.writeFileSync(r,a,{mode:384}),this.ensureSecureFilePermissions(r)}async deleteCredentials(e){let t=RC(e);try{n.existsSync(t)&&n.unlinkSync(t)}catch{}}},BC=class{keytarModule=null;keytarLoadAttempted=!1;keychainAvailable=null;async getKeytar(){if(this.keytarLoadAttempted)return this.keytarModule;this.keytarLoadAttempted=!0;try{let e=await import(`keytar`),t=e&&typeof e==`object`&&`default`in e?e.default:e;this.keytarModule=LC(t)?t:null}catch{this.keytarModule=null}return this.keytarModule}getAccount(e){return`profile:${e}`}async checkKeychainAvailability(){if(this.keychainAvailable!==null)return this.keychainAvailable;try{let e=await this.getKeytar();if(!e)return this.keychainAvailable=!1,!1;let t=`__entrydesk_keychain_test__${ne.randomBytes(8).toString(`hex`)}`,n=`test`;await e.setPassword(MC,t,n);let r=await e.getPassword(MC,t),i=await e.deletePassword(MC,t);return this.keychainAvailable=i&&r===n,this.keychainAvailable}catch{return this.keychainAvailable=!1,!1}}async isAvailable(){return this.checkKeychainAvailability()}async getCredentials(e){if(!await this.checkKeychainAvailability())throw Error(`Keychain is not available`);let t=await this.getKeytar();if(!t)throw Error(`Keytar module not available`);let n=await t.getPassword(MC,this.getAccount(e));if(!n)return null;let r=this.tryParseKeychainPayload(n);return r||PC(`corruptFile`,`Warning: Keychain entry for profile "${e}" is unreadable.`),r}async setCredentials(e,t){if(!await this.checkKeychainAvailability())throw Error(`Keychain is not available`);let n=await this.getKeytar();if(!n)throw Error(`Keytar module not available`);let r=JSON.stringify(t);await n.setPassword(MC,this.getAccount(e),r)}async deleteCredentials(e){if(!await this.checkKeychainAvailability())throw Error(`Keychain is not available`);let t=await this.getKeytar();if(!t)throw Error(`Keytar module not available`);await t.deletePassword(MC,this.getAccount(e))}tryParseKeychainPayload(e){try{let t=JSON.parse(e);return IC(t)?t:null}catch{return null}}};const Q=new class{keychainStorage=null;fileStorage=new zC;keychainAvailable=null;initPromise=null;shouldForceFileStorage(){return process.env.ENTRYDESK_FORCE_FILE_STORAGE?.toLowerCase()===`true`}async initializeStorage(){if(this.shouldForceFileStorage()){this.keychainAvailable=!1,this.keychainStorage=null;return}try{let e=new BC,t=await e.isAvailable();this.keychainAvailable=t,this.keychainStorage=t?e:null}catch{this.keychainAvailable=!1,this.keychainStorage=null}!this.keychainAvailable&&!this.shouldForceFileStorage()&&(FC()&&PC(`keychain`,`Keychain unavailable. Falling back to file-based credentials.`),process.platform===`win32`&&PC(`windowsFile`,`Warning: File-based credentials on Windows may be readable by other users.`))}async ensureInitialized(){if(this.shouldForceFileStorage()){this.keychainAvailable=!1,this.keychainStorage=null;return}this.keychainAvailable===null&&(this.initPromise??=this.initializeStorage(),await this.initPromise)}disableKeychain(){this.shouldForceFileStorage()||PC(`keychain`,`Keychain error encountered. Falling back to file-based credentials.`),this.keychainAvailable=!1,this.keychainStorage=null}async getKeychainStorage(){return await this.ensureInitialized(),this.shouldForceFileStorage()?null:this.keychainAvailable?this.keychainStorage:null}async getCredentials(e){let t=await this.getKeychainStorage();if(!t)return this.fileStorage.getCredentials(e);try{let n=await t.getCredentials(e);if(n)return n}catch{return this.disableKeychain(),this.fileStorage.getCredentials(e)}let n=await this.fileStorage.getCredentials(e);if(n)try{await t.setCredentials(e,n),await this.fileStorage.deleteCredentials(e)}catch{}return n}async setCredentials(e,t){let n=await this.getKeychainStorage();if(!n){await this.fileStorage.setCredentials(e,t);return}try{await n.setCredentials(e,t),await this.fileStorage.deleteCredentials(e)}catch{this.disableKeychain(),await this.fileStorage.setCredentials(e,t)}}async deleteCredentials(e){let t=await this.getKeychainStorage();if(t)try{await t.deleteCredentials(e)}catch{this.disableKeychain()}await this.fileStorage.deleteCredentials(e)}},VC={async saveAccessToken(e,t){let n=$.getEffectiveProfileName(t),r=await Q.getCredentials(n)??{};r.accessToken=e,await Q.setCredentials(n,r)},async getAccessToken(e){let t=$.getEffectiveProfileName(e);return(await Q.getCredentials(t))?.accessToken??null},async saveRefreshToken(e,t){let n=$.getEffectiveProfileName(t),r=await Q.getCredentials(n)??{};r.refreshToken=e,await Q.setCredentials(n,r)},async getRefreshToken(e){let t=$.getEffectiveProfileName(e);return(await Q.getCredentials(t))?.refreshToken??null},async saveEmail(e,t){let n=$.getEffectiveProfileName(t),r=await Q.getCredentials(n)??{};r.email=e,await Q.setCredentials(n,r)},async getEmail(e){let t=$.getEffectiveProfileName(e);return(await Q.getCredentials(t))?.email??null},async saveWorkspaceId(e,t){let n=$.getEffectiveProfileName(t),r=await Q.getCredentials(n)??{};r.workspaceId=e,await Q.setCredentials(n,r)},async getWorkspaceId(e){let t=$.getEffectiveProfileName(e);return(await Q.getCredentials(t))?.workspaceId??null},async saveAll(e,t){let n=$.getEffectiveProfileName(t);await Q.setCredentials(n,e)},async getAll(e){let t=$.getEffectiveProfileName(e);return Q.getCredentials(t)},async clear(e){let t=$.getEffectiveProfileName(e);await Q.deleteCredentials(t)},async moveProfileCredentials(e,t){let n=await Q.getCredentials(e);n&&(await Q.setCredentials(t,n),await Q.deleteCredentials(e))},async deleteProfileCredentials(e){await Q.deleteCredentials(e)},async isLoggedIn(e){let t=$.getEffectiveProfileName(e);return(await Q.getCredentials(t))?.accessToken!=null}};function HC(e){return e instanceof AbortSignal?{signal:e}:e}function UC(e){try{let t=JSON.parse(e);if(typeof t!=`object`||!t)return;let{code:n}=t;return typeof n==`string`?n:void 0}catch{return}}function WC(e){return{...e,title:Z(e.title),...e.project&&{project:{...e.project,name:Z(e.project.name)}}}}function GC(e){return{...e,tasks:e.tasks.map(WC)}}function KC(e){return{...e,results:e.results.map(e=>({...e,title:Z(e.title),titleHighlight:e.titleHighlight&&Z(e.titleHighlight),contentSnippet:e.contentSnippet&&Z(e.contentSnippet)}))}}var qC=class extends Error{constructor(){super(`The task stream could not continue from where it was cut.`),this.name=`TaskStreamOffsetUnavailableError`}},JC=class extends Error{status;body;code;constructor(e,t){super(`Task API failed (${e}): ${Z(t)}`),this.status=e,this.body=t,this.name=`TaskApiError`,this.code=UC(t)}};function YC(e){let t=new FormData;return t.append(`file`,new Blob([e.buffer],{type:e.mimeType}),e.filename),t}var XC=class e{explicitBaseUrl;profileName;currentClient;runtimeConfigCache;constructor(e,t){this.explicitBaseUrl=e,this.profileName=t,TC().ignoreSslErrors&&(process.env.NODE_TLS_REJECT_UNAUTHORIZED=`0`,process.env.DEBUG&&console.log(`[DEBUG] ApiClient: SSL certificate validation disabled`))}async resolveBaseUrl(){return this.explicitBaseUrl||await yC(this.profileName)}async http(){let e=await this.resolveBaseUrl();if(this.currentClient?.baseUrl===e)return this.currentClient.client;let t=a.create({baseUrl:e.replace(/\/?$/,`/`),timeout:3e4,headers:xC(e,this.profileName),fetch:SC(e,this.profileName),retry:{limit:3,methods:[`get`,`put`,`head`,`delete`,`options`,`trace`],statusCodes:[408,413,429,500,502,503,504]},hooks:{beforeError:[({error:e})=>(c(e)&&(e.request.headers.delete(`authorization`),e.request.headers.delete(`Authorization`),e.request.headers.delete(`x-web-proxy-id`)),e)]}});return this.currentClient={baseUrl:e,client:t},t}async refreshOAuthToken(e){return(await this.http()).post(`v1/oauth/token`,{json:{grant_type:`refresh_token`,refresh_token:e.refreshToken,client_id:e.clientId}}).json()}async revokeOAuthToken(e){await(await this.http()).post(`v1/oauth/revoke`,{json:{token:e.token,token_type_hint:`refresh_token`,client_id:e.clientId}})}async getWorkspaces(e){let t=await this.http();try{return process.env.DEBUG&&console.log(`[DEBUG] Calling getWorkspaces API: ${await this.resolveBaseUrl()}/v1/workspaces`),await t.get(`v1/workspaces`,{headers:{Authorization:`Bearer ${e}`}}).json()}catch(e){throw process.env.DEBUG&&(console.error(`[DEBUG] getWorkspaces error:`,e),e instanceof Error&&`cause`in e&&console.error(`[DEBUG] Error cause:`,e.cause)),e}}async getAgents(e,t,n){let r=await this.http(),i={limit:n?.limit??100};return n?.nextKey&&(i.nextKey=n.nextKey),n?.search&&(i.search=n.search),await r.get(`v1/workspaces/${t}/availableAgents`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async createAgent(e,t,n){return await(await this.http()).post(`v1/workspaces/${t}/agents`,{headers:{Authorization:`Bearer ${e}`},json:n}).json()}async updateAgent(e,t,n,r){await(await this.http()).put(`v1/workspaces/${t}/agents/${n}`,{headers:{Authorization:`Bearer ${e}`},json:r})}async generateAgentIcon(e,t,n){return(await this.http()).post(`v1/workspaces/${t}/agents/generateIcon`,{headers:{Authorization:`Bearer ${e}`},json:n,timeout:12e4}).json()}async uploadAgentIcon(e,t,n){return(await this.http()).post(`v1/workspaces/${t}/agents/uploadIcon`,{headers:{Authorization:`Bearer ${e}`},body:YC(n),timeout:12e4}).json()}async deleteAgent(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/agents/${n}`,{headers:{Authorization:`Bearer ${e}`}})}async getMyAgents(e,t,n){let r=await this.http(),i={limit:n?.limit??100};return n?.nextKey&&(i.nextKey=n.nextKey),n?.search&&(i.search=n.search),await r.get(`v1/workspaces/${t}/myAgents`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async listResourceGrants(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/${n.collection}/${n.id}/grants`,{headers:{Authorization:`Bearer ${e}`}}).json()}async upsertResourceGrant(e,t,n,r,i){return await(await this.http()).put(`v1/workspaces/${t}/${n.collection}/${n.id}/grants/${r.subjectType}/${r.subjectId}`,{headers:{Authorization:`Bearer ${e}`},json:{role:i}}).json()}async removeResourceGrant(e,t,n,r){await(await this.http()).delete(`v1/workspaces/${t}/${n.collection}/${n.id}/grants/${r.subjectType}/${r.subjectId}`,{headers:{Authorization:`Bearer ${e}`}})}async submitWorkspacePublish(e,t,n){await(await this.http()).post(`v1/workspaces/${t}/publishes`,{headers:{Authorization:`Bearer ${e}`},json:n})}async revokeWorkspacePublish(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/publishes/${n}`,{headers:{Authorization:`Bearer ${e}`}})}async listMySkills(e,t,n){let r=await this.http(),i={limit:100};return n?.nextKey&&(i.nextKey=n.nextKey),await r.get(`v1/workspaces/${t}/mySkills`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async listTeams(e,t,n){let r=await this.http(),i={limit:100};return n?.nextKey&&(i.nextKey=n.nextKey),n?.search&&(i.search=n.search),await r.get(`v1/workspaces/${t}/teams`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getMeetings(e,t,n){let r=await this.http(),i={limit:n?.limit??20};return n?.nextKey&&(i.nextKey=n.nextKey),n?.search&&(i.search=n.search),n?.filter&&(i.filter=n.filter),n?.sortBy&&(i.sortBy=n.sortBy),await r.get(`v1/workspaces/${t}/meetings`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getMeeting(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/meetings/${n}`,{headers:{Authorization:`Bearer ${e}`}}).json()}async createMeeting(e,t,n){return await(await this.http()).post(`v1/workspaces/${t}/meetings`,{headers:{Authorization:`Bearer ${e}`},json:n}).json()}async updateMeeting(e,t,n,r){return await(await this.http()).patch(`v1/workspaces/${t}/meetings/${n}`,{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async deleteMeeting(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/meetings/${n}`,{headers:{Authorization:`Bearer ${e}`}})}async dispatchMeetingBot(e,t,n,r){return await(await this.http()).post(`v1/workspaces/${t}/meetings/${n}/bot`,{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async getMeetingPreviousBrief(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/meetings/${n}/previous`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getRecording(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/recordings/${n}`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getMeetingShares(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/meetings/${n}/shares`,{headers:{Authorization:`Bearer ${e}`}}).json()}async upsertMeetingUserGrant(e,t,n,r,i){return await(await this.http()).put(`v1/workspaces/${t}/meetings/${n}/shares/users/${r}`,{headers:{Authorization:`Bearer ${e}`},json:{role:i}}).json()}async removeMeetingUserGrant(e,t,n,r){await(await this.http()).delete(`v1/workspaces/${t}/meetings/${n}/shares/users/${r}`,{headers:{Authorization:`Bearer ${e}`}})}async upsertMeetingTeamGrant(e,t,n,r,i){return await(await this.http()).put(`v1/workspaces/${t}/meetings/${n}/shares/teams/${r}`,{headers:{Authorization:`Bearer ${e}`},json:{role:i}}).json()}async removeMeetingTeamGrant(e,t,n,r){await(await this.http()).delete(`v1/workspaces/${t}/meetings/${n}/shares/teams/${r}`,{headers:{Authorization:`Bearer ${e}`}})}async getWorkflows(e,t,n){let r=await this.http(),i={limit:n?.limit??20};return n?.nextKey&&(i.nextKey=n.nextKey),n?.search&&(i.search=n.search),await r.get(`v1/workspaces/${t}/workflows`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getWorkflow(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/workflows/${n}`,{headers:{Authorization:`Bearer ${e}`}}).json()}async createWorkflow(e,t,n){return await(await this.http()).post(`v1/workspaces/${t}/workflows`,{headers:{Authorization:`Bearer ${e}`},json:n}).json()}async updateWorkflow(e,t,n,r){await(await this.http()).put(`v1/workspaces/${t}/workflows/${n}`,{headers:{Authorization:`Bearer ${e}`},json:r})}async triggerWorkflowRun(e,t,n,r){return await(await this.http()).post(`v1/workspaces/${t}/workflows/${n}/runs`,{headers:{Authorization:`Bearer ${e}`},json:r===void 0?{}:{args:r}}).json()}async getWorkflowRuns(e,t,n,r){let i=await this.http(),a={limit:r?.limit??20};return r?.nextKey&&(a.nextKey=r.nextKey),await i.get(`v1/workspaces/${t}/workflows/${n}/runs`,{headers:{Authorization:`Bearer ${e}`},searchParams:a}).json()}async getWorkflowRun(e,t,n,r){return await(await this.http()).get(`v1/workspaces/${t}/workflows/${n}/runs/${encodeURIComponent(r)}`,{headers:{Authorization:`Bearer ${e}`}}).json()}async listProjects(e,t,n){let r=await this.http(),i={limit:n.limit,sortBy:n.sortBy,order:n.order};return n.nextKey&&(i.nextKey=n.nextKey),n.filter&&(i.filter=n.filter),r.get(`v1/workspaces/${t}/projects`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getProject(e,t,n){return(await this.http()).get(`v1/workspaces/${t}/projects/${n}`,{headers:{Authorization:`Bearer ${e}`}}).json()}async updateProject(e,t,n,r){return(await this.http()).patch(`v1/workspaces/${t}/projects/${n}`,{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async createProjectNote(e,t,n,r){return(await this.http()).post(`v1/workspaces/${t}/projects/${n}/notes`,{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async createProject(e,t,n){return(await this.http()).post(`v1/workspaces/${t}/projects`,{headers:{Authorization:`Bearer ${e}`},json:n}).json()}async deleteProject(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/projects/${n}`,{headers:{Authorization:`Bearer ${e}`}})}async addProjectMember(e,t,n,r){return(await this.http()).post(`v1/workspaces/${t}/projects/${n}/members`,{headers:{Authorization:`Bearer ${e}`},json:{userId:r}}).json()}async updateProjectMemberRole(e,t,n,r,i){await(await this.http()).patch(`v1/workspaces/${t}/projects/${n}/members/${r}`,{headers:{Authorization:`Bearer ${e}`},json:i})}async removeProjectMember(e,t,n,r){await(await this.http()).delete(`v1/workspaces/${t}/projects/${n}/members/${r}`,{headers:{Authorization:`Bearer ${e}`}})}async addProjectTeam(e,t,n,r){return(await this.http()).post(`v1/workspaces/${t}/projects/${n}/teams`,{headers:{Authorization:`Bearer ${e}`},json:{teamId:r}}).json()}async removeProjectTeam(e,t,n,r){await(await this.http()).delete(`v1/workspaces/${t}/projects/${n}/teams/${r}`,{headers:{Authorization:`Bearer ${e}`}})}async listProjectTeamCandidates(e,t,n,r){let{teams:i}=await(await this.http()).get(`v1/workspaces/${t}/projects/${n}/teams/candidates`,{headers:{Authorization:`Bearer ${e}`},searchParams:{q:r}}).json();return i}async listProjectFiles(e,t,n){return(await this.http()).get(`v1/workspaces/${t}/projects/${n}/files`,{headers:{Authorization:`Bearer ${e}`}}).json()}async listProjectLinks(e,t,n){return(await this.http()).get(`v1/workspaces/${t}/projects/${n}/links`,{headers:{Authorization:`Bearer ${e}`}}).json()}async searchProjectContext(e,t,n,r){let i=await this.http(),a={q:r.q};return r.type&&(a.type=r.type),r.limit!==void 0&&(a.limit=r.limit),i.get(`v1/workspaces/${t}/projects/${n}/context/search`,{headers:{Authorization:`Bearer ${e}`},searchParams:a}).json()}async readProjectContext(e,t,n,r,i){let a=await this.http(),o={depth:i.depth};return i.offset!==void 0&&(o.offset=i.offset),i.revision!==void 0&&(o.revision=i.revision),a.get(`v1/workspaces/${t}/projects/${n}/context/${r.sourceType}/${encodeURIComponent(r.sourceId)}`,{headers:{Authorization:`Bearer ${e}`},searchParams:o}).json()}async assignTaskProject(e,t,n,r){return(await this.http()).put(`v1/workspaces/${t}/tasks/${n}/project`,{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async grantTaskShareMember(e,t,n,r,i={}){let{data:a}=await(await this.http()).put(`v1/workspaces/${t}/tasks/${n}/shares/members/${r}`,{headers:{Authorization:`Bearer ${e}`},json:i}).json();return{...a,name:Z(a.name),email:Z(a.email)}}async revokeTaskShareMember(e,t,n,r,i={}){await(await this.http()).delete(`v1/workspaces/${t}/tasks/${n}/shares/members/${r}`,{headers:{Authorization:`Bearer ${e}`},json:i})}async grantTaskShareTeam(e,t,n,r,i={}){let{data:a}=await(await this.http()).put(`v1/workspaces/${t}/tasks/${n}/shares/teams/${r}`,{headers:{Authorization:`Bearer ${e}`},json:i}).json();return{...a,name:Z(a.name)}}async revokeTaskShareTeam(e,t,n,r,i={}){await(await this.http()).delete(`v1/workspaces/${t}/tasks/${n}/shares/teams/${r}`,{headers:{Authorization:`Bearer ${e}`},json:i})}async upsertTaskShare(e,t,n,r){return(await this.http()).post(`v1/workspaces/${t}/tasks/${n}/shares`,{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async uploadProjectFile(e,t,n,r,i){let a=await this.http(),o=YC(r);return i.description!==void 0&&o.append(`description`,i.description),a.post(`v1/workspaces/${t}/projects/${n}/files/upload`,{headers:{Authorization:`Bearer ${e}`},body:o,timeout:12e4}).json()}async replaceProjectFile(e,t,n,r,i,a){let o=await this.http(),s=YC(i);return s.append(`expectedVersionNumber`,String(a.expectedVersionNumber)),o.put(`v1/workspaces/${t}/projects/${n}/files/${encodeURIComponent(r)}/content`,{headers:{Authorization:`Bearer ${e}`},body:s,timeout:12e4,retry:0}).json()}async updateProjectFile(e,t,n,r,i){return(await this.http()).patch(`v1/workspaces/${t}/projects/${n}/files/${encodeURIComponent(r)}`,{headers:{Authorization:`Bearer ${e}`},json:i}).json()}async removeProjectFile(e,t,n,r){await(await this.http()).delete(`v1/workspaces/${t}/projects/${n}/files/${encodeURIComponent(r)}`,{headers:{Authorization:`Bearer ${e}`}})}async addProjectLink(e,t,n,r){return(await this.http()).post(`v1/workspaces/${t}/projects/${n}/links`,{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async updateProjectLink(e,t,n,r,i){return(await this.http()).patch(`v1/workspaces/${t}/projects/${n}/links/${encodeURIComponent(r)}`,{headers:{Authorization:`Bearer ${e}`},json:i}).json()}async removeProjectLink(e,t,n,r){await(await this.http()).delete(`v1/workspaces/${t}/projects/${n}/links/${encodeURIComponent(r)}`,{headers:{Authorization:`Bearer ${e}`}})}async refetchProjectLink(e,t,n,r){return(await this.http()).post(`v1/workspaces/${t}/projects/${n}/links/${encodeURIComponent(r)}/refetch`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getNotifications(e,t,n){let r=await this.http(),i={limit:n?.limit??20};return n?.tab&&(i.tab=n.tab),n?.eventType&&(i.eventType=n.eventType),n?.cursor&&(i.cursor=n.cursor),await r.get(`v1/workspaces/${t}/notifications`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getNotificationUnreadCount(e,t){return await(await this.http()).get(`v1/workspaces/${t}/notifications/unreadCount`,{headers:{Authorization:`Bearer ${e}`}}).json()}async markNotificationRead(e,t,n){await(await this.http()).post(`v1/workspaces/${t}/notifications/${n}/read`,{headers:{Authorization:`Bearer ${e}`}})}async markAllNotificationsRead(e,t){await(await this.http()).post(`v1/workspaces/${t}/notifications/readAll`,{headers:{Authorization:`Bearer ${e}`}})}async getRuntimeConfig(){let e=await this.resolveBaseUrl();if(this.runtimeConfigCache?.baseUrl===e)return this.runtimeConfigCache.config;let t=await(await this.http()).get(`v1/runtimeConfig`).json();return this.runtimeConfigCache={baseUrl:e,config:t},t}async getModels(e,t){return await(await this.http()).get(`v1/workspaces/${t}/models`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getWorkspaceConfig(e,t){return await(await this.http()).get(`v1/workspaces/${t}/config`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getModelTiers(e,t){return await(await this.http()).get(`v1/workspaces/${t}/modelTiers`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getModelTierMappings(e,t){return await(await this.http()).get(`v1/workspaces/${t}/modelTierMappings`,{headers:{Authorization:`Bearer ${e}`}}).json()}async listSelectableModels(e,t){let{deploymentMode:n}=await this.getRuntimeConfig(),{models:r}=n===`saas`?await this.getModelTiers(e,t):await this.getModels(e,t);return{models:r.filter(e=>e.enabled!==!1)}}async getConnectors(e,t,n){let r=await this.http(),i={limit:n?.limit??100,connectionStatus:n?.connectionStatus??`connected`};return n?.search&&(i.search=n.search),n?.nextKey&&(i.nextKey=n.nextKey),await r.get(`v1/workspaces/${t}/availableConnectors`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getConnectorTools(e,t,n){return(await this.http()).get(`v1/workspaces/${t}/connectors/${n}/tools`,{headers:{Authorization:`Bearer ${e}`}}).json()}async syncConnectorTools(e,t,n){await(await this.http()).post(`v1/workspaces/${t}/connectors/${n}/tools/sync`,{headers:{Authorization:`Bearer ${e}`}})}async connectConnectorToken(e,t,n,r){await(await this.http()).put(`v1/workspaces/${t}/connectors/${n}/token`,{headers:{Authorization:`Bearer ${e}`},json:r})}async getConnectorAuthUrl(e,t,n){return(await this.http()).post(`v1/workspaces/${t}/connectors/${n}/authUrl`,{headers:{Authorization:`Bearer ${e}`},json:{}}).json()}async createCustomConnector(e,t,n){return(await this.http()).post(`v1/workspaces/${t}/customConnectors`,{headers:{Authorization:`Bearer ${e}`},json:n}).json()}async getCustomConnector(e,t,n){return(await this.http()).get(`v1/workspaces/${t}/customConnectors/${n}`,{headers:{Authorization:`Bearer ${e}`}}).json()}async updateCustomConnector(e,t,n,r){return(await this.http()).put(`v1/workspaces/${t}/customConnectors/${n}`,{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async disconnectConnector(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/connectors/${n}/token`,{headers:{Authorization:`Bearer ${e}`}})}async getTasks(e,t,n){let r=await this.http(),i={limit:n?.limit??20};return n?.nextKey&&(i.nextKey=n.nextKey),r.get(n?.projectId?`v1/workspaces/${t}/projects/${n.projectId}/tasks`:`v1/workspaces/${t}/tasks`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json().then(GC)}async searchTasks(e,t,n,r){let i=await this.http(),a={q:n,limit:r?.limit??20};return r?.nextKey&&(a.nextKey=r.nextKey),r?.projectId&&(a.projectId=r.projectId),KC(await i.get(`v1/workspaces/${t}/tasks/search`,{headers:{Authorization:`Bearer ${e}`},searchParams:a}).json())}async getMessages(e,t,n,r=50){return await(await this.http()).get(`v1/workspaces/${t}/tasks/${n}/messages`,{headers:{Authorization:`Bearer ${e}`},searchParams:{limit:r}}).json()}async getAgent(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/agents/${n}`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getAgentHeadVersionId(e,t,n){return(await(await this.http()).get(`v1/workspaces/${t}/agents/${n}/versions`,{headers:{Authorization:`Bearer ${e}`},searchParams:{limit:1}}).json()).versions.at(0)?.id}async getAgentVersionByNumber(e,t,n,r){return(await(await this.http()).get(`v1/workspaces/${t}/agents/${n}/versions`,{headers:{Authorization:`Bearer ${e}`},searchParams:{versionNumber:r,limit:1}}).json()).versions.at(0)}async listAvailableSkills(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/availableSkills`,{headers:{Authorization:`Bearer ${e}`},searchParams:{createdBy:n?.createdBy,nextKey:n?.nextKey,limit:n?.limit??20}}).json()}async uploadSkill(e,t,n){return await(await this.http()).post(`v1/workspaces/${t}/skills`,{headers:{Authorization:`Bearer ${e}`},body:n}).json()}async deleteSkill(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/skills/${n}`,{headers:{Authorization:`Bearer ${e}`}})}async updateSkillPreference(e,t,n,r){return await(await this.http()).patch(`v1/workspaces/${t}/skills/${n}/preference`,{headers:{Authorization:`Bearer ${e}`},json:{isEnabled:r}}).json()}async getSkillVersions(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/skills/${n}/versions`,{headers:{Authorization:`Bearer ${e}`}}).json()}async downloadSkillCurrent(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/skills/${n}/download`,{headers:{Authorization:`Bearer ${e}`}}).json()}async task(e,t,n,r,i={}){let{signal:a,rawTextDelivery:o=!1}=HC(i),c=await this.http();try{let i=await c.post(`v1/workspaces/${t}/tasks`,{headers:{Authorization:`Bearer ${e}`},json:n,timeout:6e4,throwHttpErrors:!1,...a?{signal:a}:{}});if(!i.ok)throw new JC(i.status,await i.text());let s=tv(await i.json());return s&&r?.(s),!s||`noop`in s?new Response(`data: [DONE]
|
|
72
|
+
|
|
73
|
+
`,{headers:{"Content-Type":`text/event-stream`}}):await this.taskStream(e,t,s.taskId,{streamId:s.streamId,signal:a,rawTextDelivery:o})}catch(e){throw e instanceof s?TypeError(`Request timed out. Check your connection and try again.`,{cause:e}):e}}async taskStream(e,t,n,{streamId:r,signal:i,rawTextDelivery:a,offset:o,prefixSha256:s}={}){let c=await this.http(),l={...a?{textDelivery:`raw`}:{},...o&&s?{offset:o,prefixSha256:s}:{}},u=await c.get(r?`v1/workspaces/${t}/tasks/${n}/streams/${r}`:`v1/workspaces/${t}/tasks/${n}/stream`,{headers:{Authorization:`Bearer ${e}`,Accept:`text/event-stream`},timeout:!1,throwHttpErrors:!1,...Object.keys(l).length>0?{searchParams:l}:{},...i?{signal:i}:{}});if(!u.ok)throw new JC(u.status,await u.text());if(a===!0&&u.headers.get(`X-EntryDesk-Text-Delivery`)!==`raw`)throw await u.body?.cancel().catch(()=>void 0),TypeError(`API did not negotiate raw task stream delivery`);if(o&&u.headers.get(`X-EntryDesk-Stream-Offset`)!==String(o))throw await u.body?.cancel().catch(()=>void 0),new qC;return u}resumeTaskStream(e,t,n){return this.taskStream(e,t,n)}resumeTaskStreamById(e,t,n,r,i={}){return this.taskStream(e,t,n,{...i,streamId:r})}async stopTask(e,t,n){let r=await(await this.http()).post(`v1/workspaces/${t}/tasks/${n}/stop`,{headers:{Authorization:`Bearer ${e}`},timeout:1e4,throwHttpErrors:!1});if(![202,404,409].includes(r.status))throw new JC(r.status,await r.text())}async getSubagentRun(e,t,n,r){return(await this.http()).get(`v1/workspaces/${t}/subagentRuns/${encodeURIComponent(n)}`,{headers:{Authorization:`Bearer ${e}`},signal:r}).json()}async openSubagentRunEvents(e,t,n,r){let i=await(await this.http()).get(`v1/workspaces/${t}/subagentRuns/${encodeURIComponent(n)}/events`,{headers:{Authorization:`Bearer ${e}`,Accept:`text/event-stream`},timeout:!1,throwHttpErrors:!1,signal:r});if(!i.ok){let e=await i.text();throw Error(`Subagent run events stream failed (${i.status}): ${Z(e)}`)}return i}async listBackgroundRuns(e,t,n){return(await this.http()).get(`v1/workspaces/${t}/tasks/${n}/backgroundRuns`,{headers:{Authorization:`Bearer ${e}`},searchParams:new URLSearchParams(Hx.map(e=>[`kinds`,e]))}).json().then(e=>({runs:e.runs.map(e=>({...e,label:Z(e.label)}))}))}async listToolRuns(e,t,n,r){let i=await this.http(),a={limit:r?.limit??100};r?.nextKey&&(a.nextKey=r.nextKey);let o=qx.parse(await i.get(`v1/workspaces/${t}/tasks/${n}/toolRuns`,{headers:{Authorization:`Bearer ${e}`},searchParams:a}).json());return{nextKey:o.nextKey,runs:o.runs.map(e=>({...e,toolName:Z(e.toolName),description:e.description&&Z(e.description)}))}}async getToolRun(e,t,n,r){let i=await this.http();return Jx.parse(await i.get(`v1/workspaces/${t}/tasks/${n}/toolRuns/${encodeURIComponent(r)}`,{headers:{Authorization:`Bearer ${e}`}}).json())}async getToolRunOutput(e,t,n,r,i){let a=await(await this.http()).get(`v1/workspaces/${t}/tasks/${n}/toolRuns/${encodeURIComponent(r)}/output`,{headers:{Authorization:`Bearer ${e}`},searchParams:{stream:i},throwHttpErrors:!1});if(a.status===404)return null;if(!a.ok)throw new JC(a.status,await a.text());return a.text()}async stopBackgroundRun(e,t,n,r,i){let a=await this.http(),o=Qx(i);return(await a.post(`v1/workspaces/${t}/tasks/${n}/${o}/${encodeURIComponent(r)}/stop`,{headers:{Authorization:`Bearer ${e}`}})).status===202?`stopping`:`already-finished`}async openWakeEvents(e,t,n,r){let i=await(await this.http()).get(`v1/workspaces/${t}/tasks/${n}/wakeEvents`,{headers:{Authorization:`Bearer ${e}`,Accept:`text/event-stream`},timeout:!1,throwHttpErrors:!1,signal:r});if(!i.ok){let e=await i.text();throw Error(`Wake events stream failed (${i.status}): ${Z(e)}`)}return i}webhooksPath(e,...t){return[`v1/workspaces/${encodeURIComponent(e)}/webhooks`,...t.map(e=>encodeURIComponent(e))].join(`/`)}async listWebhookDestinations(e,t){return(await this.http()).get(this.webhooksPath(t),{headers:{Authorization:`Bearer ${e}`}}).json()}async getWebhookDestination(e,t,n){return(await this.http()).get(this.webhooksPath(t,n),{headers:{Authorization:`Bearer ${e}`}}).json()}async createWebhookDestination(e,t,n){return(await this.http()).post(this.webhooksPath(t),{headers:{Authorization:`Bearer ${e}`},json:n}).json()}async updateWebhookDestination(e,t,n,r){return(await this.http()).patch(this.webhooksPath(t,n),{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async deleteWebhookDestination(e,t,n){await(await this.http()).delete(this.webhooksPath(t,n),{headers:{Authorization:`Bearer ${e}`}})}async rotateWebhookSecret(e,t,n,r){return(await this.http()).post(this.webhooksPath(t,n,`rotateSecret`),{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async listWebhookDeliveries(e,t,n,r){let i=await this.http(),a=new URLSearchParams;return r.status&&a.set(`status`,r.status),r.eventType&&a.set(`eventType`,r.eventType),r.limit!==void 0&&a.set(`limit`,String(r.limit)),r.nextKey&&a.set(`nextKey`,r.nextKey),i.get(this.webhooksPath(t,n,`deliveries`),{headers:{Authorization:`Bearer ${e}`},searchParams:a}).json()}async getWebhookDelivery(e,t,n,r){return(await this.http()).get(this.webhooksPath(t,n,`deliveries`,r),{headers:{Authorization:`Bearer ${e}`}}).json()}async resendWebhookDelivery(e,t,n,r){return(await this.http()).post(this.webhooksPath(t,n,`deliveries`,r,`resend`),{headers:{Authorization:`Bearer ${e}`}}).json()}async sendWebhookTest(e,t,n,r){return(await this.http()).post(this.webhooksPath(t,n,`test`),{headers:{Authorization:`Bearer ${e}`},json:r}).json()}async listWebhookEventTypes(e,t){return(await this.http()).get(this.webhooksPath(t,`eventTypes`),{headers:{Authorization:`Bearer ${e}`}}).json()}async getBudget(e,t){return await(await this.http()).get(`v1/workspaces/${t}/budget`,{headers:{Authorization:`Bearer ${e}`}}).json()}async updateBudget(e,t,n){await(await this.http()).put(`v1/workspaces/${t}/budget`,{headers:{Authorization:`Bearer ${e}`},json:{budget:n}})}async getMonthlyUsages(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/monthlyUsages`,{headers:{Authorization:`Bearer ${e}`},searchParams:{nextKey:n?.nextKey,limit:n?.limit??20}}).json()}async getBillingOverview(e,t){return await(await this.http()).get(`v1/workspaces/${t}/billing/overview`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getBillingInvoices(e,t,n){let r=await this.http(),i={limit:n?.limit??20};return n?.nextKey&&(i.nextKey=n.nextKey),await r.get(`v1/workspaces/${t}/billing/invoices`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getUsageOverview(e,t){return await(await this.http()).get(`v1/workspaces/${t}/usage/overview`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getUsageMe(e,t){return await(await this.http()).get(`v1/workspaces/${t}/usage/me`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getUsageConsumptions(e,t,n){let r=await this.http(),i={limit:n?.limit??20,offset:n?.offset??0};return n?.periodStart&&(i.periodStart=n.periodStart),await r.get(`v1/workspaces/${t}/usage/consumptions`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async exportUsageCsv(e,t,n){let r=await this.http(),i={};return n&&(i.periodStart=n),await r.get(`v1/workspaces/${t}/usage/export`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).text()}async createTaskShare(e,t,n,r){try{return await this.upsertTaskShare(e,t,n,r===void 0?{}:{visibility:r})}catch(e){if(c(e)&&e.response.status===403){let t=await e.response.json().catch(()=>null);if(t?.code===`sharing_disabled`)throw Error(`Sharing is turned off for this workspace by an admin.`,{cause:e});if(t?.code===`share_visibility_not_allowed`)throw Error(`Public sharing is turned off for this workspace by an admin.`,{cause:e})}throw e}}async getSharedTask(e,t){let n=await this.http(),r={};return t&&(r.Authorization=`Bearer ${t}`),await n.get(`v1/shares/${e}`,{headers:r}).json()}async getSharedMessages(e,t=50,n){let r=await this.http(),i={};return n&&(i.Authorization=`Bearer ${n}`),await r.get(`v1/shares/${e}/messages`,{headers:i,searchParams:{limit:t}}).json()}async getTask(e,t,n){return(await this.http()).get(`v1/workspaces/${t}/tasks/${n}`,{headers:{Authorization:`Bearer ${e}`}}).json().then(WC)}async getTaskCost(e,t,n,r={}){return(await this.http()).get(`v1/workspaces/${t}/tasks/${n}/cost`,{headers:{Authorization:`Bearer ${e}`},searchParams:r.waitForSettled?{waitForSettled:`true`}:void 0}).json()}async updateTaskToolApprovalMode(e,t,n,r){await(await this.http()).patch(`v1/workspaces/${t}/tasks/${n}/toolApprovalMode`,{headers:{Authorization:`Bearer ${e}`},json:{toolApprovalMode:r}})}async deleteTask(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/tasks/${n}`,{headers:{Authorization:`Bearer ${e}`}})}async getModelProviders(e,t){return await(await this.http()).get(`v1/workspaces/${t}/modelProviders`,{headers:{Authorization:`Bearer ${e}`}}).json()}async uploadFile(e,t,n,r){let i=await this.http(),a=YC(n);return a.append(`modelProviderId`,r),await i.post(`v1/workspaces/${t}/files`,{headers:{Authorization:`Bearer ${e}`},body:a,timeout:12e4}).json()}async getCalendarAccounts(e,t){return await(await this.http()).get(`v1/workspaces/${t}/calendar/accounts`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getSchedules(e,t,n){let r=await this.http(),i={limit:n?.limit??20};return n?.nextKey&&(i.nextKey=n.nextKey),n?.search&&(i.search=n.search),await r.get(`v1/workspaces/${t}/schedules`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getSchedule(e,t,n){return await(await this.http()).get(`v1/workspaces/${t}/schedules/${n}`,{headers:{Authorization:`Bearer ${e}`}}).json()}async createSchedule(e,t,n){return await(await this.http()).post(`v1/workspaces/${t}/schedules`,{headers:{Authorization:`Bearer ${e}`},json:n}).json()}async updateSchedule(e,t,n,r){await(await this.http()).put(`v1/workspaces/${t}/schedules/${n}`,{headers:{Authorization:`Bearer ${e}`},json:r})}async deleteSchedule(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/schedules/${n}`,{headers:{Authorization:`Bearer ${e}`}})}async activateSchedule(e,t,n){await(await this.http()).post(`v1/workspaces/${t}/schedules/${n}/activate`,{headers:{Authorization:`Bearer ${e}`}})}async deactivateSchedule(e,t,n){await(await this.http()).post(`v1/workspaces/${t}/schedules/${n}/deactivate`,{headers:{Authorization:`Bearer ${e}`}})}async runScheduleNow(e,t,n){return await(await this.http()).post(`v1/workspaces/${t}/schedules/${n}/run`,{headers:{Authorization:`Bearer ${e}`}}).json()}async getScheduleRuns(e,t,n,r){let i=await this.http(),a={limit:r?.limit??20};return r?.nextKey&&(a.nextKey=r.nextKey),await i.get(`v1/workspaces/${t}/schedules/${n}/runs`,{headers:{Authorization:`Bearer ${e}`},searchParams:a}).json()}async listRecordings(e,t,n){let r=await this.http(),i={limit:n?.limit??20};return n?.nextKey&&(i.nextKey=n.nextKey),n?.search&&(i.search=n.search),r.get(`v1/workspaces/${t}/recordings`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async importRecordingMedia(e,t,n){return(await this.http()).post(`v1/workspaces/${t}/recordings/import/media`,{headers:{Authorization:`Bearer ${e}`},json:n}).json()}async previewRecordingMedia(e,t,n){let r=await this.http(),i={url:n};return r.get(`v1/workspaces/${t}/recordings/preview/media`,{headers:{Authorization:`Bearer ${e}`},searchParams:i}).json()}async getRecordingAudioUrl(e,t,n){return(await this.http()).get(`v1/workspaces/${t}/recordings/${n}/audioUrl`,{headers:{Authorization:`Bearer ${e}`}}).json()}async retryRecording(e,t,n){return(await this.http()).post(`v1/workspaces/${t}/recordings/${n}/retry`,{headers:{Authorization:`Bearer ${e}`}}).json()}async deleteRecording(e,t,n){await(await this.http()).delete(`v1/workspaces/${t}/recordings/${n}`,{headers:{Authorization:`Bearer ${e}`}})}async searchMarketplace(e){let t=await this.http(),n={};return e?.type&&(n.type=e.type),e?.tag&&(n.tag=e.tag),e?.limit&&(n.limit=e.limit),e?.cursor&&(n.cursor=e.cursor),t.get(`v1/marketplace/resources`,{searchParams:n}).json()}async getMarketplaceAgent(e){return(await this.http()).get(`v1/marketplace/agents/${encodeURIComponent(e)}`).json()}async getMarketplaceSkill(e){return(await this.http()).get(`v1/marketplace/skills/${encodeURIComponent(e)}`).json()}async listMarketplaceRoles(){return(await this.http()).get(`v1/marketplace/roles`).json()}async installMarketplaceResource(e,t,n,r,i){return(await this.http()).post(`v1/workspaces/${t}/marketplace/${n}s/${encodeURIComponent(r)}/install`,{headers:{Authorization:`Bearer ${e}`},json:{toolApprovalMode:i}}).json()}static async getAuthenticatedClient(t){let n=await VC.getAll(t);return n?{client:new e(void 0,t),accessToken:n.accessToken,workspaceId:n.workspaceId??null}:null}};function ZC(){return process.env.ENTRYDESK_SANDBOX===`true`}function QC(){if(!ZC())return null;let e=process.env.ENTRYDESK_SANDBOX_ACCESS_TOKEN?.trim(),t=process.env.ENTRYDESK_SANDBOX_WORKSPACE_ID?.trim();if(!e||!t){let n=[];throw e||n.push(`ENTRYDESK_SANDBOX_ACCESS_TOKEN`),t||n.push(`ENTRYDESK_SANDBOX_WORKSPACE_ID`),Error(`Sandbox mode enabled but missing credentials: ${n.join(`, `)}`)}return{accessToken:e,workspaceId:t}}function $C(){return!!process.env.ENTRYDESK_TOKEN?.trim()}function ew(){let e=process.env.ENTRYDESK_TOKEN?.trim();if(!e)return null;let t=process.env.ENTRYDESK_WORKSPACE_ID?.trim();if(!t)throw Error(`ENTRYDESK_TOKEN is set but ENTRYDESK_WORKSPACE_ID is missing. Both are required for PAT authentication.`);return{accessToken:e,workspaceId:t}}const tw=`sandbox environment (ENTRYDESK_SANDBOX)`;function nw(){let e=QC();if(e)return{authSource:`sandbox-env`,label:tw,workspaceId:e.workspaceId};let t=ew();return t?{authSource:`pat-env`,label:`personal access token (ENTRYDESK_TOKEN)`,workspaceId:t.workspaceId}:null}const rw=`entrydesk-cli`;function iw(e,t){let n=new Set(t.split(/[\s,]+/).filter(Boolean)),r=e.split(` `).filter(Boolean);return{rejected:r.filter(e=>n.has(e)),remaining:r.filter(e=>!n.has(e))}}async function aw(e,t,n){try{return await e.post(`v1/oauth/device/code`,{json:{client_id:rw,scope:t}}).json()}catch(r){if(!(r instanceof o))throw r;let{code:i,error:a}=kC(r.data);if(i===`invalid_scope`){let{rejected:r,remaining:i}=iw(t,a);if(r.length>0&&i.length>0)return n?.onWarning?.(`This server doesn't support these scopes: ${r.join(`, `)}. Continuing without them — commands that need them may be unavailable.`),e.post(`v1/oauth/device/code`,{json:{client_id:rw,scope:i.join(` `)}}).json()}throw Error(a?`Failed to request device code: ${a}`:`Failed to request device code`,{cause:r})}}const ow=new Set([`localhost`,`0.0.0.0`,`::`,`::1`]);function sw(e){let t=e.replace(/^\[|\]$/gu,``).replace(/\.$/u,``).toLowerCase(),n=t.replace(/^::ffff:/u,``);return ow.has(t)||/^127(?:\.\d{1,3}){3}$/u.test(n)||t.startsWith(`::ffff:7f`)}const cw=/^[A-Za-z0-9\-._~/]*$/u,lw=/^[A-Za-z0-9-]{1,64}$/u;function uw(e,t,n){let r=null;if(e)try{let t=new URL(e);(t.protocol===`https:`||t.protocol===`http:`)&&t.username===``&&t.password===``&&t.hostname!==``&&!sw(t.hostname)&&cw.test(t.pathname)&&(r=new URL(t.pathname,t.origin))}catch{}return r??=new URL(`/oauth/device`,t),lw.test(n)&&r.searchParams.set(`user_code`,n),r.toString()}function dw(e){return new Promise((t,n)=>{let r=process.platform,i,a;switch(r){case`darwin`:i=`open`,a=[e];break;case`win32`:i=`cmd`,a=[`/c`,`start`,``,e];break;default:i=`xdg-open`,a=[e];break}re(i,a,r=>{r?n(Error(`Could not open the browser. Visit this URL to continue: ${e}`,{cause:r})):t()})})}async function fw(e,{device_code:t,expires_in:n,interval:r},i){let a=Math.max(r,5)*1e3,s=Date.now()+n*1e3,c;for(;Date.now()<s;){await ie(a);try{return await e.post(`v1/oauth/token`,{json:{grant_type:`urn:ietf:params:oauth:grant-type:device_code`,device_code:t,client_id:rw}}).json()}catch(e){if(l(e)||u(e)){c||i?.onWarning?.(`Could not reach the server; retrying until the code expires…`),c=e;continue}if(e instanceof o){c=void 0;let{code:t,error:n}=kC(e.data),r=t||n;if(!r)continue;switch(r){case`authorization_pending`:continue;case`slow_down`:a+=5e3;continue;case`access_denied`:throw Error(`Authorization denied.`,{cause:e});case`expired_token`:throw Error("Device code expired. Run `entrydesk login` again.",{cause:e});default:throw Error(`Authorization failed: ${r||`Unknown error`}`,{cause:e})}}let t=e instanceof Error?e:Error(`Unknown error during authorization`);throw i?.onError?.(t),t}}throw Error("Device code expired. Run `entrydesk login` again.",{cause:c})}async function pw(e){let t=await yC(),n=wC(),r=TC(),i=process.env.NODE_TLS_REJECT_UNAUTHORIZED;r.ignoreSslErrors&&(process.env.NODE_TLS_REJECT_UNAUTHORIZED=`0`,console.error(`WARNING: SSL certificate validation is disabled globally for this process during the login flow. All connections in this process will skip TLS verification. Only use ENTRYDESK_IGNORE_SSL_ERRORS for local development.`));try{let r=a.create({baseUrl:t.replace(/\/?$/,`/`),timeout:3e4,headers:xC(t),fetch:SC(t),hooks:{beforeError:[({error:e})=>(c(e)&&(e.request.headers.delete(`authorization`),e.request.headers.delete(`Authorization`),e.request.headers.delete(`x-web-proxy-id`)),e)]}}),i;try{i=await aw(r,`offline_access workspaces:read workspaces:write tasks:read tasks:write tasks:delete projects:read projects:write agents:read agents:write connectors:read connectors:write tools:read tools:execute skills:read skills:write meetings:read meetings:write workflows:read workflows:write notifications:read notifications:write publishes:read publishes:write calendar:read calendar:write schedules:read schedules:write user:read user:write`,e)}catch(t){let n=t instanceof Error?t:Error(`Failed to request device code`);throw e?.onError?.(n),n}let{user_code:o}=i,s=uw(i.verification_uri,n,o);e?.onDeviceCodeReceived?.(o,s),e?.onBrowserOpening?.();try{await dw(s)}catch(e){process.env.DEBUG&&console.error(`[DEBUG] Failed to open browser:`,e)}e?.onWaitingForAuthorization?.();let l=await fw(r,i,e);e?.onAuthorized?.();let u={};try{u=ae(l.access_token)}catch{}return{accessToken:l.access_token,refreshToken:l.refresh_token??void 0,email:u.email||``,scopes:l.scope.split(` `).filter(e=>e.length>0)}}finally{i===void 0?delete process.env.NODE_TLS_REJECT_UNAUTHORIZED:process.env.NODE_TLS_REJECT_UNAUTHORIZED=i}}function mw(e){if(e instanceof o){let t=e.response.status;return t===400||t===401}return!1}var hw=class extends Error{code;constructor(e,t){super(t),this.name=`AuthError`,this.code=e}};function gw(e){try{let t=e.split(`.`).at(1);if(t===void 0)return null;let n=t.replace(/-/g,`+`).replace(/_/g,`/`),r=(4-n.length%4)%4,i=n.padEnd(n.length+r,`=`),a=Buffer.from(i,`base64`).toString(`utf8`);return JSON.parse(a)}catch{return null}}function _w(e,t=300){let n=gw(e)?.exp;return typeof n==`number`&&n-Math.floor(Date.now()/1e3)<=t}async function vw(e){let t=e.accessToken;if(!_w(t))return t;if(!e.refreshToken)throw await VC.clear(),new hw(`session-expired`,"Session expired. Run `entrydesk login` again.");let n=e.refreshToken,r=new XC(await yC());try{let t=await r.refreshOAuthToken({refreshToken:n,clientId:rw}),i=await VC.getAll();return i?.accessToken&&i.refreshToken&&i.refreshToken!==n?i.accessToken:(await VC.saveAll({...i??e,accessToken:t.access_token,refreshToken:t.refresh_token??i?.refreshToken??n}),t.access_token)}catch(e){if(!mw(e))throw new hw(`refresh-failed`,`Could not refresh your session — the auth server is unreachable. Try again in a moment.`);let t=await VC.getAll();if(t?.accessToken&&t.refreshToken&&t.refreshToken!==n)return t.accessToken;throw await VC.clear(),new hw(`session-expired`,"Session expired. Run `entrydesk login` again.")}}async function yw(){let e=QC();if(e)return e.accessToken;let t=await VC.getAll();if(!t?.accessToken)throw new hw(`not-logged-in`,"Not logged in. Run `entrydesk login` first.");return vw(t)}async function bw(){let e=QC();if(e)return{accessToken:e.accessToken,workspaceId:e.workspaceId};let t=ew();if(t)return t;let n=await VC.getAll();if(!n?.accessToken)throw new hw(`not-logged-in`,"Not logged in. Run `entrydesk login` first.");if(!n.workspaceId)throw new hw(`no-workspace`,"No workspace selected. Run `entrydesk workspaces` first.");return{accessToken:await vw(n),workspaceId:n.workspaceId}}async function xw(){let e=QC()??ew();if(e)return e;let t=await VC.getAll();if(!t?.accessToken)throw new hw(`not-logged-in`,"Not logged in. Run `entrydesk login` first.");let n=await vw(t),r=await VC.getAll();return{accessToken:n,workspaceId:(r?.accessToken===n?r:t).workspaceId}}function Sw(e){let t=``;try{t=` by ${CC()}`}catch{}let n=jC(e.data),r=n?` (server code: ${n})`:``,i;return i=n===`missing_token`||n===`bearer_not_supported`?process.env.ENTRYDESK_API_URL?`The API did not accept your Authorization header (stripped or refused en route) — the URL likely points at a browser-facing proxy path (such as a Hub "/api" URL). It comes from the ENTRYDESK_API_URL environment variable, which overrides profile config — update or unset ENTRYDESK_API_URL.`:'The API did not accept your Authorization header (stripped or refused en route) — the URL likely points at a browser-facing proxy path (such as a Hub "/api" URL). Set apiUrl to the API server URL with `entrydesk profile set apiUrl <url>`.':ZC()?`Requests are authenticated via ${tw} — ask the sandbox owner to issue fresh credentials.`:$C()?"ENTRYDESK_TOKEN is set and takes priority over `entrydesk login` credentials for workspace commands — unset it or replace it with a valid token; if this command does not use it, run `entrydesk login`.":"Your session may have expired — run `entrydesk login`. If this is not the environment you expect, check `entrydesk profile get apiUrl`.",`Not authorized (401)${t}${r}. ${i}`}function Cw(e){let t=Math.round(e/1e3);return t%60==0&&t>=60?`${t/60}m`:`${t}s`}function ww(e){return e instanceof Error&&e.name===`SdkError`&&`code`in e&&e.code===`REQUEST_TIMEOUT`}function Tw(){let{requestTimeout:e,requestMaxTotalTimeout:t}=EC();return`The request timed out after ${Cw(e)} without a response or progress update (absolute cap ${Cw(t)}). Raise the limit with ${fC}=<milliseconds>, and ${pC}=<milliseconds> for the absolute cap.`}var Ew=class extends Error{exitCode;cause;constructor(e,t=1,n){super(e),this.exitCode=t,this.cause=n,this.name=`CLIError`}};function Dw(e){if(e instanceof Ew)return{message:`Error: ${e.message}`,exitCode:e.exitCode,cause:e.cause,stack:e.cause?.stack};if(e instanceof hw)return{message:e.message,exitCode:1,stack:e.stack};if(ww(e))return{message:Tw(),exitCode:1,stack:e instanceof Error?e.stack:void 0};if(e instanceof s)return{message:`Request timed out. Check your connection and try again.`,exitCode:1,stack:e.stack};if(e instanceof o){let t=e.response.status,n=jC(e.data);if(t===401)return{message:Sw(e),code:n,exitCode:1,stack:e.stack};if(t===403)return{message:"Forbidden (403). Your account or token lacks permission for this action. If your token predates a recently added feature, run `entrydesk login` to refresh its scopes; otherwise you may lack permission in this workspace.",code:n,exitCode:1,stack:e.stack};let r=kC(e.data),i=n?` (server code: ${n})`:``,a=Z(r.error),o=Z(e.response.statusText),s=a||o,c=r.issues.slice(0,5).map(e=>de(Z(e.path?`${e.path}: ${e.message}`:e.message),200)).join(`; `);return{message:`Request failed (${t}): ${s}${c?` — ${c}`:``}${i}`,code:n,exitCode:1,stack:e.stack}}return e instanceof Error?{message:`Unexpected error: ${e.message}`,exitCode:1,stack:e.stack}:{message:`An unknown error occurred`,exitCode:1}}function Ow(e){let{code:t=`request_failed`,message:n}=Dw(e);return{code:t,message:n}}function kw(e){let t=Dw(e);console.error(t.message),t.cause&&console.error(`Cause: ${t.cause.message}`),process.env.DEBUG&&t.stack&&console.error(t.stack),process.exit(t.exitCode)}const Aw=`default`,jw=/^[A-Za-z0-9_-]+$/;let Mw=null;function Nw(){return i.join(r.homedir(),`.entrydesk`)}function Pw(){return i.join(Nw(),`profiles`)}function Fw(){return i.join(Nw(),`profiles.json`)}function Iw(e){return i.join(Pw(),e)}function Lw(e){if(n.existsSync(e))try{n.chmodSync(e,448)}catch{}else n.mkdirSync(e,{mode:448,recursive:!0})}function Rw(){Lw(Nw())}function zw(){Lw(Pw())}function Bw(){let e=Fw();try{if(!n.existsSync(e))return null;let t=n.readFileSync(e,`utf-8`);return JSON.parse(t)}catch{return null}}function Vw(e,t){Rw();let r=`${e}.${process.pid}.tmp`;try{n.writeFileSync(r,JSON.stringify(t,null,2),{mode:384}),n.renameSync(r,e)}catch(e){throw n.rmSync(r,{force:!0}),e}try{n.chmodSync(e,384)}catch{}}function Hw(e){Vw(Fw(),e)}function Uw(e){let t=e.profiles?.length?[...new Set(e.profiles)]:[],n=e.currentProfile&&t.includes(e.currentProfile)?e.currentProfile:t[0]||Aw;return t.length===0&&t.push(Aw),t.includes(n)||t.unshift(n),{currentProfile:n,profiles:t}}function Ww(e){zw(),Lw(Iw(e))}function Gw(){let e=Bw();if(!e){let e={currentProfile:Aw,profiles:[Aw]};return Hw(e),zw(),Ww(Aw),e}let t=Uw(e);return(t.currentProfile!==e.currentProfile||t.profiles.length!==e.profiles.length)&&Hw(t),zw(),t}function Kw(e){if(!e)throw new Ew(`Profile name is required.`);if(!jw.test(e))throw new Ew(`Invalid profile name. Use letters, numbers, dash, or underscore.`)}function qw(e,t){if(!e.profiles.includes(t))throw new Ew(`Profile not found: ${t}`)}function Jw(e,t){if(e.profiles.includes(t))throw new Ew(`Profile already exists: ${t}`)}const $={DEFAULT_PROFILE:Aw,setOverrideProfile(e){Mw=e},getOverrideProfile(){return Mw},getProfileDir(e){return Iw(e)},getProfileConfigFile(e){return i.join($.getProfileDir(e),`config.json`)},getProfileCredentialsFile(e){return i.join($.getProfileDir(e),`credentials.json`)},getProfileNames(){return[...Gw().profiles]},getProfileCount(){return $.getProfileNames().length},getCurrentProfileName(){return Gw().currentProfile},getEffectiveProfileName(e){let t=Gw(),n=e||Mw||t.currentProfile;return Kw(n),qw(t,n),n},ensureProfileExists(e){let t=Gw();Kw(e),qw(t,e)},createProfile(e){Kw(e);let t=Gw();Jw(t,e),Hw({currentProfile:t.currentProfile,profiles:[...t.profiles,e]}),Ww(e)},deleteProfile(e){Kw(e);let t=Gw();qw(t,e);let r=t.profiles.filter(t=>t!==e),i=r.at(0);if(i===void 0)throw new Ew(`Cannot delete the last profile.`);let a=t.currentProfile;a===e&&(a=r.includes(Aw)?Aw:i),Hw({currentProfile:a,profiles:r});try{n.rmSync($.getProfileDir(e),{recursive:!0,force:!0})}catch{}return{currentProfile:a}},renameProfile(e,t){Kw(e),Kw(t);let r=Gw();qw(r,e),Jw(r,t);let i=Iw(e),a=Iw(t),o=n.existsSync(i);if(o)try{n.renameSync(i,a)}catch(e){throw new Ew(`Failed to rename profile directory.`,1,e)}let s=r.profiles.map(n=>n===e?t:n),c=r.currentProfile===e?t:r.currentProfile,l={currentProfile:c,profiles:s};try{Hw(l)}catch(e){if(o)try{n.renameSync(a,i)}catch(e){throw new Ew(`The profile could not be renamed, and its data could not be put back. It is at ${a}.`,1,e instanceof Error?e:void 0)}throw e}if(!o)try{Ww(t)}catch(e){console.warn(`Warning: Profile renamed, but its directory could not be created (${e instanceof Error?e.message:String(e)}). It will be created on the next write.`)}return{currentProfile:c}},setCurrentProfile(e){Kw(e);let t=Gw();qw(t,e),Hw({currentProfile:e,profiles:t.profiles}),Ww(e)},ensureProfileDir:Ww};export{Pv as $,ip as $t,lC as A,Nm as At,zS as B,Up as Bt,XC as C,Du as Cn,mh as Ct,jC as D,ah as Dt,VC as E,ue as En,ih as Et,EC as F,Wm as Ft,zx as G,Ep as Gt,eS as H,Fp as Ht,yC as I,Km as It,Eb as J,mp as Jt,ix as K,Zp as Kt,xC as L,zm as Lt,CC as M,Jm as Mt,DC as N,Um as Nt,Z as O,Zm as Ot,wC as P,Vm as Pt,jy as Q,rp as Qt,RS as R,Hm as Rt,$C as S,Od as Sn,uh as St,qC as T,we as Tn,Xm as Tt,Vx as U,Wp as Ut,tS as V,Yp as Vt,Jx as W,Qp as Wt,eb as X,fp as Xt,tb as Y,op as Yt,Py as Z,up as Zt,pw as _,kd as _n,l_ as _t,Dw as a,Hf as an,Tv as at,QC as b,Vd as bn,Gh as bt,ww as c,Vf as cn,hv as ct,yw as d,Cf as dn,X_ as dt,qf as en,Sv as et,xw as f,Ed as fn,V_ as ft,rw as g,Pd as gn,c_ as gt,vw as h,Fd as hn,m_ as ht,Tw as i,Jf as in,Ev as it,SC as j,Gm as jt,cC as k,Rm as kt,hw as l,Bf as ln,pv as lt,_w as m,Dd as mn,h_ as mt,Nw as n,Qf as nn,jv as nt,Ow as o,Y as on,Mv as ot,bw as p,Md as pn,Y_ as pt,Db as q,_p as qt,Ew as r,$f as rn,Av as rt,kw as s,Lf as sn,mv as st,$ as t,Zf as tn,Ov as tt,gw as u,Nf as un,q_ as ut,tw as v,Wd as vn,Bg as vt,JC as w,Ml as wn,Ym as wt,ew as x,Nd as xn,jh as xt,nw as y,Kd as yn,Kh as yt,HS as z,Jp as zt};
|