@ibgib/space-gib 0.0.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/CHANGELOG.md +31 -0
- package/Dockerfile +14 -0
- package/IMPLEMENTATION.md +484 -0
- package/README.md +46 -0
- package/dist/client/bootstrap.mjs +58 -0
- package/dist/client/bootstrap.mjs.map +7 -0
- package/dist/client/chunk-CT47Z5WU.mjs +21 -0
- package/dist/client/chunk-CT47Z5WU.mjs.map +7 -0
- package/dist/client/chunk-RHEDTRKF.mjs +235 -0
- package/dist/client/chunk-RHEDTRKF.mjs.map +7 -0
- package/dist/client/index.html +147 -0
- package/dist/client/index.mjs +2 -0
- package/dist/client/index.mjs.map +7 -0
- package/dist/client/script.mjs +2 -0
- package/dist/client/script.mjs.map +7 -0
- package/dist/client/style.css +605 -0
- package/dist/respec-gib.node.mjs +5 -0
- package/dist/server/server.mjs +20157 -0
- package/dist/server/server.mjs.map +7 -0
- package/generate-version-file.js +35 -0
- package/package.json +27 -0
- package/src/client/AUTO-GENERATED-version.mts +11 -0
- package/src/client/README.md +19 -0
- package/src/client/api/function-infos.web.mts +38 -0
- package/src/client/api/space-gib-api-bridge.mts +85 -0
- package/src/client/bootstrap.mts +49 -0
- package/src/client/components/keystone-creator/keystone-creator.css +139 -0
- package/src/client/components/keystone-creator/keystone-creator.html +26 -0
- package/src/client/components/keystone-creator/keystone-creator.mts +229 -0
- package/src/client/constants.mts +76 -0
- package/src/client/custom.d.ts +11 -0
- package/src/client/dev-tools.mts +540 -0
- package/src/client/helpers.web.mts +178 -0
- package/src/client/index.html +147 -0
- package/src/client/index.mts +59 -0
- package/src/client/script.mts +13 -0
- package/src/client/style.css +605 -0
- package/src/client/types.mts +85 -0
- package/src/client/ui/shell/space-gib-shell-constants.mts +24 -0
- package/src/client/ui/shell/space-gib-shell-service.mts +233 -0
- package/src/client/ui/shell/space-gib-shell-types.mts +5 -0
- package/src/client/witness/app/space-gib/space-gib-app-v1.mts +160 -0
- package/src/client/witness/app/space-gib/space-gib-constants.mts +38 -0
- package/src/client/witness/app/space-gib/space-gib-helper.mts +72 -0
- package/src/client/witness/app/space-gib/space-gib-types.mts +47 -0
- package/src/common/keystone-policies.mts +159 -0
- package/src/respec-gib.node.mts +6 -0
- package/src/server/README.md +18 -0
- package/src/server/bootstrap-helper.mts +141 -0
- package/src/server/bootstrap-helper.respec.mts +100 -0
- package/src/server/metaspace-nodeindexedspace/metaspace-nodeindexedspace.mts +85 -0
- package/src/server/path-constants.mts +89 -0
- package/src/server/path-helper.mts +101 -0
- package/src/server/path-helper.respec.mts +94 -0
- package/src/server/serve-gib/CHANGELOG.md +29 -0
- package/src/server/serve-gib/README.md +34 -0
- package/src/server/serve-gib/constants.mts +1 -0
- package/src/server/serve-gib/handlers/api/debug/ws-echo.handler.mts +104 -0
- package/src/server/serve-gib/handlers/api/health.handler.mts +23 -0
- package/src/server/serve-gib/handlers/api/health.respec.mts +51 -0
- package/src/server/serve-gib/handlers/api/ibgib/ibgib-handler-types.mts +49 -0
- package/src/server/serve-gib/handlers/api/ibgib/ibgib.handler.mts +176 -0
- package/src/server/serve-gib/handlers/api/keystone/keystone-evolve.handler.mts +261 -0
- package/src/server/serve-gib/handlers/api/keystone/keystone-genesis.handler.mts +146 -0
- package/src/server/serve-gib/handlers/api/keystone/keystone-get.handler.mts +198 -0
- package/src/server/serve-gib/handlers/api/keystone/keystone-get.respec.mts +107 -0
- package/src/server/serve-gib/handlers/api/keystone/keystone-handler-types.mts +29 -0
- package/src/server/serve-gib/handlers/api/keystone/keystone-post.handler.mts +70 -0
- package/src/server/serve-gib/handlers/api/keystone/keystone-post.respec.mts +130 -0
- package/src/server/serve-gib/handlers/error-handler.mts +36 -0
- package/src/server/serve-gib/handlers/handler-base.mts +383 -0
- package/src/server/serve-gib/handlers/static-handler.mts +82 -0
- package/src/server/serve-gib/handlers/ws/sync-upgrade.handler.mts +498 -0
- package/src/server/serve-gib/handlers/ws/ws-helper.mts +111 -0
- package/src/server/serve-gib/handlers/ws/ws-types.mts +53 -0
- package/src/server/serve-gib/serve-gib-helpers.mts +32 -0
- package/src/server/serve-gib/serve-gib-v1.mts +172 -0
- package/src/server/serve-gib/serve-gib.respec.mts +90 -0
- package/src/server/serve-gib/types.mts +102 -0
- package/src/server/server-constants.mts +2 -0
- package/src/server/server.mts +96 -0
- package/tsconfig.json +29 -0
- package/tsconfig.server.json +29 -0
- package/tsconfig.test.json +27 -0
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import{A as re,B as S,Bb as Yr,C as pe,Cb as zr,D as xt,Db as en,E as Rr,Eb as So,F as xr,G as je,Ga as Dt,Gb as Pe,H as mt,Ha as Zt,Hb as Kr,I as ce,J as Gt,K as $e,L as Ne,Ma as jt,N as Gr,Nb as Qr,O as Mr,Ob as Zr,P as H,Pb as jr,Qb as es,Rb as ts,Ub as ns,Xa as Fe,_b as os,a as f,ac as is,b as ie,ba as Dr,bc as rs,c as Le,ca as Ur,cb as Fr,cc as ss,d as Sr,e as vr,ea as Co,eb as kr,ec as as,f as Yt,fa as Lr,fc as ls,g as $r,gc as Ve,h as L,i as zt,ib as ke,j as Nr,k as Ie,l as M,m as fe,mb as Vr,n as E,nb as Ao,ob as qr,p as Te,qb as de,r as Pr,rb as ne,s as Kt,sb as Or,t as Rt,tb as J,u as pt,v as Qt,va as Mt,vb as Hr,w as ht,wb as Br,x as W,xb as Wr,yb as Jr,zb as Xr}from"./chunk-CT47Z5WU.mjs";var he=J,vo=class n{static{f(this,"IbGibComponentService")}lc=`[${n.name}]`;_registeredComponentsMeta=[];initialized;constructor(){this.initialized=this.initialize()}async initialize(){let e=`[${this.initialize.name}]`;try{he&&console.log(`${e} starting... (I: 1cf04e8d768f4b5c55e7c3861e2d2225)`),console.log(`${e} does nothing atow (I: 65bb46c88c82b637ad928b8bf1a07225)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{he&&console.log(`${e} complete.`)}}registerComponentMeta(e){this._registeredComponentsMeta.push(e),he&&console.log(`${this.lc}[registerComponentMeta] component meta registered: ${e.constructor.name} (I: 88ddcbd0c8caa2342af0e7348f171225)`)}unregisterComponentMeta(e){this._registeredComponentsMeta=this._registeredComponentsMeta.filter(t=>t!==e),he&&console.log(`${this.lc}[unregisterComponentMeta] component meta unregistered: ${e.constructor.name} (I: 4e84b5274de688248984896a90f5cc25)`)}async getComponentInstance({useRegExpPrefilter:e,path:t,ibGibAddr:o}){let i=`${this.lc}[${this.getComponentInstance.name}]`;try{he&&console.log(`${i} starting... (I: 684ef316cbdb4a3b1fdc96096c273b25)`);let s,l=Ut.getRegisteredComponentsMeta(),c=e?l.filter(d=>{let u=d.routeRegExp?d.routeRegExp.test(t):!1;return he&&console.log(`${i} ${d.componentName} ${d.routeRegExp} componentMatchesPath: ${u} (I: 3758520e6a4a57f218396c8649283425)`),u}):l.concat();for(let d of c)if(d.fnHandleRoute?await d.fnHandleRoute({path:t,ibGibAddr:o}):!0){s=await d.createInstance({path:t,ibGibAddr:o});break}return s}catch(s){throw console.error(`${i} ${E(s)}`),s}finally{he&&console.log(`${i} complete.`)}}async inject({parentEl:e,componentToInject:t}){let o=`${this.lc}[${this.inject.name}]`;try{if(he&&console.log(`${o} starting... (I: 6844cf07eaf8a5b1b106784f7db17125)`),!e)throw new Error(`${o} parentEl required. (E: 6f4eb2d682856ef47d173b970ec3c825)`);if(!t)throw new Error(`${o} componentToInject required. (E: decf0b51ad49257ce44fecbcf84c3a25)`);if(!t.meta)throw new Error(`${o} componentToInject.meta required. (E: f8827c0602ca7b0e030d0b3e2c4a4825)`);if(!t.meta.componentName)throw new Error(`${o} componentToInject.meta.componentName required. (E: 5dcae244ae32690f7b73ce27a32a3c25)`);e.innerHTML="",e.appendChild(t),e.classList.remove("fade-out")}catch(i){console.error(`${o} ${E(i)}`),e.innerHTML=`<p class="error">Error loading component for route. error:</p><br /><br /><p>${i.message}</p>`}finally{he&&console.log(`${o} complete.`)}}getRegisteredComponentsMeta(){return[...this._registeredComponentsMeta]}},Ut;async function Lt(){let n=`[${Lt.name}]`;try{return he&&console.log(`${n} starting... (I: 853694c88223381339103a3765129925)`),Ut||(Ut=new vo,await Ut.initialized),Ut}catch(e){throw console.error(`${n} ${E(e)}`),e}finally{he&&console.log(`${n} complete.`)}}f(Lt,"getComponentSvc");var cs="left-panel",ds="center-panel",us="right-panel";var fs="left-resizer",ps="right-resizer",hs="footer-resizer",ms="btn-left-panel-toggle",gs="btn-right-panel-toggle",bs="btn-create-keystone";var Es="space-gib-shell-ready";var ys=`:host {
|
|
2
|
+
display: block;
|
|
3
|
+
width: 100%;
|
|
4
|
+
max-width: 600px;
|
|
5
|
+
margin: 2rem auto;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.component-container {
|
|
9
|
+
padding: 2rem;
|
|
10
|
+
background: var(--clr-bg-glass);
|
|
11
|
+
backdrop-filter: blur(16px);
|
|
12
|
+
border-radius: var(--radius-lg);
|
|
13
|
+
border: 1px solid var(--clr-border);
|
|
14
|
+
color: var(--clr-text-primary);
|
|
15
|
+
box-shadow: var(--shadow-card);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
h2 {
|
|
19
|
+
margin-top: 0;
|
|
20
|
+
font-size: 1.5rem;
|
|
21
|
+
color: var(--clr-accent);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.content {
|
|
25
|
+
margin-top: 1.5rem;
|
|
26
|
+
display: flex;
|
|
27
|
+
flex-direction: column;
|
|
28
|
+
gap: 1.5rem;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.action-row {
|
|
32
|
+
display: flex;
|
|
33
|
+
justify-content: center;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.action-btn {
|
|
37
|
+
padding: 0.75rem 1.5rem;
|
|
38
|
+
background: var(--clr-accent);
|
|
39
|
+
color: var(--clr-bg-deep);
|
|
40
|
+
border: none;
|
|
41
|
+
border-radius: var(--radius-md);
|
|
42
|
+
font-weight: 600;
|
|
43
|
+
cursor: pointer;
|
|
44
|
+
transition: all var(--t-fast);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.action-btn:hover {
|
|
48
|
+
background: #9fffa5;
|
|
49
|
+
transform: translateY(-1px);
|
|
50
|
+
box-shadow: 0 0 16px var(--clr-accent-glow);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.input-group {
|
|
54
|
+
display: flex;
|
|
55
|
+
flex-direction: column;
|
|
56
|
+
gap: 0.5rem;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.input-group label {
|
|
60
|
+
font-size: 0.85rem;
|
|
61
|
+
color: var(--clr-text-secondary);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.secret-input {
|
|
65
|
+
padding: 0.75rem;
|
|
66
|
+
background: rgba(0, 0, 0, 0.2);
|
|
67
|
+
border: 1px solid var(--clr-border);
|
|
68
|
+
border-radius: var(--radius-sm);
|
|
69
|
+
color: var(--clr-text-primary);
|
|
70
|
+
font-family: var(--font-mono);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.secret-input:focus {
|
|
74
|
+
outline: none;
|
|
75
|
+
border-color: var(--clr-accent);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.status-area {
|
|
79
|
+
padding: 1rem;
|
|
80
|
+
border-radius: var(--radius-md);
|
|
81
|
+
background: rgba(255, 255, 255, 0.03);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.status-area.hidden {
|
|
85
|
+
display: none;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.status-msg {
|
|
89
|
+
margin: 0;
|
|
90
|
+
font-size: 0.9rem;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.status-msg.info { color: var(--clr-text-secondary); }
|
|
94
|
+
.status-msg.success { color: var(--clr-accent); }
|
|
95
|
+
.status-msg.error { color: var(--clr-warn); }
|
|
96
|
+
|
|
97
|
+
.action-btn:disabled {
|
|
98
|
+
opacity: 0.5;
|
|
99
|
+
cursor: not-allowed;
|
|
100
|
+
background: var(--clr-border);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.result-area {
|
|
104
|
+
padding: 1.5rem;
|
|
105
|
+
background: rgba(255, 255, 255, 0.03);
|
|
106
|
+
border: 1px solid var(--clr-border);
|
|
107
|
+
border-radius: var(--radius-md);
|
|
108
|
+
display: flex;
|
|
109
|
+
flex-direction: column;
|
|
110
|
+
gap: 0.75rem;
|
|
111
|
+
transition: opacity var(--t-med);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.result-area.collapsed {
|
|
115
|
+
display: none;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.address-label {
|
|
119
|
+
font-size: 0.8rem;
|
|
120
|
+
color: var(--clr-text-secondary);
|
|
121
|
+
margin: 0;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.keystone-addr {
|
|
125
|
+
display: block;
|
|
126
|
+
padding: 0.75rem;
|
|
127
|
+
background: rgba(0, 0, 0, 0.3);
|
|
128
|
+
border-radius: var(--radius-sm);
|
|
129
|
+
font-family: var(--font-mono);
|
|
130
|
+
font-size: 0.85rem;
|
|
131
|
+
word-break: break-all;
|
|
132
|
+
color: var(--clr-accent);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.warning {
|
|
136
|
+
font-size: 0.8rem;
|
|
137
|
+
color: var(--clr-warn);
|
|
138
|
+
margin: 0.5rem 0 0;
|
|
139
|
+
}
|
|
140
|
+
`;var ws=`<div id="container" class="component-container">
|
|
141
|
+
<h2 id="title">Keystone Creator</h2>
|
|
142
|
+
<div class="content">
|
|
143
|
+
<p>This will generate a new root keystone (identity) for your space.</p>
|
|
144
|
+
|
|
145
|
+
<div class="input-group">
|
|
146
|
+
<label for="input-secret">Master Secret (Keep this private!)</label>
|
|
147
|
+
<input type="password" id="input-secret" placeholder="Enter your master secret..." class="secret-input">
|
|
148
|
+
</div>
|
|
149
|
+
|
|
150
|
+
<div class="action-row">
|
|
151
|
+
<button id="btn-generate" class="action-btn">Generate Identity Keystone</button>
|
|
152
|
+
</div>
|
|
153
|
+
|
|
154
|
+
<div id="status-area" class="status-area hidden">
|
|
155
|
+
<p id="status-text" class="status-msg"></p>
|
|
156
|
+
</div>
|
|
157
|
+
|
|
158
|
+
<div id="result-area" class="result-area collapsed">
|
|
159
|
+
<h3>New Keystone Generated!</h3>
|
|
160
|
+
<p class="address-label">Address:</p>
|
|
161
|
+
<code id="keystone-addr" class="keystone-addr"></code>
|
|
162
|
+
<p class="warning">\u26A0\uFE0F Store this address safely. It is your root identity for this space.</p>
|
|
163
|
+
</div>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
`;var Is=/^error (\w+) ([a-fA-F\d]{32}|undefined)$/;var qe=!1;function _s({rawMsg:n}){let e=`[${_s.name}]`;try{qe&&console.log(`${e} starting...`);let t=$o({rawMsg:n}),o=t.body.replace(/\s/g,"_").replace(/\W/g,""),i;if(o.length>20)i=o.substring(0,20);else if(o.length>0)i=o;else throw new Error("(UNEXPECTED) error msg should have characters/alphanumerics... (E: a3b9cd11a44cc7892a748819c2885422)");return`error ${i} ${t.uuid??"undefined"}`}catch(t){throw console.error(`${e} ${t.message}`),t}finally{qe&&console.log(`${e} complete.`)}}f(_s,"getErrorIb");function $o({rawMsg:n}){let e=`[${$o.name}]`;try{if(qe&&console.log(`${e} starting...`),!n)throw new Error("(UNEXPECTED) rawMsg required (E: e5bd3b433a1781ebe885534cd2495622)");let t,o=n.match(Sr);if(o){let[i,s,l,c,d,u]=o;if(!c)throw new Error("invalid error msg body (E: a675e6855cca96519d33d44ea5400922)");t={success:!1,raw:n,body:c?.trim(),uuid:d.slice(4,36)},s&&(t.location=s),(l||u)&&(t.unexpected=!0)}else{t={success:!1,raw:n,body:n};let i=n.match(vr);if(i){let[s,l]=i;t.location=l}n.toLowerCase().includes("(unexpected)")&&(t.unexpected=!0)}return t}catch(t){throw console.error(`${e} ${t.message}`),t}finally{qe&&console.log(`${e} complete.`)}}f($o,"parseRawErrorMsg");function et({rawMsg:n}){let e=`[${et.name}]`;try{return qe&&console.log(`${e} starting...`),ke({parentPrimitiveIb:"error",ib:_s({rawMsg:n}),data:$o({rawMsg:n}),ibRegExpPattern:Is.source})}catch(t){throw console.error(`${e} ${t.message}`),t}finally{qe&&console.log(`${e} complete.`)}}f(et,"getErrorIbGib");function Re({ibGib:n}){let e=`[${Re.name}]`;try{if(qe&&console.log(`${e} starting...`),!n)throw new Error("ibGib required (E: 1d756fbbd96f1734b97ba013537ed522)");return n.ib.startsWith("error ")}catch(t){throw console.error(`${e} ${t.message}`),t}finally{qe&&console.log(`${e} complete.`)}}f(Re,"isError");var tn="anon_fn",Cs={fnHash:""};var As=!1;function No({data:n}){let e=`[${No.name}]`;try{if(As&&console.log(`${e} starting... (I: 37bb06e0390c5bcadf04501727d64923)`),!n?.fnHash)throw new Error("data.fnHash required (E: 2e560f2c59822bc5ba024d4a8e99d323)");return`witness ${tn} ${n.fnHash}`}catch(t){throw console.error(`${e} ${t.message}`),t}finally{As&&console.log(`${e} complete.`)}}f(No,"getAnonymousFnIb");var Oe=class{static{f(this,"AnonymousFnWitness_V1")}fn;ib=tn.concat();gib=ht;data=L(Cs);rel8ns;constructor(e){if(this.fn=e,!e)throw new Error("fn required (E: b1e1478f466a2a347b75e7c336f8d323)")}async witness(e){return this.data.fnHash=await Nr({s:this.fn.toString()}),this.ib=No({data:this.data}),this.gib=await mt({ibGib:this}),this.fn(e)}};var nn=!1;function Po({err:n}){let e=`[${Po.name}]`;try{if(nn&&console.log(`${e} starting... (I: 96f8b767c50f24768ced7beebb291723)`),Or(n)){let t=n;if(!n.data)throw new Error("err isIbGib but err.data is false. (E: 151a6bab647c638c454fd277ac468f23)");if(Re({ibGib:n}))return n.data.raw;throw new Error("(UNEXPECTED) err isIbGib but not ErrorIbGib_V1? (E: 81c2283fad5db3485c6e9acedbda9723)")}else return E(n)}catch(t){throw console.error(`${e} ${t.message}`),t}finally{nn&&console.log(`${e} complete.`)}}f(Po,"extractObsErrMsg");function _e(n){let e=`[${_e.name}]`;try{nn&&console.log(`${e} starting... (I: 3d2c3658a0fda83ece1f2b095a365823)`);let t;if(typeof n=="function"?t={next:n}:t=n,!t.next)throw new Error("observer.next required (typeof observerOrFn !== 'function') (E: da944e93b32ab5918f11751bcd651823)");let o=f(async p=>(await t.next(p),W),"fnNext"),i=f(async p=>(p.ib==="complete"?t.complete&&await t.complete():Re({ibGib:p})?t.error&&await t.error(p):await t.next(p),W),"fnWitness"),s=new Oe(o),l=new Oe(i),c={ib:"observer",witness:f(async p=>await l.witness(p),"witness"),next:f(async p=>{await s.witness(p)},"next")},d=t.error??(async p=>{let h;if(typeof p=="string")h=E(p);else if(p.ib)if(Re({ibGib:p}))h=E(p.data.raw);else throw new Error(`${e} (UNEXPECTED) first off, observer.error is falsy. secondly, error came down pipeline and has an "ib" property but is not an ErrorIbGib_V1? (E: 0a2a46b9620b4a6a84c7ba1100da537b)`);else p instanceof Error?h=E(p):typeof p.message=="string"?h=E(p.message):h="[unknown thing came down pipe that ain't an error]";console.error(`Error occurred but observer.error is falsy. error: ${h} (E: 822c60c7c4d542efacd5c2dea7e88062)`)}),u=new Oe(async p=>(d(p),W));if(c.error=async p=>{typeof p=="string"?p=await et({rawMsg:p}):p instanceof Error&&(p=await et({rawMsg:p.message}));try{await u.witness(p)}catch{t.error?console.error(`${e} there was another error when executing errorAnonFnWitness.witness (wrapper of caller's observer.error) trapping this. (E: 8fa3c4e633df4491a82951e3b677d9a9)`):console.error(`${e} there was another error when executing errorAnonFnWitness.witness (caller's observer.error was falsy). trapping this. (E: f5ff2db0d762487287139a4175eb7689)`)}},t.complete){let p=t.complete,h=new Oe(async m=>(await p(),W));c.complete=async()=>{try{await h.witness(W)}catch(m){console.error(`${e} there was an error when executing completeAnonFnWitness (wrapper for observer.complete fn) error: ${E(m)} (E: c9e61b08429e42c1b85d2215f735ba2f)`)}}}return c}catch(t){throw console.error(`${e} ${t.message}`),t}finally{nn&&console.log(`${e} complete.`)}}f(_e,"fnObs");var Ce=!1;async function Ro({timeline:n}){let e=`[${Ro.name}]`;try{if(Ce&&console.log(`${e} starting...`),je({ibGib:n}))return console.warn(`${e} getting lock scope on a primitive ibgib can grossly impact performance. (W: 55203e415ae2ac7ddb19c21772b28925)`),S({ibGib:n});{let t=ce({gib:n.gib}),o=t.tjpGib??t.punctiliarHash;if(!o)throw new Error(`${e} (UNEXPECTED) Could not determine tjpGib or punctiliarHash from ibGib. (E: eb3b6472e9b335991a1b0869f772f7d3)`);return o}}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{Ce&&console.log(`${e} complete.`)}}f(Ro,"getLockScope");async function xo({timeline:n,rel8nInfos:e,rel8nRemovalInfos:t,timelineIndexInfo:o,metaspace:i,space:s,skipLock:l,noDna:c}){let d=`[${xo.name}]`;try{if(Ce&&console.log(`${d} starting... (I: fcdff10832215068019355265f4cbc25)`),s??=await i.getLocalUserSpace({lock:!1}),!s)throw new Error("(UNEXPECTED) space falsy? couldn't even get default local user space? (E: 2051b44a052d6a2984b9a22f680e4625)");let u=await Ro({timeline:n}),p=f(async()=>{if(!s)throw new Error("(UNEXPECTED) space falsy? couldn't even get default local user space? (E: 845c4181c8c15d7219166ceb3c4dca25)");let m=S({ibGib:n}),g=await i.getLatestAddr({addr:m,space:s});if(!g)throw new Error(`${d} (UNEXPECTED) Could not get latest address for timeline ${S({ibGib:n})}. (E: a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9)`);let b=ne({ibGib:n});if(m!==g){let _=await i.get({addrs:[g],space:s});if(_.errorMsg||(_.ibGibs??[]).length!==1)throw new Error(`${d} (UNEXPECTED) couldn't get latest timeline ibgib (${g}) from space (${s.ib}). errorMsg: ${_.errorMsg??"[unknown error]"} (E: b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0)`);b=_.ibGibs.at(0)}let y;if(t&&t.length>0){y={};for(let _ of t){let{rel8nName:C,ibGibAddrs:v}=_;if(v.length===0){console.warn(`${d} tried to remove 0 ibGibAddrs in rel8nName ${C}? skipping... (W: 93aeb601be66d680989e72ec70e4c826)`);continue}y[C]||(y[C]=[]),y[C]=y[C].concat(v)}}let w={};for(let _ of e){let{rel8nName:C,ibGibs:v}=_;if(v.length===0){console.warn(`${d} tried to add 0 ibGibs to rel8nName ${C}? skipping... (W: 708252dfdeb60757fee4554e769aaa25)`);continue}w[C]||(w[C]=[]),w[C].push(...v.map(P=>S({ibGib:P})))}let I=await $e({src:b,rel8nsToRemoveByAddr:y,rel8nsToAddByAddr:w,dna:!c,nCounter:!0}),T=I.newIbGib;return await i.persistTransformResult({resTransform:I,space:s}),o&&await tt({type:o.type,rel8nInfos:[{rel8nName:o.rel8nName,ibGibs:[T]}],metaspace:i,space:s,skipLock:l}),i.registerNewIbGib({ibGib:T,space:s}),T},"fn");return l?await p():await Fe({scope:u,secondsValid:180,maxDelayMs:100,maxLockAttempts:1800,space:s,callerInstanceId:Te(),fn:p})}catch(u){throw console.error(`${d} ${E(u)}`),u}finally{Ce&&console.log(`${d} complete.`)}}f(xo,"appendToTimeline");async function tt({type:n,rel8nInfos:e,dataToAddOrPatch:t,metaspace:o,space:i,skipLock:s}){let l=`[${tt.name}]`;try{if(Ce&&console.log(`${l} starting... (I: 6e7d05fe916d813b71766e2eaa747c25)`),n==="latest")throw new Error('cannot update the "latest" special index by this function. The registerNewIbGib will do this automatically. (E: 231eb78a221ccdbcf56cd1899260a425)');if(i??=await o.getLocalUserSpace({lock:!1}),!i)throw new Error("(UNEXPECTED) space falsy? couldn't even get default local user space? (E: 43067821a4749a7648fe2612d25d7f25)");let c=f(async()=>{let d=f(async()=>{let u=await o.getSpecialIbGib({type:n,space:i,initialize:!0});if(!u)throw new Error(`(UNEXPECTED) couldn't initialize/get special ibgib index of type ${n}. (E: a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6)`);return u.rel8ns||console.warn(`${l} not sure if this ever hits, but is there ever a scenario where specialIndex.rel8ns is falsy? (W: 06161c366bc7ec858b9b5aa7ee9b6d25)`),u},"fnGetSpecialIndex");for(let u of e??[]){let{rel8nName:p,ibGibs:h}=u;h.length===0&&console.error(`${l} ibGibs empty. skipping rel8nName (${p}). (E: 150d74f73f97aea1b97d173d92c77125)`);let g=(await d()).rel8ns??{},b,y=g[p]??[];if(y.length>0){let w=new Set;h.forEach(I=>{let T=S({ibGib:I}),_=I.rel8ns?.past??[];y.filter(C=>[..._,T].includes(C)).forEach(C=>w.add(C))}),w.size>0&&(b=Array.from(w))}await o.rel8ToSpecialIbGib({type:n,rel8nName:p,ibGibsToRel8:h,addrsToUnRel8:b,space:i,linked:!1,severPast:!1,deletePreviousSpecialIbGib:!1})}if(Object.keys(t??{}).length>0){let u=await d(),p=await Gt({src:u,dataToAddOrPatch:t,dna:!1,linkedRel8ns:[Rr.past],nCounter:!0}),h=p.newIbGib;await jt({resTransform:p,space:i});let m=Vr({type:n});await o.setConfigAddr({key:m,addr:S({ibGib:h}),space:i}),await o.registerNewIbGib({ibGib:h,space:i})}},"fn");s?await c():await Fe({scope:n,secondsValid:60,maxDelayMs:100,maxLockAttempts:600,space:i,fn:c})}catch(c){throw console.error(`${l} ${E(c)}`),c}finally{Ce&&console.log(`${l} complete.`)}}f(tt,"updateSpecialIndex");async function Ss({timeline:n,timelineAddr:e,metaspace:t,space:o}){let i=`[${Ss.name}]`;try{if(Ce&&console.log(`${i} starting... (I: f2b605361368e1956f6db878dbfeb825)`),!n&&!e)throw new Error("either timeline or timelineAddr required. (E: 97551b2b18ecd22a18185a783f9a0825)");e??=S({ibGib:n});let s=await t.getLatestAddr({addr:e,space:o})??e;if(!s)throw new Error(`${i} (UNEXPECTED) Could not get latest address for timeline ${S({ibGib:n})}. (E: a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9)`);let l;if(e===s){if(!n){let c=await t.get({addrs:[s],space:o});if(c.errorMsg||(c.ibGibs??[]).length!==1)throw new Error(`${i} (UNEXPECTED) couldn't get latest timeline ibgib (${s}) from space (${o.ib}). errorMsg: ${c.errorMsg??"[unknown error]"} (E: 3fc767a594788a43a4ba18c87491a825)`);n=c.ibGibs.at(0)}l=ne({ibGib:n})}else{let c=await t.get({addrs:[s],space:o});if(c.errorMsg||(c.ibGibs??[]).length!==1)throw new Error(`${i} (UNEXPECTED) couldn't get latest timeline ibgib (${s}) from space (${o.ib}). errorMsg: ${c.errorMsg??"[unknown error]"} (E: b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0)`);l=c.ibGibs.at(0)}return l}catch(s){throw console.error(`${i} ${E(s)}`),s}finally{Ce&&console.log(`${i} complete.`)}}f(Ss,"getLatestTimelineIbGibDto_nonLocking");async function Go({timeline:n,timelineAddr:e,mut8Opts:t,metaspace:o,space:i,skipLock:s,timelineIndexInfo:l,noDna:c}){let d=`[${Go.name}]`;try{if(Ce&&console.log(`${d} starting... (I: genuuid)`),!n&&!e)throw new Error("(UNEXPECTED) both timeline and timelineAddr falsy? either one is required. (E: a19d98c6acb87af3b876c1484f6ac825)");if(i??=await o.getLocalUserSpace({lock:!1}),!i)throw new Error("(UNEXPECTED) space falsy? couldn't even get default local user space? (E: genuuid)");if(!n){let m=await o.get({addrs:[e],space:i});if(!m.success||m.ibGibs?.length!==1)throw new Error(`couldn't get timeline ibGib from timelineAddr (${e}) in space (${i?.ib??"undefined"}) (E: genuuid)`);n=m.ibGibs.at(0)}let u=await Ro({timeline:n}),p=f(async()=>{if(!i)throw new Error("(UNEXPECTED) space falsy? couldn't even get default local user space? (E: 845c4181c8c15d7219166ceb3c4dca25)");if(!n)throw new Error("(UNEXPECTED) timeline falsy? we should be ensured that it's truthy at this point. (E: 2e1758b2cc3820531f7ac7f5f6b3a825)");let m=await Ss({timeline:n,metaspace:o,space:i}),g=await Gt({...t,src:m,dna:!c,nCounter:!0}),b=g.newIbGib;return await o.persistTransformResult({resTransform:g,space:i}),l&&await tt({type:l.type,rel8nInfos:[{rel8nName:l.rel8nName,ibGibs:[b]}],metaspace:o,space:i,skipLock:s}),await o.registerNewIbGib({ibGib:b,space:i}),b},"fn");return s?await p():await Fe({scope:u,secondsValid:180,maxDelayMs:100,maxLockAttempts:1800,space:i,callerInstanceId:Te(),fn:p})}catch(u){throw console.error(`${d} ${E(u)}`),u}finally{Ce&&console.log(`${d} complete.`)}}f(Go,"mut8Timeline");var Ft=!1,on=class n{static{f(this,"WitnessBase_V1")}lc=`[${n.name}]`;set trace(e){let t=`${this.lc}[set trace]`;e!==(this.data?.trace||!1)&&(this.data?(this.data.trace=e,delete this.gib):console.warn(`${t} data is falsy. Can't set.`))}get trace(){return this.data?.trace??!1}set catchAllErrors(e){let t=`${this.lc}[set catchAllErrors]`;e!==this.data?.catchAllErrors&&(this.data?(this.data.catchAllErrors=e,delete this.gib):console.error(`${t} data is falsy. Can't set value.`))}get catchAllErrors(){let e=`${this.lc}[catchAllErrors]`,t=this.data?.catchAllErrors||!1;return(Ft||this.trace)&&console.log(`${e} result: ${t}`),t}ib="";gib;data;rel8ns;initialized;constructor(e,t){e&&(this.data=e),t&&(this.rel8ns=t),this.initialized=this.initialize()}initialize(){return Promise.resolve()}toIbGibDto(){return ne({ibGib:this})}loadIbGibDto(e){let t=`${this.lc}[${this.loadIbGibDto.name}]`;try{return Ft&&console.log(`${t} starting...`),e.ib||console.warn(`${t} dto.ib is falsy.`),e.gib||console.warn(`${t} dto.gib is falsy.`),this.ib=L(e.ib),this.gib=L(e.gib),e.data?this.data=L(e.data):delete this.data,e.rel8ns?this.rel8ns=L(e.rel8ns):delete this.rel8ns,Promise.resolve()}catch(o){throw console.error(`${t} ${o.message}`),o}finally{Ft&&console.log(`${t} complete.`)}}async witness(e){let t=`${this.lc}[${this.witness.name}]`;try{await this.initialized,this.gib||(this.gib=await xt(this.toIbGibDto()));let o=await this.validateThis();if(o?.length>0){for(let l of o)console.error(`${t} ${l}`);throw new Error("internal witness validation failed. See `WitnessBase_V1.validateThis` (E: 2b5f73cadbfa416ba189346f3c31cd0c)")}let i=await this.validateWitnessArg(e);if(i?.length>0){for(let l of i)console.error(`${t} ${l}`);throw new Error("arg validation failed. See `WitnessBase_V1.validateWitnessArg` (E: 51531a1d928a485e8ffc277145ec44e9)")}(Ft||this.trace)&&console.log(`${t} addr: ${S(e)}`),Ft&&console.log(`${t} addr: ${S(e)} (I: f4cf13a44c4e4fc3903f14018e616c64)`);let s=await this.witnessImpl(e);return this.data?.persistOptsAndResultIbGibs&&await this.persistOptsAndResultIbGibs({arg:e,result:s}),s}catch(o){if(console.error(`${t} ${o.message||"unknown error (E: 3e22bea4c7fb4668bf13d7146b927869)"}`),this.catchAllErrors)return;throw o}}async validateWitnessArg(e){let t=`${this.lc}[${this.validateWitnessArg.name}]`;try{let o=[];e||o.push("arg required (E: a222db3b668e4bb09cfd82e75c07bfa6)");let i=Gr({ib:e?.ib});(i?.length??!1)&&o.push(`invalid arg.ib (E: 2ae362ef274d4c3bb9716800f2106d28) errors: ${i.join(`
|
|
167
|
+
`)}`);let s=Mr({gib:e?.gib});(s?.length??!1)&&o.push(`invalid arg.gib (E: 73be275058084d768a39299337f2ce34) errors: ${s.join(`
|
|
168
|
+
`)}`);let l=await Ne({ibGib:e});return l?.length??!1?o.push(`arg ibgib invalid intrinsically (E: 73be275058084d768a39299337f2ce34) errors: ${l.join(`
|
|
169
|
+
`)}`):this.data?.allowPrimitiveArgs||ce({gib:e.gib}).isPrimitive&&o.push('arg is primitive (i.e. gib === "gib") and witness.data.allowPrimitiveArgs is falsy. (E: d0aa3d7ad4f54b01bd0023300d15ecd9)'),o}catch(o){throw console.error(`${t} ${o.message}`),o}}async validateThis(){let e=`${this.lc}[${this.validateThis.name}]`,t=[];try{this.ib||t.push("this.ib is falsy."),this.gib||t.push("this.gib is falsy.")}catch(o){throw console.error(`${e} ${o.message}`),o}return t}persistOptsAndResultIbGibs({arg:e,result:t}){let o=`${this.lc}[${this.persistOptsAndResultIbGibs.name}]`;return console.warn(`${o} not implemented in this base class. Override this in descendent class. (W: 087514e851704322a4ec8069a73ce944)`),Promise.resolve()}};var vs="___whitespace___";var me=!1;function $s({commentText:n,addlMetadataText:e}){let t=`[${$s.name}]`;try{if(!n)throw new Error("commentText required. (E: 22fdfd0aa0524a18b63a9405b312c99e)");let o=Rt({text:n,length:20,replaceMap:{"?":"__qm__"}});if(e){e.length>128&&console.warn(`${t} addlMetadataText (${e.length}) is too long. Max length: ${128}`);let i=Rt({text:e,length:128});if(!i)throw new Error("(UNEXPECTED) addlMetadataText contains no safe characters? (E: dd03c578ada2836b05c94a4aa1785222)");return`comment ${o} ${i}`}else return`comment ${o}`}catch(o){throw console.error(`${t} ${o.message}`),o}}f($s,"getCommentIb");function nt({ib:n}){let e=`${nt.name}]`;try{if(me&&console.log(`${e} starting... (I: 1a16f5e3134599eeb585eae77ee6af22)`),!n)throw new Error("ib required (E: d89f8c4df46b970585c82bc89c1c6322)");let[t,o,i]=n.split(" ");for(;o.includes("__qm__");)o=o.replace("__qm__","?");return{safeIbCommentText:o,safeIbCommentMetadataText:i}}catch(t){throw console.error(`${e} ${t.message}`),t}finally{me&&console.log(`${e} complete.`)}}f(nt,"parseCommentIb");async function ot({text:n,addlMetadataText:e,saveInSpace:t,space:o,dontTrimText:i}){let s=`[${ot.name}]`;me&&console.log(`${s} starting...`);try{if(!n)throw new Error("text required (E: 3e3d0f555e1a83771a6548eb10943522)");if(i||(n=n.trim()),!n)throw new Error("text cannot be only whitespace when dontTrimText is falsy. (E: d6db3537b9834294836aeb70987c908e)");let l={text:n,textTimestamp:zt()},c={parentIbGib:H.primitive({ib:"comment"}),ib:$s({commentText:n.trim()||vs,addlMetadataText:e}),data:l,dna:!0,tjp:{uuid:!0,timestamp:!0},nCounter:!0};me&&console.log(`${s} opts: ${M(c)}`);let d=await H.firstGen(c);if(t){if(!o)throw new Error("space required if saveInSpace is truthy (E: 40f69f22f21b4279a83cb746cb4b0da1)");await jt({resTransform:d,space:o})}return d}catch(l){throw console.error(`${s} ${l.message}`),l}}f(ot,"createCommentIbGib");function it({ibGib:n}){let e=`[${it.name}]`;try{if(me&&console.log(`${e} starting...`),!n)throw new Error("ibGib required (E: f204dac30ae548b0a049f1c4d8048502)");let{ib:t,data:o,rel8ns:i}=n;if(!i)return me&&console.log(`${e} rel8ns falsy, NOT a comment (I: 6e145eb2d0ba46629746215a3b655fd5)`),!1;let s=i.ancestor||[];return s&&s.includes("comment^gib")?(me&&console.log(`${e} descends from comment^gib, YES is a comment (I: 1a8557780e2e4c1580d5a2585567762b)`),!0):o?o.text&&t?.includes("comment")?(me&&console.log(`${e} has text, and ib has 'comment', YES is a comment (I: 3aa03bcd639d4ec7abd7ead917eda3d8)`),!0):(me&&console.log(`${e} reached end, doesn't have comment qualities. NOT a comment. (I: cfa529f27f9d490abd476c924ef77087)`),!1):(me&&console.log(`${e} data falsy, NOT a comment (I: 30b20ff6785f432f98489f11efe24299)`),!1)}catch(t){throw console.error(`${e} ${t.message}`),t}finally{me&&console.log(`${e} complete.`)}}f(it,"isComment");var q=!1,rn=class n extends on{static{f(this,"WitnessWithContextBase_V1")}lc=`[${n.name}]`;metaspace;_contextChangesSubscription;_currentWorkingContextIbGib;_currentWorkingContextIbGib_PriorChildrenAddrs=[];_updatingContext=!1;constructor(e,t){super(e,t),this.initialized=this.initialize()}async initialize(){let e=`${this.lc}[${this.initialize.name}]`;try{q&&console.log(`${e} starting... (I: f0e65ab0f80046a59668ddfbf9f47a4a5)`),await super.initialize()}catch(t){console.error(`${e} ${E(t)}`)}finally{q&&console.log(`${e} complete.`)}}async loadNewerSelfIfAvailable(){let e=`${this.lc}[${this.loadNewerSelfIfAvailable.name}]`;try{if(q&&console.log(`${e} starting... (I: 94755c3131f4dfa12d20fa38e2926522)`),this.metaspace){let t=S({ibGib:this}),o=await this.metaspace.getLatestAddr({ibGib:this});if(o&&o!==t){let i=await this.metaspace.get({addr:o});if(!i||!i?.success||(i?.ibGibs??[]).length===0)throw new Error("could not get newer ibgib in timeline (E: 15fa346c8ac17edb96e4b0870104c122)");await this.loadIbGibDto(i.ibGibs[0]);let s=await this.validateThis();if(s?.length>0)throw new Error(`validationErrors when loading newer version: ${M(s)} (E: 0d9f0684a1ff6af44e20a57130e3ac22)`)}}else console.warn(`${e} this.metaspace undefined (W: 44cc5bf1b14b4695b8de4c589787be06)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{q&&console.log(`${e} complete.`)}}async rel8To({ibGibs:e,rel8nName:t,linked:o,metaspace:i}){let s=`${this.lc}[${this.rel8To.name}]`;try{if(q&&console.log(`${s} starting...`),(e??[]).length===0)throw new Error("ibGibs required (E: 2fd13de0f025b170885bede4d7a50922)");if(t=t||this.data?.defaultRel8nName,!t)throw new Error("rel8nName required either as an arg or in this.data.defaultRel8nName (E: 43ab8ae63694a2a82cd8a70ed6b6b522)");let l=await this.validateThis();if(l?.length>0)throw new Error(`this is an invalid ibGib. thisValidationErrors: ${l.join("|")} (E: 8f08716866cd13bf254222ee9e6a6722)`);if(i=i??this.metaspace,!i)throw new Error("either metaspace or this.metaspace required (E: b5f9453ddb394a2b76dec74c7304df22)");let d=(this.rel8ns?this.rel8ns[t]??[]:[]).map(b=>ce({ibGibAddr:b}).tjpGib),u=e.filter(b=>{let y=ce({ibGibAddr:S({ibGib:b})}).tjpGib;return!d.includes(y)});if(u.length===0){q&&console.log(`${s} already rel8d to all incoming ibGib(s) via tjp. (I: 5e9d94a98ba262f146c0c0b765157922)`);return}let p=u.map(b=>S({ibGib:b})),h=await $e({src:this.toIbGibDto(),rel8nsToAddByAddr:{[t]:p},linkedRel8ns:o?["past","ancestor",t]:["past","ancestor"],dna:!0,nCounter:!0}),m=h.newIbGib,g=await Ne({ibGib:m});if(g?.length??!1)throw new Error(`new this ibgib would have validation errors. aborting. newThisValidationErrors: ${g.join("|")} (E: eb816a27156c246c121ef55e37d59322)`);await i.persistTransformResult({resTransform:h}),await this.loadIbGibDto(m),await i.registerNewIbGib({ibGib:m})}catch(l){throw console.error(`${s} ${E(l)}`),l}finally{q&&console.log(`${s} complete.`)}}async rel8ToContextIbGib({ibGibToRel8:e,ibGibAddrToRel8:t,contextIbGib:o,rel8nNames:i}){let s=`${this.lc}[${this.rel8ToContextIbGib.name}]`;try{if(!e&&!t)throw new Error("ibGibToRel8 or ibGibAddrToRel8 required (E: 3ee14659fd22355a5ba0e537a477be22)");if(!o)throw new Error("contextIbGib required (E: 85f27c7cbf713704c21084c141cd8822)");if(!this.metaspace)throw new Error("this.metaspace required (E: 6a38c4274bdefc8d44cafd2d6faaa222)");if((i??[]).length===0){if(!this.data?.defaultRel8nName)throw new Error("either rel8nNames or this.data.defaultRel8nName required (E: a14ab4b3e479d9274c61bc5a30bc2222)");i=[this.data.defaultRel8nName]}let l={};t=t||S({ibGib:e}),i.forEach(u=>{l[u]=[t]});let c=await $e({src:o,rel8nsToAddByAddr:l,dna:!0,nCounter:!0});await this.metaspace.persistTransformResult({resTransform:c});let{newIbGib:d}=c;await this.metaspace.registerNewIbGib({ibGib:d})}catch(l){throw console.error(`${s} ${E(l)}`),l}}async createCommentAndRel8ToContextIbGib({text:e,contextIbGib:t,rel8nName:o}){let i=`${this.lc}[${this.createCommentAndRel8ToContextIbGib.name}]`;try{if(q&&console.log(`${i} starting... (I: c3a005f7d323468a5b4e1b2710901d22)`),!this.metaspace)throw new Error("this.metaspace required (E: 5dbb1a7f0ff5469b8ce3cb1be175e521)");let s=await this.metaspace.getLocalUserSpace({lock:!0}),l=await ot({text:e,addlMetadataText:this.getAddlMetadata(),saveInSpace:!0,space:s});s=await this.metaspace.getLocalUserSpace({lock:!0});let c=l.newIbGib;if(!c)throw new Error("(UNEXPECTED) failed to create comment? (E: 6d668f4e55198e654324622eabaac922)");await this.metaspace.registerNewIbGib({ibGib:c}),await this.rel8ToContextIbGib({ibGibToRel8:c,contextIbGib:t,rel8nNames:["comment"]}),await this.rel8To({ibGibs:[c],rel8nName:o})}catch(s){throw console.error(`${i} ${E(s)}`),s}finally{q&&console.log(`${i} complete.`)}}getThisAtom(){return Rt({text:this.data?.classname??"this",length:16})}getAddlMetadata(){let e=`${this.lc}[${this.getAddlMetadata.name}]`;try{if(q&&console.log(`${e} starting... (I: 7800732facf3783943fdf1b2423b0c22)`),!this.data)throw new Error("(UNEXPECTED) this.data falsy? (E: 7cb044b39b2b8e31f363f3b82f256323)");let t=this.getThisAtom();if(!t)throw new Error("(UNEXPECTED) atom couldn't be gotten? (E: b260de391356e04abd334e0cd8b09123)");if(t.includes(" "))throw new Error("(UNEXPECTED) atom contains space? (E: 574d088eea13d3afe5fcd2999ab6b423)");let o=this.data.classname?.replace(/[_]/mg,"")||void 0,i=this.data.name?.slice(0,8).replace(/[__]/mg,"")||void 0,s=this.data.uuid?.slice(0,8)||void 0,l=`${t}_${o}_${i}_${s}`;return q&&console.log(`${e} addlMetadataText: ${l} (I: 53c0044671dc99fb75635367d2e63c22)`),l}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{q&&console.log(`${e} complete.`)}}async getContextIbGibFromArgOrAddr({arg:e,addr:t,latest:o}){let i=`${this.lc}[${this.getContextIbGibFromArgOrAddr.name}]`;try{q&&console.log(`${i} starting... (I: c13f7cb92133984048f606075efb8a22)`);let s;if(!e&&!t)throw new Error("either arg or addr required. (E: 3f647b65742242fd9ba878521acf7c22)");if(!this.metaspace)throw new Error("(UNEXPECTED) this.metaspace required (E: f0046290b0d66d28c4bbbf83d9d9f523)");if(e){if((e.ibGibs??[]).length===0)throw new Error("(UNEXPECTED) invalid arg? no context ibgib on arg (E: 89997eb4bdeb3885bee9de5d33ee0f22)");if((e.ibGibs??[]).length!==1)throw new Error("(UNEXPECTED) invalid arg? only expected one ibgib on arg.ibGibs (E: 1a1498af668740fe9439f4953a74ea8a)");s=e.ibGibs[0]}else{let l=await this.metaspace.get({addr:t});if(!l.success||l.ibGibs?.length!==1)throw new Error(`could not get context addr (${t}) (E: 834492313512a45b23a7bebacdc48122)`);s=l.ibGibs[0]}if(o){let l=await this.metaspace.getLatestAddr({ibGib:s});if(l!==S({ibGib:s})){let c=await this.metaspace.get({addr:l});if(c.success&&c.ibGibs?.length===1)s=c.ibGibs[0];else throw new Error(`unable to get resLatestAddr (${l}) (E: ce1e1297743e9a16c8f082321e52a122)`)}}return s}catch(s){throw console.error(`${i} ${E(s)}`),s}finally{q&&console.log(`${i} complete.`)}}async initializeContext({arg:e,contextIbGib:t,rel8nName:o}){let i=`${this.lc}[${this.initializeContext.name}]`;try{if(q&&console.log(`${i} starting... (I: d93429c85b0a494388f66fba3eece922)`),!this.metaspace)throw new Error("this.metaspace (metaspace) required. set this before using this witness. (E: 67db388a0223bf813b40accd9941ad23)");e&&t&&console.warn(`${i} both arg and contextIbGib provided. using raw contextIbGib (W: d6d723ad7fb942079833c40647aecd22)`);let s=t??await this.getContextIbGibFromArgOrAddr({arg:e,latest:!1});if(this._currentWorkingContextIbGib){let d=de({ibGib:this._currentWorkingContextIbGib}),u=de({ibGib:s});if(d===u){q&&console.warn(`${i} initializing context but it's the same timeline (${d}). (W: 7609f8f51172443183e0c93ad52bfe56)`);return}else await this.finalizeContext({arg:e})}let l=f(()=>{this._currentWorkingContextIbGib_PriorChildrenAddrs=[...this._currentWorkingContextIbGib?.rel8ns?.comment??[],...this._currentWorkingContextIbGib?.rel8ns?.pic??[],...this._currentWorkingContextIbGib?.rel8ns?.link??[]]},"updatePriorChildren");this._currentWorkingContextIbGib=t?await this.getContextIbGibFromArgOrAddr({addr:S({ibGib:t}),latest:!0}):await this.getContextIbGibFromArgOrAddr({arg:e,latest:!0}),l();let c=de({ibGib:this._currentWorkingContextIbGib});if(!this.metaspace)throw new Error("(UNEXPECTED) this.metaspace falsy...not initialized? (E: 6e38bfdc5c2eb5fef884f0183889e823)");if(!this.metaspace.latestObs)throw new Error("(UNEXPECTED) this.metaspace.latestObs falsy? (E: 831936570c14ed526f9c9ab511929923)");this._contextChangesSubscription=await this.metaspace.latestObs.subscribe(_e({next:f(async d=>{let u=`${i}[latestObs.next]`;if(d.tjpAddr!==c)return;let p=S({ibGib:this._currentWorkingContextIbGib});if(d.latestAddr!==p){if(q&&console.warn(`${u} checking if new context is actually new...damn getLatestAddr maybe not working in ionic space... argh (W: 3d1a12154dfafb9c96d07e6f75f7a322)`),d.latestIbGib){let h=d.latestIbGib.data?.n??-1,m=this._currentWorkingContextIbGib?.data?.n??-2;if(h<=m){console.warn(`${u} latestN is not really the latest. latestN_Supposedly: ${h}, currentN: ${m}. (tjpGib: ${d.tjpAddr}) (W: 6792c9a596c44c03b262614ae79a715e)`);return}}q&&console.log(`${u} update to context.
|
|
170
|
+
currentAddr: ${p}
|
|
171
|
+
latestAddr: ${d.latestAddr} (I: d0adcc392e6e974c9917730ebad51322)`),this._currentWorkingContextIbGib=d.latestIbGib??await this.getContextIbGibFromArgOrAddr({addr:d.latestAddr,latest:!1}),this._updatingContext?q&&console.log(`${u} already updating context (I: f856f9414627ab00418dccd285b55822)`):(await this.handleContextUpdate({update:d}),l())}},"next"),error:f(async d=>{let u=`${i}[latestObs.error]`;console.error(`${u} this.metaspace.latestObs error: ${Po({err:d})}. (E: 99df4c42195d46d0a9dbfb06ac45ae00)`)},"error")})),o&&await this.rel8To({ibGibs:[this._currentWorkingContextIbGib],rel8nName:o})}catch(s){throw console.error(`${i} ${E(s)}`),s}finally{q&&console.log(`${i} complete.`)}}async finalizeContext({arg:e}){let t=`${this.lc}[${this.finalizeContext.name}]`;try{q&&console.log(`${t} starting... (I: dd53dfc745864dd19fde5f209ceb82c8)`);let o=0,i=100;for(;this._updatingContext&&o<i;)await fe(100),o++,o%10===0&&console.log(`${t} already updating context and taking a litle while... waiting still. tries: ${o}/${i} (I: d45ab59af9ea43518432e34ddad95c19)`);throw this._updatingContext&&console.error(`${t} previous call to updatingContext took too long. Ignoring flag and finalizing context. (E: 9a2dc4e1923442fa90fbeae72f358acd)`),this._updatingContext=!0,this._contextChangesSubscription&&(await this._contextChangesSubscription.unsubscribe(),delete this._contextChangesSubscription),delete this._currentWorkingContextIbGib,new Error("not refactored yet. the proceeding code needs to be introduced in the robbot descending class. (E: 066aa414693672d868dbf953617aab23)")}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{this._updatingContext=!1,q&&console.log(`${t} complete.`)}}async handleContextUpdate({update:e}){let t=`${this.lc}[${this.handleContextUpdate.name}]`;for(;this._updatingContext;)console.warn(`${t} already updating context? delaying... (W: 19d2ebeaaf2340fb91a7d6c717e9cb41)`),await fe(1e3);this._updatingContext=!0;try{if(q&&console.log(`${t} starting... (I: 3eeaa40cad49094f125f9f5cd6ff6e22)`),q&&(console.log(`${t} update: (I: ad0abae7de472e3b4d3891ea0b937322)`),console.table(e)),!e.latestIbGib){debugger;throw new Error("(UNEXPECTED) update.latestIbGib falsy? (E: e18a048d7e95757238396ddd84748f22)")}let o=e.latestIbGib,i=await this.getNewChildrenIbGibs({newContext:o});if(i.length===1){let s=i[0];await this.handleNewContextChild({newChild:s})}else if(i.length>1){console.warn(`${t} (UNEXPECTED) multiple new children in context update. iterating through each one. (W: 02d82a8f755f418d95fa30f0f52ad58e)`);for(let s of i)await this.handleNewContextChild({newChild:s})}else{q&&console.log(`${t} no new children in context update. returning early... (I: 31397b04965351ab29bb3f78cb709122)`);return}}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{this._updatingContext=!1,q&&console.log(`${t} complete.`)}}async getNewChildrenIbGibs({newContext:e}){let t=`${this.lc}[${this.getNewChildrenIbGibs.name}]`;try{q&&console.log(`${t} starting... (I: 1b3d1cf908489087fa3b281f55b9a522)`);let i=[...e.rel8ns?.comment??[],...e.rel8ns?.pic??[],...e.rel8ns?.link??[]].filter(u=>!this._currentWorkingContextIbGib_PriorChildrenAddrs.includes(u));if(i.length===0)return q&&console.log(`${t} no new children addrs in newContext. returning early... (I: 8f9c3658c194c472cb1e2bc19d847b22)`),[];if(!this.metaspace)throw new Error("this.metaspace falsy. not initialized? (E: 1cc26ca7de7fadcdbaecbd6613350e23)");let s=await this.metaspace.getLocalUserSpace({});if(!s)throw new Error("couldn't get local user space? (E: f118f75e5852fc22bba3a6495beec723)");let l=await kr({addrs:i,space:s}),c=Object.values(l?.data?.latestAddrsMap??{});if(!l?.data?.success||c.length!==i.length)throw new Error("could not get latest addrs. (E: 2e1619e7e2e166696fe8ff78cb02cc22)");if(c.some(u=>u===null))throw new Error("some addrs were not found in the space. (E: 2216d8e5ad7fb600ceb025ed7c90f323)");let d=await this.metaspace.get({addrs:c});if(!d.success||d.ibGibs?.length!==i.length)throw new Error(`failed to get newChildren with addrs: ${i.join("|")}. Error: ${d.errorMsg??"unknown error 5737bd0996d5445b8bd80975bedc0d57"} (E: 05722e11350ec6ffffdb5c7d0caa2922)`);return d.ibGibs}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{q&&console.log(`${t} complete.`)}}async handleNewContextChild({newChild:e}){let t=`${this.lc}[${this.handleNewContextChild.name}]`;try{throw new Error("not implemented in base class (E: ea6b2b13d9504d93b33b70191d106084)")}catch(o){throw console.error(`${t} ${E(o)}`),o}}};var sn="subject",Do=/^[a-zA-Z0-9_\-.]{1,255}$/,Ns="subject",Ps="",an="subject is a cool ibgib witness that has seriously fascinating behavior.";var Rs="observable";var He={subscribe:"subscribe"},xs=Object.values(He);var Gs={next:"next",error:"error",complete:"complete"};var Be={...He,...Gs};var kt={version:"1",uuid:Ps,name:Ns,description:an,classname:"Subject_V1",persistOptsAndResultIbGibs:!1,allowPrimitiveArgs:!0,catchAllErrors:!0,trace:!1},Uo=void 0;var We=!1;function Ms(n){let e=`[${Ms.name}]`;try{let t=n?`${Dt} ${n}`:Dt;return We&&console.log(`${e} ${t}`),t}catch(t){throw console.error(`${e} ${t.message}`),t}}f(Ms,"getArgIb");function Ec({ib:n,ibGib:e}){let t=`[${Ec.name}]`;try{if(We&&console.log(`${t} starting...`),!n)if(e)n=e.ib;else throw new Error("either ib or ibGib required (E: c052a9d76df867626f9ba17141cdce22)");return n.startsWith(Dt)}catch(o){throw console.error(`${t} ${o.message}`),o}finally{We&&console.log(`${t} complete.`)}}f(Ec,"isArg");function Ds(n){let e=`[${Ds.name}]`;try{let t=n?`${Zt} ${n}`:Zt;return We&&console.log(`${e} ${t}`),t}catch(t){throw console.error(`${e} ${t.message}`),t}}f(Ds,"getResultIb");async function rt({argData:n,ibMetadata:e,noTimestamp:t}){let o=`[${rt.name}]`;try{let i=await H.firstGen({ib:Ms(e),parentIbGib:H.primitive({ib:Dt}),data:n,dna:!1,noTimestamp:t});if(i.newIbGib){let{newIbGib:s}=i;return s.rel8ns.past=[],s.gib=await xt(s),s}else throw new Error("create ibGib failed")}catch(i){throw console.error(`${o} ${i.message}`),i}}f(rt,"argy_");async function st({resultData:n,ibMetadata:e,noTimestamp:t}){let o=`[${st.name}]`;try{let i=await H.firstGen({ib:Ds(e),parentIbGib:H.primitive({ib:Zt}),data:n,dna:!1,noTimestamp:t});if(i?.newIbGib){let{newIbGib:s}=i;return s.rel8ns.past=[],s.gib=await xt(s),s}else throw new Error("create ibGib failed")}catch(i){throw console.error(`${o} ${i.message}`),i}}f(st,"resulty_");function Lo({ibGib:n}){let e=`[${Lo.name}]`;try{if(We&&console.log(`${e} starting...`),!n)throw new Error("ibGib required (E: e11cee2a6c59a5e7a4d39ea55751c423)");if(!n.data)return!1;let t=n.data;return t.cmd&&typeof t.cmd=="string"}catch(t){throw console.error(`${e} ${t.message}`),t}finally{We&&console.log(`${e} complete.`)}}f(Lo,"isCommand");function Fo({ibGib:n}){let e=`[${Fo.name}]`;try{return We&&console.log(`${e} starting... (I: aad0a14f4d62061424fc92da4d53d823)`),typeof n.witness=="function"}catch(t){throw console.error(`${e} ${t.message}`),t}finally{We&&console.log(`${e} complete.`)}}f(Fo,"isWitness");var ln=class n{static{f(this,"WitnessFactoryBase")}lc=`[${n.name}]`};var ko=!1,gt=class n extends ln{static{f(this,"DynamicFormFactoryBase")}lc=`[${n.name}]`;patchDataFromItems({data:e,contextPath:t,items:o,pathDelimiter:i}){let s=`${this.lc}[${this.patchDataFromItems.name}]`;try{if(ko&&console.log(`${s} starting...`),!i)throw new Error("pathDelimiter required (E: 958d472a15fb71e45cd2925883f2ec22)");for(let l=0;l<o.length;l++){let c=o[l],d=t?t+i+c.name:c.name;if(!c.items)Pr({obj:e,value:c.value,path:d,logalot:ko,pathDelimiter:i});else if(c.items.length>0)this.patchDataFromItems({data:e,contextPath:d,items:c.items,pathDelimiter:i});else throw new Error("invalid item. items is truthy but with a length of 0. items should either be falsy or have at least one child. (E: ee2765e0b920477f919fcb09e9d951b4)")}}catch(l){throw console.error(`${s} ${l.message}`),l}finally{ko&&console.log(`${s} complete.`)}}};var Us=!1,Je=class n{static{f(this,"LightWitnessBase_V1")}lc=`[${n.name}]`;instanceId="";ib="";gib;data;rel8ns;initialized;_isInitialized=!1;constructor(e,t){e&&(this.data=e),t&&(this.rel8ns=t),this.initialized=this.initialize().then(()=>{this._isInitialized=!0})}async initialize(){this.instanceId=await Ie(),this.gib=await mt({ibGib:this.toIbGibDto()})}toIbGibDto(){return ne({ibGib:this})}loadIbGibDto(e){let t=`${this.lc}[${this.loadIbGibDto.name}]`;try{return Us&&console.log(`${t} starting...`),e.ib||console.warn(`${t} dto.ib is falsy.`),e.gib||console.warn(`${t} dto.gib is falsy.`),this.ib=L(e.ib),this.gib=L(e.gib),e.data?this.data=L(e.data):delete this.data,e.rel8ns?this.rel8ns=L(e.rel8ns):delete this.rel8ns,Promise.resolve()}catch(o){throw console.error(`${t} ${o.message}`),o}finally{Us&&console.log(`${t} complete.`)}}async validateThis(){let e=`${this.lc}[${this.validateThis.name}]`,t=[];try{this.ib||t.push("this.ib is falsy."),this.gib||t.push("this.gib is falsy.")}catch(o){throw console.error(`${e} ${o.message}`),o}return t}};var Ls="subscription",Vo=/^[a-zA-Z0-9_\-.]{1,255}$/,Fs="",ks="subscription",cn="subscription is a cool ibgib witness that has seriously fascinating behavior.";var Vt={unsubscribe:"unsubscribe",unsubscribed:"unsubscribed"};var qo={version:"1",uuid:Fs,name:ks,description:cn,classname:"Subscription_V1",persistOptsAndResultIbGibs:!1,allowPrimitiveArgs:!0,catchAllErrors:!1,trace:!1},Oo=void 0;var Vs=!1;function Ho({ibGib:n}){let e=`[${Ho.name}]`;try{Vs&&console.log(`${e} starting... (I: 3aadb634377acbe42984b61c91975323)`);let{ib:t}=n;return[Rs,sn].some(i=>t.includes(i))}catch(t){throw console.error(`${e} ${t.message}`),t}finally{Vs&&console.log(`${e} complete.`)}}f(Ho,"isObservable");var V=!1,dn=class n extends Je{static{f(this,"Subscription_V1")}lc=`[${n.name}]`;metaspace;_subscribed;_unsubscribed;_srcObservable;constructor(e,t){super(e,t)}async initialize(){let e=`${this.lc}[${this.initialize.name}]`;try{if(V&&console.log(`${e} starting... (I: 8097612cda5f43e5b38249d057b65b1e)`),await super.initialize(),!this.data)throw new Error("this.data required (E: 1af73af2d17a48ada42596ad395fd99c)");this.data.uuid=this.instanceId,this.ib=fn({data:this.data,classname:"Subscription_V1"}),this.gib=await mt({ibGib:this})}catch(t){throw console.error(`${e} ${t.message}`),t}finally{V&&console.log(`${e} complete.`)}}async witness(e){let t=`${this.lc}[${this.witness.name}]`;try{this._isInitialized||await this.initialized;let{ib:o}=e;if(!o)throw new Error("arg.ib required (E: 1fd9aebef07b4bdaacc0cd323c8ddf76)");if(V&&console.log(`${t} ib: ${o} (I: 4de7771f477dc5b36933343b694ce223)`),o===Vt.unsubscribe)return V&&console.log(`${t} routing unsubscribe cmd (I: 5633b86d467af2aa67388abf559a3c23)`),this.witness_unsubscribe();if(o===Vt.unsubscribed)return V&&console.log(`${t} routing unsubscribed query (I: 6e0ae61d90f1974d76bcdbb47970e723)`),this.witness_unsubscribed();if(Ho({ibGib:e}))return V&&console.log(`${t} routing observerable (I: 165b422cda9ec3052312243dc965cf23)`),this.witness_observable({ibGib:e});throw new Error("unknown arg. expect unsubscribe/unsubscribed primitive ibgib or Observable ibgib. (E: 132dc7cd8f7c4afc9ec4651e2c559c74)")}catch(o){throw console.error(`${t} ${E(o)??"unknown error (E: b0bbaab21833404a9420c3d273df7f21)"}`),o}}async witness_unsubscribe(){let e=`${this.lc}[${this.witness_unsubscribe.name}]`;try{if(V&&console.log(`${e} starting... (I: a3d549220ef24604956aaa2c66fff09b)`),!this._subscribed)return console.warn(`${e} tried to unsubscribe but this._subscribed is ${this._subscribed} (W: cdc94f59447d4011b4b4cc12ef9ec074)`),W;if(this._unsubscribed)return console.warn("{lc} this._unsubscribed already true. (W: fa287d76cec040e0978a8add5c758093)"),W;if(!this._srcObservable)throw new Error("(UNEXPECTED) this._subscribed but this._srcObservable falsy? (E: 83687993b7bea299b4ba2438b530a123)");return V&&(console.log(`${e} inspecting srcObservable before src.witness... (I: f15a33d10f1cae3cec6fdbdb32596823)`),console.dir(this._srcObservable)),await this._srcObservable.witness(this),V&&(console.log(`${e} inspecting srcObservable after src.witness... (I: f15a33d10f1cae3cec6fdbdb32596823)`),console.dir(this._srcObservable)),this._subscribed=!1,this._unsubscribed=!0,delete this._srcObservable,V&&console.log(`${e} this._ (I: 7b1bc418a3d32757772391cad7a49523)`),W}catch(t){throw console.error(`${e} ${t.message}`),t}finally{V&&console.log(`${e} complete.`)}}async witness_observable({ibGib:e}){let t=`${this.lc}[${this.witness_observable.name}]`;try{if(V&&console.log(`${t} starting... (I: faf248f372fc44a7bb0e70492e8284f9)`),this._subscribed!==void 0)throw new Error(`(UNEXPECTED) this._subscribed (${this._subscribed} is not undefined? (E: 09a0e926357676c2c93a173ccbe93923)`);if(this._srcObservable)throw new Error("(UNEXPECTED) this subscription isn't subscribed but this._observable is truthy? (E: acdf5198fb2ff3c8b2db95450bd55b23)");return this._srcObservable=e,V&&console.log(`${t} this._srcObservable set to ibgib with ib: ${e.ib} (I: 4b81d17243f60dfdcc2163fbb55e9223)`),this._subscribed=!0,W}catch(o){throw console.error(`${t} ${o.message}`),o}finally{V&&console.log(`${t} complete.`)}}async witness_unsubscribed(){let e=`${this.lc}[${this.witness_unsubscribed.name}]`;try{if(V&&console.log(`${e} starting... (I: 1beac551253e4c5694b63e0d36d5d5c0)`),this._subscribed==null)throw new Error("subscription never subscribed in the first place (this._subscribed === undefined) (E: b2c1b21a0e876a4908339a976924b923)");if(this._subscribed&&this._unsubscribed)throw new Error("(UNEXPECTED) both this._subscribed and this._unsubscribed true (E: a967e49de657a43929a74703c656ad23)");let t=this._unsubscribed===!0?Co:Lr;return V&&console.log(`${e} result: ${M(t)} (I: b488cf36ce39e006a81d3ad3db5b4a23)`),t}catch(t){throw console.error(`${e} ${t.message}`),t}finally{V&&console.log(`${e} complete.`)}}async unsubscribe(){let e=`${this.lc}[${this.unsubscribe.name}]`;try{V&&console.log(`${e} starting... (I: ef7f3f4787a74fcca65d761880f44594)`);let t=await this.witness(H.primitive({ib:Vt.unsubscribe}));if(!t)throw new Error("(UNEXPECTED) unsubscribe returned undefined? (E: 7013193490b94b6880f1049c36577d6f)");if(Re({ibGib:t})){let o=t;throw new Error(`${o.data.raw} (E: fca1200dccb14f84968b2462f1b4c29e)`)}}catch(t){throw console.error(`${e} ${t.message}`),t}finally{V&&console.log(`${e} complete.`)}}async unsubscribed(){let e=`${this.lc}[${this.unsubscribed.name}]`;try{V&&console.log(`${e} starting... (I: 8ee9a93be61647d6aef6a4fa03e96dad)`);let t=await this.witness(H.primitive({ib:Vt.unsubscribed}));if(!t)throw new Error("(UNEXPECTED) unsubscribe returned undefined? (E: 5051d7ff4a4d4bf7864c520b53f028d5)");let o=t.ib===Co.ib;return V&&console.log(`${e} resUnsubscribed: ${o} (I: b4800166c58d5ba2ca1dccaa53de2323)`),o}catch(t){throw console.error(`${e} ${t.message}`),t}finally{V&&console.log(`${e} complete.`)}}async validateThis(){let e=`${this.lc}[${this.validateThis.name}]`;try{return V&&console.log(`${e} starting...`),this.data,[]}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{V&&console.log(`${e} complete.`)}}async argy({argData:e,ibMetadata:t,noTimestamp:o,ibGibs:i}){let s=await rt({argData:e,ibMetadata:t,noTimestamp:o});return i&&(s.ibGibs=i),s}async resulty({resultData:e,ibGibs:t}){let o=await st({resultData:e});return t&&(o.ibGibs=t),o}},un=class n extends gt{static{f(this,"Subscription_V1_Factory")}lc=`[${n.name}]`;getName(){return dn.name}async newUp({data:e,rel8ns:t}){let o=`${this.lc}[${this.newUp.name}]`;try{V&&console.log(`${o} starting...`),e??=L(qo),e=e,t=t??Oo?L(Oo):void 0,e.uuid||=await Ie();let{classname:i}=e,s=fn({data:e}),l=await ke({parentPrimitiveIb:`witness ${i}`,ib:s,data:e,rel8ns:t}),c=new dn(void 0,void 0);return await c.loadIbGibDto(l),V&&console.log(`${o} witnessDto: ${M(l)} (I: 5e41337176d1441f9a5c7b43664d43ef)`),{newIbGib:c}}catch(i){throw console.error(`${o} ${E({error:i})}`),i}finally{V&&console.log(`${o} complete.`)}}async witnessToForm({witness:e}){let t=`${this.lc}[${this.witnessToForm.name}]`;try{V&&console.log(`${t} starting...`);let{data:o}=e;if(!o)throw new Error("(UNEXPECTED) witness.data falsy? (E: ef44497ff97a4e5bac004d52c4ff40eb)");V&&console.log(`${t} data: ${M(o)} (I: c3f4c3d85386461aaefbe33524ff9cbd)`);let i=await Kt({n:100}),s=new pn().with({idPool:i}).name({of:o.name,required:!1}).description({of:o.description??cn}).and().and().uuid({of:o.uuid,required:!0}).classname({of:o.classname}).and().commonWitnessFields({data:o}).outputForm({formName:"form",label:"subscription"});return Promise.resolve(s)}catch(o){throw console.error(`${t} ${E({error:o})}`),o}finally{V&&console.log(`${t} complete.`)}}async formToWitness({form:e}){let t=L(qo);return this.patchDataFromItems({data:t,items:e.items,pathDelimiter:Yt}),await this.newUp({data:t})}};var hn=!1;function qs({data:n}){let e=`[${qs.name}]`;try{if(hn&&console.log(`${e} starting...`),!n)throw new Error("Subscription Data required (E: 6d1c97931dcab8ea9f3e9b32c794b90c)");let t=[],{name:o,uuid:i,classname:s}=n;return o?o.match(Vo)||t.push(`name must match regexp: ${Vo} (E: 21bf77e398d47e9d035376510505eda2)`):t.push("name required."),i?i.match(ie)||t.push(`uuid must match regexp: ${ie} (E: e53fd08ae69e945b37ed895b864b6bd7)`):t.push("uuid required."),s&&(s.match(Le)||t.push(`classname must match regexp: ${Le}`)),t}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{hn&&console.log(`${e} complete.`)}}f(qs,"validateCommonSubscriptionData");function fn({data:n,classname:e}){let t=`[${fn.name}]`;try{let o=qs({data:n});if(o.length>0)throw new Error(`invalid Subscription data: ${o} (E: fd6b0b32d8f6c4b97eebd489cdb07a4a)`);if(e){if(n.classname&&n.classname!==e)throw new Error("classname does not match data.classname (E: 354285a56a20b9b65b06abfcd9f2e621)")}else if(e=n.classname,!e)throw new Error("classname required (E: 040c1fd71853fa7874146999afb355c3)");let{uuid:i}=n;return`witness ${Ls} ${e} ${i}`}catch(o){throw console.error(`${t} ${E(o)}`),o}}f(fn,"getSubscriptionIb");var pn=class n extends Mt{static{f(this,"SubscriptionFormBuilder")}lc=`[${n.name}]`;constructor(){super(),this.what="subscription"}};function mn({ibGib:n}){let e=`[${mn.name}]`;try{if(hn&&console.log(`${e} starting... (I: 43df7e7f61f25e65662ce8aa5a105a23)`),!n)return!1;let t=n;return typeof t.witness=="function"&&typeof t.unsubscribe=="function"&&typeof t.unsubscribed=="function"}catch(t){throw console.error(`${e} ${t.message}`),t}finally{hn&&console.log(`${e} complete.`)}}f(mn,"isSubscription");async function Os(){return(await new un().newUp({})).newIbGib}f(Os,"newupSubscription");var Bo="observable_event";var Hs=!1;async function Wo({eventType:n,srcObservable:e,payload:t}){let o=`[${Wo.name}]`;try{if(Hs&&console.log(`${o} starting... (I: e2290f2f46d1993d6893a24c19100823)`),!e)throw new Error("srcObservable required (E: 3470a97bbf3802cbc8dd64339f5ef623)");if(!e.data)throw new Error("srcObservable.data required (E: df1786585ba849c08e7f4f1fddd30a31)");if(!e.data.uuid)throw new Error("srcObservable.data.uuid required (E: 173a1a53f274bc1cef879bad2288ca23)");if(!e.data.uuid.match(ie))throw new Error(`valid srcObservable.data.uuid required. must pass UUID_REGEXP: ${ie.source} (E: 10f4bd1863f18250cc79cd65221da223)`);let i={uuid:await Ie(),eventType:n,srcObservableId:e.data.uuid,"@srcObservableAddr":S({ibGib:e}),"@payloadAddr":S({ibGib:t})};return await ke({parentPrimitiveIb:Bo,ib:Bs({data:i}),data:i})}catch(i){throw console.error(`${o} ${i.message}`),i}finally{Hs&&console.log(`${o} complete.`)}}f(Wo,"getObservableEventIbGib");function Bs({data:n,classname:e}){let t=`[${Bs.name}]`;try{if(e){if(n.classname&&n.classname!==e)throw new Error("classname does not match data.classname (E: 523aabc53fb944789202a5f468abd338)")}else if(e=n.classname,!e)throw new Error("classname required (E: d4401ea682894c5fa824b38d4989aa76)");if(!n.uuid)throw new Error("data.uuid required (E: 204cc7c20efd8a55263cdea8b1223e23)");return`${Bo} ${e} ${n.uuid}`}catch(o){throw console.error(`${t} ${E(o)}`),o}}f(Bs,"getObservableEventIb");var X=!1,gn=class n extends Je{static{f(this,"ObservableBase_V1")}lc=`[${n.name}]`;metaspace;_subscribers={};_isComplete=!1;_pastPayloads=[];_pastError;get isCompleteOrErrored(){return this._isComplete||!!this._pastError}get isComplete(){return this._isComplete}get isErrored(){return!!this._pastError}constructor(e,t){super(e,t)}async witness(e){let t=`${this.lc}[${this.witness.name}]`;try{this._isInitialized||await this.initialized;let{ib:o}=e;if(!o)throw new Error("arg.ib required (E: 87659d093b82436ce2f7a87e402a5423)");if(Lo({ibGib:e}))return this.witness_cmd({arg:e});if(Fo({ibGib:e}))return this.witness_otherWitness({arg:e});throw new Error("unknown arg. expect observable cmd or ibgib witness (E: dc2667cffac5b8d7b1bf2ea737c81a23)")}catch(o){throw console.error(`${t} ${E(o)??"unknown error (E: 3e22bea4c7fb4668bf13d7146b927869)"}`),o}}async witness_cmd({arg:e}){let t=`${this.lc}[${this.witness_cmd.name}]`;try{if(X&&console.log(`${t} starting... (I: 69257fac8328b9de9755fdd237b92723)`),e.data.cmd===He.subscribe)return this.witness_subscribe_cmd({ibGib:e});throw new Error(`unknown command. must be of type ObservableCmd (${xs}) (E: 5910e5cbafead25ea2917a65a3fc4123)`)}catch(o){throw console.error(`${t} ${o.message}`),o}finally{X&&console.log(`${t} complete.`)}}async witness_otherWitness({arg:e}){let t=`${this.lc}[${this.witness_otherWitness.name}]`;try{return X&&console.log(`${t} starting... (I: 871d0b7a2bef4596bad430f1cbacde02)`),mn({ibGib:e})?this.witness_subscriptionIbGib({arg:e}):this.witness_subscribe_nonCmdWitness({arg:e})}catch(o){throw console.error(`${t} ${o.message}`),o}finally{X&&console.log(`${t} complete.`)}}async witness_subscriptionIbGib({arg:e}){let t=`${this.lc}[${this.witness_subscriptionIbGib.name}]`;try{if(X&&console.log(`${t} starting... (I: 4ac764776ef7e3f9074eb95a999ba423)`),!e.data)throw new Error("arg.data required (E: 764ae772727ceba95a18140fdd938323)");let o=this.getSubscriberKey({subscription:e}),[i,s]=this._subscribers[o];if(e===i)delete this._subscribers[o];else throw new Error("(UNEXPECTED) arg and subscription are two different instances? (E: aab5ef9bdc92abb9e816e2c443ab5723)");return W}catch(o){throw console.error(`${t} ${o.message}`),o}finally{X&&console.log(`${t} complete.`)}}async replayPastPayloads({observer:e,subscription:t}){let o=`${this.lc}[${this.replayPastPayloads.name}]`;try{X&&console.log(`${o} starting... (I: b3c8f9c76a4af030cf52fdcf01c3fd23)`);let i=this.getSubscriberKey({subscription:t}),s=f(()=>!!this._subscribers[i],"fnStillSubscribed"),l=-1,c=!0;do if(l++,l<this._pastPayloads.length){if(!s()){X&&console.log(`${o} subscription canceled before past payloads dispatch completed. (I: f1778f868446a518030d1cf7800c8a23)`);return}try{let d=this._pastPayloads[l];await e.next(d)}catch{console.error(`${o} observer errored on payload (i: ${l}). aborting replay (E: 1d7efc7c48e1491da4317ef333031077)`);return}}else c=!1;while(c);if(this.isErrored&&e.error&&s())try{await e.error(this._pastError)}catch{console.error(`${o} observer.error(this._pastError) errored itself (E: 18310e5e032345e7bdc3f2479807866c)`)}else if(this.isComplete&&e.complete&&s())try{await e.complete()}catch{console.error(`${o} observer.complete errored (E: d9d027f5520f4d7eadfc669d66b5b550)`)}}catch(i){throw console.error(`${o} ${i.message}`),i}finally{X&&console.log(`${o} complete.`)}}async witness_subscribe_cmd({ibGib:e}){let t=`${this.lc}[${this.witness_subscribe_cmd.name}]`;try{if(X&&console.log(`${t} starting... (I: 0c4c75c3fae297af6449c1048ce55423)`),(e.ibGibs??[]).length!==1)throw new Error("ibGib.ibGibs required. should contain one ObserverWitness (E: 3ed99b32e22284573c497df788a9f923)");let o=e.ibGibs[0],i=await Os();return X&&console.log(`${t} subscription created (I: 89ccd97803c66292f9d7334e1e2de523)`),await i.witness(this),await i.initialized,X&&console.log(`${t} subscription initialized (after witnessing this observable as its src). (I: 3021483402b21c4df64a9173bd223a23)`),this._subscribers[this.getSubscriberKey({subscription:i})]=[i,o],X&&console.log(`${t} stored subscriber (subscription, observer) (I: fb09660d885e33b80188dd0386ffc723)`),this.data.replay&&this._pastPayloads.length>0&&this.replayPastPayloads({observer:o,subscription:i}),i}catch(o){throw console.error(`${t} ${o.message}`),o}finally{X&&console.log(`${t} complete.`)}}async witness_subscribe_nonCmdWitness({arg:e}){let t=`${this.lc}[${this.witness_subscribe_nonCmdWitness.name}]`;try{throw X&&console.log(`${t} starting... (I: d9571dfcab4247d594c838233971886a)`),new Error("not impl (E: 76219cf238ba4f849480bd7c82eefab9)")}catch(o){throw console.error(`${t} ${o.message}`),o}finally{X&&console.log(`${t} complete.`)}}async subscribe(e){let t=`${this.lc}[${this.subscribe.name}]`;try{X&&console.log(`${t} starting... (I: 0dec9a06c562711e19482d45a7075e23)`);let o;if(at({ibGib:e})){let i=await this.argy({argData:{cmd:He.subscribe,ibGibAddrs:[S({ibGib:e})]},ibGibs:[e]});o=await this.witness(i)}else o=await this.witness(e);if(!mn({ibGib:o}))throw new Error("(UNEXPECTED) resSubscription is not a SubscriptionWitness? (E: c29bec4e3a48d6f1299143399ac55a23)");return o}catch(o){throw console.error(`${t} ${o.message}`),o}finally{X&&console.log(`${t} complete.`)}}getSubscriberKey({subscription:e}){if(e.data?.uuid)return e.data.uuid;throw new Error("(UNEXPECTED) subscription.data.uuid falsy? (E: 8d078e6f8155f7567fd9378557e91823)")}async dispatchToEachSubscriber({payload:e,fnForObserver:t,observableEventType:o}){let i=`${this.lc}[${this.dispatchToEachSubscriber.name}]`;try{X&&console.log(`${i} starting... (I: 0b990ce892f689d14458565717e66a23)`);let s=Object.values(this._subscribers);for(let l=0;l<s.length;l++){let[c,d]=s[l];if(at({ibGib:d})){let u=d;await t(u,e),u.complete?await c.unsubscribed()?console.warn(`${i} (UNEXPECTED) subscriber reference still held but is unsubscribed? skipping for now (i.e. won't remove subscriber) in case that code is in yielded execution and just hasn't gotten around to it with event loop (but that would be weird). (W: 1d98f35d2fdd4345954c947265d9fb85)`):await u.complete():X&&console.log(`${i} no error handler for observer. skipping. (I: 6a8a52c2012c464790eb406d2ae0383f)`)}else{let u=await Wo({eventType:o,srcObservable:this,payload:e});await d.witness(u)}}}catch(s){throw console.error(`${i} ${s.message}`),s}finally{X&&console.log(`${i} complete.`)}}async validateThis(){let e=`${this.lc}[${this.validateThis.name}]`;try{return X&&console.log(`${e} starting...`),this.data,[]}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{X&&console.log(`${e} complete.`)}}async argy({argData:e,ibMetadata:t,noTimestamp:o,ibGibs:i}){let s=await rt({argData:e,ibMetadata:t,noTimestamp:o});return i&&(s.ibGibs=i),s}async resulty({resultData:e,ibGibs:t}){let o=await st({resultData:e});return t&&(o.ibGibs=t),o}};var O=!1,bn=class n extends gn{static{f(this,"Subject_V1")}lc=`[${n.name}]`;constructor(e,t){super(e,t)}asObservable(){return this}async subscribe(e){let t=`${this.lc}[${this.subscribe.name}]`;try{O&&console.log(`${t} starting... (I: 8e47b752314870ec78eb14342621f723)`);let o=await this.argy({argData:{cmd:Be.subscribe,ibGibAddrs:[S({ibGib:e})]},ibGibs:[e]});return await this.witness(o)}catch(o){throw console.error(`${t} ${o.message}`),o}finally{O&&console.log(`${t} complete.`)}}async next(e){let t=`${this.lc}[${this.next.name}]`;try{O&&console.log(`${t} starting... (I: b30363827c56450ca918c69aa15b0046)`);let o=await this.argy({argData:{cmd:Be.next,ibGibAddrs:[S({ibGib:e})]},ibGibs:[e]});await this.witness(o)}catch(o){throw console.error(`${t} ${o.message}`),o}finally{O&&console.log(`${t} complete.`)}}async error(e){let t=`${this.lc}[${this.error.name}]`;try{O&&console.log(`${t} starting... (I: 7fcc30e3763c429ea8b212491ad9455a)`);let o;if(typeof e=="string")o=await et({rawMsg:e});else if(e instanceof Error||typeof e.message=="string")o=await et({rawMsg:E(e)});else if(e.ib&&Re({ibGib:e}))o=e;else throw new Error("unknown error type. shold either be ErrorIbGib_V1 or an Error instance or have error.message string property. (E: 2cfcab85439c3c845bfe18e8ecde3523)");let i=await this.argy({argData:{cmd:Be.error,ibGibAddrs:[S({ibGib:o})]},ibGibs:[o]});await this.witness(i)}catch(o){throw console.error(`${t} ${o.message}`),o}finally{O&&console.log(`${t} complete.`)}}async complete(){let e=`${this.lc}[${this.complete.name}]`;try{O&&console.log(`${e} starting... (I: 5faaf13c6b0543d399815c03b9cdf80c)`);let t=await this.argy({argData:{cmd:Be.complete}});await this.witness(t)}catch(t){throw console.error(`${e} ${t.message}`),t}finally{O&&console.log(`${e} complete.`)}}async witness_cmd({arg:e}){let t=`${this.lc}[${this.witness_cmd.name}]`;try{O&&console.log(`${t} starting... (I: 2bf7cbcadba446fa92cb649906b2b260)`);let{cmd:o}=e.data;switch(o){case Be.next:return this.witness_next({ibGib:e});case Be.error:return this.witness_error({ibGib:e});case Be.complete:return this.witness_complete({ibGib:e});default:return super.witness_cmd({arg:e})}}catch(o){throw console.error(`${t} ${o.message}`),o}finally{O&&console.log(`${t} complete.`)}}async witness_next({ibGib:e}){let t=`${this.lc}[${this.witness_next.name}]`;try{if(O&&console.log(`${t} starting... (I: 600da780f13f5137a2f76aad344b2923)`),this.isCompleteOrErrored)return O&&console.log(`${t} this.isCompleteOrErrored is true. returning early without producing. (I: aa823831853b134b19657c8673838c23)`),W;if((e.ibGibs??[]).length!==1)throw new Error("ibGib.ibGibs required. should contain one payload ibgib (E: 4046802ff96d4adfafcee7a74d96af5e)");let o=e.ibGibs[0];this.data.replay&&this._pastPayloads.push(o);let i=Object.values(this._subscribers);for(let s=0;s<i.length;s++){let[l,c]=i[s];if(O&&console.log(`${t} ensuring subscription not unsubscribed (I: ade3fd6d6ff2b5ec69eb8143e32ce223)`),!await l.unsubscribed())O&&console.log(`${t} subscription still active (I: b9ab83b28acecf0d823fdba46a81dc23)`),await c.next(o);else{debugger;console.warn(`${t} (UNEXPECTED) subscriber reference still held but is unsubscribed? skipping for now (i.e. won't remove subscriber) in case that code is in yielded execution and just hasn't gotten around to it with event loop (but that would be weird). (W: c116e799f6b9483c97fd030eb0dd09ea)`)}}return W}catch(o){throw console.error(`${t} ${o.message}`),o}finally{O&&console.log(`${t} complete.`)}}async witness_error({ibGib:e}){let t=`${this.lc}[${this.witness_error.name}]`;try{if(O&&console.log(`${t} starting... (I: 3367a73bc83c47f98d9ecfe426dc300e)`),(e.ibGibs??[]).length!==1)throw new Error("ibGib.ibGibs required. should contain one error ibgib (E: 905474b45bcb4f0abe7bd4618f08f32c)");let o=e.ibGibs[0];this._pastError=o;let i=Object.values(this._subscribers);for(let s=0;s<i.length;s++){let[l,c]=i[s];if(at({ibGib:c})){let d=c;d.error?await l.unsubscribed()?console.warn(`${t} (UNEXPECTED) subscriber reference still held but is unsubscribed? skipping for now (i.e. won't remove subscriber) in case that code is in yielded execution and just hasn't gotten around to it with event loop (but that would be weird). (W: 8946e97f00fd4146a470064b490a4c29)`):await d.error(o):O&&console.log(`${t} no error handler for observer. skipping. (I: 59f4a1ee59a3a27d523d60cd761be923)`)}else await c.witness(o)}return W}catch(o){throw console.error(`${t} ${o.message}`),o}finally{O&&console.log(`${t} complete.`)}}async witness_complete({ibGib:e}){let t=`${this.lc}[${this.witness_complete.name}]`;try{O&&console.log(`${t} starting... (I: 4db180f465e24df9a4ded37fbd235558)`),this._isComplete=!0;let o=Object.values(this._subscribers);for(let i=0;i<o.length;i++){let[s,l]=o[i];if(at({ibGib:l})){let c=l;c.complete?await s.unsubscribed()?console.warn(`${t} (UNEXPECTED) subscriber reference still held but is unsubscribed? skipping for now (i.e. won't remove subscriber) in case that code is in yielded execution and just hasn't gotten around to it with event loop (but that would be weird). (W: 1d98f35d2fdd4345954c947265d9fb85)`):await c.complete():O&&console.log(`${t} no error handler for observer. skipping. (I: 6a8a52c2012c464790eb406d2ae0383f)`)}else await l.witness(e)}return W}catch(o){throw console.error(`${t} ${o.message}`),o}finally{O&&console.log(`${t} complete.`)}}async validateThis(){let e=`${this.lc}[${this.validateThis.name}]`;try{return O&&console.log(`${e} starting...`),this.data,[]}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{O&&console.log(`${e} complete.`)}}async argy({argData:e,ibMetadata:t,noTimestamp:o,ibGibs:i}){if(e.cmd===He.subscribe)return super.argy({argData:e,ibMetadata:t,noTimestamp:o,ibGibs:i});{let s=await rt({argData:e,ibMetadata:t,noTimestamp:o});return i&&(s.ibGibs=i),s}}async resulty({resultData:e,ibGibs:t}){let o=await st({resultData:e});return t&&(o.ibGibs=t),o}},En=class n extends gt{static{f(this,"Subject_V1_Factory")}lc=`[${n.name}]`;getName(){return bn.name}async newUp({data:e,rel8ns:t}){let o=`${this.lc}[${this.newUp.name}]`;try{O&&console.log(`${o} starting...`),e??=L(kt),e=e,t=t??Uo?L(Uo):void 0,e.uuid||=await Ie();let{classname:i}=e,s=Jo({data:e}),l=await ke({parentPrimitiveIb:`witness ${i}`,ib:s,data:e,rel8ns:t}),c=new bn(void 0,void 0);return await c.loadIbGibDto(l),O&&console.log(`${o} witnessDto: ${M(l)} (I: 6736d2b2ddf44fef9a1eb27078dfbf23)`),{newIbGib:c}}catch(i){throw console.error(`${o} ${E({error:i})}`),i}finally{O&&console.log(`${o} complete.`)}}async witnessToForm({witness:e}){let t=`${this.lc}[${this.witnessToForm.name}]`;try{O&&console.log(`${t} starting...`);let{data:o}=e;if(!o)throw new Error("(UNEXPECTED) witness.data falsy? (E: 7b70c96e982d4f81b6ffda54da16b3b8)");O&&console.log(`${t} data: ${M(o)} (I: 75abef56f5004a94b2113e3b1461ac25)`);let i=await Kt({n:100}),s=new yn().with({idPool:i}).name({of:o.name,required:!1}).description({of:o.description??an}).and().and().uuid({of:o.uuid,required:!0}).classname({of:o.classname}).and().commonWitnessFields({data:o}).outputForm({formName:"form",label:"observable"});return Promise.resolve(s)}catch(o){throw console.error(`${t} ${E({error:o})}`),o}finally{O&&console.log(`${t} complete.`)}}async formToWitness({form:e}){let t=L(kt);return this.patchDataFromItems({data:t,items:e.items,pathDelimiter:Yt}),await this.newUp({data:t})}};var wn=!1;function Ws({data:n}){let e=`[${Ws.name}]`;try{if(wn&&console.log(`${e} starting...`),!n)throw new Error("Subject Data required (E: 207a82725648e2ef234c8bd3fa1a5312)");let t=[],{name:o,uuid:i,classname:s}=n;return o?o.match(Do)||t.push(`name must match regexp: ${Do} (E: de987eb8fea0b6232f60abf31815095c)`):t.push("name required."),i?i.match(ie)||t.push(`uuid must match regexp: ${ie} (E: 1a6dfda91ad51696f7456bc84dfea60e)`):t.push("uuid required."),s&&(s.match(Le)||t.push(`classname must match regexp: ${Le}`)),t}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{wn&&console.log(`${e} complete.`)}}f(Ws,"validateCommonSubjectData");function Jo({data:n,classname:e}){let t=`[${Jo.name}]`;try{let o=Ws({data:n});if(o.length>0)throw new Error(`invalid Subject data: ${o} (E: 55620ac1f17e30a30a92850219f894ac)`);if(e){if(n.classname&&n.classname!==e)throw new Error("classname does not match data.classname (E: 20e86cca70130839a49ad011c9a7aafa)")}else if(e=n.classname,!e)throw new Error("classname required (E: 74e29ae0f618fee7e7ef72a30c654a6c)");let{name:i,uuid:s}=n;return`witness ${sn} ${e} ${i} ${s}`}catch(o){throw console.error(`${t} ${E(o)}`),o}}f(Jo,"getSubjectIb");var yn=class n extends Mt{static{f(this,"SubjectFormBuilder")}lc=`[${n.name}]`;constructor(){super(),this.what="subject"}};function at({ibGib:n}){let e=`[${at.name}]`;try{return wn&&console.log(`${e} starting... (I: b54c252104f710c12951aa43b6ead323)`),typeof n.next=="function"}catch(t){throw console.error(`${e} ${t.message}`),t}finally{wn&&console.log(`${e} complete.`)}}f(at,"isObserver");async function Xo({data:n,replay:e}={}){let t=new En;return n??=L(kt),e&&(n.replay=!0),(await t.newUp({data:n})).newIbGib}f(Xo,"newupSubject");var ee=J,Xe=class extends rn{static{f(this,"LiveProxyIbGib")}lc="";ib=this._currentWorkingContextIbGib?this._currentWorkingContextIbGib.ib:Qt;gib=this._currentWorkingContextIbGib?this._currentWorkingContextIbGib.gib:ht;data=this._currentWorkingContextIbGib?this._currentWorkingContextIbGib.data:void 0;rel8ns=this._currentWorkingContextIbGib?this._currentWorkingContextIbGib.rel8ns:void 0;async loadNewerSelfIfAvailable(){let e=`${this.lc}[${this.loadNewerSelfIfAvailable.name}]`;try{ee&&console.log(`${e} starting... (I: genuuid)`),console.warn(`${e} does nothing in this class. I just have this warning here because I want to see if this gets executed. (W: genuuid)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{ee&&console.log(`${e} complete.`)}}async loadIbGibDto(e){let t=`${this.lc}[${this.loadIbGibDto.name}]`;try{ee&&console.log(`${t} starting... (I: genuuid)`);debugger;console.warn(`${t} does nothing in this class. I just have this warning here because I want to see if this gets executed. (W: genuuid)`)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{ee&&console.log(`${t} complete.`)}}async validateThis(){let e=`${this.lc}[${this.validateThis.name}]`;return ee&&console.log(`${e} elided in this proxy class because this isn't a true witness atow (04/2025) (I: fd223814f169798d9f499d6e9cdc0325)`),[]}get ibGib(){return this._currentWorkingContextIbGib}spaceId;constructor(e,t){super(e,t)}async initialize(){let e=`${this.lc}[${this.initialize.name}]`;try{ee&&console.log(`${e} starting... (I: 1bd72217a5f334effc63f8d51e7b2225)`),await super.initialize(),this._contextUpdated$=await Xo(),this.contextUpdated$=this._contextUpdated$.asObservable(),this._newContextChild$=await Xo(),this.newContextChild$=this._newContextChild$.asObservable()}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{ee&&console.log(`${e} complete.`)}}parseAddlMetadataString({ib:e}){let t=`${this.lc}[${this.parseAddlMetadataString.name}]`;return console.warn(`${t} not really implemented in this class atow (04/2025). (W: genuuid)`),{}}_initialContext;async witnessImpl(e){let t=`${this.lc}[${this.witnessImpl.name}]`;try{if(ee&&console.log(`${t} starting...`),Fr({ib:e.ib})){if(!e.data)throw new Error("arg has space ib but arg.data is falsy (E: b2af9226c067d5e72f117fa36e239525)");let o=e.data.uuid;return this.spaceId=o,ee&&console.log(`${t} spaceId set to the ${o} (I: 018724a5431ba421b71fad36924c5a25)`),H.primitive({ib:`spaceId set to ${o}`})}else if(this._initialContext){debugger;console.error(`${t} (UNEXPECTED) context already initialized. returning early without doing anything. NOTE: This error was not thrown, only logged. (E: genuuid)`)}else{let o=await this.metaspace?.getLocalUserSpace({localSpaceId:this.spaceId});return await this.setWrappedIbGib({ibGib:e,space:o}),W}}catch(o){throw console.error(`${t} ${o.message}`),o}finally{ee&&console.log(`${t} complete.`)}}_contextUpdated$;contextUpdated$;_newContextChild$;newContextChild$;async handleContextUpdate({update:e}){let t=`${this.lc}[${this.handleContextUpdate.name}]`;try{if(ee&&console.log(`${t} starting... (I: c262bcda065c086ffe9e3ac5899abe25)`),await super.handleContextUpdate({update:e}),!this._contextUpdated$)throw new Error("(UNEXPECTED) this._contextUpdated$ falsy? (E: a184df090502bed9649f8df88bd4c125)");await this._contextUpdated$.next(this._currentWorkingContextIbGib)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{ee&&console.log(`${t} complete.`)}}async setWrappedIbGib({ibGib:e,ibGibAddr:t,space:o}){let i=`${this.lc}[${this.setWrappedIbGib.name}]`;try{if(ee&&console.log(`${i} starting... (I: a4b0acda259c121801aa701534320125)`),this.metaspace||(this.metaspace=await Pe()),!e){if(!t)throw new Error("(UNEXPECTED) both ibGib AND ibGibAddr falsy? (E: 6fac98ba2d4cfdec2b7ee974dec74625)");if(o??=await this.metaspace.getLocalUserSpace({lock:!1}),!o)throw new Error("(UNEXPECTED) space falsy? no space provided and couldn't get default local user space? (E: e14d1b7a6586f99453fc571396d4df25)");let s=await this.metaspace.get({addrs:[t],space:o});if(!s.success||s.ibGibs?.length!==1)throw new Error(`${i} failed to get ibGib(?) (${t}). space.ib: ${o.ib} (E: b38f0a25d92e44c0aa5cc3b038a43c6c)`);e=s.ibGibs.at(0)}await this.initializeContext({contextIbGib:e,rel8nName:""})}catch(s){throw console.error(`${i} ${E(s)}`),s}finally{ee&&console.log(`${i} complete.`)}}async handleNewContextChild({newChild:e}){let t=`[${this.handleNewContextChild.name}]`;try{if(ee&&console.log(`${t} starting... (I: 7e9b6b7a4bb2726e9c717f230dfe1925)`),!this._newContextChild$)throw new Error("(UNEXPECTED) this._contextUpdated$ falsy? (E: a184df090502bed9649f8df88bd4c125)");await this._newContextChild$.next(e)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{ee&&console.log(`${t} complete.`)}}};var bt="witness_agent",Et=/^[a-zA-Z0-9_\-.]{1,32}$/,Yo=/.{1,255}/,Js="",Xs="Manco",Ys="This is a generic, unspecified agent.";var In="List of function info ibgib addresses. These contain info on both the requests you made and the resultant values.",lt="agent",mw={type:"string",description:"unique identifier for the agent. Should be provided to the agent in system instructions upon creation."},gw={type:"string",description:"type of the agent that governs basic responsibilities. Should be provided to the agent in system instructions upon creation."};var yc="hardcoded",wc="human",Ic="ai",Tc="function",_c="unknown",K={HARDCODED:yc,HUMAN:wc,AI:Ic,FUNCTION:Tc,UNKNOWN:_c},zo=Object.freeze(Object.values(K));function zs(n){return!!n&&zo.includes(n)}f(zs,"isTextSource");var bw={type:"string",description:`The agent should pick a name with which to represent him/her/itself to the user. This should not be "Gemini" or something bland like that, rather, it should be a name that the agent likes. Should contain no spaces, only alphanumerics. Note that the example given has a name, but really it should be up to the agent's own preference. Please be consistent with this with yourself, i.e., don't change it once established. Must pass regex: ${Et.source}`},Ks="primaryagent";var Qs=!1;async function Ko({ibGib:n,addr:e,tagIbGib:t,metaspace:o,space:i}){let s=`[${Ko.name}]`;try{if(Qs&&console.log(`${s} starting... (I: b1fd25ec28bce8f1916b4ab55f48a724)`),!e&&!n)throw new Error("either addr or ibGib required (E: 3d580f8ecc251a0c81c7ea8bc3d38524)");if(e??=S({ibGib:n}),e!==S({ibGib:n}))throw new Error(`addr (${e}) differs from incoming ibGib's addr (${S({ibGib:n})}). (E: f2c14234a78c917fb9f587beaee89324)`);let l=await o.getLatestAddr({ibGib:t,space:i});if(l!==S({ibGib:t})){let p=await o.get({addr:l,space:i});if(!p.success||p.ibGibs?.length!==1)throw new Error(`could not get latest tag (${l}) from space (${i.ib}). error: ${p.errorMsg??"[unknown error (E: a4e31c98398b417db8f617f98a5f2741)]"} (E: 73c085d81efdab0e7b8939222ec07524)`);t=p.ibGibs.at(0)}let c={[Ur]:[e]},d=await $e({src:t,rel8nsToAddByAddr:c,dna:!0,nCounter:!0}),u=d.newIbGib;return await o.persistTransformResult({resTransform:d,space:i}),await o.registerNewIbGib({ibGib:u,space:i}),u}catch(l){throw console.error(`${s} ${E(l)}`),l}finally{Qs&&console.log(`${s} complete.`)}}f(Ko,"rel8ToTag");var j=J,Zo=class n{static{f(this,"AgentsService_V1")}lc=`[${n.name}]`;latestAgents=new Map;factoryFns={};constructor(){}async getAgentById(e){let t=`${this.lc}[${this.getAgentById.name}]`;try{let{agentId:o,agentType:i,spaceId:s}=e;j&&console.log(`${t} starting... (I: 0c4214b4614a43bd2825978e54aee325)`);let l=this.latestAgents.get(o);if(!l){let c=await Pe();l=(await Tn({metaspace:c,type:i,spaceId:s})).find(u=>u.data.uuid===o)}return l||console.warn(`${t} couldn't find any agent by id. opts: ${M(e)} (W: 70cf51ecbe68dfdcfe1e9995a7468f25)`),l}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{j&&console.log(`${t} complete.`)}}async updateOrSetLatestAgent({agent:e,throwIfNewerFound:t}){let o=`${this.lc}[${this.updateOrSetLatestAgent.name}]`;try{if(j&&console.log(`${o} starting... (I: 9bb74f19b989fc0ee969cb4c2c2aa525)`),!e.data)throw new Error(`invalid agent. data falsy. agent.ib: ${e.ib} (E: 7356db7395cb0c5664d13437dd62c425)`);if(!e.data.uuid)throw new Error(`invalid agent. data.uuid falsy. agent.ib: ${e.ib} (E: 48afcd6658154bee1138fca31cbfbf25)`);let i=await this.getLatestAgent({id:e.data.uuid});if(i){if(!i.data)throw new Error("(UNEXPECTED) existing.data falsy? should have thrown on previous set function call? (E: f3cbae9922ea9849ada25db2eea40825)");if(i.data.n===e.data.n){if(i.gib===e.gib)return;console.warn(`existing.data.n === agent.data.n but gibs are different. We have a branched timeline. just logging this error, need to figure out wth is going on here. we should not have this with the timeline being locked. The only thing I can think of is if the ibgib is updated very quickly, but even then, the n should be incremented. still the approach is valid. anyway, we're going ahead and taking the newer agent.
|
|
172
|
+
existing: ${M(ne({ibGib:i}))}
|
|
173
|
+
new: ${M(ne({ibGib:e}))} (E: 5e079b566ff3533acdb2d01359f08625)`),await i.loadIbGibDto(e.toIbGibDto()),this.latestAgents.set(e.data.uuid,e);return}else if(i.data.n>e.data.n){let s="existing.data.n > agent.data.n, i.e., the one we already have is newer. So why was the caller trying to set to the older agent thinking it was the most recent? Probably have a branched timeline.";if(t)throw new Error(`${o} ${s} (E: bb2cc3ce8cfa88b80fb62149b0e70225)`);console.warn(`${o} ${s} (W: caaf66deb4e6fd8e2eb9261685dc0325)`);return}else{await i.loadIbGibDto(e.toIbGibDto()),this.latestAgents.set(e.data.uuid,e);return}}else{this.latestAgents.set(e.data.uuid,e);return}}catch(i){throw console.error(`${o} ${E(i)}`),i}finally{j&&console.log(`${o} complete.`)}}getLatestAgent({id:e}){let t=`${this.lc}[${this.getLatestAgent.name}]`;try{return j&&console.log(`${t} starting... (I: 8e85b55057760b712a913a92e88ead25)`),Promise.resolve(this.latestAgents.get(e))}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{j&&console.log(`${t} complete.`)}}registerFactory({classname:e,fnDtoToAgentWitness:t}){this.factoryFns[e]=t}async getAgentWitnessFromDto({dto:e,classname:t}){let o=`${this.lc}[${this.getAgentWitnessFromDto.name}]`;try{if(j&&console.log(`${o} starting... (I: 718837d4ee3d590177f3425b99106225)`),!e.data)throw new Error("dto.data falsy (E: fad89dd4c787b687a657c13968946925)");let i;if(t??=e.data.classname,t){let s=this.factoryFns[t],l=await s(e);if(l.applies){if(!l.agent)throw new Error("(UNEXPECTED) factory function for agent dto applies: true, but the resulting agent is undefined? (E: b13cdf0f3d9c50f1fa419f2c409ebf25)");i=l.agent}else throw new Error(`classname (${t}) factory function found and attempted, but result says applied: false. (E: 751a2502c9a7e2d61c76c8ae2f7fb125)`)}else{let s=Object.keys(this.factoryFns);for(let l of s){let c=this.factoryFns[l],d=await c(e);if(d.applies){if(!d.agent)throw new Error("(UNEXPECTED) factory function for agent dto applies: true, but the resulting agent is undefined? (E: 60e97c083a668baf11efcd6adf6a3525)");i=d.agent;break}}}return i}catch(i){throw console.error(`${o} ${E(i)}`),i}finally{j&&console.log(`${o} complete.`)}}async getAgentByAddr({agentAddr:e,spaceId:t,metaspace:o}){let i=`${this.lc}[${this.getAgentByAddr.name}]`;try{if(j&&console.log(`${i} starting... (I: 42dfecbe6d6b5a3a7d392af5a66cc625)`),!e)throw new Error(`${i} agentAddr is required. (E: 389351659a2e08fa179ceede16925a25)`);let{ib:s}=pe({ibGibAddr:e}),{uuid:l,type:c}=Zs({ib:s});if(!l){debugger;throw new Error(`(UNEXPECTED) agentAddr doesn't have uuid in the ib? agentAddr: ${e} (E: fedcacffed98fdc78b1e80e45c413925)`)}let d=await this.getAgentById({agentId:l,agentType:c});if(d)return j&&console.log(`${i} agent found already in agents svc so didn't need to go get it from the space. (I: ec6abaf3badd8e301d79a7476845bc25)`),d;o??=await Pe();let u=await o.getLocalUserSpace({localSpaceId:t,lock:!1});if(!u)throw t?new Error(`couldn't get space with spaceId (${t}) (E: 26b3f1414a93cc339e704d0162cb8b25)`):new Error("(UNEXPECTED) couldn't get default local user space? (E: 2e19a1fae8b3f00595257f51426ac225)");let p=await o.get({addrs:[e],space:u});if(!p.success||!p.ibGibs||p.ibGibs.length===0){j&&console.log(`${i} Agent ibGib not found in space (${t}) at address ${e}. (I: 29c5c7994fb3ed388b28a81a9ed68325)`);return}let h=p.ibGibs[0],m=await this.getAgentWitnessFromDto({dto:h});if(!m){debugger;throw new Error(`${i} Couldn't get actual agent witness from agent dto (${e}). Have we registered classname (${h.data?.classname}) and factory fn with agents service? (E: e6e9da6c91d14bd7acb5c571c8de1a25)`)}return await this.updateOrSetLatestAgent({agent:m,throwIfNewerFound:!0}),j&&console.log(`${i} Cached agent witness with id ${l}. (I: b862f63147a3fac3c6e6210d5ab87c25)`),j&&console.log(`${i} complete. Retrieved and cached agent witness for address ${e}.`),m}catch(s){throw console.error(`${i} ${E(s)}`),s}}async createNewAgent(e){let t=`[${this.createNewAgent.name}]`;try{j&&console.log(`${t} starting... (I: a3e07b54bb7bf45f7739eff2d738c825)`);let{metaspace:o,superSpace:i,name:s,availableFunctions:l,initialSystemText:c,initialChatText:d,fnGetAPIKey:u,addToAgentsTag:p,type:h}=e;if(i??=await o.getLocalUserSpace({}),!i)throw new Error("(UNEXPECTED) superSpace falsy? (E: ceb60d96ff25b6d6aaa5aa69a7a51d25)");if(!i.data)throw new Error("(UNEXPECTED) superSpace.data falsy? (E: 56b4ec127f8559da96e6f70c7cb13825)");let m=ei(e),g=await m.createInitialData(i);if(!g.uuid)throw new Error("(UNEXPECTED) data.uuid falsy? (E: 4e4f6fcf89d1e3775971ad843a083725)");let b=await o.createLocalSpaceAndUpdateBootstrap({allowCancel:!1,zeroSpace:o.zeroSpace,spaceName:s+g.uuid.substring(0,5),createBootstrap:!1});if(!b)throw new Error("(UNEXPECTED) newSubSpace falsy after creating locally? (E: af8b5503c15d4292e2f591b316e7d825)");g.subSpaceId=b.data.uuid;let y=await m.createInitialRel8ns(),w=await H.firstGen({ib:ti({data:g}),parentIbGib:H.primitive({ib:bt}),data:g,rel8ns:y,nCounter:!0,dna:!0,tjp:{timestamp:!0}});await o.persistTransformResult({resTransform:w});let I=w.newIbGib,T=await m.createWitness();if(T.fnGetAPIKey=u,await T.loadIbGibDto(I),p){let C=await jo({metaspace:o,space:i}),v=await Ko({ibGib:I,metaspace:o,space:i,tagIbGib:C})}await tt({type:h,rel8nInfos:[{rel8nName:lt,ibGibs:[I]}],metaspace:o,space:i}),l.length>0&&await T.addAvailableFunctions(l);let _=[];return _.push({textSrc:"hardcoded",text:yt({tagText:Xr,contentText:`Your id (agent id) is: ${g.uuid}. Your superSpaceId is: ${g.superSpaceId}. Your subSpaceId is: ${g.subSpaceId}. These may be useful/required in some functions, though you should refer to those functions' instructions/descriptions for applicability.`}),isSystem:!0}),c&&_.push({textSrc:"hardcoded",text:c,isSystem:!0}),d&&_.push({textSrc:"hardcoded",text:d}),await T.addTexts({infos:_}),this.latestAgents.set(T.data.uuid,T),T}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{j&&console.log(`${t} complete.`)}}getAgents(e){let t=`${this.lc}[${this.getAgents.name}]`;try{return j&&console.log(`${t} starting... (I: 4663f125c3a21fa3ecccc2c5a38d1225)`),Tn(e)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{j&&console.log(`${t} complete.`)}}},Qo;function Ae(){return Qo||(Qo=new Zo),Qo}f(Ae,"getAgentsSvc");var Cc="gemini-3.1-pro-preview",Ac="gemini-3-flash-preview",Sc="gemini-3.1-flash-lite-preview",vc="gemini-3.1-flash-live-preview",$c="gemini-2.5-pro",Nc="gemini-2.5-flash",Pc="gemini-2.5-flash-lite",Rc="gemini-2.5-flash-preview-tts",xc="gemini-2.0-flash",Gc="gemini-2.0-flash-lite",ni={GEMINI_3_1_PRO_PREVIEW:Cc,GEMINI_3_FLASH_PREVIEW:Ac,GEMINI_3_1_FLASH_LITE_PREVIEW:Sc,GEMINI_3_1_FLASH_LIVE_PREVIEW:vc,GEMINI_2_5_PRO:$c,GEMINI_2_5_FLASH:Nc,GEMINI_2_5_FLASH_LITE:Pc,GEMINI_2_5_FLASH_PREVIEW_TTS:Rc,GEMINI_2_0_FLASH:xc,GEMINI_2_0_FLASH_LITE:Gc},kw=Object.freeze(Object.values(ni));var js=ni.GEMINI_2_5_FLASH,wt=ni.GEMINI_2_5_FLASH_LITE,oi=5;var ea={version:"1",uuid:Js,name:Xs,description:Ys,classname:"AgentWitness_V1",icon:"happy",persistOptsAndResultIbGibs:!1,allowPrimitiveArgs:!0,catchAllErrors:!0,trace:!1,subSpaceId:"",superSpaceId:"",availableFunctionNameOrIds:[],model:js,api:"gemini",type:Ks,"@currentContextTjpAddr":re},ii=void 0;var Mc,Dc;function Uc(){return{geminiUrl:Mc,vertexUrl:Dc}}f(Uc,"getDefaultBaseUrls");function Lc(n,e,t,o){var i,s;if(!n?.baseUrl){let l=Uc();return e?(i=l.vertexUrl)!==null&&i!==void 0?i:t:(s=l.geminiUrl)!==null&&s!==void 0?s:o}return n.baseUrl}f(Lc,"getBaseUrl");var Ee=class{static{f(this,"BaseModule")}};function A(n,e){let t=/\{([^}]+)\}/g;return n.replace(t,(o,i)=>{if(Object.prototype.hasOwnProperty.call(e,i)){let s=e[i];return s!=null?String(s):""}else throw new Error(`Key '${i}' not found in valueMap.`)})}f(A,"formatMap");function a(n,e,t){for(let s=0;s<e.length-1;s++){let l=e[s];if(l.endsWith("[]")){let c=l.slice(0,-2);if(!(c in n))if(Array.isArray(t))n[c]=Array.from({length:t.length},()=>({}));else throw new Error(`Value must be a list given an array path ${l}`);if(Array.isArray(n[c])){let d=n[c];if(Array.isArray(t))for(let u=0;u<d.length;u++){let p=d[u];a(p,e.slice(s+1),t[u])}else for(let u of d)a(u,e.slice(s+1),t)}return}else if(l.endsWith("[0]")){let c=l.slice(0,-3);c in n||(n[c]=[{}]);let d=n[c];a(d[0],e.slice(s+1),t);return}(!n[l]||typeof n[l]!="object")&&(n[l]={}),n=n[l]}let o=e[e.length-1],i=n[o];if(i!==void 0){if(!t||typeof t=="object"&&Object.keys(t).length===0||t===i)return;if(typeof i=="object"&&typeof t=="object"&&i!==null&&t!==null)Object.assign(i,t);else throw new Error(`Cannot set value for an existing key. Key: ${o}`)}else o==="_self"&&typeof t=="object"&&t!==null&&!Array.isArray(t)?Object.assign(n,t):n[o]=t}f(a,"setValueByPath");function r(n,e,t=void 0){try{if(e.length===1&&e[0]==="_self")return n;for(let o=0;o<e.length;o++){if(typeof n!="object"||n===null)return t;let i=e[o];if(i.endsWith("[]")){let s=i.slice(0,-2);if(s in n){let l=n[s];return Array.isArray(l)?l.map(c=>r(c,e.slice(o+1),t)):t}else return t}else n=n[i]}return n}catch(o){if(o instanceof TypeError)return t;throw o}}f(r,"getValueByPath");function Fc(n,e){for(let[t,o]of Object.entries(e)){let i=t.split("."),s=o.split("."),l=new Set,c=-1;for(let d=0;d<i.length;d++)if(i[d]==="*"){c=d;break}if(c!==-1&&s.length>c)for(let d=c;d<s.length;d++){let u=s[d];u!=="*"&&!u.endsWith("[]")&&!u.endsWith("[0]")&&l.add(u)}li(n,i,s,0,l)}}f(Fc,"moveValueByPath");function li(n,e,t,o,i){if(o>=e.length||typeof n!="object"||n===null)return;let s=e[o];if(s.endsWith("[]")){let l=s.slice(0,-2),c=n;if(l in c&&Array.isArray(c[l]))for(let d of c[l])li(d,e,t,o+1,i)}else if(s==="*"){if(typeof n=="object"&&n!==null&&!Array.isArray(n)){let l=n,c=Object.keys(l).filter(u=>!u.startsWith("_")&&!i.has(u)),d={};for(let u of c)d[u]=l[u];for(let[u,p]of Object.entries(d)){let h=[];for(let m of t.slice(o))m==="*"?h.push(u):h.push(m);a(l,h,p)}for(let u of c)delete l[u]}}else{let l=n;s in l&&li(l[s],e,t,o+1,i)}}f(li,"_moveValueRecursive");function sr(n){if(typeof n!="string")throw new Error("fromImageBytes must be a string");return n}f(sr,"tBytes$1");function kc(n){let e={},t=r(n,["operationName"]);t!=null&&a(e,["operationName"],t);let o=r(n,["resourceName"]);return o!=null&&a(e,["_url","resourceName"],o),e}f(kc,"fetchPredictOperationParametersToVertex");function Vc(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["metadata"]);o!=null&&a(e,["metadata"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);s!=null&&a(e,["error"],s);let l=r(n,["response","generateVideoResponse"]);return l!=null&&a(e,["response"],Oc(l)),e}f(Vc,"generateVideosOperationFromMldev$1");function qc(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["metadata"]);o!=null&&a(e,["metadata"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);s!=null&&a(e,["error"],s);let l=r(n,["response"]);return l!=null&&a(e,["response"],Hc(l)),e}f(qc,"generateVideosOperationFromVertex$1");function Oc(n){let e={},t=r(n,["generatedSamples"]);if(t!=null){let s=t;Array.isArray(s)&&(s=s.map(l=>Bc(l))),a(e,["generatedVideos"],s)}let o=r(n,["raiMediaFilteredCount"]);o!=null&&a(e,["raiMediaFilteredCount"],o);let i=r(n,["raiMediaFilteredReasons"]);return i!=null&&a(e,["raiMediaFilteredReasons"],i),e}f(Oc,"generateVideosResponseFromMldev$1");function Hc(n){let e={},t=r(n,["videos"]);if(t!=null){let s=t;Array.isArray(s)&&(s=s.map(l=>Wc(l))),a(e,["generatedVideos"],s)}let o=r(n,["raiMediaFilteredCount"]);o!=null&&a(e,["raiMediaFilteredCount"],o);let i=r(n,["raiMediaFilteredReasons"]);return i!=null&&a(e,["raiMediaFilteredReasons"],i),e}f(Hc,"generateVideosResponseFromVertex$1");function Bc(n){let e={},t=r(n,["video"]);return t!=null&&a(e,["video"],Qc(t)),e}f(Bc,"generatedVideoFromMldev$1");function Wc(n){let e={},t=r(n,["_self"]);return t!=null&&a(e,["video"],Zc(t)),e}f(Wc,"generatedVideoFromVertex$1");function Jc(n){let e={},t=r(n,["operationName"]);return t!=null&&a(e,["_url","operationName"],t),e}f(Jc,"getOperationParametersToMldev");function Xc(n){let e={},t=r(n,["operationName"]);return t!=null&&a(e,["_url","operationName"],t),e}f(Xc,"getOperationParametersToVertex");function Yc(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["metadata"]);o!=null&&a(e,["metadata"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);s!=null&&a(e,["error"],s);let l=r(n,["response"]);return l!=null&&a(e,["response"],zc(l)),e}f(Yc,"importFileOperationFromMldev$1");function zc(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["parent"]);o!=null&&a(e,["parent"],o);let i=r(n,["documentName"]);return i!=null&&a(e,["documentName"],i),e}f(zc,"importFileResponseFromMldev$1");function _l(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["metadata"]);o!=null&&a(e,["metadata"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);s!=null&&a(e,["error"],s);let l=r(n,["response"]);return l!=null&&a(e,["response"],Kc(l)),e}f(_l,"uploadToFileSearchStoreOperationFromMldev");function Kc(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["parent"]);o!=null&&a(e,["parent"],o);let i=r(n,["documentName"]);return i!=null&&a(e,["documentName"],i),e}f(Kc,"uploadToFileSearchStoreResponseFromMldev");function Qc(n){let e={},t=r(n,["uri"]);t!=null&&a(e,["uri"],t);let o=r(n,["encodedVideo"]);o!=null&&a(e,["videoBytes"],sr(o));let i=r(n,["encoding"]);return i!=null&&a(e,["mimeType"],i),e}f(Qc,"videoFromMldev$1");function Zc(n){let e={},t=r(n,["gcsUri"]);t!=null&&a(e,["uri"],t);let o=r(n,["bytesBase64Encoded"]);o!=null&&a(e,["videoBytes"],sr(o));let i=r(n,["mimeType"]);return i!=null&&a(e,["mimeType"],i),e}f(Zc,"videoFromVertex$1");var ta;(function(n){n.OUTCOME_UNSPECIFIED="OUTCOME_UNSPECIFIED",n.OUTCOME_OK="OUTCOME_OK",n.OUTCOME_FAILED="OUTCOME_FAILED",n.OUTCOME_DEADLINE_EXCEEDED="OUTCOME_DEADLINE_EXCEEDED"})(ta||(ta={}));var na;(function(n){n.LANGUAGE_UNSPECIFIED="LANGUAGE_UNSPECIFIED",n.PYTHON="PYTHON"})(na||(na={}));var oa;(function(n){n.SCHEDULING_UNSPECIFIED="SCHEDULING_UNSPECIFIED",n.SILENT="SILENT",n.WHEN_IDLE="WHEN_IDLE",n.INTERRUPT="INTERRUPT"})(oa||(oa={}));var Ye;(function(n){n.TYPE_UNSPECIFIED="TYPE_UNSPECIFIED",n.STRING="STRING",n.NUMBER="NUMBER",n.INTEGER="INTEGER",n.BOOLEAN="BOOLEAN",n.ARRAY="ARRAY",n.OBJECT="OBJECT",n.NULL="NULL"})(Ye||(Ye={}));var ia;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.MODE_DYNAMIC="MODE_DYNAMIC"})(ia||(ia={}));var ra;(function(n){n.API_SPEC_UNSPECIFIED="API_SPEC_UNSPECIFIED",n.SIMPLE_SEARCH="SIMPLE_SEARCH",n.ELASTIC_SEARCH="ELASTIC_SEARCH"})(ra||(ra={}));var sa;(function(n){n.AUTH_TYPE_UNSPECIFIED="AUTH_TYPE_UNSPECIFIED",n.NO_AUTH="NO_AUTH",n.API_KEY_AUTH="API_KEY_AUTH",n.HTTP_BASIC_AUTH="HTTP_BASIC_AUTH",n.GOOGLE_SERVICE_ACCOUNT_AUTH="GOOGLE_SERVICE_ACCOUNT_AUTH",n.OAUTH="OAUTH",n.OIDC_AUTH="OIDC_AUTH"})(sa||(sa={}));var aa;(function(n){n.HTTP_IN_UNSPECIFIED="HTTP_IN_UNSPECIFIED",n.HTTP_IN_QUERY="HTTP_IN_QUERY",n.HTTP_IN_HEADER="HTTP_IN_HEADER",n.HTTP_IN_PATH="HTTP_IN_PATH",n.HTTP_IN_BODY="HTTP_IN_BODY",n.HTTP_IN_COOKIE="HTTP_IN_COOKIE"})(aa||(aa={}));var la;(function(n){n.PHISH_BLOCK_THRESHOLD_UNSPECIFIED="PHISH_BLOCK_THRESHOLD_UNSPECIFIED",n.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",n.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",n.BLOCK_HIGH_AND_ABOVE="BLOCK_HIGH_AND_ABOVE",n.BLOCK_HIGHER_AND_ABOVE="BLOCK_HIGHER_AND_ABOVE",n.BLOCK_VERY_HIGH_AND_ABOVE="BLOCK_VERY_HIGH_AND_ABOVE",n.BLOCK_ONLY_EXTREMELY_HIGH="BLOCK_ONLY_EXTREMELY_HIGH"})(la||(la={}));var ca;(function(n){n.THINKING_LEVEL_UNSPECIFIED="THINKING_LEVEL_UNSPECIFIED",n.LOW="LOW",n.HIGH="HIGH"})(ca||(ca={}));var da;(function(n){n.HARM_CATEGORY_UNSPECIFIED="HARM_CATEGORY_UNSPECIFIED",n.HARM_CATEGORY_HARASSMENT="HARM_CATEGORY_HARASSMENT",n.HARM_CATEGORY_HATE_SPEECH="HARM_CATEGORY_HATE_SPEECH",n.HARM_CATEGORY_SEXUALLY_EXPLICIT="HARM_CATEGORY_SEXUALLY_EXPLICIT",n.HARM_CATEGORY_DANGEROUS_CONTENT="HARM_CATEGORY_DANGEROUS_CONTENT",n.HARM_CATEGORY_CIVIC_INTEGRITY="HARM_CATEGORY_CIVIC_INTEGRITY",n.HARM_CATEGORY_IMAGE_HATE="HARM_CATEGORY_IMAGE_HATE",n.HARM_CATEGORY_IMAGE_DANGEROUS_CONTENT="HARM_CATEGORY_IMAGE_DANGEROUS_CONTENT",n.HARM_CATEGORY_IMAGE_HARASSMENT="HARM_CATEGORY_IMAGE_HARASSMENT",n.HARM_CATEGORY_IMAGE_SEXUALLY_EXPLICIT="HARM_CATEGORY_IMAGE_SEXUALLY_EXPLICIT",n.HARM_CATEGORY_JAILBREAK="HARM_CATEGORY_JAILBREAK"})(da||(da={}));var ua;(function(n){n.HARM_BLOCK_METHOD_UNSPECIFIED="HARM_BLOCK_METHOD_UNSPECIFIED",n.SEVERITY="SEVERITY",n.PROBABILITY="PROBABILITY"})(ua||(ua={}));var fa;(function(n){n.HARM_BLOCK_THRESHOLD_UNSPECIFIED="HARM_BLOCK_THRESHOLD_UNSPECIFIED",n.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",n.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",n.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",n.BLOCK_NONE="BLOCK_NONE",n.OFF="OFF"})(fa||(fa={}));var pa;(function(n){n.FINISH_REASON_UNSPECIFIED="FINISH_REASON_UNSPECIFIED",n.STOP="STOP",n.MAX_TOKENS="MAX_TOKENS",n.SAFETY="SAFETY",n.RECITATION="RECITATION",n.LANGUAGE="LANGUAGE",n.OTHER="OTHER",n.BLOCKLIST="BLOCKLIST",n.PROHIBITED_CONTENT="PROHIBITED_CONTENT",n.SPII="SPII",n.MALFORMED_FUNCTION_CALL="MALFORMED_FUNCTION_CALL",n.IMAGE_SAFETY="IMAGE_SAFETY",n.UNEXPECTED_TOOL_CALL="UNEXPECTED_TOOL_CALL",n.IMAGE_PROHIBITED_CONTENT="IMAGE_PROHIBITED_CONTENT",n.NO_IMAGE="NO_IMAGE",n.IMAGE_RECITATION="IMAGE_RECITATION",n.IMAGE_OTHER="IMAGE_OTHER"})(pa||(pa={}));var ha;(function(n){n.HARM_PROBABILITY_UNSPECIFIED="HARM_PROBABILITY_UNSPECIFIED",n.NEGLIGIBLE="NEGLIGIBLE",n.LOW="LOW",n.MEDIUM="MEDIUM",n.HIGH="HIGH"})(ha||(ha={}));var ma;(function(n){n.HARM_SEVERITY_UNSPECIFIED="HARM_SEVERITY_UNSPECIFIED",n.HARM_SEVERITY_NEGLIGIBLE="HARM_SEVERITY_NEGLIGIBLE",n.HARM_SEVERITY_LOW="HARM_SEVERITY_LOW",n.HARM_SEVERITY_MEDIUM="HARM_SEVERITY_MEDIUM",n.HARM_SEVERITY_HIGH="HARM_SEVERITY_HIGH"})(ma||(ma={}));var ga;(function(n){n.URL_RETRIEVAL_STATUS_UNSPECIFIED="URL_RETRIEVAL_STATUS_UNSPECIFIED",n.URL_RETRIEVAL_STATUS_SUCCESS="URL_RETRIEVAL_STATUS_SUCCESS",n.URL_RETRIEVAL_STATUS_ERROR="URL_RETRIEVAL_STATUS_ERROR",n.URL_RETRIEVAL_STATUS_PAYWALL="URL_RETRIEVAL_STATUS_PAYWALL",n.URL_RETRIEVAL_STATUS_UNSAFE="URL_RETRIEVAL_STATUS_UNSAFE"})(ga||(ga={}));var ba;(function(n){n.BLOCKED_REASON_UNSPECIFIED="BLOCKED_REASON_UNSPECIFIED",n.SAFETY="SAFETY",n.OTHER="OTHER",n.BLOCKLIST="BLOCKLIST",n.PROHIBITED_CONTENT="PROHIBITED_CONTENT",n.IMAGE_SAFETY="IMAGE_SAFETY",n.MODEL_ARMOR="MODEL_ARMOR",n.JAILBREAK="JAILBREAK"})(ba||(ba={}));var Ea;(function(n){n.TRAFFIC_TYPE_UNSPECIFIED="TRAFFIC_TYPE_UNSPECIFIED",n.ON_DEMAND="ON_DEMAND",n.PROVISIONED_THROUGHPUT="PROVISIONED_THROUGHPUT"})(Ea||(Ea={}));var Pn;(function(n){n.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",n.TEXT="TEXT",n.IMAGE="IMAGE",n.AUDIO="AUDIO"})(Pn||(Pn={}));var ya;(function(n){n.MEDIA_RESOLUTION_UNSPECIFIED="MEDIA_RESOLUTION_UNSPECIFIED",n.MEDIA_RESOLUTION_LOW="MEDIA_RESOLUTION_LOW",n.MEDIA_RESOLUTION_MEDIUM="MEDIA_RESOLUTION_MEDIUM",n.MEDIA_RESOLUTION_HIGH="MEDIA_RESOLUTION_HIGH"})(ya||(ya={}));var wa;(function(n){n.TUNING_MODE_UNSPECIFIED="TUNING_MODE_UNSPECIFIED",n.TUNING_MODE_FULL="TUNING_MODE_FULL",n.TUNING_MODE_PEFT_ADAPTER="TUNING_MODE_PEFT_ADAPTER"})(wa||(wa={}));var Ia;(function(n){n.ADAPTER_SIZE_UNSPECIFIED="ADAPTER_SIZE_UNSPECIFIED",n.ADAPTER_SIZE_ONE="ADAPTER_SIZE_ONE",n.ADAPTER_SIZE_TWO="ADAPTER_SIZE_TWO",n.ADAPTER_SIZE_FOUR="ADAPTER_SIZE_FOUR",n.ADAPTER_SIZE_EIGHT="ADAPTER_SIZE_EIGHT",n.ADAPTER_SIZE_SIXTEEN="ADAPTER_SIZE_SIXTEEN",n.ADAPTER_SIZE_THIRTY_TWO="ADAPTER_SIZE_THIRTY_TWO"})(Ia||(Ia={}));var ci;(function(n){n.JOB_STATE_UNSPECIFIED="JOB_STATE_UNSPECIFIED",n.JOB_STATE_QUEUED="JOB_STATE_QUEUED",n.JOB_STATE_PENDING="JOB_STATE_PENDING",n.JOB_STATE_RUNNING="JOB_STATE_RUNNING",n.JOB_STATE_SUCCEEDED="JOB_STATE_SUCCEEDED",n.JOB_STATE_FAILED="JOB_STATE_FAILED",n.JOB_STATE_CANCELLING="JOB_STATE_CANCELLING",n.JOB_STATE_CANCELLED="JOB_STATE_CANCELLED",n.JOB_STATE_PAUSED="JOB_STATE_PAUSED",n.JOB_STATE_EXPIRED="JOB_STATE_EXPIRED",n.JOB_STATE_UPDATING="JOB_STATE_UPDATING",n.JOB_STATE_PARTIALLY_SUCCEEDED="JOB_STATE_PARTIALLY_SUCCEEDED"})(ci||(ci={}));var Ta;(function(n){n.TUNING_TASK_UNSPECIFIED="TUNING_TASK_UNSPECIFIED",n.TUNING_TASK_I2V="TUNING_TASK_I2V",n.TUNING_TASK_T2V="TUNING_TASK_T2V",n.TUNING_TASK_R2V="TUNING_TASK_R2V"})(Ta||(Ta={}));var _a;(function(n){n.MEDIA_RESOLUTION_UNSPECIFIED="MEDIA_RESOLUTION_UNSPECIFIED",n.MEDIA_RESOLUTION_LOW="MEDIA_RESOLUTION_LOW",n.MEDIA_RESOLUTION_MEDIUM="MEDIA_RESOLUTION_MEDIUM",n.MEDIA_RESOLUTION_HIGH="MEDIA_RESOLUTION_HIGH"})(_a||(_a={}));var Ca;(function(n){n.FEATURE_SELECTION_PREFERENCE_UNSPECIFIED="FEATURE_SELECTION_PREFERENCE_UNSPECIFIED",n.PRIORITIZE_QUALITY="PRIORITIZE_QUALITY",n.BALANCED="BALANCED",n.PRIORITIZE_COST="PRIORITIZE_COST"})(Ca||(Ca={}));var Aa;(function(n){n.UNSPECIFIED="UNSPECIFIED",n.BLOCKING="BLOCKING",n.NON_BLOCKING="NON_BLOCKING"})(Aa||(Aa={}));var Sa;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.MODE_DYNAMIC="MODE_DYNAMIC"})(Sa||(Sa={}));var va;(function(n){n.ENVIRONMENT_UNSPECIFIED="ENVIRONMENT_UNSPECIFIED",n.ENVIRONMENT_BROWSER="ENVIRONMENT_BROWSER"})(va||(va={}));var Rn;(function(n){n.MODE_UNSPECIFIED="MODE_UNSPECIFIED",n.AUTO="AUTO",n.ANY="ANY",n.NONE="NONE",n.VALIDATED="VALIDATED"})(Rn||(Rn={}));var $a;(function(n){n.BLOCK_LOW_AND_ABOVE="BLOCK_LOW_AND_ABOVE",n.BLOCK_MEDIUM_AND_ABOVE="BLOCK_MEDIUM_AND_ABOVE",n.BLOCK_ONLY_HIGH="BLOCK_ONLY_HIGH",n.BLOCK_NONE="BLOCK_NONE"})($a||($a={}));var Na;(function(n){n.DONT_ALLOW="DONT_ALLOW",n.ALLOW_ADULT="ALLOW_ADULT",n.ALLOW_ALL="ALLOW_ALL"})(Na||(Na={}));var Pa;(function(n){n.auto="auto",n.en="en",n.ja="ja",n.ko="ko",n.hi="hi",n.zh="zh",n.pt="pt",n.es="es"})(Pa||(Pa={}));var Ra;(function(n){n.MASK_MODE_DEFAULT="MASK_MODE_DEFAULT",n.MASK_MODE_USER_PROVIDED="MASK_MODE_USER_PROVIDED",n.MASK_MODE_BACKGROUND="MASK_MODE_BACKGROUND",n.MASK_MODE_FOREGROUND="MASK_MODE_FOREGROUND",n.MASK_MODE_SEMANTIC="MASK_MODE_SEMANTIC"})(Ra||(Ra={}));var xa;(function(n){n.CONTROL_TYPE_DEFAULT="CONTROL_TYPE_DEFAULT",n.CONTROL_TYPE_CANNY="CONTROL_TYPE_CANNY",n.CONTROL_TYPE_SCRIBBLE="CONTROL_TYPE_SCRIBBLE",n.CONTROL_TYPE_FACE_MESH="CONTROL_TYPE_FACE_MESH"})(xa||(xa={}));var Ga;(function(n){n.SUBJECT_TYPE_DEFAULT="SUBJECT_TYPE_DEFAULT",n.SUBJECT_TYPE_PERSON="SUBJECT_TYPE_PERSON",n.SUBJECT_TYPE_ANIMAL="SUBJECT_TYPE_ANIMAL",n.SUBJECT_TYPE_PRODUCT="SUBJECT_TYPE_PRODUCT"})(Ga||(Ga={}));var Ma;(function(n){n.EDIT_MODE_DEFAULT="EDIT_MODE_DEFAULT",n.EDIT_MODE_INPAINT_REMOVAL="EDIT_MODE_INPAINT_REMOVAL",n.EDIT_MODE_INPAINT_INSERTION="EDIT_MODE_INPAINT_INSERTION",n.EDIT_MODE_OUTPAINT="EDIT_MODE_OUTPAINT",n.EDIT_MODE_CONTROLLED_EDITING="EDIT_MODE_CONTROLLED_EDITING",n.EDIT_MODE_STYLE="EDIT_MODE_STYLE",n.EDIT_MODE_BGSWAP="EDIT_MODE_BGSWAP",n.EDIT_MODE_PRODUCT_IMAGE="EDIT_MODE_PRODUCT_IMAGE"})(Ma||(Ma={}));var Da;(function(n){n.FOREGROUND="FOREGROUND",n.BACKGROUND="BACKGROUND",n.PROMPT="PROMPT",n.SEMANTIC="SEMANTIC",n.INTERACTIVE="INTERACTIVE"})(Da||(Da={}));var Ua;(function(n){n.ASSET="ASSET",n.STYLE="STYLE"})(Ua||(Ua={}));var La;(function(n){n.INSERT="INSERT",n.REMOVE="REMOVE",n.REMOVE_STATIC="REMOVE_STATIC",n.OUTPAINT="OUTPAINT"})(La||(La={}));var Fa;(function(n){n.OPTIMIZED="OPTIMIZED",n.LOSSLESS="LOSSLESS"})(Fa||(Fa={}));var ka;(function(n){n.SUPERVISED_FINE_TUNING="SUPERVISED_FINE_TUNING",n.PREFERENCE_TUNING="PREFERENCE_TUNING"})(ka||(ka={}));var Va;(function(n){n.STATE_UNSPECIFIED="STATE_UNSPECIFIED",n.STATE_PENDING="STATE_PENDING",n.STATE_ACTIVE="STATE_ACTIVE",n.STATE_FAILED="STATE_FAILED"})(Va||(Va={}));var qa;(function(n){n.STATE_UNSPECIFIED="STATE_UNSPECIFIED",n.PROCESSING="PROCESSING",n.ACTIVE="ACTIVE",n.FAILED="FAILED"})(qa||(qa={}));var Oa;(function(n){n.SOURCE_UNSPECIFIED="SOURCE_UNSPECIFIED",n.UPLOADED="UPLOADED",n.GENERATED="GENERATED"})(Oa||(Oa={}));var Ha;(function(n){n.TURN_COMPLETE_REASON_UNSPECIFIED="TURN_COMPLETE_REASON_UNSPECIFIED",n.MALFORMED_FUNCTION_CALL="MALFORMED_FUNCTION_CALL",n.RESPONSE_REJECTED="RESPONSE_REJECTED",n.NEED_MORE_INPUT="NEED_MORE_INPUT"})(Ha||(Ha={}));var Ba;(function(n){n.MODALITY_UNSPECIFIED="MODALITY_UNSPECIFIED",n.TEXT="TEXT",n.IMAGE="IMAGE",n.VIDEO="VIDEO",n.AUDIO="AUDIO",n.DOCUMENT="DOCUMENT"})(Ba||(Ba={}));var Wa;(function(n){n.VAD_SIGNAL_TYPE_UNSPECIFIED="VAD_SIGNAL_TYPE_UNSPECIFIED",n.VAD_SIGNAL_TYPE_SOS="VAD_SIGNAL_TYPE_SOS",n.VAD_SIGNAL_TYPE_EOS="VAD_SIGNAL_TYPE_EOS"})(Wa||(Wa={}));var Ja;(function(n){n.START_SENSITIVITY_UNSPECIFIED="START_SENSITIVITY_UNSPECIFIED",n.START_SENSITIVITY_HIGH="START_SENSITIVITY_HIGH",n.START_SENSITIVITY_LOW="START_SENSITIVITY_LOW"})(Ja||(Ja={}));var Xa;(function(n){n.END_SENSITIVITY_UNSPECIFIED="END_SENSITIVITY_UNSPECIFIED",n.END_SENSITIVITY_HIGH="END_SENSITIVITY_HIGH",n.END_SENSITIVITY_LOW="END_SENSITIVITY_LOW"})(Xa||(Xa={}));var Ya;(function(n){n.ACTIVITY_HANDLING_UNSPECIFIED="ACTIVITY_HANDLING_UNSPECIFIED",n.START_OF_ACTIVITY_INTERRUPTS="START_OF_ACTIVITY_INTERRUPTS",n.NO_INTERRUPTION="NO_INTERRUPTION"})(Ya||(Ya={}));var za;(function(n){n.TURN_COVERAGE_UNSPECIFIED="TURN_COVERAGE_UNSPECIFIED",n.TURN_INCLUDES_ONLY_ACTIVITY="TURN_INCLUDES_ONLY_ACTIVITY",n.TURN_INCLUDES_ALL_INPUT="TURN_INCLUDES_ALL_INPUT"})(za||(za={}));var Ka;(function(n){n.SCALE_UNSPECIFIED="SCALE_UNSPECIFIED",n.C_MAJOR_A_MINOR="C_MAJOR_A_MINOR",n.D_FLAT_MAJOR_B_FLAT_MINOR="D_FLAT_MAJOR_B_FLAT_MINOR",n.D_MAJOR_B_MINOR="D_MAJOR_B_MINOR",n.E_FLAT_MAJOR_C_MINOR="E_FLAT_MAJOR_C_MINOR",n.E_MAJOR_D_FLAT_MINOR="E_MAJOR_D_FLAT_MINOR",n.F_MAJOR_D_MINOR="F_MAJOR_D_MINOR",n.G_FLAT_MAJOR_E_FLAT_MINOR="G_FLAT_MAJOR_E_FLAT_MINOR",n.G_MAJOR_E_MINOR="G_MAJOR_E_MINOR",n.A_FLAT_MAJOR_F_MINOR="A_FLAT_MAJOR_F_MINOR",n.A_MAJOR_G_FLAT_MINOR="A_MAJOR_G_FLAT_MINOR",n.B_FLAT_MAJOR_G_MINOR="B_FLAT_MAJOR_G_MINOR",n.B_MAJOR_A_FLAT_MINOR="B_MAJOR_A_FLAT_MINOR"})(Ka||(Ka={}));var Qa;(function(n){n.MUSIC_GENERATION_MODE_UNSPECIFIED="MUSIC_GENERATION_MODE_UNSPECIFIED",n.QUALITY="QUALITY",n.DIVERSITY="DIVERSITY",n.VOCALIZATION="VOCALIZATION"})(Qa||(Qa={}));var Tt;(function(n){n.PLAYBACK_CONTROL_UNSPECIFIED="PLAYBACK_CONTROL_UNSPECIFIED",n.PLAY="PLAY",n.PAUSE="PAUSE",n.STOP="STOP",n.RESET_CONTEXT="RESET_CONTEXT"})(Tt||(Tt={}));var Ot=class{static{f(this,"HttpResponse")}constructor(e){let t={};for(let o of e.headers.entries())t[o[0]]=o[1];this.headers=t,this.responseInternal=e}json(){return this.responseInternal.json()}};var dt=class{static{f(this,"GenerateContentResponse")}get text(){var e,t,o,i,s,l,c,d;if(((i=(o=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||o===void 0?void 0:o.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning text from the first one.");let u="",p=!1,h=[];for(let m of(d=(c=(l=(s=this.candidates)===null||s===void 0?void 0:s[0])===null||l===void 0?void 0:l.content)===null||c===void 0?void 0:c.parts)!==null&&d!==void 0?d:[]){for(let[g,b]of Object.entries(m))g!=="text"&&g!=="thought"&&g!=="thoughtSignature"&&(b!==null||b!==void 0)&&h.push(g);if(typeof m.text=="string"){if(typeof m.thought=="boolean"&&m.thought)continue;p=!0,u+=m.text}}return h.length>0&&console.warn(`there are non-text parts ${h} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),p?u:void 0}get data(){var e,t,o,i,s,l,c,d;if(((i=(o=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||o===void 0?void 0:o.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning data from the first one.");let u="",p=[];for(let h of(d=(c=(l=(s=this.candidates)===null||s===void 0?void 0:s[0])===null||l===void 0?void 0:l.content)===null||c===void 0?void 0:c.parts)!==null&&d!==void 0?d:[]){for(let[m,g]of Object.entries(h))m!=="inlineData"&&(g!==null||g!==void 0)&&p.push(m);h.inlineData&&typeof h.inlineData.data=="string"&&(u+=atob(h.inlineData.data))}return p.length>0&&console.warn(`there are non-data parts ${p} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),u.length>0?btoa(u):void 0}get functionCalls(){var e,t,o,i,s,l,c,d;if(((i=(o=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||o===void 0?void 0:o.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning function calls from the first one.");let u=(d=(c=(l=(s=this.candidates)===null||s===void 0?void 0:s[0])===null||l===void 0?void 0:l.content)===null||c===void 0?void 0:c.parts)===null||d===void 0?void 0:d.filter(p=>p.functionCall).map(p=>p.functionCall).filter(p=>p!==void 0);if(u?.length!==0)return u}get executableCode(){var e,t,o,i,s,l,c,d,u;if(((i=(o=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||o===void 0?void 0:o.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning executable code from the first one.");let p=(d=(c=(l=(s=this.candidates)===null||s===void 0?void 0:s[0])===null||l===void 0?void 0:l.content)===null||c===void 0?void 0:c.parts)===null||d===void 0?void 0:d.filter(h=>h.executableCode).map(h=>h.executableCode).filter(h=>h!==void 0);if(p?.length!==0)return(u=p?.[0])===null||u===void 0?void 0:u.code}get codeExecutionResult(){var e,t,o,i,s,l,c,d,u;if(((i=(o=(t=(e=this.candidates)===null||e===void 0?void 0:e[0])===null||t===void 0?void 0:t.content)===null||o===void 0?void 0:o.parts)===null||i===void 0?void 0:i.length)===0)return;this.candidates&&this.candidates.length>1&&console.warn("there are multiple candidates in the response, returning code execution result from the first one.");let p=(d=(c=(l=(s=this.candidates)===null||s===void 0?void 0:s[0])===null||l===void 0?void 0:l.content)===null||c===void 0?void 0:c.parts)===null||d===void 0?void 0:d.filter(h=>h.codeExecutionResult).map(h=>h.codeExecutionResult).filter(h=>h!==void 0);if(p?.length!==0)return(u=p?.[0])===null||u===void 0?void 0:u.output}},xn=class{static{f(this,"EmbedContentResponse")}},Gn=class{static{f(this,"GenerateImagesResponse")}},di=class{static{f(this,"EditImageResponse")}},ui=class{static{f(this,"UpscaleImageResponse")}},fi=class{static{f(this,"RecontextImageResponse")}},pi=class{static{f(this,"SegmentImageResponse")}},Mn=class{static{f(this,"ListModelsResponse")}},Dn=class{static{f(this,"DeleteModelResponse")}},Un=class{static{f(this,"CountTokensResponse")}},hi=class{static{f(this,"ComputeTokensResponse")}};var Ln=class n{static{f(this,"GenerateVideosOperation")}_fromAPIResponse({apiResponse:e,_isVertexAI:t}){let o=new n,i,s=e;return t?i=qc(s):i=Vc(s),Object.assign(o,i),o}},Fn=class{static{f(this,"ListTuningJobsResponse")}},kn=class{static{f(this,"CancelTuningJobResponse")}},Vn=class{static{f(this,"DeleteCachedContentResponse")}},qn=class{static{f(this,"ListCachedContentsResponse")}},mi=class{static{f(this,"ListDocumentsResponse")}},gi=class{static{f(this,"ListFileSearchStoresResponse")}},bi=class{static{f(this,"UploadToFileSearchStoreResumableResponse")}};var Ei=class n{static{f(this,"ImportFileOperation")}_fromAPIResponse({apiResponse:e,_isVertexAI:t}){let o=new n,s=Yc(e);return Object.assign(o,s),o}},yi=class{static{f(this,"ListFilesResponse")}},wi=class{static{f(this,"CreateFileResponse")}},Ii=class{static{f(this,"DeleteFileResponse")}};var On=class{static{f(this,"ListBatchJobsResponse")}};var Ti=class{static{f(this,"LiveServerMessage")}get text(){var e,t,o;let i="",s=!1,l=[];for(let c of(o=(t=(e=this.serverContent)===null||e===void 0?void 0:e.modelTurn)===null||t===void 0?void 0:t.parts)!==null&&o!==void 0?o:[]){for(let[d,u]of Object.entries(c))d!=="text"&&d!=="thought"&&u!==null&&l.push(d);if(typeof c.text=="string"){if(typeof c.thought=="boolean"&&c.thought)continue;s=!0,i+=c.text}}return l.length>0&&console.warn(`there are non-text parts ${l} in the response, returning concatenation of all text parts. Please refer to the non text parts for a full response from model.`),s?i:void 0}get data(){var e,t,o;let i="",s=[];for(let l of(o=(t=(e=this.serverContent)===null||e===void 0?void 0:e.modelTurn)===null||t===void 0?void 0:t.parts)!==null&&o!==void 0?o:[]){for(let[c,d]of Object.entries(l))c!=="inlineData"&&d!==null&&s.push(c);l.inlineData&&typeof l.inlineData.data=="string"&&(i+=atob(l.inlineData.data))}return s.length>0&&console.warn(`there are non-data parts ${s} in the response, returning concatenation of all data parts. Please refer to the non data parts for a full response from model.`),i.length>0?btoa(i):void 0}};var _i=class{static{f(this,"LiveMusicServerMessage")}get audioChunk(){if(this.serverContent&&this.serverContent.audioChunks&&this.serverContent.audioChunks.length>0)return this.serverContent.audioChunks[0]}};var Ci=class n{static{f(this,"UploadToFileSearchStoreOperation")}_fromAPIResponse({apiResponse:e,_isVertexAI:t}){let o=new n,s=_l(e);return Object.assign(o,s),o}};function F(n,e){if(!e||typeof e!="string")throw new Error("model is required and must be a string");if(e.includes("..")||e.includes("?")||e.includes("&"))throw new Error("invalid model parameter");if(n.isVertexAI()){if(e.startsWith("publishers/")||e.startsWith("projects/")||e.startsWith("models/"))return e;if(e.indexOf("/")>=0){let t=e.split("/",2);return`publishers/${t[0]}/models/${t[1]}`}else return`publishers/google/models/${e}`}else return e.startsWith("models/")||e.startsWith("tunedModels/")?e:`models/${e}`}f(F,"tModel");function Cl(n,e){let t=F(n,e);return t?t.startsWith("publishers/")&&n.isVertexAI()?`projects/${n.getProject()}/locations/${n.getLocation()}/${t}`:t.startsWith("models/")&&n.isVertexAI()?`projects/${n.getProject()}/locations/${n.getLocation()}/publishers/google/${t}`:t:""}f(Cl,"tCachesModel");function Al(n){return Array.isArray(n)?n.map(e=>Hn(e)):[Hn(n)]}f(Al,"tBlobs");function Hn(n){if(typeof n=="object"&&n!==null)return n;throw new Error(`Could not parse input as Blob. Unsupported blob type: ${typeof n}`)}f(Hn,"tBlob");function Sl(n){let e=Hn(n);if(e.mimeType&&e.mimeType.startsWith("image/"))return e;throw new Error(`Unsupported mime type: ${e.mimeType}`)}f(Sl,"tImageBlob");function vl(n){let e=Hn(n);if(e.mimeType&&e.mimeType.startsWith("audio/"))return e;throw new Error(`Unsupported mime type: ${e.mimeType}`)}f(vl,"tAudioBlob");function Za(n){if(n==null)throw new Error("PartUnion is required");if(typeof n=="object")return n;if(typeof n=="string")return{text:n};throw new Error(`Unsupported part type: ${typeof n}`)}f(Za,"tPart");function $l(n){if(n==null||Array.isArray(n)&&n.length===0)throw new Error("PartListUnion is required");return Array.isArray(n)?n.map(e=>Za(e)):[Za(n)]}f($l,"tParts");function Ai(n){return n!=null&&typeof n=="object"&&"parts"in n&&Array.isArray(n.parts)}f(Ai,"_isContent");function ja(n){return n!=null&&typeof n=="object"&&"functionCall"in n}f(ja,"_isFunctionCallPart");function el(n){return n!=null&&typeof n=="object"&&"functionResponse"in n}f(el,"_isFunctionResponsePart");function te(n){if(n==null)throw new Error("ContentUnion is required");return Ai(n)?n:{role:"user",parts:$l(n)}}f(te,"tContent");function ar(n,e){if(!e)return[];if(n.isVertexAI()&&Array.isArray(e))return e.flatMap(t=>{let o=te(t);return o.parts&&o.parts.length>0&&o.parts[0].text!==void 0?[o.parts[0].text]:[]});if(n.isVertexAI()){let t=te(e);return t.parts&&t.parts.length>0&&t.parts[0].text!==void 0?[t.parts[0].text]:[]}return Array.isArray(e)?e.map(t=>te(t)):[te(e)]}f(ar,"tContentsForEmbed");function ue(n){if(n==null||Array.isArray(n)&&n.length===0)throw new Error("contents are required");if(!Array.isArray(n)){if(ja(n)||el(n))throw new Error("To specify functionCall or functionResponse parts, please wrap them in a Content object, specifying the role for them");return[te(n)]}let e=[],t=[],o=Ai(n[0]);for(let i of n){let s=Ai(i);if(s!=o)throw new Error("Mixing Content and Parts is not supported, please group the parts into a the appropriate Content objects and specify the roles for them");if(s)e.push(i);else{if(ja(i)||el(i))throw new Error("To specify functionCall or functionResponse parts, please wrap them, and any other parts, in Content objects as appropriate, specifying the role for them");t.push(i)}}return o||e.push({role:"user",parts:$l(t)}),e}f(ue,"tContents");function jc(n,e){n.includes("null")&&(e.nullable=!0);let t=n.filter(o=>o!=="null");if(t.length===1)e.type=Object.values(Ye).includes(t[0].toUpperCase())?t[0].toUpperCase():Ye.TYPE_UNSPECIFIED;else{e.anyOf=[];for(let o of t)e.anyOf.push({type:Object.values(Ye).includes(o.toUpperCase())?o.toUpperCase():Ye.TYPE_UNSPECIFIED})}}f(jc,"flattenTypeArrayToAnyOf");function _t(n){let e={},t=["items"],o=["anyOf"],i=["properties"];if(n.type&&n.anyOf)throw new Error("type and anyOf cannot be both populated.");let s=n.anyOf;s!=null&&s.length==2&&(s[0].type==="null"?(e.nullable=!0,n=s[1]):s[1].type==="null"&&(e.nullable=!0,n=s[0])),n.type instanceof Array&&jc(n.type,e);for(let[l,c]of Object.entries(n))if(c!=null)if(l=="type"){if(c==="null")throw new Error("type: null can not be the only possible type for the field.");if(c instanceof Array)continue;e.type=Object.values(Ye).includes(c.toUpperCase())?c.toUpperCase():Ye.TYPE_UNSPECIFIED}else if(t.includes(l))e[l]=_t(c);else if(o.includes(l)){let d=[];for(let u of c){if(u.type=="null"){e.nullable=!0;continue}d.push(_t(u))}e[l]=d}else if(i.includes(l)){let d={};for(let[u,p]of Object.entries(c))d[u]=_t(p);e[l]=d}else{if(l==="additionalProperties")continue;e[l]=c}return e}f(_t,"processJsonSchema");function lr(n){return _t(n)}f(lr,"tSchema");function cr(n){if(typeof n=="object")return n;if(typeof n=="string")return{voiceConfig:{prebuiltVoiceConfig:{voiceName:n}}};throw new Error(`Unsupported speechConfig type: ${typeof n}`)}f(cr,"tSpeechConfig");function dr(n){if("multiSpeakerVoiceConfig"in n)throw new Error("multiSpeakerVoiceConfig is not supported in the live API.");return n}f(dr,"tLiveSpeechConfig");function vt(n){if(n.functionDeclarations)for(let e of n.functionDeclarations)e.parameters&&(Object.keys(e.parameters).includes("$schema")?e.parametersJsonSchema||(e.parametersJsonSchema=e.parameters,delete e.parameters):e.parameters=_t(e.parameters)),e.response&&(Object.keys(e.response).includes("$schema")?e.responseJsonSchema||(e.responseJsonSchema=e.response,delete e.response):e.response=_t(e.response));return n}f(vt,"tTool");function $t(n){if(n==null)throw new Error("tools is required");if(!Array.isArray(n))throw new Error("tools is required and must be an array of Tools");let e=[];for(let t of n)e.push(t);return e}f($t,"tTools");function ed(n,e,t,o=1){let i=!e.startsWith(`${t}/`)&&e.split("/").length===o;return n.isVertexAI()?e.startsWith("projects/")?e:e.startsWith("locations/")?`projects/${n.getProject()}/${e}`:e.startsWith(`${t}/`)?`projects/${n.getProject()}/locations/${n.getLocation()}/${e}`:i?`projects/${n.getProject()}/locations/${n.getLocation()}/${t}/${e}`:e:i?`${t}/${e}`:e}f(ed,"resourceName");function Me(n,e){if(typeof e!="string")throw new Error("name must be a string");return ed(n,e,"cachedContents")}f(Me,"tCachedContentName");function Nl(n){switch(n){case"STATE_UNSPECIFIED":return"JOB_STATE_UNSPECIFIED";case"CREATING":return"JOB_STATE_RUNNING";case"ACTIVE":return"JOB_STATE_SUCCEEDED";case"FAILED":return"JOB_STATE_FAILED";default:return n}}f(Nl,"tTuningJobStatus");function ze(n){return sr(n)}f(ze,"tBytes");function td(n){return n!=null&&typeof n=="object"&&"name"in n}f(td,"_isFile");function nd(n){return n!=null&&typeof n=="object"&&"video"in n}f(nd,"isGeneratedVideo");function od(n){return n!=null&&typeof n=="object"&&"uri"in n}f(od,"isVideo");function Pl(n){var e;let t;if(td(n)&&(t=n.name),!(od(n)&&(t=n.uri,t===void 0))&&!(nd(n)&&(t=(e=n.video)===null||e===void 0?void 0:e.uri,t===void 0))){if(typeof n=="string"&&(t=n),t===void 0)throw new Error("Could not extract file name from the provided input.");if(t.startsWith("https://")){let i=t.split("files/")[1].match(/[a-z0-9]+/);if(i===null)throw new Error(`Could not extract file name from URI ${t}`);t=i[0]}else t.startsWith("files/")&&(t=t.split("files/")[1]);return t}}f(Pl,"tFileName");function Rl(n,e){let t;return n.isVertexAI()?t=e?"publishers/google/models":"models":t=e?"models":"tunedModels",t}f(Rl,"tModelsUrl");function xl(n){for(let e of["models","tunedModels","publisherModels"])if(id(n,e))return n[e];return[]}f(xl,"tExtractModels");function id(n,e){return n!==null&&typeof n=="object"&&e in n}f(id,"hasField");function rd(n,e={}){let t=n,o={name:t.name,description:t.description,parametersJsonSchema:t.inputSchema};return t.outputSchema&&(o.responseJsonSchema=t.outputSchema),e.behavior&&(o.behavior=e.behavior),{functionDeclarations:[o]}}f(rd,"mcpToGeminiTool");function sd(n,e={}){let t=[],o=new Set;for(let i of n){let s=i.name;if(o.has(s))throw new Error(`Duplicate function name ${s} found in MCP tools. Please ensure function names are unique.`);o.add(s);let l=rd(i,e);l.functionDeclarations&&t.push(...l.functionDeclarations)}return{functionDeclarations:t}}f(sd,"mcpToolsToGeminiTool");function Gl(n,e){let t;if(typeof e=="string")if(n.isVertexAI())if(e.startsWith("gs://"))t={format:"jsonl",gcsUri:[e]};else if(e.startsWith("bq://"))t={format:"bigquery",bigqueryUri:e};else throw new Error(`Unsupported string source for Vertex AI: ${e}`);else if(e.startsWith("files/"))t={fileName:e};else throw new Error(`Unsupported string source for Gemini API: ${e}`);else if(Array.isArray(e)){if(n.isVertexAI())throw new Error("InlinedRequest[] is not supported in Vertex AI.");t={inlinedRequests:e}}else t=e;let o=[t.gcsUri,t.bigqueryUri].filter(Boolean).length,i=[t.inlinedRequests,t.fileName].filter(Boolean).length;if(n.isVertexAI()){if(i>0||o!==1)throw new Error("Exactly one of `gcsUri` or `bigqueryUri` must be set for Vertex AI.")}else if(o>0||i!==1)throw new Error("Exactly one of `inlinedRequests`, `fileName`, must be set for Gemini API.");return t}f(Gl,"tBatchJobSource");function ad(n){if(typeof n!="string")return n;let e=n;if(e.startsWith("gs://"))return{format:"jsonl",gcsUri:e};if(e.startsWith("bq://"))return{format:"bigquery",bigqueryUri:e};throw new Error(`Unsupported destination: ${e}`)}f(ad,"tBatchJobDestination");function Ml(n){if(typeof n!="object"||n===null)return{};let e=n,t=e.inlinedResponses;if(typeof t!="object"||t===null)return n;let i=t.inlinedResponses;if(!Array.isArray(i)||i.length===0)return n;let s=!1;for(let l of i){if(typeof l!="object"||l===null)continue;let d=l.response;if(typeof d!="object"||d===null)continue;if(d.embedding!==void 0){s=!0;break}}return s&&(e.inlinedEmbedContentResponses=e.inlinedResponses,delete e.inlinedResponses),n}f(Ml,"tRecvBatchJobDestination");function Nt(n,e){let t=e;if(!n.isVertexAI()){if(/batches\/[^/]+$/.test(t))return t.split("/").pop();throw new Error(`Invalid batch job name: ${t}.`)}if(/^projects\/[^/]+\/locations\/[^/]+\/batchPredictionJobs\/[^/]+$/.test(t))return t.split("/").pop();if(/^\d+$/.test(t))return t;throw new Error(`Invalid batch job name: ${t}.`)}f(Nt,"tBatchJobName");function Dl(n){let e=n;return e==="BATCH_STATE_UNSPECIFIED"?"JOB_STATE_UNSPECIFIED":e==="BATCH_STATE_PENDING"?"JOB_STATE_PENDING":e==="BATCH_STATE_RUNNING"?"JOB_STATE_RUNNING":e==="BATCH_STATE_SUCCEEDED"?"JOB_STATE_SUCCEEDED":e==="BATCH_STATE_FAILED"?"JOB_STATE_FAILED":e==="BATCH_STATE_CANCELLED"?"JOB_STATE_CANCELLED":e==="BATCH_STATE_EXPIRED"?"JOB_STATE_EXPIRED":e}f(Dl,"tJobState");function ld(n){let e={},t=r(n,["responsesFile"]);t!=null&&a(e,["fileName"],t);let o=r(n,["inlinedResponses","inlinedResponses"]);if(o!=null){let s=o;Array.isArray(s)&&(s=s.map(l=>Od(l))),a(e,["inlinedResponses"],s)}let i=r(n,["inlinedEmbedContentResponses","inlinedResponses"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>l)),a(e,["inlinedEmbedContentResponses"],s)}return e}f(ld,"batchJobDestinationFromMldev");function cd(n){let e={},t=r(n,["predictionsFormat"]);t!=null&&a(e,["format"],t);let o=r(n,["gcsDestination","outputUriPrefix"]);o!=null&&a(e,["gcsUri"],o);let i=r(n,["bigqueryDestination","outputUri"]);return i!=null&&a(e,["bigqueryUri"],i),e}f(cd,"batchJobDestinationFromVertex");function dd(n){let e={},t=r(n,["format"]);t!=null&&a(e,["predictionsFormat"],t);let o=r(n,["gcsUri"]);o!=null&&a(e,["gcsDestination","outputUriPrefix"],o);let i=r(n,["bigqueryUri"]);if(i!=null&&a(e,["bigqueryDestination","outputUri"],i),r(n,["fileName"])!==void 0)throw new Error("fileName parameter is not supported in Vertex AI.");if(r(n,["inlinedResponses"])!==void 0)throw new Error("inlinedResponses parameter is not supported in Vertex AI.");if(r(n,["inlinedEmbedContentResponses"])!==void 0)throw new Error("inlinedEmbedContentResponses parameter is not supported in Vertex AI.");return e}f(dd,"batchJobDestinationToVertex");function $n(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["metadata","displayName"]);o!=null&&a(e,["displayName"],o);let i=r(n,["metadata","state"]);i!=null&&a(e,["state"],Dl(i));let s=r(n,["metadata","createTime"]);s!=null&&a(e,["createTime"],s);let l=r(n,["metadata","endTime"]);l!=null&&a(e,["endTime"],l);let c=r(n,["metadata","updateTime"]);c!=null&&a(e,["updateTime"],c);let d=r(n,["metadata","model"]);d!=null&&a(e,["model"],d);let u=r(n,["metadata","output"]);return u!=null&&a(e,["dest"],ld(Ml(u))),e}f($n,"batchJobFromMldev");function Si(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["displayName"]);o!=null&&a(e,["displayName"],o);let i=r(n,["state"]);i!=null&&a(e,["state"],Dl(i));let s=r(n,["error"]);s!=null&&a(e,["error"],s);let l=r(n,["createTime"]);l!=null&&a(e,["createTime"],l);let c=r(n,["startTime"]);c!=null&&a(e,["startTime"],c);let d=r(n,["endTime"]);d!=null&&a(e,["endTime"],d);let u=r(n,["updateTime"]);u!=null&&a(e,["updateTime"],u);let p=r(n,["model"]);p!=null&&a(e,["model"],p);let h=r(n,["inputConfig"]);h!=null&&a(e,["src"],ud(h));let m=r(n,["outputConfig"]);m!=null&&a(e,["dest"],cd(Ml(m)));let g=r(n,["completionStats"]);return g!=null&&a(e,["completionStats"],g),e}f(Si,"batchJobFromVertex");function ud(n){let e={},t=r(n,["instancesFormat"]);t!=null&&a(e,["format"],t);let o=r(n,["gcsSource","uris"]);o!=null&&a(e,["gcsUri"],o);let i=r(n,["bigquerySource","inputUri"]);return i!=null&&a(e,["bigqueryUri"],i),e}f(ud,"batchJobSourceFromVertex");function fd(n,e){let t={};if(r(e,["format"])!==void 0)throw new Error("format parameter is not supported in Gemini API.");if(r(e,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");if(r(e,["bigqueryUri"])!==void 0)throw new Error("bigqueryUri parameter is not supported in Gemini API.");let o=r(e,["fileName"]);o!=null&&a(t,["fileName"],o);let i=r(e,["inlinedRequests"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>qd(n,l))),a(t,["requests","requests"],s)}return t}f(fd,"batchJobSourceToMldev");function pd(n){let e={},t=r(n,["format"]);t!=null&&a(e,["instancesFormat"],t);let o=r(n,["gcsUri"]);o!=null&&a(e,["gcsSource","uris"],o);let i=r(n,["bigqueryUri"]);if(i!=null&&a(e,["bigquerySource","inputUri"],i),r(n,["fileName"])!==void 0)throw new Error("fileName parameter is not supported in Vertex AI.");if(r(n,["inlinedRequests"])!==void 0)throw new Error("inlinedRequests parameter is not supported in Vertex AI.");return e}f(pd,"batchJobSourceToVertex");function hd(n){let e={},t=r(n,["data"]);if(t!=null&&a(e,["data"],t),r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(hd,"blobToMldev$4");function md(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Nt(n,o)),t}f(md,"cancelBatchJobParametersToMldev");function gd(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Nt(n,o)),t}f(gd,"cancelBatchJobParametersToVertex");function bd(n){let e={},t=r(n,["content"]);t!=null&&a(e,["content"],t);let o=r(n,["citationMetadata"]);o!=null&&a(e,["citationMetadata"],Ed(o));let i=r(n,["tokenCount"]);i!=null&&a(e,["tokenCount"],i);let s=r(n,["finishReason"]);s!=null&&a(e,["finishReason"],s);let l=r(n,["avgLogprobs"]);l!=null&&a(e,["avgLogprobs"],l);let c=r(n,["groundingMetadata"]);c!=null&&a(e,["groundingMetadata"],c);let d=r(n,["index"]);d!=null&&a(e,["index"],d);let u=r(n,["logprobsResult"]);u!=null&&a(e,["logprobsResult"],u);let p=r(n,["safetyRatings"]);if(p!=null){let m=p;Array.isArray(m)&&(m=m.map(g=>g)),a(e,["safetyRatings"],m)}let h=r(n,["urlContextMetadata"]);return h!=null&&a(e,["urlContextMetadata"],h),e}f(bd,"candidateFromMldev$1");function Ed(n){let e={},t=r(n,["citationSources"]);if(t!=null){let o=t;Array.isArray(o)&&(o=o.map(i=>i)),a(e,["citations"],o)}return e}f(Ed,"citationMetadataFromMldev$1");function Ul(n){let e={},t=r(n,["parts"]);if(t!=null){let i=t;Array.isArray(i)&&(i=i.map(s=>zd(s))),a(e,["parts"],i)}let o=r(n,["role"]);return o!=null&&a(e,["role"],o),e}f(Ul,"contentToMldev$4");function yd(n,e){let t={},o=r(n,["displayName"]);if(e!==void 0&&o!=null&&a(e,["batch","displayName"],o),r(n,["dest"])!==void 0)throw new Error("dest parameter is not supported in Gemini API.");return t}f(yd,"createBatchJobConfigToMldev");function wd(n,e){let t={},o=r(n,["displayName"]);e!==void 0&&o!=null&&a(e,["displayName"],o);let i=r(n,["dest"]);return e!==void 0&&i!=null&&a(e,["outputConfig"],dd(ad(i))),t}f(wd,"createBatchJobConfigToVertex");function tl(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["src"]);i!=null&&a(t,["batch","inputConfig"],fd(n,Gl(n,i)));let s=r(e,["config"]);return s!=null&&yd(s,t),t}f(tl,"createBatchJobParametersToMldev");function Id(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["model"],F(n,o));let i=r(e,["src"]);i!=null&&a(t,["inputConfig"],pd(Gl(n,i)));let s=r(e,["config"]);return s!=null&&wd(s,t),t}f(Id,"createBatchJobParametersToVertex");function Td(n,e){let t={},o=r(n,["displayName"]);return e!==void 0&&o!=null&&a(e,["batch","displayName"],o),t}f(Td,"createEmbeddingsBatchJobConfigToMldev");function _d(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["src"]);i!=null&&a(t,["batch","inputConfig"],Pd(n,i));let s=r(e,["config"]);return s!=null&&Td(s,t),t}f(_d,"createEmbeddingsBatchJobParametersToMldev");function Cd(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Nt(n,o)),t}f(Cd,"deleteBatchJobParametersToMldev");function Ad(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Nt(n,o)),t}f(Ad,"deleteBatchJobParametersToVertex");function Sd(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["name"]);o!=null&&a(e,["name"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);return s!=null&&a(e,["error"],s),e}f(Sd,"deleteResourceJobFromMldev");function vd(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["name"]);o!=null&&a(e,["name"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);return s!=null&&a(e,["error"],s),e}f(vd,"deleteResourceJobFromVertex");function $d(n,e){let t={},o=r(e,["contents"]);if(o!=null){let s=ar(n,o);Array.isArray(s)&&(s=s.map(l=>l)),a(t,["requests[]","request","content"],s)}let i=r(e,["config"]);return i!=null&&(a(t,["_self"],Nd(i,t)),Fc(t,{"requests[].*":"requests[].request.*"})),t}f($d,"embedContentBatchToMldev");function Nd(n,e){let t={},o=r(n,["taskType"]);e!==void 0&&o!=null&&a(e,["requests[]","taskType"],o);let i=r(n,["title"]);e!==void 0&&i!=null&&a(e,["requests[]","title"],i);let s=r(n,["outputDimensionality"]);if(e!==void 0&&s!=null&&a(e,["requests[]","outputDimensionality"],s),r(n,["mimeType"])!==void 0)throw new Error("mimeType parameter is not supported in Gemini API.");if(r(n,["autoTruncate"])!==void 0)throw new Error("autoTruncate parameter is not supported in Gemini API.");return t}f(Nd,"embedContentConfigToMldev$1");function Pd(n,e){let t={},o=r(e,["fileName"]);o!=null&&a(t,["file_name"],o);let i=r(e,["inlinedRequests"]);return i!=null&&a(t,["requests"],$d(n,i)),t}f(Pd,"embeddingsBatchJobSourceToMldev");function Rd(n){let e={};if(r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let t=r(n,["fileUri"]);t!=null&&a(e,["fileUri"],t);let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(Rd,"fileDataToMldev$4");function xd(n){let e={},t=r(n,["id"]);t!=null&&a(e,["id"],t);let o=r(n,["args"]);o!=null&&a(e,["args"],o);let i=r(n,["name"]);if(i!=null&&a(e,["name"],i),r(n,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is not supported in Gemini API.");if(r(n,["willContinue"])!==void 0)throw new Error("willContinue parameter is not supported in Gemini API.");return e}f(xd,"functionCallToMldev$4");function Gd(n){let e={},t=r(n,["mode"]);t!=null&&a(e,["mode"],t);let o=r(n,["allowedFunctionNames"]);if(o!=null&&a(e,["allowedFunctionNames"],o),r(n,["streamFunctionCallArguments"])!==void 0)throw new Error("streamFunctionCallArguments parameter is not supported in Gemini API.");return e}f(Gd,"functionCallingConfigToMldev$2");function Md(n,e,t){let o={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&a(t,["systemInstruction"],Ul(te(i)));let s=r(e,["temperature"]);s!=null&&a(o,["temperature"],s);let l=r(e,["topP"]);l!=null&&a(o,["topP"],l);let c=r(e,["topK"]);c!=null&&a(o,["topK"],c);let d=r(e,["candidateCount"]);d!=null&&a(o,["candidateCount"],d);let u=r(e,["maxOutputTokens"]);u!=null&&a(o,["maxOutputTokens"],u);let p=r(e,["stopSequences"]);p!=null&&a(o,["stopSequences"],p);let h=r(e,["responseLogprobs"]);h!=null&&a(o,["responseLogprobs"],h);let m=r(e,["logprobs"]);m!=null&&a(o,["logprobs"],m);let g=r(e,["presencePenalty"]);g!=null&&a(o,["presencePenalty"],g);let b=r(e,["frequencyPenalty"]);b!=null&&a(o,["frequencyPenalty"],b);let y=r(e,["seed"]);y!=null&&a(o,["seed"],y);let w=r(e,["responseMimeType"]);w!=null&&a(o,["responseMimeType"],w);let I=r(e,["responseSchema"]);I!=null&&a(o,["responseSchema"],lr(I));let T=r(e,["responseJsonSchema"]);if(T!=null&&a(o,["responseJsonSchema"],T),r(e,["routingConfig"])!==void 0)throw new Error("routingConfig parameter is not supported in Gemini API.");if(r(e,["modelSelectionConfig"])!==void 0)throw new Error("modelSelectionConfig parameter is not supported in Gemini API.");let _=r(e,["safetySettings"]);if(t!==void 0&&_!=null){let Y=_;Array.isArray(Y)&&(Y=Y.map(we=>Kd(we))),a(t,["safetySettings"],Y)}let C=r(e,["tools"]);if(t!==void 0&&C!=null){let Y=$t(C);Array.isArray(Y)&&(Y=Y.map(we=>Zd(vt(we)))),a(t,["tools"],Y)}let v=r(e,["toolConfig"]);if(t!==void 0&&v!=null&&a(t,["toolConfig"],Qd(v)),r(e,["labels"])!==void 0)throw new Error("labels parameter is not supported in Gemini API.");let P=r(e,["cachedContent"]);t!==void 0&&P!=null&&a(t,["cachedContent"],Me(n,P));let N=r(e,["responseModalities"]);N!=null&&a(o,["responseModalities"],N);let B=r(e,["mediaResolution"]);B!=null&&a(o,["mediaResolution"],B);let $=r(e,["speechConfig"]);if($!=null&&a(o,["speechConfig"],cr($)),r(e,["audioTimestamp"])!==void 0)throw new Error("audioTimestamp parameter is not supported in Gemini API.");let U=r(e,["thinkingConfig"]);U!=null&&a(o,["thinkingConfig"],U);let z=r(e,["imageConfig"]);z!=null&&a(o,["imageConfig"],Vd(z));let Se=r(e,["enableEnhancedCivicAnswers"]);return Se!=null&&a(o,["enableEnhancedCivicAnswers"],Se),o}f(Md,"generateContentConfigToMldev$1");function Dd(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["candidates"]);if(o!=null){let d=o;Array.isArray(d)&&(d=d.map(u=>bd(u))),a(e,["candidates"],d)}let i=r(n,["modelVersion"]);i!=null&&a(e,["modelVersion"],i);let s=r(n,["promptFeedback"]);s!=null&&a(e,["promptFeedback"],s);let l=r(n,["responseId"]);l!=null&&a(e,["responseId"],l);let c=r(n,["usageMetadata"]);return c!=null&&a(e,["usageMetadata"],c),e}f(Dd,"generateContentResponseFromMldev$1");function Ud(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Nt(n,o)),t}f(Ud,"getBatchJobParametersToMldev");function Ld(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Nt(n,o)),t}f(Ld,"getBatchJobParametersToVertex");function Fd(n){let e={};if(r(n,["authConfig"])!==void 0)throw new Error("authConfig parameter is not supported in Gemini API.");let t=r(n,["enableWidget"]);return t!=null&&a(e,["enableWidget"],t),e}f(Fd,"googleMapsToMldev$4");function kd(n){let e={};if(r(n,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is not supported in Gemini API.");if(r(n,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is not supported in Gemini API.");let t=r(n,["timeRangeFilter"]);return t!=null&&a(e,["timeRangeFilter"],t),e}f(kd,"googleSearchToMldev$4");function Vd(n){let e={},t=r(n,["aspectRatio"]);t!=null&&a(e,["aspectRatio"],t);let o=r(n,["imageSize"]);if(o!=null&&a(e,["imageSize"],o),r(n,["outputMimeType"])!==void 0)throw new Error("outputMimeType parameter is not supported in Gemini API.");if(r(n,["outputCompressionQuality"])!==void 0)throw new Error("outputCompressionQuality parameter is not supported in Gemini API.");return e}f(Vd,"imageConfigToMldev$1");function qd(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["request","model"],F(n,o));let i=r(e,["contents"]);if(i!=null){let c=ue(i);Array.isArray(c)&&(c=c.map(d=>Ul(d))),a(t,["request","contents"],c)}let s=r(e,["metadata"]);s!=null&&a(t,["metadata"],s);let l=r(e,["config"]);return l!=null&&a(t,["request","generationConfig"],Md(n,l,r(t,["request"],{}))),t}f(qd,"inlinedRequestToMldev");function Od(n){let e={},t=r(n,["response"]);t!=null&&a(e,["response"],Dd(t));let o=r(n,["error"]);return o!=null&&a(e,["error"],o),e}f(Od,"inlinedResponseFromMldev");function Hd(n,e){let t={},o=r(n,["pageSize"]);e!==void 0&&o!=null&&a(e,["_query","pageSize"],o);let i=r(n,["pageToken"]);if(e!==void 0&&i!=null&&a(e,["_query","pageToken"],i),r(n,["filter"])!==void 0)throw new Error("filter parameter is not supported in Gemini API.");return t}f(Hd,"listBatchJobsConfigToMldev");function Bd(n,e){let t={},o=r(n,["pageSize"]);e!==void 0&&o!=null&&a(e,["_query","pageSize"],o);let i=r(n,["pageToken"]);e!==void 0&&i!=null&&a(e,["_query","pageToken"],i);let s=r(n,["filter"]);return e!==void 0&&s!=null&&a(e,["_query","filter"],s),t}f(Bd,"listBatchJobsConfigToVertex");function Wd(n){let e={},t=r(n,["config"]);return t!=null&&Hd(t,e),e}f(Wd,"listBatchJobsParametersToMldev");function Jd(n){let e={},t=r(n,["config"]);return t!=null&&Bd(t,e),e}f(Jd,"listBatchJobsParametersToVertex");function Xd(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["operations"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>$n(l))),a(e,["batchJobs"],s)}return e}f(Xd,"listBatchJobsResponseFromMldev");function Yd(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["batchPredictionJobs"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>Si(l))),a(e,["batchJobs"],s)}return e}f(Yd,"listBatchJobsResponseFromVertex");function zd(n){let e={},t=r(n,["mediaResolution"]);t!=null&&a(e,["mediaResolution"],t);let o=r(n,["codeExecutionResult"]);o!=null&&a(e,["codeExecutionResult"],o);let i=r(n,["executableCode"]);i!=null&&a(e,["executableCode"],i);let s=r(n,["fileData"]);s!=null&&a(e,["fileData"],Rd(s));let l=r(n,["functionCall"]);l!=null&&a(e,["functionCall"],xd(l));let c=r(n,["functionResponse"]);c!=null&&a(e,["functionResponse"],c);let d=r(n,["inlineData"]);d!=null&&a(e,["inlineData"],hd(d));let u=r(n,["text"]);u!=null&&a(e,["text"],u);let p=r(n,["thought"]);p!=null&&a(e,["thought"],p);let h=r(n,["thoughtSignature"]);h!=null&&a(e,["thoughtSignature"],h);let m=r(n,["videoMetadata"]);return m!=null&&a(e,["videoMetadata"],m),e}f(zd,"partToMldev$4");function Kd(n){let e={},t=r(n,["category"]);if(t!=null&&a(e,["category"],t),r(n,["method"])!==void 0)throw new Error("method parameter is not supported in Gemini API.");let o=r(n,["threshold"]);return o!=null&&a(e,["threshold"],o),e}f(Kd,"safetySettingToMldev$1");function Qd(n){let e={},t=r(n,["functionCallingConfig"]);t!=null&&a(e,["functionCallingConfig"],Gd(t));let o=r(n,["retrievalConfig"]);return o!=null&&a(e,["retrievalConfig"],o),e}f(Qd,"toolConfigToMldev$2");function Zd(n){let e={},t=r(n,["functionDeclarations"]);if(t!=null){let p=t;Array.isArray(p)&&(p=p.map(h=>h)),a(e,["functionDeclarations"],p)}if(r(n,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");let o=r(n,["googleSearchRetrieval"]);o!=null&&a(e,["googleSearchRetrieval"],o);let i=r(n,["computerUse"]);i!=null&&a(e,["computerUse"],i);let s=r(n,["fileSearch"]);s!=null&&a(e,["fileSearch"],s);let l=r(n,["codeExecution"]);if(l!=null&&a(e,["codeExecution"],l),r(n,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");let c=r(n,["googleMaps"]);c!=null&&a(e,["googleMaps"],Fd(c));let d=r(n,["googleSearch"]);d!=null&&a(e,["googleSearch"],kd(d));let u=r(n,["urlContext"]);return u!=null&&a(e,["urlContext"],u),e}f(Zd,"toolToMldev$4");var xe;(function(n){n.PAGED_ITEM_BATCH_JOBS="batchJobs",n.PAGED_ITEM_MODELS="models",n.PAGED_ITEM_TUNING_JOBS="tuningJobs",n.PAGED_ITEM_FILES="files",n.PAGED_ITEM_CACHED_CONTENTS="cachedContents",n.PAGED_ITEM_FILE_SEARCH_STORES="fileSearchStores",n.PAGED_ITEM_DOCUMENTS="documents"})(xe||(xe={}));var Ge=class{static{f(this,"Pager")}constructor(e,t,o,i){this.pageInternal=[],this.paramsInternal={},this.requestInternal=t,this.init(e,o,i)}init(e,t,o){var i,s;this.nameInternal=e,this.pageInternal=t[this.nameInternal]||[],this.sdkHttpResponseInternal=t?.sdkHttpResponse,this.idxInternal=0;let l={config:{}};!o||Object.keys(o).length===0?l={config:{}}:typeof o=="object"?l=Object.assign({},o):l=o,l.config&&(l.config.pageToken=t.nextPageToken),this.paramsInternal=l,this.pageInternalSize=(s=(i=l.config)===null||i===void 0?void 0:i.pageSize)!==null&&s!==void 0?s:this.pageInternal.length}initNextPage(e){this.init(this.nameInternal,e,this.paramsInternal)}get page(){return this.pageInternal}get name(){return this.nameInternal}get pageSize(){return this.pageInternalSize}get sdkHttpResponse(){return this.sdkHttpResponseInternal}get params(){return this.paramsInternal}get pageLength(){return this.pageInternal.length}getItem(e){return this.pageInternal[e]}[Symbol.asyncIterator](){return{next:f(async()=>{if(this.idxInternal>=this.pageLength)if(this.hasNextPage())await this.nextPage();else return{value:void 0,done:!0};let e=this.getItem(this.idxInternal);return this.idxInternal+=1,{value:e,done:!1}},"next"),return:f(async()=>({value:void 0,done:!0}),"return")}}async nextPage(){if(!this.hasNextPage())throw new Error("No more pages to fetch.");let e=await this.requestInternal(this.params);return this.initNextPage(e),this.page}hasNextPage(){var e;return((e=this.params.config)===null||e===void 0?void 0:e.pageToken)!==void 0}};var vi=class extends Ee{static{f(this,"Batches")}constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new Ge(xe.PAGED_ITEM_BATCH_JOBS,o=>this.listInternal(o),await this.listInternal(t),t),this.create=async t=>(this.apiClient.isVertexAI()&&(t.config=this.formatDestination(t.src,t.config)),this.createInternal(t)),this.createEmbeddings=async t=>{if(console.warn("batches.createEmbeddings() is experimental and may change without notice."),this.apiClient.isVertexAI())throw new Error("Vertex AI does not support batches.createEmbeddings.");return this.createEmbeddingsInternal(t)}}createInlinedGenerateContentRequest(e){let t=tl(this.apiClient,e),o=t._url,i=A("{model}:batchGenerateContent",o),c=t.batch.inputConfig.requests,d=c.requests,u=[];for(let p of d){let h=Object.assign({},p);if(h.systemInstruction){let m=h.systemInstruction;delete h.systemInstruction;let g=h.request;g.systemInstruction=m,h.request=g}u.push(h)}return c.requests=u,delete t.config,delete t._url,delete t._query,{path:i,body:t}}getGcsUri(e){if(typeof e=="string")return e.startsWith("gs://")?e:void 0;if(!Array.isArray(e)&&e.gcsUri&&e.gcsUri.length>0)return e.gcsUri[0]}getBigqueryUri(e){if(typeof e=="string")return e.startsWith("bq://")?e:void 0;if(!Array.isArray(e))return e.bigqueryUri}formatDestination(e,t){let o=t?Object.assign({},t):{},i=Date.now().toString();if(o.displayName||(o.displayName=`genaiBatchJob_${i}`),o.dest===void 0){let s=this.getGcsUri(e),l=this.getBigqueryUri(e);if(s)s.endsWith(".jsonl")?o.dest=`${s.slice(0,-6)}/dest`:o.dest=`${s}_dest_${i}`;else if(l)o.dest=`${l}_dest_${i}`;else throw new Error("Unsupported source for Vertex AI: No GCS or BigQuery URI found.")}return o}async createInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Id(this.apiClient,e);return c=A("batchPredictionJobs",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l.then(p=>Si(p))}else{let u=tl(this.apiClient,e);return c=A("{model}:batchGenerateContent",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l.then(p=>$n(p))}}async createEmbeddingsInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=_d(this.apiClient,e);return s=A("{model}:asyncBatchEmbedContent",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>$n(d))}}async get(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Ld(this.apiClient,e);return c=A("batchPredictionJobs/{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l.then(p=>Si(p))}else{let u=Ud(this.apiClient,e);return c=A("batches/{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l.then(p=>$n(p))}}async cancel(e){var t,o,i,s;let l="",c={};if(this.apiClient.isVertexAI()){let d=gd(this.apiClient,e);l=A("batchPredictionJobs/{name}:cancel",d._url),c=d._query,delete d._url,delete d._query,await this.apiClient.request({path:l,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal})}else{let d=md(this.apiClient,e);l=A("batches/{name}:cancel",d._url),c=d._query,delete d._url,delete d._query,await this.apiClient.request({path:l,queryParams:c,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal})}}async listInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Jd(e);return c=A("batchPredictionJobs",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Yd(p),m=new On;return Object.assign(m,h),m})}else{let u=Wd(e);return c=A("batches",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Xd(p),m=new On;return Object.assign(m,h),m})}}async delete(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Ad(this.apiClient,e);return c=A("batchPredictionJobs/{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>vd(p))}else{let u=Cd(this.apiClient,e);return c=A("batches/{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>Sd(p))}}};function jd(n){let e={},t=r(n,["data"]);if(t!=null&&a(e,["data"],t),r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(jd,"blobToMldev$3");function nl(n){let e={},t=r(n,["parts"]);if(t!=null){let i=t;Array.isArray(i)&&(i=i.map(s=>Tu(s))),a(e,["parts"],i)}let o=r(n,["role"]);return o!=null&&a(e,["role"],o),e}f(nl,"contentToMldev$3");function eu(n,e){let t={},o=r(n,["ttl"]);e!==void 0&&o!=null&&a(e,["ttl"],o);let i=r(n,["expireTime"]);e!==void 0&&i!=null&&a(e,["expireTime"],i);let s=r(n,["displayName"]);e!==void 0&&s!=null&&a(e,["displayName"],s);let l=r(n,["contents"]);if(e!==void 0&&l!=null){let p=ue(l);Array.isArray(p)&&(p=p.map(h=>nl(h))),a(e,["contents"],p)}let c=r(n,["systemInstruction"]);e!==void 0&&c!=null&&a(e,["systemInstruction"],nl(te(c)));let d=r(n,["tools"]);if(e!==void 0&&d!=null){let p=d;Array.isArray(p)&&(p=p.map(h=>Cu(h))),a(e,["tools"],p)}let u=r(n,["toolConfig"]);if(e!==void 0&&u!=null&&a(e,["toolConfig"],_u(u)),r(n,["kmsKeyName"])!==void 0)throw new Error("kmsKeyName parameter is not supported in Gemini API.");return t}f(eu,"createCachedContentConfigToMldev");function tu(n,e){let t={},o=r(n,["ttl"]);e!==void 0&&o!=null&&a(e,["ttl"],o);let i=r(n,["expireTime"]);e!==void 0&&i!=null&&a(e,["expireTime"],i);let s=r(n,["displayName"]);e!==void 0&&s!=null&&a(e,["displayName"],s);let l=r(n,["contents"]);if(e!==void 0&&l!=null){let h=ue(l);Array.isArray(h)&&(h=h.map(m=>m)),a(e,["contents"],h)}let c=r(n,["systemInstruction"]);e!==void 0&&c!=null&&a(e,["systemInstruction"],te(c));let d=r(n,["tools"]);if(e!==void 0&&d!=null){let h=d;Array.isArray(h)&&(h=h.map(m=>Au(m))),a(e,["tools"],h)}let u=r(n,["toolConfig"]);e!==void 0&&u!=null&&a(e,["toolConfig"],u);let p=r(n,["kmsKeyName"]);return e!==void 0&&p!=null&&a(e,["encryption_spec","kmsKeyName"],p),t}f(tu,"createCachedContentConfigToVertex");function nu(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["model"],Cl(n,o));let i=r(e,["config"]);return i!=null&&eu(i,t),t}f(nu,"createCachedContentParametersToMldev");function ou(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["model"],Cl(n,o));let i=r(e,["config"]);return i!=null&&tu(i,t),t}f(ou,"createCachedContentParametersToVertex");function iu(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Me(n,o)),t}f(iu,"deleteCachedContentParametersToMldev");function ru(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Me(n,o)),t}f(ru,"deleteCachedContentParametersToVertex");function su(n){let e={},t=r(n,["sdkHttpResponse"]);return t!=null&&a(e,["sdkHttpResponse"],t),e}f(su,"deleteCachedContentResponseFromMldev");function au(n){let e={},t=r(n,["sdkHttpResponse"]);return t!=null&&a(e,["sdkHttpResponse"],t),e}f(au,"deleteCachedContentResponseFromVertex");function lu(n){let e={};if(r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let t=r(n,["fileUri"]);t!=null&&a(e,["fileUri"],t);let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(lu,"fileDataToMldev$3");function cu(n){let e={},t=r(n,["id"]);t!=null&&a(e,["id"],t);let o=r(n,["args"]);o!=null&&a(e,["args"],o);let i=r(n,["name"]);if(i!=null&&a(e,["name"],i),r(n,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is not supported in Gemini API.");if(r(n,["willContinue"])!==void 0)throw new Error("willContinue parameter is not supported in Gemini API.");return e}f(cu,"functionCallToMldev$3");function du(n){let e={},t=r(n,["mode"]);t!=null&&a(e,["mode"],t);let o=r(n,["allowedFunctionNames"]);if(o!=null&&a(e,["allowedFunctionNames"],o),r(n,["streamFunctionCallArguments"])!==void 0)throw new Error("streamFunctionCallArguments parameter is not supported in Gemini API.");return e}f(du,"functionCallingConfigToMldev$1");function uu(n){let e={};if(r(n,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");let t=r(n,["description"]);t!=null&&a(e,["description"],t);let o=r(n,["name"]);o!=null&&a(e,["name"],o);let i=r(n,["parameters"]);i!=null&&a(e,["parameters"],i);let s=r(n,["parametersJsonSchema"]);s!=null&&a(e,["parametersJsonSchema"],s);let l=r(n,["response"]);l!=null&&a(e,["response"],l);let c=r(n,["responseJsonSchema"]);return c!=null&&a(e,["responseJsonSchema"],c),e}f(uu,"functionDeclarationToVertex$2");function fu(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Me(n,o)),t}f(fu,"getCachedContentParametersToMldev");function pu(n,e){let t={},o=r(e,["name"]);return o!=null&&a(t,["_url","name"],Me(n,o)),t}f(pu,"getCachedContentParametersToVertex");function hu(n){let e={};if(r(n,["authConfig"])!==void 0)throw new Error("authConfig parameter is not supported in Gemini API.");let t=r(n,["enableWidget"]);return t!=null&&a(e,["enableWidget"],t),e}f(hu,"googleMapsToMldev$3");function mu(n){let e={};if(r(n,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is not supported in Gemini API.");if(r(n,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is not supported in Gemini API.");let t=r(n,["timeRangeFilter"]);return t!=null&&a(e,["timeRangeFilter"],t),e}f(mu,"googleSearchToMldev$3");function gu(n,e){let t={},o=r(n,["pageSize"]);e!==void 0&&o!=null&&a(e,["_query","pageSize"],o);let i=r(n,["pageToken"]);return e!==void 0&&i!=null&&a(e,["_query","pageToken"],i),t}f(gu,"listCachedContentsConfigToMldev");function bu(n,e){let t={},o=r(n,["pageSize"]);e!==void 0&&o!=null&&a(e,["_query","pageSize"],o);let i=r(n,["pageToken"]);return e!==void 0&&i!=null&&a(e,["_query","pageToken"],i),t}f(bu,"listCachedContentsConfigToVertex");function Eu(n){let e={},t=r(n,["config"]);return t!=null&&gu(t,e),e}f(Eu,"listCachedContentsParametersToMldev");function yu(n){let e={},t=r(n,["config"]);return t!=null&&bu(t,e),e}f(yu,"listCachedContentsParametersToVertex");function wu(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["cachedContents"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>l)),a(e,["cachedContents"],s)}return e}f(wu,"listCachedContentsResponseFromMldev");function Iu(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["cachedContents"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>l)),a(e,["cachedContents"],s)}return e}f(Iu,"listCachedContentsResponseFromVertex");function Tu(n){let e={},t=r(n,["mediaResolution"]);t!=null&&a(e,["mediaResolution"],t);let o=r(n,["codeExecutionResult"]);o!=null&&a(e,["codeExecutionResult"],o);let i=r(n,["executableCode"]);i!=null&&a(e,["executableCode"],i);let s=r(n,["fileData"]);s!=null&&a(e,["fileData"],lu(s));let l=r(n,["functionCall"]);l!=null&&a(e,["functionCall"],cu(l));let c=r(n,["functionResponse"]);c!=null&&a(e,["functionResponse"],c);let d=r(n,["inlineData"]);d!=null&&a(e,["inlineData"],jd(d));let u=r(n,["text"]);u!=null&&a(e,["text"],u);let p=r(n,["thought"]);p!=null&&a(e,["thought"],p);let h=r(n,["thoughtSignature"]);h!=null&&a(e,["thoughtSignature"],h);let m=r(n,["videoMetadata"]);return m!=null&&a(e,["videoMetadata"],m),e}f(Tu,"partToMldev$3");function _u(n){let e={},t=r(n,["functionCallingConfig"]);t!=null&&a(e,["functionCallingConfig"],du(t));let o=r(n,["retrievalConfig"]);return o!=null&&a(e,["retrievalConfig"],o),e}f(_u,"toolConfigToMldev$1");function Cu(n){let e={},t=r(n,["functionDeclarations"]);if(t!=null){let p=t;Array.isArray(p)&&(p=p.map(h=>h)),a(e,["functionDeclarations"],p)}if(r(n,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");let o=r(n,["googleSearchRetrieval"]);o!=null&&a(e,["googleSearchRetrieval"],o);let i=r(n,["computerUse"]);i!=null&&a(e,["computerUse"],i);let s=r(n,["fileSearch"]);s!=null&&a(e,["fileSearch"],s);let l=r(n,["codeExecution"]);if(l!=null&&a(e,["codeExecution"],l),r(n,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");let c=r(n,["googleMaps"]);c!=null&&a(e,["googleMaps"],hu(c));let d=r(n,["googleSearch"]);d!=null&&a(e,["googleSearch"],mu(d));let u=r(n,["urlContext"]);return u!=null&&a(e,["urlContext"],u),e}f(Cu,"toolToMldev$3");function Au(n){let e={},t=r(n,["functionDeclarations"]);if(t!=null){let h=t;Array.isArray(h)&&(h=h.map(m=>uu(m))),a(e,["functionDeclarations"],h)}let o=r(n,["retrieval"]);o!=null&&a(e,["retrieval"],o);let i=r(n,["googleSearchRetrieval"]);i!=null&&a(e,["googleSearchRetrieval"],i);let s=r(n,["computerUse"]);if(s!=null&&a(e,["computerUse"],s),r(n,["fileSearch"])!==void 0)throw new Error("fileSearch parameter is not supported in Vertex AI.");let l=r(n,["codeExecution"]);l!=null&&a(e,["codeExecution"],l);let c=r(n,["enterpriseWebSearch"]);c!=null&&a(e,["enterpriseWebSearch"],c);let d=r(n,["googleMaps"]);d!=null&&a(e,["googleMaps"],d);let u=r(n,["googleSearch"]);u!=null&&a(e,["googleSearch"],u);let p=r(n,["urlContext"]);return p!=null&&a(e,["urlContext"],p),e}f(Au,"toolToVertex$2");function Su(n,e){let t={},o=r(n,["ttl"]);e!==void 0&&o!=null&&a(e,["ttl"],o);let i=r(n,["expireTime"]);return e!==void 0&&i!=null&&a(e,["expireTime"],i),t}f(Su,"updateCachedContentConfigToMldev");function vu(n,e){let t={},o=r(n,["ttl"]);e!==void 0&&o!=null&&a(e,["ttl"],o);let i=r(n,["expireTime"]);return e!==void 0&&i!=null&&a(e,["expireTime"],i),t}f(vu,"updateCachedContentConfigToVertex");function $u(n,e){let t={},o=r(e,["name"]);o!=null&&a(t,["_url","name"],Me(n,o));let i=r(e,["config"]);return i!=null&&Su(i,t),t}f($u,"updateCachedContentParametersToMldev");function Nu(n,e){let t={},o=r(e,["name"]);o!=null&&a(t,["_url","name"],Me(n,o));let i=r(e,["config"]);return i!=null&&vu(i,t),t}f(Nu,"updateCachedContentParametersToVertex");var $i=class extends Ee{static{f(this,"Caches")}constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new Ge(xe.PAGED_ITEM_CACHED_CONTENTS,o=>this.listInternal(o),await this.listInternal(t),t)}async create(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=ou(this.apiClient,e);return c=A("cachedContents",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l.then(p=>p)}else{let u=nu(this.apiClient,e);return c=A("cachedContents",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l.then(p=>p)}}async get(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=pu(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l.then(p=>p)}else{let u=fu(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l.then(p=>p)}}async delete(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=ru(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=au(p),m=new Vn;return Object.assign(m,h),m})}else{let u=iu(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=su(p),m=new Vn;return Object.assign(m,h),m})}}async update(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Nu(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l.then(p=>p)}else{let u=$u(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l.then(p=>p)}}async listInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=yu(e);return c=A("cachedContents",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Iu(p),m=new qn;return Object.assign(m,h),m})}else{let u=Eu(e);return c=A("cachedContents",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=wu(p),m=new qn;return Object.assign(m,h),m})}}};function Bn(n,e){var t={};for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&e.indexOf(o)<0&&(t[o]=n[o]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,o=Object.getOwnPropertySymbols(n);i<o.length;i++)e.indexOf(o[i])<0&&Object.prototype.propertyIsEnumerable.call(n,o[i])&&(t[o[i]]=n[o[i]]);return t}f(Bn,"__rest");function ol(n){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&n[e],o=0;if(t)return t.call(n);if(n&&typeof n.length=="number")return{next:f(function(){return n&&o>=n.length&&(n=void 0),{value:n&&n[o++],done:!n}},"next")};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}f(ol,"__values");function R(n){return this instanceof R?(this.v=n,this):new R(n)}f(R,"__await");function ge(n,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o=t.apply(n,e||[]),i,s=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",l),i[Symbol.asyncIterator]=function(){return this},i;function l(g){return function(b){return Promise.resolve(b).then(g,h)}}function c(g,b){o[g]&&(i[g]=function(y){return new Promise(function(w,I){s.push([g,y,w,I])>1||d(g,y)})},b&&(i[g]=b(i[g])))}function d(g,b){try{u(o[g](b))}catch(y){m(s[0][3],y)}}function u(g){g.value instanceof R?Promise.resolve(g.value.v).then(p,h):m(s[0][2],g)}function p(g){d("next",g)}function h(g){d("throw",g)}function m(g,b){g(b),s.shift(),s.length&&d(s[0][0],s[0][1])}}f(ge,"__asyncGenerator");function be(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=n[Symbol.asyncIterator],t;return e?e.call(n):(n=typeof ol=="function"?ol(n):n[Symbol.iterator](),t={},o("next"),o("throw"),o("return"),t[Symbol.asyncIterator]=function(){return this},t);function o(s){t[s]=n[s]&&function(l){return new Promise(function(c,d){l=n[s](l),i(c,d,l.done,l.value)})}}function i(s,l,c,d){Promise.resolve(d).then(function(u){s({value:u,done:c})},l)}}f(be,"__asyncValues");function Pu(n){var e;if(n.candidates==null||n.candidates.length===0)return!1;let t=(e=n.candidates[0])===null||e===void 0?void 0:e.content;return t===void 0?!1:Ll(t)}f(Pu,"isValidResponse");function Ll(n){if(n.parts===void 0||n.parts.length===0)return!1;for(let e of n.parts)if(e===void 0||Object.keys(e).length===0)return!1;return!0}f(Ll,"isValidContent");function Ru(n){if(n.length!==0){for(let e of n)if(e.role!=="user"&&e.role!=="model")throw new Error(`Role must be user or model, but got ${e.role}.`)}}f(Ru,"validateHistory");function il(n){if(n===void 0||n.length===0)return[];let e=[],t=n.length,o=0;for(;o<t;)if(n[o].role==="user")e.push(n[o]),o++;else{let i=[],s=!0;for(;o<t&&n[o].role==="model";)i.push(n[o]),s&&!Ll(n[o])&&(s=!1),o++;s?e.push(...i):e.pop()}return e}f(il,"extractCuratedHistory");var Ni=class{static{f(this,"Chats")}constructor(e,t){this.modelsModule=e,this.apiClient=t}create(e){return new Pi(this.apiClient,this.modelsModule,e.model,e.config,structuredClone(e.history))}},Pi=class{static{f(this,"Chat")}constructor(e,t,o,i={},s=[]){this.apiClient=e,this.modelsModule=t,this.model=o,this.config=i,this.history=s,this.sendPromise=Promise.resolve(),Ru(s)}async sendMessage(e){var t;await this.sendPromise;let o=te(e.message),i=this.modelsModule.generateContent({model:this.model,contents:this.getHistory(!0).concat(o),config:(t=e.config)!==null&&t!==void 0?t:this.config});return this.sendPromise=(async()=>{var s,l,c;let d=await i,u=(l=(s=d.candidates)===null||s===void 0?void 0:s[0])===null||l===void 0?void 0:l.content,p=d.automaticFunctionCallingHistory,h=this.getHistory(!0).length,m=[];p!=null&&(m=(c=p.slice(h))!==null&&c!==void 0?c:[]);let g=u?[u]:[];this.recordHistory(o,g,m)})(),await this.sendPromise.catch(()=>{this.sendPromise=Promise.resolve()}),i}async sendMessageStream(e){var t;await this.sendPromise;let o=te(e.message),i=this.modelsModule.generateContentStream({model:this.model,contents:this.getHistory(!0).concat(o),config:(t=e.config)!==null&&t!==void 0?t:this.config});this.sendPromise=i.then(()=>{}).catch(()=>{});let s=await i;return this.processStreamResponse(s,o)}getHistory(e=!1){let t=e?il(this.history):this.history;return structuredClone(t)}processStreamResponse(e,t){return ge(this,arguments,f(function*(){var i,s,l,c,d,u;let p=[];try{for(var h=!0,m=be(e),g;g=yield R(m.next()),i=g.done,!i;h=!0){c=g.value,h=!1;let b=c;if(Pu(b)){let y=(u=(d=b.candidates)===null||d===void 0?void 0:d[0])===null||u===void 0?void 0:u.content;y!==void 0&&p.push(y)}yield yield R(b)}}catch(b){s={error:b}}finally{try{!h&&!i&&(l=m.return)&&(yield R(l.call(m)))}finally{if(s)throw s.error}}this.recordHistory(t,p)},"processStreamResponse_1"))}recordHistory(e,t,o){let i=[];t.length>0&&t.every(s=>s.role!==void 0)?i=t:i.push({role:"model",parts:[]}),o&&o.length>0?this.history.push(...il(o)):this.history.push(e),this.history.push(...i)}};var Wn=class n extends Error{static{f(this,"ApiError")}constructor(e){super(e.message),this.name="ApiError",this.status=e.status,Object.setPrototypeOf(this,n.prototype)}};function xu(n){let e={},t=r(n,["file"]);return t!=null&&a(e,["file"],t),e}f(xu,"createFileParametersToMldev");function Gu(n){let e={},t=r(n,["sdkHttpResponse"]);return t!=null&&a(e,["sdkHttpResponse"],t),e}f(Gu,"createFileResponseFromMldev");function Mu(n){let e={},t=r(n,["name"]);return t!=null&&a(e,["_url","file"],Pl(t)),e}f(Mu,"deleteFileParametersToMldev");function Du(n){let e={},t=r(n,["sdkHttpResponse"]);return t!=null&&a(e,["sdkHttpResponse"],t),e}f(Du,"deleteFileResponseFromMldev");function Uu(n){let e={},t=r(n,["name"]);return t!=null&&a(e,["_url","file"],Pl(t)),e}f(Uu,"getFileParametersToMldev");function Lu(n,e){let t={},o=r(n,["pageSize"]);e!==void 0&&o!=null&&a(e,["_query","pageSize"],o);let i=r(n,["pageToken"]);return e!==void 0&&i!=null&&a(e,["_query","pageToken"],i),t}f(Lu,"listFilesConfigToMldev");function Fu(n){let e={},t=r(n,["config"]);return t!=null&&Lu(t,e),e}f(Fu,"listFilesParametersToMldev");function ku(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["files"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>l)),a(e,["files"],s)}return e}f(ku,"listFilesResponseFromMldev");var Ri=class extends Ee{static{f(this,"Files")}constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new Ge(xe.PAGED_ITEM_FILES,o=>this.listInternal(o),await this.listInternal(t),t)}async upload(e){if(this.apiClient.isVertexAI())throw new Error("Vertex AI does not support uploading files. You can share files through a GCS bucket.");return this.apiClient.uploadFile(e.file,e.config).then(t=>t)}async download(e){await this.apiClient.downloadFile(e)}async listInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=Fu(e);return s=A("files",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json().then(u=>{let p=u;return p.sdkHttpResponse={headers:d.headers},p})),i.then(d=>{let u=ku(d),p=new yi;return Object.assign(p,u),p})}}async createInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=xu(e);return s=A("upload/v1beta/files",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>{let u=Gu(d),p=new wi;return Object.assign(p,u),p})}}async get(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=Uu(e);return s=A("files/{file}",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>d)}}async delete(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=Mu(e);return s=A("files/{file}",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json().then(u=>{let p=u;return p.sdkHttpResponse={headers:d.headers},p})),i.then(d=>{let u=Du(d),p=new Ii;return Object.assign(p,u),p})}}};function Nn(n){let e={},t=r(n,["data"]);if(t!=null&&a(e,["data"],t),r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(Nn,"blobToMldev$2");function Vu(n){let e={},t=r(n,["parts"]);if(t!=null){let i=t;Array.isArray(i)&&(i=i.map(s=>nf(s))),a(e,["parts"],i)}let o=r(n,["role"]);return o!=null&&a(e,["role"],o),e}f(Vu,"contentToMldev$2");function qu(n){let e={};if(r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let t=r(n,["fileUri"]);t!=null&&a(e,["fileUri"],t);let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(qu,"fileDataToMldev$2");function Ou(n){let e={},t=r(n,["id"]);t!=null&&a(e,["id"],t);let o=r(n,["args"]);o!=null&&a(e,["args"],o);let i=r(n,["name"]);if(i!=null&&a(e,["name"],i),r(n,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is not supported in Gemini API.");if(r(n,["willContinue"])!==void 0)throw new Error("willContinue parameter is not supported in Gemini API.");return e}f(Ou,"functionCallToMldev$2");function Hu(n){let e={};if(r(n,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");let t=r(n,["description"]);t!=null&&a(e,["description"],t);let o=r(n,["name"]);o!=null&&a(e,["name"],o);let i=r(n,["parameters"]);i!=null&&a(e,["parameters"],i);let s=r(n,["parametersJsonSchema"]);s!=null&&a(e,["parametersJsonSchema"],s);let l=r(n,["response"]);l!=null&&a(e,["response"],l);let c=r(n,["responseJsonSchema"]);return c!=null&&a(e,["responseJsonSchema"],c),e}f(Hu,"functionDeclarationToVertex$1");function Bu(n){let e={},t=r(n,["modelSelectionConfig"]);t!=null&&a(e,["modelConfig"],t);let o=r(n,["responseJsonSchema"]);o!=null&&a(e,["responseJsonSchema"],o);let i=r(n,["audioTimestamp"]);i!=null&&a(e,["audioTimestamp"],i);let s=r(n,["candidateCount"]);s!=null&&a(e,["candidateCount"],s);let l=r(n,["enableAffectiveDialog"]);l!=null&&a(e,["enableAffectiveDialog"],l);let c=r(n,["frequencyPenalty"]);c!=null&&a(e,["frequencyPenalty"],c);let d=r(n,["logprobs"]);d!=null&&a(e,["logprobs"],d);let u=r(n,["maxOutputTokens"]);u!=null&&a(e,["maxOutputTokens"],u);let p=r(n,["mediaResolution"]);p!=null&&a(e,["mediaResolution"],p);let h=r(n,["presencePenalty"]);h!=null&&a(e,["presencePenalty"],h);let m=r(n,["responseLogprobs"]);m!=null&&a(e,["responseLogprobs"],m);let g=r(n,["responseMimeType"]);g!=null&&a(e,["responseMimeType"],g);let b=r(n,["responseModalities"]);b!=null&&a(e,["responseModalities"],b);let y=r(n,["responseSchema"]);y!=null&&a(e,["responseSchema"],y);let w=r(n,["routingConfig"]);w!=null&&a(e,["routingConfig"],w);let I=r(n,["seed"]);I!=null&&a(e,["seed"],I);let T=r(n,["speechConfig"]);T!=null&&a(e,["speechConfig"],Fl(T));let _=r(n,["stopSequences"]);_!=null&&a(e,["stopSequences"],_);let C=r(n,["temperature"]);C!=null&&a(e,["temperature"],C);let v=r(n,["thinkingConfig"]);v!=null&&a(e,["thinkingConfig"],v);let P=r(n,["topK"]);P!=null&&a(e,["topK"],P);let N=r(n,["topP"]);if(N!=null&&a(e,["topP"],N),r(n,["enableEnhancedCivicAnswers"])!==void 0)throw new Error("enableEnhancedCivicAnswers parameter is not supported in Vertex AI.");return e}f(Bu,"generationConfigToVertex$1");function Wu(n){let e={};if(r(n,["authConfig"])!==void 0)throw new Error("authConfig parameter is not supported in Gemini API.");let t=r(n,["enableWidget"]);return t!=null&&a(e,["enableWidget"],t),e}f(Wu,"googleMapsToMldev$2");function Ju(n){let e={};if(r(n,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is not supported in Gemini API.");if(r(n,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is not supported in Gemini API.");let t=r(n,["timeRangeFilter"]);return t!=null&&a(e,["timeRangeFilter"],t),e}f(Ju,"googleSearchToMldev$2");function Xu(n,e){let t={},o=r(n,["generationConfig"]);e!==void 0&&o!=null&&a(e,["setup","generationConfig"],o);let i=r(n,["responseModalities"]);e!==void 0&&i!=null&&a(e,["setup","generationConfig","responseModalities"],i);let s=r(n,["temperature"]);e!==void 0&&s!=null&&a(e,["setup","generationConfig","temperature"],s);let l=r(n,["topP"]);e!==void 0&&l!=null&&a(e,["setup","generationConfig","topP"],l);let c=r(n,["topK"]);e!==void 0&&c!=null&&a(e,["setup","generationConfig","topK"],c);let d=r(n,["maxOutputTokens"]);e!==void 0&&d!=null&&a(e,["setup","generationConfig","maxOutputTokens"],d);let u=r(n,["mediaResolution"]);e!==void 0&&u!=null&&a(e,["setup","generationConfig","mediaResolution"],u);let p=r(n,["seed"]);e!==void 0&&p!=null&&a(e,["setup","generationConfig","seed"],p);let h=r(n,["speechConfig"]);e!==void 0&&h!=null&&a(e,["setup","generationConfig","speechConfig"],dr(h));let m=r(n,["thinkingConfig"]);e!==void 0&&m!=null&&a(e,["setup","generationConfig","thinkingConfig"],m);let g=r(n,["enableAffectiveDialog"]);e!==void 0&&g!=null&&a(e,["setup","generationConfig","enableAffectiveDialog"],g);let b=r(n,["systemInstruction"]);e!==void 0&&b!=null&&a(e,["setup","systemInstruction"],Vu(te(b)));let y=r(n,["tools"]);if(e!==void 0&&y!=null){let P=$t(y);Array.isArray(P)&&(P=P.map(N=>rf(vt(N)))),a(e,["setup","tools"],P)}let w=r(n,["sessionResumption"]);e!==void 0&&w!=null&&a(e,["setup","sessionResumption"],of(w));let I=r(n,["inputAudioTranscription"]);e!==void 0&&I!=null&&a(e,["setup","inputAudioTranscription"],I);let T=r(n,["outputAudioTranscription"]);e!==void 0&&T!=null&&a(e,["setup","outputAudioTranscription"],T);let _=r(n,["realtimeInputConfig"]);e!==void 0&&_!=null&&a(e,["setup","realtimeInputConfig"],_);let C=r(n,["contextWindowCompression"]);e!==void 0&&C!=null&&a(e,["setup","contextWindowCompression"],C);let v=r(n,["proactivity"]);if(e!==void 0&&v!=null&&a(e,["setup","proactivity"],v),r(n,["explicitVadSignal"])!==void 0)throw new Error("explicitVadSignal parameter is not supported in Gemini API.");return t}f(Xu,"liveConnectConfigToMldev$1");function Yu(n,e){let t={},o=r(n,["generationConfig"]);e!==void 0&&o!=null&&a(e,["setup","generationConfig"],Bu(o));let i=r(n,["responseModalities"]);e!==void 0&&i!=null&&a(e,["setup","generationConfig","responseModalities"],i);let s=r(n,["temperature"]);e!==void 0&&s!=null&&a(e,["setup","generationConfig","temperature"],s);let l=r(n,["topP"]);e!==void 0&&l!=null&&a(e,["setup","generationConfig","topP"],l);let c=r(n,["topK"]);e!==void 0&&c!=null&&a(e,["setup","generationConfig","topK"],c);let d=r(n,["maxOutputTokens"]);e!==void 0&&d!=null&&a(e,["setup","generationConfig","maxOutputTokens"],d);let u=r(n,["mediaResolution"]);e!==void 0&&u!=null&&a(e,["setup","generationConfig","mediaResolution"],u);let p=r(n,["seed"]);e!==void 0&&p!=null&&a(e,["setup","generationConfig","seed"],p);let h=r(n,["speechConfig"]);e!==void 0&&h!=null&&a(e,["setup","generationConfig","speechConfig"],Fl(dr(h)));let m=r(n,["thinkingConfig"]);e!==void 0&&m!=null&&a(e,["setup","generationConfig","thinkingConfig"],m);let g=r(n,["enableAffectiveDialog"]);e!==void 0&&g!=null&&a(e,["setup","generationConfig","enableAffectiveDialog"],g);let b=r(n,["systemInstruction"]);e!==void 0&&b!=null&&a(e,["setup","systemInstruction"],te(b));let y=r(n,["tools"]);if(e!==void 0&&y!=null){let N=$t(y);Array.isArray(N)&&(N=N.map(B=>sf(vt(B)))),a(e,["setup","tools"],N)}let w=r(n,["sessionResumption"]);e!==void 0&&w!=null&&a(e,["setup","sessionResumption"],w);let I=r(n,["inputAudioTranscription"]);e!==void 0&&I!=null&&a(e,["setup","inputAudioTranscription"],I);let T=r(n,["outputAudioTranscription"]);e!==void 0&&T!=null&&a(e,["setup","outputAudioTranscription"],T);let _=r(n,["realtimeInputConfig"]);e!==void 0&&_!=null&&a(e,["setup","realtimeInputConfig"],_);let C=r(n,["contextWindowCompression"]);e!==void 0&&C!=null&&a(e,["setup","contextWindowCompression"],C);let v=r(n,["proactivity"]);e!==void 0&&v!=null&&a(e,["setup","proactivity"],v);let P=r(n,["explicitVadSignal"]);return e!==void 0&&P!=null&&a(e,["setup","explicitVadSignal"],P),t}f(Yu,"liveConnectConfigToVertex");function zu(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["setup","model"],F(n,o));let i=r(e,["config"]);return i!=null&&a(t,["config"],Xu(i,t)),t}f(zu,"liveConnectParametersToMldev");function Ku(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["setup","model"],F(n,o));let i=r(e,["config"]);return i!=null&&a(t,["config"],Yu(i,t)),t}f(Ku,"liveConnectParametersToVertex");function Qu(n){let e={},t=r(n,["musicGenerationConfig"]);return t!=null&&a(e,["musicGenerationConfig"],t),e}f(Qu,"liveMusicSetConfigParametersToMldev");function Zu(n){let e={},t=r(n,["weightedPrompts"]);if(t!=null){let o=t;Array.isArray(o)&&(o=o.map(i=>i)),a(e,["weightedPrompts"],o)}return e}f(Zu,"liveMusicSetWeightedPromptsParametersToMldev");function ju(n){let e={},t=r(n,["media"]);if(t!=null){let u=Al(t);Array.isArray(u)&&(u=u.map(p=>Nn(p))),a(e,["mediaChunks"],u)}let o=r(n,["audio"]);o!=null&&a(e,["audio"],Nn(vl(o)));let i=r(n,["audioStreamEnd"]);i!=null&&a(e,["audioStreamEnd"],i);let s=r(n,["video"]);s!=null&&a(e,["video"],Nn(Sl(s)));let l=r(n,["text"]);l!=null&&a(e,["text"],l);let c=r(n,["activityStart"]);c!=null&&a(e,["activityStart"],c);let d=r(n,["activityEnd"]);return d!=null&&a(e,["activityEnd"],d),e}f(ju,"liveSendRealtimeInputParametersToMldev");function ef(n){let e={},t=r(n,["media"]);if(t!=null){let u=Al(t);Array.isArray(u)&&(u=u.map(p=>p)),a(e,["mediaChunks"],u)}let o=r(n,["audio"]);o!=null&&a(e,["audio"],vl(o));let i=r(n,["audioStreamEnd"]);i!=null&&a(e,["audioStreamEnd"],i);let s=r(n,["video"]);s!=null&&a(e,["video"],Sl(s));let l=r(n,["text"]);l!=null&&a(e,["text"],l);let c=r(n,["activityStart"]);c!=null&&a(e,["activityStart"],c);let d=r(n,["activityEnd"]);return d!=null&&a(e,["activityEnd"],d),e}f(ef,"liveSendRealtimeInputParametersToVertex");function tf(n){let e={},t=r(n,["setupComplete"]);t!=null&&a(e,["setupComplete"],t);let o=r(n,["serverContent"]);o!=null&&a(e,["serverContent"],o);let i=r(n,["toolCall"]);i!=null&&a(e,["toolCall"],i);let s=r(n,["toolCallCancellation"]);s!=null&&a(e,["toolCallCancellation"],s);let l=r(n,["usageMetadata"]);l!=null&&a(e,["usageMetadata"],af(l));let c=r(n,["goAway"]);c!=null&&a(e,["goAway"],c);let d=r(n,["sessionResumptionUpdate"]);d!=null&&a(e,["sessionResumptionUpdate"],d);let u=r(n,["voiceActivityDetectionSignal"]);return u!=null&&a(e,["voiceActivityDetectionSignal"],u),e}f(tf,"liveServerMessageFromVertex");function nf(n){let e={},t=r(n,["mediaResolution"]);t!=null&&a(e,["mediaResolution"],t);let o=r(n,["codeExecutionResult"]);o!=null&&a(e,["codeExecutionResult"],o);let i=r(n,["executableCode"]);i!=null&&a(e,["executableCode"],i);let s=r(n,["fileData"]);s!=null&&a(e,["fileData"],qu(s));let l=r(n,["functionCall"]);l!=null&&a(e,["functionCall"],Ou(l));let c=r(n,["functionResponse"]);c!=null&&a(e,["functionResponse"],c);let d=r(n,["inlineData"]);d!=null&&a(e,["inlineData"],Nn(d));let u=r(n,["text"]);u!=null&&a(e,["text"],u);let p=r(n,["thought"]);p!=null&&a(e,["thought"],p);let h=r(n,["thoughtSignature"]);h!=null&&a(e,["thoughtSignature"],h);let m=r(n,["videoMetadata"]);return m!=null&&a(e,["videoMetadata"],m),e}f(nf,"partToMldev$2");function of(n){let e={},t=r(n,["handle"]);if(t!=null&&a(e,["handle"],t),r(n,["transparent"])!==void 0)throw new Error("transparent parameter is not supported in Gemini API.");return e}f(of,"sessionResumptionConfigToMldev$1");function Fl(n){let e={},t=r(n,["voiceConfig"]);t!=null&&a(e,["voiceConfig"],t);let o=r(n,["languageCode"]);if(o!=null&&a(e,["languageCode"],o),r(n,["multiSpeakerVoiceConfig"])!==void 0)throw new Error("multiSpeakerVoiceConfig parameter is not supported in Vertex AI.");return e}f(Fl,"speechConfigToVertex$1");function rf(n){let e={},t=r(n,["functionDeclarations"]);if(t!=null){let p=t;Array.isArray(p)&&(p=p.map(h=>h)),a(e,["functionDeclarations"],p)}if(r(n,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");let o=r(n,["googleSearchRetrieval"]);o!=null&&a(e,["googleSearchRetrieval"],o);let i=r(n,["computerUse"]);i!=null&&a(e,["computerUse"],i);let s=r(n,["fileSearch"]);s!=null&&a(e,["fileSearch"],s);let l=r(n,["codeExecution"]);if(l!=null&&a(e,["codeExecution"],l),r(n,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");let c=r(n,["googleMaps"]);c!=null&&a(e,["googleMaps"],Wu(c));let d=r(n,["googleSearch"]);d!=null&&a(e,["googleSearch"],Ju(d));let u=r(n,["urlContext"]);return u!=null&&a(e,["urlContext"],u),e}f(rf,"toolToMldev$2");function sf(n){let e={},t=r(n,["functionDeclarations"]);if(t!=null){let h=t;Array.isArray(h)&&(h=h.map(m=>Hu(m))),a(e,["functionDeclarations"],h)}let o=r(n,["retrieval"]);o!=null&&a(e,["retrieval"],o);let i=r(n,["googleSearchRetrieval"]);i!=null&&a(e,["googleSearchRetrieval"],i);let s=r(n,["computerUse"]);if(s!=null&&a(e,["computerUse"],s),r(n,["fileSearch"])!==void 0)throw new Error("fileSearch parameter is not supported in Vertex AI.");let l=r(n,["codeExecution"]);l!=null&&a(e,["codeExecution"],l);let c=r(n,["enterpriseWebSearch"]);c!=null&&a(e,["enterpriseWebSearch"],c);let d=r(n,["googleMaps"]);d!=null&&a(e,["googleMaps"],d);let u=r(n,["googleSearch"]);u!=null&&a(e,["googleSearch"],u);let p=r(n,["urlContext"]);return p!=null&&a(e,["urlContext"],p),e}f(sf,"toolToVertex$1");function af(n){let e={},t=r(n,["promptTokenCount"]);t!=null&&a(e,["promptTokenCount"],t);let o=r(n,["cachedContentTokenCount"]);o!=null&&a(e,["cachedContentTokenCount"],o);let i=r(n,["candidatesTokenCount"]);i!=null&&a(e,["responseTokenCount"],i);let s=r(n,["toolUsePromptTokenCount"]);s!=null&&a(e,["toolUsePromptTokenCount"],s);let l=r(n,["thoughtsTokenCount"]);l!=null&&a(e,["thoughtsTokenCount"],l);let c=r(n,["totalTokenCount"]);c!=null&&a(e,["totalTokenCount"],c);let d=r(n,["promptTokensDetails"]);if(d!=null){let g=d;Array.isArray(g)&&(g=g.map(b=>b)),a(e,["promptTokensDetails"],g)}let u=r(n,["cacheTokensDetails"]);if(u!=null){let g=u;Array.isArray(g)&&(g=g.map(b=>b)),a(e,["cacheTokensDetails"],g)}let p=r(n,["candidatesTokensDetails"]);if(p!=null){let g=p;Array.isArray(g)&&(g=g.map(b=>b)),a(e,["responseTokensDetails"],g)}let h=r(n,["toolUsePromptTokensDetails"]);if(h!=null){let g=h;Array.isArray(g)&&(g=g.map(b=>b)),a(e,["toolUsePromptTokensDetails"],g)}let m=r(n,["trafficType"]);return m!=null&&a(e,["trafficType"],m),e}f(af,"usageMetadataFromVertex");function lf(n){let e={},t=r(n,["data"]);if(t!=null&&a(e,["data"],t),r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(lf,"blobToMldev$1");function cf(n){let e={},t=r(n,["content"]);t!=null&&a(e,["content"],t);let o=r(n,["citationMetadata"]);o!=null&&a(e,["citationMetadata"],df(o));let i=r(n,["tokenCount"]);i!=null&&a(e,["tokenCount"],i);let s=r(n,["finishReason"]);s!=null&&a(e,["finishReason"],s);let l=r(n,["avgLogprobs"]);l!=null&&a(e,["avgLogprobs"],l);let c=r(n,["groundingMetadata"]);c!=null&&a(e,["groundingMetadata"],c);let d=r(n,["index"]);d!=null&&a(e,["index"],d);let u=r(n,["logprobsResult"]);u!=null&&a(e,["logprobsResult"],u);let p=r(n,["safetyRatings"]);if(p!=null){let m=p;Array.isArray(m)&&(m=m.map(g=>g)),a(e,["safetyRatings"],m)}let h=r(n,["urlContextMetadata"]);return h!=null&&a(e,["urlContextMetadata"],h),e}f(cf,"candidateFromMldev");function df(n){let e={},t=r(n,["citationSources"]);if(t!=null){let o=t;Array.isArray(o)&&(o=o.map(i=>i)),a(e,["citations"],o)}return e}f(df,"citationMetadataFromMldev");function uf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["contents"]);if(i!=null){let s=ue(i);Array.isArray(s)&&(s=s.map(l=>l)),a(t,["contents"],s)}return t}f(uf,"computeTokensParametersToVertex");function ff(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["tokensInfo"]);if(o!=null){let i=o;Array.isArray(i)&&(i=i.map(s=>s)),a(e,["tokensInfo"],i)}return e}f(ff,"computeTokensResponseFromVertex");function pf(n){let e={},t=r(n,["values"]);t!=null&&a(e,["values"],t);let o=r(n,["statistics"]);return o!=null&&a(e,["statistics"],hf(o)),e}f(pf,"contentEmbeddingFromVertex");function hf(n){let e={},t=r(n,["truncated"]);t!=null&&a(e,["truncated"],t);let o=r(n,["token_count"]);return o!=null&&a(e,["tokenCount"],o),e}f(hf,"contentEmbeddingStatisticsFromVertex");function ao(n){let e={},t=r(n,["parts"]);if(t!=null){let i=t;Array.isArray(i)&&(i=i.map(s=>_p(s))),a(e,["parts"],i)}let o=r(n,["role"]);return o!=null&&a(e,["role"],o),e}f(ao,"contentToMldev$1");function mf(n){let e={},t=r(n,["controlType"]);t!=null&&a(e,["controlType"],t);let o=r(n,["enableControlImageComputation"]);return o!=null&&a(e,["computeControl"],o),e}f(mf,"controlReferenceConfigToVertex");function gf(n){let e={};if(r(n,["systemInstruction"])!==void 0)throw new Error("systemInstruction parameter is not supported in Gemini API.");if(r(n,["tools"])!==void 0)throw new Error("tools parameter is not supported in Gemini API.");if(r(n,["generationConfig"])!==void 0)throw new Error("generationConfig parameter is not supported in Gemini API.");return e}f(gf,"countTokensConfigToMldev");function bf(n,e){let t={},o=r(n,["systemInstruction"]);e!==void 0&&o!=null&&a(e,["systemInstruction"],te(o));let i=r(n,["tools"]);if(e!==void 0&&i!=null){let l=i;Array.isArray(l)&&(l=l.map(c=>Hl(c))),a(e,["tools"],l)}let s=r(n,["generationConfig"]);return e!==void 0&&s!=null&&a(e,["generationConfig"],lp(s)),t}f(bf,"countTokensConfigToVertex");function Ef(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["contents"]);if(i!=null){let l=ue(i);Array.isArray(l)&&(l=l.map(c=>ao(c))),a(t,["contents"],l)}let s=r(e,["config"]);return s!=null&&gf(s),t}f(Ef,"countTokensParametersToMldev");function yf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["contents"]);if(i!=null){let l=ue(i);Array.isArray(l)&&(l=l.map(c=>c)),a(t,["contents"],l)}let s=r(e,["config"]);return s!=null&&bf(s,t),t}f(yf,"countTokensParametersToVertex");function wf(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["totalTokens"]);o!=null&&a(e,["totalTokens"],o);let i=r(n,["cachedContentTokenCount"]);return i!=null&&a(e,["cachedContentTokenCount"],i),e}f(wf,"countTokensResponseFromMldev");function If(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["totalTokens"]);return o!=null&&a(e,["totalTokens"],o),e}f(If,"countTokensResponseFromVertex");function Tf(n,e){let t={},o=r(e,["model"]);return o!=null&&a(t,["_url","name"],F(n,o)),t}f(Tf,"deleteModelParametersToMldev");function _f(n,e){let t={},o=r(e,["model"]);return o!=null&&a(t,["_url","name"],F(n,o)),t}f(_f,"deleteModelParametersToVertex");function Cf(n){let e={},t=r(n,["sdkHttpResponse"]);return t!=null&&a(e,["sdkHttpResponse"],t),e}f(Cf,"deleteModelResponseFromMldev");function Af(n){let e={},t=r(n,["sdkHttpResponse"]);return t!=null&&a(e,["sdkHttpResponse"],t),e}f(Af,"deleteModelResponseFromVertex");function Sf(n,e){let t={},o=r(n,["outputGcsUri"]);e!==void 0&&o!=null&&a(e,["parameters","storageUri"],o);let i=r(n,["negativePrompt"]);e!==void 0&&i!=null&&a(e,["parameters","negativePrompt"],i);let s=r(n,["numberOfImages"]);e!==void 0&&s!=null&&a(e,["parameters","sampleCount"],s);let l=r(n,["aspectRatio"]);e!==void 0&&l!=null&&a(e,["parameters","aspectRatio"],l);let c=r(n,["guidanceScale"]);e!==void 0&&c!=null&&a(e,["parameters","guidanceScale"],c);let d=r(n,["seed"]);e!==void 0&&d!=null&&a(e,["parameters","seed"],d);let u=r(n,["safetyFilterLevel"]);e!==void 0&&u!=null&&a(e,["parameters","safetySetting"],u);let p=r(n,["personGeneration"]);e!==void 0&&p!=null&&a(e,["parameters","personGeneration"],p);let h=r(n,["includeSafetyAttributes"]);e!==void 0&&h!=null&&a(e,["parameters","includeSafetyAttributes"],h);let m=r(n,["includeRaiReason"]);e!==void 0&&m!=null&&a(e,["parameters","includeRaiReason"],m);let g=r(n,["language"]);e!==void 0&&g!=null&&a(e,["parameters","language"],g);let b=r(n,["outputMimeType"]);e!==void 0&&b!=null&&a(e,["parameters","outputOptions","mimeType"],b);let y=r(n,["outputCompressionQuality"]);e!==void 0&&y!=null&&a(e,["parameters","outputOptions","compressionQuality"],y);let w=r(n,["addWatermark"]);e!==void 0&&w!=null&&a(e,["parameters","addWatermark"],w);let I=r(n,["labels"]);e!==void 0&&I!=null&&a(e,["labels"],I);let T=r(n,["editMode"]);e!==void 0&&T!=null&&a(e,["parameters","editMode"],T);let _=r(n,["baseSteps"]);return e!==void 0&&_!=null&&a(e,["parameters","editConfig","baseSteps"],_),t}f(Sf,"editImageConfigToVertex");function vf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["prompt"]);i!=null&&a(t,["instances[0]","prompt"],i);let s=r(e,["referenceImages"]);if(s!=null){let c=s;Array.isArray(c)&&(c=c.map(d=>Np(d))),a(t,["instances[0]","referenceImages"],c)}let l=r(e,["config"]);return l!=null&&Sf(l,t),t}f(vf,"editImageParametersInternalToVertex");function $f(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["predictions"]);if(o!=null){let i=o;Array.isArray(i)&&(i=i.map(s=>lo(s))),a(e,["generatedImages"],i)}return e}f($f,"editImageResponseFromVertex");function Nf(n,e){let t={},o=r(n,["taskType"]);e!==void 0&&o!=null&&a(e,["requests[]","taskType"],o);let i=r(n,["title"]);e!==void 0&&i!=null&&a(e,["requests[]","title"],i);let s=r(n,["outputDimensionality"]);if(e!==void 0&&s!=null&&a(e,["requests[]","outputDimensionality"],s),r(n,["mimeType"])!==void 0)throw new Error("mimeType parameter is not supported in Gemini API.");if(r(n,["autoTruncate"])!==void 0)throw new Error("autoTruncate parameter is not supported in Gemini API.");return t}f(Nf,"embedContentConfigToMldev");function Pf(n,e){let t={},o=r(n,["taskType"]);e!==void 0&&o!=null&&a(e,["instances[]","task_type"],o);let i=r(n,["title"]);e!==void 0&&i!=null&&a(e,["instances[]","title"],i);let s=r(n,["outputDimensionality"]);e!==void 0&&s!=null&&a(e,["parameters","outputDimensionality"],s);let l=r(n,["mimeType"]);e!==void 0&&l!=null&&a(e,["instances[]","mimeType"],l);let c=r(n,["autoTruncate"]);return e!==void 0&&c!=null&&a(e,["parameters","autoTruncate"],c),t}f(Pf,"embedContentConfigToVertex");function Rf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["contents"]);if(i!=null){let c=ar(n,i);Array.isArray(c)&&(c=c.map(d=>d)),a(t,["requests[]","content"],c)}let s=r(e,["config"]);s!=null&&Nf(s,t);let l=r(e,["model"]);return l!==void 0&&a(t,["requests[]","model"],F(n,l)),t}f(Rf,"embedContentParametersToMldev");function xf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["contents"]);if(i!=null){let l=ar(n,i);Array.isArray(l)&&(l=l.map(c=>c)),a(t,["instances[]","content"],l)}let s=r(e,["config"]);return s!=null&&Pf(s,t),t}f(xf,"embedContentParametersToVertex");function Gf(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["embeddings"]);if(o!=null){let s=o;Array.isArray(s)&&(s=s.map(l=>l)),a(e,["embeddings"],s)}let i=r(n,["metadata"]);return i!=null&&a(e,["metadata"],i),e}f(Gf,"embedContentResponseFromMldev");function Mf(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["predictions[]","embeddings"]);if(o!=null){let s=o;Array.isArray(s)&&(s=s.map(l=>pf(l))),a(e,["embeddings"],s)}let i=r(n,["metadata"]);return i!=null&&a(e,["metadata"],i),e}f(Mf,"embedContentResponseFromVertex");function Df(n){let e={},t=r(n,["endpoint"]);t!=null&&a(e,["name"],t);let o=r(n,["deployedModelId"]);return o!=null&&a(e,["deployedModelId"],o),e}f(Df,"endpointFromVertex");function Uf(n){let e={};if(r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let t=r(n,["fileUri"]);t!=null&&a(e,["fileUri"],t);let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(Uf,"fileDataToMldev$1");function Lf(n){let e={},t=r(n,["id"]);t!=null&&a(e,["id"],t);let o=r(n,["args"]);o!=null&&a(e,["args"],o);let i=r(n,["name"]);if(i!=null&&a(e,["name"],i),r(n,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is not supported in Gemini API.");if(r(n,["willContinue"])!==void 0)throw new Error("willContinue parameter is not supported in Gemini API.");return e}f(Lf,"functionCallToMldev$1");function Ff(n){let e={},t=r(n,["mode"]);t!=null&&a(e,["mode"],t);let o=r(n,["allowedFunctionNames"]);if(o!=null&&a(e,["allowedFunctionNames"],o),r(n,["streamFunctionCallArguments"])!==void 0)throw new Error("streamFunctionCallArguments parameter is not supported in Gemini API.");return e}f(Ff,"functionCallingConfigToMldev");function kf(n){let e={};if(r(n,["behavior"])!==void 0)throw new Error("behavior parameter is not supported in Vertex AI.");let t=r(n,["description"]);t!=null&&a(e,["description"],t);let o=r(n,["name"]);o!=null&&a(e,["name"],o);let i=r(n,["parameters"]);i!=null&&a(e,["parameters"],i);let s=r(n,["parametersJsonSchema"]);s!=null&&a(e,["parametersJsonSchema"],s);let l=r(n,["response"]);l!=null&&a(e,["response"],l);let c=r(n,["responseJsonSchema"]);return c!=null&&a(e,["responseJsonSchema"],c),e}f(kf,"functionDeclarationToVertex");function Vf(n,e,t){let o={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&a(t,["systemInstruction"],ao(te(i)));let s=r(e,["temperature"]);s!=null&&a(o,["temperature"],s);let l=r(e,["topP"]);l!=null&&a(o,["topP"],l);let c=r(e,["topK"]);c!=null&&a(o,["topK"],c);let d=r(e,["candidateCount"]);d!=null&&a(o,["candidateCount"],d);let u=r(e,["maxOutputTokens"]);u!=null&&a(o,["maxOutputTokens"],u);let p=r(e,["stopSequences"]);p!=null&&a(o,["stopSequences"],p);let h=r(e,["responseLogprobs"]);h!=null&&a(o,["responseLogprobs"],h);let m=r(e,["logprobs"]);m!=null&&a(o,["logprobs"],m);let g=r(e,["presencePenalty"]);g!=null&&a(o,["presencePenalty"],g);let b=r(e,["frequencyPenalty"]);b!=null&&a(o,["frequencyPenalty"],b);let y=r(e,["seed"]);y!=null&&a(o,["seed"],y);let w=r(e,["responseMimeType"]);w!=null&&a(o,["responseMimeType"],w);let I=r(e,["responseSchema"]);I!=null&&a(o,["responseSchema"],lr(I));let T=r(e,["responseJsonSchema"]);if(T!=null&&a(o,["responseJsonSchema"],T),r(e,["routingConfig"])!==void 0)throw new Error("routingConfig parameter is not supported in Gemini API.");if(r(e,["modelSelectionConfig"])!==void 0)throw new Error("modelSelectionConfig parameter is not supported in Gemini API.");let _=r(e,["safetySettings"]);if(t!==void 0&&_!=null){let Y=_;Array.isArray(Y)&&(Y=Y.map(we=>Pp(we))),a(t,["safetySettings"],Y)}let C=r(e,["tools"]);if(t!==void 0&&C!=null){let Y=$t(C);Array.isArray(Y)&&(Y=Y.map(we=>Lp(vt(we)))),a(t,["tools"],Y)}let v=r(e,["toolConfig"]);if(t!==void 0&&v!=null&&a(t,["toolConfig"],Up(v)),r(e,["labels"])!==void 0)throw new Error("labels parameter is not supported in Gemini API.");let P=r(e,["cachedContent"]);t!==void 0&&P!=null&&a(t,["cachedContent"],Me(n,P));let N=r(e,["responseModalities"]);N!=null&&a(o,["responseModalities"],N);let B=r(e,["mediaResolution"]);B!=null&&a(o,["mediaResolution"],B);let $=r(e,["speechConfig"]);if($!=null&&a(o,["speechConfig"],cr($)),r(e,["audioTimestamp"])!==void 0)throw new Error("audioTimestamp parameter is not supported in Gemini API.");let U=r(e,["thinkingConfig"]);U!=null&&a(o,["thinkingConfig"],U);let z=r(e,["imageConfig"]);z!=null&&a(o,["imageConfig"],pp(z));let Se=r(e,["enableEnhancedCivicAnswers"]);return Se!=null&&a(o,["enableEnhancedCivicAnswers"],Se),o}f(Vf,"generateContentConfigToMldev");function qf(n,e,t){let o={},i=r(e,["systemInstruction"]);t!==void 0&&i!=null&&a(t,["systemInstruction"],te(i));let s=r(e,["temperature"]);s!=null&&a(o,["temperature"],s);let l=r(e,["topP"]);l!=null&&a(o,["topP"],l);let c=r(e,["topK"]);c!=null&&a(o,["topK"],c);let d=r(e,["candidateCount"]);d!=null&&a(o,["candidateCount"],d);let u=r(e,["maxOutputTokens"]);u!=null&&a(o,["maxOutputTokens"],u);let p=r(e,["stopSequences"]);p!=null&&a(o,["stopSequences"],p);let h=r(e,["responseLogprobs"]);h!=null&&a(o,["responseLogprobs"],h);let m=r(e,["logprobs"]);m!=null&&a(o,["logprobs"],m);let g=r(e,["presencePenalty"]);g!=null&&a(o,["presencePenalty"],g);let b=r(e,["frequencyPenalty"]);b!=null&&a(o,["frequencyPenalty"],b);let y=r(e,["seed"]);y!=null&&a(o,["seed"],y);let w=r(e,["responseMimeType"]);w!=null&&a(o,["responseMimeType"],w);let I=r(e,["responseSchema"]);I!=null&&a(o,["responseSchema"],lr(I));let T=r(e,["responseJsonSchema"]);T!=null&&a(o,["responseJsonSchema"],T);let _=r(e,["routingConfig"]);_!=null&&a(o,["routingConfig"],_);let C=r(e,["modelSelectionConfig"]);C!=null&&a(o,["modelConfig"],C);let v=r(e,["safetySettings"]);if(t!==void 0&&v!=null){let ve=v;Array.isArray(ve)&&(ve=ve.map(_o=>_o)),a(t,["safetySettings"],ve)}let P=r(e,["tools"]);if(t!==void 0&&P!=null){let ve=$t(P);Array.isArray(ve)&&(ve=ve.map(_o=>Hl(vt(_o)))),a(t,["tools"],ve)}let N=r(e,["toolConfig"]);t!==void 0&&N!=null&&a(t,["toolConfig"],N);let B=r(e,["labels"]);t!==void 0&&B!=null&&a(t,["labels"],B);let $=r(e,["cachedContent"]);t!==void 0&&$!=null&&a(t,["cachedContent"],Me(n,$));let U=r(e,["responseModalities"]);U!=null&&a(o,["responseModalities"],U);let z=r(e,["mediaResolution"]);z!=null&&a(o,["mediaResolution"],z);let Se=r(e,["speechConfig"]);Se!=null&&a(o,["speechConfig"],Ol(cr(Se)));let Y=r(e,["audioTimestamp"]);Y!=null&&a(o,["audioTimestamp"],Y);let we=r(e,["thinkingConfig"]);we!=null&&a(o,["thinkingConfig"],we);let Ar=r(e,["imageConfig"]);if(Ar!=null&&a(o,["imageConfig"],hp(Ar)),r(e,["enableEnhancedCivicAnswers"])!==void 0)throw new Error("enableEnhancedCivicAnswers parameter is not supported in Vertex AI.");return o}f(qf,"generateContentConfigToVertex");function rl(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["contents"]);if(i!=null){let l=ue(i);Array.isArray(l)&&(l=l.map(c=>ao(c))),a(t,["contents"],l)}let s=r(e,["config"]);return s!=null&&a(t,["generationConfig"],Vf(n,s,t)),t}f(rl,"generateContentParametersToMldev");function sl(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["contents"]);if(i!=null){let l=ue(i);Array.isArray(l)&&(l=l.map(c=>c)),a(t,["contents"],l)}let s=r(e,["config"]);return s!=null&&a(t,["generationConfig"],qf(n,s,t)),t}f(sl,"generateContentParametersToVertex");function al(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["candidates"]);if(o!=null){let d=o;Array.isArray(d)&&(d=d.map(u=>cf(u))),a(e,["candidates"],d)}let i=r(n,["modelVersion"]);i!=null&&a(e,["modelVersion"],i);let s=r(n,["promptFeedback"]);s!=null&&a(e,["promptFeedback"],s);let l=r(n,["responseId"]);l!=null&&a(e,["responseId"],l);let c=r(n,["usageMetadata"]);return c!=null&&a(e,["usageMetadata"],c),e}f(al,"generateContentResponseFromMldev");function ll(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["candidates"]);if(o!=null){let u=o;Array.isArray(u)&&(u=u.map(p=>p)),a(e,["candidates"],u)}let i=r(n,["createTime"]);i!=null&&a(e,["createTime"],i);let s=r(n,["modelVersion"]);s!=null&&a(e,["modelVersion"],s);let l=r(n,["promptFeedback"]);l!=null&&a(e,["promptFeedback"],l);let c=r(n,["responseId"]);c!=null&&a(e,["responseId"],c);let d=r(n,["usageMetadata"]);return d!=null&&a(e,["usageMetadata"],d),e}f(ll,"generateContentResponseFromVertex");function Of(n,e){let t={};if(r(n,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is not supported in Gemini API.");if(r(n,["negativePrompt"])!==void 0)throw new Error("negativePrompt parameter is not supported in Gemini API.");let o=r(n,["numberOfImages"]);e!==void 0&&o!=null&&a(e,["parameters","sampleCount"],o);let i=r(n,["aspectRatio"]);e!==void 0&&i!=null&&a(e,["parameters","aspectRatio"],i);let s=r(n,["guidanceScale"]);if(e!==void 0&&s!=null&&a(e,["parameters","guidanceScale"],s),r(n,["seed"])!==void 0)throw new Error("seed parameter is not supported in Gemini API.");let l=r(n,["safetyFilterLevel"]);e!==void 0&&l!=null&&a(e,["parameters","safetySetting"],l);let c=r(n,["personGeneration"]);e!==void 0&&c!=null&&a(e,["parameters","personGeneration"],c);let d=r(n,["includeSafetyAttributes"]);e!==void 0&&d!=null&&a(e,["parameters","includeSafetyAttributes"],d);let u=r(n,["includeRaiReason"]);e!==void 0&&u!=null&&a(e,["parameters","includeRaiReason"],u);let p=r(n,["language"]);e!==void 0&&p!=null&&a(e,["parameters","language"],p);let h=r(n,["outputMimeType"]);e!==void 0&&h!=null&&a(e,["parameters","outputOptions","mimeType"],h);let m=r(n,["outputCompressionQuality"]);if(e!==void 0&&m!=null&&a(e,["parameters","outputOptions","compressionQuality"],m),r(n,["addWatermark"])!==void 0)throw new Error("addWatermark parameter is not supported in Gemini API.");if(r(n,["labels"])!==void 0)throw new Error("labels parameter is not supported in Gemini API.");let g=r(n,["imageSize"]);if(e!==void 0&&g!=null&&a(e,["parameters","sampleImageSize"],g),r(n,["enhancePrompt"])!==void 0)throw new Error("enhancePrompt parameter is not supported in Gemini API.");return t}f(Of,"generateImagesConfigToMldev");function Hf(n,e){let t={},o=r(n,["outputGcsUri"]);e!==void 0&&o!=null&&a(e,["parameters","storageUri"],o);let i=r(n,["negativePrompt"]);e!==void 0&&i!=null&&a(e,["parameters","negativePrompt"],i);let s=r(n,["numberOfImages"]);e!==void 0&&s!=null&&a(e,["parameters","sampleCount"],s);let l=r(n,["aspectRatio"]);e!==void 0&&l!=null&&a(e,["parameters","aspectRatio"],l);let c=r(n,["guidanceScale"]);e!==void 0&&c!=null&&a(e,["parameters","guidanceScale"],c);let d=r(n,["seed"]);e!==void 0&&d!=null&&a(e,["parameters","seed"],d);let u=r(n,["safetyFilterLevel"]);e!==void 0&&u!=null&&a(e,["parameters","safetySetting"],u);let p=r(n,["personGeneration"]);e!==void 0&&p!=null&&a(e,["parameters","personGeneration"],p);let h=r(n,["includeSafetyAttributes"]);e!==void 0&&h!=null&&a(e,["parameters","includeSafetyAttributes"],h);let m=r(n,["includeRaiReason"]);e!==void 0&&m!=null&&a(e,["parameters","includeRaiReason"],m);let g=r(n,["language"]);e!==void 0&&g!=null&&a(e,["parameters","language"],g);let b=r(n,["outputMimeType"]);e!==void 0&&b!=null&&a(e,["parameters","outputOptions","mimeType"],b);let y=r(n,["outputCompressionQuality"]);e!==void 0&&y!=null&&a(e,["parameters","outputOptions","compressionQuality"],y);let w=r(n,["addWatermark"]);e!==void 0&&w!=null&&a(e,["parameters","addWatermark"],w);let I=r(n,["labels"]);e!==void 0&&I!=null&&a(e,["labels"],I);let T=r(n,["imageSize"]);e!==void 0&&T!=null&&a(e,["parameters","sampleImageSize"],T);let _=r(n,["enhancePrompt"]);return e!==void 0&&_!=null&&a(e,["parameters","enhancePrompt"],_),t}f(Hf,"generateImagesConfigToVertex");function Bf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["prompt"]);i!=null&&a(t,["instances[0]","prompt"],i);let s=r(e,["config"]);return s!=null&&Of(s,t),t}f(Bf,"generateImagesParametersToMldev");function Wf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["prompt"]);i!=null&&a(t,["instances[0]","prompt"],i);let s=r(e,["config"]);return s!=null&&Hf(s,t),t}f(Wf,"generateImagesParametersToVertex");function Jf(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["predictions"]);if(o!=null){let s=o;Array.isArray(s)&&(s=s.map(l=>ip(l))),a(e,["generatedImages"],s)}let i=r(n,["positivePromptSafetyAttributes"]);return i!=null&&a(e,["positivePromptSafetyAttributes"],Vl(i)),e}f(Jf,"generateImagesResponseFromMldev");function Xf(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["predictions"]);if(o!=null){let s=o;Array.isArray(s)&&(s=s.map(l=>lo(l))),a(e,["generatedImages"],s)}let i=r(n,["positivePromptSafetyAttributes"]);return i!=null&&a(e,["positivePromptSafetyAttributes"],ql(i)),e}f(Xf,"generateImagesResponseFromVertex");function Yf(n,e){let t={},o=r(n,["numberOfVideos"]);if(e!==void 0&&o!=null&&a(e,["parameters","sampleCount"],o),r(n,["outputGcsUri"])!==void 0)throw new Error("outputGcsUri parameter is not supported in Gemini API.");if(r(n,["fps"])!==void 0)throw new Error("fps parameter is not supported in Gemini API.");let i=r(n,["durationSeconds"]);if(e!==void 0&&i!=null&&a(e,["parameters","durationSeconds"],i),r(n,["seed"])!==void 0)throw new Error("seed parameter is not supported in Gemini API.");let s=r(n,["aspectRatio"]);e!==void 0&&s!=null&&a(e,["parameters","aspectRatio"],s);let l=r(n,["resolution"]);e!==void 0&&l!=null&&a(e,["parameters","resolution"],l);let c=r(n,["personGeneration"]);if(e!==void 0&&c!=null&&a(e,["parameters","personGeneration"],c),r(n,["pubsubTopic"])!==void 0)throw new Error("pubsubTopic parameter is not supported in Gemini API.");let d=r(n,["negativePrompt"]);e!==void 0&&d!=null&&a(e,["parameters","negativePrompt"],d);let u=r(n,["enhancePrompt"]);if(e!==void 0&&u!=null&&a(e,["parameters","enhancePrompt"],u),r(n,["generateAudio"])!==void 0)throw new Error("generateAudio parameter is not supported in Gemini API.");let p=r(n,["lastFrame"]);e!==void 0&&p!=null&&a(e,["instances[0]","lastFrame"],co(p));let h=r(n,["referenceImages"]);if(e!==void 0&&h!=null){let m=h;Array.isArray(m)&&(m=m.map(g=>Kp(g))),a(e,["instances[0]","referenceImages"],m)}if(r(n,["mask"])!==void 0)throw new Error("mask parameter is not supported in Gemini API.");if(r(n,["compressionQuality"])!==void 0)throw new Error("compressionQuality parameter is not supported in Gemini API.");return t}f(Yf,"generateVideosConfigToMldev");function zf(n,e){let t={},o=r(n,["numberOfVideos"]);e!==void 0&&o!=null&&a(e,["parameters","sampleCount"],o);let i=r(n,["outputGcsUri"]);e!==void 0&&i!=null&&a(e,["parameters","storageUri"],i);let s=r(n,["fps"]);e!==void 0&&s!=null&&a(e,["parameters","fps"],s);let l=r(n,["durationSeconds"]);e!==void 0&&l!=null&&a(e,["parameters","durationSeconds"],l);let c=r(n,["seed"]);e!==void 0&&c!=null&&a(e,["parameters","seed"],c);let d=r(n,["aspectRatio"]);e!==void 0&&d!=null&&a(e,["parameters","aspectRatio"],d);let u=r(n,["resolution"]);e!==void 0&&u!=null&&a(e,["parameters","resolution"],u);let p=r(n,["personGeneration"]);e!==void 0&&p!=null&&a(e,["parameters","personGeneration"],p);let h=r(n,["pubsubTopic"]);e!==void 0&&h!=null&&a(e,["parameters","pubsubTopic"],h);let m=r(n,["negativePrompt"]);e!==void 0&&m!=null&&a(e,["parameters","negativePrompt"],m);let g=r(n,["enhancePrompt"]);e!==void 0&&g!=null&&a(e,["parameters","enhancePrompt"],g);let b=r(n,["generateAudio"]);e!==void 0&&b!=null&&a(e,["parameters","generateAudio"],b);let y=r(n,["lastFrame"]);e!==void 0&&y!=null&&a(e,["instances[0]","lastFrame"],ye(y));let w=r(n,["referenceImages"]);if(e!==void 0&&w!=null){let _=w;Array.isArray(_)&&(_=_.map(C=>Qp(C))),a(e,["instances[0]","referenceImages"],_)}let I=r(n,["mask"]);e!==void 0&&I!=null&&a(e,["instances[0]","mask"],zp(I));let T=r(n,["compressionQuality"]);return e!==void 0&&T!=null&&a(e,["parameters","compressionQuality"],T),t}f(zf,"generateVideosConfigToVertex");function Kf(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["metadata"]);o!=null&&a(e,["metadata"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);s!=null&&a(e,["error"],s);let l=r(n,["response","generateVideoResponse"]);return l!=null&&a(e,["response"],ep(l)),e}f(Kf,"generateVideosOperationFromMldev");function Qf(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["metadata"]);o!=null&&a(e,["metadata"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);s!=null&&a(e,["error"],s);let l=r(n,["response"]);return l!=null&&a(e,["response"],tp(l)),e}f(Qf,"generateVideosOperationFromVertex");function Zf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["prompt"]);i!=null&&a(t,["instances[0]","prompt"],i);let s=r(e,["image"]);s!=null&&a(t,["instances[0]","image"],co(s));let l=r(e,["video"]);l!=null&&a(t,["instances[0]","video"],Bl(l));let c=r(e,["source"]);c!=null&&np(c,t);let d=r(e,["config"]);return d!=null&&Yf(d,t),t}f(Zf,"generateVideosParametersToMldev");function jf(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["prompt"]);i!=null&&a(t,["instances[0]","prompt"],i);let s=r(e,["image"]);s!=null&&a(t,["instances[0]","image"],ye(s));let l=r(e,["video"]);l!=null&&a(t,["instances[0]","video"],Wl(l));let c=r(e,["source"]);c!=null&&op(c,t);let d=r(e,["config"]);return d!=null&&zf(d,t),t}f(jf,"generateVideosParametersToVertex");function ep(n){let e={},t=r(n,["generatedSamples"]);if(t!=null){let s=t;Array.isArray(s)&&(s=s.map(l=>sp(l))),a(e,["generatedVideos"],s)}let o=r(n,["raiMediaFilteredCount"]);o!=null&&a(e,["raiMediaFilteredCount"],o);let i=r(n,["raiMediaFilteredReasons"]);return i!=null&&a(e,["raiMediaFilteredReasons"],i),e}f(ep,"generateVideosResponseFromMldev");function tp(n){let e={},t=r(n,["videos"]);if(t!=null){let s=t;Array.isArray(s)&&(s=s.map(l=>ap(l))),a(e,["generatedVideos"],s)}let o=r(n,["raiMediaFilteredCount"]);o!=null&&a(e,["raiMediaFilteredCount"],o);let i=r(n,["raiMediaFilteredReasons"]);return i!=null&&a(e,["raiMediaFilteredReasons"],i),e}f(tp,"generateVideosResponseFromVertex");function np(n,e){let t={},o=r(n,["prompt"]);e!==void 0&&o!=null&&a(e,["instances[0]","prompt"],o);let i=r(n,["image"]);e!==void 0&&i!=null&&a(e,["instances[0]","image"],co(i));let s=r(n,["video"]);return e!==void 0&&s!=null&&a(e,["instances[0]","video"],Bl(s)),t}f(np,"generateVideosSourceToMldev");function op(n,e){let t={},o=r(n,["prompt"]);e!==void 0&&o!=null&&a(e,["instances[0]","prompt"],o);let i=r(n,["image"]);e!==void 0&&i!=null&&a(e,["instances[0]","image"],ye(i));let s=r(n,["video"]);return e!==void 0&&s!=null&&a(e,["instances[0]","video"],Wl(s)),t}f(op,"generateVideosSourceToVertex");function ip(n){let e={},t=r(n,["_self"]);t!=null&&a(e,["image"],mp(t));let o=r(n,["raiFilteredReason"]);o!=null&&a(e,["raiFilteredReason"],o);let i=r(n,["_self"]);return i!=null&&a(e,["safetyAttributes"],Vl(i)),e}f(ip,"generatedImageFromMldev");function lo(n){let e={},t=r(n,["_self"]);t!=null&&a(e,["image"],kl(t));let o=r(n,["raiFilteredReason"]);o!=null&&a(e,["raiFilteredReason"],o);let i=r(n,["_self"]);i!=null&&a(e,["safetyAttributes"],ql(i));let s=r(n,["prompt"]);return s!=null&&a(e,["enhancedPrompt"],s),e}f(lo,"generatedImageFromVertex");function rp(n){let e={},t=r(n,["_self"]);t!=null&&a(e,["mask"],kl(t));let o=r(n,["labels"]);if(o!=null){let i=o;Array.isArray(i)&&(i=i.map(s=>s)),a(e,["labels"],i)}return e}f(rp,"generatedImageMaskFromVertex");function sp(n){let e={},t=r(n,["video"]);return t!=null&&a(e,["video"],Xp(t)),e}f(sp,"generatedVideoFromMldev");function ap(n){let e={},t=r(n,["_self"]);return t!=null&&a(e,["video"],Yp(t)),e}f(ap,"generatedVideoFromVertex");function lp(n){let e={},t=r(n,["modelSelectionConfig"]);t!=null&&a(e,["modelConfig"],t);let o=r(n,["responseJsonSchema"]);o!=null&&a(e,["responseJsonSchema"],o);let i=r(n,["audioTimestamp"]);i!=null&&a(e,["audioTimestamp"],i);let s=r(n,["candidateCount"]);s!=null&&a(e,["candidateCount"],s);let l=r(n,["enableAffectiveDialog"]);l!=null&&a(e,["enableAffectiveDialog"],l);let c=r(n,["frequencyPenalty"]);c!=null&&a(e,["frequencyPenalty"],c);let d=r(n,["logprobs"]);d!=null&&a(e,["logprobs"],d);let u=r(n,["maxOutputTokens"]);u!=null&&a(e,["maxOutputTokens"],u);let p=r(n,["mediaResolution"]);p!=null&&a(e,["mediaResolution"],p);let h=r(n,["presencePenalty"]);h!=null&&a(e,["presencePenalty"],h);let m=r(n,["responseLogprobs"]);m!=null&&a(e,["responseLogprobs"],m);let g=r(n,["responseMimeType"]);g!=null&&a(e,["responseMimeType"],g);let b=r(n,["responseModalities"]);b!=null&&a(e,["responseModalities"],b);let y=r(n,["responseSchema"]);y!=null&&a(e,["responseSchema"],y);let w=r(n,["routingConfig"]);w!=null&&a(e,["routingConfig"],w);let I=r(n,["seed"]);I!=null&&a(e,["seed"],I);let T=r(n,["speechConfig"]);T!=null&&a(e,["speechConfig"],Ol(T));let _=r(n,["stopSequences"]);_!=null&&a(e,["stopSequences"],_);let C=r(n,["temperature"]);C!=null&&a(e,["temperature"],C);let v=r(n,["thinkingConfig"]);v!=null&&a(e,["thinkingConfig"],v);let P=r(n,["topK"]);P!=null&&a(e,["topK"],P);let N=r(n,["topP"]);if(N!=null&&a(e,["topP"],N),r(n,["enableEnhancedCivicAnswers"])!==void 0)throw new Error("enableEnhancedCivicAnswers parameter is not supported in Vertex AI.");return e}f(lp,"generationConfigToVertex");function cp(n,e){let t={},o=r(e,["model"]);return o!=null&&a(t,["_url","name"],F(n,o)),t}f(cp,"getModelParametersToMldev");function dp(n,e){let t={},o=r(e,["model"]);return o!=null&&a(t,["_url","name"],F(n,o)),t}f(dp,"getModelParametersToVertex");function up(n){let e={};if(r(n,["authConfig"])!==void 0)throw new Error("authConfig parameter is not supported in Gemini API.");let t=r(n,["enableWidget"]);return t!=null&&a(e,["enableWidget"],t),e}f(up,"googleMapsToMldev$1");function fp(n){let e={};if(r(n,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is not supported in Gemini API.");if(r(n,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is not supported in Gemini API.");let t=r(n,["timeRangeFilter"]);return t!=null&&a(e,["timeRangeFilter"],t),e}f(fp,"googleSearchToMldev$1");function pp(n){let e={},t=r(n,["aspectRatio"]);t!=null&&a(e,["aspectRatio"],t);let o=r(n,["imageSize"]);if(o!=null&&a(e,["imageSize"],o),r(n,["outputMimeType"])!==void 0)throw new Error("outputMimeType parameter is not supported in Gemini API.");if(r(n,["outputCompressionQuality"])!==void 0)throw new Error("outputCompressionQuality parameter is not supported in Gemini API.");return e}f(pp,"imageConfigToMldev");function hp(n){let e={},t=r(n,["aspectRatio"]);t!=null&&a(e,["aspectRatio"],t);let o=r(n,["imageSize"]);o!=null&&a(e,["imageSize"],o);let i=r(n,["outputMimeType"]);i!=null&&a(e,["imageOutputOptions","mimeType"],i);let s=r(n,["outputCompressionQuality"]);return s!=null&&a(e,["imageOutputOptions","compressionQuality"],s),e}f(hp,"imageConfigToVertex");function mp(n){let e={},t=r(n,["bytesBase64Encoded"]);t!=null&&a(e,["imageBytes"],ze(t));let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(mp,"imageFromMldev");function kl(n){let e={},t=r(n,["gcsUri"]);t!=null&&a(e,["gcsUri"],t);let o=r(n,["bytesBase64Encoded"]);o!=null&&a(e,["imageBytes"],ze(o));let i=r(n,["mimeType"]);return i!=null&&a(e,["mimeType"],i),e}f(kl,"imageFromVertex");function co(n){let e={};if(r(n,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");let t=r(n,["imageBytes"]);t!=null&&a(e,["bytesBase64Encoded"],ze(t));let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(co,"imageToMldev");function ye(n){let e={},t=r(n,["gcsUri"]);t!=null&&a(e,["gcsUri"],t);let o=r(n,["imageBytes"]);o!=null&&a(e,["bytesBase64Encoded"],ze(o));let i=r(n,["mimeType"]);return i!=null&&a(e,["mimeType"],i),e}f(ye,"imageToVertex");function gp(n,e,t){let o={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&a(t,["_query","pageSize"],i);let s=r(e,["pageToken"]);t!==void 0&&s!=null&&a(t,["_query","pageToken"],s);let l=r(e,["filter"]);t!==void 0&&l!=null&&a(t,["_query","filter"],l);let c=r(e,["queryBase"]);return t!==void 0&&c!=null&&a(t,["_url","models_url"],Rl(n,c)),o}f(gp,"listModelsConfigToMldev");function bp(n,e,t){let o={},i=r(e,["pageSize"]);t!==void 0&&i!=null&&a(t,["_query","pageSize"],i);let s=r(e,["pageToken"]);t!==void 0&&s!=null&&a(t,["_query","pageToken"],s);let l=r(e,["filter"]);t!==void 0&&l!=null&&a(t,["_query","filter"],l);let c=r(e,["queryBase"]);return t!==void 0&&c!=null&&a(t,["_url","models_url"],Rl(n,c)),o}f(bp,"listModelsConfigToVertex");function Ep(n,e){let t={},o=r(e,["config"]);return o!=null&&gp(n,o,t),t}f(Ep,"listModelsParametersToMldev");function yp(n,e){let t={},o=r(e,["config"]);return o!=null&&bp(n,o,t),t}f(yp,"listModelsParametersToVertex");function wp(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["_self"]);if(i!=null){let s=xl(i);Array.isArray(s)&&(s=s.map(l=>xi(l))),a(e,["models"],s)}return e}f(wp,"listModelsResponseFromMldev");function Ip(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["_self"]);if(i!=null){let s=xl(i);Array.isArray(s)&&(s=s.map(l=>Gi(l))),a(e,["models"],s)}return e}f(Ip,"listModelsResponseFromVertex");function Tp(n){let e={},t=r(n,["maskMode"]);t!=null&&a(e,["maskMode"],t);let o=r(n,["segmentationClasses"]);o!=null&&a(e,["maskClasses"],o);let i=r(n,["maskDilation"]);return i!=null&&a(e,["dilation"],i),e}f(Tp,"maskReferenceConfigToVertex");function xi(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["displayName"]);o!=null&&a(e,["displayName"],o);let i=r(n,["description"]);i!=null&&a(e,["description"],i);let s=r(n,["version"]);s!=null&&a(e,["version"],s);let l=r(n,["_self"]);l!=null&&a(e,["tunedModelInfo"],Fp(l));let c=r(n,["inputTokenLimit"]);c!=null&&a(e,["inputTokenLimit"],c);let d=r(n,["outputTokenLimit"]);d!=null&&a(e,["outputTokenLimit"],d);let u=r(n,["supportedGenerationMethods"]);u!=null&&a(e,["supportedActions"],u);let p=r(n,["temperature"]);p!=null&&a(e,["temperature"],p);let h=r(n,["maxTemperature"]);h!=null&&a(e,["maxTemperature"],h);let m=r(n,["topP"]);m!=null&&a(e,["topP"],m);let g=r(n,["topK"]);g!=null&&a(e,["topK"],g);let b=r(n,["thinking"]);return b!=null&&a(e,["thinking"],b),e}f(xi,"modelFromMldev");function Gi(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["displayName"]);o!=null&&a(e,["displayName"],o);let i=r(n,["description"]);i!=null&&a(e,["description"],i);let s=r(n,["versionId"]);s!=null&&a(e,["version"],s);let l=r(n,["deployedModels"]);if(l!=null){let h=l;Array.isArray(h)&&(h=h.map(m=>Df(m))),a(e,["endpoints"],h)}let c=r(n,["labels"]);c!=null&&a(e,["labels"],c);let d=r(n,["_self"]);d!=null&&a(e,["tunedModelInfo"],kp(d));let u=r(n,["defaultCheckpointId"]);u!=null&&a(e,["defaultCheckpointId"],u);let p=r(n,["checkpoints"]);if(p!=null){let h=p;Array.isArray(h)&&(h=h.map(m=>m)),a(e,["checkpoints"],h)}return e}f(Gi,"modelFromVertex");function _p(n){let e={},t=r(n,["mediaResolution"]);t!=null&&a(e,["mediaResolution"],t);let o=r(n,["codeExecutionResult"]);o!=null&&a(e,["codeExecutionResult"],o);let i=r(n,["executableCode"]);i!=null&&a(e,["executableCode"],i);let s=r(n,["fileData"]);s!=null&&a(e,["fileData"],Uf(s));let l=r(n,["functionCall"]);l!=null&&a(e,["functionCall"],Lf(l));let c=r(n,["functionResponse"]);c!=null&&a(e,["functionResponse"],c);let d=r(n,["inlineData"]);d!=null&&a(e,["inlineData"],lf(d));let u=r(n,["text"]);u!=null&&a(e,["text"],u);let p=r(n,["thought"]);p!=null&&a(e,["thought"],p);let h=r(n,["thoughtSignature"]);h!=null&&a(e,["thoughtSignature"],h);let m=r(n,["videoMetadata"]);return m!=null&&a(e,["videoMetadata"],m),e}f(_p,"partToMldev$1");function Cp(n){let e={},t=r(n,["productImage"]);return t!=null&&a(e,["image"],ye(t)),e}f(Cp,"productImageToVertex");function Ap(n,e){let t={},o=r(n,["numberOfImages"]);e!==void 0&&o!=null&&a(e,["parameters","sampleCount"],o);let i=r(n,["baseSteps"]);e!==void 0&&i!=null&&a(e,["parameters","baseSteps"],i);let s=r(n,["outputGcsUri"]);e!==void 0&&s!=null&&a(e,["parameters","storageUri"],s);let l=r(n,["seed"]);e!==void 0&&l!=null&&a(e,["parameters","seed"],l);let c=r(n,["safetyFilterLevel"]);e!==void 0&&c!=null&&a(e,["parameters","safetySetting"],c);let d=r(n,["personGeneration"]);e!==void 0&&d!=null&&a(e,["parameters","personGeneration"],d);let u=r(n,["addWatermark"]);e!==void 0&&u!=null&&a(e,["parameters","addWatermark"],u);let p=r(n,["outputMimeType"]);e!==void 0&&p!=null&&a(e,["parameters","outputOptions","mimeType"],p);let h=r(n,["outputCompressionQuality"]);e!==void 0&&h!=null&&a(e,["parameters","outputOptions","compressionQuality"],h);let m=r(n,["enhancePrompt"]);e!==void 0&&m!=null&&a(e,["parameters","enhancePrompt"],m);let g=r(n,["labels"]);return e!==void 0&&g!=null&&a(e,["labels"],g),t}f(Ap,"recontextImageConfigToVertex");function Sp(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["source"]);i!=null&&$p(i,t);let s=r(e,["config"]);return s!=null&&Ap(s,t),t}f(Sp,"recontextImageParametersToVertex");function vp(n){let e={},t=r(n,["predictions"]);if(t!=null){let o=t;Array.isArray(o)&&(o=o.map(i=>lo(i))),a(e,["generatedImages"],o)}return e}f(vp,"recontextImageResponseFromVertex");function $p(n,e){let t={},o=r(n,["prompt"]);e!==void 0&&o!=null&&a(e,["instances[0]","prompt"],o);let i=r(n,["personImage"]);e!==void 0&&i!=null&&a(e,["instances[0]","personImage","image"],ye(i));let s=r(n,["productImages"]);if(e!==void 0&&s!=null){let l=s;Array.isArray(l)&&(l=l.map(c=>Cp(c))),a(e,["instances[0]","productImages"],l)}return t}f($p,"recontextImageSourceToVertex");function Np(n){let e={},t=r(n,["referenceImage"]);t!=null&&a(e,["referenceImage"],ye(t));let o=r(n,["referenceId"]);o!=null&&a(e,["referenceId"],o);let i=r(n,["referenceType"]);i!=null&&a(e,["referenceType"],i);let s=r(n,["maskImageConfig"]);s!=null&&a(e,["maskImageConfig"],Tp(s));let l=r(n,["controlImageConfig"]);l!=null&&a(e,["controlImageConfig"],mf(l));let c=r(n,["styleImageConfig"]);c!=null&&a(e,["styleImageConfig"],c);let d=r(n,["subjectImageConfig"]);return d!=null&&a(e,["subjectImageConfig"],d),e}f(Np,"referenceImageAPIInternalToVertex");function Vl(n){let e={},t=r(n,["safetyAttributes","categories"]);t!=null&&a(e,["categories"],t);let o=r(n,["safetyAttributes","scores"]);o!=null&&a(e,["scores"],o);let i=r(n,["contentType"]);return i!=null&&a(e,["contentType"],i),e}f(Vl,"safetyAttributesFromMldev");function ql(n){let e={},t=r(n,["safetyAttributes","categories"]);t!=null&&a(e,["categories"],t);let o=r(n,["safetyAttributes","scores"]);o!=null&&a(e,["scores"],o);let i=r(n,["contentType"]);return i!=null&&a(e,["contentType"],i),e}f(ql,"safetyAttributesFromVertex");function Pp(n){let e={},t=r(n,["category"]);if(t!=null&&a(e,["category"],t),r(n,["method"])!==void 0)throw new Error("method parameter is not supported in Gemini API.");let o=r(n,["threshold"]);return o!=null&&a(e,["threshold"],o),e}f(Pp,"safetySettingToMldev");function Rp(n){let e={},t=r(n,["image"]);return t!=null&&a(e,["image"],ye(t)),e}f(Rp,"scribbleImageToVertex");function xp(n,e){let t={},o=r(n,["mode"]);e!==void 0&&o!=null&&a(e,["parameters","mode"],o);let i=r(n,["maxPredictions"]);e!==void 0&&i!=null&&a(e,["parameters","maxPredictions"],i);let s=r(n,["confidenceThreshold"]);e!==void 0&&s!=null&&a(e,["parameters","confidenceThreshold"],s);let l=r(n,["maskDilation"]);e!==void 0&&l!=null&&a(e,["parameters","maskDilation"],l);let c=r(n,["binaryColorThreshold"]);e!==void 0&&c!=null&&a(e,["parameters","binaryColorThreshold"],c);let d=r(n,["labels"]);return e!==void 0&&d!=null&&a(e,["labels"],d),t}f(xp,"segmentImageConfigToVertex");function Gp(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["source"]);i!=null&&Dp(i,t);let s=r(e,["config"]);return s!=null&&xp(s,t),t}f(Gp,"segmentImageParametersToVertex");function Mp(n){let e={},t=r(n,["predictions"]);if(t!=null){let o=t;Array.isArray(o)&&(o=o.map(i=>rp(i))),a(e,["generatedMasks"],o)}return e}f(Mp,"segmentImageResponseFromVertex");function Dp(n,e){let t={},o=r(n,["prompt"]);e!==void 0&&o!=null&&a(e,["instances[0]","prompt"],o);let i=r(n,["image"]);e!==void 0&&i!=null&&a(e,["instances[0]","image"],ye(i));let s=r(n,["scribbleImage"]);return e!==void 0&&s!=null&&a(e,["instances[0]","scribble"],Rp(s)),t}f(Dp,"segmentImageSourceToVertex");function Ol(n){let e={},t=r(n,["voiceConfig"]);t!=null&&a(e,["voiceConfig"],t);let o=r(n,["languageCode"]);if(o!=null&&a(e,["languageCode"],o),r(n,["multiSpeakerVoiceConfig"])!==void 0)throw new Error("multiSpeakerVoiceConfig parameter is not supported in Vertex AI.");return e}f(Ol,"speechConfigToVertex");function Up(n){let e={},t=r(n,["functionCallingConfig"]);t!=null&&a(e,["functionCallingConfig"],Ff(t));let o=r(n,["retrievalConfig"]);return o!=null&&a(e,["retrievalConfig"],o),e}f(Up,"toolConfigToMldev");function Lp(n){let e={},t=r(n,["functionDeclarations"]);if(t!=null){let p=t;Array.isArray(p)&&(p=p.map(h=>h)),a(e,["functionDeclarations"],p)}if(r(n,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");let o=r(n,["googleSearchRetrieval"]);o!=null&&a(e,["googleSearchRetrieval"],o);let i=r(n,["computerUse"]);i!=null&&a(e,["computerUse"],i);let s=r(n,["fileSearch"]);s!=null&&a(e,["fileSearch"],s);let l=r(n,["codeExecution"]);if(l!=null&&a(e,["codeExecution"],l),r(n,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");let c=r(n,["googleMaps"]);c!=null&&a(e,["googleMaps"],up(c));let d=r(n,["googleSearch"]);d!=null&&a(e,["googleSearch"],fp(d));let u=r(n,["urlContext"]);return u!=null&&a(e,["urlContext"],u),e}f(Lp,"toolToMldev$1");function Hl(n){let e={},t=r(n,["functionDeclarations"]);if(t!=null){let h=t;Array.isArray(h)&&(h=h.map(m=>kf(m))),a(e,["functionDeclarations"],h)}let o=r(n,["retrieval"]);o!=null&&a(e,["retrieval"],o);let i=r(n,["googleSearchRetrieval"]);i!=null&&a(e,["googleSearchRetrieval"],i);let s=r(n,["computerUse"]);if(s!=null&&a(e,["computerUse"],s),r(n,["fileSearch"])!==void 0)throw new Error("fileSearch parameter is not supported in Vertex AI.");let l=r(n,["codeExecution"]);l!=null&&a(e,["codeExecution"],l);let c=r(n,["enterpriseWebSearch"]);c!=null&&a(e,["enterpriseWebSearch"],c);let d=r(n,["googleMaps"]);d!=null&&a(e,["googleMaps"],d);let u=r(n,["googleSearch"]);u!=null&&a(e,["googleSearch"],u);let p=r(n,["urlContext"]);return p!=null&&a(e,["urlContext"],p),e}f(Hl,"toolToVertex");function Fp(n){let e={},t=r(n,["baseModel"]);t!=null&&a(e,["baseModel"],t);let o=r(n,["createTime"]);o!=null&&a(e,["createTime"],o);let i=r(n,["updateTime"]);return i!=null&&a(e,["updateTime"],i),e}f(Fp,"tunedModelInfoFromMldev");function kp(n){let e={},t=r(n,["labels","google-vertex-llm-tuning-base-model-id"]);t!=null&&a(e,["baseModel"],t);let o=r(n,["createTime"]);o!=null&&a(e,["createTime"],o);let i=r(n,["updateTime"]);return i!=null&&a(e,["updateTime"],i),e}f(kp,"tunedModelInfoFromVertex");function Vp(n,e){let t={},o=r(n,["displayName"]);e!==void 0&&o!=null&&a(e,["displayName"],o);let i=r(n,["description"]);e!==void 0&&i!=null&&a(e,["description"],i);let s=r(n,["defaultCheckpointId"]);return e!==void 0&&s!=null&&a(e,["defaultCheckpointId"],s),t}f(Vp,"updateModelConfigToMldev");function qp(n,e){let t={},o=r(n,["displayName"]);e!==void 0&&o!=null&&a(e,["displayName"],o);let i=r(n,["description"]);e!==void 0&&i!=null&&a(e,["description"],i);let s=r(n,["defaultCheckpointId"]);return e!==void 0&&s!=null&&a(e,["defaultCheckpointId"],s),t}f(qp,"updateModelConfigToVertex");function Op(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","name"],F(n,o));let i=r(e,["config"]);return i!=null&&Vp(i,t),t}f(Op,"updateModelParametersToMldev");function Hp(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["config"]);return i!=null&&qp(i,t),t}f(Hp,"updateModelParametersToVertex");function Bp(n,e){let t={},o=r(n,["outputGcsUri"]);e!==void 0&&o!=null&&a(e,["parameters","storageUri"],o);let i=r(n,["safetyFilterLevel"]);e!==void 0&&i!=null&&a(e,["parameters","safetySetting"],i);let s=r(n,["personGeneration"]);e!==void 0&&s!=null&&a(e,["parameters","personGeneration"],s);let l=r(n,["includeRaiReason"]);e!==void 0&&l!=null&&a(e,["parameters","includeRaiReason"],l);let c=r(n,["outputMimeType"]);e!==void 0&&c!=null&&a(e,["parameters","outputOptions","mimeType"],c);let d=r(n,["outputCompressionQuality"]);e!==void 0&&d!=null&&a(e,["parameters","outputOptions","compressionQuality"],d);let u=r(n,["enhanceInputImage"]);e!==void 0&&u!=null&&a(e,["parameters","upscaleConfig","enhanceInputImage"],u);let p=r(n,["imagePreservationFactor"]);e!==void 0&&p!=null&&a(e,["parameters","upscaleConfig","imagePreservationFactor"],p);let h=r(n,["labels"]);e!==void 0&&h!=null&&a(e,["labels"],h);let m=r(n,["numberOfImages"]);e!==void 0&&m!=null&&a(e,["parameters","sampleCount"],m);let g=r(n,["mode"]);return e!==void 0&&g!=null&&a(e,["parameters","mode"],g),t}f(Bp,"upscaleImageAPIConfigInternalToVertex");function Wp(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["_url","model"],F(n,o));let i=r(e,["image"]);i!=null&&a(t,["instances[0]","image"],ye(i));let s=r(e,["upscaleFactor"]);s!=null&&a(t,["parameters","upscaleConfig","upscaleFactor"],s);let l=r(e,["config"]);return l!=null&&Bp(l,t),t}f(Wp,"upscaleImageAPIParametersInternalToVertex");function Jp(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["predictions"]);if(o!=null){let i=o;Array.isArray(i)&&(i=i.map(s=>lo(s))),a(e,["generatedImages"],i)}return e}f(Jp,"upscaleImageResponseFromVertex");function Xp(n){let e={},t=r(n,["uri"]);t!=null&&a(e,["uri"],t);let o=r(n,["encodedVideo"]);o!=null&&a(e,["videoBytes"],ze(o));let i=r(n,["encoding"]);return i!=null&&a(e,["mimeType"],i),e}f(Xp,"videoFromMldev");function Yp(n){let e={},t=r(n,["gcsUri"]);t!=null&&a(e,["uri"],t);let o=r(n,["bytesBase64Encoded"]);o!=null&&a(e,["videoBytes"],ze(o));let i=r(n,["mimeType"]);return i!=null&&a(e,["mimeType"],i),e}f(Yp,"videoFromVertex");function zp(n){let e={},t=r(n,["image"]);t!=null&&a(e,["_self"],ye(t));let o=r(n,["maskMode"]);return o!=null&&a(e,["maskMode"],o),e}f(zp,"videoGenerationMaskToVertex");function Kp(n){let e={},t=r(n,["image"]);t!=null&&a(e,["image"],co(t));let o=r(n,["referenceType"]);return o!=null&&a(e,["referenceType"],o),e}f(Kp,"videoGenerationReferenceImageToMldev");function Qp(n){let e={},t=r(n,["image"]);t!=null&&a(e,["image"],ye(t));let o=r(n,["referenceType"]);return o!=null&&a(e,["referenceType"],o),e}f(Qp,"videoGenerationReferenceImageToVertex");function Bl(n){let e={},t=r(n,["uri"]);t!=null&&a(e,["uri"],t);let o=r(n,["videoBytes"]);o!=null&&a(e,["encodedVideo"],ze(o));let i=r(n,["mimeType"]);return i!=null&&a(e,["encoding"],i),e}f(Bl,"videoToMldev");function Wl(n){let e={},t=r(n,["uri"]);t!=null&&a(e,["gcsUri"],t);let o=r(n,["videoBytes"]);o!=null&&a(e,["bytesBase64Encoded"],ze(o));let i=r(n,["mimeType"]);return i!=null&&a(e,["mimeType"],i),e}f(Wl,"videoToVertex");function Zp(n,e){let t={},o=r(n,["displayName"]);return e!==void 0&&o!=null&&a(e,["displayName"],o),t}f(Zp,"createFileSearchStoreConfigToMldev");function jp(n){let e={},t=r(n,["config"]);return t!=null&&Zp(t,e),e}f(jp,"createFileSearchStoreParametersToMldev");function eh(n,e){let t={},o=r(n,["force"]);return e!==void 0&&o!=null&&a(e,["_query","force"],o),t}f(eh,"deleteFileSearchStoreConfigToMldev");function th(n){let e={},t=r(n,["name"]);t!=null&&a(e,["_url","name"],t);let o=r(n,["config"]);return o!=null&&eh(o,e),e}f(th,"deleteFileSearchStoreParametersToMldev");function nh(n){let e={},t=r(n,["name"]);return t!=null&&a(e,["_url","name"],t),e}f(nh,"getFileSearchStoreParametersToMldev");function oh(n,e){let t={},o=r(n,["customMetadata"]);if(e!==void 0&&o!=null){let s=o;Array.isArray(s)&&(s=s.map(l=>l)),a(e,["customMetadata"],s)}let i=r(n,["chunkingConfig"]);return e!==void 0&&i!=null&&a(e,["chunkingConfig"],i),t}f(oh,"importFileConfigToMldev");function ih(n){let e={},t=r(n,["name"]);t!=null&&a(e,["name"],t);let o=r(n,["metadata"]);o!=null&&a(e,["metadata"],o);let i=r(n,["done"]);i!=null&&a(e,["done"],i);let s=r(n,["error"]);s!=null&&a(e,["error"],s);let l=r(n,["response"]);return l!=null&&a(e,["response"],sh(l)),e}f(ih,"importFileOperationFromMldev");function rh(n){let e={},t=r(n,["fileSearchStoreName"]);t!=null&&a(e,["_url","file_search_store_name"],t);let o=r(n,["fileName"]);o!=null&&a(e,["fileName"],o);let i=r(n,["config"]);return i!=null&&oh(i,e),e}f(rh,"importFileParametersToMldev");function sh(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["parent"]);o!=null&&a(e,["parent"],o);let i=r(n,["documentName"]);return i!=null&&a(e,["documentName"],i),e}f(sh,"importFileResponseFromMldev");function ah(n,e){let t={},o=r(n,["pageSize"]);e!==void 0&&o!=null&&a(e,["_query","pageSize"],o);let i=r(n,["pageToken"]);return e!==void 0&&i!=null&&a(e,["_query","pageToken"],i),t}f(ah,"listFileSearchStoresConfigToMldev");function lh(n){let e={},t=r(n,["config"]);return t!=null&&ah(t,e),e}f(lh,"listFileSearchStoresParametersToMldev");function ch(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["fileSearchStores"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>l)),a(e,["fileSearchStores"],s)}return e}f(ch,"listFileSearchStoresResponseFromMldev");function Jl(n,e){let t={},o=r(n,["mimeType"]);e!==void 0&&o!=null&&a(e,["mimeType"],o);let i=r(n,["displayName"]);e!==void 0&&i!=null&&a(e,["displayName"],i);let s=r(n,["customMetadata"]);if(e!==void 0&&s!=null){let c=s;Array.isArray(c)&&(c=c.map(d=>d)),a(e,["customMetadata"],c)}let l=r(n,["chunkingConfig"]);return e!==void 0&&l!=null&&a(e,["chunkingConfig"],l),t}f(Jl,"uploadToFileSearchStoreConfigToMldev");function dh(n){let e={},t=r(n,["fileSearchStoreName"]);t!=null&&a(e,["_url","file_search_store_name"],t);let o=r(n,["config"]);return o!=null&&Jl(o,e),e}f(dh,"uploadToFileSearchStoreParametersToMldev");function uh(n){let e={},t=r(n,["sdkHttpResponse"]);return t!=null&&a(e,["sdkHttpResponse"],t),e}f(uh,"uploadToFileSearchStoreResumableResponseFromMldev");var fh="Content-Type",ph="X-Server-Timeout",hh="User-Agent",Mi="x-goog-api-client",mh="1.33.0",gh=`google-genai-sdk/${mh}`,bh="v1beta1",Eh="v1beta",Di=class{static{f(this,"ApiClient")}constructor(e){var t,o;this.clientOptions=Object.assign(Object.assign({},e),{project:e.project,location:e.location,apiKey:e.apiKey,vertexai:e.vertexai});let i={};this.clientOptions.vertexai?(i.apiVersion=(t=this.clientOptions.apiVersion)!==null&&t!==void 0?t:bh,i.baseUrl=this.baseUrlFromProjectLocation(),this.normalizeAuthParameters()):(i.apiVersion=(o=this.clientOptions.apiVersion)!==null&&o!==void 0?o:Eh,i.baseUrl="https://generativelanguage.googleapis.com/"),i.headers=this.getDefaultHeaders(),this.clientOptions.httpOptions=i,e.httpOptions&&(this.clientOptions.httpOptions=this.patchHttpOptions(i,e.httpOptions))}baseUrlFromProjectLocation(){return this.clientOptions.project&&this.clientOptions.location&&this.clientOptions.location!=="global"?`https://${this.clientOptions.location}-aiplatform.googleapis.com/`:"https://aiplatform.googleapis.com/"}normalizeAuthParameters(){if(this.clientOptions.project&&this.clientOptions.location){this.clientOptions.apiKey=void 0;return}this.clientOptions.project=void 0,this.clientOptions.location=void 0}isVertexAI(){var e;return(e=this.clientOptions.vertexai)!==null&&e!==void 0?e:!1}getProject(){return this.clientOptions.project}getLocation(){return this.clientOptions.location}getApiVersion(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.apiVersion!==void 0)return this.clientOptions.httpOptions.apiVersion;throw new Error("API version is not set.")}getBaseUrl(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.baseUrl!==void 0)return this.clientOptions.httpOptions.baseUrl;throw new Error("Base URL is not set.")}getRequestUrl(){return this.getRequestUrlInternal(this.clientOptions.httpOptions)}getHeaders(){if(this.clientOptions.httpOptions&&this.clientOptions.httpOptions.headers!==void 0)return this.clientOptions.httpOptions.headers;throw new Error("Headers are not set.")}getRequestUrlInternal(e){if(!e||e.baseUrl===void 0||e.apiVersion===void 0)throw new Error("HTTP options are not correctly set.");let o=[e.baseUrl.endsWith("/")?e.baseUrl.slice(0,-1):e.baseUrl];return e.apiVersion&&e.apiVersion!==""&&o.push(e.apiVersion),o.join("/")}getBaseResourcePath(){return`projects/${this.clientOptions.project}/locations/${this.clientOptions.location}`}getApiKey(){return this.clientOptions.apiKey}getWebsocketBaseUrl(){let e=this.getBaseUrl(),t=new URL(e);return t.protocol=t.protocol=="http:"?"ws":"wss",t.toString()}setBaseUrl(e){if(this.clientOptions.httpOptions)this.clientOptions.httpOptions.baseUrl=e;else throw new Error("HTTP options are not correctly set.")}constructUrl(e,t,o){let i=[this.getRequestUrlInternal(t)];return o&&i.push(this.getBaseResourcePath()),e!==""&&i.push(e),new URL(`${i.join("/")}`)}shouldPrependVertexProjectPath(e){return!(this.clientOptions.apiKey||!this.clientOptions.vertexai||e.path.startsWith("projects/")||e.httpMethod==="GET"&&e.path.startsWith("publishers/google/models"))}async request(e){let t=this.clientOptions.httpOptions;e.httpOptions&&(t=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));let o=this.shouldPrependVertexProjectPath(e),i=this.constructUrl(e.path,t,o);if(e.queryParams)for(let[l,c]of Object.entries(e.queryParams))i.searchParams.append(l,String(c));let s={};if(e.httpMethod==="GET"){if(e.body&&e.body!=="{}")throw new Error("Request body should be empty for GET request, but got non empty request body")}else s.body=e.body;return s=await this.includeExtraHttpOptionsToRequestInit(s,t,i.toString(),e.abortSignal),this.unaryApiCall(i,s,e.httpMethod)}patchHttpOptions(e,t){let o=JSON.parse(JSON.stringify(e));for(let[i,s]of Object.entries(t))typeof s=="object"?o[i]=Object.assign(Object.assign({},o[i]),s):s!==void 0&&(o[i]=s);return o}async requestStream(e){let t=this.clientOptions.httpOptions;e.httpOptions&&(t=this.patchHttpOptions(this.clientOptions.httpOptions,e.httpOptions));let o=this.shouldPrependVertexProjectPath(e),i=this.constructUrl(e.path,t,o);(!i.searchParams.has("alt")||i.searchParams.get("alt")!=="sse")&&i.searchParams.set("alt","sse");let s={};return s.body=e.body,s=await this.includeExtraHttpOptionsToRequestInit(s,t,i.toString(),e.abortSignal),this.streamApiCall(i,s,e.httpMethod)}async includeExtraHttpOptionsToRequestInit(e,t,o,i){if(t&&t.timeout||i){let s=new AbortController,l=s.signal;if(t.timeout&&t?.timeout>0){let c=setTimeout(()=>s.abort(),t.timeout);c&&typeof c.unref=="function"&&c.unref()}i&&i.addEventListener("abort",()=>{s.abort()}),e.signal=l}return t&&t.extraBody!==null&&yh(e,t.extraBody),e.headers=await this.getHeadersInternal(t,o),e}async unaryApiCall(e,t,o){return this.apiCall(e.toString(),Object.assign(Object.assign({},t),{method:o})).then(async i=>(await cl(i),new Ot(i))).catch(i=>{throw i instanceof Error?i:new Error(JSON.stringify(i))})}async streamApiCall(e,t,o){return this.apiCall(e.toString(),Object.assign(Object.assign({},t),{method:o})).then(async i=>(await cl(i),this.processStreamResponse(i))).catch(i=>{throw i instanceof Error?i:new Error(JSON.stringify(i))})}processStreamResponse(e){return ge(this,arguments,f(function*(){var o;let i=(o=e?.body)===null||o===void 0?void 0:o.getReader(),s=new TextDecoder("utf-8");if(!i)throw new Error("Response body is empty");try{let l="",c="data:",d=[`
|
|
174
|
+
|
|
175
|
+
`,"\r\r",`\r
|
|
176
|
+
\r
|
|
177
|
+
`];for(;;){let{done:u,value:p}=yield R(i.read());if(u){if(l.trim().length>0)throw new Error("Incomplete JSON segment at the end");break}let h=s.decode(p,{stream:!0});try{let b=JSON.parse(h);if("error"in b){let y=JSON.parse(JSON.stringify(b.error)),w=y.status,I=y.code,T=`got status: ${w}. ${JSON.stringify(b)}`;if(I>=400&&I<600)throw new Wn({message:T,status:I})}}catch(b){if(b.name==="ApiError")throw b}l+=h;let m=-1,g=0;for(;;){m=-1,g=0;for(let w of d){let I=l.indexOf(w);I!==-1&&(m===-1||I<m)&&(m=I,g=w.length)}if(m===-1)break;let b=l.substring(0,m);l=l.substring(m+g);let y=b.trim();if(y.startsWith(c)){let w=y.substring(c.length).trim();try{let I=new Response(w,{headers:e?.headers,status:e?.status,statusText:e?.statusText});yield yield R(new Ot(I))}catch(I){throw new Error(`exception parsing stream chunk ${w}. ${I}`)}}}}}finally{i.releaseLock()}},"processStreamResponse_1"))}async apiCall(e,t){return fetch(e,t).catch(o=>{throw new Error(`exception ${o} sending request`)})}getDefaultHeaders(){let e={},t=gh+" "+this.clientOptions.userAgentExtra;return e[hh]=t,e[Mi]=t,e[fh]="application/json",e}async getHeadersInternal(e,t){let o=new Headers;if(e&&e.headers){for(let[i,s]of Object.entries(e.headers))o.append(i,s);e.timeout&&e.timeout>0&&o.append(ph,String(Math.ceil(e.timeout/1e3)))}return await this.clientOptions.auth.addAuthHeaders(o,t),o}getFileName(e){var t;let o="";return typeof e=="string"&&(o=e.replace(/[/\\]+$/,""),o=(t=o.split(/[/\\]/).pop())!==null&&t!==void 0?t:""),o}async uploadFile(e,t){var o;let i={};t!=null&&(i.mimeType=t.mimeType,i.name=t.name,i.displayName=t.displayName),i.name&&!i.name.startsWith("files/")&&(i.name=`files/${i.name}`);let s=this.clientOptions.uploader,l=await s.stat(e);i.sizeBytes=String(l.size);let c=(o=t?.mimeType)!==null&&o!==void 0?o:l.type;if(c===void 0||c==="")throw new Error("Can not determine mimeType. Please provide mimeType in the config.");i.mimeType=c;let d={file:i},u=this.getFileName(e),p=A("upload/v1beta/files",d._url),h=await this.fetchUploadUrl(p,i.sizeBytes,i.mimeType,u,d,t?.httpOptions);return s.upload(e,h,this)}async uploadFileToFileSearchStore(e,t,o){var i;let s=this.clientOptions.uploader,l=await s.stat(t),c=String(l.size),d=(i=o?.mimeType)!==null&&i!==void 0?i:l.type;if(d===void 0||d==="")throw new Error("Can not determine mimeType. Please provide mimeType in the config.");let u=`upload/v1beta/${e}:uploadToFileSearchStore`,p=this.getFileName(t),h={};o!=null&&Jl(o,h);let m=await this.fetchUploadUrl(u,c,d,p,h,o?.httpOptions);return s.uploadToFileSearchStore(t,m,this)}async downloadFile(e){await this.clientOptions.downloader.download(e,this)}async fetchUploadUrl(e,t,o,i,s,l){var c;let d={};l?d=l:d={apiVersion:"",headers:Object.assign({"Content-Type":"application/json","X-Goog-Upload-Protocol":"resumable","X-Goog-Upload-Command":"start","X-Goog-Upload-Header-Content-Length":`${t}`,"X-Goog-Upload-Header-Content-Type":`${o}`},i?{"X-Goog-Upload-File-Name":i}:{})};let u=await this.request({path:e,body:JSON.stringify(s),httpMethod:"POST",httpOptions:d});if(!u||!u?.headers)throw new Error("Server did not return an HttpResponse or the returned HttpResponse did not have headers.");let p=(c=u?.headers)===null||c===void 0?void 0:c["x-goog-upload-url"];if(p===void 0)throw new Error("Failed to get upload url. Server did not return the x-google-upload-url in the headers");return p}};async function cl(n){var e;if(n===void 0)throw new Error("response is undefined");if(!n.ok){let t=n.status,o;!((e=n.headers.get("content-type"))===null||e===void 0)&&e.includes("application/json")?o=await n.json():o={error:{message:await n.text(),code:n.status,status:n.statusText}};let i=JSON.stringify(o);throw t>=400&&t<600?new Wn({message:i,status:t}):new Error(i)}}f(cl,"throwErrorIfNotOK");function yh(n,e){if(!e||Object.keys(e).length===0)return;if(n.body instanceof Blob){console.warn("includeExtraBodyToRequestInit: extraBody provided but current request body is a Blob. extraBody will be ignored as merging is not supported for Blob bodies.");return}let t={};if(typeof n.body=="string"&&n.body.length>0)try{let s=JSON.parse(n.body);if(typeof s=="object"&&s!==null&&!Array.isArray(s))t=s;else{console.warn("includeExtraBodyToRequestInit: Original request body is valid JSON but not a non-array object. Skip applying extraBody to the request body.");return}}catch{console.warn("includeExtraBodyToRequestInit: Original request body is not valid JSON. Skip applying extraBody to the request body.");return}function o(s,l){let c=Object.assign({},s);for(let d in l)if(Object.prototype.hasOwnProperty.call(l,d)){let u=l[d],p=c[d];u&&typeof u=="object"&&!Array.isArray(u)&&p&&typeof p=="object"&&!Array.isArray(p)?c[d]=o(p,u):(p&&u&&typeof p!=typeof u&&console.warn(`includeExtraBodyToRequestInit:deepMerge: Type mismatch for key "${d}". Original type: ${typeof p}, New type: ${typeof u}. Overwriting.`),c[d]=u)}return c}f(o,"deepMerge");let i=o(t,e);n.body=JSON.stringify(i)}f(yh,"includeExtraBodyToRequestInit");var wh="mcp_used/unknown",Ih=!1;function Xl(n){for(let e of n)if(Th(e)||typeof e=="object"&&"inputSchema"in e)return!0;return Ih}f(Xl,"hasMcpToolUsage");function Yl(n){var e;let t=(e=n[Mi])!==null&&e!==void 0?e:"";n[Mi]=(t+` ${wh}`).trimStart()}f(Yl,"setMcpUsageHeader");function Th(n){return n!==null&&typeof n=="object"&&n instanceof Ui}f(Th,"isMcpCallableTool");function _h(n){return ge(this,arguments,f(function*(t,o=100){let i,s=0;for(;s<o;){let l=yield R(t.listTools({cursor:i}));for(let c of l.tools)yield yield R(c),s++;if(!l.nextCursor)break;i=l.nextCursor}},"listAllTools_1"))}f(_h,"listAllTools");var Ui=class n{static{f(this,"McpCallableTool")}constructor(e=[],t){this.mcpTools=[],this.functionNameToMcpClient={},this.mcpClients=e,this.config=t}static create(e,t){return new n(e,t)}async initialize(){var e,t,o,i;if(this.mcpTools.length>0)return;let s={},l=[];for(let p of this.mcpClients)try{for(var c=!0,d=(t=void 0,be(_h(p))),u;u=await d.next(),e=u.done,!e;c=!0){i=u.value,c=!1;let h=i;l.push(h);let m=h.name;if(s[m])throw new Error(`Duplicate function name ${m} found in MCP tools. Please ensure function names are unique.`);s[m]=p}}catch(h){t={error:h}}finally{try{!c&&!e&&(o=d.return)&&await o.call(d)}finally{if(t)throw t.error}}this.mcpTools=l,this.functionNameToMcpClient=s}async tool(){return await this.initialize(),sd(this.mcpTools,this.config)}async callTool(e){await this.initialize();let t=[];for(let o of e)if(o.name in this.functionNameToMcpClient){let i=this.functionNameToMcpClient[o.name],s;this.config.timeout&&(s={timeout:this.config.timeout});let l=await i.callTool({name:o.name,arguments:o.args},void 0,s);t.push({functionResponse:{name:o.name,response:l.isError?{error:l}:l}})}return t}};async function Ch(n,e,t){let o=new _i,i;t.data instanceof Blob?i=JSON.parse(await t.data.text()):i=JSON.parse(t.data),Object.assign(o,i),e(o)}f(Ch,"handleWebSocketMessage$1");var Li=class{static{f(this,"LiveMusic")}constructor(e,t,o){this.apiClient=e,this.auth=t,this.webSocketFactory=o}async connect(e){var t,o;if(this.apiClient.isVertexAI())throw new Error("Live music is not supported for Vertex AI.");console.warn("Live music generation is experimental and may change in future versions.");let i=this.apiClient.getWebsocketBaseUrl(),s=this.apiClient.getApiVersion(),l=Sh(this.apiClient.getDefaultHeaders()),c=this.apiClient.getApiKey(),d=`${i}/ws/google.ai.generativelanguage.${s}.GenerativeService.BidiGenerateMusic?key=${c}`,u=f(()=>{},"onopenResolve"),p=new Promise(_=>{u=_}),h=e.callbacks,m=f(function(){u({})},"onopenAwaitedCallback"),g=this.apiClient,b={onopen:m,onmessage:f(_=>{Ch(g,h.onmessage,_)},"onmessage"),onerror:(t=h?.onerror)!==null&&t!==void 0?t:function(_){},onclose:(o=h?.onclose)!==null&&o!==void 0?o:function(_){}},y=this.webSocketFactory.create(d,Ah(l),b);y.connect(),await p;let T={setup:{model:F(this.apiClient,e.model)}};return y.send(JSON.stringify(T)),new Fi(y,this.apiClient)}},Fi=class{static{f(this,"LiveMusicSession")}constructor(e,t){this.conn=e,this.apiClient=t}async setWeightedPrompts(e){if(!e.weightedPrompts||Object.keys(e.weightedPrompts).length===0)throw new Error("Weighted prompts must be set and contain at least one entry.");let t=Zu(e);this.conn.send(JSON.stringify({clientContent:t}))}async setMusicGenerationConfig(e){e.musicGenerationConfig||(e.musicGenerationConfig={});let t=Qu(e);this.conn.send(JSON.stringify(t))}sendPlaybackControl(e){let t={playbackControl:e};this.conn.send(JSON.stringify(t))}play(){this.sendPlaybackControl(Tt.PLAY)}pause(){this.sendPlaybackControl(Tt.PAUSE)}stop(){this.sendPlaybackControl(Tt.STOP)}resetContext(){this.sendPlaybackControl(Tt.RESET_CONTEXT)}close(){this.conn.close()}};function Ah(n){let e={};return n.forEach((t,o)=>{e[o]=t}),e}f(Ah,"headersToMap$1");function Sh(n){let e=new Headers;for(let[t,o]of Object.entries(n))e.append(t,o);return e}f(Sh,"mapToHeaders$1");var vh="FunctionResponse request must have an `id` field from the response of a ToolCall.FunctionalCalls in Google AI.";async function $h(n,e,t){let o=new Ti,i;t.data instanceof Blob?i=await t.data.text():t.data instanceof ArrayBuffer?i=new TextDecoder().decode(t.data):i=t.data;let s=JSON.parse(i);if(n.isVertexAI()){let l=tf(s);Object.assign(o,l)}else Object.assign(o,s);e(o)}f($h,"handleWebSocketMessage");var ki=class{static{f(this,"Live")}constructor(e,t,o){this.apiClient=e,this.auth=t,this.webSocketFactory=o,this.music=new Li(this.apiClient,this.auth,this.webSocketFactory)}async connect(e){var t,o,i,s,l,c;if(e.config&&e.config.httpOptions)throw new Error("The Live module does not support httpOptions at request-level in LiveConnectConfig yet. Please use the client-level httpOptions configuration instead.");let d=this.apiClient.getWebsocketBaseUrl(),u=this.apiClient.getApiVersion(),p,h=this.apiClient.getHeaders();e.config&&e.config.tools&&Xl(e.config.tools)&&Yl(h);let m=Rh(h);if(this.apiClient.isVertexAI())p=`${d}/ws/google.cloud.aiplatform.${u}.LlmBidiService/BidiGenerateContent`,await this.auth.addAuthHeaders(m,p);else{let $=this.apiClient.getApiKey(),U="BidiGenerateContent",z="key";$?.startsWith("auth_tokens/")&&(console.warn("Warning: Ephemeral token support is experimental and may change in future versions."),u!=="v1alpha"&&console.warn("Warning: The SDK's ephemeral token support is in v1alpha only. Please use const ai = new GoogleGenAI({apiKey: token.name, httpOptions: { apiVersion: 'v1alpha' }}); before session connection."),U="BidiGenerateContentConstrained",z="access_token"),p=`${d}/ws/google.ai.generativelanguage.${u}.GenerativeService.${U}?${z}=${$}`}let g=f(()=>{},"onopenResolve"),b=new Promise($=>{g=$}),y=e.callbacks,w=f(function(){var $;($=y?.onopen)===null||$===void 0||$.call(y),g({})},"onopenAwaitedCallback"),I=this.apiClient,T={onopen:w,onmessage:f($=>{$h(I,y.onmessage,$)},"onmessage"),onerror:(t=y?.onerror)!==null&&t!==void 0?t:function($){},onclose:(o=y?.onclose)!==null&&o!==void 0?o:function($){}},_=this.webSocketFactory.create(p,Ph(m),T);_.connect(),await b;let C=F(this.apiClient,e.model);if(this.apiClient.isVertexAI()&&C.startsWith("publishers/")){let $=this.apiClient.getProject(),U=this.apiClient.getLocation();C=`projects/${$}/locations/${U}/`+C}let v={};this.apiClient.isVertexAI()&&((i=e.config)===null||i===void 0?void 0:i.responseModalities)===void 0&&(e.config===void 0?e.config={responseModalities:[Pn.AUDIO]}:e.config.responseModalities=[Pn.AUDIO]),!((s=e.config)===null||s===void 0)&&s.generationConfig&&console.warn("Setting `LiveConnectConfig.generation_config` is deprecated, please set the fields on `LiveConnectConfig` directly. This will become an error in a future version (not before Q3 2025).");let P=(c=(l=e.config)===null||l===void 0?void 0:l.tools)!==null&&c!==void 0?c:[],N=[];for(let $ of P)if(this.isCallableTool($)){let U=$;N.push(await U.tool())}else N.push($);N.length>0&&(e.config.tools=N);let B={model:C,config:e.config,callbacks:e.callbacks};return this.apiClient.isVertexAI()?v=Ku(this.apiClient,B):v=zu(this.apiClient,B),delete v.config,_.send(JSON.stringify(v)),new Vi(_,this.apiClient)}isCallableTool(e){return"callTool"in e&&typeof e.callTool=="function"}},Nh={turnComplete:!0},Vi=class{static{f(this,"Session")}constructor(e,t){this.conn=e,this.apiClient=t}tLiveClientContent(e,t){if(t.turns!==null&&t.turns!==void 0){let o=[];try{o=ue(t.turns),e.isVertexAI()||(o=o.map(i=>ao(i)))}catch{throw new Error(`Failed to parse client content "turns", type: '${typeof t.turns}'`)}return{clientContent:{turns:o,turnComplete:t.turnComplete}}}return{clientContent:{turnComplete:t.turnComplete}}}tLiveClienttToolResponse(e,t){let o=[];if(t.functionResponses==null)throw new Error("functionResponses is required.");if(Array.isArray(t.functionResponses)?o=t.functionResponses:o=[t.functionResponses],o.length===0)throw new Error("functionResponses is required.");for(let s of o){if(typeof s!="object"||s===null||!("name"in s)||!("response"in s))throw new Error(`Could not parse function response, type '${typeof s}'.`);if(!e.isVertexAI()&&!("id"in s))throw new Error(vh)}return{toolResponse:{functionResponses:o}}}sendClientContent(e){e=Object.assign(Object.assign({},Nh),e);let t=this.tLiveClientContent(this.apiClient,e);this.conn.send(JSON.stringify(t))}sendRealtimeInput(e){let t={};this.apiClient.isVertexAI()?t={realtimeInput:ef(e)}:t={realtimeInput:ju(e)},this.conn.send(JSON.stringify(t))}sendToolResponse(e){if(e.functionResponses==null)throw new Error("Tool response parameters are required.");let t=this.tLiveClienttToolResponse(this.apiClient,e);this.conn.send(JSON.stringify(t))}close(){this.conn.close()}};function Ph(n){let e={};return n.forEach((t,o)=>{e[o]=t}),e}f(Ph,"headersToMap");function Rh(n){let e=new Headers;for(let[t,o]of Object.entries(n))e.append(t,o);return e}f(Rh,"mapToHeaders");var dl=10;function ul(n){var e,t,o;if(!((e=n?.automaticFunctionCalling)===null||e===void 0)&&e.disable)return!0;let i=!1;for(let l of(t=n?.tools)!==null&&t!==void 0?t:[])if(Ct(l)){i=!0;break}if(!i)return!0;let s=(o=n?.automaticFunctionCalling)===null||o===void 0?void 0:o.maximumRemoteCalls;return s&&(s<0||!Number.isInteger(s))||s==0?(console.warn("Invalid maximumRemoteCalls value provided for automatic function calling. Disabled automatic function calling. Please provide a valid integer value greater than 0. maximumRemoteCalls provided:",s),!0):!1}f(ul,"shouldDisableAfc");function Ct(n){return"callTool"in n&&typeof n.callTool=="function"}f(Ct,"isCallableTool");function xh(n){var e,t,o;return(o=(t=(e=n.config)===null||e===void 0?void 0:e.tools)===null||t===void 0?void 0:t.some(i=>Ct(i)))!==null&&o!==void 0?o:!1}f(xh,"hasCallableTools");function fl(n){var e;let t=[];return!((e=n?.config)===null||e===void 0)&&e.tools&&n.config.tools.forEach((o,i)=>{if(Ct(o))return;let s=o;s.functionDeclarations&&s.functionDeclarations.length>0&&t.push(i)}),t}f(fl,"findAfcIncompatibleToolIndexes");function pl(n){var e;return!(!((e=n?.automaticFunctionCalling)===null||e===void 0)&&e.ignoreCallHistory)}f(pl,"shouldAppendAfcHistory");var qi=class extends Ee{static{f(this,"Models")}constructor(e){super(),this.apiClient=e,this.generateContent=async t=>{var o,i,s,l,c;let d=await this.processParamsMaybeAddMcpUsage(t);if(this.maybeMoveToResponseJsonSchem(t),!xh(t)||ul(t.config))return await this.generateContentInternal(d);let u=fl(t);if(u.length>0){let y=u.map(w=>`tools[${w}]`).join(", ");throw new Error(`Automatic function calling with CallableTools (or MCP objects) and basic FunctionDeclarations is not yet supported. Incompatible tools found at ${y}.`)}let p,h,m=ue(d.contents),g=(s=(i=(o=d.config)===null||o===void 0?void 0:o.automaticFunctionCalling)===null||i===void 0?void 0:i.maximumRemoteCalls)!==null&&s!==void 0?s:dl,b=0;for(;b<g&&(p=await this.generateContentInternal(d),!(!p.functionCalls||p.functionCalls.length===0));){let y=p.candidates[0].content,w=[];for(let I of(c=(l=t.config)===null||l===void 0?void 0:l.tools)!==null&&c!==void 0?c:[])if(Ct(I)){let _=await I.callTool(p.functionCalls);w.push(..._)}b++,h={role:"user",parts:w},d.contents=ue(d.contents),d.contents.push(y),d.contents.push(h),pl(d.config)&&(m.push(y),m.push(h))}return pl(d.config)&&(p.automaticFunctionCallingHistory=m),p},this.generateContentStream=async t=>{var o,i,s,l,c;if(this.maybeMoveToResponseJsonSchem(t),ul(t.config)){let h=await this.processParamsMaybeAddMcpUsage(t);return await this.generateContentStreamInternal(h)}let d=fl(t);if(d.length>0){let h=d.map(m=>`tools[${m}]`).join(", ");throw new Error(`Incompatible tools found at ${h}. Automatic function calling with CallableTools (or MCP objects) and basic FunctionDeclarations" is not yet supported.`)}let u=(s=(i=(o=t?.config)===null||o===void 0?void 0:o.toolConfig)===null||i===void 0?void 0:i.functionCallingConfig)===null||s===void 0?void 0:s.streamFunctionCallArguments,p=(c=(l=t?.config)===null||l===void 0?void 0:l.automaticFunctionCalling)===null||c===void 0?void 0:c.disable;if(u&&!p)throw new Error("Running in streaming mode with 'streamFunctionCallArguments' enabled, this feature is not compatible with automatic function calling (AFC). Please set 'config.automaticFunctionCalling.disable' to true to disable AFC or leave 'config.toolConfig.functionCallingConfig.streamFunctionCallArguments' to be undefined or set to false to disable streaming function call arguments feature.");return await this.processAfcStream(t)},this.generateImages=async t=>await this.generateImagesInternal(t).then(o=>{var i;let s,l=[];if(o?.generatedImages)for(let d of o.generatedImages)d&&d?.safetyAttributes&&((i=d?.safetyAttributes)===null||i===void 0?void 0:i.contentType)==="Positive Prompt"?s=d?.safetyAttributes:l.push(d);let c;return s?c={generatedImages:l,positivePromptSafetyAttributes:s,sdkHttpResponse:o.sdkHttpResponse}:c={generatedImages:l,sdkHttpResponse:o.sdkHttpResponse},c}),this.list=async t=>{var o;let l={config:Object.assign(Object.assign({},{queryBase:!0}),t?.config)};if(this.apiClient.isVertexAI()&&!l.config.queryBase){if(!((o=l.config)===null||o===void 0)&&o.filter)throw new Error("Filtering tuned models list for Vertex AI is not currently supported");l.config.filter="labels.tune-type:*"}return new Ge(xe.PAGED_ITEM_MODELS,c=>this.listInternal(c),await this.listInternal(l),l)},this.editImage=async t=>{let o={model:t.model,prompt:t.prompt,referenceImages:[],config:t.config};return t.referenceImages&&t.referenceImages&&(o.referenceImages=t.referenceImages.map(i=>i.toReferenceImageAPI())),await this.editImageInternal(o)},this.upscaleImage=async t=>{let o={numberOfImages:1,mode:"upscale"};t.config&&(o=Object.assign(Object.assign({},o),t.config));let i={model:t.model,image:t.image,upscaleFactor:t.upscaleFactor,config:o};return await this.upscaleImageInternal(i)},this.generateVideos=async t=>{var o,i,s,l,c,d;if((t.prompt||t.image||t.video)&&t.source)throw new Error("Source and prompt/image/video are mutually exclusive. Please only use source.");return this.apiClient.isVertexAI()||(!((o=t.video)===null||o===void 0)&&o.uri&&(!((i=t.video)===null||i===void 0)&&i.videoBytes)?t.video={uri:t.video.uri,mimeType:t.video.mimeType}:!((l=(s=t.source)===null||s===void 0?void 0:s.video)===null||l===void 0)&&l.uri&&(!((d=(c=t.source)===null||c===void 0?void 0:c.video)===null||d===void 0)&&d.videoBytes)&&(t.source.video={uri:t.source.video.uri,mimeType:t.source.video.mimeType})),await this.generateVideosInternal(t)}}maybeMoveToResponseJsonSchem(e){e.config&&e.config.responseSchema&&(e.config.responseJsonSchema||Object.keys(e.config.responseSchema).includes("$schema")&&(e.config.responseJsonSchema=e.config.responseSchema,delete e.config.responseSchema))}async processParamsMaybeAddMcpUsage(e){var t,o,i;let s=(t=e.config)===null||t===void 0?void 0:t.tools;if(!s)return e;let l=await Promise.all(s.map(async d=>Ct(d)?await d.tool():d)),c={model:e.model,contents:e.contents,config:Object.assign(Object.assign({},e.config),{tools:l})};if(c.config.tools=l,e.config&&e.config.tools&&Xl(e.config.tools)){let d=(i=(o=e.config.httpOptions)===null||o===void 0?void 0:o.headers)!==null&&i!==void 0?i:{},u=Object.assign({},d);Object.keys(u).length===0&&(u=this.apiClient.getDefaultHeaders()),Yl(u),c.config.httpOptions=Object.assign(Object.assign({},e.config.httpOptions),{headers:u})}return c}async initAfcToolsMap(e){var t,o,i;let s=new Map;for(let l of(o=(t=e.config)===null||t===void 0?void 0:t.tools)!==null&&o!==void 0?o:[])if(Ct(l)){let c=l,d=await c.tool();for(let u of(i=d.functionDeclarations)!==null&&i!==void 0?i:[]){if(!u.name)throw new Error("Function declaration name is required.");if(s.has(u.name))throw new Error(`Duplicate tool declaration name: ${u.name}`);s.set(u.name,c)}}return s}async processAfcStream(e){var t,o,i;let s=(i=(o=(t=e.config)===null||t===void 0?void 0:t.automaticFunctionCalling)===null||o===void 0?void 0:o.maximumRemoteCalls)!==null&&i!==void 0?i:dl,l=!1,c=0,d=await this.initAfcToolsMap(e);return function(u,p,h){return ge(this,arguments,function*(){for(var m,g,b,y,w,I;c<s;){l&&(c++,l=!1);let v=yield R(u.processParamsMaybeAddMcpUsage(h)),P=yield R(u.generateContentStreamInternal(v)),N=[],B=[];try{for(var T=!0,_=(g=void 0,be(P)),C;C=yield R(_.next()),m=C.done,!m;T=!0){y=C.value,T=!1;let $=y;if(yield yield R($),$.candidates&&(!((w=$.candidates[0])===null||w===void 0)&&w.content)){B.push($.candidates[0].content);for(let U of(I=$.candidates[0].content.parts)!==null&&I!==void 0?I:[])if(c<s&&U.functionCall){if(!U.functionCall.name)throw new Error("Function call name was not returned by the model.");if(p.has(U.functionCall.name)){let z=yield R(p.get(U.functionCall.name).callTool([U.functionCall]));N.push(...z)}else throw new Error(`Automatic function calling was requested, but not all the tools the model used implement the CallableTool interface. Available tools: ${p.keys()}, mising tool: ${U.functionCall.name}`)}}}}catch($){g={error:$}}finally{try{!T&&!m&&(b=_.return)&&(yield R(b.call(_)))}finally{if(g)throw g.error}}if(N.length>0){l=!0;let $=new dt;$.candidates=[{content:{role:"user",parts:N}}],yield yield R($);let U=[];U.push(...B),U.push({role:"user",parts:N});let z=ue(h.contents).concat(U);h.contents=z}else break}})}(this,d,e)}async generateContentInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=sl(this.apiClient,e);return c=A("{model}:generateContent",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=ll(p),m=new dt;return Object.assign(m,h),m})}else{let u=rl(this.apiClient,e);return c=A("{model}:generateContent",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=al(p),m=new dt;return Object.assign(m,h),m})}}async generateContentStreamInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=sl(this.apiClient,e);return c=A("{model}:streamGenerateContent?alt=sse",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.requestStream({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}),l.then(function(h){return ge(this,arguments,function*(){var m,g,b,y;try{for(var w=!0,I=be(h),T;T=yield R(I.next()),m=T.done,!m;w=!0){y=T.value,w=!1;let _=y,C=ll(yield R(_.json()));C.sdkHttpResponse={headers:_.headers};let v=new dt;Object.assign(v,C),yield yield R(v)}}catch(_){g={error:_}}finally{try{!w&&!m&&(b=I.return)&&(yield R(b.call(I)))}finally{if(g)throw g.error}}})})}else{let u=rl(this.apiClient,e);return c=A("{model}:streamGenerateContent?alt=sse",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.requestStream({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}),l.then(function(h){return ge(this,arguments,function*(){var m,g,b,y;try{for(var w=!0,I=be(h),T;T=yield R(I.next()),m=T.done,!m;w=!0){y=T.value,w=!1;let _=y,C=al(yield R(_.json()));C.sdkHttpResponse={headers:_.headers};let v=new dt;Object.assign(v,C),yield yield R(v)}}catch(_){g={error:_}}finally{try{!w&&!m&&(b=I.return)&&(yield R(b.call(I)))}finally{if(g)throw g.error}}})})}}async embedContent(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=xf(this.apiClient,e);return c=A("{model}:predict",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Mf(p),m=new xn;return Object.assign(m,h),m})}else{let u=Rf(this.apiClient,e);return c=A("{model}:batchEmbedContents",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Gf(p),m=new xn;return Object.assign(m,h),m})}}async generateImagesInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Wf(this.apiClient,e);return c=A("{model}:predict",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Xf(p),m=new Gn;return Object.assign(m,h),m})}else{let u=Bf(this.apiClient,e);return c=A("{model}:predict",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Jf(p),m=new Gn;return Object.assign(m,h),m})}}async editImageInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI()){let c=vf(this.apiClient,e);return s=A("{model}:predict",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json().then(u=>{let p=u;return p.sdkHttpResponse={headers:d.headers},p})),i.then(d=>{let u=$f(d),p=new di;return Object.assign(p,u),p})}else throw new Error("This method is only supported by the Vertex AI.")}async upscaleImageInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI()){let c=Wp(this.apiClient,e);return s=A("{model}:predict",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json().then(u=>{let p=u;return p.sdkHttpResponse={headers:d.headers},p})),i.then(d=>{let u=Jp(d),p=new ui;return Object.assign(p,u),p})}else throw new Error("This method is only supported by the Vertex AI.")}async recontextImage(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI()){let c=Sp(this.apiClient,e);return s=A("{model}:predict",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>{let u=vp(d),p=new fi;return Object.assign(p,u),p})}else throw new Error("This method is only supported by the Vertex AI.")}async segmentImage(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI()){let c=Gp(this.apiClient,e);return s=A("{model}:predict",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>{let u=Mp(d),p=new pi;return Object.assign(p,u),p})}else throw new Error("This method is only supported by the Vertex AI.")}async get(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=dp(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l.then(p=>Gi(p))}else{let u=cp(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l.then(p=>xi(p))}}async listInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=yp(this.apiClient,e);return c=A("{models_url}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Ip(p),m=new Mn;return Object.assign(m,h),m})}else{let u=Ep(this.apiClient,e);return c=A("{models_url}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=wp(p),m=new Mn;return Object.assign(m,h),m})}}async update(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Hp(this.apiClient,e);return c=A("{model}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l.then(p=>Gi(p))}else{let u=Op(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"PATCH",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l.then(p=>xi(p))}}async delete(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=_f(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Af(p),m=new Dn;return Object.assign(m,h),m})}else{let u=Tf(this.apiClient,e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"DELETE",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Cf(p),m=new Dn;return Object.assign(m,h),m})}}async countTokens(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=yf(this.apiClient,e);return c=A("{model}:countTokens",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=If(p),m=new Un;return Object.assign(m,h),m})}else{let u=Ef(this.apiClient,e);return c=A("{model}:countTokens",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=wf(p),m=new Un;return Object.assign(m,h),m})}}async computeTokens(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI()){let c=uf(this.apiClient,e);return s=A("{model}:computeTokens",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json().then(u=>{let p=u;return p.sdkHttpResponse={headers:d.headers},p})),i.then(d=>{let u=ff(d),p=new hi;return Object.assign(p,u),p})}else throw new Error("This method is only supported by the Vertex AI.")}async generateVideosInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=jf(this.apiClient,e);return c=A("{model}:predictLongRunning",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l.then(p=>{let h=Qf(p),m=new Ln;return Object.assign(m,h),m})}else{let u=Zf(this.apiClient,e);return c=A("{model}:predictLongRunning",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l.then(p=>{let h=Kf(p),m=new Ln;return Object.assign(m,h),m})}}};var Oi=class extends Ee{static{f(this,"Operations")}constructor(e){super(),this.apiClient=e}async getVideosOperation(e){let t=e.operation,o=e.config;if(t.name===void 0||t.name==="")throw new Error("Operation name is required.");if(this.apiClient.isVertexAI()){let i=t.name.split("/operations/")[0],s;o&&"httpOptions"in o&&(s=o.httpOptions);let l=await this.fetchPredictVideosOperationInternal({operationName:t.name,resourceName:i,config:{httpOptions:s}});return t._fromAPIResponse({apiResponse:l,_isVertexAI:!0})}else{let i=await this.getVideosOperationInternal({operationName:t.name,config:o});return t._fromAPIResponse({apiResponse:i,_isVertexAI:!1})}}async get(e){let t=e.operation,o=e.config;if(t.name===void 0||t.name==="")throw new Error("Operation name is required.");if(this.apiClient.isVertexAI()){let i=t.name.split("/operations/")[0],s;o&&"httpOptions"in o&&(s=o.httpOptions);let l=await this.fetchPredictVideosOperationInternal({operationName:t.name,resourceName:i,config:{httpOptions:s}});return t._fromAPIResponse({apiResponse:l,_isVertexAI:!0})}else{let i=await this.getVideosOperationInternal({operationName:t.name,config:o});return t._fromAPIResponse({apiResponse:i,_isVertexAI:!1})}}async getVideosOperationInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Xc(e);return c=A("{operationName}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json()),l}else{let u=Jc(e);return c=A("{operationName}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json()),l}}async fetchPredictVideosOperationInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI()){let c=kc(e);return s=A("{resourceName}:fetchPredictOperation",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i}else throw new Error("This method is only supported by the Vertex AI.")}};function Gh(n){let e={},t=r(n,["data"]);if(t!=null&&a(e,["data"],t),r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(Gh,"blobToMldev");function Mh(n){let e={},t=r(n,["parts"]);if(t!=null){let i=t;Array.isArray(i)&&(i=i.map(s=>Hh(s))),a(e,["parts"],i)}let o=r(n,["role"]);return o!=null&&a(e,["role"],o),e}f(Mh,"contentToMldev");function Dh(n,e,t){let o={},i=r(e,["expireTime"]);t!==void 0&&i!=null&&a(t,["expireTime"],i);let s=r(e,["newSessionExpireTime"]);t!==void 0&&s!=null&&a(t,["newSessionExpireTime"],s);let l=r(e,["uses"]);t!==void 0&&l!=null&&a(t,["uses"],l);let c=r(e,["liveConnectConstraints"]);t!==void 0&&c!=null&&a(t,["bidiGenerateContentSetup"],Oh(n,c));let d=r(e,["lockAdditionalFields"]);return t!==void 0&&d!=null&&a(t,["fieldMask"],d),o}f(Dh,"createAuthTokenConfigToMldev");function Uh(n,e){let t={},o=r(e,["config"]);return o!=null&&a(t,["config"],Dh(n,o,t)),t}f(Uh,"createAuthTokenParametersToMldev");function Lh(n){let e={};if(r(n,["displayName"])!==void 0)throw new Error("displayName parameter is not supported in Gemini API.");let t=r(n,["fileUri"]);t!=null&&a(e,["fileUri"],t);let o=r(n,["mimeType"]);return o!=null&&a(e,["mimeType"],o),e}f(Lh,"fileDataToMldev");function Fh(n){let e={},t=r(n,["id"]);t!=null&&a(e,["id"],t);let o=r(n,["args"]);o!=null&&a(e,["args"],o);let i=r(n,["name"]);if(i!=null&&a(e,["name"],i),r(n,["partialArgs"])!==void 0)throw new Error("partialArgs parameter is not supported in Gemini API.");if(r(n,["willContinue"])!==void 0)throw new Error("willContinue parameter is not supported in Gemini API.");return e}f(Fh,"functionCallToMldev");function kh(n){let e={};if(r(n,["authConfig"])!==void 0)throw new Error("authConfig parameter is not supported in Gemini API.");let t=r(n,["enableWidget"]);return t!=null&&a(e,["enableWidget"],t),e}f(kh,"googleMapsToMldev");function Vh(n){let e={};if(r(n,["excludeDomains"])!==void 0)throw new Error("excludeDomains parameter is not supported in Gemini API.");if(r(n,["blockingConfidence"])!==void 0)throw new Error("blockingConfidence parameter is not supported in Gemini API.");let t=r(n,["timeRangeFilter"]);return t!=null&&a(e,["timeRangeFilter"],t),e}f(Vh,"googleSearchToMldev");function qh(n,e){let t={},o=r(n,["generationConfig"]);e!==void 0&&o!=null&&a(e,["setup","generationConfig"],o);let i=r(n,["responseModalities"]);e!==void 0&&i!=null&&a(e,["setup","generationConfig","responseModalities"],i);let s=r(n,["temperature"]);e!==void 0&&s!=null&&a(e,["setup","generationConfig","temperature"],s);let l=r(n,["topP"]);e!==void 0&&l!=null&&a(e,["setup","generationConfig","topP"],l);let c=r(n,["topK"]);e!==void 0&&c!=null&&a(e,["setup","generationConfig","topK"],c);let d=r(n,["maxOutputTokens"]);e!==void 0&&d!=null&&a(e,["setup","generationConfig","maxOutputTokens"],d);let u=r(n,["mediaResolution"]);e!==void 0&&u!=null&&a(e,["setup","generationConfig","mediaResolution"],u);let p=r(n,["seed"]);e!==void 0&&p!=null&&a(e,["setup","generationConfig","seed"],p);let h=r(n,["speechConfig"]);e!==void 0&&h!=null&&a(e,["setup","generationConfig","speechConfig"],dr(h));let m=r(n,["thinkingConfig"]);e!==void 0&&m!=null&&a(e,["setup","generationConfig","thinkingConfig"],m);let g=r(n,["enableAffectiveDialog"]);e!==void 0&&g!=null&&a(e,["setup","generationConfig","enableAffectiveDialog"],g);let b=r(n,["systemInstruction"]);e!==void 0&&b!=null&&a(e,["setup","systemInstruction"],Mh(te(b)));let y=r(n,["tools"]);if(e!==void 0&&y!=null){let P=$t(y);Array.isArray(P)&&(P=P.map(N=>Wh(vt(N)))),a(e,["setup","tools"],P)}let w=r(n,["sessionResumption"]);e!==void 0&&w!=null&&a(e,["setup","sessionResumption"],Bh(w));let I=r(n,["inputAudioTranscription"]);e!==void 0&&I!=null&&a(e,["setup","inputAudioTranscription"],I);let T=r(n,["outputAudioTranscription"]);e!==void 0&&T!=null&&a(e,["setup","outputAudioTranscription"],T);let _=r(n,["realtimeInputConfig"]);e!==void 0&&_!=null&&a(e,["setup","realtimeInputConfig"],_);let C=r(n,["contextWindowCompression"]);e!==void 0&&C!=null&&a(e,["setup","contextWindowCompression"],C);let v=r(n,["proactivity"]);if(e!==void 0&&v!=null&&a(e,["setup","proactivity"],v),r(n,["explicitVadSignal"])!==void 0)throw new Error("explicitVadSignal parameter is not supported in Gemini API.");return t}f(qh,"liveConnectConfigToMldev");function Oh(n,e){let t={},o=r(e,["model"]);o!=null&&a(t,["setup","model"],F(n,o));let i=r(e,["config"]);return i!=null&&a(t,["config"],qh(i,t)),t}f(Oh,"liveConnectConstraintsToMldev");function Hh(n){let e={},t=r(n,["mediaResolution"]);t!=null&&a(e,["mediaResolution"],t);let o=r(n,["codeExecutionResult"]);o!=null&&a(e,["codeExecutionResult"],o);let i=r(n,["executableCode"]);i!=null&&a(e,["executableCode"],i);let s=r(n,["fileData"]);s!=null&&a(e,["fileData"],Lh(s));let l=r(n,["functionCall"]);l!=null&&a(e,["functionCall"],Fh(l));let c=r(n,["functionResponse"]);c!=null&&a(e,["functionResponse"],c);let d=r(n,["inlineData"]);d!=null&&a(e,["inlineData"],Gh(d));let u=r(n,["text"]);u!=null&&a(e,["text"],u);let p=r(n,["thought"]);p!=null&&a(e,["thought"],p);let h=r(n,["thoughtSignature"]);h!=null&&a(e,["thoughtSignature"],h);let m=r(n,["videoMetadata"]);return m!=null&&a(e,["videoMetadata"],m),e}f(Hh,"partToMldev");function Bh(n){let e={},t=r(n,["handle"]);if(t!=null&&a(e,["handle"],t),r(n,["transparent"])!==void 0)throw new Error("transparent parameter is not supported in Gemini API.");return e}f(Bh,"sessionResumptionConfigToMldev");function Wh(n){let e={},t=r(n,["functionDeclarations"]);if(t!=null){let p=t;Array.isArray(p)&&(p=p.map(h=>h)),a(e,["functionDeclarations"],p)}if(r(n,["retrieval"])!==void 0)throw new Error("retrieval parameter is not supported in Gemini API.");let o=r(n,["googleSearchRetrieval"]);o!=null&&a(e,["googleSearchRetrieval"],o);let i=r(n,["computerUse"]);i!=null&&a(e,["computerUse"],i);let s=r(n,["fileSearch"]);s!=null&&a(e,["fileSearch"],s);let l=r(n,["codeExecution"]);if(l!=null&&a(e,["codeExecution"],l),r(n,["enterpriseWebSearch"])!==void 0)throw new Error("enterpriseWebSearch parameter is not supported in Gemini API.");let c=r(n,["googleMaps"]);c!=null&&a(e,["googleMaps"],kh(c));let d=r(n,["googleSearch"]);d!=null&&a(e,["googleSearch"],Vh(d));let u=r(n,["urlContext"]);return u!=null&&a(e,["urlContext"],u),e}f(Wh,"toolToMldev");function Jh(n){let e=[];for(let t in n)if(Object.prototype.hasOwnProperty.call(n,t)){let o=n[t];if(typeof o=="object"&&o!=null&&Object.keys(o).length>0){let i=Object.keys(o).map(s=>`${t}.${s}`);e.push(...i)}else e.push(t)}return e.join(",")}f(Jh,"getFieldMasks");function Xh(n,e){let t=null,o=n.bidiGenerateContentSetup;if(typeof o=="object"&&o!==null&&"setup"in o){let s=o.setup;typeof s=="object"&&s!==null?(n.bidiGenerateContentSetup=s,t=s):delete n.bidiGenerateContentSetup}else o!==void 0&&delete n.bidiGenerateContentSetup;let i=n.fieldMask;if(t){let s=Jh(t);if(Array.isArray(e?.lockAdditionalFields)&&e?.lockAdditionalFields.length===0)s?n.fieldMask=s:delete n.fieldMask;else if(e?.lockAdditionalFields&&e.lockAdditionalFields.length>0&&i!==null&&Array.isArray(i)&&i.length>0){let l=["temperature","topK","topP","maxOutputTokens","responseModalities","seed","speechConfig"],c=[];i.length>0&&(c=i.map(u=>l.includes(u)?`generationConfig.${u}`:u));let d=[];s&&d.push(s),c.length>0&&d.push(...c),d.length>0?n.fieldMask=d.join(","):delete n.fieldMask}else delete n.fieldMask}else i!==null&&Array.isArray(i)&&i.length>0?n.fieldMask=i.join(","):delete n.fieldMask;return n}f(Xh,"convertBidiSetupToTokenSetup");var Hi=class extends Ee{static{f(this,"Tokens")}constructor(e){super(),this.apiClient=e}async create(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("The client.tokens.create method is only supported by the Gemini Developer API.");{let c=Uh(this.apiClient,e);s=A("auth_tokens",c._url),l=c._query,delete c.config,delete c._url,delete c._query;let d=Xh(c,e.config);return i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(d),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(u=>u.json()),i.then(u=>u)}}};function Yh(n,e){let t={},o=r(n,["force"]);return e!==void 0&&o!=null&&a(e,["_query","force"],o),t}f(Yh,"deleteDocumentConfigToMldev");function zh(n){let e={},t=r(n,["name"]);t!=null&&a(e,["_url","name"],t);let o=r(n,["config"]);return o!=null&&Yh(o,e),e}f(zh,"deleteDocumentParametersToMldev");function Kh(n){let e={},t=r(n,["name"]);return t!=null&&a(e,["_url","name"],t),e}f(Kh,"getDocumentParametersToMldev");function Qh(n,e){let t={},o=r(n,["pageSize"]);e!==void 0&&o!=null&&a(e,["_query","pageSize"],o);let i=r(n,["pageToken"]);return e!==void 0&&i!=null&&a(e,["_query","pageToken"],i),t}f(Qh,"listDocumentsConfigToMldev");function Zh(n){let e={},t=r(n,["parent"]);t!=null&&a(e,["_url","parent"],t);let o=r(n,["config"]);return o!=null&&Qh(o,e),e}f(Zh,"listDocumentsParametersToMldev");function jh(n){let e={},t=r(n,["sdkHttpResponse"]);t!=null&&a(e,["sdkHttpResponse"],t);let o=r(n,["nextPageToken"]);o!=null&&a(e,["nextPageToken"],o);let i=r(n,["documents"]);if(i!=null){let s=i;Array.isArray(s)&&(s=s.map(l=>l)),a(e,["documents"],s)}return e}f(jh,"listDocumentsResponseFromMldev");var Bi=class extends Ee{static{f(this,"Documents")}constructor(e){super(),this.apiClient=e,this.list=async t=>new Ge(xe.PAGED_ITEM_DOCUMENTS,o=>this.listInternal({parent:t.parent,config:o.config}),await this.listInternal(t),t)}async get(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=Kh(e);return s=A("{name}",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>d)}}async delete(e){var t,o;let i="",s={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let l=zh(e);i=A("{name}",l._url),s=l._query,delete l._url,delete l._query,await this.apiClient.request({path:i,queryParams:s,body:JSON.stringify(l),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal})}}async listInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=Zh(e);return s=A("{parent}/documents",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>{let u=jh(d),p=new mi;return Object.assign(p,u),p})}}};var Wi=class extends Ee{static{f(this,"FileSearchStores")}constructor(e,t=new Bi(e)){super(),this.apiClient=e,this.documents=t,this.list=async(o={})=>new Ge(xe.PAGED_ITEM_FILE_SEARCH_STORES,i=>this.listInternal(i),await this.listInternal(o),o)}async uploadToFileSearchStore(e){if(this.apiClient.isVertexAI())throw new Error("Vertex AI does not support uploading files to a file search store.");return this.apiClient.uploadFileToFileSearchStore(e.fileSearchStoreName,e.file,e.config)}async create(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=jp(e);return s=A("fileSearchStores",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>d)}}async get(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=nh(e);return s=A("{name}",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>d)}}async delete(e){var t,o;let i="",s={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let l=th(e);i=A("{name}",l._url),s=l._query,delete l._url,delete l._query,await this.apiClient.request({path:i,queryParams:s,body:JSON.stringify(l),httpMethod:"DELETE",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal})}}async listInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=lh(e);return s=A("fileSearchStores",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>{let u=ch(d),p=new gi;return Object.assign(p,u),p})}}async uploadToFileSearchStoreInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=dh(e);return s=A("upload/v1beta/{file_search_store_name}:uploadToFileSearchStore",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>{let u=uh(d),p=new bi;return Object.assign(p,u),p})}}async importFile(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=rh(e);return s=A("{file_search_store_name}:importFile",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json()),i.then(d=>{let u=ih(d),p=new Ei;return Object.assign(p,u),p})}}};var zl=f(function(){let{crypto:n}=globalThis;if(n?.randomUUID)return zl=n.randomUUID.bind(n),n.randomUUID();let e=new Uint8Array(1),t=n?()=>n.getRandomValues(e)[0]:()=>Math.random()*255&255;return"10000000-1000-4000-8000-100000000000".replace(/[018]/g,o=>(+o^t()&15>>+o/4).toString(16))},"uuid4Internal"),em=f(()=>zl(),"uuid4");function Ji(n){return typeof n=="object"&&n!==null&&("name"in n&&n.name==="AbortError"||"message"in n&&String(n.message).includes("FetchRequestCanceledException"))}f(Ji,"isAbortError");var Xi=f(n=>{if(n instanceof Error)return n;if(typeof n=="object"&&n!==null){try{if(Object.prototype.toString.call(n)==="[object Error]"){let e=new Error(n.message,n.cause?{cause:n.cause}:{});return n.stack&&(e.stack=n.stack),n.cause&&!e.cause&&(e.cause=n.cause),n.name&&(e.name=n.name),e}}catch{}try{return new Error(JSON.stringify(n))}catch{}}return new Error(n)},"castToError");var se=class extends Error{static{f(this,"GeminiNextGenAPIClientError")}},ae=class n extends se{static{f(this,"APIError")}constructor(e,t,o,i){super(`${n.makeMessage(e,t,o)}`),this.status=e,this.headers=i,this.error=t}static makeMessage(e,t,o){let i=t?.message?typeof t.message=="string"?t.message:JSON.stringify(t.message):t?JSON.stringify(t):o;return e&&i?`${e} ${i}`:e?`${e} status code (no body)`:i||"(no status code or body)"}static generate(e,t,o,i){if(!e||!i)return new At({message:o,cause:Xi(t)});let s=t;return e===400?new Xn(e,s,o,i):e===401?new Yn(e,s,o,i):e===403?new zn(e,s,o,i):e===404?new Kn(e,s,o,i):e===409?new Qn(e,s,o,i):e===422?new Zn(e,s,o,i):e===429?new jn(e,s,o,i):e>=500?new eo(e,s,o,i):new n(e,s,o,i)}},Ht=class extends ae{static{f(this,"APIUserAbortError")}constructor({message:e}={}){super(void 0,void 0,e||"Request was aborted.",void 0)}},At=class extends ae{static{f(this,"APIConnectionError")}constructor({message:e,cause:t}){super(void 0,void 0,e||"Connection error.",void 0),t&&(this.cause=t)}},Jn=class extends At{static{f(this,"APIConnectionTimeoutError")}constructor({message:e}={}){super({message:e??"Request timed out."})}},Xn=class extends ae{static{f(this,"BadRequestError")}},Yn=class extends ae{static{f(this,"AuthenticationError")}},zn=class extends ae{static{f(this,"PermissionDeniedError")}},Kn=class extends ae{static{f(this,"NotFoundError")}},Qn=class extends ae{static{f(this,"ConflictError")}},Zn=class extends ae{static{f(this,"UnprocessableEntityError")}},jn=class extends ae{static{f(this,"RateLimitError")}},eo=class extends ae{static{f(this,"InternalServerError")}};var tm=/^[a-z][a-z0-9+.-]*:/i,nm=f(n=>tm.test(n),"isAbsoluteURL"),Yi=f(n=>(Yi=Array.isArray,Yi(n)),"isArrayInternal"),om=Yi,im=om,hl=im;function rm(n){if(!n)return!0;for(let e in n)return!1;return!0}f(rm,"isEmptyObj");function sm(n,e){return Object.prototype.hasOwnProperty.call(n,e)}f(sm,"hasOwn");var am=f((n,e)=>{if(typeof e!="number"||!Number.isInteger(e))throw new se(`${n} must be an integer`);if(e<0)throw new se(`${n} must be a positive integer`);return e},"validatePositiveInteger"),lm=f(n=>{try{return JSON.parse(n)}catch{return}},"safeJSON");var cm=f(n=>new Promise(e=>setTimeout(e,n)),"sleep$1");var It="0.0.1";function dm(){return typeof Deno<"u"&&Deno.build!=null?"deno":typeof EdgeRuntime<"u"?"edge":Object.prototype.toString.call(typeof globalThis.process<"u"?globalThis.process:0)==="[object process]"?"node":"unknown"}f(dm,"getDetectedPlatform");var um=f(()=>{var n,e,t,o,i;let s=dm();if(s==="deno")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":It,"X-Stainless-OS":gl(Deno.build.os),"X-Stainless-Arch":ml(Deno.build.arch),"X-Stainless-Runtime":"deno","X-Stainless-Runtime-Version":typeof Deno.version=="string"?Deno.version:(e=(n=Deno.version)===null||n===void 0?void 0:n.deno)!==null&&e!==void 0?e:"unknown"};if(typeof EdgeRuntime<"u")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":It,"X-Stainless-OS":"Unknown","X-Stainless-Arch":`other:${EdgeRuntime}`,"X-Stainless-Runtime":"edge","X-Stainless-Runtime-Version":globalThis.process.version};if(s==="node")return{"X-Stainless-Lang":"js","X-Stainless-Package-Version":It,"X-Stainless-OS":gl((t=globalThis.process.platform)!==null&&t!==void 0?t:"unknown"),"X-Stainless-Arch":ml((o=globalThis.process.arch)!==null&&o!==void 0?o:"unknown"),"X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":(i=globalThis.process.version)!==null&&i!==void 0?i:"unknown"};let l=fm();return l?{"X-Stainless-Lang":"js","X-Stainless-Package-Version":It,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":`browser:${l.browser}`,"X-Stainless-Runtime-Version":l.version}:{"X-Stainless-Lang":"js","X-Stainless-Package-Version":It,"X-Stainless-OS":"Unknown","X-Stainless-Arch":"unknown","X-Stainless-Runtime":"unknown","X-Stainless-Runtime-Version":"unknown"}},"getPlatformProperties");function fm(){if(typeof navigator>"u"||!navigator)return null;let n=[{key:"edge",pattern:/Edge(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/MSIE(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"ie",pattern:/Trident(?:.*rv\:(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"chrome",pattern:/Chrome(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"firefox",pattern:/Firefox(?:\W+(\d+)\.(\d+)(?:\.(\d+))?)?/},{key:"safari",pattern:/(?:Version\W+(\d+)\.(\d+)(?:\.(\d+))?)?(?:\W+Mobile\S*)?\W+Safari/}];for(let{key:e,pattern:t}of n){let o=t.exec(navigator.userAgent);if(o){let i=o[1]||0,s=o[2]||0,l=o[3]||0;return{browser:e,version:`${i}.${s}.${l}`}}}return null}f(fm,"getBrowserInfo");var ml=f(n=>n==="x32"?"x32":n==="x86_64"||n==="x64"?"x64":n==="arm"?"arm":n==="aarch64"||n==="arm64"?"arm64":n?`other:${n}`:"unknown","normalizeArch"),gl=f(n=>(n=n.toLowerCase(),n.includes("ios")?"iOS":n==="android"?"Android":n==="darwin"?"MacOS":n==="win32"?"Windows":n==="freebsd"?"FreeBSD":n==="openbsd"?"OpenBSD":n==="linux"?"Linux":n?`Other:${n}`:"Unknown"),"normalizePlatform"),_n,pm=f(()=>_n??(_n=um()),"getPlatformHeaders");function hm(){if(typeof fetch<"u")return fetch;throw new Error("`fetch` is not defined as a global; Either pass `fetch` to the client, `new GeminiNextGenAPIClient({ fetch })` or polyfill the global, `globalThis.fetch = fetch`")}f(hm,"getDefaultFetch");function Kl(...n){let e=globalThis.ReadableStream;if(typeof e>"u")throw new Error("`ReadableStream` is not defined as a global; You will need to polyfill it, `globalThis.ReadableStream = ReadableStream`");return new e(...n)}f(Kl,"makeReadableStream");function mm(n){let e=Symbol.asyncIterator in n?n[Symbol.asyncIterator]():n[Symbol.iterator]();return Kl({start(){},async pull(t){let{done:o,value:i}=await e.next();o?t.close():t.enqueue(i)},async cancel(){var t;await((t=e.return)===null||t===void 0?void 0:t.call(e))}})}f(mm,"ReadableStreamFrom");function Ql(n){if(n[Symbol.asyncIterator])return n;let e=n.getReader();return{async next(){try{let t=await e.read();return t?.done&&e.releaseLock(),t}catch(t){throw e.releaseLock(),t}},async return(){let t=e.cancel();return e.releaseLock(),await t,{done:!0,value:void 0}},[Symbol.asyncIterator](){return this}}}f(Ql,"ReadableStreamToAsyncIterable");async function gm(n){var e,t;if(n===null||typeof n!="object")return;if(n[Symbol.asyncIterator]){await((t=(e=n[Symbol.asyncIterator]()).return)===null||t===void 0?void 0:t.call(e));return}let o=n.getReader(),i=o.cancel();o.releaseLock(),await i}f(gm,"CancelReadableStream");var bm=f(({headers:n,body:e})=>({bodyHeaders:{"content-type":"application/json"},body:JSON.stringify(e)}),"FallbackEncoder");var Zl=f(()=>{var n;if(typeof File>"u"){let{process:e}=globalThis,t=typeof((n=e?.versions)===null||n===void 0?void 0:n.node)=="string"&&parseInt(e.versions.node.split("."))<20;throw new Error("`File` is not defined as a global, which is required for file uploads."+(t?" Update to Node 20 LTS or newer, or set `globalThis.File` to `import('node:buffer').File`.":""))}},"checkFileSupport");function ri(n,e,t){return Zl(),new File(n,e??"unknown_file",t)}f(ri,"makeFile");function Em(n){return(typeof n=="object"&&n!==null&&("name"in n&&n.name&&String(n.name)||"url"in n&&n.url&&String(n.url)||"filename"in n&&n.filename&&String(n.filename)||"path"in n&&n.path&&String(n.path))||"").split(/[\\/]/).pop()||void 0}f(Em,"getName");var ym=f(n=>n!=null&&typeof n=="object"&&typeof n[Symbol.asyncIterator]=="function","isAsyncIterable");var jl=f(n=>n!=null&&typeof n=="object"&&typeof n.size=="number"&&typeof n.type=="string"&&typeof n.text=="function"&&typeof n.slice=="function"&&typeof n.arrayBuffer=="function","isBlobLike"),wm=f(n=>n!=null&&typeof n=="object"&&typeof n.name=="string"&&typeof n.lastModified=="number"&&jl(n),"isFileLike"),Im=f(n=>n!=null&&typeof n=="object"&&typeof n.url=="string"&&typeof n.blob=="function","isResponseLike");async function Tm(n,e,t){if(Zl(),n=await n,wm(n))return n instanceof File?n:ri([await n.arrayBuffer()],n.name);if(Im(n)){let i=await n.blob();return e||(e=new URL(n.url).pathname.split(/[\\/]/).pop()),ri(await zi(i),e,t)}let o=await zi(n);if(e||(e=Em(n)),!t?.type){let i=o.find(s=>typeof s=="object"&&"type"in s&&s.type);typeof i=="string"&&(t=Object.assign(Object.assign({},t),{type:i}))}return ri(o,e,t)}f(Tm,"toFile");async function zi(n){var e,t,o,i,s;let l=[];if(typeof n=="string"||ArrayBuffer.isView(n)||n instanceof ArrayBuffer)l.push(n);else if(jl(n))l.push(n instanceof Blob?n:await n.arrayBuffer());else if(ym(n))try{for(var c=!0,d=be(n),u;u=await d.next(),e=u.done,!e;c=!0){i=u.value,c=!1;let p=i;l.push(...await zi(p))}}catch(p){t={error:p}}finally{try{!c&&!e&&(o=d.return)&&await o.call(d)}finally{if(t)throw t.error}}else{let p=(s=n?.constructor)===null||s===void 0?void 0:s.name;throw new Error(`Unexpected data type: ${typeof n}${p?`; constructor: ${p}`:""}${_m(n)}`)}return l}f(zi,"getBytes");function _m(n){return typeof n!="object"||n===null?"":`; props: [${Object.getOwnPropertyNames(n).map(t=>`"${t}"`).join(", ")}]`}f(_m,"propsForError");var to=class{static{f(this,"APIResource")}constructor(e){this._client=e}};to._key=[];function ec(n){return n.replace(/[^A-Za-z0-9\-._~!$&'()*+,;=:@]+/g,encodeURIComponent)}f(ec,"encodeURIPath");var bl=Object.freeze(Object.create(null)),Cm=f((n=ec)=>f(function(t,...o){if(t.length===1)return t[0];let i=!1,s=[],l=t.reduce((p,h,m)=>{var g,b,y;/[?#]/.test(h)&&(i=!0);let w=o[m],I=(i?encodeURIComponent:n)(""+w);return m!==o.length&&(w==null||typeof w=="object"&&w.toString===((y=Object.getPrototypeOf((b=Object.getPrototypeOf((g=w.hasOwnProperty)!==null&&g!==void 0?g:bl))!==null&&b!==void 0?b:bl))===null||y===void 0?void 0:y.toString))&&(I=w+"",s.push({start:p.length+h.length,length:I.length,error:`Value of type ${Object.prototype.toString.call(w).slice(8,-1)} is not a valid path parameter`})),p+h+(m===o.length?"":I)},""),c=l.split(/[?#]/,1)[0],d=/(?<=^|\/)(?:\.|%2e){1,2}(?=\/|$)/gi,u;for(;(u=d.exec(c))!==null;)s.push({start:u.index,length:u[0].length,error:`Value "${u[0]}" can't be safely passed as a path parameter`});if(s.sort((p,h)=>p.start-h.start),s.length>0){let p=0,h=s.reduce((m,g)=>{let b=" ".repeat(g.start-p),y="^".repeat(g.length);return p=g.start+g.length,m+b+y},"");throw new se(`Path parameters result in path with invalid segments:
|
|
178
|
+
${s.map(m=>m.error).join(`
|
|
179
|
+
`)}
|
|
180
|
+
${l}
|
|
181
|
+
${h}`)}return l},"path"),"createPathTagFunction"),Cn=Cm(ec);var no=class extends to{static{f(this,"BaseInteractions")}create(e,t){var o;let{api_version:i=this._client.apiVersion}=e,s=Bn(e,["api_version"]);if("model"in s&&"agent_config"in s)throw new se("Invalid request: specified `model` and `agent_config`. If specifying `model`, use `generation_config`.");if("agent"in s&&"generation_config"in s)throw new se("Invalid request: specified `agent` and `generation_config`. If specifying `agent`, use `agent_config`.");return this._client.post(Cn`/${i}/interactions`,Object.assign(Object.assign({body:s},t),{stream:(o=e.stream)!==null&&o!==void 0?o:!1}))}delete(e,t={},o){let{api_version:i=this._client.apiVersion}=t??{};return this._client.delete(Cn`/${i}/interactions/${e}`,o)}cancel(e,t={},o){let{api_version:i=this._client.apiVersion}=t??{};return this._client.post(Cn`/${i}/interactions/${e}/cancel`,o)}get(e,t={},o){var i;let s=t??{},{api_version:l=this._client.apiVersion}=s,c=Bn(s,["api_version"]);return this._client.get(Cn`/${l}/interactions/${e}`,Object.assign(Object.assign({query:c},o),{stream:(i=t?.stream)!==null&&i!==void 0?i:!1}))}};no._key=Object.freeze(["interactions"]);var oo=class extends no{static{f(this,"Interactions")}};function Am(n){let e=0;for(let i of n)e+=i.length;let t=new Uint8Array(e),o=0;for(let i of n)t.set(i,o),o+=i.length;return t}f(Am,"concatBytes");var An;function ur(n){let e;return(An??(e=new globalThis.TextEncoder,An=e.encode.bind(e)))(n)}f(ur,"encodeUTF8");var Sn;function El(n){let e;return(Sn??(e=new globalThis.TextDecoder,Sn=e.decode.bind(e)))(n)}f(El,"decodeUTF8");var St=class{static{f(this,"LineDecoder")}constructor(){this.buffer=new Uint8Array,this.carriageReturnIndex=null}decode(e){if(e==null)return[];let t=e instanceof ArrayBuffer?new Uint8Array(e):typeof e=="string"?ur(e):e;this.buffer=Am([this.buffer,t]);let o=[],i;for(;(i=Sm(this.buffer,this.carriageReturnIndex))!=null;){if(i.carriage&&this.carriageReturnIndex==null){this.carriageReturnIndex=i.index;continue}if(this.carriageReturnIndex!=null&&(i.index!==this.carriageReturnIndex+1||i.carriage)){o.push(El(this.buffer.subarray(0,this.carriageReturnIndex-1))),this.buffer=this.buffer.subarray(this.carriageReturnIndex),this.carriageReturnIndex=null;continue}let s=this.carriageReturnIndex!==null?i.preceding-1:i.preceding,l=El(this.buffer.subarray(0,s));o.push(l),this.buffer=this.buffer.subarray(i.index),this.carriageReturnIndex=null}return o}flush(){return this.buffer.length?this.decode(`
|
|
182
|
+
`):[]}};St.NEWLINE_CHARS=new Set([`
|
|
183
|
+
`,"\r"]);St.NEWLINE_REGEXP=/\r\n|[\n\r]/g;function Sm(n,e){for(let i=e??0;i<n.length;i++){if(n[i]===10)return{preceding:i,index:i+1,carriage:!1};if(n[i]===13)return{preceding:i,index:i+1,carriage:!0}}return null}f(Sm,"findNewlineIndex");function vm(n){for(let o=0;o<n.length-1;o++){if(n[o]===10&&n[o+1]===10||n[o]===13&&n[o+1]===13)return o+2;if(n[o]===13&&n[o+1]===10&&o+3<n.length&&n[o+2]===13&&n[o+3]===10)return o+4}return-1}f(vm,"findDoubleNewlineIndex");var io={off:0,error:200,warn:300,info:400,debug:500},yl=f((n,e,t)=>{if(n){if(sm(io,n))return n;oe(t).warn(`${e} was set to ${JSON.stringify(n)}, expected one of ${JSON.stringify(Object.keys(io))}`)}},"parseLogLevel");function qt(){}f(qt,"noop");function vn(n,e,t){return!e||io[n]>io[t]?qt:e[n].bind(e)}f(vn,"makeLogFn");var $m={error:qt,warn:qt,info:qt,debug:qt},wl=new WeakMap;function oe(n){var e;let t=n.logger,o=(e=n.logLevel)!==null&&e!==void 0?e:"off";if(!t)return $m;let i=wl.get(t);if(i&&i[0]===o)return i[1];let s={error:vn("error",t,o),warn:vn("warn",t,o),info:vn("info",t,o),debug:vn("debug",t,o)};return wl.set(t,[o,s]),s}f(oe,"loggerFor");var ct=f(n=>(n.options&&(n.options=Object.assign({},n.options),delete n.options.headers),n.headers&&(n.headers=Object.fromEntries((n.headers instanceof Headers?[...n.headers]:Object.entries(n.headers)).map(([e,t])=>[e,e.toLowerCase()==="x-goog-api-key"||e.toLowerCase()==="authorization"||e.toLowerCase()==="cookie"||e.toLowerCase()==="set-cookie"?"***":t]))),"retryOfRequestLogID"in n&&(n.retryOfRequestLogID&&(n.retryOf=n.retryOfRequestLogID),delete n.retryOfRequestLogID),n),"formatRequestDetails");var Ki=class n{static{f(this,"Stream")}constructor(e,t,o){this.iterator=e,this.controller=t,this.client=o}static fromSSEResponse(e,t,o){let i=!1,s=o?oe(o):console;function l(){return ge(this,arguments,f(function*(){var d,u,p,h;if(i)throw new se("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");i=!0;let m=!1;try{try{for(var g=!0,b=be(Nm(e,t)),y;y=yield R(b.next()),d=y.done,!d;g=!0){h=y.value,g=!1;let w=h;if(!m)if(w.data.startsWith("[DONE]")){m=!0;continue}else try{yield yield R(JSON.parse(w.data))}catch(I){throw s.error("Could not parse message into JSON:",w.data),s.error("From chunk:",w.raw),I}}}catch(w){u={error:w}}finally{try{!g&&!d&&(p=b.return)&&(yield R(p.call(b)))}finally{if(u)throw u.error}}m=!0}catch(w){if(Ji(w))return yield R(void 0);throw w}finally{m||t.abort()}},"iterator_1"))}return f(l,"iterator"),new n(l,t,o)}static fromReadableStream(e,t,o){let i=!1;function s(){return ge(this,arguments,f(function*(){var d,u,p,h;let m=new St,g=Ql(e);try{for(var b=!0,y=be(g),w;w=yield R(y.next()),d=w.done,!d;b=!0){h=w.value,b=!1;let I=h;for(let T of m.decode(I))yield yield R(T)}}catch(I){u={error:I}}finally{try{!b&&!d&&(p=y.return)&&(yield R(p.call(y)))}finally{if(u)throw u.error}}for(let I of m.flush())yield yield R(I)},"iterLines_1"))}f(s,"iterLines");function l(){return ge(this,arguments,f(function*(){var d,u,p,h;if(i)throw new se("Cannot iterate over a consumed stream, use `.tee()` to split the stream.");i=!0;let m=!1;try{try{for(var g=!0,b=be(s()),y;y=yield R(b.next()),d=y.done,!d;g=!0){h=y.value,g=!1;let w=h;m||w&&(yield yield R(JSON.parse(w)))}}catch(w){u={error:w}}finally{try{!g&&!d&&(p=b.return)&&(yield R(p.call(b)))}finally{if(u)throw u.error}}m=!0}catch(w){if(Ji(w))return yield R(void 0);throw w}finally{m||t.abort()}},"iterator_2"))}return f(l,"iterator"),new n(l,t,o)}[Symbol.asyncIterator](){return this.iterator()}tee(){let e=[],t=[],o=this.iterator(),i=f(s=>({next:f(()=>{if(s.length===0){let l=o.next();e.push(l),t.push(l)}return s.shift()},"next")}),"teeIterator");return[new n(()=>i(e),this.controller,this.client),new n(()=>i(t),this.controller,this.client)]}toReadableStream(){let e=this,t;return Kl({async start(){t=e[Symbol.asyncIterator]()},async pull(o){try{let{value:i,done:s}=await t.next();if(s)return o.close();let l=ur(JSON.stringify(i)+`
|
|
184
|
+
`);o.enqueue(l)}catch(i){o.error(i)}},async cancel(){var o;await((o=t.return)===null||o===void 0?void 0:o.call(t))}})}};function Nm(n,e){return ge(this,arguments,f(function*(){var o,i,s,l;if(!n.body)throw e.abort(),typeof globalThis.navigator<"u"&&globalThis.navigator.product==="ReactNative"?new se("The default react-native fetch implementation does not support streaming. Please use expo/fetch: https://docs.expo.dev/versions/latest/sdk/expo/#expofetch-api"):new se("Attempted to iterate over a response with no body");let c=new Qi,d=new St,u=Ql(n.body);try{for(var p=!0,h=be(Pm(u)),m;m=yield R(h.next()),o=m.done,!o;p=!0){l=m.value,p=!1;let g=l;for(let b of d.decode(g)){let y=c.decode(b);y&&(yield yield R(y))}}}catch(g){i={error:g}}finally{try{!p&&!o&&(s=h.return)&&(yield R(s.call(h)))}finally{if(i)throw i.error}}for(let g of d.flush()){let b=c.decode(g);b&&(yield yield R(b))}},"_iterSSEMessages_1"))}f(Nm,"_iterSSEMessages");function Pm(n){return ge(this,arguments,f(function*(){var t,o,i,s;let l=new Uint8Array;try{for(var c=!0,d=be(n),u;u=yield R(d.next()),t=u.done,!t;c=!0){s=u.value,c=!1;let p=s;if(p==null)continue;let h=p instanceof ArrayBuffer?new Uint8Array(p):typeof p=="string"?ur(p):p,m=new Uint8Array(l.length+h.length);m.set(l),m.set(h,l.length),l=m;let g;for(;(g=vm(l))!==-1;)yield yield R(l.slice(0,g)),l=l.slice(g)}}catch(p){o={error:p}}finally{try{!c&&!t&&(i=d.return)&&(yield R(i.call(d)))}finally{if(o)throw o.error}}l.length>0&&(yield yield R(l))},"iterSSEChunks_1"))}f(Pm,"iterSSEChunks");var Qi=class{static{f(this,"SSEDecoder")}constructor(){this.event=null,this.data=[],this.chunks=[]}decode(e){if(e.endsWith("\r")&&(e=e.substring(0,e.length-1)),!e){if(!this.event&&!this.data.length)return null;let s={event:this.event,data:this.data.join(`
|
|
185
|
+
`),raw:this.chunks};return this.event=null,this.data=[],this.chunks=[],s}if(this.chunks.push(e),e.startsWith(":"))return null;let[t,o,i]=Rm(e,":");return i.startsWith(" ")&&(i=i.substring(1)),t==="event"?this.event=i:t==="data"&&this.data.push(i),null}};function Rm(n,e){let t=n.indexOf(e);return t!==-1?[n.substring(0,t),e,n.substring(t+e.length)]:[n,"",""]}f(Rm,"partition");async function xm(n,e){let{response:t,requestLogID:o,retryOfRequestLogID:i,startTime:s}=e,l=await(async()=>{var c;if(e.options.stream)return oe(n).debug("response",t.status,t.url,t.headers,t.body),e.options.__streamClass?e.options.__streamClass.fromSSEResponse(t,e.controller,n):Ki.fromSSEResponse(t,e.controller,n);if(t.status===204)return null;if(e.options.__binaryResponse)return t;let d=t.headers.get("content-type"),u=(c=d?.split(";")[0])===null||c===void 0?void 0:c.trim();return u?.includes("application/json")||u?.endsWith("+json")?await t.json():await t.text()})();return oe(n).debug(`[${o}] response parsed`,ct({retryOfRequestLogID:i,url:t.url,status:t.status,body:l,durationMs:Date.now()-s})),l}f(xm,"defaultParseResponse");var Zi=class n extends Promise{static{f(this,"APIPromise")}constructor(e,t,o=xm){super(i=>{i(null)}),this.responsePromise=t,this.parseResponse=o,this.client=e}_thenUnwrap(e){return new n(this.client,this.responsePromise,async(t,o)=>e(await this.parseResponse(t,o),o))}asResponse(){return this.responsePromise.then(e=>e.response)}async withResponse(){let[e,t]=await Promise.all([this.parse(),this.asResponse()]);return{data:e,response:t}}parse(){return this.parsedPromise||(this.parsedPromise=this.responsePromise.then(e=>this.parseResponse(this.client,e))),this.parsedPromise}then(e,t){return this.parse().then(e,t)}catch(e){return this.parse().catch(e)}finally(e){return this.parse().finally(e)}};var tc=Symbol("brand.privateNullableHeaders");function*Gm(n){if(!n)return;if(tc in n){let{values:o,nulls:i}=n;yield*o.entries();for(let s of i)yield[s,null];return}let e=!1,t;n instanceof Headers?t=n.entries():hl(n)?t=n:(e=!0,t=Object.entries(n??{}));for(let o of t){let i=o[0];if(typeof i!="string")throw new TypeError("expected header name to be a string");let s=hl(o[1])?o[1]:[o[1]],l=!1;for(let c of s)c!==void 0&&(e&&!l&&(l=!0,yield[i,null]),yield[i,c])}}f(Gm,"iterateHeaders");var si=f(n=>{let e=new Headers,t=new Set;for(let o of n){let i=new Set;for(let[s,l]of Gm(o)){let c=s.toLowerCase();i.has(c)||(e.delete(s),i.add(c)),l===null?(e.delete(s),t.add(c)):(e.append(s,l),t.delete(c))}}return{[tc]:!0,values:e,nulls:t}},"buildHeaders");var ai=f(n=>{var e,t,o,i,s,l;if(typeof globalThis.process<"u")return(o=(t=(e=globalThis.process.env)===null||e===void 0?void 0:e[n])===null||t===void 0?void 0:t.trim())!==null&&o!==void 0?o:void 0;if(typeof globalThis.Deno<"u")return(l=(s=(i=globalThis.Deno.env)===null||i===void 0?void 0:i.get)===null||s===void 0?void 0:s.call(i,n))===null||l===void 0?void 0:l.trim()},"readEnv");var nc,ro=class n{static{f(this,"BaseGeminiNextGenAPIClient")}constructor(e){var t,o,i,s,l,c,d,u=e===void 0?{}:e,{baseURL:p=ai("GEMINI_NEXT_GEN_API_BASE_URL"),apiKey:h=(t=ai("GEMINI_API_KEY"))!==null&&t!==void 0?t:null,apiVersion:m="v1beta"}=u,g=Bn(u,["baseURL","apiKey","apiVersion"]);let b=Object.assign(Object.assign({apiKey:h,apiVersion:m},g),{baseURL:p||"https://generativelanguage.googleapis.com"});this.baseURL=b.baseURL,this.timeout=(o=b.timeout)!==null&&o!==void 0?o:n.DEFAULT_TIMEOUT,this.logger=(i=b.logger)!==null&&i!==void 0?i:console;let y="warn";this.logLevel=y,this.logLevel=(l=(s=yl(b.logLevel,"ClientOptions.logLevel",this))!==null&&s!==void 0?s:yl(ai("GEMINI_NEXT_GEN_API_LOG"),"process.env['GEMINI_NEXT_GEN_API_LOG']",this))!==null&&l!==void 0?l:y,this.fetchOptions=b.fetchOptions,this.maxRetries=(c=b.maxRetries)!==null&&c!==void 0?c:2,this.fetch=(d=b.fetch)!==null&&d!==void 0?d:hm(),this.encoder=bm,this._options=b,this.apiKey=h,this.apiVersion=m}withOptions(e){return new this.constructor(Object.assign(Object.assign(Object.assign({},this._options),{baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:this.apiKey,apiVersion:this.apiVersion}),e))}baseURLOverridden(){return this.baseURL!=="https://generativelanguage.googleapis.com"}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:e,nulls:t}){if(!(this.apiKey&&e.get("x-goog-api-key"))&&!t.has("x-goog-api-key"))throw new Error('Could not resolve authentication method. Expected the apiKey to be set. Or for the "x-goog-api-key" headers to be explicitly omitted')}async authHeaders(e){if(this.apiKey!=null)return si([{"x-goog-api-key":this.apiKey}])}stringifyQuery(e){return Object.entries(e).filter(([t,o])=>typeof o<"u").map(([t,o])=>{if(typeof o=="string"||typeof o=="number"||typeof o=="boolean")return`${encodeURIComponent(t)}=${encodeURIComponent(o)}`;if(o===null)return`${encodeURIComponent(t)}=`;throw new se(`Cannot stringify type ${typeof o}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`)}).join("&")}getUserAgent(){return`${this.constructor.name}/JS ${It}`}defaultIdempotencyKey(){return`stainless-node-retry-${em()}`}makeStatusError(e,t,o,i){return ae.generate(e,t,o,i)}buildURL(e,t,o){let i=!this.baseURLOverridden()&&o||this.baseURL,s=nm(e)?new URL(e):new URL(i+(i.endsWith("/")&&e.startsWith("/")?e.slice(1):e)),l=this.defaultQuery();return rm(l)||(t=Object.assign(Object.assign({},l),t)),typeof t=="object"&&t&&!Array.isArray(t)&&(s.search=this.stringifyQuery(t)),s.toString()}async prepareOptions(e){}async prepareRequest(e,{url:t,options:o}){}get(e,t){return this.methodRequest("get",e,t)}post(e,t){return this.methodRequest("post",e,t)}patch(e,t){return this.methodRequest("patch",e,t)}put(e,t){return this.methodRequest("put",e,t)}delete(e,t){return this.methodRequest("delete",e,t)}methodRequest(e,t,o){return this.request(Promise.resolve(o).then(i=>Object.assign({method:e,path:t},i)))}request(e,t=null){return new Zi(this,this.makeRequest(e,t,void 0))}async makeRequest(e,t,o){var i,s,l;let c=await e,d=(i=c.maxRetries)!==null&&i!==void 0?i:this.maxRetries;t==null&&(t=d),await this.prepareOptions(c);let{req:u,url:p,timeout:h}=await this.buildRequest(c,{retryCount:d-t});await this.prepareRequest(u,{url:p,options:c});let m="log_"+(Math.random()*(1<<24)|0).toString(16).padStart(6,"0"),g=o===void 0?"":`, retryOf: ${o}`,b=Date.now();if(oe(this).debug(`[${m}] sending request`,ct({retryOfRequestLogID:o,method:c.method,url:p,options:c,headers:u.headers})),!((s=c.signal)===null||s===void 0)&&s.aborted)throw new Ht;let y=new AbortController,w=await this.fetchWithTimeout(p,u,h,y).catch(Xi),I=Date.now();if(w instanceof globalThis.Error){let _=`retrying, ${t} attempts remaining`;if(!((l=c.signal)===null||l===void 0)&&l.aborted)throw new Ht;let C=Ji(w)||/timed? ?out/i.test(String(w)+("cause"in w?String(w.cause):""));if(t)return oe(this).info(`[${m}] connection ${C?"timed out":"failed"} - ${_}`),oe(this).debug(`[${m}] connection ${C?"timed out":"failed"} (${_})`,ct({retryOfRequestLogID:o,url:p,durationMs:I-b,message:w.message})),this.retryRequest(c,t,o??m);throw oe(this).info(`[${m}] connection ${C?"timed out":"failed"} - error; no more retries left`),oe(this).debug(`[${m}] connection ${C?"timed out":"failed"} (error; no more retries left)`,ct({retryOfRequestLogID:o,url:p,durationMs:I-b,message:w.message})),C?new Jn:new At({cause:w})}let T=`[${m}${g}] ${u.method} ${p} ${w.ok?"succeeded":"failed"} with status ${w.status} in ${I-b}ms`;if(!w.ok){let _=await this.shouldRetry(w);if(t&&_){let $=`retrying, ${t} attempts remaining`;return await gm(w.body),oe(this).info(`${T} - ${$}`),oe(this).debug(`[${m}] response error (${$})`,ct({retryOfRequestLogID:o,url:w.url,status:w.status,headers:w.headers,durationMs:I-b})),this.retryRequest(c,t,o??m,w.headers)}let C=_?"error; no more retries left":"error; not retryable";oe(this).info(`${T} - ${C}`);let v=await w.text().catch($=>Xi($).message),P=lm(v),N=P?void 0:v;throw oe(this).debug(`[${m}] response error (${C})`,ct({retryOfRequestLogID:o,url:w.url,status:w.status,headers:w.headers,message:N,durationMs:Date.now()-b})),this.makeStatusError(w.status,P,N,w.headers)}return oe(this).info(T),oe(this).debug(`[${m}] response start`,ct({retryOfRequestLogID:o,url:w.url,status:w.status,headers:w.headers,durationMs:I-b})),{response:w,options:c,controller:y,requestLogID:m,retryOfRequestLogID:o,startTime:b}}async fetchWithTimeout(e,t,o,i){let s=t||{},{signal:l,method:c}=s,d=Bn(s,["signal","method"]);l&&l.addEventListener("abort",()=>i.abort());let u=setTimeout(()=>i.abort(),o),p=globalThis.ReadableStream&&d.body instanceof globalThis.ReadableStream||typeof d.body=="object"&&d.body!==null&&Symbol.asyncIterator in d.body,h=Object.assign(Object.assign(Object.assign({signal:i.signal},p?{duplex:"half"}:{}),{method:"GET"}),d);c&&(h.method=c.toUpperCase());try{return await this.fetch.call(void 0,e,h)}finally{clearTimeout(u)}}async shouldRetry(e){let t=e.headers.get("x-should-retry");return t==="true"?!0:t==="false"?!1:e.status===408||e.status===409||e.status===429||e.status>=500}async retryRequest(e,t,o,i){var s;let l,c=i?.get("retry-after-ms");if(c){let u=parseFloat(c);Number.isNaN(u)||(l=u)}let d=i?.get("retry-after");if(d&&!l){let u=parseFloat(d);Number.isNaN(u)?l=Date.parse(d)-Date.now():l=u*1e3}if(!(l&&0<=l&&l<60*1e3)){let u=(s=e.maxRetries)!==null&&s!==void 0?s:this.maxRetries;l=this.calculateDefaultRetryTimeoutMillis(t,u)}return await cm(l),this.makeRequest(e,t-1,o)}calculateDefaultRetryTimeoutMillis(e,t){let s=t-e,l=Math.min(.5*Math.pow(2,s),8),c=1-Math.random()*.25;return l*c*1e3}async buildRequest(e,{retryCount:t=0}={}){var o,i,s;let l=Object.assign({},e),{method:c,path:d,query:u,defaultBaseURL:p}=l,h=this.buildURL(d,u,p);"timeout"in l&&am("timeout",l.timeout),l.timeout=(o=l.timeout)!==null&&o!==void 0?o:this.timeout;let{bodyHeaders:m,body:g}=this.buildBody({options:l}),b=await this.buildHeaders({options:e,method:c,bodyHeaders:m,retryCount:t});return{req:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({method:c,headers:b},l.signal&&{signal:l.signal}),globalThis.ReadableStream&&g instanceof globalThis.ReadableStream&&{duplex:"half"}),g&&{body:g}),(i=this.fetchOptions)!==null&&i!==void 0?i:{}),(s=l.fetchOptions)!==null&&s!==void 0?s:{}),url:h,timeout:l.timeout}}async buildHeaders({options:e,method:t,bodyHeaders:o,retryCount:i}){let s={};this.idempotencyHeader&&t!=="get"&&(e.idempotencyKey||(e.idempotencyKey=this.defaultIdempotencyKey()),s[this.idempotencyHeader]=e.idempotencyKey);let l=si([s,Object.assign(Object.assign({Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(i)},e.timeout?{"X-Stainless-Timeout":String(Math.trunc(e.timeout/1e3))}:{}),pm()),await this.authHeaders(e),this._options.defaultHeaders,o,e.headers]);return this.validateHeaders(l),l.values}buildBody({options:{body:e,headers:t}}){if(!e)return{bodyHeaders:void 0,body:void 0};let o=si([t]);return ArrayBuffer.isView(e)||e instanceof ArrayBuffer||e instanceof DataView||typeof e=="string"&&o.values.has("content-type")||globalThis.Blob&&e instanceof globalThis.Blob||e instanceof FormData||e instanceof URLSearchParams||globalThis.ReadableStream&&e instanceof globalThis.ReadableStream?{bodyHeaders:void 0,body:e}:typeof e=="object"&&(Symbol.asyncIterator in e||Symbol.iterator in e&&"next"in e&&typeof e.next=="function")?{bodyHeaders:void 0,body:mm(e)}:this.encoder({body:e,headers:o})}};ro.DEFAULT_TIMEOUT=6e4;var Q=class extends ro{static{f(this,"GeminiNextGenAPIClient")}constructor(){super(...arguments),this.interactions=new oo(this)}};nc=Q;Q.GeminiNextGenAPIClient=nc;Q.GeminiNextGenAPIClientError=se;Q.APIError=ae;Q.APIConnectionError=At;Q.APIConnectionTimeoutError=Jn;Q.APIUserAbortError=Ht;Q.NotFoundError=Kn;Q.ConflictError=Qn;Q.RateLimitError=jn;Q.BadRequestError=Xn;Q.AuthenticationError=Yn;Q.InternalServerError=eo;Q.PermissionDeniedError=zn;Q.UnprocessableEntityError=Zn;Q.toFile=Tm;Q.Interactions=oo;function Mm(n,e){let t={},o=r(n,["name"]);return o!=null&&a(t,["_url","name"],o),t}f(Mm,"cancelTuningJobParametersToMldev");function Dm(n,e){let t={},o=r(n,["name"]);return o!=null&&a(t,["_url","name"],o),t}f(Dm,"cancelTuningJobParametersToVertex");function Um(n,e){let t={},o=r(n,["sdkHttpResponse"]);return o!=null&&a(t,["sdkHttpResponse"],o),t}f(Um,"cancelTuningJobResponseFromMldev");function Lm(n,e){let t={},o=r(n,["sdkHttpResponse"]);return o!=null&&a(t,["sdkHttpResponse"],o),t}f(Lm,"cancelTuningJobResponseFromVertex");function Fm(n,e,t){let o={};if(r(n,["validationDataset"])!==void 0)throw new Error("validationDataset parameter is not supported in Gemini API.");let i=r(n,["tunedModelDisplayName"]);if(e!==void 0&&i!=null&&a(e,["displayName"],i),r(n,["description"])!==void 0)throw new Error("description parameter is not supported in Gemini API.");let s=r(n,["epochCount"]);e!==void 0&&s!=null&&a(e,["tuningTask","hyperparameters","epochCount"],s);let l=r(n,["learningRateMultiplier"]);if(l!=null&&a(o,["tuningTask","hyperparameters","learningRateMultiplier"],l),r(n,["exportLastCheckpointOnly"])!==void 0)throw new Error("exportLastCheckpointOnly parameter is not supported in Gemini API.");if(r(n,["preTunedModelCheckpointId"])!==void 0)throw new Error("preTunedModelCheckpointId parameter is not supported in Gemini API.");if(r(n,["adapterSize"])!==void 0)throw new Error("adapterSize parameter is not supported in Gemini API.");let c=r(n,["batchSize"]);e!==void 0&&c!=null&&a(e,["tuningTask","hyperparameters","batchSize"],c);let d=r(n,["learningRate"]);if(e!==void 0&&d!=null&&a(e,["tuningTask","hyperparameters","learningRate"],d),r(n,["labels"])!==void 0)throw new Error("labels parameter is not supported in Gemini API.");if(r(n,["beta"])!==void 0)throw new Error("beta parameter is not supported in Gemini API.");return o}f(Fm,"createTuningJobConfigToMldev");function km(n,e,t){let o={},i=r(t,["config","method"]);if(i===void 0&&(i="SUPERVISED_FINE_TUNING"),i==="SUPERVISED_FINE_TUNING"){let g=r(n,["validationDataset"]);e!==void 0&&g!=null&&a(e,["supervisedTuningSpec"],Il(g))}else if(i==="PREFERENCE_TUNING"){let g=r(n,["validationDataset"]);e!==void 0&&g!=null&&a(e,["preferenceOptimizationSpec"],Il(g))}let s=r(n,["tunedModelDisplayName"]);e!==void 0&&s!=null&&a(e,["tunedModelDisplayName"],s);let l=r(n,["description"]);e!==void 0&&l!=null&&a(e,["description"],l);let c=r(t,["config","method"]);if(c===void 0&&(c="SUPERVISED_FINE_TUNING"),c==="SUPERVISED_FINE_TUNING"){let g=r(n,["epochCount"]);e!==void 0&&g!=null&&a(e,["supervisedTuningSpec","hyperParameters","epochCount"],g)}else if(c==="PREFERENCE_TUNING"){let g=r(n,["epochCount"]);e!==void 0&&g!=null&&a(e,["preferenceOptimizationSpec","hyperParameters","epochCount"],g)}let d=r(t,["config","method"]);if(d===void 0&&(d="SUPERVISED_FINE_TUNING"),d==="SUPERVISED_FINE_TUNING"){let g=r(n,["learningRateMultiplier"]);e!==void 0&&g!=null&&a(e,["supervisedTuningSpec","hyperParameters","learningRateMultiplier"],g)}else if(d==="PREFERENCE_TUNING"){let g=r(n,["learningRateMultiplier"]);e!==void 0&&g!=null&&a(e,["preferenceOptimizationSpec","hyperParameters","learningRateMultiplier"],g)}let u=r(t,["config","method"]);if(u===void 0&&(u="SUPERVISED_FINE_TUNING"),u==="SUPERVISED_FINE_TUNING"){let g=r(n,["exportLastCheckpointOnly"]);e!==void 0&&g!=null&&a(e,["supervisedTuningSpec","exportLastCheckpointOnly"],g)}else if(u==="PREFERENCE_TUNING"){let g=r(n,["exportLastCheckpointOnly"]);e!==void 0&&g!=null&&a(e,["preferenceOptimizationSpec","exportLastCheckpointOnly"],g)}let p=r(t,["config","method"]);if(p===void 0&&(p="SUPERVISED_FINE_TUNING"),p==="SUPERVISED_FINE_TUNING"){let g=r(n,["adapterSize"]);e!==void 0&&g!=null&&a(e,["supervisedTuningSpec","hyperParameters","adapterSize"],g)}else if(p==="PREFERENCE_TUNING"){let g=r(n,["adapterSize"]);e!==void 0&&g!=null&&a(e,["preferenceOptimizationSpec","hyperParameters","adapterSize"],g)}if(r(n,["batchSize"])!==void 0)throw new Error("batchSize parameter is not supported in Vertex AI.");if(r(n,["learningRate"])!==void 0)throw new Error("learningRate parameter is not supported in Vertex AI.");let h=r(n,["labels"]);e!==void 0&&h!=null&&a(e,["labels"],h);let m=r(n,["beta"]);return e!==void 0&&m!=null&&a(e,["preferenceOptimizationSpec","hyperParameters","beta"],m),o}f(km,"createTuningJobConfigToVertex");function Vm(n,e){let t={},o=r(n,["baseModel"]);o!=null&&a(t,["baseModel"],o);let i=r(n,["preTunedModel"]);i!=null&&a(t,["preTunedModel"],i);let s=r(n,["trainingDataset"]);s!=null&&Qm(s);let l=r(n,["config"]);return l!=null&&Fm(l,t),t}f(Vm,"createTuningJobParametersPrivateToMldev");function qm(n,e){let t={},o=r(n,["baseModel"]);o!=null&&a(t,["baseModel"],o);let i=r(n,["preTunedModel"]);i!=null&&a(t,["preTunedModel"],i);let s=r(n,["trainingDataset"]);s!=null&&Zm(s,t,e);let l=r(n,["config"]);return l!=null&&km(l,t,e),t}f(qm,"createTuningJobParametersPrivateToVertex");function Om(n,e){let t={},o=r(n,["name"]);return o!=null&&a(t,["_url","name"],o),t}f(Om,"getTuningJobParametersToMldev");function Hm(n,e){let t={},o=r(n,["name"]);return o!=null&&a(t,["_url","name"],o),t}f(Hm,"getTuningJobParametersToVertex");function Bm(n,e,t){let o={},i=r(n,["pageSize"]);e!==void 0&&i!=null&&a(e,["_query","pageSize"],i);let s=r(n,["pageToken"]);e!==void 0&&s!=null&&a(e,["_query","pageToken"],s);let l=r(n,["filter"]);return e!==void 0&&l!=null&&a(e,["_query","filter"],l),o}f(Bm,"listTuningJobsConfigToMldev");function Wm(n,e,t){let o={},i=r(n,["pageSize"]);e!==void 0&&i!=null&&a(e,["_query","pageSize"],i);let s=r(n,["pageToken"]);e!==void 0&&s!=null&&a(e,["_query","pageToken"],s);let l=r(n,["filter"]);return e!==void 0&&l!=null&&a(e,["_query","filter"],l),o}f(Wm,"listTuningJobsConfigToVertex");function Jm(n,e){let t={},o=r(n,["config"]);return o!=null&&Bm(o,t),t}f(Jm,"listTuningJobsParametersToMldev");function Xm(n,e){let t={},o=r(n,["config"]);return o!=null&&Wm(o,t),t}f(Xm,"listTuningJobsParametersToVertex");function Ym(n,e){let t={},o=r(n,["sdkHttpResponse"]);o!=null&&a(t,["sdkHttpResponse"],o);let i=r(n,["nextPageToken"]);i!=null&&a(t,["nextPageToken"],i);let s=r(n,["tunedModels"]);if(s!=null){let l=s;Array.isArray(l)&&(l=l.map(c=>oc(c))),a(t,["tuningJobs"],l)}return t}f(Ym,"listTuningJobsResponseFromMldev");function zm(n,e){let t={},o=r(n,["sdkHttpResponse"]);o!=null&&a(t,["sdkHttpResponse"],o);let i=r(n,["nextPageToken"]);i!=null&&a(t,["nextPageToken"],i);let s=r(n,["tuningJobs"]);if(s!=null){let l=s;Array.isArray(l)&&(l=l.map(c=>ji(c))),a(t,["tuningJobs"],l)}return t}f(zm,"listTuningJobsResponseFromVertex");function Km(n,e){let t={},o=r(n,["name"]);o!=null&&a(t,["model"],o);let i=r(n,["name"]);return i!=null&&a(t,["endpoint"],i),t}f(Km,"tunedModelFromMldev");function Qm(n,e){let t={};if(r(n,["gcsUri"])!==void 0)throw new Error("gcsUri parameter is not supported in Gemini API.");if(r(n,["vertexDatasetResource"])!==void 0)throw new Error("vertexDatasetResource parameter is not supported in Gemini API.");let o=r(n,["examples"]);if(o!=null){let i=o;Array.isArray(i)&&(i=i.map(s=>s)),a(t,["examples","examples"],i)}return t}f(Qm,"tuningDatasetToMldev");function Zm(n,e,t){let o={},i=r(t,["config","method"]);if(i===void 0&&(i="SUPERVISED_FINE_TUNING"),i==="SUPERVISED_FINE_TUNING"){let l=r(n,["gcsUri"]);e!==void 0&&l!=null&&a(e,["supervisedTuningSpec","trainingDatasetUri"],l)}else if(i==="PREFERENCE_TUNING"){let l=r(n,["gcsUri"]);e!==void 0&&l!=null&&a(e,["preferenceOptimizationSpec","trainingDatasetUri"],l)}let s=r(t,["config","method"]);if(s===void 0&&(s="SUPERVISED_FINE_TUNING"),s==="SUPERVISED_FINE_TUNING"){let l=r(n,["vertexDatasetResource"]);e!==void 0&&l!=null&&a(e,["supervisedTuningSpec","trainingDatasetUri"],l)}else if(s==="PREFERENCE_TUNING"){let l=r(n,["vertexDatasetResource"]);e!==void 0&&l!=null&&a(e,["preferenceOptimizationSpec","trainingDatasetUri"],l)}if(r(n,["examples"])!==void 0)throw new Error("examples parameter is not supported in Vertex AI.");return o}f(Zm,"tuningDatasetToVertex");function oc(n,e){let t={},o=r(n,["sdkHttpResponse"]);o!=null&&a(t,["sdkHttpResponse"],o);let i=r(n,["name"]);i!=null&&a(t,["name"],i);let s=r(n,["state"]);s!=null&&a(t,["state"],Nl(s));let l=r(n,["createTime"]);l!=null&&a(t,["createTime"],l);let c=r(n,["tuningTask","startTime"]);c!=null&&a(t,["startTime"],c);let d=r(n,["tuningTask","completeTime"]);d!=null&&a(t,["endTime"],d);let u=r(n,["updateTime"]);u!=null&&a(t,["updateTime"],u);let p=r(n,["description"]);p!=null&&a(t,["description"],p);let h=r(n,["baseModel"]);h!=null&&a(t,["baseModel"],h);let m=r(n,["_self"]);return m!=null&&a(t,["tunedModel"],Km(m)),t}f(oc,"tuningJobFromMldev");function ji(n,e){let t={},o=r(n,["sdkHttpResponse"]);o!=null&&a(t,["sdkHttpResponse"],o);let i=r(n,["name"]);i!=null&&a(t,["name"],i);let s=r(n,["state"]);s!=null&&a(t,["state"],Nl(s));let l=r(n,["createTime"]);l!=null&&a(t,["createTime"],l);let c=r(n,["startTime"]);c!=null&&a(t,["startTime"],c);let d=r(n,["endTime"]);d!=null&&a(t,["endTime"],d);let u=r(n,["updateTime"]);u!=null&&a(t,["updateTime"],u);let p=r(n,["error"]);p!=null&&a(t,["error"],p);let h=r(n,["description"]);h!=null&&a(t,["description"],h);let m=r(n,["baseModel"]);m!=null&&a(t,["baseModel"],m);let g=r(n,["tunedModel"]);g!=null&&a(t,["tunedModel"],g);let b=r(n,["preTunedModel"]);b!=null&&a(t,["preTunedModel"],b);let y=r(n,["supervisedTuningSpec"]);y!=null&&a(t,["supervisedTuningSpec"],y);let w=r(n,["preferenceOptimizationSpec"]);w!=null&&a(t,["preferenceOptimizationSpec"],w);let I=r(n,["tuningDataStats"]);I!=null&&a(t,["tuningDataStats"],I);let T=r(n,["encryptionSpec"]);T!=null&&a(t,["encryptionSpec"],T);let _=r(n,["partnerModelTuningSpec"]);_!=null&&a(t,["partnerModelTuningSpec"],_);let C=r(n,["customBaseModel"]);C!=null&&a(t,["customBaseModel"],C);let v=r(n,["experiment"]);v!=null&&a(t,["experiment"],v);let P=r(n,["labels"]);P!=null&&a(t,["labels"],P);let N=r(n,["outputUri"]);N!=null&&a(t,["outputUri"],N);let B=r(n,["pipelineJob"]);B!=null&&a(t,["pipelineJob"],B);let $=r(n,["serviceAccount"]);$!=null&&a(t,["serviceAccount"],$);let U=r(n,["tunedModelDisplayName"]);U!=null&&a(t,["tunedModelDisplayName"],U);let z=r(n,["veoTuningSpec"]);return z!=null&&a(t,["veoTuningSpec"],z),t}f(ji,"tuningJobFromVertex");function jm(n,e){let t={},o=r(n,["sdkHttpResponse"]);o!=null&&a(t,["sdkHttpResponse"],o);let i=r(n,["name"]);i!=null&&a(t,["name"],i);let s=r(n,["metadata"]);s!=null&&a(t,["metadata"],s);let l=r(n,["done"]);l!=null&&a(t,["done"],l);let c=r(n,["error"]);return c!=null&&a(t,["error"],c),t}f(jm,"tuningOperationFromMldev");function Il(n,e){let t={},o=r(n,["gcsUri"]);o!=null&&a(t,["validationDatasetUri"],o);let i=r(n,["vertexDatasetResource"]);return i!=null&&a(t,["validationDatasetUri"],i),t}f(Il,"tuningValidationDatasetToVertex");var er=class extends Ee{static{f(this,"Tunings")}constructor(e){super(),this.apiClient=e,this.list=async(t={})=>new Ge(xe.PAGED_ITEM_TUNING_JOBS,o=>this.listInternal(o),await this.listInternal(t),t),this.get=async t=>await this.getInternal(t),this.tune=async t=>{var o;if(this.apiClient.isVertexAI())if(t.baseModel.startsWith("projects/")){let i={tunedModelName:t.baseModel};!((o=t.config)===null||o===void 0)&&o.preTunedModelCheckpointId&&(i.checkpointId=t.config.preTunedModelCheckpointId);let s=Object.assign(Object.assign({},t),{preTunedModel:i});return s.baseModel=void 0,await this.tuneInternal(s)}else{let i=Object.assign({},t);return await this.tuneInternal(i)}else{let i=Object.assign({},t),s=await this.tuneMldevInternal(i),l="";return s.metadata!==void 0&&s.metadata.tunedModel!==void 0?l=s.metadata.tunedModel:s.name!==void 0&&s.name.includes("/operations/")&&(l=s.name.split("/operations/")[0]),{name:l,state:ci.JOB_STATE_QUEUED}}}}async getInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Hm(e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>ji(p))}else{let u=Om(e);return c=A("{name}",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>oc(p))}}async listInternal(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Xm(e);return c=A("tuningJobs",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=zm(p),m=new Fn;return Object.assign(m,h),m})}else{let u=Jm(e);return c=A("tunedModels",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"GET",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Ym(p),m=new Fn;return Object.assign(m,h),m})}}async cancel(e){var t,o,i,s;let l,c="",d={};if(this.apiClient.isVertexAI()){let u=Dm(e);return c=A("{name}:cancel",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Lm(p),m=new kn;return Object.assign(m,h),m})}else{let u=Mm(e);return c=A("{name}:cancel",u._url),d=u._query,delete u._url,delete u._query,l=this.apiClient.request({path:c,queryParams:d,body:JSON.stringify(u),httpMethod:"POST",httpOptions:(i=e.config)===null||i===void 0?void 0:i.httpOptions,abortSignal:(s=e.config)===null||s===void 0?void 0:s.abortSignal}).then(p=>p.json().then(h=>{let m=h;return m.sdkHttpResponse={headers:p.headers},m})),l.then(p=>{let h=Um(p),m=new kn;return Object.assign(m,h),m})}}async tuneInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI()){let c=qm(e,e);return s=A("tuningJobs",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json().then(u=>{let p=u;return p.sdkHttpResponse={headers:d.headers},p})),i.then(d=>ji(d))}else throw new Error("This method is only supported by the Vertex AI.")}async tuneMldevInternal(e){var t,o;let i,s="",l={};if(this.apiClient.isVertexAI())throw new Error("This method is only supported by the Gemini Developer API.");{let c=Vm(e);return s=A("tunedModels",c._url),l=c._query,delete c._url,delete c._query,i=this.apiClient.request({path:s,queryParams:l,body:JSON.stringify(c),httpMethod:"POST",httpOptions:(t=e.config)===null||t===void 0?void 0:t.httpOptions,abortSignal:(o=e.config)===null||o===void 0?void 0:o.abortSignal}).then(d=>d.json().then(u=>{let p=u;return p.sdkHttpResponse={headers:d.headers},p})),i.then(d=>jm(d))}}};var tr=class{static{f(this,"BrowserDownloader")}async download(e,t){throw new Error("Download to file is not supported in the browser, please use a browser compliant download like an <a> tag.")}},eg=1024*1024*8,tg=3,ng=1e3,og=2,so="x-goog-upload-status";async function ig(n,e,t){var o;let i=await ic(n,e,t),s=await i?.json();if(((o=i?.headers)===null||o===void 0?void 0:o[so])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");return s.file}f(ig,"uploadBlob");async function rg(n,e,t){var o;let i=await ic(n,e,t),s=await i?.json();if(((o=i?.headers)===null||o===void 0?void 0:o[so])!=="final")throw new Error("Failed to upload file: Upload status is not finalized.");let l=_l(s),c=new Ci;return Object.assign(c,l),c}f(rg,"uploadBlobToFileSearchStore");async function ic(n,e,t){var o,i;let s=0,l=0,c=new Ot(new Response),d="upload";for(s=n.size;l<s;){let u=Math.min(eg,s-l),p=n.slice(l,l+u);l+u>=s&&(d+=", finalize");let h=0,m=ng;for(;h<tg&&(c=await t.request({path:"",body:p,httpMethod:"POST",httpOptions:{apiVersion:"",baseUrl:e,headers:{"X-Goog-Upload-Command":d,"X-Goog-Upload-Offset":String(l),"Content-Length":String(u)}}}),!(!((o=c?.headers)===null||o===void 0)&&o[so]));)h++,await ag(m),m=m*og;if(l+=u,((i=c?.headers)===null||i===void 0?void 0:i[so])!=="active")break;if(s<=l)throw new Error("All content has been uploaded, but the upload status is not finalized.")}return c}f(ic,"uploadBlobInternal");async function sg(n){return{size:n.size,type:n.type}}f(sg,"getBlobStat");function ag(n){return new Promise(e=>setTimeout(e,n))}f(ag,"sleep");var nr=class{static{f(this,"BrowserUploader")}async upload(e,t,o){if(typeof e=="string")throw new Error("File path is not supported in browser uploader.");return await ig(e,t,o)}async uploadToFileSearchStore(e,t,o){if(typeof e=="string")throw new Error("File path is not supported in browser uploader.");return await rg(e,t,o)}async stat(e){if(typeof e=="string")throw new Error("File path is not supported in browser uploader.");return await sg(e)}};var or=class{static{f(this,"BrowserWebSocketFactory")}create(e,t,o){return new ir(e,t,o)}},ir=class{static{f(this,"BrowserWebSocket")}constructor(e,t,o){this.url=e,this.headers=t,this.callbacks=o}connect(){this.ws=new WebSocket(this.url),this.ws.onopen=this.callbacks.onopen,this.ws.onerror=this.callbacks.onerror,this.ws.onclose=this.callbacks.onclose,this.ws.onmessage=this.callbacks.onmessage}send(e){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.send(e)}close(){if(this.ws===void 0)throw new Error("WebSocket is not connected");this.ws.close()}};var Tl="x-goog-api-key",rr=class{static{f(this,"WebAuth")}constructor(e){this.apiKey=e}async addAuthHeaders(e,t){if(e.get(Tl)===null){if(this.apiKey.startsWith("auth_tokens/"))throw new Error("Ephemeral tokens are only supported by the live API.");if(!this.apiKey)throw new Error("API key is missing. Please provide a valid API key.");e.append(Tl,this.apiKey)}}};var lg="gl-node/",Bt=class{static{f(this,"GoogleGenAI")}get interactions(){if(this._interactions!==void 0)return this._interactions;if(console.warn("GoogleGenAI.interactions: Interactions usage is experimental and may change in future versions."),this.vertexai)throw new Error("This version of the GenAI SDK does not support Vertex AI API for interactions.");let e=this.httpOptions;e?.extraBody&&console.warn("GoogleGenAI.interactions: Client level httpOptions.extraBody is not supported by the interactions client and will be ignored.");let t=new Q({baseURL:this.apiClient.getBaseUrl(),apiKey:this.apiKey,defaultHeaders:this.apiClient.getDefaultHeaders(),timeout:e?.timeout});return this._interactions=t.interactions,this._interactions}constructor(e){var t;if(e.apiKey==null)throw new Error("An API Key must be set when running in a browser");if(e.project||e.location)throw new Error("Vertex AI project based authentication is not supported on browser runtimes. Please do not provide a project or location.");this.vertexai=(t=e.vertexai)!==null&&t!==void 0?t:!1,this.apiKey=e.apiKey;let o=Lc(e.httpOptions,e.vertexai,void 0,void 0);o&&(e.httpOptions?e.httpOptions.baseUrl=o:e.httpOptions={baseUrl:o}),this.apiVersion=e.apiVersion,this.httpOptions=e.httpOptions;let i=new rr(this.apiKey);this.apiClient=new Di({auth:i,apiVersion:this.apiVersion,apiKey:this.apiKey,vertexai:this.vertexai,httpOptions:this.httpOptions,userAgentExtra:lg+"web",uploader:new nr,downloader:new tr}),this.models=new qi(this.apiClient),this.live=new ki(this.apiClient,i,new or),this.batches=new vi(this.apiClient),this.chats=new Ni(this.models,this.apiClient),this.caches=new $i(this.apiClient),this.files=new Ri(this.apiClient),this.operations=new Oi(this.apiClient),this.authTokens=new Hi(this.apiClient),this.tunings=new er(this.apiClient),this.fileSearchStores=new Wi(this.apiClient)}};var ut=J||!0,rc=new Map,sc=[];function ft(){let n=`[${ft.name}]`;try{return ut&&console.log(`${n} starting... (I: a5cf5821b42e1c71182dd61431977e25)`),rc}catch(e){throw console.error(`${n} ${E(e)}`),e}finally{ut&&console.log(`${n} complete.`)}}f(ft,"getAllFunctionInfos");function fr(){let n=`[${fr.name}]`;try{return ut&&console.log(`${n} starting... (I: 82c9a8fc91d8121fb843af32e76c2e25)`),sc}catch(e){throw console.error(`${n} ${E(e)}`),e}finally{ut&&console.log(`${n} complete.`)}}f(fr,"getDeprecatedFunctionInfoNames");function cg({functionInfos:n}){let e=`[${cg.name}]`;try{ut&&console.log(`${e} starting... (I: 14fee8e27384a040494542182031ae25)`),n.size===0&&console.warn(`${e} empty functionInfos? (W: 97fcb8fc47689bc418893c09a16a2525)`);for(let[t,o]of n)sc.includes(t)?ut&&console.log(`${e} functionInfo.nameOrId (${t}) is deprecated. Skipping add. (I: 3256eadf54f8087088a704798e2fd825)`):rc.set(t,o)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{ut&&console.log(`${e} complete.`)}}f(cg,"registerFunctionInfos");var le=J;function Wt(n){switch(n){case K.HUMAN:return"user";case K.AI:return"model";case K.FUNCTION:return"user";case K.HARDCODED:return"user";case K.UNKNOWN:return"user";default:throw new Error(`(UNEXPECTED) src is not a valid TextSource? src: ${n} (E: 9d954fe0bc49cf4572a65b19b6173925)`)}}f(Wt,"textSourceToGeminiRole");function ac(n){return n.api==="gemini"}f(ac,"isPromptInfoGemini");function pr({systemPromptEntries:n}){let e=`[${pr.name}]`;try{if(le&&console.log(`${e} starting... (I: 18693a97427939699285ef8c1a9cc425)`),n.length===0)return;n.every(o=>o.src===K.HUMAN)||le&&console.warn(`${e} not every system entry's src is human. We're still going to say that these are "user" origin in Gemini API. (W: 7115e2be876498ecb1e153c79a86e125)`);let t={role:"user",parts:n.filter(o=>!!o.content.parts).flatMap(o=>o.content.parts)};return le&&console.log(`${e} sysInstructionContent: ${M(t)} (I: 011e5b865c23eb0b640df3f464ac2525)`),t}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{le&&console.log(`${e} complete.`)}}f(pr,"systemPromptEntriesToSystemInstructionContent");function hr({ibGib:n}){let e=`[${hr.name}]`;try{if(le&&console.log(`${e} starting... (I: 986d3edcd4f3aaf1d7eb0f8b59206b25)`),!n)return le&&console.warn(`${e} ibGib falsy. (W: a70390e8bc3f420a92d3a84f4c78f12a)`),!1;if(!it({ibGib:n}))return le&&console.log(`${e} not a comment ibgib (I: 6a62c4f6e13776616855c4f237a5206b)`),!1;if(!n.data)return le&&console.log(`${e} ibGib.data falsy (I: 69eb86975640475395bb74944141a46d)`),!1;let{text:t}=n.data;return t?t.includes(In)?(le&&console.log(`${e} has tag. returning true. (I: 6d76b27d558d44f696582f41af561f29)`),!0):(le&&console.log(`${e} no indicator found. returning false. (I: 815f181a0a08058362f76b08a8964674)`),!1):(le&&console.log(`${e} text falsy (I: e348e38c841b4443b3f09e75c0215b24)`),!1)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{le&&console.log(`${e} complete.`)}}f(hr,"isFunctionCallRequestComment");function mr({functionInfoIbGib:n}){let e=`[${mr.name}]`;try{if(le&&console.log(`${e} starting... (I: 1a2b3c4d5e6f7a8b)`),!n)throw new Error(`${e} functionInfoIbGib parameter is required. (E: 9c8f7a3b2d1e4a5b6c7d8e9f)`);if(!n.data)throw new Error(`${e} functionInfoIbGib.data is required. (E: 2b3c4d5e6f7a8b1c2d3e4f5a)`);let{fnName:t,fnArgs:o,fnResult:i}=n.data;if(!t)throw new Error(`${e} functionInfoIbGib.data.fnName is required. (E: 6f7a8b1c2d3e4f5a6b7c8d9e)`);return{call:{functionCall:{name:t,args:o??{}}},response:{functionResponse:{name:t,response:{value:i}}}}}catch(t){throw console.error(`${e} Error: ${E(t)}`),t}finally{le&&console.log(`${e} complete.`)}}f(mr,"getFunctionCallAndResponseParts");var Jt=J,uo="function_info",lc="function_info";function cc({data:n}){let e=`[${cc.name}]`,{model:t,api:o,agentId:i,timestamp:s}=n;if(!t)throw new Error(`${e} data.model falsy (E: 6f47a28c0a8a45d794149c83e8f27e25)`);if(!o)throw new Error(`${e} data.api falsy (E: a0a812508a952a87c619d38084b7e325)`);if(!i)throw new Error(`${e} data.agentId falsy (E: ac35c1592c458e2c0e5908f6a9a3e525)`);let l=Te(s);if([t,o,i,l].some(d=>d.includes(" ")))throw new Error("invalid data. ib must not contain spaces (E: 36a56e4685163848458be06f51d4ad25)");return[lc,l,t,o,i].join(" ")}f(cc,"getFunctionInfoIb");async function fo(n){let e=`[${fo.name}]`;try{Jt&&console.log(`${e} starting... (I: f4c9f0810a4d877f676297f6e6a96825)`);let{fnRawRequest:t,api:o,model:i,agentId:s,fnName:l,fnArgs:c,fnResult:d,fnComplete:u,parseErrorMsg:p,execErrorMsg:h,repromptWithResult:m,saveInSpace:g,metaspace:b,space:y}=n,w=new Date,I={name:i,timestamp:zt(w),timestampMs:w.getMilliseconds(),agentId:s,api:o,model:i,fnRawRequest:t,fnName:l,fnArgs:c,fnResult:d,fnComplete:u,repromptWithResult:m};p&&(I.parseErrorMsg=p),h&&(I.execErrorMsg=h);let T=cc({data:I}),_=await H.firstGen({ib:T,parentIbGib:H.primitive({ib:lc}),data:I,nCounter:!0,dna:!0,tjp:{uuid:!0}});if(Jt&&console.log(`${e} created functionInfoIbGib (I: e50d2e17f43312d4f4739899306bb725)`),g){if(!b)throw new Error(`${e} metaspace must be provided if saveInSpace is set to true (E: e74b76b00124d5874a6c5404e794b725)`);if(!y)throw new Error(`${e} space must be provided if saveInSpace is set to true (E: f3d5f1695a52707114117f72d932a025)`);await b.persistTransformResult({resTransform:_,space:y}),Jt&&console.log(`${e} persisted resFunctionInfo (${S({ibGib:_.newIbGib})}) to space ${y.data?.uuid} (I: aa98e877d3b34e0d2a3b7711f8f27e25)`),await b.registerNewIbGib({ibGib:_.newIbGib,space:y}),Jt&&console.log(`${e} registered new function info ibgib (${S({ibGib:_.newIbGib})}) with metaspace (I: aa98e877d3b34e0d2a3b7711f8f27e25)`)}return _}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{Jt&&console.log(`${e} complete.`)}}f(fo,"createFunctionInfoIbGib");var x=J,po=class n extends Je{static{f(this,"AgentWitness_V1")}lc=`[${n.name}]`;availableFunctions=new Map;commentIbGibs_system=[];commentIbGibs_chat=[];_metaspace;fnGetAPIKey=f(()=>Promise.reject("not implemented. you need to set this after initializing the agent. (E: a14cbe903d08821126bbbb1d063d9825)"),"fnGetAPIKey");get name(){return this.data?.name??""}get uuid(){return this.data?.uuid??""}_genAI;transientDecompressionPromptText;fnOutputText=f(e=>{console.log(`${this.lc}[fnOutputText] this hack does nothing by default. set this to do something when text is returned by the model LLM. textResponse: ${e} (W: 3007e5d69dafdd7e42157fa7370d7f25)`)},"fnOutputText");ibGibProxy;constructor(e,t){super(e,t),this.instanceId=pt({count:32})}async validateThis(){let e=`${this.lc}[${this.validateThis.name}]`;try{x&&console.log(`${e} starting... (I: 641e211473fc54d5a9ebb4ea44944d25)`);let t=await super.validateThis();return this.data?(this.data?.subSpaceId||t.push("agent.data.subSpaceId falsy (E: d4ea57fd6b1c5cbc1e18a084de2f7725)"),this.data?.subSpaceId.match(ie)||t.push(`agent.data.subSpaceId must match regexp: ${ie}. (E: f381eff533aa3f4713316f93f7f1dc25)`),this.data.name?this.data.name.match(Et)||t.push(`agent name must match regexp: ${Et}`):t.push("agent name falsy (E: 1351325107e5ac5ea6b7b789b73de125)"),this.data.description&&(this.data.description.match(Yo)||t.push(`agent description must match regexp: ${Yo}`))):t.push("this.data falsy (E: f5f151e11b12cad814b37ecad7c74a25)"),t}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{x&&console.log(`${e} complete.`)}}async initialize(){let e=`${this.lc}[${this.initialize.name}]`;try{x&&console.log(`${e} starting... (I: ce38519ac4bef52844a558fe31cda825)`),await super.initialize(),this._metaspace=await Pe();let t=new Xe;if(await t.initialized,!t.contextUpdated$)throw new Error("(UNEXPECTED) ibGibProxy.contextUpdated$ falsy? (E: e8840870af18091e6e4d52490ddca825)");if(t.contextUpdated$.subscribe(_e({next:f(async o=>{let i=`${e}[ibGibProxy.contextUpdated$][next]`;x&&console.log(`${i} nextIbGib: ${M(o)} (I: 96c846357b94fda2cefa615aed88c325)`),await this.handleContextUpdated()},"next"),error:f(async o=>{debugger;console.error(`${e}[ibGibProxy.contextUpdated$][error] what up? ${E(o)}`)},"error")})),this.ib&&this.gib&&this.data){let o=this.toIbGibDto();await this.loadIbGibDto(o);let i=await this._metaspace.getLocalUserSpace({localSpaceId:o.data?.superSpaceId});if(!i)throw new Error(`couldn't get local space with agent.data.superSpaceId (${o.data?.superSpaceId})? (E: 0fc1b8a8ffa26f39d8a15218ec818725)`);await this.ibGibProxy?.setWrappedIbGib({ibGib:o,space:i})}else x&&console.log(`${e} agent is "empty". not loading dto at this time, caller is responsible for calling loadIbGibDto (I: 06dba19d74d5695fe7d1957889283725)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{x&&console.log(`${e} complete.`)}}async handleContextUpdated(){let e=`${this.lc}[${this.handleContextUpdated.name}]`;try{if(!this.ibGibProxy)throw new Error("(UNEXPECTED) this.ibGibProxy falsy but we're within handleContextUpdated handler? (E: a88fa85e8f27bd7f72c207389ebfbc25)");if(!this.ibGibProxy.ibGib)throw new Error("(UNEXPECTED) this.ibGibProxy.ibGib falsy but we're within the handleContextUpdated handler? (E: ca60b8f0a60a3e3d652c3018102d1825)");debugger;if(!this.gib){debugger;console.error(`${e} not sure if error, but this.gib is falsy when we get a new context down the pipeline? (E: 8501d8aee4db7b8461587f38f0bbb125)`)}if(S({ibGib:this})!==S({ibGib:this.ibGibProxy.ibGib})){let t=this.ibGibProxy.ibGib.data.n??0,o=this.data?.n??0;if(t<=o){debugger;console.error(`${e} issue with "new" proxy context and the current this.data.n with different addresses. divergent timelines? (E: 15c698eb4488cbae2db0e778fec15825)`)}await this.loadIbGibDto(this.ibGibProxy.ibGib),await fe(200)}else console.error(`${e} ibgibProxy new context is no different than current. this is NOT necessarily an error, I just want to see this when it happens. nothing is being done here, we're just not loading the "new" ibgib dto. (E: eff668b2e858ded448366d58e4dd6825)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}}async getSubSpace(){let e=`[${this.getSubSpace.name}]`;try{x&&console.log(`${e} starting... (I: a2ec2c5e8f5fdf95c8c571b2b1b9e925)`);let{_metaspace:t}=this;if(!t)throw new Error("(UNEXPECTED) this.metaspace falsy? after init this.metaspace is expected to be set. (E: 4519a8feaf4489389be679598f274425)");let o=await t.getLocalUserSpace({localSpaceId:this.data.subSpaceId});if(!o){let i=await this.validateThis();if(i.length>0)throw new Error(`this agent has validation errors: ${i} (E: 9a0c6125cf89789ddb1610cf5a752225)`);if(!this.data)throw new Error("(UNEXPECTED) this.data falsy? (E: 06e30e1d53fd4935333c7cf7e10db425)");o=await t.createLocalSpaceAndUpdateBootstrap({allowCancel:!1,zeroSpace:t.zeroSpace,spaceName:this.name+this.uuid.substring(0,5),createBootstrap:!1})}if(!o)throw new Error("(UNEXPECTED) space still falsy after creating locally? (E: 037ef1e6f54a675d0367227fdae16525)");return o}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{x&&console.log(`${e} complete.`)}}async getSuperSpace(){let e=`[${this.getSuperSpace.name}]`;try{x&&console.log(`${e} starting... (I: 55fba9bcaf9539cc2219e03cda200525)`);let{_metaspace:t}=this;if(!t)throw new Error("(UNEXPECTED) this.metaspace falsy? after init this.metaspace is expected to be set. (E: 107f670c99832c573a7e5de18d58c325)");if(!this.data)throw new Error("(UNEXPECTED) this.data falsy? (E: a4341b8753678fcba7877b6319769b25)");if(!this.data.superSpaceId)throw new Error("(UNEXPECTED) this.data.superSpaceId falsy? (E: 0429fe44df5b56bf2ac67d38cde56325)");let o=await t.getLocalUserSpace({localSpaceId:this.data.superSpaceId});if(!o)throw new Error(`(UNEXPECTED) superSpace falsy? this.data.superSpaceId: ${this.data.superSpaceId} (E: fd9435212e8b87e4b60034bf9e797f25)`);return o}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{x&&console.log(`${e} complete.`)}}_activeContext=void 0;async setActiveContext(e){let t=`${this.lc}[${this.setActiveContext.name}]`;try{x&&console.log(`${t} starting... (I: genuuid)`);let{contextIbGib:o,loggingInfo:i}=e;if(!this.data)throw new Error("(UNEXPECTED) this.data falsy? (E: ab5377fda6bc324638722d9832bab925)");if(!o)throw new Error("(UNEXPECTED) contextIbGib falsy? (E: 694525e512cfdd12c14e1213dbaab925)");if(!o.data)throw new Error("(UNEXPECTED) contextIbGib.data falsy? (E: f337252a23c822bcbd76144540050825)");let s=S({ibGib:o}),l=de({ibGib:o});if(!l)throw new Error(`(UNEXPECTED) contextTjpAddr falsy? contextIbGib (${s}) is expected to be a living ibgib with a tjp address (i.e. a timeline). This means it should have a rel8ns.tjp or data.isTjp should be truthy. (E: d756d1e862d2cccfed4a5807737e9a25)`);if(this.data?.["@currentContextTjpAddr"]===l?x&&console.log(`${t} this.data.@currentContextTjpAddr already set to the same addr. (I: 9f0d58ec65eee3ca2aec528f1328c325)`):await this.mut8Self({dataToAddOrPatch:{"@currentContextTjpAddr":l}}),!this._activeContext){let c=new Xe;await c.initialized;let d=`${t}[contextUpdated]`;if(!c.contextUpdated$)throw new Error("(UNEXPECTED) proxy.contextUpdated$ falsy? (E: 868c5e3bf025baa6d1ae727ab1160c25)");c.contextUpdated$.subscribe(_e({next:f(async p=>{console.log(`${d}[next] nextIbGib: ${M(p)}`)},"next"),complete:f(async()=>{debugger;throw new Error(`${d}[complete] (UNEXPECTED) agent active context subscription complete? i honestly don't know if this hits. (E: 786d26ab23e4313db7ae2e08c70a7425)`)},"complete"),error:f(async p=>{debugger;console.error(`${d}[error] ${E(p)}`)},"error")}));let u=`${t}[newContextChild]`;if(!c.newContextChild$)throw new Error("(UNEXPECTED) proxy.newContextChild$ falsy? (E: 123cf5624c3d2a6308aafc0c41f8a925)");c.newContextChild$.subscribe(_e({next:f(async p=>{if(console.log(`${u}[next] newChild: ${M(p)}`),!p.data)throw new Error("newChild.data falsy? (E: a654134a2695c176971b0cd1426ced25)");if(it({ibGib:p})){let h=this.commentIbGibs_chat.map(w=>de({ibGib:w})??S({ibGib:w})),m=de({ibGib:p})??S({ibGib:p});if(h.includes(m)){console.log(`${t} already did this comment (${m}) (I: bce18642bb9babeb553e6188d7ae2825)`);return}let{safeIbCommentMetadataText:g}=nt({ib:p.ib}),{textSrc:b}=Xt({addlMetadataText:g??"",ifError:"warn"}),y=p.data.text.startsWith("system: ");await this.addTexts({infos:[{textSrc:b??K.UNKNOWN,commentIbGib:p,isSystem:y}]}),b===K.HUMAN&&(y?console.log(`${t} system prompt has been modified. (I: d21c26f0a3fa12e2a874925882f39825)`):await this.doPrompt())}else console.warn(`${u} non-comment newChild. probably not a warning proper, but at this stage I'm only expecting comments ignoring... (W: e664834af4791ddcde19bfd4f7063e25)`)},"next"),complete:f(async()=>{debugger;throw new Error(`${u}[complete] (UNEXPECTED) agent active context subscription complete? i honestly don't know if this hits. (E: 88202d1f7554330d3dfca0237c2d6525)`)},"complete"),error:f(async p=>{debugger;console.error(`${u}[error] ${E(p)}`)},"error")})),this._activeContext=c}if(!this._activeContext)throw new Error("(UNEXPECTED) this._activeContext still falsy after we just initialized it? (E: 584f2f672b9ae7c979dde693eafb7a25)");await this._activeContext.setWrappedIbGib({ibGib:o})}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}async updateName({name:e}){let t=`${this.lc}[${this.updateName.name}]`;try{if(x&&console.log(`${t} starting... (I: genuuid)`),e===this.name){console.warn(`${t} agent (${this.uuid}) already is named ${e}. returning early... (W: genuuid)`);return}else if(Et.test(e))await this.mut8Self({dataToAddOrPatch:{name:e}});else throw new Error(`invalid name ${e}. must match regexp: ${Et.source} (E: 507a2bfc0aaa60bd7bb608d253239e25)`)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}async updateAvailableFunctions({availableFunctions:e}){let t=`${this.lc}[${this.updateAvailableFunctions.name}]`;try{x&&console.log(`${t} starting... (I: 68f1bfa343925a657f8c0545b191c725)`);let o=[];for(let i of e)if(!this.availableFunctions.has(i.nameOrId)){let s=ft().get(i.nameOrId);if(s)o.push(s);else{console.error(`(UNEXPECTED) ${i} function not registered with getAllFunctionInfos()? skipping adding this function to the agent... (E: e860fe13c02677b274ac0e7df2587a25)`);continue}}o.length>0&&(console.log(`${t} adding newly found functions to agent: ${o.map(i=>i.nameOrId)}. (I: ab2b0ae6a62b3ced6a5f1e2e8cec4f25)`),await this.addAvailableFunctions(o))}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}async mut8Self({dataToAddOrPatch:e}){let t=`${this.lc}[${this.mut8Self.name}]`;try{x&&console.log(`${t} starting... (I: f4618832a0fe07ff8c89cea889d20725)`);let o=this._metaspace;if(!o)throw new Error("(UNEXPECTED) metaspace falsy? (E: genuuid)");let i=await o.getLocalUserSpace({lock:!1,localSpaceId:this.data.superSpaceId});if(!i)throw new Error(`couldn't get local superSpace given by this.data.superSpaceId (${this.data.superSpaceId}) (E: genuuid)`);let{tjpGib:s}=ce({gib:this.gib});if(!s)throw new Error(`(UNEXPECTED) this.gib (${this.gib}) has no tjpGib? (E: 75b8dcb82b58d3b0db40b39149023e25)`);await Fe({fn:f(async()=>{let l=Ae();await l.updateOrSetLatestAgent({agent:this,throwIfNewerFound:!1});let c=await Gt({type:"mut8",src:this.toIbGibDto(),dataToAddOrPatch:e,dna:!0,nCounter:!0});await o.persistTransformResult({resTransform:c,space:i});let d=c.newIbGib;await this.loadIbGibDto(d),await l.updateOrSetLatestAgent({agent:this,throwIfNewerFound:!0}),await o.registerNewIbGib({ibGib:d,space:i}),await gr({newAgentIbGib:d,metaspace:o,space:i,type:this.data.type})},"fn"),scope:s,secondsValid:60,maxDelayMs:100,maxLockAttempts:Number.MAX_SAFE_INTEGER,space:i,callerInstanceId:this.instanceId})}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}getAvailableFunctions(){return Array.from(this.availableFunctions.values())}getComments_System(){return[...this.commentIbGibs_system]}getComments_Chat(){return[...this.commentIbGibs_chat]}async addAvailableFunctions(e){let t=`[${this.addAvailableFunctions.name}]`;try{if(x&&console.log(`${t} starting... (I: 273525464ec540fc9cba565e608db925)`),!e)throw new Error("(UNEXPECTED) functionInfos falsy? (E: 19cf2b7c9ee1115f0a3f7f62fbf77825)");if(e.length===0){console.warn(`${t} functionInfos.length === 0? why is this being called with no functions? returning early without doing anything. (W: 86c6dc4fad3c1ddcac697d5636b1eb25)`);return}await Ae().updateOrSetLatestAgent({agent:this,throwIfNewerFound:!1}),e.forEach(i=>{this.availableFunctions.has(i.nameOrId)&&console.warn(`${t} this.availableFunctions already has an entry for ${i.nameOrId}. replacing anyway. (W: ef2372a27be67174cb3605eac2c85c25)`),this.availableFunctions.set(i.nameOrId,i)}),await this.mut8Self({dataToAddOrPatch:{availableFunctionNameOrIds:Array.from(this.availableFunctions.keys())}})}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}async doPrompt(){let e=`[${this.doPrompt.name}]`;try{if(x&&console.log(`${e} starting... (I: e7f1a7845cdf1bdce1f12d74c71a6425)`),!this.data)throw new Error("(UNEXPECTED) this.data falsy? (E: 3c528e2376a2f2600b347b2c183a5225)");let t=await this.composePromptInfo();x&&console.log(`${e} promptTextInfo: ${M(t)} (I: b769b5f2a47623a99f78210994d90525)`);let o=await this.callTextAPI(t);if(x&&console.log(`${e} api result:`,o,"(I: e4d2c767eb3d6e38d83123d684a07425)"),"text"in o)await this.doPrompt_text(o.text);else{let{functionCalls:i}=o;await this.doPrompt_functionCalls({functionCalls:i})}}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{x&&console.log(`${e} complete.`)}}async doPrompt_text(e){let t=`${this.lc}[${this.doPrompt_text.name}]`;try{x&&console.log(`${t} starting... (I: a2b9c21f3b2b058d355d16421e2b4425)`),e||="[no text returned from the model]",this.fnOutputText?this.fnOutputText(e):console.log(`${t} no fnOutputText set. Text Response: ${e} (I: 5936517474b10b214257781a24b10425)`)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}async doPrompt_functionCalls({functionCalls:e}){let t=`${this.lc}[${this.doPrompt_functionCalls.name}]`;try{if(x&&console.log(`${t} starting... (I: a4f1b581517a9c2a9187e9f8f3519925)`),e.length===0)throw new Error("(UNEXPECTED) functionCalls.length is zero? (E: 6434b8515a435a59b331452b563f4425)");let o=await this.doPrompt_functionCalls_createFunctionInfoIbGibsAndExecFunctionCalls({functionCalls:e});if(await this.doPrompt_functionCalls_addFunctionCallRequestComment({functionInfoIbGibs:o}),o.some(s=>!!s.data?.repromptWithResult&&s.data.fnName!=="tellUser")){let s=await this.doPrompt_functionCalls_getTransientDecompressionPromptForNextPrompt({functionInfoIbGibs:o});s.length>0?(console.log(`${t} transientDecompressionPromptText: ${s} (I: 11c11d544b7c8f8f8e7e5f7c1a9e3625)`),this.transientDecompressionPromptText=s,await this.rePrompt()):console.warn(`${t} (UNEXPECTED) there is no decompression text? (W: 6ce5da95c1c89a7ec48a00fbc1d11825)`)}else x&&console.log(`${t} no repromptWithResult. returning early. (I: 9c0113c958c7404534291f6700325925)`)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}async doPrompt_functionCalls_createFunctionInfoIbGibsAndExecFunctionCalls({functionCalls:e}){let t=`${this.lc}[${this.doPrompt_functionCalls_createFunctionInfoIbGibsAndExecFunctionCalls.name}]`;try{if(x&&console.log(`${t} starting... (I: adc094bc98cb076a4aaf729f70adce25)`),!this.data)throw new Error("(UNEXPECTED) this.data falsy? (E: d071328283b2cf880ff0ccd499c22b25)");if(!this.data.uuid)throw new Error("(UNEXPECTED) this.data.uuid falsy? (E: 8acd2f793e4b5a368dbcf1d8d1e6e825)");let o=this._metaspace;if(!o)throw new Error("(UNEXPECTED) metaspace falsy? (E: acf8a69e853eb8663f1dd0f79a823e25)");let i=[];for(let s of e)try{x&&console.log(`${t} processing functionCall: ${s} (I: a0c0b22b3c6b6c4b674a5a9c8c8b9e25)`);let l,c,d,u,p,h="";try{if(c=JSON.parse(s),h=c?.name??"",!h)throw new Error("functionName (functionCallParsedObj.name) falsy (E: e2397d675863a12b7609495b0007a025)");if(x&&console.log(`${t} functionCallParsedObj:`,M(c),"(I: 750f097243b85644d111971e0f929c25)"),u=ft().get(c.name),!u)throw new Error(`no APIFunctionInfo found that matches functionName (${h}) (E: 9d36b6472ec5cdf95e4f498292449925)`);p=c.args,x&&console.log(`${t} valid params (I: a4d5c13c79a2405c8d20464b42083325)`)}catch(m){d=`${t} invalid functionCallParsedObj. error: ${E(m)}. functionCallStr: ${s}. (E: 1687a24c5a3667d34689a09f8f753125)`,console.error(d),c=void 0}if(u){x&&console.log(`${t} found functionInfo: ${u.nameOrId} (I: 837c7a8200689a0b2314b73057812b25)`);let m,g=!1,b;try{x&&console.log(`${t} calling function impl for ${u.nameOrId} (I: b145d08186782089c18564305f0f1125)`),m=await u.fnViaCmd(p),g=!0,x&&console.log(`${t} functionImpl complete for ${u.nameOrId}. result:`,M(m),"(I: e19d476f489261263165914750472d25)")}catch(w){b=`${t} could not call functionImpl for ${u.nameOrId}: ${E(w)} (E: 9c0e97f29a9290f9d57637b7053f0c25)`,console.error(b)}l=(await fo({api:this.data.api,model:this.data.model,agentId:this.data.uuid,fnRawRequest:s,fnName:h,fnArgs:c.args,repromptWithResult:c.args?.repromptWithResult??!1,fnResult:m,fnComplete:g,execErrorMsg:b,parseErrorMsg:void 0,saveInSpace:!0,metaspace:o,space:await this.getSuperSpace()})).newIbGib}else l=(await fo({api:this.data.api,model:this.data.model,agentId:this.data.uuid,fnRawRequest:s,fnName:h,fnArgs:c.args,repromptWithResult:c.args?.repromptWithResult??!1,fnResult:void 0,fnComplete:void 0,execErrorMsg:void 0,parseErrorMsg:d,saveInSpace:!0,metaspace:o,space:await this.getSuperSpace()})).newIbGib;if(!l)throw new Error("(UNEXPECTED) functionInfoIbGib falsy? we should have guaranteed to create one at this point. (E: 97c4ce12c7372adfeebfd45181b73f25)");i.push(l)}catch(l){throw console.error(`${t} ${E(l)}`),l}finally{x&&console.log(`${t} complete.`)}if(i.length===0)throw new Error("(UNEXPECTED) functionInfoIbGibs.length === 0? We expect at least one to be created (E: a8f81c56377cdbdeb468af6b21879825)");return i}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}async doPrompt_functionCalls_addFunctionCallRequestComment({functionInfoIbGibs:e}){let t=`${this.lc}[${this.doPrompt_functionCalls_addFunctionCallRequestComment.name}]`;try{x&&console.log(`${t} starting... (I: 5000adac5e8c4a7158a720c38f56b325)`);let o=this._metaspace;if(!o)throw new Error("(UNEXPECTED) metaspace falsy? (E: d7275731461d8d0526af3088553ae525)");let i=await this.getSuperSpace(),s=yt({tagText:In,contentText:e.map(p=>S({ibGib:p})).join(`
|
|
186
|
+
`),randomIdLength:4}),l=Pt({textSrc:"ai",other:"functionCallRequest"}),c=await ot({text:s,addlMetadataText:l,saveInSpace:!0,space:i}),d=await $e({type:"rel8",src:c.newIbGib,rel8nsToAddByAddr:{[uo]:e.map(p=>S({ibGib:p}))},dna:!0,nCounter:!0}),u=d.newIbGib;await o.persistTransformResult({resTransform:d,space:i}),await o.registerNewIbGib({ibGib:u,space:i}),await this.addTexts({infos:[{textSrc:"ai",commentIbGib:u}]})}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}async doPrompt_functionCalls_getTransientDecompressionPromptForNextPrompt({functionInfoIbGibs:e}){let t=`${this.lc}[${this.doPrompt_functionCalls_getTransientDecompressionPromptForNextPrompt.name}]`;try{x&&console.log(`${t} starting... (I: c245f78f6c78a98d62375a9f14b3d625)`);let o=[];for(let i of e)try{let s=S({ibGib:i});if(!i.data)throw new Error(`(UNEXPECTED) !functionInfoIbGib.data? functionInfoAddr: ${s} (E: 7815e4854513c26b889517a9bd7e0d25)`);let{fnRawRequest:l,fnComplete:c,fnResult:d}=i.data,p=yt({tagText:s,contentText:M({fnRawRequest:l,fnComplete:c,fnResult:d}),randomIdLength:void 0});o.push(p)}catch(s){console.error(`${t} could not call functionImpl: ${E(s)} (E: 2a3b8b37e146c524b67119e3a74e3d25)`)}return o.join(`
|
|
187
|
+
`)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{x&&console.log(`${t} complete.`)}}repromptCount=0;repromptMax=12;async rePrompt(){let e=`${this.lc}[${this.rePrompt.name}]`;try{x&&console.log(`${e} starting... (I: b6af34214acf07f9ca8c1d03c0011525)`),this.repromptCount<this.repromptMax?(this.repromptCount++,await this.doPrompt()):(console.log(`${e} already reached repromptMax (${this.repromptMax}). reprompt aborting. $(I: dacefb501dab2a1ee173ce8558657725)`),this.repromptCount=0)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{x&&console.log(`${e} complete.`)}}async witness(e){if(e.ib===Qt&&e.gib===ht)return this.getComments_Chat().length>0&&await this.doPrompt(),W;throw new Error(`arg (${M(e)}) not implemented. only expect ${W} right now to trigger doPrompt. (E: 24da0ad7333b6bbb359d1be425db3c25)`)}};var k=J,Ke=class n extends po{static{f(this,"AgentWitnessGemini_V1")}lc=`[${n.name}]`;async validateThis(){let e=`${this.lc}[${this.validateThis.name}]`;try{k&&console.log(`${e} starting... (I: 641e211473fc54d5a9ebb4ea44944d25)`);let t=await super.validateThis();return this.data&&console.warn(`${e} do more validation on this concrete class. (W: fb778a84ccca2ebcefd2ca7845543825)`),t}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{k&&console.log(`${e} complete.`)}}parseAddlMetadataString({ib:e}){let t=`${this.lc}[${this.parseAddlMetadataString.name}]`;try{throw k&&console.log(`${t} starting... (I: 080daf4b73f8bb52c70bf0a8f329be25)`),new Error("not implemented...i've just converted agent witness to a full witness with context and this was the only abstract method required. wasn't being used previously? so i'm not sure why this is here. (E: 129e816d3698f3867ec54c34fcc9a225)")}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{k&&console.log(`${t} complete.`)}}async addTexts(e){let t=`${this.lc}[${this.addTexts.name}]`;try{let o=Ae();await o.updateOrSetLatestAgent({agent:this,throwIfNewerFound:!1});let i=this._metaspace;if(!i)throw new Error("(UNEXPECTED) metaspace falsy? (E: fd92a81901a83e2698ab2c3d4e702f25)");if(e.infos.length===0)return console.warn(`${t} opts.infos.length === 0. So we've called addTexts but with an empty array? returning early. (W: 0d42cd3b26aec45874d0e65450b37d25)`),[];let s=[],l=[],c=[],d=await this.getSuperSpace();for(let h of e.infos){let{textSrc:m,isSystem:g}=h,{text:b,commentIbGib:y}=h;if(b&&y)throw new Error("(UNEXPECTED) both text and commentIbGib provided? (E: a3fd590db1a5efc301f3c7e66b322f25)");if(!b&&!y)throw new Error("(UNEXPECTED) both text and commentIbGib falsy? one or the other is required (E: e08c7c694a17319085adfb75914b2725)");let w=Pt({textSrc:m});if(y)k&&console.log(`${t} adding existing commentIbGib (I: 72a3f7aafde92f65b168d27605f94625)`);else{if(k&&console.log(`${t} creating new commentIbGib for text (I: 72a3f7aafde92f65b168d27605f94625)`),!b)throw new Error("(UNEXPECTED) text falsy still? at this point it should be guaranteed (E: b2deec458f35f22298ccb664d0685125)");y=(await ot({text:b,addlMetadataText:w,saveInSpace:!0,space:d})).newIbGib,await i.registerNewIbGib({ibGib:y,space:d})}if(!y)throw new Error("(UNEXPECTED) commentIbGib still falsy? we should have just created one if it didn't exist (E: 9370b19aa207234db185cd74b57be525)");let I=await go({ibGib:y});if(I.length>0)throw new Error(`validation errors with trying to add a commentIbGib. errors: ${I} (E: beee1893050f9bcf9842c66831595225)`);s.push(y),g?l.push(y):c.push(y)}let u=[];l.length>0&&u.push({rel8nName:"system",ibGibs:l}),c.length>0&&u.push({rel8nName:"chat",ibGibs:c});let p=await xo({timeline:this.toIbGibDto(),rel8nInfos:u,timelineIndexInfo:{rel8nName:lt,type:this.data.type},metaspace:i,space:d});return await this.loadIbGibDto(p),await o.updateOrSetLatestAgent({agent:this,throwIfNewerFound:!0}),s}catch(o){throw console.error(`${t} ${E(o)}`),o}}async composePromptInfo(){let e=`${this.lc}[${this.composePromptInfo.name}]`;try{if(k&&console.log(`${e} starting... (I: 155774d4811b038034342d5750174325)`),!this._metaspace)throw new Error("this.metaspace falsy (E: 7232a3a1b4348d460ed1375b32677125)");let t=[];for(let p of this.commentIbGibs_system){let h=await this.createPromptInfoEntriesFromGeminiComment({commentIbGib:p});t.push(...h)}let o=this.data?.["@currentContextTjpAddr"]??re;if(o!==re&&t.push({src:K.HARDCODED,content:{role:Wt(K.HARDCODED),parts:[{text:dc({currentContextTjpAddr:o})}]}}),this.commentIbGibs_chat.length===0)throw new Error("(UNEXPECTED) this.commentIbGibs_chat.length === 0? why are we composing prompt info? We are assumed at this point to have added at least one comment ibgib to this agent. (E: a4e3d840946ab8e6dc3fde3e25d6b225)");let i=[],s=this.commentIbGibs_chat.length>1?this.commentIbGibs_chat.slice(0,-1):[];for(let p of s){let h=await this.createPromptInfoEntriesFromGeminiComment({commentIbGib:p});i.push(...h)}let l,c=this.commentIbGibs_chat.at(-1),d=await this.createPromptInfoEntriesFromGeminiComment({commentIbGib:c});if(d.length===1)l=d.at(0);else if(d.length===2)i.push(d.at(0)),l=d.at(1);else throw new Error("(UNEXPECTED) chatPromptCurrent_rawarray.length !== 1 or 2? We expect at this point either a regular text part or a FCR comment which creates two entries. (E: cd59f978479c20e496da4b0eb86c7d25)");let u={api:"gemini",systemPromptEntries:t,chatPromptHistoryParts:i,chatPromptCurrent:l};return k&&console.log(`${e} resPromptInfo:`,M(u),"(I: 8f17a8c45b9a91e20a5c5064d9114a25)"),u}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{k&&console.log(`${e} complete.`)}}async callTextAPI(e){let t=`${this.lc}[${this.callTextAPI.name}]`;try{if(k&&console.log(`${t} starting... (I: 27885f5b14682646542e9658417b2f25)`),!ac(e))throw new Error("(UNEXPECTED) info.api !== gemini? we are in the gemini concrete class where this is assumed. (E: 9223647ec96fb3f4eaee32c3fc15d925)");if(!this.data)throw new Error("(UNEXPECTED) this.data falsy? (E: 09224b6688fdac884ce88f196b68a425)");let{api:o,model:i}=this.data;if(o!=="gemini")throw new Error(`api not supported: ${o} (E: 7e5c7c17988a666a86e72299630c7f25)`);k&&console.log(`${t} calling gemini api with model: ${i} (I: 6208942a419e9041bb037384135a0c25)`);let s=await this.fnGetAPIKey();if(!s)return console.error(`${t} apiKey falsy. did you set this.fnGetAPIKey (E: d964596b1538c0327209a92e97a54d25)`),{text:"no api key entered so no LLM chat happening. enter a gemini api key and donate/invest!"};this._genAI??=new Bt({apiKey:s});let l=Array.from(this.availableFunctions.values()).map(T=>({name:T.nameOrId,description:T.schema?.description,parameters:T.schema?.parameters}));l.some(T=>T.parameters==="undefined")&&console.error(`${t} (UNEXPECTED) function schema parameters not defined for all APIFunctionInfo values. (E: ae7227cdd65c0ab4513c7b282a1e4825)`),k&&(console.log(`${t} Gemini functionDeclarations:`),console.dir(l));let{systemPromptEntries:c,chatPromptHistoryParts:d,chatPromptCurrent:u}=e,p=L(u);k&&console.log(`chatPromptCurrent_final (before decompression): ${M(p)} (I: bbd4c7b9f3225afe9da1761918d0ac25)`),k&&console.warn(`${t} skipping decompression for the moment. if we add decompression text when the last comment is a function response part, then we'll error out. Need to rethink compression/decompression with the new function call/response workflow. (W: 7478439f9bbbde30a1eab3c5189ea625)`);let h,m=f(async T=>{if(!this._genAI)throw new Error("(UNEXPECTED) this._genAI falsy? (E: 503a0d9e3f729de7653ee3565b017b25)");let _=d.map(B=>B.content),C={model:T,history:_,config:{systemInstruction:pr({systemPromptEntries:c}),tools:[{functionDeclarations:l}],toolConfig:{functionCallingConfig:{mode:e.overrideFunctionCallingMode??Rn.ANY}}}},v=this._genAI.chats.create(C),P={message:u.content.parts};return await v.sendMessage(P)},"fnGoModel"),g=0,b=i;do{g++;try{h=await m(b);break}catch(T){let _=T.message,C=T.status??"[STATUS?]";_.includes(`${503}`)?(console.error(`${t}[fnGoModel][${b}] error trying to get result from model. will try using backup model (${wt}) for this next call. error (${T.status}): ${E(T)} (E: a5cd7d174183518058da57cc6d0d8a25)`),b=wt):_.includes(`${429}`)?(console.error(`${t}[fnGoModel][${b}] error trying to get result from model. will try using backup model (${wt}) for this next call. error (${T.status}): ${E(T)} (E: a5cd7d174183518058da57cc6d0d8a25)`),b=wt):console.error(`${t}[fnGoModel][${b}] error trying to get result from model. error (${T.status}): ${E(T)} (E: a67d595c8ed313d458369d4d0b3e7f25)`)}await fe(2e3)}while(!h&&g<oi);if(!h)throw new Error("couldn't get result from model (E: ede013a53f875d99a96a2e257c7e7125)");let y=h,w=[],I=y.candidates?.[0]?.content?.parts||[];for(let T of I)T.functionCall&&w.push(T.functionCall);if(!w||w.length===0){if(k&&console.warn(`${t} no function calls in response, returning text. (W: 3a4b8c940983b9e28e3f04c01a09bb25)`),!y.text)throw new Error("response generated no function calls and no response.text (E: 6123b8cacfb834105ad3160cfc4ef825)");return{text:y.text}}return k&&(console.log(`${t} Gemini function calls:`),console.dir(w)),{functionCalls:w.map(T=>JSON.stringify(T,null,2))}}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{k&&console.log(`${t} complete.`)}}async createPromptInfoEntriesFromGeminiComment({commentIbGib:e}){let t=`[${this.createPromptInfoEntriesFromGeminiComment.name}]`;try{k&&console.log(`${t} starting... (I: 826a9d6b120d96532afbe1f7a22e8d25)`);let o=await go({ibGib:e});if(o.length>0)throw new Error(`validation errors with commentIbGib. Cannot create a prompt info entry. errors: ${o} (E: beee1893050f9bcf9842c66831595225)`);let{safeIbCommentMetadataText:i}=nt({ib:e.ib});if(!i)throw new Error("(UNEXPECTED) addlMetaDataText falsy? we just validated the comment ibgib, so there should be the expected shape of the comment.ib. (E: facf5801f9ba158b1526dd09d0e1b325)");let{textSrc:s,timestampInTicks:l,errorMsg:c,other:d}=Xt({addlMetadataText:i,ifError:"warn"});if(c)throw new Error("(UNEXPECTED) errorMsg is truthy after parse addl metadata from comment.ib? we just validated the comment ibgib, so there should be the expected shape of the comment.ib. (? (E: 7fd7fac50851916f39ceccbe93446425)");if(!e.data)throw new Error("(UNEXPECTED) commentIbGib.data falsy? (E: 8ce54d28219237feddf8f25b5846cc25)");if(!e.data.text)throw new Error("(UNEXPECTED) commentIbGib.data.text falsy? (E: 8556fc95c401d1b5441454fceb8f2f25)");if(hr({ibGib:e})){let p=await this.getFunctionInfoIbGibs({fcrCommentIbGib:e}),h=[],m=[];for(let y of p){let{call:w,response:I}=mr({functionInfoIbGib:y});if(!w)throw new Error("(UNEXPECTED) call falsy? (E: 5c8f3bd6de3b300e1c105b9603bb7b25)");if(!I)throw new Error("(UNEXPECTED) response falsy? (E: d0388c838975c93126c1a6d64f781d25)");if(w.functionCall.name!==I.functionResponse.name)throw new Error("(UNEXPECTED) functionCall.name !== functionResponse.name? (E: e49f0d60093354db2b6ad17fdf86d425)");h.push(w),m.push(I)}let g={src:K.AI,content:{role:Wt("ai"),parts:h}},b={src:K.FUNCTION,content:{role:Wt(K.FUNCTION),parts:m}};return[g,b]}else return[{src:s,content:{role:Wt(s),parts:[{text:e.data.text}]}}]}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{k&&console.log(`${t} complete.`)}}async promptOneOff(e){let t=`${this.lc}[${this.promptOneOff.name}]`;try{k&&console.log(`${t} starting... (I: genuuid)`);let{text:o,systemInstructions:i}=e;if(!o)throw new Error("(UNEXPECTED) opts.text falsy? (E: genuuid)");if(!this.data)throw new Error("(UNEXPECTED) this.data falsy? (E: genuuid)");let{api:s,model:l}=this.data;if(s!=="gemini")throw new Error(`api not supported: ${s} (E: genuuid)`);k&&console.log(`${t} calling gemini api with model: ${l} (I: genuuid)`);let c=await this.fnGetAPIKey();if(!c){console.error(`${t} apiKey falsy. did you set this.fnGetAPIKey (E: genuuid)`);return}this._genAI??=new Bt({apiKey:c});let d=f(async b=>{if(!this._genAI)throw new Error("(UNEXPECTED) this._genAI falsy? (E: fbe235713d48f0d8e87cd0b88ec54825)");let y={model:b,config:{systemInstruction:i}},I=await this._genAI.chats.create(y).sendMessage({message:o});if(I.text)return I.text;throw new Error("response.text empty/falsy, potentially blocked by safety settings (E: a21a78c9471f27a42c07d1c859187825)")},"fnGoModel"),u,p=0,h=[];e.modelOverrides&&e.modelOverrides.length>0?h.push(...e.modelOverrides):h.push(l),e.modelBackupOverrides&&e.modelBackupOverrides.length>0?h.push(...e.modelBackupOverrides):h.push(wt);let m=0,g=1;do{p++,g++;let b=h[m];try{u=await d(b);break}catch(y){if(y instanceof Error){let w=y.message,I=y.status??"[STATUS?]";if(w.includes(`${503}`))if(m===h.length-1)console.error(`${t}[fnGoModel][${b}] error trying to get result from model: GEMINI_ERROR_STATUS_MODEL_OVERLOADED ${503}. we are already using the final backup model in our modelsToTry, so SOL here. will try again... error (${I}): ${E(y)} (E: 9bb63cb520b8bd3bb85d2ca20715c825)`);else{m++;let T=h[m];console.error(`${t}[fnGoModel][${b}] error trying to get result from model: GEMINI_ERROR_STATUS_MODEL_OVERLOADED ${503}. will try using the next model (${T}) for this next call. error (${I}): ${E(y)} (E: b07a041bb97ea95b03cd6f9856f01525)`)}else if(w.includes(`${429}`))if(m===h.length-1)console.error(`${t}[fnGoModel][${b}] error trying to get result from model: GEMINI_ERROR_STATUS_RATE_QUOTA_EXCEEDED ${429}. we are already using the final backup model, so SOL here. will try again... error (${I}): ${E(y)} (E: d280c441aa37579bb2cfd29038202525)`);else{m++;let T=h[m];console.error(`${t}[fnGoModel][${b}] error trying to get result from model: GEMINI_ERROR_STATUS_RATE_QUOTA_EXCEEDED ${429}. will try using the next model (${T}) for this next call. error (${I}): ${E(y)} (E: a9869883fc72bf156f1691183e27ee25)`)}else console.error(`${t}[fnGoModel][${b}] error trying to get result from model. error (${I}): ${E(y)} (E: a67d595c8ed313d458369d4d0b3e7f25)`)}else console.error(`${t}[fnGoModel][${b}] (UNEXPECTED) error is not instanceof Error? The expected error from the @google/genai lib is supposed to be an instance of Error according to Gemini migration AI. (E: 15df95701e78b35f783d250801092825)`)}p>1&&await fe(g*1e3)}while(!u&&p<oi);return u}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{k&&console.log(`${t} complete.`)}}async getFunctionInfoIbGibs({fcrCommentIbGib:e}){let t=`[${this.getFunctionInfoIbGibs.name}]`;try{k&&console.log(`${t} starting... (I: 976a684b7ae58cda523b17fc0c62e325)`);let o=[];if(!e)throw new Error(`${t} fcrCommentIbGib is falsy. (E: a01c80f415ab8737a81b7b2a2f479f25)`);if(!e.data)throw new Error(`${t} fcrCommentIbGib.data is falsy. (E: a03bc3662a8d6f69c1c077605727a025)`);let i=this._metaspace;if(!i)throw new Error("(UNEXPECTED) this.metaspace falsy. (E: 997d071847c5d7e80692f48191244e25)");let s=await this.getSuperSpace();if(!s)throw new Error("(UNEXPECTED) superSpace falsy? (E: dd1600f15e1e659c01f73991656a3325)");let l=e.rel8ns?.[uo]??[];if(l.length===0)return k&&console.warn(`${t} no functionInfoAddrs (I: 5f8965e92c305689c11677a1148b7425)`),[];k&&console.log(`${t} functionInfoAddrs: ${l} (I: e7b1f5a4576c493326b913e48a505e25)`);let c=await i.get({addrs:l,space:s});if(!c.success||!c.ibGibs||c.ibGibs.length!==l.length)throw new Error(`${t} could not retrieve function info ibgibs. errorMsg: ${c.errorMsg??"unknown error (E: 164246a6661d49f2b21d1b6769139625)"} (E: 0736d824876e420f91c089925191d425)`);return o=c.ibGibs,k&&console.log(`${t} resFunctionInfoIbGibs: ${M(o.map(d=>S({ibGib:d})))} (I: a5661b5c449608f0e8d773135a599a25)`),o}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{k&&console.log(`${t} complete.`)}}async loadIbGibDto(e){let t=`[${this.loadIbGibDto.name}]`;try{if(k&&console.log(`${t} starting... (I: cb0b1e9e22fce321ca9a26e7a5d4c825)`),await super.loadIbGibDto(e),!this.data)throw new Error("(UNEXPECTED) this.data falsy after load dto? (E: 77aecd066b0bbbd0c66e2658519bdb25)");let o=this._metaspace;if(!o)throw new Error("(UNEXPECTED) metaspace falsy? (E: e5762b1e3f77f84ca338641edc011225)");let i=await this.getSuperSpace(),s=f(async()=>{this.availableFunctions=new Map;for(let d of this.data.availableFunctionNameOrIds){if(!d)throw new Error("(UNEXPECTED) nameOrId falsy, driven by this.data.availableFunctionNameOrIds? somehow a falsy nameOrId saved? (E: 7b63f177624de2415e1569e96ef8d125)");let u=ft().get(d);u?this.availableFunctions.set(d,u):fr().includes(d)?k&&console.log(`${t} function nameOrId (${d}) found as deprecated. not adding to available functions on agent. (I: 983864ad5cd8af915fb135580e455425)`):console.error(`no function info in getAllFunctionInfos() found corresponding to nameOrId (${d}) and this was not found in getDeprecatedFunctionInfoNames(). this is logged here but we're not throwing. (E: db0da9880cf1e414c3f1078d3e9f0b25)`)}let l=this.rel8ns?.system??[];if(l.length>0){let d=await o.get({addrs:l,space:i});if(!d.success||d.errorMsg)throw new Error(`couldn't get system comments. error: ${E(d.errorMsg??"unknown error (E: c0b4d7aab724bcf58e88ffd496de8825)")} (E: 7925d4b5ec3a8f7a648c109941c38a25)`);if((d.ibGibs??[]).length!==l.length)throw new Error("(UNEXPECTED) (resGet_systemComments.ibGibs ?? []).length !== rel8dAddrs_system.length, but resGet.success truthy and resGet.errorMsg falsy? (E: 2055553b602e6c2fe49e956a1e423f25)");this.commentIbGibs_system=d.ibGibs}let c=this.rel8ns?.chat??[];if(c.length>0){let d=await o.get({addrs:c,space:i});if(!d.success||d.errorMsg)throw new Error(`couldn't get chat comments. error: ${E(d.errorMsg??"unknown error (E: c0b4d7aab724bcf58e88ffd496de8825)")} (E: 7925d4b5ec3a8f7a648c109941c38a25)`);if((d.ibGibs??[]).length!==c.length)throw new Error("(UNEXPECTED) (resGet_chatComments.ibGibs ?? []).length !== rel8dAddrs_chat.length, but resGet.success truthy and resGet.errorMsg falsy? (E: 2055553b602e6c2fe49e956a1e423f25)");this.commentIbGibs_chat=d.ibGibs}},"fn");await Fe({scope:"prune",secondsValid:60,maxDelayMs:100,maxLockAttempts:1800,space:i,callerInstanceId:Te(),fn:s})}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{k&&console.log(`${t} complete.`)}}};setTimeout(()=>{Ae().registerFactory({classname:Ke.name,fnDtoToAgentWitness:f(async e=>e.data?e.data.classname?e.data.classname===Ke.name?{applies:!0,agent:await br({agentIbGib:e})}:{applies:!1}:{applies:!1}:{applies:!1},"fnDtoToAgentWitness")})});function dc({currentContextTjpAddr:n}){let e=`[${dc.name}]`;try{k&&console.log(`${e} starting... (I: 7edafbba277d57eae51af325cf7eb225)`);let t=ce({ibGibAddr:n});return`Your current context ibGibAddr is ${n}
|
|
188
|
+
It is very important that you use THIS context address. THIS context address takes precedence over previous contexts in your system chat history, because those chats may be from previous sessions per the user's POV. If there are any doubts, like if you're saying something and the user is not responding, then this may be the reason. You should call the function to get your context to be sure you are talking in the right one.`}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{k&&console.log(`${e} complete.`)}}f(dc,"getTextPartForCurrentContextTjpAddr");var Qe=J,bo=class n{static{f(this,"CreateConcreteAgentWitnessFactory_Gemini")}lc=`[${n.name}]`;arg;constructor(e){this.arg=e}async createInitialData(e){let t=`${this.lc}[${this.createInitialData.name}]`;try{Qe&&console.log(`${t} starting... (I: f4c8ac488804666077cfc2237972d625)`);let{name:o,api:i,model:s,type:l,availableFunctions:c}=this.arg;if(!s)throw new Error("(UNEXPECTED) model falsy? (E: ee7286c772a37fa86236c85f96233625)");if(!e.data)throw new Error("(UNEXPECTED) superSpace.data falsy? (E: 858d5950b9ef7a0175482a51caaf9c25)");if(!e.data.uuid)throw new Error("(UNEXPECTED) superSpace.data.uuid falsy? (E: 08867535db1b254d73c050bd5086e525)");let d=L(ea);return o&&(d.name=o),d.uuid=await Ie(),d.superSpaceId=e.data.uuid,d.api=i,d.model=s,d.type=l,d.availableFunctionNameOrIds=c.map(u=>u.nameOrId),d.classname=Ke.name,d}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{Qe&&console.log(`${t} complete.`)}}async createInitialRel8ns(){let e=`${this.lc}[${this.createInitialRel8ns.name}]`;try{return Qe&&console.log(`${e} starting... (I: 2d4933ea3761bd7df701d8d306fb2825)`),ii?L(ii):void 0}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{Qe&&console.log(`${e} complete.`)}}async createWitness(){let e=`[${this.createWitness.name}]`;try{Qe&&console.log(`${e} starting... (I: 36709dfa0c398d63d64c4f6ba9055625)`);let{api:t,model:o}=this.arg;if(t==="gemini"){let i=new Ke;return await i.initialized,i}else throw new Error(`(UNEXPECTED) unknown api: ${t}? only 'gemini' currently implemented (E: 2d1cb22ce787c6c42d4532c260320125)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{Qe&&console.log(`${e} complete.`)}}};async function br({agentIbGib:n}){let e=`[${br.name}]`;try{Qe&&console.log(`${e} starting... (I: 5a4efefba9e4bdfb942afbe7919fff25)`);let t=new Ke;return await t.initialized,await t.loadIbGibDto(n),t.fnGetAPIKey=async()=>await ns({dbName:es(),storeName:await jr(),key:await ts()})??"",t}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{Qe&&console.log(`${e} complete.`)}}f(br,"agentIbGibDtoToWitness");var Z=J;async function jo({metaspace:n,space:e,createIfNone:t}){let o=`[${jo.name}]`;try{if(Z&&console.log(`${o} starting... (I: ad1594767abce66ca80fea8c8d89f325)`),e??=await n.getLocalUserSpace({lock:!1}),!e)throw new Error("(UNEXPECTED) space falsy after getting local user space? (E: bc68d97d46dcf1d15dd74edba200b725)");let i=await zr({metaspace:n,space:e});if(!i.rel8ns)throw new Error("(UNEXPECTED) tagsIbGib.rel8ns falsy? (E: dc50e8d218fe5e30bbaec7f37d484525)");let l=(i.rel8ns[Dr]??[]).filter(u=>{let{ib:p}=pe({ibGibAddr:u});return p===Jr}),c,d;if(l.length===0){if(t){Z&&console.log(`${o} creating new agents tag... (I: 47f4f4fa89f1a1bba960e0a6ff5f5225)`);let{newTagIbGib:u}=await n.createTagIbGib({text:Hr,icon:Br,description:Wr,space:e});return d=u,Z&&console.log(`${o} creating new agents tag complete. (I: 5f41d644f2b692348377f918057cf225)`),u}}else l.length===1?(c=l.at(0),Z&&console.log(`${o} exactly one agent tag addr found (${c}) in space (${e.ib}) (I: 7ef995963313c966216097760d0cdb25)`)):(c=l.at(0),console.error(`${o} more than one agent tag found in space (${e.ib})? Well, we're returning just the first one (${c}), but really we've not coded for this edge/future case. (E: 52a4e2e49d3c0d644df483119b46f125)`));if(c){let u=await n.get({addrs:[c],space:e});if(u.success&&u.ibGibs?.length===1)return d=u.ibGibs.at(0),d;throw new Error(`couldn't get agentTagAddr (${c}) in space (${e.ib}) (E: 53d9cdb7b769014a2de15871484cc325)`)}else throw new Error(`agentTagAddr not found, so there ain't no agents tag, and createIfNone was ${t}. (E: 54cb3164a118105f187e936613ff4625)`)}catch(i){throw console.error(`${o} ${E(i)}`),i}finally{Z&&console.log(`${o} complete.`)}}f(jo,"getTag_Agents");async function Tn({metaspace:n,type:e,spaceId:t,space:o}){let i=`[${Tn.name}]`;try{if(Z&&console.log(`${i} starting... (I: 41037d1926051c4b051769069f518f25)`),o??=await n.getLocalUserSpace({localSpaceId:t,lock:!1}),!o)throw new Error(`couldn't get local user space by id (${t}) (E: fe96076e79fb227c0ae2de077eb5e225)`);if(!await n.getSpecialIbGib({type:e,initialize:!0,dontWarnIfNotExist:!0,lock:!1,space:o}))throw new Error("(UNEXPECTED) couldn't initialize/get agents special ibgib? (E: 1abe0e2543711744adbdb7026b242e25)");let l=await n.getSpecialRel8dIbGibs({rel8nName:lt,type:e,space:o})??[],c=[];for(let d of l){if(d.data?.api!=="gemini")throw new Error("(UNEXPECTED) agentIbGib.data.api !== gemini? only gemini is implemented right now. (E: 7348fe8c68565bcf88a4052458f42d25)");let u=Ae(),p=await u.getLatestAgent({id:d.data.uuid});if(!p){if(p=await u.getAgentWitnessFromDto({dto:d}),!p){debugger;throw new Error(`(UNEXPECTED) couldn't get actual agent witness from agent dto? have we registered classname (${d.data?.classname}) and factory fn with agents service? (E: bcbfdf6446793ac34d6f6118e050d325)`)}await u.updateOrSetLatestAgent({agent:p,throwIfNewerFound:!1})}c.push(p)}return c}catch(s){throw console.error(`${i} ${E(s)}`),s}finally{Z&&console.log(`${i} complete.`)}}f(Tn,"getAgents");async function gr({metaspace:n,type:e,space:t,newAgentIbGib:o}){await f(async()=>{let s=`[${gr.name}]`;try{if(Z&&console.log(`${s} starting... (I: bf6ff6bf4132eaa943eaa3af1ee17225)`),!o.data)throw new Error("(UNEXPECTED) newAgentIbGib.data falsy? (E: 26e03d0a8e286ac3a13b678a50c87a25)");if(!o.data.uuid)throw new Error("(UNEXPECTED) newAgentIbGib.data.uuid falsy? (E: 31b753e01275272484ea93e3dfe53225)");let c=await Ae().getLatestAgent({id:o.data.uuid});if(c&&c.data.n>o.data.n){debugger;throw new Error(`latestInMemory.data!.n! > newAgentIbGib.data.n! ... in plain english, this means that there is a more recent (higher n) agent with the given agent's id (${o.data.uuid}) already in existence, but the caller is trying to update the special ibgib index with the older agent. (E: 5c0c028075736f22072c55e20a0c7e25)`)}let d=S({ibGib:o});await tt({type:o.data.type,rel8nInfos:[{rel8nName:lt,ibGibs:[ne({ibGib:o})]}],metaspace:n,space:t})}catch(l){throw console.error(`${s} ${E(l)}`),l}finally{Z&&console.log(`${s} complete.`)}},"fn")()}f(gr,"updateAgentIndex");async function Er({ibGib:n,metaspace:e,space:t}){let o=`[${Er.name}]`;try{if(Z&&console.log(`${o} starting...`),!n)throw new Error("ibGib required (E: 753a0aa13e4e5ea20d7f6bb92d963625)");let i=await en({ibGib:n,metaspace:e,space:t,scope:"agent",skipGetLatest:!1});if(!i){console.warn(`${o} couldn't find agent for domain ibGib (${n.ib}) (W: 9536a8e67fe83ddc819c476f5a50c825)`);return}let s=de({ibGib:n,defaultIfNone:"incomingAddr"}),l=S({ibGib:i}),d=await Ae().getAgentByAddr({agentAddr:l,metaspace:e,spaceId:t.data.uuid});return Z&&console.log(d?`${o} complete. Found agent ${S({ibGib:d})} for domain ${s}`:`${o} complete. No agent found for ibgib tjp ${s}`),d}catch(i){throw console.error(`${o} ${E(i)}`),i}}f(Er,"getAgentForDomainIbGib");function ei(n){let e=`[${ei.name}]`;try{Z&&console.log(`${e} starting... (I: 2a9899514ac6e478eb55819a57fd9725)`);let{api:t}=n;switch(t){case"gemini":return new bo(n);default:throw new Error(`(UNEXPECTED) api: ${t}? only 'gemini' currently implemented? (E: 071fedab181fda80666858c14ea73625)`)}}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{Z&&console.log(`${e} complete.`)}}f(ei,"getConcreteAgentFactory");function yt({tagText:n,contentText:e,randomIdLength:t}){let o=`[${yt.name}]`;try{Z&&console.log(`${o} starting... (I: 94104ec059c89d4ba458d96580791d25)`);let i=t?`${n}|${pt({count:t})}`:n;return[`[${i} begin]`,e,`[${i} end]`].join(`
|
|
189
|
+
`)}catch(i){throw console.error(`${o} ${E(i)}`),i}finally{Z&&console.log(`${o} complete.`)}}f(yt,"taggifyForPrompt");function Pt({textSrc:n,other:e}){let t=`[${Pt.name}]`;return e?[n,Te(),e].join("_"):[n,Te()].join("_")}f(Pt,"getAddlMetadataTextForAgentText");function Xt({addlMetadataText:n,ifError:e="warn"}){let t=`[${Pt.name}]`;try{Z&&console.log(`${t} starting... (I: 89b8b19a8d785b945fe0f816df762d25)`);let[o,i,...s]=n.split("_");if(!o)throw new Error("addlMetadataText.textSrc falsy (E: 40bbec4269c1688ab1390fa5d5440325)");if(!zs(o))throw new Error(`addlMetadataText.textSrc (${o}) is unexpected value. Expected one of ${zo} (E: 02bae41275a39210e5737548747bd825)`);if(!i)throw new Error("addlMetadataText.timestampInTicks falsy (E: 03cbbc7515a1cff1fc7c12e3947c6825)");let l=Number.parseInt(i);if(Number.isNaN(l))throw new Error(`invalid timestampInTicks (${i}): value should be an integer but parse is NaN (E: 9d31e3563d972c02553ce18a19a19b25)`);return{textSrc:o,timestampInTicks:l,other:s.length>0?s:void 0}}catch(o){let i=`${t} ${E(o)}`;switch(e){case"ignore":return{textSrc:K.UNKNOWN,timestampInTicks:0,errorMsg:E(o)};case"warn":return console.warn(`${t} ${i} (W: 3e1f4a98ad6461c9bd96462841c31b25)`),{textSrc:K.UNKNOWN,timestampInTicks:0,errorMsg:E(o)};default:throw console.error(`${t} ${i} (E: 6396ed44947c52adf85788e1adc22825)`),new Error(i)}}finally{Z&&console.log(`${t} complete.`)}}f(Xt,"parseAddlMetadataTextForAgentText");function ti({data:n}){let e=`[${ti.name}]`,{name:t,uuid:o,type:i}=n;if(!t)throw new Error(`${e} data.name falsy (E: 4c172c5b8a110ae26479b8c4006f3225)`);if(!o)throw new Error(`${e} data.uuid falsy (E: 67d2c79ac39e70e5ecfd1745e1fd3525)`);if(!i)throw new Error(`${e} data.type falsy (E: 53bf1f9a145a16be81296437682a7a25)`);if([t,o,i].some(l=>l.includes(" ")))throw new Error("invalid data. ib must not contain spaces in name, uuid, type. (E: 36a56e4685163848458be06f51d4ad25)");return[bt,t,o,i].join(" ")}f(ti,"getAgentIb");function Zs({ib:n}){let[e,t,o,i]=n.split(" ");if(e!==bt)throw new Error(`invalid ib. first term expected to e an atom: ${bt} (E: 3c01d42035d2e32c4bfd5c1bf363f725)`);if(!t)throw new Error("invalid ib. name falsy in agent ib (E: 8b494c544f05b8ef9c866078b761a725)");if(!o)throw new Error("invalid ib. uuid falsy in agent ib (E: aba195db3ddcb000324ebed15351b725)");if(!i)throw new Error("invalid ib. type falsy in agent ib (E: 8c814772394ae76342f95e885570c325)");return{atom:e,name:t,uuid:o,type:i}}f(Zs,"parseAgentIb");async function go({ibGib:n}){let e=`[${go.name}]`;try{Z&&console.log(`${e} starting... (I: f9a733a5a05b7f7494836d86a79e2d25)`);let t=await Ne({ibGib:n})??[];if(!it({ibGib:n}))return t.push(`${e} not a comment ibgib (E: 08676d94c698c6e42e6c35e94a58f125)`),t;let{safeIbCommentMetadataText:o}=nt({ib:n.ib});if(o){let i=Xt({addlMetadataText:o,ifError:"warn"});i.errorMsg&&t.push(`${e} could not parse addlMetadataText: ${i.errorMsg} (E: e178265c33e5e94947a02c1f9d6a7425)`)}else t.push(`${e} addlMetadataText falsy. this implies something is incorrect with the comment's ib, as we expect agent comments to have certain metadata (e.g. textSrc). See AgentWitness_V1 (and data interface) for more info. (E: 7c3c41c973a67256c432604666106b25)`);return t}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{Z&&console.log(`${e} complete.`)}}f(go,"validateAgentWitnessCommentIbGib");var Eo="settings",dg="general",ug="text-editor",fg="projects",pg="projects-explorer",hg="projects-dropdown",mg="project",gg="minigame",bg="chronologys",De={general:dg,textEditor:ug,projects:fg,projectsExplorer:pg,projectsDropdown:hg,project:mg,minigame:gg,chronologys:bg},Eg=Object.values(De);var yr={type:De.general,editor:void 0,readonly:!0,viewer:"ibgib-raw-viewer"},wr={type:De.textEditor,wrap:"wrap"},yg={type:De.project,openChildTjpAddrs:[],activeChildTjpAddr:void 0,lensMode:"raw"},wg={type:De.minigame},Ig={type:De.chronologys,openChildTjpAddrs:[],activeChildTjpAddr:void 0},uc={sections:{},children:{}};var Ze=J;async function Ir({ibGib:n}){let e=`[${Ir.name}]`;try{Ze&&console.log(`${e} starting... (I: 57ac4c0a3448bc5e98ecf5bfb02ce825)`);let{ib:t}=pe({ibGib:n}),o=t.split(" ").at(0);if(!o)throw new Error("(UNEXPECTED) atom falsy? we split the ib by spaces (space-delimiter). this makes no sense. (E: 6a9ea640ae38823aeefc6ec82a05d625)");return`${Eo}_${o}`}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{Ze&&console.log(`${e} complete.`)}}f(Ir,"getSettingsScope");async function Ue({settingsType:n,useCase:e}){let t=`[${Ue.name}]`;try{if(Ze&&console.log(`${t} starting... (I: f13dff111048421cad5453f821487825)`),e.includes("_"))throw new Error("(UNEXPECTED) settingsType.includes('_')? should be kebab-cased or camelCased (E: 8f75e89b9378819ab882cc1870f1e825)");if(n.includes("_"))throw new Error("(UNEXPECTED) settingsType.includes('_')? should be kebab-cased or camelCased (E: 1d316b0808287c12689d1e882648b825)");return[n,e].join("_")}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{Ze&&console.log(`${t} complete.`)}}f(Ue,"getSectionName");async function yo({sectionName:n,settingsIbGib:e}){let t=`[${yo.name}]`;try{if(Ze&&console.log(`${t} starting... (I: 266554b13f6ce6daa85c882f04805825)`),!e.data)throw new Error("(UNEXPECTED) settingsIbGib.data falsy? (E: dd3708f0515fb0b4d4024f4d336a3625)");if(!e.data.sections)throw new Error("(UNEXPECTED) settingsIbGib.data.sections falsy? what was the settingsIbGib even created for? (E: 31f85898a1c854e13440e278a79ceb25)");return(e.data.sections??{})[n]}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{Ze&&console.log(`${t} complete.`)}}f(yo,"getSettingsSection");function fc({scope:n}){let e=`[${fc.name}]`;try{return n.includes(" ")&&(console.warn(`${e} scope includes one or more spaces. These will be converted to double underscores. (W: 75a53c623d3110b5e874e5789b414325)`),n=n.replace(/ /g,"__")),`${Eo} ${n}`}catch(t){throw console.error(`${e} ${E(t)}`),t}}f(fc,"getSettingsIb");async function Tr({scope:n,metaspace:e,space:t,saveInSpace:o}){let i=`[${Tr.name}]`;try{let s=fc({scope:n}),l=await pc(),d=await H.firstGen({parentIbGib:H.primitive({ib:Eo}),ib:s,data:l,rel8ns:void 0,dna:!0,nCounter:!0,tjp:{timestamp:!0,uuid:!0}});if(o){if(!e)throw new Error("metaspace falsy but saveInSpace is true (E: f91adfe38d78e6e4f8bca278fce37925)");await e.persistTransformResult({resTransform:d,space:t}),await e.registerNewIbGib({ibGib:d.newIbGib,space:t})}return d}catch(s){throw console.error(`${i} ${E(s)}`),s}}f(Tr,"createSettings");async function pc(){let n=`[${pc.name}]`;try{Ze&&console.log(`${n} starting... (I: 3d7cc3f242cc88ad28dafaf85d646a25)`);let e=L(uc),t=await Ue({settingsType:"general",useCase:"default"}),o=await Ue({settingsType:"general",useCase:"current"});e.sections[t]=L(yr),e.sections[o]=L(yr);let i=await Ue({settingsType:"text-editor",useCase:"default"}),s=await Ue({settingsType:"text-editor",useCase:"current"});return e.sections[i]=L(wr),e.sections[s]=L(wr),e}catch(e){throw console.error(`${n} ${E(e)}`),e}finally{Ze&&console.log(`${n} complete.`)}}f(pc,"getDefaultSettingsData");var G=J,wo=class n{static{f(this,"IbGibDynamicComponentMetaBase")}lc=`[${n.name}]`;componentName="";routeRegExp=void 0;fnHandleRoute=void 0;fnGetMetaspace;bootstrapPromise;constructor({fnGetMetaspace:e,bootstrapPromise:t}){this.fnGetMetaspace=e,this.bootstrapPromise=t}},Io=class n extends HTMLElement{static{f(this,"IbGibDynamicComponentInstanceBase")}lc=`[${n.name}]`;elements;createdPromise;settings;get agent(){return this.agents.at(0)}agents=[];get ib(){let{ib:e}=pe({ibGibAddr:this.ibGibAddr??re});return e}get gib(){let{gib:e}=pe({ibGibAddr:this.ibGibAddr??re});return e}ibGibAddr=re;ibGibProxy;get ibGib(){let e=this.ibGibAddr??re,{ib:t,gib:o}=pe({ibGibAddr:e});return this.ibGibAddr&&!je({gib:o})?this.ibGibProxy?.ibGib:H.primitive({ib:t})}get tjpAddr(){return this.ibGib?de({ibGib:this.ibGib,defaultIfNone:"incomingAddr"}):void 0}meta;html;css;static get observedAttributes(){return["ibGibAddr"]}_instanceId;get instanceId(){return this._instanceId}agentsInitialized;connectedCount=0;get isBusy(){return!1}async getMetaspace(){let e=`${this.lc}[${this.getMetaspace.name}]`;try{if(G&&console.log(`${e} starting... (I: 956418cf932823bc767ccc6a0fd2b325)`),!this.meta)throw new Error("(UNEXPECTED) this.meta falsy? (E: dd2bfae6c0e84b1d58c72e2922b51325)");return await this.meta.fnGetMetaspace()}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}}constructor(){super(),this._instanceId=pt({count:8})}async initialize(e){let{ibGibAddr:t,meta:o,html:i,css:s}=e,l=`${this.lc}[${this.initialize.name}]`;try{G&&console.log(`${l} starting... (I: c9b94131bc2f0d20e1397c214dad6725)`),this.ibGibAddr=t,this.meta=o,this.html=i,this.css=s,this.attachShadow({mode:"open"}),await this.meta.bootstrapPromise}catch(c){throw console.error(`${l} ${E(c)}`),c}finally{G&&console.log(`${l} complete.`)}}async initAgents(){let e=`${this.lc}[${this.initAgents.name}]`;G&&console.log(`${e} does nothing in base class (I: 0b31a650b942619a0e36a1a7f763e825)`)}async connectedCallback(){let e=`${this.lc}[${this.connectedCallback.name}]`;try{G&&console.log(`${e} starting... (I: 01bbbf69f1c75b03a29e7a85ebd2c725)`),this.connectedCount++,this.connectedCount===1?await this.connectedCallback_initComponent():await this.connectedCallback_reconnectComponent()}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}}async connectedCallback_initComponent(){let e=`${this.lc}[${this.connectedCallback_initComponent.name}]`;try{if(G&&console.log(`${e} starting... (I: bc4af3f6751d841f51bad19e334efa25)`),!this.html)throw new Error("(UNEXPECTED) this.html is falsy? (E: a0a0ab7c8f987d78058dd7cad09a5125)");let t=document.createElement("template");if(t.innerHTML=this.css?`
|
|
190
|
+
<style>
|
|
191
|
+
${this.css.join(`
|
|
192
|
+
`)}
|
|
193
|
+
</style>
|
|
194
|
+
${this.html}
|
|
195
|
+
`:this.html,!this.shadowRoot)throw new Error("(UNEXPECTED) this.shadowRoot is falsy? (E: 1a3cf77d87767aaff37d31657ee73f25)");this.shadowRoot.appendChild(t.content),this.createdPromise=this.created(),await this.createdPromise}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}}async connectedCallback_reconnectComponent(){let e=`${this.lc}[${this.connectedCallback_reconnectComponent.name}]`;try{G&&console.log(`${e} starting... (I: 7fccefbeff68c0dda15642ebaa1eb525)`),console.log(`${e} does nothing in base class (I: 724bc670d4ccb0fde2b2fa49830cd425)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}}async disconnectedCallback(){let e=`${this.lc}[${this.disconnectedCallback.name}]`;try{G&&console.log(`${e} starting... (I: 6f3b25c23fb874b1ac513e8f0d1f4e25)`),await this.disconnected()}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}}async attributeChangedCallback(e,t,o){let i=`${this.lc}[attributeChangedCallback]`;G&&console.log(`${i} starting... (I: 33cd68579171582166d25d8898640f25): ${e} ${t} => ${o}`),console.warn(`${i} nothing done in base class atow (W: 9eb93eb8fde7c0058c79cea841936a25)`)}async destroy(){let e=`${this.lc}[${this.destroy.name}]`;try{G&&console.log(`${e} starting... (I: 536989c9491b544105b6d01a688fbb25)`),await this.destroyed()}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}}async destroyed(){let e=`${this.lc}[${this.destroyed.name}]`;try{G&&console.log(`${e} starting... (I: f34f3ca04b06b1e00ebe04df22331125)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}return G&&console.log(`${e} does nothing in the base class. (I: d9437f962e0aec40d69ad6159e7b5725)`),Promise.resolve()}async loadIbGib(e){let t=`${this.lc}[${this.loadIbGib.name}]`;try{G&&console.log(`${t} starting... (I: 4dcb1b7a3d86f3415ca7224c07126925)`);let o=e?.getLatest??!1;if(this.ibGib){console.warn(`${t} this.ibGib already loaded. idempotently returning early without doing anything. (W: 15498d346a32e884acec108cb3c8ee25)`);return}if(je({gib:pe({ibGibAddr:this.ibGibAddr??re}).gib})){G&&console.log(`${t} component loading primitive ibgib (I: 3349796ef6139c1e718c8626c7935625)`);return}let i=await this.getMetaspace(),s=await i.getLocalUserSpace({lock:!1});if(!s)throw new Error("(UNEXPECTED) local user space falsy? (E: bb093b7e9781064e8db9a4390b63bb25)");if(o){let h=await i.getLatestAddr({addr:this.ibGibAddr,space:s});h&&h!==this.ibGibAddr&&(this.ibGibAddr=h)}let l=await i.get({addrs:[this.ibGibAddr],space:s});if(!l.success||l.ibGibs?.length!==1)throw new Error(`couldn't get ibGib (${this.ibGibAddr}) in space (${s?.ib??"undefined"}) (E: 59c3461bebf3e0065df72bd1bd8dc125)`);let c=l.ibGibs.at(0),d=new Xe;if(await d.initialized,!d.contextUpdated$)throw new Error("(UNEXPECTED) ibGibProxy.contextUpdated$ falsy? (E: 351dfc898d2c3da2d7928079cec14925)");if(d.contextUpdated$.subscribe(_e({next:f(async h=>{let m=`${t}[ibGibProxy.contextUpdated$][next]`;G&&console.log(`${m} nextIbGib: ${M(h)} (I: 96c846357b94fda2cefa615aed88c325)`),await this.handleContextUpdated()},"next"),error:f(async h=>{debugger;console.error(`${t}[ibGibProxy.contextUpdated$][error] what up? ${E(h)}`)},"error")})),!d.newContextChild$)throw new Error("(UNEXPECTED) ibGibProxy.newContextChild$ falsy? (E: 2cbde5ab402cc6d81259c74d68bca725)");d.newContextChild$.subscribe(_e({next:f(async h=>{let m=`${t}[ibGibProxy.contextUpdated$][next]`;G&&console.log(`${m} childIbGib: ${M(h)} (I: 96c846357b94fda2cefa615aed88c325)`),await this.handleNewContextChild({childIbGib:h})},"next"),error:f(async h=>{debugger;console.error(`${t}[ibGibProxy.contextUpdated$][error] what up? ${E(h)}`)},"error")}));let u=await d.witness(s),p=await d.witness(c);this.ibGibProxy=d,this.ibGibAddr=S({ibGib:d.ibGib})}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{G&&console.log(`${t} complete.`)}}async handleContextUpdated(){let e=`${this.lc}[${this.handleContextUpdated.name}]`;try{let{ibGib:t}=this;this.ibGibAddr=t?S({ibGib:t}):re,G&&console.log(`${e} context updated. this.ibGibAddr (I: 64e5876f58cc54b5af777c94f13a4325)`)}catch(t){throw console.error(`${e} ${E(t)}`),t}}async handleNewContextChild({childIbGib:e}){let t=`${this.lc}[${this.handleNewContextChild.name}]`;try{G&&console.log(`${t} child added to contextcontext updated. childIbGib: ${M(e)} (I: 07d02c9182c6629cbbacd39fd0ff7f25)`),console.log(S({ibGib:e}))}catch(o){throw console.error(`${t} ${E(o)}`),o}}async renderUI(){let e=`${this.lc}[${this.renderUI.name}]`;try{if(G&&console.log(`${e} starting... (I: 7e5704afe17fb937c8473e7801f56e25)`),this.ibGib){let{punctiliarColor:t,punctiliarColorTranslucent:o,punctiliarColorContrast:i,tjpColor:s,tjpColorTranslucent:l,tjpColorContrast:c,errorMsg:d}=Kr({ibGib:this.ibGib,translucentAlpha:10});d?console.error(`${e} ${d} (E: 65e0d330d029c1fe39f3d6280dda3725)`):(this.style.setProperty("--ibgib-color",t),this.style.setProperty("--ibgib-color-translucent",o),this.style.setProperty("--ibgib-color-contrast",i),this.style.setProperty("--tjp-color",s??t),this.style.setProperty("--tjp-color-translucent",l??o),this.style.setProperty("--tjp-color-contrast",c??"lime"))}await this.renderUI_busy()}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}}async renderUI_busy(){}async loadAgentsCoupledToIbGib({dontThrowIfNone:e}={}){let t=`${this.lc}[${this.loadAgentsCoupledToIbGib.name}]`;try{let o=await this.getMetaspace(),i=await o.getLocalUserSpace({lock:!1});if(!i)throw new Error("(UNEXPECTED) space falsy? we couldn't get the default local user space? (E: 06f5be2eec8abaa54d42ad982a155925)");if(!this.ibGib)throw new Error("(UNEXPECTED) this.ibGib falsy? (E: 9b24c4b4aa491a21b58fde9185eb9325)");let s=await Er({ibGib:this.ibGib,metaspace:o,space:i});if(s){let l=s.data.n;await s.setActiveContext({contextIbGib:this.ibGib,loggingInfo:this.lc}),await fe(32);let c=s.data.n;l!==c&&console.warn(`${t} setting active context for agent changed agent.data.n.
|
|
196
|
+
agent.data: ${M(ne({ibGib:s}))}
|
|
197
|
+
ibGib.data: ${ne({ibGib:this.ibGib})} (W: cb22e8b064d8c2d7b3b2c488ed169225)`),this.agents=[s]}else if(e)console.warn(`(UNEXPECTED) agent falsy? an agent should have been created and registered with the ibGib (${S({ibGib:this.ibGib})}) (W: e4219903462baab438a23c786d714825)`);else throw new Error(`(UNEXPECTED) agent falsy? an agent should have been created and registered with the ibGib (${S({ibGib:this.ibGib})}) (E: 7182d1aa070b9578c78a5b8b401d8425)`)}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{G&&console.log(`${t} complete.`)}}async getSettings({settingsType:e,useCase:t}){let o=`${this.lc}[${this.getSettings.name}]`;try{if(G&&console.log(`${o} starting... (I: 00c8dbedd2e8a8b988cc45f4186efd25)`),!this.settings)throw new Error("(UNEXPECTED) this.settings falsy? shouldn't this be initialized by now? (E: ceae480e28fab1da38b8def8b1060d25 (E: dc7d984c1c64293a3c3e0628dedadb25)");if(!this.settings.ibGib)throw new Error("(UNEXPECTED) this.settings.ibGib falsy? shouldn't this be initialized by now? especially since this.settings is truthy? (E: faef6878abaf00a4a6a6f6b85ce8c825)");let i=await yo({sectionName:await Ue({settingsType:e,useCase:t}),settingsIbGib:this.settings.ibGib});return i||G&&console.log(`${o} settingsSection does not exist. returning undefined. (I: 0462d83f5ae8049708274b88e9b0d825)`),i}catch(i){throw console.error(`${o} ${E(i)}`),i}finally{G&&console.log(`${o} complete.`)}}async updateSettings({settingsType:e,useCase:t,newSectionInfo:o}){let i=`${this.lc}[${this.updateSettings.name}]`;try{G&&console.log(`${i} starting... (I: 80ce98cf386e0c04d30e8b15ac0f2925)`);let s=await Ue({settingsType:e,useCase:t}),l=await Go({timeline:this.settings.ibGib,metaspace:await this.getMetaspace(),mut8Opts:{dataToAddOrPatch:{sections:{[s]:o}}}});await fe(100)}catch(s){throw console.error(`${i} ${E(s)}`),s}finally{G&&console.log(`${i} complete.`)}}async getCurrentSettings({settingsType:e}){let t=`${this.lc}[${this.getCurrentSettings.name}]`;try{if(G&&console.log(`${t} starting... (I: da0baee73e386089a8c059f83cc43825)`),!this.settings)return;let o=await Ue({settingsType:e,useCase:"current"});return yo({sectionName:o,settingsIbGib:this.settings.ibGib})}catch(o){throw console.error(`${t} ${E(o)}`),o}finally{G&&console.log(`${t} complete.`)}}async initSettings(){let e=`${this.lc}[${this.initSettings.name}]`;try{if(G&&console.log(`${e} starting... (I: acfee8787d32a6075442e2887a386a25)`),!this.ibGib)throw new Error("(UNEXPECTED) this.ibGib falsy? (E: 8ce2e73bea87b9330b131778a3981825)");let t=await this.getMetaspace(),o=await t.getLocalUserSpace({lock:!1});if(!o)throw new Error("(UNEXPECTED) couldn't get default local user space? (E: f77ce7269a6f0d7ad8978349b4c6cd25)");if(je({ibGib:this.ibGib})){console.error(`${e} this.ibGib is primitive, so what are we initializing settings for? (W: 9915089019b81c6935b32ae877095825)`);return}let i=await Ir({ibGib:this.ibGib}),s=await en({scope:i,ibGib:this.ibGib,metaspace:t,space:o});if(s||(s=(await Tr({scope:i,metaspace:t,space:o,saveInSpace:!0})).newIbGib,await So({scope:i,domainIbGib:this.ibGib,localIbGib:s,metaspace:t,space:o})),!s)throw new Error("(UNEXPECTED) settings falsy still? should be initialized. (E: a179adcbbab800cff849b8aa95fbe425)");let l=new Xe;if(await l.setWrappedIbGib({ibGib:s,space:o}),this.settings=l,!await this.getCurrentSettings({settingsType:De.general}))throw new Error("(UNEXPECTED) no current general settings? the settings should have been updated with this upon creation. (E: d10fd8d42b58d917180293a713009825)")}catch(t){throw console.error(`${e} ${E(t)}`),t}finally{G&&console.log(`${e} complete.`)}}async exportIbGib({ibGib:e,compress:t}){let o=`${this.lc}[${this.exportIbGib.name}]`;try{G&&console.log(`${o} starting... (I: 623d9463d919683be81f749821a95825)`);let i=await this.getMetaspace();if(!i)throw new Error("(UNEXPECTED) metaspace falsy? (E: 3d15dbd074ac0c15b834a788d0b57d25)");if(je({ibGib:e}))throw new Error("ibGib is primitive. Can't export primitive. (E: dd42c42e9fda0707e81c692af1a2a225)");let s=await i.getLocalUserSpace({lock:!1});if(!s)throw new Error("(UNEXPECTED) couldn't get default local user space? (E: 7bb735be58282f1bd7abe5d9ffabb525)");await Zr({ibGib:e,compress:t,metaspace:i,space:s})}catch(i){throw console.error(`${o} ${E(i)}`),i}finally{G&&console.log(`${o} complete.`)}}async importIbGib({exportIbGibJsonString:e,rel8nName:t,force:o,skipRegisterTimelines:i,divergentTimelineStrategy:s}){let l=`${this.lc}[${this.importIbGib.name}]`;try{let c=await this.getMetaspace(),d=await c.getLocalUserSpace({lock:!1});if(!d)throw new Error("(UNEXPECTED) couldn't get default local user space? (E: 947c983e57a91aa00c8c185320354325)");let[u,p]=await Qr({exportIbGibJsonString:e,metaspace:c});if(!u.data)throw new Error("(UNEXPECTED) rawExportIbGib.data falsy? this is assumed validated at this point. (E: 6bc4e84db08e3c6228b2c40c2ea50825)");let h=u.data.contextIbGibAddr,m=!1;if(!o){let g=await c.get({addr:h,space:d});g.success&&(g.ibGibs??[]).length===1&&(console.log(`${l} export's ibGib addr (${h}) already exists in the space, so we're skipping doing any physical importing of the export's graph. (I: 429b5bdcd0585c697869f568c4673825)`),m=!0)}if(!m){Ao;let g=[],b=[];Object.values(p).forEach(N=>{xr({ibGib:N})?g.push(N):b.push(N)});let y=await c.put({ibGibs:g,isDna:!0,space:d,force:o});if(!y.success||y.errorMsg)throw new Error(`there was an error putting the export's dna ibgibs into the space (${d.ib}). error: ${y.errorMsg||"[unknown error (E: 7c7ef8d5281399b1d8f3fbeefba1b825)]"} (E: ce3e8b982208afc4889164ba20a31825)`);let{mapWithTjp_YesDna:w,mapWithTjp_NoDna:I,mapWithoutTjps:T}=Ao({ibGibs:b}),_=await c.put({ibGibs:Object.values(T),space:d,force:o});if(!_.success||_.errorMsg)throw new Error(`there was an error putting the export's non-dna stone ibgibs (no-tjp) into the space (${d.ib}). error: ${_.errorMsg||"[unknown error (E: dc17f8ee7aed5c445f8b827f274b0825)]"} (E: 9561364961e89c132818f6784a607825)`);let C={...w,...I},v=Object.values(C),P=await c.put({ibGibs:v,space:d,force:o});if(!P.success||P.errorMsg)throw new Error(`there was an error putting the export's timeline ibgibs into the space (${d.ib}). error: ${P.errorMsg||"[unknown error (E: be4a28961574765798c8d3686ae89c25)]"} (E: 066796a23da3c9f748558fd25bfdf525)`);if(!i){let N=qr({ibGibs:v}),B=Object.values(N);for(let $ of B){let U=$.at(-1);if(!U)throw new Error("(UNEXPECTED) latestInTimeline falsy? this would mean that we had an empty timeline, and this doesn't make sense... (E: 3bec09e79768cc39d8029f4fe3af9825)");let z=await c.getLatestAddr({ibGib:U,space:d});!1||await c.registerNewIbGib({ibGib:U,space:d})}}}throw new Error("not implemented (E: 66c308e420e848c8d7cd01c8fddf8425)")}catch(c){throw console.error(`${l} ${E(c)}`),c}finally{G&&console.log(`${l} complete.`)}}};var hc="space-gib-keystone-creator",To=class extends wo{static{f(this,"KeystoneCreatorComponentMeta")}lc="[KeystoneCreatorComponentMeta]";routeRegExp=new RegExp(`^${hc}$`);componentName=hc;constructor(){super(is()),customElements.get(this.componentName)||customElements.define(this.componentName,_r)}async createInstance({path:e,ibGibAddr:t}){let o=`${this.lc}[${this.createInstance.name}]`,i=document.createElement(this.componentName);return await i.initialize({ibGibAddr:t,meta:this,html:ws,css:[ys]}),i}},_r=class extends Io{static{f(this,"KeystoneCreatorComponentInstance")}lc="[KeystoneCreatorComponentInstance]";constructor(){super()}async initialize(e){await super.initialize(e)}async created(){this.elements={},this.elements.containerEl=this.shadowRoot.getElementById("container"),this.elements.titleEl=this.shadowRoot.getElementById("title"),this.elements.btnGenerateEl=this.shadowRoot.getElementById("btn-generate"),this.elements.resultAreaEl=this.shadowRoot.getElementById("result-area"),this.elements.keystoneAddrEl=this.shadowRoot.getElementById("keystone-addr"),this.elements.inputSecret=this.shadowRoot.getElementById("input-secret"),this.elements.statusArea=this.shadowRoot.getElementById("status-area"),this.elements.statusText=this.shadowRoot.getElementById("status-text"),this.elements.contentEl=this.elements.containerEl,this.initHandlers(),this.ibGibAddr&&!this.ibGib&&await this.loadIbGib(),await this.renderUI()}async disconnected(){}initHandlers(){this.elements.btnGenerateEl.addEventListener("click",()=>this.handleGenerate())}async handleGenerate(){let e=`${this.lc}[${this.handleGenerate.name}]`;try{console.log(`${e} [NAG][ibgib-paradigm] starting genesis orchestration...`),this.setLoading(!0),this.setStatus("Initializing genesis...","info"),Ve("Starting local genesis orchestration...");let t=this.elements.inputSecret.value;if(!t){this.setStatus("Please enter a master secret.","error"),Ve("\u2717 Please enter a master secret.");return}let o=[{id:"primary",type:rs.hash_reveal_v1,salt:"primary_pool_salt",algo:$r.sha_256,rounds:1,behavior:{size:3,replenish:ss.topUp,selectSequentially:1,selectRandomly:0,targetBindingChars:0},allowedVerbs:[]}],i=await Pe(),s=await i.getLocalUserSpace({});if(!s)throw new Error("No default space found in metaspace.");let c=await new as().genesis({masterSecret:t,configs:o,metaspace:i,space:s,frameDetails:{client:"space-gib-web",timestamp:Date.now()}}),d=S({ibGib:c});console.log(`${e} [NAG][ibgib-paradigm] local genesis complete: ${d}`),this.setStatus("Local genesis complete. Syncing to server...","info"),Ve(`\u2713 Local genesis complete: ${d}`),window.dev_domainI=c,window.dev_domainIMasterSecret=t,Ve("Posting genesis keystone to server...");let u=await ls.postGenesisKeystone(c);if(!u.success){this.setStatus(`Sync failed: ${u.message}`,"error"),Ve(`\u2717 Server rejected genesis keystone: ${u.message}`);return}this.elements.keystoneAddrEl.textContent=d,this.elements.statusArea.classList.remove("hidden"),this.setStatus("Keystone successfully created and synced!","success"),Ve("\u2713 Keystone successfully created and synced!")}catch(t){let o=E(t);console.error(`${e} ${o}`),this.setStatus(`Error: ${o}`,"error"),Ve(`\u2717 Error: ${o}`)}finally{this.setLoading(!1)}}setLoading(e){this.elements.btnGenerateEl.disabled=e,this.elements.btnGenerateEl.textContent=e?"Generating...":"Generate Identity Keystone"}setStatus(e,t){this.elements.statusText.textContent=e,this.elements.statusText.className=`status-msg ${t}`}async renderUI(){}async handleContextUpdated(){await this.renderUI()}};var Cr=class{static{f(this,"SpaceGibShellService")}lc="[SpaceGibShellService]";initialized;leftPanelState="collapsed";rightPanelState="collapsed";isResizingLeft=!1;isResizingRight=!1;isResizingFooter=!1;constructor(){this.initialized=this.initialize()}async initialize(){this.initElements(),this.initEventHandlers(),await this.registerComponents()}initElements(){let e=`${this.lc}[${this.initElements.name}]`;try{this.updateCssVariables()}catch(t){console.error(`${e} ${E(t)}`)}}initEventHandlers(){let e=`${this.lc}[${this.initEventHandlers.name}]`;try{let t=document.getElementById(ms);t&&t.addEventListener("click",()=>this.toggleLeftPanel());let o=document.getElementById(gs);o&&o.addEventListener("click",()=>this.toggleRightPanel());let i=document.getElementById(fs);i&&(i.addEventListener("mousedown",()=>{this.leftPanelState==="expanded"&&(this.isResizingLeft=!0)}),i.addEventListener("dblclick",()=>this.toggleLeftPanel()));let s=document.getElementById(ps);s&&(s.addEventListener("mousedown",()=>{this.rightPanelState==="expanded"&&(this.isResizingRight=!0)}),s.addEventListener("dblclick",()=>this.toggleRightPanel()));let l=document.getElementById(hs);l&&l.addEventListener("mousedown",()=>this.isResizingFooter=!0),window.addEventListener("mousemove",d=>this.handleMouseMove(d)),window.addEventListener("mouseup",()=>this.handleMouseUp());let c=document.getElementById(bs);c&&c.addEventListener("click",()=>this.showKeystoneCreator())}catch(t){console.error(`${e} ${E(t)}`)}}async showKeystoneCreator(){let e=`${this.lc}[${this.showKeystoneCreator.name}]`;try{this.leftPanelState==="collapsed"&&this.toggleLeftPanel(),this.rightPanelState==="collapsed"&&this.toggleRightPanel();let o=await(await Lt()).getComponentInstance({path:"space-gib-keystone-creator",ibGibAddr:re,useRegExpPrefilter:!0}),i=document.getElementById(ds);i&&o&&(i.innerHTML="",i.appendChild(o))}catch(t){console.error(`${e} ${E(t)}`)}}toggleLeftPanel(){this.leftPanelState=this.leftPanelState==="expanded"?"collapsed":"expanded";let e=document.getElementById(cs);e&&(this.leftPanelState==="collapsed"?e.classList.add("collapsed"):e.classList.remove("collapsed"))}toggleRightPanel(){this.rightPanelState=this.rightPanelState==="expanded"?"collapsed":"expanded";let e=document.getElementById(us);e&&(this.rightPanelState==="collapsed"?e.classList.add("collapsed"):e.classList.remove("collapsed"))}handleMouseMove(e){if(!(!this.isResizingLeft&&!this.isResizingRight&&!this.isResizingFooter)){if(e.preventDefault(),this.isResizingLeft){let t=Math.max(100,Math.min(e.clientX,600));document.documentElement.style.setProperty("--left-panel-width",`${t}px`)}if(this.isResizingRight){let t=Math.max(100,Math.min(window.innerWidth-e.clientX,600));document.documentElement.style.setProperty("--right-panel-width",`${t}px`)}if(this.isResizingFooter){let t=Math.max(24,Math.min(window.innerHeight-e.clientY,400));document.documentElement.style.setProperty("--footer-panel-height",`${t}px`)}}}handleMouseUp(){this.isResizingLeft=!1,this.isResizingRight=!1,this.isResizingFooter=!1}updateCssVariables(){}async registerComponents(){let e=`${this.lc}[${this.registerComponents.name}]`;try{let t=[new To],o=await Lt();for(let i of t)o.registerComponentMeta(i)}catch(t){throw console.error(`${e} ${E(t)}`),t}}async onEngineReady(){let e=`${this.lc}[${this.onEngineReady.name}]`;try{await this.initialized,console.log(`${e} SpaceGib Shell Service is ready.`);let t=document.getElementById("status-section");t&&(t.style.display="none"),window.dispatchEvent(new CustomEvent(Es,{detail:{timestamp:Date.now()}}))}catch(t){console.error(`${e} ${E(t)}`)}}};function A_(){let n="[getSpaceGibShellSvc]",e=os(Yr);return e.spaceGibShellSvc||(typeof console<"u"&&console.log(`${n} initializing SpaceGibShellService singleton on globalThis... (I: genuuid)`),e.spaceGibShellSvc=new Cr),e.spaceGibShellSvc}f(A_,"getSpaceGibShellSvc");export{et as a,_e as b,xo as c,Go as d,on as e,$s as f,ot as g,it as h,rn as i,Ec as j,rt as k,st as l,Lo as m,Xo as n,Xe as o,mw as p,gw as q,K as r,bw as s,Ae as t,ft as u,cg as v,Pt as w,Eo as x,A_ as y};
|
|
198
|
+
/*! Bundled license information:
|
|
199
|
+
|
|
200
|
+
@google/genai/dist/web/index.mjs:
|
|
201
|
+
(**
|
|
202
|
+
* @license
|
|
203
|
+
* Copyright 2025 Google LLC
|
|
204
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
205
|
+
*)
|
|
206
|
+
|
|
207
|
+
@google/genai/dist/web/index.mjs:
|
|
208
|
+
(**
|
|
209
|
+
* @license
|
|
210
|
+
* Copyright 2025 Google LLC
|
|
211
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
212
|
+
*)
|
|
213
|
+
|
|
214
|
+
@google/genai/dist/web/index.mjs:
|
|
215
|
+
(**
|
|
216
|
+
* @license
|
|
217
|
+
* Copyright 2025 Google LLC
|
|
218
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
219
|
+
*)
|
|
220
|
+
|
|
221
|
+
@google/genai/dist/web/index.mjs:
|
|
222
|
+
(**
|
|
223
|
+
* @license
|
|
224
|
+
* Copyright 2025 Google LLC
|
|
225
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
226
|
+
*)
|
|
227
|
+
|
|
228
|
+
@google/genai/dist/web/index.mjs:
|
|
229
|
+
(**
|
|
230
|
+
* @license
|
|
231
|
+
* Copyright 2025 Google LLC
|
|
232
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
233
|
+
*)
|
|
234
|
+
*/
|
|
235
|
+
//# sourceMappingURL=chunk-RHEDTRKF.mjs.map
|