@opencxh/domain 1.228.0 → 1.229.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ export {};
@@ -123,6 +123,79 @@ export interface WorkProject {
123
123
  createdAt?: number;
124
124
  updatedAt?: number;
125
125
  }
126
+ /**
127
+ * A cycle: a named, dated box of work inside one project.
128
+ *
129
+ * A software team calls it a sprint, a case team calls it a phase. The same thing, and the
130
+ * reason it is not a `WorkProject` with dates: a project has a *series* of these. Put the dates
131
+ * on the project and there is exactly one, and every next one costs you a new ladder, a new field
132
+ * set, a new key prefix and a new access gate. The project is the unit of *work*; the cycle is
133
+ * the unit of *time*.
134
+ *
135
+ * Deliberately **not** a scope kind. You do not link a cycle, read it as text or hang memory on
136
+ * it — it is a column value on the item, and the only screen that addresses it is the project's
137
+ * own. {@link WorkItem.cycleId} carries the membership.
138
+ */
139
+ export interface WorkCycle {
140
+ id: string;
141
+ organizationId: string;
142
+ /** A cycle without a project does not exist; it inherits the project's `ownerScope`. */
143
+ projectId: string;
144
+ /** Free text — "Sprint 14", "Fase 3". No number column: the form suggests the next name. */
145
+ name: string;
146
+ /** One sentence. What this cycle is for. */
147
+ goal?: string;
148
+ /** Planned window, epoch ms. What it says it will be, not what it was. */
149
+ startDate: number;
150
+ endDate: number;
151
+ /**
152
+ * When it actually began and ended, epoch ms.
153
+ *
154
+ * **These two are the state**, and there is deliberately no `state` column beside them:
155
+ * `completedAt` set *is* "completed" and `startedAt` without it *is* "active", so an enum
156
+ * next to them would be the same truth stored twice with nothing keeping the two in step.
157
+ * Read them through {@link cycleState}.
158
+ *
159
+ * And not derived from `startDate`/`endDate` either: starting and completing are **acts**. A
160
+ * cycle planned Mon–Fri and begun on Tuesday is running with a start date in the past, and one
161
+ * whose end date passed on Friday is still running until Monday's meeting. Dates would flip it
162
+ * at midnight and move the numbers out from under people.
163
+ */
164
+ startedAt?: number;
165
+ completedAt?: number;
166
+ /**
167
+ * The promise, counted at the moment of starting — never at the end.
168
+ *
169
+ * That is the whole point of a cycle number: counted on completion, an item that was added on
170
+ * Wednesday is indistinguishable from what the team committed to on Monday, and making that
171
+ * difference visible is what these two exist for.
172
+ */
173
+ committedCount?: number;
174
+ committedSeconds?: number;
175
+ /** Written once, when the cycle is completed. See {@link WorkCycleSummary}. */
176
+ summary?: WorkCycleSummary;
177
+ /** Ids of this cycle in source systems. Empty on one created here. */
178
+ externalIds?: string[];
179
+ createdBy: string;
180
+ createdAt?: number;
181
+ updatedAt?: number;
182
+ }
183
+ /**
184
+ * What a cycle delivered, frozen at completion.
185
+ *
186
+ * One row written once, not a nightly snapshot: items move, so a burndown needs a daily series —
187
+ * but "what did this team get done in the last eight cycles" needs eight rows and no rollup at
188
+ * all. Compare against {@link WorkCycle.committedCount}, which was counted at the start.
189
+ */
190
+ export interface WorkCycleSummary {
191
+ completed: number;
192
+ /** Open items that moved on — to the next cycle or back to the backlog. */
193
+ carriedOver: number;
194
+ completedSeconds: number;
195
+ }
196
+ /** Where a cycle stands. Derived, because the two timestamps already say it. */
197
+ export type WorkCycleState = "planned" | "active" | "completed";
198
+ export declare function cycleState(cycle: Pick<WorkCycle, "startedAt" | "completedAt">): WorkCycleState;
126
199
  export type WorkPriority = "low" | "normal" | "high" | "urgent";
127
200
  /** Where an item came from — a person or something automatic. */
128
201
  export interface WorkItemSource {
@@ -170,6 +243,21 @@ export interface WorkItem {
170
243
  /** {@link WorkResolution.key}. Only meaningful when the status falls in category `done`. */
171
244
  resolution?: string;
172
245
  parentId?: string;
246
+ /**
247
+ * The {@link WorkCycle} this item is planned into. Absent = the backlog.
248
+ *
249
+ * A scalar column and not a key in {@link WorkItem.keys}, and the reason is not taste: that
250
+ * column is written down two paths that disagree. `restampKeys` **rebuilds** it from
251
+ * `deriveKeys(...)` on every link and unlink, while the import **unions** into it. A cycle key
252
+ * in there would survive or vanish depending on which path touched the row last.
253
+ *
254
+ * It is also the only shape that can answer the backlog's question. "Which items are in no
255
+ * cycle" is `cycleId: null` — this store has no `$exists`, and over an array column the
256
+ * question cannot be put at all.
257
+ *
258
+ * Only root items carry one; a subtask follows its parent.
259
+ */
260
+ cycleId?: string;
173
261
  /**
174
262
  * The id of the parent **at the source**, for an imported item.
175
263
  *
package/dist/index.cjs CHANGED
@@ -6,27 +6,27 @@
6
6
  `)}
7
7
  `}const Ie=e=>`user:${e}`,Me=e=>`team:${e}`;function ri(e){const t=new Set;for(const n of e??[])n?.id&&(n.kind==="user"&&t.add(Ie(n.id)),n.kind==="team"&&t.add(Me(n.id)));return[...t].sort()}function ii(e,t){return[Ie(e),...t.map(Me)]}function oi(e){const t=new Set;for(const n of e??[])n?.kind&&t.add(n.kind);return[...t]}const bt=["done","escalated"],ai=["open","waiting"];function si(e){return bt.includes(e)}const It="assignment";function ci(e){return`${It}:${e}`}function li(e,t,n,r){if(e.direction==="inbound")return!0;if(e.author?.type==="user"&&e.author.id===t)return!1;const i=e.payload?.mentions;return Array.isArray(i)&&i.includes(t)||r&&r===t?!0:n==="reply"}function ui(e){const{targetAuthorId:t,reactorId:n,agentId:r,on:i}=e;return!i||!t||t!==r?!1:n!==r}function di(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}const Mt=12;function pi(e,t,n=Mt){const r=t+1;return e?e.kind==="done"?{status:"done",waitingOn:null,turns:r,reason:e.note}:e.kind==="escalate"?{status:"escalated",waitingOn:null,turns:r,reason:e.reason}:r>=n?{status:"escalated",waitingOn:null,turns:r,reason:`na ${n} beurten nog niet afgerond, dus een mens neemt het over`}:{status:"waiting",waitingOn:e.on,turns:r}:{status:"escalated",waitingOn:null,turns:r,reason:"de agent rondde zijn beurt af zonder te zeggen wat er moet gebeuren (wachten, afronden of overdragen)"}}const fi=new Set(["mail","message"]);function Ot(e,t){const n=e.settings?.signatures?.[t];return!n?.enabled||!n.body||n.body.trim()===""?null:n}function mi(e,t,n,r="html"){if(!e)return n;const i=Ot(e,t);return i?`${n}${r==="text"?`
8
8
 
9
- `:t==="mail"?"<br><br>-- <br>":"<br><br>"}${i.body}`:n}function gi(e){return e.endpoints??[]}const wt=36e5,Rt=864e5,b=-1/0,hi=e=>e.score>b,C={urgent:40,high:25,normal:10,low:0};function Ei(e){return Object.fromEntries(e.map(t=>[t.resourceId,t]))}const Ai=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i,Ct=/\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;function Nt(e,t){return!!(e&&Ai.test(e)||t&&Ct.test(t))}const kt=3,vt=600;function Si(e,t){return e>=kt||t>=vt}const Dt=["list-unsubscribe","list-unsubscribe-post","list-id","precedence","auto-submitted","x-auto-response-suppress","feedback-id","x-mailer"];function _i(e){const t={};for(const n of e){const r=n.name?.toLowerCase();r&&n.value!==void 0&&Dt.includes(r)&&(t[r]=n.value)}return t}const yi=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|notifications?|bounce|postmaster|mailer)@/i,Ti=/(^|[._+-])(newsletter|nieuwsbrief|marketing|mailing)@/i;function bi(e){const t=e.headers??{},n=e.from?.email,r=t["auto-submitted"]?.toLowerCase();if(r&&r!=="no"||t["x-auto-response-suppress"]||n&&yi.test(n))return"automated";const i=t.precedence?.toLowerCase();if(t["list-unsubscribe"]||t["list-unsubscribe-post"]||t["list-id"]||i==="bulk"||i==="list"||e.body&&Ct.test(e.body)||n&&Ti.test(n))return"marketing"}function xt(e,t){return e.lastActivityAt?!(e.seenBy??[]).includes(t):!1}const Lt=["open"],Pt=1e3,Ut={urgent:1,high:4,normal:8,low:24},$t=72;function Kt(e){return e.lastActivityAt??(e.createdAt?new Date(pt(e)).getTime():0)}function Bt(e,t){return Ft(t.remindersById?.[e.id],e,t.now)}function Ft(e,t,n){return!e||e.remindAt<=n?!1:!((t.lastActivityAt??0)>e.parkedAt&&t.lastActivityPreview?.direction==="inbound")}const Gt=e=>ct(e)==="outbound_message",Ht=e=>Lt.includes(e);function J(e,t){return Math.max(0,(t-Kt(e))/wt)}function Wt(e,t){const n=e.assignedInboxId?t?.[e.assignedInboxId]:void 0;return typeof n=="number"&&n>0?n:Ut[e.priority??"normal"]}function Ii(e){const t={};for(const n of e)typeof n.slaHours=="number"&&n.slaHours>0&&(t[n.id]=n.slaHours);return t}function Mi(e,t,n){return!Ht(e.status)||e.firstResponseAt?!1:J(e,t)>Wt(e,n)}function Vt(e,t){const n=e.lastActivityPreview;return n?.direction!=="outbound"||!Gt(n.type)?!1:J(e,t)<$t}function Oi(e,t){if(!Ht(e.status))return{score:b,reasons:[]};if(e.snoozedTill&&e.snoozedTill>t.now)return{score:b,reasons:[]};if(Vt(e,t.now))return{score:b,reasons:[]};if(Bt(e,t))return{score:b,reasons:[]};let n=0;const r=[],i=e.priority??"normal";C[i]>0&&(n+=C[i],r.push(`priority:${i}`)),xt(e,t.userId)&&(n+=20,r.push("unseen")),e.assignedUserId&&e.assignedUserId===t.userId&&(n+=15,r.push("assigned-to-you"));const o=J(e,t.now);if(o>0){const c=Math.min(o*2,30);n+=c,o>=1&&r.push(`waiting:${Math.round(o)}h`)}const a=e.lastActivityPreview;return a?.type==="AI_ACTION_PROPOSED"&&(n+=30,r.push("awaiting-approval")),a?.direction==="outbound"&&Gt(a.type)&&(n+=10,r.push("no-reply")),!e.firstResponseAt&&e.lastActivityPreview?.direction==="inbound"&&(n+=10,r.push("awaiting-reply")),(e.tags?.some(c=>c==="marketing"||c==="automated")||Nt(e.remoteParty?.resource,e.lastActivityPreview?.snippet))&&(n-=Pt,r.push("bulk")),{score:n,reasons:r}}const wi=e=>!!e.assignedUserId||!!e.assignedInboxId,Ri=e=>e.status==="closed",Ci=e=>({urgent:10,high:5,normal:2,low:1})[e.priority]||0,Ni=(e,t=30)=>e.title?.length<=t?e.title:`${e.title.substring(0,t)}...`;function ki(e,t){const n=e.labels??[];return n.find(r=>r.locale===t)?.label??n[0]?.label??e.url}function vi(e,t,n){const r=e.translations??[];return r.find(i=>i.locale===t)??(n?r.find(i=>i.locale===n):void 0)??{locale:t}}const ge=[{code:"nl",label:"Nederlands",english:"Dutch"},{code:"en",label:"English",english:"English"},{code:"de",label:"Deutsch",english:"German"},{code:"fr",label:"Français",english:"French"},{code:"es",label:"Español",english:"Spanish"},{code:"it",label:"Italiano",english:"Italian"},{code:"pt",label:"Português",english:"Portuguese"},{code:"pl",label:"Polski",english:"Polish"},{code:"sv",label:"Svenska",english:"Swedish"},{code:"da",label:"Dansk",english:"Danish"},{code:"nb",label:"Norsk bokmål",english:"Norwegian Bokmål"},{code:"fi",label:"Suomi",english:"Finnish"},{code:"tr",label:"Türkçe",english:"Turkish"}];function jt(e){const t=(e??"").toLowerCase();return ge.find(n=>n.code===t)??ge.find(n=>n.code===t.split("-")[0])}function Di(e){return jt(e)?.label??e}function xi(e){const t=jt(e);return t?t.english===t.label?`${t.english} (${t.code})`:`${t.english} — ${t.label} (${t.code})`:e}const Oe=3;function Yt(e,t){const n=new Set;let r=1,i=t.get(e)?.parentId;for(;i;){if(n.has(i)||(n.add(i),r++,r>Oe+1))return 1/0;i=t.get(i)?.parentId}return r}function Li(e,t,n){if(!e)return!0;if(e===t)return!1;const r=new Map(n.map(a=>[a.id,a]));if(!r.has(e)||t&&zt(e,t,r))return!1;const i=Yt(e,r),o=t?we(t,n):1;return i+o<=Oe}function zt(e,t,n){const r=new Set;let i=n.get(e)?.parentId;for(;i;){if(i===t)return!0;if(r.has(i))return!1;r.add(i),i=n.get(i)?.parentId}return!1}function we(e,t,n=new Set){if(n.has(e))return 1;n.add(e);const r=t.filter(i=>i.parentId===e);return r.length?1+Math.max(...r.map(i=>we(i.id,t,n))):1}const Xt="en";function qt(e){return e.defaultLocale||e.locale||Xt}function Pi(e){const t=new Set,n=[];for(const r of[qt(e),...e.locales??[]])!r||t.has(r)||(t.add(r),n.push(r));return n}function Ui(e,t,n){const r=e.translations??[];return r.find(i=>i.locale===t)?.name??(n?r.find(i=>i.locale===n)?.name:void 0)??e.name}const he=["lookup","condition","parallel","for-each"];function Ee(e){for(const t of e){if(!he.includes(t.type))return`staptype "${t.type}" mag niet meelezen (alleen ${he.join(", ")})`;if(t.type==="parallel")for(const n of t.branches??[]){const r=Ee(n);if(r)return r}if(t.type==="for-each"){const n=Ee(t.body??[]);if(n)return n}}return null}function $i(e,t){switch(e.kind){case"org":return!0;case"team":return!!t.teamId&&e.teamId===t.teamId;case"personal":return e.userId===t.userId}}function Ki(e,t){return e.filter(n=>n.enabled&&$i(n.ownerScope,t))}function Bi(e){return e.credentialScope?e.credentialScope:(e.authMode??"header")==="header"||e.oauth?.scope==="org"?"shared":"per-user"}function Fi(e){return`mcp__${e}__`}const Gi=1e3,Hi=2e3,Wi=500,Vi=12e3,ji=4e3,Jt=["contact","company","work_item"];function Yi(e){if(!e)return!1;const t=e.slice(0,e.indexOf(":"));return Jt.includes(t)}const zi="onboarding-source",Xi=["support","billing","availability","sales","onboarding"],qi=["keep","replace"];function Zt(e){switch(e.kind){case"user":return`user:${e.userId}`;case"team":return`team:${e.teamId}`;case"org":return"org"}}function Ji(e){if(typeof e!="string")return;const t=e.trim();if(t==="org")return{kind:"org"};const n=t.indexOf(":");if(n<=0)return;const r=t.slice(0,n),i=t.slice(n+1).trim();if(i){if(r==="user")return{kind:"user",userId:i};if(r==="team")return{kind:"team",teamId:i}}}function Qt(e){return Zt(e)}function en(e){switch(e.kind){case"personal":return{kind:"user",userId:e.userId};case"team":return{kind:"team",teamId:e.teamId};case"org":return{kind:"org"}}}const tn=en;function Zi(e){return e.agentId?{kind:"user",userId:e.agentId}:tn(e.ownerScope)}function Qi(e){return Qt(e)}function eo(e,t){if(!t)return;let n=e;for(const r of t.split(".")){if(n===null||typeof n!="object")return;n=n[r]}return n}function to(e,t){return e.targets.find(n=>n.activityTypes.includes(t))}function no(e,t){if(t)return e.targets.find(n=>n.id===t)}function nn(e){return e?.kind==="assignment"}function ro(e){const{trigger:t,agentId:n,target:r,activityType:i,assigneeUserId:o,authorUserId:a}=e;return nn(t)?n?r?r.activityTypes.includes(i)?o?o!==n?"assigned to someone else":a&&a===n?"the agent assigned this to itself, which would restart its own run":null:`no assignee found at ${r.assigneePath}`:`activity type ${i} does not announce an assignment for ${r.id}`:`assignment target kind "${t.targetKind}" is not declared by any installed app`:"this playbook has no agent, so an assignment can never be for it":"trigger is not an assignment trigger"}function io(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/__/g," · ").replace(/\./g," · ").replace(/_/g," ")}const oo=[{name:"text",type:"string"},{name:"subject",type:"string"},{name:"from",type:"string"},{name:"type",type:"string"},{name:"direction",type:"string"},{name:"channelId",type:"string"},{name:"interactionId",type:"string"},{name:"itemId",type:"string"},{name:"activityId",type:"string"},{name:"authorType",type:"string"},{name:"authorName",type:"string"},{name:"textRaw",type:"string"},{name:"fromStatus",type:"string"},{name:"toStatus",type:"string"},{name:"toCategory",type:"string"},{name:"contactId",type:"string"},{name:"companyId",type:"string"},{name:"priority",type:"string"},{name:"inboxId",type:"string"},{name:"topicId",type:"string"},{name:"assigneeUserId",type:"string"}],ao={topics:[{name:"topicId",type:"string"},{name:"topic",type:"string"},{name:"confidence",type:"number"},{name:"reasoning",type:"string"}],question:[{name:"answer",type:"boolean"},{name:"reasoning",type:"string"}],extract:[]};function rn(e){return`${e.type}:${e.id}`}const on="interaction";function an(e){return e?.type===on?e.id:void 0}const sn=64,cn=8e3;function so(e){const t=typeof e=="number"?e:Number(String(e??"").trim());if(!(!Number.isFinite(t)||t<=0))return Math.min(Math.max(Math.round(t),sn),cn)}const co={kind:"workflow",steps:[]};function lo(e){return e?.kind==="workflow"?e.steps:[]}function uo(e){return e?.kind==="procedure"?e.procedure:void 0}function ln(e){const t=e?.approved??0,n=t+(e?.rejected??0);return{total:n,rate:n?t/n:0}}const un=10,dn=.9;function po(e){const{total:t,rate:n}=ln(e);return t>=un&&n>=dn}const pn=["done","escalated","failed","stopped"];function fo(e){return pn.includes(e)}function fn(e){return e==="waiting"}function mo(e){return e==="running"||fn(e)}function Re(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}function go(e){const t=Re(e);return t?rn(t):void 0}function ho(e){return an(Re(e))}function Eo(e){const t=[],n=new Map;for(const r of[...e].sort(Ao)){const i=n.get(r.emoji);if(i){i.push(r.actor);continue}t.push(r.emoji),n.set(r.emoji,[r.actor])}return t.map(r=>{const i=n.get(r);return{emoji:r,count:i.length,actors:i}}).sort((r,i)=>i.count-r.count||t.indexOf(r.emoji)-t.indexOf(i.emoji))}const Ao=(e,t)=>(e.createdAt??0)-(t.createdAt??0);function So(e,t){return t?e.actors.some(n=>n.type==="user"&&n.id===t):!1}const Ae=6e4,_o=36e5,N=864e5,mn=800;function je(e,t){const n=Date.UTC(e,t+1,0);return n-new Date(n).getUTCDay()*N+_o}function yo(e){const t=new Date(e).getUTCFullYear();return e>=je(t,2)&&e<je(t,9)}function gn(e,t){const n=t.dst==="eu"&&yo(e)?60:0;return(t.utcOffsetMinutes+n)*Ae}function To(e){return(e+3)%7+1}function hn(e,t){const n=gn(e,t),r=e+n,i=Math.floor(r/N);if(!t.days.includes(To(i)))return null;const o=i*N;return{open:o+t.fromMinutes*Ae-n,close:o+t.toMinutes*Ae-n}}function En(e,t){const n=gn(e,t),r=e+n;return(Math.floor(r/N)+1)*N-n}function j(e,t,n){if(t<=e)return 0;if(!n)return t-e;let r=0,i=e;for(let o=0;o<mn&&i<t;o++){const a=hn(i,n);if(a){const s=Math.max(i,a.open),c=Math.min(t,a.close);c>s&&(r+=c-s)}i=En(i,n)}return r}function Z(e,t,n){if(!n)return e+t;let r=t,i=e;for(let o=0;o<mn;o++){const a=hn(i,n);if(a){const s=Math.max(i,a.open);if(a.close>s){const c=a.close-s;if(r<=c)return s+r;r-=c}}i=En(i,n)}return e+t}function bo(e){const t=/^([01]\d|2[0-3]):([0-5]\d)$/.exec(e);return t?Number(t[1])*60+Number(t[2]):null}const Y=1,z=2;function Io(e){return e==="snoozed"?Y:z}function Q(e){const t=e.calendar;return t&&Array.isArray(t.days)?t:null}const Mo=["speed_of_answer","first_response","next_response","resolution","close"],Oo=["snoozed","waiting_for_customer"],wo=6e4,An=["speed_of_answer","first_response","next_response"],Ro=[...An,"resolution","close"];function v(e){return e.state==="running"||e.state==="paused"}function Co(e,t){return v(e)?{state:(e.state==="paused"?e.remainingMs>0:t<=e.dueAt)?"hit":"missed",settledAt:Math.max(t,e.startedAt)}:null}function Ye(e){return v(e)?{state:"void"}:null}function No(e,t,n,r){if(!v(e)||(e.pauseBits&t)!==0)return null;const i=e.pauseBits|t;return e.state==="paused"?{pauseBits:i}:{pauseBits:i,state:"paused",remainingMs:j(n,e.dueAt,r)}}function ko(e,t,n,r){if(!v(e)||(e.pauseBits&t)===0)return null;const i=e.pauseBits&~t;return i!==0?{pauseBits:i}:{pauseBits:i,state:"running",dueAt:Z(n,e.remainingMs,r)}}function vo({event:e,at:t,now:n,clocks:r,profile:i}){const o=Q(i),a=Math.min(t,n),s=r.map(p=>({...p})),c=[],m=(p,f)=>{f&&(c.push({op:"patch",clockId:p.id,patch:f}),Object.assign(p,f))},h=p=>{for(const f of s)f.metric===p&&m(f,Co(f,a))},E=p=>{for(const f of s)p.includes(f.metric)&&m(f,Ye(f))},M=p=>{for(const f of s)m(f,No(f,p,a,o))},O=p=>{for(const f of s)m(f,ko(f,p,a,o))},ne=p=>s.reduce((f,T)=>T.metric===p?Math.max(f,T.attempt):f,0)+1,D=p=>s.some(f=>f.metric===p&&v(f)),x=(p,f)=>{const T=i.targets.find(lr=>lr.metric===p);if(!T)return;const Pe=T.minutes*wo;c.push({op:"start",metric:p,attempt:ne(p),startedAt:f,targetMs:Pe,dueAt:Z(f,Pe,o)})};switch(e){case"apply":{for(const p of s)p.profileId!==i.id&&m(p,Ye(p));for(const p of i.targets){if(p.metric==="next_response")continue;s.some(T=>T.metric===p.metric&&T.profileId===i.id)||x(p.metric,a)}break}case"answered":h("speed_of_answer");break;case"outbound":{h("first_response"),h("next_response"),i.pauseOn.includes("waiting_for_customer")&&M(z);break}case"inbound":{O(z),!D("first_response")&&!D("next_response")&&x("next_response",a);break}case"resolved":h("resolution");break;case"closed":h("close"),h("resolution"),E(An);break;case"reopened":D("resolution")||x("resolution",a),D("close")||x("close",a);break;case"snoozed":i.pauseOn.includes("snoozed")&&M(Y);break;case"unsnoozed":O(Y);break;case"discarded":E(Ro);break}return c}function Sn(e){return e.state==="running"||e.state==="paused"}function X(e,t){const n=Q(e);return e.state==="paused"?e.remainingMs:t>=e.dueAt?-j(e.dueAt,t,n):j(t,e.dueAt,n)}function Do(e,t){return e.state==="paused"?Z(t,e.remainingMs,Q(e)):e.dueAt}function xo(e,t){const n=e.filter(Sn);if(!n.length)return;const r=n.filter(o=>o.state==="running");return(r.length?r:n).reduce((o,a)=>X(a,t)<X(o,t)?a:o)}function Lo(e,t){if(e.state==="missed")return"breached";if(e.state==="hit")return"met";if(e.state==="paused")return"paused";if(e.state==="void")return"met";const n=X(e,t);return n<=0?"breached":n<=e.targetMs/5?"urgent":"running"}function Po(e){const t=Math.floor(Math.abs(e)/1e3),n=Math.floor(t/86400),r=Math.floor(t%86400/3600),i=Math.floor(t%3600/60);return n?r?`${n}d ${r}u`:`${n}d`:r?i?`${r}u ${i}m`:`${r}u`:i?`${i}m`:`${t%60}s`}function Uo(e,t){const n=e.accumulatedSeconds||0;return e.runningSince?n+Math.max(0,Math.floor((t-e.runningSince)/1e3)):n}function $o(e,t){const n=Math.max(1,Math.ceil(Math.max(0,e)/60));if(!t||t==="exact")return n*60;const r=Number(t);return!Number.isFinite(r)||r<=0?n*60:Math.ceil(n/r)*r*60}function Ko(e){const t=Math.max(0,Math.round(e/60));return`${Math.floor(t/60)}:${String(t%60).padStart(2,"0")}`}function Bo(e){const t=Math.max(0,Math.floor(e)),n=o=>String(o).padStart(2,"0"),r=Math.floor(t/60)%60,i=Math.floor(t/3600);return i>0?`${i}:${n(r)}:${n(t%60)}`:`${n(r)}:${n(t%60)}`}function _n(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function Fo(e,t){const n=_n(e)||"werksoort",r=new Set(t);if(!r.has(n))return n;for(let i=2;i<500;i++){const o=`${n}-${i}`;if(!r.has(o))return o}return`${n}-${r.size+1}`}function Go(e,t){const n=e.ownerScope;return!n||n.kind==="org"?!0:t.includes(n.teamId)}function Ho(e){return e.filter(t=>!t.archived).sort(yn)}function yn(e,t){const n=(e.order??0)-(t.order??0);return n!==0?n:(e.label||"").localeCompare(t.label||"")}const Tn=20,bn=20,F=300;function I(e){return e.toLowerCase().replace(/[^\p{L}\p{N}\s]/gu," ").replace(/\s+/g," ").trim()}function In(e){const t=e.replace(/\s+/g," ").trim();if(t.length<=F)return t;const n=t.slice(0,F),r=Math.max(n.lastIndexOf(". "),n.lastIndexOf("! "),n.lastIndexOf("? "));return r>F*.6?n.slice(0,r+1):`${n.trimEnd()}…`}function Wo(e,t){const n=In(t.text),r=I(n);if(!r||(e.examples??[]).some(a=>I(a)===r))return null;const i=e.exampleCandidates??[],o=i.findIndex(a=>I(a.text)===r);if(o>=0){if(i[o].corrected||!t.corrected)return null;const a=[...i];return a[o]={...a[o],corrected:!0,addedAt:t.addedAt},ze(a)}return ze([{...t,text:n},...i]).slice(0,bn)}function ze(e){return[...e].sort((t,n)=>Number(n.corrected)-Number(t.corrected)||n.addedAt-t.addedAt)}function Vo(e,t){const n=I(t),r=(e.examples??[]).filter(o=>o.trim());return{examples:r.some(o=>I(o)===n)?r:[...r,t].slice(-Tn),exampleCandidates:Mn(e,t)}}function Mn(e,t){const n=I(t);return(e.exampleCandidates??[]).filter(r=>I(r.text)!==n)}function On(e,t){const n=e.ownerScope;return n?n.kind==="org"?!0:n.kind==="team"?!!t&&n.teamId===t:!1:!1}function jo(e,t){return e.filter(n=>On(n,t))}function Yo(e){return e.type==="agent"}const zo="WORK_COMMENT_ADDED",Xo="WORK_ITEM_ASSIGNED",qo="WORK_ITEM_STATUS_CHANGED";function Jo(e,t){const n=r=>{const i=new Date(r);return i.setHours(0,0,0,0),i.getTime()};return Math.round((n(e)-n(t))/Rt)}function Zo(e,t){if(e.closedAt!=null)return{score:b,reasons:[]};const n=t.remindersById?.[e.id];if(n&&n.remindAt>t.now)return{score:b,reasons:[]};let r=0;const i=[],o=e.priority??"normal";if(C[o]>0&&(r+=C[o],i.push(`priority:${o}`)),typeof e.dueDate=="number"){const a=Jo(e.dueDate,t.now);a<0?(r+=35,i.push("overdue")):a===0&&(r+=20,i.push("due-today"))}return e.source?.initiator==="system"&&e.source.systemReason&&(r+=15,i.push(`auto:${e.source.systemReason}`)),{score:r,reasons:i}}const wn="work_item",Rn="work_project",Cn="work_activity";function Nn(e){return`${wn}:${e}`}function Ce(e){return`${Rn}:${e}`}function Qo(e){return`${Cn}:${e}`}function ea(e,t,n){const r=`${e}-${t}`;return n?`${r}-${n}`:r}function ta(e){const t=/^([A-Za-z0-9]{2,8})-(\d+)(?:-(\d+))?$/.exec((e||"").trim());return t?{projectKey:t[1].toUpperCase(),sequenceNumber:Number(t[2]),...t[3]?{subSequence:Number(t[3])}:{}}:null}function na(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toUpperCase().replace(/[^A-Z0-9]/g,"").slice(0,3)||"PRJ"}function ra(e,t=25){const n=new Set([Nn(e.id)]);e.projectId&&n.add(Ce(e.projectId));for(const r of e.ancestorKeys??[])n.add(r);for(const r of e.partyKeys??[])n.add(r);return Array.from(n).slice(0,t)}function ia(e){return[Ce(e.id)]}const ee=[{key:"open",label:"status_open",category:"todo",order:0},{key:"in_progress",label:"status_in_progress",category:"in_progress",order:1},{key:"done",label:"status_done",category:"done",order:2},{key:"cancelled",label:"status_cancelled",category:"done",order:3}],Ne=ee.map(e=>e.key);function kn(e){return e?.statuses?.length?e.statuses:ee}function vn(e,t){return t.find(n=>n.key===e)?.category??"todo"}function oa(e,t){return t.find(n=>n.key===e)}function aa(e){const t=kn(e),n=e?.defaultStatusKey;return n&&t.some(r=>r.key===n)?n:Dn(t)[0]?.key??ee[0].key}function Dn(e){return[...e].sort((t,n)=>{const r=(t.order??0)-(n.order??0);return r!==0?r:(t.label||"").localeCompare(n.label||"")})}function sa(e,t){return vn(e,t)==="done"}function xn(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function ca(e,t){const n=xn(e)||"status",r=new Set([...t,...Ne]);if(!r.has(n))return n;for(let i=2;i<500;i++){const o=`${n}-${i}`;if(!r.has(o))return o}return`${n}-${r.size+1}`}function la(e){const t=[];if(!e.length)return[{index:-1,reason:"empty"}];const n=new Set;return e.forEach((r,i)=>{if(!r.key){t.push({index:i,reason:"missing_key"});return}Ne.includes(r.key)&&t.push({index:i,reason:"reserved_key",key:r.key}),n.has(r.key)&&t.push({index:i,reason:"duplicate_key",key:r.key}),n.add(r.key)}),e.some(r=>r.category==="todo"||r.category==="in_progress")||t.push({index:-1,reason:"no_open"}),e.some(r=>r.category==="done")||t.push({index:-1,reason:"no_done"}),t}const ua=new Set(["image/png","image/jpeg","image/jpg","image/gif","image/webp"]),da=new Set(["text/plain","text/markdown","text/csv","application/json","text/html","application/xml","text/xml"]);function Ln(e){const t=(e??"").trim().toLowerCase().split(";")[0];return t?ua.has(t)?"image":t==="application/pdf"?"pdf":da.has(t)?"text":t.startsWith("audio/")?"audio":"unsupported":"unsupported"}const w=1024*1024,Pn={image:5*w,pdf:20*w,text:1*w,audio:20*w},pa=25*w,fa=5;function ma(e,t){const n=Ln(e);return n==="unsupported"?"unsupported":t>Pn[n]?"too-large":null}function ga(e){return e.access!=="read"&&e.effect!=="internal"}function Un(e){return`${e.kind}:${e.id||e.url||e.title}`}function ha(e,t=[]){const n=new Set(t),r=[],i=[];for(const o of e){const a=Un(o);n.has(a)||(n.add(a),r.push(o),i.push(a))}return{sources:r,keys:i}}const Ea="assist-source",Aa=["blocking","due","open"];function Sa(e,t){const[n,r]=(e.subjectKey??"").split(":");return n===t&&r?r:void 0}const Xe={blocking:0,due:1,open:2};function _a(e,t){return Xe[e.band??"open"]-Xe[t.band??"open"]||(t.priority??0)-(e.priority??0)||e.id.localeCompare(t.id)}function ya(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&e.canHold(t.providerId))}function Ta(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&!e.canHold(t.providerId))}function ba(e){return e.sessions.some(n=>n.id!==e.exceptSessionId&&(n.state==="connected"||n.state==="on_hold"))?{admit:!1,reason:"busy"}:{admit:!0}}function $n(e,t){const n=new Set(e.disabledIntents??[]),r=e.intentOverrides??{},i=t.intents.filter(a=>!n.has(a.intent)).map(a=>Ma(a,r[a.intent]));if(!e.extraIntents||e.extraIntents.length===0)return i;const o=new Set(i.map(a=>a.intent));for(const a of e.extraIntents)o.has(a.intent)||(i.push(a),o.add(a.intent));return i}function Kn(e,t){const n={};for(const r of e.intents){if(!r.togglable)continue;const i=t?.[r.intent];n[r.intent]=i??r.defaultEnabled??!0}return n}function Ia(e,t){const n=Kn(e,t);return Object.entries(n).filter(([,r])=>!r).map(([r])=>r)}function Ma(e,t){return t?{intent:t.intent??e.intent,targetSchemes:t.targetSchemes??e.targetSchemes,transport:t.transport??e.transport}:e}function Oa(e,t){const n=[];for(const r of e){if(!r.enabled)continue;const i=t[r.providerId];if(i)for(const o of $n(r,i))n.push({channel:r,description:i,capability:o})}return n}function wa(e,t){return t.filter(n=>n.capability.intent===e)}function Bn(e,t){return t.filter(n=>n.capability.targetSchemes.includes(e))}function Ra(e,t){return Bn(e.scheme,t)}function Ca(e,t,n){const r=[];for(const i of e)for(const o of n)o.capability.intent===t&&o.capability.targetSchemes.includes(i.scheme)&&r.push({channelIntent:o,endpoint:i});return r}var Fn=(e=>(e.MAILTO="mailto",e.SIP="sip",e.TEL="tel",e.WEBHOOK="webhook",e.USERNAME="username",e.ID="id",e.CUSTOM="custom",e.URL="url",e.TELEGRAM="telegram",e.WHATSAPP="whatsapp",e.MESSENGER="messenger",e.INSTAGRAM="instagram",e.VIBER="viber",e.SMS="sms",e.FAX="fax",e.TEAMS="teams",e.CALENDAR="calendar",e))(Fn||{});const Na={mailto:"mail",sip:"tel",tel:"tel",fax:"tel",sms:"chat",teams:"chat",telegram:"chat",messenger:"chat",instagram:"chat",viber:"chat",whatsapp:"wa",webhook:"note",url:"note",calendar:"note",username:"note",id:"note",custom:"note"};function ka(e){return e?Na[e]??"note":"note"}const va="message_window",Da="message_templates",xa={FROM:"from",TO:"to",CC:"cc",BCC:"bcc",ORGANIZER:"organizer",PRESENTER:"presenter",ATTENDEE:"attendee",OWNER:"owner",MEMBER:"member",GUEST:"guest",HOST:"host",PARTICIPANT:"participant"},La=(e,t)=>({intent:e,...t}),Pa="folder_management",Ua="remote_search",$a="message_reactions",Ka={ok:!1,code:"UNSUPPORTED",message:"Provider does not support this op"},Ba="connector",Fa="context.collect",d=e=>({type:"string",description:e}),u=e=>({type:"number",description:e}),G=e=>({type:"boolean",description:e}),_=d("Sheet name. Omit for the sheet the user is looking at."),qe=d("Slide id, as `inspect` reports it.");function l(e,t,n,r,i,o){return{op:e,kinds:t,summary:n,parameters:{type:"object",properties:r,required:i},undoable:o.undoable,visible:o.visible}}const R={undoable:!1,visible:!0},g={undoable:!0,visible:!0},Je={undoable:!1,visible:!0},q={undoable:!1,visible:!1},Ga=[l("pdf.goToPage",["pdf"],"Scroll the viewer to a page.",{page:u("1-based page number.")},["page"],R),l("pdf.search",["pdf"],"Search the document and highlight the matches, as the find bar does.",{query:d("Text to find."),next:G("Jump to the next match instead of the first.")},["query"],R),l("pdf.setTool",["pdf"],"Select a markup tool for the user, so their next click draws it.",{tool:{type:"string",enum:["highlight","text","draw","image","signature","none"],description:"Which tool to arm. `none` puts the tool row back to reading."}},["tool"],R),l("pdf.fillField",["pdf"],"Fill one form field of a fillable PDF.",{field:d("Field name, exactly as `inspect` reports it under `fields`."),value:{type:["string","boolean"],description:"Text for a text field, true/false for a checkbox or radio."}},["field","value"],g),l("pdf.reorderPages",["pdf"],"Put the pages in a different order. Pages left out are deleted.",{order:{type:"array",items:{type:"number"},description:"1-based source page numbers, in the order they should end up in."}},["order"],Je),l("pdf.deletePages",["pdf"],"Remove pages, keeping the rest in order.",{pages:{type:"array",items:{type:"number"},description:"1-based page numbers."}},["pages"],Je),l("pdf.addNote",["pdf"],"Place a text note on a page. Written on save; not visible before that.",{page:u("1-based page number."),text:d("The note's text."),left:u("Distance from the left edge, in PDF points (72 per inch)."),top:u("Distance from the top edge, in PDF points."),width:u("Box width in points. Omit for a sensible default."),height:u("Box height in points. Omit for a sensible default."),fontSize:u("Font size in points. Omit for 12.")},["page","text","left","top"],q),l("pdf.highlightText",["pdf"],"Highlight a phrase on a page. Written on save; not visible before that.",{page:u("1-based page number."),text:d("The exact phrase to highlight, as it appears in the page's text."),occurrence:u("Which occurrence on that page, 1-based. Omit for the first.")},["page","text"],q)],Ha=[l("sheet.setValues",["sheet"],"Write a block of values. The block's shape must match the range.",{sheet:_,range:d("A1 notation, e.g. `B2:D5` or a single `A1`."),values:{type:"array",items:{type:"array",items:{type:["string","number","boolean","null"]}},description:"Rows of cells, top-left first. `null` clears a cell."}},["range","values"],g),l("sheet.setFormula",["sheet"],"Put a formula in every cell of a range.",{sheet:_,range:d("A1 notation."),formula:d("Including the leading `=`.")},["range","formula"],g),l("sheet.setStyle",["sheet"],"Change the look of a range. Only the properties you pass are touched.",{sheet:_,range:d("A1 notation."),bold:G("Bold on or off."),italic:G("Italic on or off."),fontSize:u("Point size."),fontColor:d("CSS colour, e.g. `#b91c1c`."),background:d("CSS colour for the cell fill."),horizontalAlignment:{type:"string",enum:["left","center","right"],description:"Horizontal alignment."},numberFormat:d("Number format pattern, e.g. `#,##0.00` or `0%`.")},["range"],g),l("sheet.insertRows",["sheet"],"Insert empty rows, pushing the rest down.",{sheet:_,at:u("1-based row number to insert before."),count:u("How many. Omit for 1.")},["at"],g),l("sheet.deleteRows",["sheet"],"Delete rows, pulling the rest up.",{sheet:_,at:u("1-based first row to delete."),count:u("How many. Omit for 1.")},["at"],g),l("sheet.insertColumns",["sheet"],"Insert empty columns, pushing the rest right.",{sheet:_,at:u("1-based column number to insert before."),count:u("How many. Omit for 1.")},["at"],g),l("sheet.deleteColumns",["sheet"],"Delete columns, pulling the rest left.",{sheet:_,at:u("1-based first column to delete."),count:u("How many. Omit for 1.")},["at"],g),l("sheet.merge",["sheet"],"Merge a range into one cell.",{sheet:_,range:d("A1 notation.")},["range"],g),l("sheet.unmerge",["sheet"],"Break merged cells in a range apart.",{sheet:_,range:d("A1 notation.")},["range"],g),l("sheet.sort",["sheet"],"Sort a range on one of its columns.",{sheet:_,range:d("A1 notation covering the rows to sort, header excluded."),column:u("1-based column *within the range*, not within the sheet."),ascending:G("Ascending. Omit for ascending.")},["range","column"],g),l("sheet.insertSheet",["sheet"],"Add a new sheet.",{name:d("Name for the new sheet.")},["name"],g),l("sheet.renameSheet",["sheet"],"Rename a sheet.",{sheet:d("Current name."),name:d("New name.")},["sheet","name"],g),l("sheet.deleteSheet",["sheet"],"Remove a sheet and everything on it.",{sheet:d("Name of the sheet to delete.")},["sheet"],g),l("sheet.activate",["sheet"],"Show the user a sheet and select a range on it.",{sheet:_,range:d("A1 notation to select. Omit to only switch sheets.")},[],R)],Wa=[l("word.replaceParagraph",["word"],"Rewrite one whole paragraph, keeping its style. This is the verb for shortening or rephrasing something; call it once per paragraph.",{at:u("The offset the paragraph starts at, exactly as `inspect` prints it."),text:d("The new text for that paragraph. A newline starts a further paragraph.")},["at","text"],g),l("word.replaceRange",["word"],"Replace a stretch of text inside a paragraph - a sentence, a phrase. To rewrite whole paragraphs use word.replaceParagraph: a range covering several paragraph styles is refused, because a replacement carries one style and would set the whole span in the first.",{start:u("Character offset where the replaced text starts, as `inspect` reports offsets."),end:u("Character offset just past the last character to replace."),text:d("The replacement text. A newline starts a new paragraph.")},["start","end","text"],g),l("word.insertText",["word"],"Insert text at a character offset, without removing anything.",{index:u("Character offset, as `inspect` reports offsets."),text:d("The text to insert.")},["index","text"],g),l("word.appendText",["word"],"Add text at the end of the document.",{text:d("The text to append.")},["text"],g),l("word.insertParagraph",["word"],"Start a new paragraph, optionally with text in it.",{text:d("Paragraph text. Newlines start further paragraphs."),index:u("Character offset to insert at. Omit for the end of the document.")},[],g),l("word.setSelection",["word"],"Put the user's cursor on a stretch of text, and move the reading window there: the page context carries one window of a long document, and the text around this offset arrives in the next turn.",{start:u("Start character offset."),end:u("End character offset. Omit for a caret.")},["start"],R)],Va=[l("slides.setText",["slides"],"Replace the text of one shape. Written on save; not visible before that, and not undoable.",{slide:qe,element:d("Element id, as `inspect` reports it."),text:d("The new text.")},["slide","element","text"],q),l("slides.setTransform",["slides"],"Move or resize one shape. Only the values you pass change. Written on save; not visible before that, and not undoable.",{slide:qe,element:d("Element id."),left:u("Distance from the left edge, in pixels."),top:u("Distance from the top edge, in pixels."),width:u("Width in pixels."),height:u("Height in pixels.")},["slide","element"],q)],ke=[...Ga,...Ha,...Wa,...Va];function ja(e){return ke.filter(t=>t.kinds.includes(e))}function Ya(e){return ke.find(t=>t.op===e)}const za="documents.describe",Xa="documents.inspect",qa="documents.apply";function Ja(e){const t=e.indexOf(":");if(t!==-1)return e.slice(0,t);const n=e.indexOf(".");return n===-1?e:e.slice(0,n)}const Za="installation-id";function Qa(e){const t=[];for(const n of Object.keys(e))for(const r of Object.keys(e[n]))t.push({lang:n,key:r,value:e[n][r]});return t}const es="notification-source",ts=(e,t)=>`${e}.pref.${t}`,ns={ai:["account.read","account.write","agent.read","agent.write","assignment.read","assignment.write","budget.read","budget.write","connector.read","connector.write","context.read","context.write","conversation.read","conversation.write","lens.read","lens.write","message.read","message.write","playbook.read","playbook.write","profile.read","profile.write","run.read","run.write","settings.read","settings.write","tool.read","transcript.write","usage.read"],analytics:["report.read"],"app-store":["app.publish","app.read","app.write","setting.read","setting.write"],assist:["board.read"],automations:["sync.read","sync.write","webhook.read","webhook.write"],communication:["account.read","account.write","activity-type.read","activity.read","activity.write","attachment.read","attribute.read","attribute.write","calendar.read","calendar.write","channel.read","channel.write","custom-field.read","custom-field.write","folder.read","folder.write","inbox.read","inbox.write","interaction.read","interaction.write","reaction.read","reaction.write","reminder.read","template.read","template.write","topic.read","topic.write"],context:["kind.read","kind.write","memory.read","memory.write"],crm:["company.read","company.write","contact.read","contact.write"],"eylo-voip":["account.read","account.write","callflow.read","callflow.write","channel.read","channel.write","contact.read","contact.write","device.read","device.write","group.read","group.write","interaction.read","interaction.write","media.read","media.write","menu.read","menu.write","phone-number.read","phone-number.write","recording.read","recording.write","sip.read","temporal-rule.read","temporal-rule.write","user.read","user.write","vmbox.read","vmbox.write","webhook.read","webhook.write"],google:["account.read","account.write","contact.read"],kb:["article.read","article.write","category.read","category.write","help-center.read","help-center.write","kb.read","kb.write"],mail:["account.write"],meta:["account.read","account.write"],microsoft:["account.read","account.write","contact.read","sync.write"],organization:["billing.read","billing.write","settings.read","settings.write","team.read","team.write"],shopify:["account.read","account.write","order.read"],slack:["thread.read","thread.write"],storage:["artifact.read","artifact.write","file.read","file.write","mount.read","mount.write"],time:["entry.read","entry.write","work-type.read","work-type.write"],user:["user.read","user.write"],work:["item.read","item.write","project.read","project.write"]},ve=9e4,Gn=["out_of_office"],Hn=e=>Gn.includes(e);function rs(e,t,n){const r=n-e<ve,i=t?.status&&(!t.expiresAt||t.expiresAt>n)?t:void 0;if(!i?.status)return{online:r,status:r?"available":"offline"};const o=i.status;return!r&&!Hn(o)?{online:!1,status:"offline"}:{online:r,status:o,message:i.message}}function is(e,t){const n=t-e.lastSeenAt<ve,r=n||Hn(e.status)?e.status:"offline";return n===e.online&&r===e.status?e:{...e,online:n,status:r}}function os(e,t){return e?.teamId&&t.includes(e.teamId)?{teamId:e.teamId,mustChoose:!1}:t.length===1?{teamId:t[0],mustChoose:!1}:{teamId:void 0,mustChoose:t.length>1}}function as(e){return e.providerAvailable&&e.allowed}const ss="resources.describe",cs="resources.search",ls="resources.resolve",us="resources.attached";function ds(e){const t=e.indexOf(":");return t===-1?e:e.slice(0,t)}const ps="/provider/scope/related",fs="/provider/scope/read",De="auth";function xe(e){const t=typeof e=="string"?e.match(/apps\/([^/?#]+)/):null;return t?t[1]:null}function ms(e){const t=xe(e);return t?t!==De:typeof e=="string"&&e.startsWith("/wake")}function gs(e){return typeof e!="string"||e===""||e==="/"?!0:xe(e)===De}function hs(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Wn(e){const n=e.split("/").filter(Boolean).map(r=>r.startsWith(":")?r.endsWith("?")?"(?:/[^/]+)?":"/[^/]+":`/${hs(r)}`).join("");return new RegExp(`^${n}\\/?$`)}function Vn(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean),i={};return n.forEach((o,a)=>{if(o.startsWith(":")){const s=o.endsWith("?")?o.slice(1,-1):o.slice(1),c=r[a];c&&(i[s]=c)}}),i}function jn(e){return e.publicBasePath??`/apps/${e.name}`}function Es(e){const t=[];for(const n of e){if(!n?.name)continue;const r=jn(n);for(const i of n.routes??[]){if(!i.public)continue;const o=i.path==="/"?"":i.path;t.push({appName:n.name,resource:i.resource,pattern:`${r}${o}`,props:i.props})}}return t}function Yn(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean);for(let i=0;i<Math.min(n.length,r.length);i++){const o=n[i].startsWith(":"),a=r[i].startsWith(":");if(o!==a)return a}return n.length>r.length}function zn(e,t){if(typeof e!="string")return null;let n=null;for(const r of t)Wn(r.pattern).test(e)&&(!n||Yn(r.pattern,n.pattern))&&(n=r);return n?{...n,params:{...n.props,...Vn(n.pattern,e)}}:null}function As(e,t){return zn(e,t)!==null}const Ss=10*1024*1024,_s=25*1024*1024,ys="sync-target",Ts=20,bs={afrikaans:["[Muziek]","(C) TV GELDERLAND 2021","*Thomp thomp thomp*","www.youtube.com","ä n wood s","!.."],english:["[applause]","[APPLAUSE]","(claps)","(clapping)","(audience applauds)","(keyboard clicking)","(keyboard clacking)","(clicking)","[CLICK]","[BLANK_AUDIO]","(upbeat music)","(dramatic music)","[music playing]","(electronic music)","(audience cheering)","(audience cheers)","[MUSIC]","( ( ( ( ) ( ) ( ) ( )","(laughs)","(air whooshing)","<u>Transcribed</u> by https://otter.ai","All new tonight at 6... coming up. A new look at your forecast is A new look at your forecast is","www.mooji.org","KATHRYN A new forecast is coming up... A new forecast is coming up...","KATHRYN pandemic started. increasing since the The pandemic has been","A new look at your forecast this morning... A new look at your","We'll be right back.","We'll see you next week.","Thanks for watching!","❤️ Translated by Amara.org Communit"],flemish:["*clap*","TV GELDERLAND 2020","TV Gelderland 2021","(C) TV GELDERLAND 2021","[Muziek]","Kuman","Ondertitels ingediend door de Amara.org gemeenschap","Ondertiteld door de Amara.org gemeenschap","Dank u wel voor het kijken.","Ondertiteling door de Amara.org gemeenschap","GELUID VAN MAHIH U similarly"],french:["(applaudissements)","[Applaudissements]","Sous-titres réalisés par la communauté d'Amara.org","- Bonne journée. - Bonjour.","POP POP הי","Merci d'avoir regardé cette vidéo.","Merci d'avoir regardé cette vidéo!","Merci d'avoir regardé la vidéo.","J'espère que vous avez apprécié la vidéo.","Je vous remercie de vous abonner","Merci d'avoir regardé!","❤️ par SousTitreur.com","— Sous-titrage ST'501 —","Thanks for watching!","Sous-titres réalisés par l'Amara.org","Sous-titres réalisés para la communauté d'Amara.org","Sous-titres réalisés par la communauté d'Amara.org","Sous-titres fait par Sous-titres par Amara.org","Sous-titres réalisés par les SousTitres d'Amara.org","Sous-titres par Amara.org","Sous-titres par la communauté d'Amara.org","Sous-titres réalisés pour la communauté d'Amara.org","Sous-titres réalisés par la communauté de l'Amara.org","Sous-Titres faits par la communauté d'Amara.org","Sous-titres par l'Amara.org","Sous-titres fait par la communauté d'Amara.org","Sous-titrage ST' 501","Sous-titrage ST'501","Cliquez-vous sur les sous-titres et abonnez-vous à la chaîne d'Amara.org","❤️ par SousTitreur.com"],german:["[Klicken]","(Jubel)","*lacht*","[Anhaltender Beifall]","[Applaus]","(Applaus)","* Applaus *","[MUSIK]","* mustard ml Drumglöck und knack in einem Handbewerb *","Untertitelung aufgrund der Amara.org-Community","Untertitel im Auftrag des ZDF für funk, 2017","Untertitel von Stephanie Geiges","Untertitel der Amara.org-Community","Untertitel im Auftrag des ZDF, 2017","Untertitel im Auftrag des ZDF, 2020","Untertitel im Auftrag des ZDF, 2018","Untertitel im Auftrag des ZDF, 2021","Untertitelung im Auftrag des ZDF, 2021","Copyright WDR 2021","Copyright WDR 2020","Copyright WDR 2019","SWR 2021","SWR 2020"],italian:["Alla prossima!","*applauso*","[Musica]","[Musica]","[Applausi]","*Bip bip bip bip*","(musica del NS shore)","D' 1962 alle tribunte del Gulf","Sottotitoli creati dalla comunità Amara.org","Sottotitoli di Sottotitoli di Amara.org","Sottotitoli e revisione al canale di Amara.org","Sottotitoli e revisione a cura di Amara.org","Sottotitoli e revisione a cura di QTSS","Sottotitoli e revisione a cura di QTSS.","Sottotitoli a cura di QTSS","Sottotitoli a cura di Sottotitoli"],spanish:["[música]","[Música de cierre]","[Aplausos]","(Aplausos)","www.alimmenta.com","¡Gracias por ver el vídeo!","(sonidos del celular) (Inudible distorsión)","¡Suscríbete!","Subtítulos realizados por la comunidad de Amara.org","Subtitulado por la comunidad de Amara.org","Subtítulos por la comunidad de Amara.org","Subtítulos creados por la comunidad de Amara.org","Subtítulos en español de Amara.org","Subtítulos hechos por la comunidad de Amara.org","Subtitulos por la comunidad de Amara.org","Más información www.alimmenta.com","www.mooji.org","[MÚSICA]","[Music cuts in British]"]},Xn=e=>{let t=e;return Object.values(bs).forEach(n=>{n.forEach(r=>{t=t.replaceAll(r,"")})}),t=t.replace(/\(.*?\)/g,""),t=t.replace(/\[.*?\]/g,""),t},qn=6e4,Jn=8e3,Zn=2,Qn=.4,Is=3,Ms=new Set(["aan","als","ben","bent","bij","dan","dat","deze","die","dit","doen","door","dus","echt","een","eens","even","gaan","gaat","geen","geweest","goed","graag","had","heb","hebben","hebt","heeft","het","hier","hoe","hoor","iets","inderdaad","kan","klopt","kunnen","kunt","maar","mag","mee","meer","met","mij","mijn","misschien","moet","moeten","naar","net","niet","nog","nou","oke","ook","over","prima","toch","uhm","uit","van","veel","voor","wat","weer","weet","wel","wij","wil","wilt","worden","wordt","zeg","zeggen","zijn","zou","zult","about","and","are","been","but","can","does","for","have","just","know","like","not","okay","right","she","that","the","them","then","there","they","this","want","was","well","were","what","will","with","would","yeah","you","your"]);function er(e){const t=new Set;for(const n of e.toLowerCase().split(/[^a-z0-9À-ɏ]+/))n.length<Is||Ms.has(n)||t.add(n);return[...t]}function tr(e,t){if(!e.length)return 0;if(!t.length)return 1;const n=new Set(t),r=new Set(e);let i=0;for(const o of r)n.has(o)||(i+=1);return i/r.size}function nr(e,t=qn){const n=e.filter(a=>!a.partial&&typeof a.text=="string");if(!n.length)return{text:"",segmentCount:0};const i=n.reduce((a,s)=>Math.max(a,s.endedAt??0),0)-t;return{text:n.filter(a=>(a.endedAt??0)>=i).map(a=>Xn(a.text).trim()).filter(Boolean).join(" ").replace(/\s+/g," ").trim(),segmentCount:n.length}}const rr=60;function Os(e,t,n=rr){const r=new Set(e),i=[...e];for(const o of t)!o||r.has(o)||(r.add(o),i.push(o));return i.slice(-n)}function ws(e){const{segments:t,now:n,state:r}=e;if(r.lastTriggerAt&&n-r.lastTriggerAt<Jn)return{trigger:!1,reason:"too_soon"};const i=nr(t,e.windowMs);if(!i.text)return{trigger:!1,reason:"no_speech"};const o=i.segmentCount-(r.lastSegmentCount??0);if(r.lastQueryTerms&&o<Zn)return{trigger:!1,reason:"too_few_new"};const a=er(i.text);return a.length?r.lastQueryTerms?.length&&tr(a,r.lastQueryTerms)<Qn?{trigger:!1,reason:"same_topic"}:{trigger:!0,text:i.text,terms:a,segmentCount:i.segmentCount}:{trigger:!1,reason:"no_speech"}}const Rs=["personal","workspace","connections","work","ai"],Cs="navNotice",te={NL:{callingCode:"31",trunkPrefix:"0",nsnMin:7,nsnMax:9},BE:{callingCode:"32",trunkPrefix:"0",nsnMin:8,nsnMax:9},LU:{callingCode:"352",nsnMin:6,nsnMax:9},DE:{callingCode:"49",trunkPrefix:"0",nsnMin:6,nsnMax:13},FR:{callingCode:"33",trunkPrefix:"0",nsnMin:9,nsnMax:9},GB:{callingCode:"44",trunkPrefix:"0",nsnMin:9,nsnMax:10},IE:{callingCode:"353",trunkPrefix:"0",nsnMin:7,nsnMax:9},ES:{callingCode:"34",nsnMin:9,nsnMax:9},PT:{callingCode:"351",nsnMin:9,nsnMax:9},IT:{callingCode:"39",nsnMin:6,nsnMax:11},AT:{callingCode:"43",trunkPrefix:"0",nsnMin:7,nsnMax:13},CH:{callingCode:"41",trunkPrefix:"0",nsnMin:9,nsnMax:9},DK:{callingCode:"45",nsnMin:8,nsnMax:8},SE:{callingCode:"46",trunkPrefix:"0",nsnMin:7,nsnMax:13},NO:{callingCode:"47",nsnMin:8,nsnMax:8},FI:{callingCode:"358",trunkPrefix:"0",nsnMin:5,nsnMax:12},PL:{callingCode:"48",nsnMin:9,nsnMax:9},US:{callingCode:"1",nsnMin:10,nsnMax:10},CA:{callingCode:"1",nsnMin:10,nsnMax:10}},ir="NL",Ns=15,ks=8,vs=Array.from(new Set(Object.values(te).map(e=>e.callingCode))).sort((e,t)=>t.length-e.length);function Ze(e){if(e)return te[e.trim().toUpperCase()]}function H(e,t){return e.length>=t.nsnMin&&e.length<=t.nsnMax}function Qe(e){if(e.length>Ns)return null;for(const t of vs){if(!e.startsWith(t))continue;const n=e.slice(t.length);for(const r of Object.values(te)){if(r.callingCode!==t)continue;const i=r.trunkPrefix,o=i&&n.startsWith(i)?n.slice(i.length):n;if(H(o,r))return`+${t}${o}`}return null}return e.length<ks?null:`+${e}`}function Ds(e){let t=e.trim();const n=t.match(/^(sips?|tel|whatsapp):/i);n&&(t=t.slice(n[0].length));const r=t.indexOf("@");return r>=0&&(t=t.slice(0,r)),t.trim()}function xs(e){if(!e)return!1;const t=e.indexOf("@");if(t<=0)return!1;const n=e.slice(0,t).trim();return!/^[+\d\s().-]+$/.test(n)}function Se(e,t){if(!e)return null;const n=Ds(e);if(!n)return null;const r=n.startsWith("+"),i=n.replace(/\D/g,"");if(!i)return null;if(r)return Qe(i);if(i.startsWith("00"))return Qe(i.slice(2));const o=Ze(t)??Ze(ir);if(!o)return null;const a=o.trunkPrefix;if(a&&i.startsWith(a)){const s=i.slice(a.length);return H(s,o)?`+${o.callingCode}${s}`:null}if(i.startsWith(o.callingCode)){const s=i.slice(o.callingCode.length);if(H(s,o))return`+${o.callingCode}${s}`}return!a&&H(i,o)?`+${o.callingCode}${i}`:null}function Ls(e,t=9){const n=(e??"").replace(/\D/g,"");return n.length<t?null:n.slice(-t)}function Le(e){if(!e)return null;const t=e.trim().toLowerCase(),n=t.lastIndexOf("@");if(n<=0||n===t.length-1)return null;const r=t.slice(0,n).split("+")[0],i=t.slice(n+1);return!r||!i.includes(".")?null:`${r}@${i}`}function Ps(e){const t=Le(e);return t?t.slice(t.lastIndexOf("@")+1):null}const Us=new Set(["co.uk","org.uk","gov.uk","ac.uk","com.au","co.nz","com.br","co.za"]);function or(e){if(!e)return null;const t=e.trim().toLowerCase().replace(/\.$/,"").split(".").filter(Boolean);if(t.length<2)return null;const n=t.slice(-2).join(".");return Us.has(n)&&t.length>=3?t.slice(-3).join("."):n}const ar=new Set(["gmail.com","googlemail.com","outlook.com","hotmail.com","hotmail.nl","hotmail.be","hotmail.co.uk","live.com","live.nl","live.be","msn.com","yahoo.com","yahoo.co.uk","ymail.com","icloud.com","me.com","mac.com","aol.com","gmx.net","gmx.de","web.de","protonmail.com","proton.me","pm.me","tutanota.com","zoho.com","mail.com","ziggo.nl","kpnmail.nl","planet.nl","home.nl","casema.nl","chello.nl","xs4all.nl","telfort.nl","hetnet.nl","zonnet.nl","upcmail.nl","quicknet.nl","telenet.be","skynet.be","proximus.be","scarlet.be"]);function $s(e){const t=or(e);return t?ar.has(t):!1}function Ks(e){if(!e)return!1;const t=e.trim().toLowerCase();return t==="tel"||t==="sms"||t==="whatsapp"||t==="fax"}function Bs(e,t,n){if(!e||!t)return null;const r=e.trim().toLowerCase();if(r==="tel"||r==="sms"||r==="whatsapp"){const o=Se(t,n);return o?`tel:${o}`:null}if(r==="fax"){const o=Se(t,n);return o?`fax:${o}`:null}if(r==="mailto"||r==="email"){const o=Le(t);return o?`mailto:${o}`:null}const i=t.trim().toLowerCase();return i?`${r}:${i}`:null}const Fs=[/<blockquote/i,/class="?gmail_quote/i,/id="?[^"]*divRplyFwdMsg/i,/id="?[^"]*mail-editor-reference-message-container/i,/-{3,}\s*Original Message\s*-{3,}/i,/\n_{5,}\s*\n/,/\bOn\b[\s\S]{0,200}?\bwrote:/i],et=/^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i,Gs=/^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;function Hs(e){const t=e.split(`
10
- `);for(let n=0;n<t.length;n++)if(Gs.test(t[n])||et.test(t[n])&&t.slice(n+1,n+4).some(r=>et.test(r)))return t.slice(0,n).join(`
11
- `).trim();return e}const Ws=/^(?:https?:|mailto:|tel:)/i,Vs=/^(?:https?:|cid:|data:image\/)/i;function ae(e,t){const n=e.match(new RegExp(`\\b${t}\\s*=\\s*(?:"([^"]*)"|'([^']*)'|([^\\s">]+))`,"i"));return(n?.[1]??n?.[2]??n?.[3]??"").trim()}const js=/(!\[[^\]]*\]\([^)]*\))/;function tt(e){return e.replace(/\s+/g," ").trim().split(js).map((t,n)=>n%2===1?t:t.replace(/[[\]]/g,"\\$&")).join("")}function se(e){return e.replace(/[()\s<>"]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase().padStart(2,"0")}`)}function Ys(e){return e.replace(/<img\b([^>]*?)\/?>/gi,(n,r)=>{const i=ae(r,"src");return Vs.test(i)?`![${tt(ae(r,"alt"))}](${se(i)})`:""}).replace(/<a\b([^>]*)>([\s\S]*?)<\/a\s*>/gi,(n,r,i)=>{const o=tt(i.replace(/<[^>]*>/g,"")),a=ae(r,"href");return Ws.test(a)?`[${o||se(a)}](${se(a)})`:o})}const zs=/<table\b[^>]*>((?:(?!<table\b)[\s\S])*?)<\/table\s*>/i,Xs=/<tr\b[^>]*>([\s\S]*?)<\/tr\s*>/gi,qs=/<(t[dh])\b([^>]*)>([\s\S]*?)<\/\1\s*>/gi;function Js(e,t){return/<table\b/i.test(e)||e.includes(`
9
+ `:t==="mail"?"<br><br>-- <br>":"<br><br>"}${i.body}`:n}function gi(e){return e.endpoints??[]}const wt=36e5,Rt=864e5,b=-1/0,hi=e=>e.score>b,C={urgent:40,high:25,normal:10,low:0};function Ei(e){return Object.fromEntries(e.map(t=>[t.resourceId,t]))}const Ai=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i,Ct=/\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;function Nt(e,t){return!!(e&&Ai.test(e)||t&&Ct.test(t))}const kt=3,vt=600;function Si(e,t){return e>=kt||t>=vt}const Dt=["list-unsubscribe","list-unsubscribe-post","list-id","precedence","auto-submitted","x-auto-response-suppress","feedback-id","x-mailer"];function _i(e){const t={};for(const n of e){const r=n.name?.toLowerCase();r&&n.value!==void 0&&Dt.includes(r)&&(t[r]=n.value)}return t}const yi=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|notifications?|bounce|postmaster|mailer)@/i,Ti=/(^|[._+-])(newsletter|nieuwsbrief|marketing|mailing)@/i;function bi(e){const t=e.headers??{},n=e.from?.email,r=t["auto-submitted"]?.toLowerCase();if(r&&r!=="no"||t["x-auto-response-suppress"]||n&&yi.test(n))return"automated";const i=t.precedence?.toLowerCase();if(t["list-unsubscribe"]||t["list-unsubscribe-post"]||t["list-id"]||i==="bulk"||i==="list"||e.body&&Ct.test(e.body)||n&&Ti.test(n))return"marketing"}function xt(e,t){return e.lastActivityAt?!(e.seenBy??[]).includes(t):!1}const Lt=["open"],Pt=1e3,Ut={urgent:1,high:4,normal:8,low:24},$t=72;function Kt(e){return e.lastActivityAt??(e.createdAt?new Date(pt(e)).getTime():0)}function Bt(e,t){return Ft(t.remindersById?.[e.id],e,t.now)}function Ft(e,t,n){return!e||e.remindAt<=n?!1:!((t.lastActivityAt??0)>e.parkedAt&&t.lastActivityPreview?.direction==="inbound")}const Gt=e=>ct(e)==="outbound_message",Ht=e=>Lt.includes(e);function J(e,t){return Math.max(0,(t-Kt(e))/wt)}function Wt(e,t){const n=e.assignedInboxId?t?.[e.assignedInboxId]:void 0;return typeof n=="number"&&n>0?n:Ut[e.priority??"normal"]}function Ii(e){const t={};for(const n of e)typeof n.slaHours=="number"&&n.slaHours>0&&(t[n.id]=n.slaHours);return t}function Mi(e,t,n){return!Ht(e.status)||e.firstResponseAt?!1:J(e,t)>Wt(e,n)}function Vt(e,t){const n=e.lastActivityPreview;return n?.direction!=="outbound"||!Gt(n.type)?!1:J(e,t)<$t}function Oi(e,t){if(!Ht(e.status))return{score:b,reasons:[]};if(e.snoozedTill&&e.snoozedTill>t.now)return{score:b,reasons:[]};if(Vt(e,t.now))return{score:b,reasons:[]};if(Bt(e,t))return{score:b,reasons:[]};let n=0;const r=[],i=e.priority??"normal";C[i]>0&&(n+=C[i],r.push(`priority:${i}`)),xt(e,t.userId)&&(n+=20,r.push("unseen")),e.assignedUserId&&e.assignedUserId===t.userId&&(n+=15,r.push("assigned-to-you"));const o=J(e,t.now);if(o>0){const c=Math.min(o*2,30);n+=c,o>=1&&r.push(`waiting:${Math.round(o)}h`)}const a=e.lastActivityPreview;return a?.type==="AI_ACTION_PROPOSED"&&(n+=30,r.push("awaiting-approval")),a?.direction==="outbound"&&Gt(a.type)&&(n+=10,r.push("no-reply")),!e.firstResponseAt&&e.lastActivityPreview?.direction==="inbound"&&(n+=10,r.push("awaiting-reply")),(e.tags?.some(c=>c==="marketing"||c==="automated")||Nt(e.remoteParty?.resource,e.lastActivityPreview?.snippet))&&(n-=Pt,r.push("bulk")),{score:n,reasons:r}}const wi=e=>!!e.assignedUserId||!!e.assignedInboxId,Ri=e=>e.status==="closed",Ci=e=>({urgent:10,high:5,normal:2,low:1})[e.priority]||0,Ni=(e,t=30)=>e.title?.length<=t?e.title:`${e.title.substring(0,t)}...`;function ki(e,t){const n=e.labels??[];return n.find(r=>r.locale===t)?.label??n[0]?.label??e.url}function vi(e,t,n){const r=e.translations??[];return r.find(i=>i.locale===t)??(n?r.find(i=>i.locale===n):void 0)??{locale:t}}const ge=[{code:"nl",label:"Nederlands",english:"Dutch"},{code:"en",label:"English",english:"English"},{code:"de",label:"Deutsch",english:"German"},{code:"fr",label:"Français",english:"French"},{code:"es",label:"Español",english:"Spanish"},{code:"it",label:"Italiano",english:"Italian"},{code:"pt",label:"Português",english:"Portuguese"},{code:"pl",label:"Polski",english:"Polish"},{code:"sv",label:"Svenska",english:"Swedish"},{code:"da",label:"Dansk",english:"Danish"},{code:"nb",label:"Norsk bokmål",english:"Norwegian Bokmål"},{code:"fi",label:"Suomi",english:"Finnish"},{code:"tr",label:"Türkçe",english:"Turkish"}];function jt(e){const t=(e??"").toLowerCase();return ge.find(n=>n.code===t)??ge.find(n=>n.code===t.split("-")[0])}function Di(e){return jt(e)?.label??e}function xi(e){const t=jt(e);return t?t.english===t.label?`${t.english} (${t.code})`:`${t.english} — ${t.label} (${t.code})`:e}const Oe=3;function Yt(e,t){const n=new Set;let r=1,i=t.get(e)?.parentId;for(;i;){if(n.has(i)||(n.add(i),r++,r>Oe+1))return 1/0;i=t.get(i)?.parentId}return r}function Li(e,t,n){if(!e)return!0;if(e===t)return!1;const r=new Map(n.map(a=>[a.id,a]));if(!r.has(e)||t&&zt(e,t,r))return!1;const i=Yt(e,r),o=t?we(t,n):1;return i+o<=Oe}function zt(e,t,n){const r=new Set;let i=n.get(e)?.parentId;for(;i;){if(i===t)return!0;if(r.has(i))return!1;r.add(i),i=n.get(i)?.parentId}return!1}function we(e,t,n=new Set){if(n.has(e))return 1;n.add(e);const r=t.filter(i=>i.parentId===e);return r.length?1+Math.max(...r.map(i=>we(i.id,t,n))):1}const Xt="en";function qt(e){return e.defaultLocale||e.locale||Xt}function Pi(e){const t=new Set,n=[];for(const r of[qt(e),...e.locales??[]])!r||t.has(r)||(t.add(r),n.push(r));return n}function Ui(e,t,n){const r=e.translations??[];return r.find(i=>i.locale===t)?.name??(n?r.find(i=>i.locale===n)?.name:void 0)??e.name}const he=["lookup","condition","parallel","for-each"];function Ee(e){for(const t of e){if(!he.includes(t.type))return`staptype "${t.type}" mag niet meelezen (alleen ${he.join(", ")})`;if(t.type==="parallel")for(const n of t.branches??[]){const r=Ee(n);if(r)return r}if(t.type==="for-each"){const n=Ee(t.body??[]);if(n)return n}}return null}function $i(e,t){switch(e.kind){case"org":return!0;case"team":return!!t.teamId&&e.teamId===t.teamId;case"personal":return e.userId===t.userId}}function Ki(e,t){return e.filter(n=>n.enabled&&$i(n.ownerScope,t))}function Bi(e){return e.credentialScope?e.credentialScope:(e.authMode??"header")==="header"||e.oauth?.scope==="org"?"shared":"per-user"}function Fi(e){return`mcp__${e}__`}const Gi=1e3,Hi=2e3,Wi=500,Vi=12e3,ji=4e3,Jt=["contact","company","work_item"];function Yi(e){if(!e)return!1;const t=e.slice(0,e.indexOf(":"));return Jt.includes(t)}const zi="onboarding-source",Xi=["support","billing","availability","sales","onboarding"],qi=["keep","replace"];function Zt(e){switch(e.kind){case"user":return`user:${e.userId}`;case"team":return`team:${e.teamId}`;case"org":return"org"}}function Ji(e){if(typeof e!="string")return;const t=e.trim();if(t==="org")return{kind:"org"};const n=t.indexOf(":");if(n<=0)return;const r=t.slice(0,n),i=t.slice(n+1).trim();if(i){if(r==="user")return{kind:"user",userId:i};if(r==="team")return{kind:"team",teamId:i}}}function Qt(e){return Zt(e)}function en(e){switch(e.kind){case"personal":return{kind:"user",userId:e.userId};case"team":return{kind:"team",teamId:e.teamId};case"org":return{kind:"org"}}}const tn=en;function Zi(e){return e.agentId?{kind:"user",userId:e.agentId}:tn(e.ownerScope)}function Qi(e){return Qt(e)}function eo(e,t){if(!t)return;let n=e;for(const r of t.split(".")){if(n===null||typeof n!="object")return;n=n[r]}return n}function to(e,t){return e.targets.find(n=>n.activityTypes.includes(t))}function no(e,t){if(t)return e.targets.find(n=>n.id===t)}function nn(e){return e?.kind==="assignment"}function ro(e){const{trigger:t,agentId:n,target:r,activityType:i,assigneeUserId:o,authorUserId:a}=e;return nn(t)?n?r?r.activityTypes.includes(i)?o?o!==n?"assigned to someone else":a&&a===n?"the agent assigned this to itself, which would restart its own run":null:`no assignee found at ${r.assigneePath}`:`activity type ${i} does not announce an assignment for ${r.id}`:`assignment target kind "${t.targetKind}" is not declared by any installed app`:"this playbook has no agent, so an assignment can never be for it":"trigger is not an assignment trigger"}function io(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/__/g," · ").replace(/\./g," · ").replace(/_/g," ")}const oo=[{name:"text",type:"string"},{name:"subject",type:"string"},{name:"from",type:"string"},{name:"type",type:"string"},{name:"direction",type:"string"},{name:"channelId",type:"string"},{name:"interactionId",type:"string"},{name:"itemId",type:"string"},{name:"activityId",type:"string"},{name:"authorType",type:"string"},{name:"authorName",type:"string"},{name:"textRaw",type:"string"},{name:"fromStatus",type:"string"},{name:"toStatus",type:"string"},{name:"toCategory",type:"string"},{name:"contactId",type:"string"},{name:"companyId",type:"string"},{name:"priority",type:"string"},{name:"inboxId",type:"string"},{name:"topicId",type:"string"},{name:"assigneeUserId",type:"string"}],ao={topics:[{name:"topicId",type:"string"},{name:"topic",type:"string"},{name:"confidence",type:"number"},{name:"reasoning",type:"string"}],question:[{name:"answer",type:"boolean"},{name:"reasoning",type:"string"}],extract:[]};function rn(e){return`${e.type}:${e.id}`}const on="interaction";function an(e){return e?.type===on?e.id:void 0}const sn=64,cn=8e3;function so(e){const t=typeof e=="number"?e:Number(String(e??"").trim());if(!(!Number.isFinite(t)||t<=0))return Math.min(Math.max(Math.round(t),sn),cn)}const co={kind:"workflow",steps:[]};function lo(e){return e?.kind==="workflow"?e.steps:[]}function uo(e){return e?.kind==="procedure"?e.procedure:void 0}function ln(e){const t=e?.approved??0,n=t+(e?.rejected??0);return{total:n,rate:n?t/n:0}}const un=10,dn=.9;function po(e){const{total:t,rate:n}=ln(e);return t>=un&&n>=dn}const pn=["done","escalated","failed","stopped"];function fo(e){return pn.includes(e)}function fn(e){return e==="waiting"}function mo(e){return e==="running"||fn(e)}function Re(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}function go(e){const t=Re(e);return t?rn(t):void 0}function ho(e){return an(Re(e))}function Eo(e){const t=[],n=new Map;for(const r of[...e].sort(Ao)){const i=n.get(r.emoji);if(i){i.push(r.actor);continue}t.push(r.emoji),n.set(r.emoji,[r.actor])}return t.map(r=>{const i=n.get(r);return{emoji:r,count:i.length,actors:i}}).sort((r,i)=>i.count-r.count||t.indexOf(r.emoji)-t.indexOf(i.emoji))}const Ao=(e,t)=>(e.createdAt??0)-(t.createdAt??0);function So(e,t){return t?e.actors.some(n=>n.type==="user"&&n.id===t):!1}const Ae=6e4,_o=36e5,N=864e5,mn=800;function je(e,t){const n=Date.UTC(e,t+1,0);return n-new Date(n).getUTCDay()*N+_o}function yo(e){const t=new Date(e).getUTCFullYear();return e>=je(t,2)&&e<je(t,9)}function gn(e,t){const n=t.dst==="eu"&&yo(e)?60:0;return(t.utcOffsetMinutes+n)*Ae}function To(e){return(e+3)%7+1}function hn(e,t){const n=gn(e,t),r=e+n,i=Math.floor(r/N);if(!t.days.includes(To(i)))return null;const o=i*N;return{open:o+t.fromMinutes*Ae-n,close:o+t.toMinutes*Ae-n}}function En(e,t){const n=gn(e,t),r=e+n;return(Math.floor(r/N)+1)*N-n}function j(e,t,n){if(t<=e)return 0;if(!n)return t-e;let r=0,i=e;for(let o=0;o<mn&&i<t;o++){const a=hn(i,n);if(a){const s=Math.max(i,a.open),c=Math.min(t,a.close);c>s&&(r+=c-s)}i=En(i,n)}return r}function Z(e,t,n){if(!n)return e+t;let r=t,i=e;for(let o=0;o<mn;o++){const a=hn(i,n);if(a){const s=Math.max(i,a.open);if(a.close>s){const c=a.close-s;if(r<=c)return s+r;r-=c}}i=En(i,n)}return e+t}function bo(e){const t=/^([01]\d|2[0-3]):([0-5]\d)$/.exec(e);return t?Number(t[1])*60+Number(t[2]):null}const Y=1,z=2;function Io(e){return e==="snoozed"?Y:z}function Q(e){const t=e.calendar;return t&&Array.isArray(t.days)?t:null}const Mo=["speed_of_answer","first_response","next_response","resolution","close"],Oo=["snoozed","waiting_for_customer"],wo=6e4,An=["speed_of_answer","first_response","next_response"],Ro=[...An,"resolution","close"];function v(e){return e.state==="running"||e.state==="paused"}function Co(e,t){return v(e)?{state:(e.state==="paused"?e.remainingMs>0:t<=e.dueAt)?"hit":"missed",settledAt:Math.max(t,e.startedAt)}:null}function Ye(e){return v(e)?{state:"void"}:null}function No(e,t,n,r){if(!v(e)||(e.pauseBits&t)!==0)return null;const i=e.pauseBits|t;return e.state==="paused"?{pauseBits:i}:{pauseBits:i,state:"paused",remainingMs:j(n,e.dueAt,r)}}function ko(e,t,n,r){if(!v(e)||(e.pauseBits&t)===0)return null;const i=e.pauseBits&~t;return i!==0?{pauseBits:i}:{pauseBits:i,state:"running",dueAt:Z(n,e.remainingMs,r)}}function vo({event:e,at:t,now:n,clocks:r,profile:i}){const o=Q(i),a=Math.min(t,n),s=r.map(p=>({...p})),c=[],m=(p,f)=>{f&&(c.push({op:"patch",clockId:p.id,patch:f}),Object.assign(p,f))},h=p=>{for(const f of s)f.metric===p&&m(f,Co(f,a))},E=p=>{for(const f of s)p.includes(f.metric)&&m(f,Ye(f))},M=p=>{for(const f of s)m(f,No(f,p,a,o))},O=p=>{for(const f of s)m(f,ko(f,p,a,o))},ne=p=>s.reduce((f,T)=>T.metric===p?Math.max(f,T.attempt):f,0)+1,D=p=>s.some(f=>f.metric===p&&v(f)),x=(p,f)=>{const T=i.targets.find(lr=>lr.metric===p);if(!T)return;const Pe=T.minutes*wo;c.push({op:"start",metric:p,attempt:ne(p),startedAt:f,targetMs:Pe,dueAt:Z(f,Pe,o)})};switch(e){case"apply":{for(const p of s)p.profileId!==i.id&&m(p,Ye(p));for(const p of i.targets){if(p.metric==="next_response")continue;s.some(T=>T.metric===p.metric&&T.profileId===i.id)||x(p.metric,a)}break}case"answered":h("speed_of_answer");break;case"outbound":{h("first_response"),h("next_response"),i.pauseOn.includes("waiting_for_customer")&&M(z);break}case"inbound":{O(z),!D("first_response")&&!D("next_response")&&x("next_response",a);break}case"resolved":h("resolution");break;case"closed":h("close"),h("resolution"),E(An);break;case"reopened":D("resolution")||x("resolution",a),D("close")||x("close",a);break;case"snoozed":i.pauseOn.includes("snoozed")&&M(Y);break;case"unsnoozed":O(Y);break;case"discarded":E(Ro);break}return c}function Sn(e){return e.state==="running"||e.state==="paused"}function X(e,t){const n=Q(e);return e.state==="paused"?e.remainingMs:t>=e.dueAt?-j(e.dueAt,t,n):j(t,e.dueAt,n)}function Do(e,t){return e.state==="paused"?Z(t,e.remainingMs,Q(e)):e.dueAt}function xo(e,t){const n=e.filter(Sn);if(!n.length)return;const r=n.filter(o=>o.state==="running");return(r.length?r:n).reduce((o,a)=>X(a,t)<X(o,t)?a:o)}function Lo(e,t){if(e.state==="missed")return"breached";if(e.state==="hit")return"met";if(e.state==="paused")return"paused";if(e.state==="void")return"met";const n=X(e,t);return n<=0?"breached":n<=e.targetMs/5?"urgent":"running"}function Po(e){const t=Math.floor(Math.abs(e)/1e3),n=Math.floor(t/86400),r=Math.floor(t%86400/3600),i=Math.floor(t%3600/60);return n?r?`${n}d ${r}u`:`${n}d`:r?i?`${r}u ${i}m`:`${r}u`:i?`${i}m`:`${t%60}s`}function Uo(e,t){const n=e.accumulatedSeconds||0;return e.runningSince?n+Math.max(0,Math.floor((t-e.runningSince)/1e3)):n}function $o(e,t){const n=Math.max(1,Math.ceil(Math.max(0,e)/60));if(!t||t==="exact")return n*60;const r=Number(t);return!Number.isFinite(r)||r<=0?n*60:Math.ceil(n/r)*r*60}function Ko(e){const t=Math.max(0,Math.round(e/60));return`${Math.floor(t/60)}:${String(t%60).padStart(2,"0")}`}function Bo(e){const t=Math.max(0,Math.floor(e)),n=o=>String(o).padStart(2,"0"),r=Math.floor(t/60)%60,i=Math.floor(t/3600);return i>0?`${i}:${n(r)}:${n(t%60)}`:`${n(r)}:${n(t%60)}`}function _n(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function Fo(e,t){const n=_n(e)||"werksoort",r=new Set(t);if(!r.has(n))return n;for(let i=2;i<500;i++){const o=`${n}-${i}`;if(!r.has(o))return o}return`${n}-${r.size+1}`}function Go(e,t){const n=e.ownerScope;return!n||n.kind==="org"?!0:t.includes(n.teamId)}function Ho(e){return e.filter(t=>!t.archived).sort(yn)}function yn(e,t){const n=(e.order??0)-(t.order??0);return n!==0?n:(e.label||"").localeCompare(t.label||"")}const Tn=20,bn=20,F=300;function I(e){return e.toLowerCase().replace(/[^\p{L}\p{N}\s]/gu," ").replace(/\s+/g," ").trim()}function In(e){const t=e.replace(/\s+/g," ").trim();if(t.length<=F)return t;const n=t.slice(0,F),r=Math.max(n.lastIndexOf(". "),n.lastIndexOf("! "),n.lastIndexOf("? "));return r>F*.6?n.slice(0,r+1):`${n.trimEnd()}…`}function Wo(e,t){const n=In(t.text),r=I(n);if(!r||(e.examples??[]).some(a=>I(a)===r))return null;const i=e.exampleCandidates??[],o=i.findIndex(a=>I(a.text)===r);if(o>=0){if(i[o].corrected||!t.corrected)return null;const a=[...i];return a[o]={...a[o],corrected:!0,addedAt:t.addedAt},ze(a)}return ze([{...t,text:n},...i]).slice(0,bn)}function ze(e){return[...e].sort((t,n)=>Number(n.corrected)-Number(t.corrected)||n.addedAt-t.addedAt)}function Vo(e,t){const n=I(t),r=(e.examples??[]).filter(o=>o.trim());return{examples:r.some(o=>I(o)===n)?r:[...r,t].slice(-Tn),exampleCandidates:Mn(e,t)}}function Mn(e,t){const n=I(t);return(e.exampleCandidates??[]).filter(r=>I(r.text)!==n)}function On(e,t){const n=e.ownerScope;return n?n.kind==="org"?!0:n.kind==="team"?!!t&&n.teamId===t:!1:!1}function jo(e,t){return e.filter(n=>On(n,t))}function Yo(e){return e.type==="agent"}const zo="WORK_COMMENT_ADDED",Xo="WORK_ITEM_ASSIGNED",qo="WORK_ITEM_STATUS_CHANGED";function Jo(e,t){const n=r=>{const i=new Date(r);return i.setHours(0,0,0,0),i.getTime()};return Math.round((n(e)-n(t))/Rt)}function Zo(e,t){if(e.closedAt!=null)return{score:b,reasons:[]};const n=t.remindersById?.[e.id];if(n&&n.remindAt>t.now)return{score:b,reasons:[]};let r=0;const i=[],o=e.priority??"normal";if(C[o]>0&&(r+=C[o],i.push(`priority:${o}`)),typeof e.dueDate=="number"){const a=Jo(e.dueDate,t.now);a<0?(r+=35,i.push("overdue")):a===0&&(r+=20,i.push("due-today"))}return e.source?.initiator==="system"&&e.source.systemReason&&(r+=15,i.push(`auto:${e.source.systemReason}`)),{score:r,reasons:i}}const wn="work_item",Rn="work_project",Cn="work_activity";function Nn(e){return`${wn}:${e}`}function Ce(e){return`${Rn}:${e}`}function Qo(e){return`${Cn}:${e}`}function ea(e,t,n){const r=`${e}-${t}`;return n?`${r}-${n}`:r}function ta(e){const t=/^([A-Za-z0-9]{2,8})-(\d+)(?:-(\d+))?$/.exec((e||"").trim());return t?{projectKey:t[1].toUpperCase(),sequenceNumber:Number(t[2]),...t[3]?{subSequence:Number(t[3])}:{}}:null}function na(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toUpperCase().replace(/[^A-Z0-9]/g,"").slice(0,3)||"PRJ"}function ra(e,t=25){const n=new Set([Nn(e.id)]);e.projectId&&n.add(Ce(e.projectId));for(const r of e.ancestorKeys??[])n.add(r);for(const r of e.partyKeys??[])n.add(r);return Array.from(n).slice(0,t)}function ia(e){return[Ce(e.id)]}const ee=[{key:"open",label:"status_open",category:"todo",order:0},{key:"in_progress",label:"status_in_progress",category:"in_progress",order:1},{key:"done",label:"status_done",category:"done",order:2},{key:"cancelled",label:"status_cancelled",category:"done",order:3}],Ne=ee.map(e=>e.key);function kn(e){return e?.statuses?.length?e.statuses:ee}function vn(e,t){return t.find(n=>n.key===e)?.category??"todo"}function oa(e,t){return t.find(n=>n.key===e)}function aa(e){const t=kn(e),n=e?.defaultStatusKey;return n&&t.some(r=>r.key===n)?n:Dn(t)[0]?.key??ee[0].key}function Dn(e){return[...e].sort((t,n)=>{const r=(t.order??0)-(n.order??0);return r!==0?r:(t.label||"").localeCompare(n.label||"")})}function sa(e,t){return vn(e,t)==="done"}function xn(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function ca(e,t){const n=xn(e)||"status",r=new Set([...t,...Ne]);if(!r.has(n))return n;for(let i=2;i<500;i++){const o=`${n}-${i}`;if(!r.has(o))return o}return`${n}-${r.size+1}`}function la(e){const t=[];if(!e.length)return[{index:-1,reason:"empty"}];const n=new Set;return e.forEach((r,i)=>{if(!r.key){t.push({index:i,reason:"missing_key"});return}Ne.includes(r.key)&&t.push({index:i,reason:"reserved_key",key:r.key}),n.has(r.key)&&t.push({index:i,reason:"duplicate_key",key:r.key}),n.add(r.key)}),e.some(r=>r.category==="todo"||r.category==="in_progress")||t.push({index:-1,reason:"no_open"}),e.some(r=>r.category==="done")||t.push({index:-1,reason:"no_done"}),t}function ua(e){return e.completedAt?"completed":e.startedAt?"active":"planned"}const da=new Set(["image/png","image/jpeg","image/jpg","image/gif","image/webp"]),pa=new Set(["text/plain","text/markdown","text/csv","application/json","text/html","application/xml","text/xml"]);function Ln(e){const t=(e??"").trim().toLowerCase().split(";")[0];return t?da.has(t)?"image":t==="application/pdf"?"pdf":pa.has(t)?"text":t.startsWith("audio/")?"audio":"unsupported":"unsupported"}const w=1024*1024,Pn={image:5*w,pdf:20*w,text:1*w,audio:20*w},fa=25*w,ma=5;function ga(e,t){const n=Ln(e);return n==="unsupported"?"unsupported":t>Pn[n]?"too-large":null}function ha(e){return e.access!=="read"&&e.effect!=="internal"}function Un(e){return`${e.kind}:${e.id||e.url||e.title}`}function Ea(e,t=[]){const n=new Set(t),r=[],i=[];for(const o of e){const a=Un(o);n.has(a)||(n.add(a),r.push(o),i.push(a))}return{sources:r,keys:i}}const Aa="assist-source",Sa=["blocking","due","open"];function _a(e,t){const[n,r]=(e.subjectKey??"").split(":");return n===t&&r?r:void 0}const Xe={blocking:0,due:1,open:2};function ya(e,t){return Xe[e.band??"open"]-Xe[t.band??"open"]||(t.priority??0)-(e.priority??0)||e.id.localeCompare(t.id)}function Ta(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&e.canHold(t.providerId))}function ba(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&!e.canHold(t.providerId))}function Ia(e){return e.sessions.some(n=>n.id!==e.exceptSessionId&&(n.state==="connected"||n.state==="on_hold"))?{admit:!1,reason:"busy"}:{admit:!0}}function $n(e,t){const n=new Set(e.disabledIntents??[]),r=e.intentOverrides??{},i=t.intents.filter(a=>!n.has(a.intent)).map(a=>Oa(a,r[a.intent]));if(!e.extraIntents||e.extraIntents.length===0)return i;const o=new Set(i.map(a=>a.intent));for(const a of e.extraIntents)o.has(a.intent)||(i.push(a),o.add(a.intent));return i}function Kn(e,t){const n={};for(const r of e.intents){if(!r.togglable)continue;const i=t?.[r.intent];n[r.intent]=i??r.defaultEnabled??!0}return n}function Ma(e,t){const n=Kn(e,t);return Object.entries(n).filter(([,r])=>!r).map(([r])=>r)}function Oa(e,t){return t?{intent:t.intent??e.intent,targetSchemes:t.targetSchemes??e.targetSchemes,transport:t.transport??e.transport}:e}function wa(e,t){const n=[];for(const r of e){if(!r.enabled)continue;const i=t[r.providerId];if(i)for(const o of $n(r,i))n.push({channel:r,description:i,capability:o})}return n}function Ra(e,t){return t.filter(n=>n.capability.intent===e)}function Bn(e,t){return t.filter(n=>n.capability.targetSchemes.includes(e))}function Ca(e,t){return Bn(e.scheme,t)}function Na(e,t,n){const r=[];for(const i of e)for(const o of n)o.capability.intent===t&&o.capability.targetSchemes.includes(i.scheme)&&r.push({channelIntent:o,endpoint:i});return r}var Fn=(e=>(e.MAILTO="mailto",e.SIP="sip",e.TEL="tel",e.WEBHOOK="webhook",e.USERNAME="username",e.ID="id",e.CUSTOM="custom",e.URL="url",e.TELEGRAM="telegram",e.WHATSAPP="whatsapp",e.MESSENGER="messenger",e.INSTAGRAM="instagram",e.VIBER="viber",e.SMS="sms",e.FAX="fax",e.TEAMS="teams",e.CALENDAR="calendar",e))(Fn||{});const ka={mailto:"mail",sip:"tel",tel:"tel",fax:"tel",sms:"chat",teams:"chat",telegram:"chat",messenger:"chat",instagram:"chat",viber:"chat",whatsapp:"wa",webhook:"note",url:"note",calendar:"note",username:"note",id:"note",custom:"note"};function va(e){return e?ka[e]??"note":"note"}const Da="message_window",xa="message_templates",La={FROM:"from",TO:"to",CC:"cc",BCC:"bcc",ORGANIZER:"organizer",PRESENTER:"presenter",ATTENDEE:"attendee",OWNER:"owner",MEMBER:"member",GUEST:"guest",HOST:"host",PARTICIPANT:"participant"},Pa=(e,t)=>({intent:e,...t}),Ua="folder_management",$a="remote_search",Ka="message_reactions",Ba={ok:!1,code:"UNSUPPORTED",message:"Provider does not support this op"},Fa="connector",Ga="context.collect",d=e=>({type:"string",description:e}),u=e=>({type:"number",description:e}),G=e=>({type:"boolean",description:e}),_=d("Sheet name. Omit for the sheet the user is looking at."),qe=d("Slide id, as `inspect` reports it.");function l(e,t,n,r,i,o){return{op:e,kinds:t,summary:n,parameters:{type:"object",properties:r,required:i},undoable:o.undoable,visible:o.visible}}const R={undoable:!1,visible:!0},g={undoable:!0,visible:!0},Je={undoable:!1,visible:!0},q={undoable:!1,visible:!1},Ha=[l("pdf.goToPage",["pdf"],"Scroll the viewer to a page.",{page:u("1-based page number.")},["page"],R),l("pdf.search",["pdf"],"Search the document and highlight the matches, as the find bar does.",{query:d("Text to find."),next:G("Jump to the next match instead of the first.")},["query"],R),l("pdf.setTool",["pdf"],"Select a markup tool for the user, so their next click draws it.",{tool:{type:"string",enum:["highlight","text","draw","image","signature","none"],description:"Which tool to arm. `none` puts the tool row back to reading."}},["tool"],R),l("pdf.fillField",["pdf"],"Fill one form field of a fillable PDF.",{field:d("Field name, exactly as `inspect` reports it under `fields`."),value:{type:["string","boolean"],description:"Text for a text field, true/false for a checkbox or radio."}},["field","value"],g),l("pdf.reorderPages",["pdf"],"Put the pages in a different order. Pages left out are deleted.",{order:{type:"array",items:{type:"number"},description:"1-based source page numbers, in the order they should end up in."}},["order"],Je),l("pdf.deletePages",["pdf"],"Remove pages, keeping the rest in order.",{pages:{type:"array",items:{type:"number"},description:"1-based page numbers."}},["pages"],Je),l("pdf.addNote",["pdf"],"Place a text note on a page. Written on save; not visible before that.",{page:u("1-based page number."),text:d("The note's text."),left:u("Distance from the left edge, in PDF points (72 per inch)."),top:u("Distance from the top edge, in PDF points."),width:u("Box width in points. Omit for a sensible default."),height:u("Box height in points. Omit for a sensible default."),fontSize:u("Font size in points. Omit for 12.")},["page","text","left","top"],q),l("pdf.highlightText",["pdf"],"Highlight a phrase on a page. Written on save; not visible before that.",{page:u("1-based page number."),text:d("The exact phrase to highlight, as it appears in the page's text."),occurrence:u("Which occurrence on that page, 1-based. Omit for the first.")},["page","text"],q)],Wa=[l("sheet.setValues",["sheet"],"Write a block of values. The block's shape must match the range.",{sheet:_,range:d("A1 notation, e.g. `B2:D5` or a single `A1`."),values:{type:"array",items:{type:"array",items:{type:["string","number","boolean","null"]}},description:"Rows of cells, top-left first. `null` clears a cell."}},["range","values"],g),l("sheet.setFormula",["sheet"],"Put a formula in every cell of a range.",{sheet:_,range:d("A1 notation."),formula:d("Including the leading `=`.")},["range","formula"],g),l("sheet.setStyle",["sheet"],"Change the look of a range. Only the properties you pass are touched.",{sheet:_,range:d("A1 notation."),bold:G("Bold on or off."),italic:G("Italic on or off."),fontSize:u("Point size."),fontColor:d("CSS colour, e.g. `#b91c1c`."),background:d("CSS colour for the cell fill."),horizontalAlignment:{type:"string",enum:["left","center","right"],description:"Horizontal alignment."},numberFormat:d("Number format pattern, e.g. `#,##0.00` or `0%`.")},["range"],g),l("sheet.insertRows",["sheet"],"Insert empty rows, pushing the rest down.",{sheet:_,at:u("1-based row number to insert before."),count:u("How many. Omit for 1.")},["at"],g),l("sheet.deleteRows",["sheet"],"Delete rows, pulling the rest up.",{sheet:_,at:u("1-based first row to delete."),count:u("How many. Omit for 1.")},["at"],g),l("sheet.insertColumns",["sheet"],"Insert empty columns, pushing the rest right.",{sheet:_,at:u("1-based column number to insert before."),count:u("How many. Omit for 1.")},["at"],g),l("sheet.deleteColumns",["sheet"],"Delete columns, pulling the rest left.",{sheet:_,at:u("1-based first column to delete."),count:u("How many. Omit for 1.")},["at"],g),l("sheet.merge",["sheet"],"Merge a range into one cell.",{sheet:_,range:d("A1 notation.")},["range"],g),l("sheet.unmerge",["sheet"],"Break merged cells in a range apart.",{sheet:_,range:d("A1 notation.")},["range"],g),l("sheet.sort",["sheet"],"Sort a range on one of its columns.",{sheet:_,range:d("A1 notation covering the rows to sort, header excluded."),column:u("1-based column *within the range*, not within the sheet."),ascending:G("Ascending. Omit for ascending.")},["range","column"],g),l("sheet.insertSheet",["sheet"],"Add a new sheet.",{name:d("Name for the new sheet.")},["name"],g),l("sheet.renameSheet",["sheet"],"Rename a sheet.",{sheet:d("Current name."),name:d("New name.")},["sheet","name"],g),l("sheet.deleteSheet",["sheet"],"Remove a sheet and everything on it.",{sheet:d("Name of the sheet to delete.")},["sheet"],g),l("sheet.activate",["sheet"],"Show the user a sheet and select a range on it.",{sheet:_,range:d("A1 notation to select. Omit to only switch sheets.")},[],R)],Va=[l("word.replaceParagraph",["word"],"Rewrite one whole paragraph, keeping its style. This is the verb for shortening or rephrasing something; call it once per paragraph.",{at:u("The offset the paragraph starts at, exactly as `inspect` prints it."),text:d("The new text for that paragraph. A newline starts a further paragraph.")},["at","text"],g),l("word.replaceRange",["word"],"Replace a stretch of text inside a paragraph - a sentence, a phrase. To rewrite whole paragraphs use word.replaceParagraph: a range covering several paragraph styles is refused, because a replacement carries one style and would set the whole span in the first.",{start:u("Character offset where the replaced text starts, as `inspect` reports offsets."),end:u("Character offset just past the last character to replace."),text:d("The replacement text. A newline starts a new paragraph.")},["start","end","text"],g),l("word.insertText",["word"],"Insert text at a character offset, without removing anything.",{index:u("Character offset, as `inspect` reports offsets."),text:d("The text to insert.")},["index","text"],g),l("word.appendText",["word"],"Add text at the end of the document.",{text:d("The text to append.")},["text"],g),l("word.insertParagraph",["word"],"Start a new paragraph, optionally with text in it.",{text:d("Paragraph text. Newlines start further paragraphs."),index:u("Character offset to insert at. Omit for the end of the document.")},[],g),l("word.setSelection",["word"],"Put the user's cursor on a stretch of text, and move the reading window there: the page context carries one window of a long document, and the text around this offset arrives in the next turn.",{start:u("Start character offset."),end:u("End character offset. Omit for a caret.")},["start"],R)],ja=[l("slides.setText",["slides"],"Replace the text of one shape. Written on save; not visible before that, and not undoable.",{slide:qe,element:d("Element id, as `inspect` reports it."),text:d("The new text.")},["slide","element","text"],q),l("slides.setTransform",["slides"],"Move or resize one shape. Only the values you pass change. Written on save; not visible before that, and not undoable.",{slide:qe,element:d("Element id."),left:u("Distance from the left edge, in pixels."),top:u("Distance from the top edge, in pixels."),width:u("Width in pixels."),height:u("Height in pixels.")},["slide","element"],q)],ke=[...Ha,...Wa,...Va,...ja];function Ya(e){return ke.filter(t=>t.kinds.includes(e))}function za(e){return ke.find(t=>t.op===e)}const Xa="documents.describe",qa="documents.inspect",Ja="documents.apply";function Za(e){const t=e.indexOf(":");if(t!==-1)return e.slice(0,t);const n=e.indexOf(".");return n===-1?e:e.slice(0,n)}const Qa="installation-id";function es(e){const t=[];for(const n of Object.keys(e))for(const r of Object.keys(e[n]))t.push({lang:n,key:r,value:e[n][r]});return t}const ts="notification-source",ns=(e,t)=>`${e}.pref.${t}`,rs={ai:["account.read","account.write","agent.read","agent.write","assignment.read","assignment.write","budget.read","budget.write","connector.read","connector.write","context.read","context.write","conversation.read","conversation.write","lens.read","lens.write","message.read","message.write","playbook.read","playbook.write","profile.read","profile.write","run.read","run.write","settings.read","settings.write","tool.read","transcript.write","usage.read"],analytics:["report.read"],"app-store":["app.publish","app.read","app.write","setting.read","setting.write"],assist:["board.read"],automations:["sync.read","sync.write","webhook.read","webhook.write"],communication:["account.read","account.write","activity-type.read","activity.read","activity.write","attachment.read","attribute.read","attribute.write","calendar.read","calendar.write","channel.read","channel.write","custom-field.read","custom-field.write","folder.read","folder.write","inbox.read","inbox.write","interaction.read","interaction.write","reaction.read","reaction.write","reminder.read","template.read","template.write","topic.read","topic.write"],context:["kind.read","kind.write","memory.read","memory.write"],crm:["company.read","company.write","contact.read","contact.write"],"eylo-voip":["account.read","account.write","callflow.read","callflow.write","channel.read","channel.write","contact.read","contact.write","device.read","device.write","group.read","group.write","interaction.read","interaction.write","media.read","media.write","menu.read","menu.write","phone-number.read","phone-number.write","recording.read","recording.write","sip.read","temporal-rule.read","temporal-rule.write","user.read","user.write","vmbox.read","vmbox.write","webhook.read","webhook.write"],google:["account.read","account.write","contact.read"],kb:["article.read","article.write","category.read","category.write","help-center.read","help-center.write","kb.read","kb.write"],mail:["account.write"],meta:["account.read","account.write"],microsoft:["account.read","account.write","contact.read","sync.write"],organization:["billing.read","billing.write","settings.read","settings.write","team.read","team.write"],shopify:["account.read","account.write","order.read"],slack:["thread.read","thread.write"],storage:["artifact.read","artifact.write","file.read","file.write","mount.read","mount.write"],time:["entry.read","entry.write","work-type.read","work-type.write"],user:["user.read","user.write"],work:["item.read","item.write","project.read","project.write"]},ve=9e4,Gn=["out_of_office"],Hn=e=>Gn.includes(e);function is(e,t,n){const r=n-e<ve,i=t?.status&&(!t.expiresAt||t.expiresAt>n)?t:void 0;if(!i?.status)return{online:r,status:r?"available":"offline"};const o=i.status;return!r&&!Hn(o)?{online:!1,status:"offline"}:{online:r,status:o,message:i.message}}function os(e,t){const n=t-e.lastSeenAt<ve,r=n||Hn(e.status)?e.status:"offline";return n===e.online&&r===e.status?e:{...e,online:n,status:r}}function as(e,t){return e?.teamId&&t.includes(e.teamId)?{teamId:e.teamId,mustChoose:!1}:t.length===1?{teamId:t[0],mustChoose:!1}:{teamId:void 0,mustChoose:t.length>1}}function ss(e){return e.providerAvailable&&e.allowed}const cs="resources.describe",ls="resources.search",us="resources.resolve",ds="resources.attached";function ps(e){const t=e.indexOf(":");return t===-1?e:e.slice(0,t)}const fs="/provider/scope/related",ms="/provider/scope/read",De="auth";function xe(e){const t=typeof e=="string"?e.match(/apps\/([^/?#]+)/):null;return t?t[1]:null}function gs(e){const t=xe(e);return t?t!==De:typeof e=="string"&&e.startsWith("/wake")}function hs(e){return typeof e!="string"||e===""||e==="/"?!0:xe(e)===De}function Es(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Wn(e){const n=e.split("/").filter(Boolean).map(r=>r.startsWith(":")?r.endsWith("?")?"(?:/[^/]+)?":"/[^/]+":`/${Es(r)}`).join("");return new RegExp(`^${n}\\/?$`)}function Vn(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean),i={};return n.forEach((o,a)=>{if(o.startsWith(":")){const s=o.endsWith("?")?o.slice(1,-1):o.slice(1),c=r[a];c&&(i[s]=c)}}),i}function jn(e){return e.publicBasePath??`/apps/${e.name}`}function As(e){const t=[];for(const n of e){if(!n?.name)continue;const r=jn(n);for(const i of n.routes??[]){if(!i.public)continue;const o=i.path==="/"?"":i.path;t.push({appName:n.name,resource:i.resource,pattern:`${r}${o}`,props:i.props})}}return t}function Yn(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean);for(let i=0;i<Math.min(n.length,r.length);i++){const o=n[i].startsWith(":"),a=r[i].startsWith(":");if(o!==a)return a}return n.length>r.length}function zn(e,t){if(typeof e!="string")return null;let n=null;for(const r of t)Wn(r.pattern).test(e)&&(!n||Yn(r.pattern,n.pattern))&&(n=r);return n?{...n,params:{...n.props,...Vn(n.pattern,e)}}:null}function Ss(e,t){return zn(e,t)!==null}const _s=10*1024*1024,ys=25*1024*1024,Ts="sync-target",bs=20,Is={afrikaans:["[Muziek]","(C) TV GELDERLAND 2021","*Thomp thomp thomp*","www.youtube.com","ä n wood s","!.."],english:["[applause]","[APPLAUSE]","(claps)","(clapping)","(audience applauds)","(keyboard clicking)","(keyboard clacking)","(clicking)","[CLICK]","[BLANK_AUDIO]","(upbeat music)","(dramatic music)","[music playing]","(electronic music)","(audience cheering)","(audience cheers)","[MUSIC]","( ( ( ( ) ( ) ( ) ( )","(laughs)","(air whooshing)","<u>Transcribed</u> by https://otter.ai","All new tonight at 6... coming up. A new look at your forecast is A new look at your forecast is","www.mooji.org","KATHRYN A new forecast is coming up... A new forecast is coming up...","KATHRYN pandemic started. increasing since the The pandemic has been","A new look at your forecast this morning... A new look at your","We'll be right back.","We'll see you next week.","Thanks for watching!","❤️ Translated by Amara.org Communit"],flemish:["*clap*","TV GELDERLAND 2020","TV Gelderland 2021","(C) TV GELDERLAND 2021","[Muziek]","Kuman","Ondertitels ingediend door de Amara.org gemeenschap","Ondertiteld door de Amara.org gemeenschap","Dank u wel voor het kijken.","Ondertiteling door de Amara.org gemeenschap","GELUID VAN MAHIH U similarly"],french:["(applaudissements)","[Applaudissements]","Sous-titres réalisés par la communauté d'Amara.org","- Bonne journée. - Bonjour.","POP POP הי","Merci d'avoir regardé cette vidéo.","Merci d'avoir regardé cette vidéo!","Merci d'avoir regardé la vidéo.","J'espère que vous avez apprécié la vidéo.","Je vous remercie de vous abonner","Merci d'avoir regardé!","❤️ par SousTitreur.com","— Sous-titrage ST'501 —","Thanks for watching!","Sous-titres réalisés par l'Amara.org","Sous-titres réalisés para la communauté d'Amara.org","Sous-titres réalisés par la communauté d'Amara.org","Sous-titres fait par Sous-titres par Amara.org","Sous-titres réalisés par les SousTitres d'Amara.org","Sous-titres par Amara.org","Sous-titres par la communauté d'Amara.org","Sous-titres réalisés pour la communauté d'Amara.org","Sous-titres réalisés par la communauté de l'Amara.org","Sous-Titres faits par la communauté d'Amara.org","Sous-titres par l'Amara.org","Sous-titres fait par la communauté d'Amara.org","Sous-titrage ST' 501","Sous-titrage ST'501","Cliquez-vous sur les sous-titres et abonnez-vous à la chaîne d'Amara.org","❤️ par SousTitreur.com"],german:["[Klicken]","(Jubel)","*lacht*","[Anhaltender Beifall]","[Applaus]","(Applaus)","* Applaus *","[MUSIK]","* mustard ml Drumglöck und knack in einem Handbewerb *","Untertitelung aufgrund der Amara.org-Community","Untertitel im Auftrag des ZDF für funk, 2017","Untertitel von Stephanie Geiges","Untertitel der Amara.org-Community","Untertitel im Auftrag des ZDF, 2017","Untertitel im Auftrag des ZDF, 2020","Untertitel im Auftrag des ZDF, 2018","Untertitel im Auftrag des ZDF, 2021","Untertitelung im Auftrag des ZDF, 2021","Copyright WDR 2021","Copyright WDR 2020","Copyright WDR 2019","SWR 2021","SWR 2020"],italian:["Alla prossima!","*applauso*","[Musica]","[Musica]","[Applausi]","*Bip bip bip bip*","(musica del NS shore)","D' 1962 alle tribunte del Gulf","Sottotitoli creati dalla comunità Amara.org","Sottotitoli di Sottotitoli di Amara.org","Sottotitoli e revisione al canale di Amara.org","Sottotitoli e revisione a cura di Amara.org","Sottotitoli e revisione a cura di QTSS","Sottotitoli e revisione a cura di QTSS.","Sottotitoli a cura di QTSS","Sottotitoli a cura di Sottotitoli"],spanish:["[música]","[Música de cierre]","[Aplausos]","(Aplausos)","www.alimmenta.com","¡Gracias por ver el vídeo!","(sonidos del celular) (Inudible distorsión)","¡Suscríbete!","Subtítulos realizados por la comunidad de Amara.org","Subtitulado por la comunidad de Amara.org","Subtítulos por la comunidad de Amara.org","Subtítulos creados por la comunidad de Amara.org","Subtítulos en español de Amara.org","Subtítulos hechos por la comunidad de Amara.org","Subtitulos por la comunidad de Amara.org","Más información www.alimmenta.com","www.mooji.org","[MÚSICA]","[Music cuts in British]"]},Xn=e=>{let t=e;return Object.values(Is).forEach(n=>{n.forEach(r=>{t=t.replaceAll(r,"")})}),t=t.replace(/\(.*?\)/g,""),t=t.replace(/\[.*?\]/g,""),t},qn=6e4,Jn=8e3,Zn=2,Qn=.4,Ms=3,Os=new Set(["aan","als","ben","bent","bij","dan","dat","deze","die","dit","doen","door","dus","echt","een","eens","even","gaan","gaat","geen","geweest","goed","graag","had","heb","hebben","hebt","heeft","het","hier","hoe","hoor","iets","inderdaad","kan","klopt","kunnen","kunt","maar","mag","mee","meer","met","mij","mijn","misschien","moet","moeten","naar","net","niet","nog","nou","oke","ook","over","prima","toch","uhm","uit","van","veel","voor","wat","weer","weet","wel","wij","wil","wilt","worden","wordt","zeg","zeggen","zijn","zou","zult","about","and","are","been","but","can","does","for","have","just","know","like","not","okay","right","she","that","the","them","then","there","they","this","want","was","well","were","what","will","with","would","yeah","you","your"]);function er(e){const t=new Set;for(const n of e.toLowerCase().split(/[^a-z0-9À-ɏ]+/))n.length<Ms||Os.has(n)||t.add(n);return[...t]}function tr(e,t){if(!e.length)return 0;if(!t.length)return 1;const n=new Set(t),r=new Set(e);let i=0;for(const o of r)n.has(o)||(i+=1);return i/r.size}function nr(e,t=qn){const n=e.filter(a=>!a.partial&&typeof a.text=="string");if(!n.length)return{text:"",segmentCount:0};const i=n.reduce((a,s)=>Math.max(a,s.endedAt??0),0)-t;return{text:n.filter(a=>(a.endedAt??0)>=i).map(a=>Xn(a.text).trim()).filter(Boolean).join(" ").replace(/\s+/g," ").trim(),segmentCount:n.length}}const rr=60;function ws(e,t,n=rr){const r=new Set(e),i=[...e];for(const o of t)!o||r.has(o)||(r.add(o),i.push(o));return i.slice(-n)}function Rs(e){const{segments:t,now:n,state:r}=e;if(r.lastTriggerAt&&n-r.lastTriggerAt<Jn)return{trigger:!1,reason:"too_soon"};const i=nr(t,e.windowMs);if(!i.text)return{trigger:!1,reason:"no_speech"};const o=i.segmentCount-(r.lastSegmentCount??0);if(r.lastQueryTerms&&o<Zn)return{trigger:!1,reason:"too_few_new"};const a=er(i.text);return a.length?r.lastQueryTerms?.length&&tr(a,r.lastQueryTerms)<Qn?{trigger:!1,reason:"same_topic"}:{trigger:!0,text:i.text,terms:a,segmentCount:i.segmentCount}:{trigger:!1,reason:"no_speech"}}const Cs=["personal","workspace","connections","work","ai"],Ns="navNotice",te={NL:{callingCode:"31",trunkPrefix:"0",nsnMin:7,nsnMax:9},BE:{callingCode:"32",trunkPrefix:"0",nsnMin:8,nsnMax:9},LU:{callingCode:"352",nsnMin:6,nsnMax:9},DE:{callingCode:"49",trunkPrefix:"0",nsnMin:6,nsnMax:13},FR:{callingCode:"33",trunkPrefix:"0",nsnMin:9,nsnMax:9},GB:{callingCode:"44",trunkPrefix:"0",nsnMin:9,nsnMax:10},IE:{callingCode:"353",trunkPrefix:"0",nsnMin:7,nsnMax:9},ES:{callingCode:"34",nsnMin:9,nsnMax:9},PT:{callingCode:"351",nsnMin:9,nsnMax:9},IT:{callingCode:"39",nsnMin:6,nsnMax:11},AT:{callingCode:"43",trunkPrefix:"0",nsnMin:7,nsnMax:13},CH:{callingCode:"41",trunkPrefix:"0",nsnMin:9,nsnMax:9},DK:{callingCode:"45",nsnMin:8,nsnMax:8},SE:{callingCode:"46",trunkPrefix:"0",nsnMin:7,nsnMax:13},NO:{callingCode:"47",nsnMin:8,nsnMax:8},FI:{callingCode:"358",trunkPrefix:"0",nsnMin:5,nsnMax:12},PL:{callingCode:"48",nsnMin:9,nsnMax:9},US:{callingCode:"1",nsnMin:10,nsnMax:10},CA:{callingCode:"1",nsnMin:10,nsnMax:10}},ir="NL",ks=15,vs=8,Ds=Array.from(new Set(Object.values(te).map(e=>e.callingCode))).sort((e,t)=>t.length-e.length);function Ze(e){if(e)return te[e.trim().toUpperCase()]}function H(e,t){return e.length>=t.nsnMin&&e.length<=t.nsnMax}function Qe(e){if(e.length>ks)return null;for(const t of Ds){if(!e.startsWith(t))continue;const n=e.slice(t.length);for(const r of Object.values(te)){if(r.callingCode!==t)continue;const i=r.trunkPrefix,o=i&&n.startsWith(i)?n.slice(i.length):n;if(H(o,r))return`+${t}${o}`}return null}return e.length<vs?null:`+${e}`}function xs(e){let t=e.trim();const n=t.match(/^(sips?|tel|whatsapp):/i);n&&(t=t.slice(n[0].length));const r=t.indexOf("@");return r>=0&&(t=t.slice(0,r)),t.trim()}function Ls(e){if(!e)return!1;const t=e.indexOf("@");if(t<=0)return!1;const n=e.slice(0,t).trim();return!/^[+\d\s().-]+$/.test(n)}function Se(e,t){if(!e)return null;const n=xs(e);if(!n)return null;const r=n.startsWith("+"),i=n.replace(/\D/g,"");if(!i)return null;if(r)return Qe(i);if(i.startsWith("00"))return Qe(i.slice(2));const o=Ze(t)??Ze(ir);if(!o)return null;const a=o.trunkPrefix;if(a&&i.startsWith(a)){const s=i.slice(a.length);return H(s,o)?`+${o.callingCode}${s}`:null}if(i.startsWith(o.callingCode)){const s=i.slice(o.callingCode.length);if(H(s,o))return`+${o.callingCode}${s}`}return!a&&H(i,o)?`+${o.callingCode}${i}`:null}function Ps(e,t=9){const n=(e??"").replace(/\D/g,"");return n.length<t?null:n.slice(-t)}function Le(e){if(!e)return null;const t=e.trim().toLowerCase(),n=t.lastIndexOf("@");if(n<=0||n===t.length-1)return null;const r=t.slice(0,n).split("+")[0],i=t.slice(n+1);return!r||!i.includes(".")?null:`${r}@${i}`}function Us(e){const t=Le(e);return t?t.slice(t.lastIndexOf("@")+1):null}const $s=new Set(["co.uk","org.uk","gov.uk","ac.uk","com.au","co.nz","com.br","co.za"]);function or(e){if(!e)return null;const t=e.trim().toLowerCase().replace(/\.$/,"").split(".").filter(Boolean);if(t.length<2)return null;const n=t.slice(-2).join(".");return $s.has(n)&&t.length>=3?t.slice(-3).join("."):n}const ar=new Set(["gmail.com","googlemail.com","outlook.com","hotmail.com","hotmail.nl","hotmail.be","hotmail.co.uk","live.com","live.nl","live.be","msn.com","yahoo.com","yahoo.co.uk","ymail.com","icloud.com","me.com","mac.com","aol.com","gmx.net","gmx.de","web.de","protonmail.com","proton.me","pm.me","tutanota.com","zoho.com","mail.com","ziggo.nl","kpnmail.nl","planet.nl","home.nl","casema.nl","chello.nl","xs4all.nl","telfort.nl","hetnet.nl","zonnet.nl","upcmail.nl","quicknet.nl","telenet.be","skynet.be","proximus.be","scarlet.be"]);function Ks(e){const t=or(e);return t?ar.has(t):!1}function Bs(e){if(!e)return!1;const t=e.trim().toLowerCase();return t==="tel"||t==="sms"||t==="whatsapp"||t==="fax"}function Fs(e,t,n){if(!e||!t)return null;const r=e.trim().toLowerCase();if(r==="tel"||r==="sms"||r==="whatsapp"){const o=Se(t,n);return o?`tel:${o}`:null}if(r==="fax"){const o=Se(t,n);return o?`fax:${o}`:null}if(r==="mailto"||r==="email"){const o=Le(t);return o?`mailto:${o}`:null}const i=t.trim().toLowerCase();return i?`${r}:${i}`:null}const Gs=[/<blockquote/i,/class="?gmail_quote/i,/id="?[^"]*divRplyFwdMsg/i,/id="?[^"]*mail-editor-reference-message-container/i,/-{3,}\s*Original Message\s*-{3,}/i,/\n_{5,}\s*\n/,/\bOn\b[\s\S]{0,200}?\bwrote:/i],et=/^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i,Hs=/^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;function Ws(e){const t=e.split(`
10
+ `);for(let n=0;n<t.length;n++)if(Hs.test(t[n])||et.test(t[n])&&t.slice(n+1,n+4).some(r=>et.test(r)))return t.slice(0,n).join(`
11
+ `).trim();return e}const Vs=/^(?:https?:|mailto:|tel:)/i,js=/^(?:https?:|cid:|data:image\/)/i;function ae(e,t){const n=e.match(new RegExp(`\\b${t}\\s*=\\s*(?:"([^"]*)"|'([^']*)'|([^\\s">]+))`,"i"));return(n?.[1]??n?.[2]??n?.[3]??"").trim()}const Ys=/(!\[[^\]]*\]\([^)]*\))/;function tt(e){return e.replace(/\s+/g," ").trim().split(Ys).map((t,n)=>n%2===1?t:t.replace(/[[\]]/g,"\\$&")).join("")}function se(e){return e.replace(/[()\s<>"]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase().padStart(2,"0")}`)}function zs(e){return e.replace(/<img\b([^>]*?)\/?>/gi,(n,r)=>{const i=ae(r,"src");return js.test(i)?`![${tt(ae(r,"alt"))}](${se(i)})`:""}).replace(/<a\b([^>]*)>([\s\S]*?)<\/a\s*>/gi,(n,r,i)=>{const o=tt(i.replace(/<[^>]*>/g,"")),a=ae(r,"href");return Vs.test(a)?`[${o||se(a)}](${se(a)})`:o})}const Xs=/<table\b[^>]*>((?:(?!<table\b)[\s\S])*?)<\/table\s*>/i,qs=/<tr\b[^>]*>([\s\S]*?)<\/tr\s*>/gi,Js=/<(t[dh])\b([^>]*)>([\s\S]*?)<\/\1\s*>/gi;function Zs(e,t){return/<table\b/i.test(e)||e.includes(`
12
12
 
13
- |`)||t.includes("![")||t.length>200}const Zs=40,Qs={left:"---",center:":---:",right:"---:"};function ec(e){const t=e.match(/align\s*[=:]\s*["']?\s*(right|center)/i);return t?t[1].toLowerCase():"left"}function tc(e){return e.replace(/<[^>]*>/g,"").replace(/\s+/g," ").trim().replace(/\|/g,"\\|")}function nc(e){const t=[];for(const a of e.matchAll(Xs)){const s=[];for(const c of a[1].matchAll(qs)){const m=tc(c[3]);if(Js(c[3],m))return null;s.push({text:m,align:ec(c[2])})}if(s.length===0)return null;s.some(c=>c.text!=="")&&t.push(s)}const n=t[0]?.length??0;if(t.length<2||n<2||t.some(a=>a.length!==n))return null;const r=a=>`| ${a.map(s=>s.text).join(" | ")} |`,i=t[1].map(a=>Qs[a.align]).join(" | "),o=t.slice(1).map(r).join(`
13
+ |`)||t.includes("![")||t.length>200}const Qs=40,ec={left:"---",center:":---:",right:"---:"};function tc(e){const t=e.match(/align\s*[=:]\s*["']?\s*(right|center)/i);return t?t[1].toLowerCase():"left"}function nc(e){return e.replace(/<[^>]*>/g,"").replace(/\s+/g," ").trim().replace(/\|/g,"\\|")}function rc(e){const t=[];for(const a of e.matchAll(qs)){const s=[];for(const c of a[1].matchAll(Js)){const m=nc(c[3]);if(Zs(c[3],m))return null;s.push({text:m,align:tc(c[2])})}if(s.length===0)return null;s.some(c=>c.text!=="")&&t.push(s)}const n=t[0]?.length??0;if(t.length<2||n<2||t.some(a=>a.length!==n))return null;const r=a=>`| ${a.map(s=>s.text).join(" | ")} |`,i=t[1].map(a=>ec[a.align]).join(" | "),o=t.slice(1).map(r).join(`
14
14
  `);return`
15
15
 
16
16
  ${r(t[0])}
17
17
  | ${i} |
18
18
  ${o}
19
19
 
20
- `}function rc(e){return e.replace(/<\/(t[dh])\s*>/gi," ").replace(/<\/tr\s*>/gi,`
21
- `).replace(/<(?:tbody|thead|tfoot|caption|colgroup|col|tr|t[dh])\b[^>]*>/gi,"").replace(/<\/(?:tbody|thead|tfoot|caption|colgroup)\s*>/gi,"")}function ic(e){let t=e;for(let n=0;n<Zs;n++){const r=zs.exec(t);if(!r||r.index===void 0)break;const o=nc(r[1])??`
20
+ `}function ic(e){return e.replace(/<\/(t[dh])\s*>/gi," ").replace(/<\/tr\s*>/gi,`
21
+ `).replace(/<(?:tbody|thead|tfoot|caption|colgroup|col|tr|t[dh])\b[^>]*>/gi,"").replace(/<\/(?:tbody|thead|tfoot|caption|colgroup)\s*>/gi,"")}function oc(e){let t=e;for(let n=0;n<Qs;n++){const r=Xs.exec(t);if(!r||r.index===void 0)break;const o=rc(r[1])??`
22
22
 
23
- ${rc(r[1])}
23
+ ${ic(r[1])}
24
24
 
25
25
  `;t=t.slice(0,r.index)+o+t.slice(r.index+r[0].length)}return t}function nt(e,t){let n=e;return n=n.replace(/<(script|style)[\s\S]*?<\/\1>/gi,""),n=n.replace(/<!--[\s\S]*?-->/g,""),n=n.replace(/<br\s*\/?>/gi,`
26
- `),t&&(n=ic(Ys(n))),n=n.replace(/<\/(p|h[1-6]|ul|ol|table|blockquote)>/gi,`
26
+ `),t&&(n=oc(zs(n))),n=n.replace(/<\/(p|h[1-6]|ul|ol|table|blockquote)>/gi,`
27
27
 
28
28
  `),n=n.replace(/<\/(div|li|tr)>/gi,`
29
- `),n=n.replace(/<\/(td|th)>/gi," "),n=n.replace(/<[^>]+>/g,""),n=n.replace(/<[^>]*$/,""),n}function rt(e){return!Number.isInteger(e)||e<0||e>1114111?null:String.fromCodePoint(e)}const oc={euro:"€",pound:"£",yen:"¥",cent:"¢",copy:"©",reg:"®",trade:"™",deg:"°",plusmn:"±",times:"×",middot:"·",bull:"•",hellip:"…",mdash:"—",ndash:"–",lsquo:"‘",rsquo:"’",ldquo:"“",rdquo:"”",apos:"'"};function it(e){return e.replace(/&nbsp;/gi," ").replace(/&([a-z]+);/gi,(t,n)=>oc[n.toLowerCase()]??t).replace(/&lt;/gi,"<").replace(/&gt;/gi,">").replace(/&quot;/gi,'"').replace(/&#(\d+);/g,(t,n)=>rt(Number(n))??t).replace(/&#x([0-9a-f]+);/gi,(t,n)=>rt(parseInt(n,16))??t).replace(/&amp;/gi,"&")}function ot(e){return e.replace(/\r/g,"").replace(/[ \t]+/g," ").replace(/ *\n */g,`
29
+ `),n=n.replace(/<\/(td|th)>/gi," "),n=n.replace(/<[^>]+>/g,""),n=n.replace(/<[^>]*$/,""),n}function rt(e){return!Number.isInteger(e)||e<0||e>1114111?null:String.fromCodePoint(e)}const ac={euro:"€",pound:"£",yen:"¥",cent:"¢",copy:"©",reg:"®",trade:"™",deg:"°",plusmn:"±",times:"×",middot:"·",bull:"•",hellip:"…",mdash:"—",ndash:"–",lsquo:"‘",rsquo:"’",ldquo:"“",rdquo:"”",apos:"'"};function it(e){return e.replace(/&nbsp;/gi," ").replace(/&([a-z]+);/gi,(t,n)=>ac[n.toLowerCase()]??t).replace(/&lt;/gi,"<").replace(/&gt;/gi,">").replace(/&quot;/gi,'"').replace(/&#(\d+);/g,(t,n)=>rt(Number(n))??t).replace(/&#x([0-9a-f]+);/gi,(t,n)=>rt(parseInt(n,16))??t).replace(/&amp;/gi,"&")}function ot(e){return e.replace(/\r/g,"").replace(/[ \t]+/g," ").replace(/ *\n */g,`
30
30
  `).replace(/\n{3,}/g,`
31
31
 
32
- `).trim()}const sr=/<\s*(html|body|div|p|table|br|span)\b/i;function ac(e){return sr.test(e)}function sc(e){return cr(e,!1)}function cc(e){return cr(e,!0)}function cr(e,t){if(typeof e!="string"||!e)return"";let n=e.length;for(const a of Fs){const s=e.search(a);s>=0&&s<n&&(n=s)}const r=e.slice(0,n);let i=ot(it(nt(r,t)));return i||(i=ot(it(nt(e,t)))),Hs(i)||i}exports.ACTIVE_ASSIGNMENT_STATUSES=ai;exports.ACTIVITY_CATALOG=y;exports.AI_ATTACHMENT_LIMITS=Pn;exports.AI_ATTACHMENT_MAX_PER_TURN=fa;exports.AI_ATTACHMENT_TURN_BUDGET=pa;exports.AI_VENDORS=Te;exports.ALLOWED_LINK_SCHEMES=_t;exports.APP_PERMISSIONS=ns;exports.ARTIFACT_MAX_BLOCKS=ue;exports.ARTIFACT_MAX_BODY_BYTES=Vr;exports.ARTIFACT_MAX_CELL_LEN=B;exports.ARTIFACT_MAX_KPI_ITEMS=me;exports.ARTIFACT_MAX_LIST_ITEMS=de;exports.ARTIFACT_MAX_TABLE_COLUMNS=fe;exports.ARTIFACT_MAX_TABLE_ROWS=pe;exports.ARTIFACT_MAX_TEXT_LEN=be;exports.ASSIGNMENT_SCOPE_KIND=It;exports.ASSIST_BANDS=Aa;exports.ASSIST_SOURCE_PROVIDER_GROUP=Ea;exports.ATTENTION_STATUSES=Lt;exports.AUTH_APP_NAME=De;exports.AUTO_READY_MIN_PROPOSALS=un;exports.AUTO_READY_RATE=dn;exports.ActivityTypeRegistry=dt;exports.BUILT_IN_ONLY=Rr;exports.BULK_PENALTY=Pt;exports.CADENCE_FLOOR_MS=Jn;exports.CADENCE_MIN_NEW_SEGMENTS=Zn;exports.CADENCE_MIN_NOVELTY=Qn;exports.CADENCE_WINDOW_MS=qn;exports.CLASSIFY_VARS=ao;exports.CONNECTOR_PROVIDER_GROUP=Ba;exports.CONTEXT_COLLECT_SERVICE=Fa;exports.CORE_DIMENSIONS=Br;exports.CommunicationScheme=Fn;exports.DAY_MS=Rt;exports.DEFAULT_MEMORY_BUDGET=ji;exports.DEFAULT_PHONE_REGION=ir;exports.DOCUMENT_APPLY_SERVICE=qa;exports.DOCUMENT_DESCRIBE_SERVICE=za;exports.DOCUMENT_INSPECT_SERVICE=Xa;exports.DOCUMENT_OPERATIONS=ke;exports.EMPTY_WORKFLOW=co;exports.FEATURE_FOLDER_MANAGEMENT=Pa;exports.FEATURE_MESSAGE_REACTIONS=$a;exports.FEATURE_REMOTE_SEARCH=Ua;exports.FOLLOW_UP_HOURS=$t;exports.HOUR_MS=wt;exports.HTML_BODY_RE=sr;exports.INELIGIBLE=b;exports.INSTALLATION_HEADER=Za;exports.INTERACTION_KIND=on;exports.InteractionParticipantRole=xa;exports.KB_FALLBACK_LOCALE=Xt;exports.KB_LOCALES=ge;exports.LOOSE_STATUSES=ee;exports.MAIL_HINT_HEADERS=Dt;exports.MAX_ACTIONS=K;exports.MAX_ASSIGNMENT_TURNS=Mt;exports.MAX_BLOCKS=ce;exports.MAX_COLLECTION_DEPTH=Oe;exports.MAX_EDITABLE_FILE_BYTES=Ss;exports.MAX_FIELDS=U;exports.MAX_LIST_ITEMS=$;exports.MAX_MEMORY_BROWSE=Gi;exports.MAX_MEMORY_BUDGET=Vi;exports.MAX_MEMORY_CHARS=Hi;exports.MAX_SHOWN_KEYS=rr;exports.MAX_TOPIC_CANDIDATES=bn;exports.MAX_TOPIC_EXAMPLES=Tn;exports.MAX_TOPIC_EXAMPLE_CHARS=F;exports.MAX_VIEWABLE_FILE_BYTES=_s;exports.MIN_MEMORY_BUDGET=Wi;exports.NAV_NOTICE_SLOT=Cs;exports.NOTIFICATION_SOURCE_PROVIDER_GROUP=es;exports.ONBOARDING_SOURCE_PROVIDER_GROUP=zi;exports.PAUSE_SNOOZED=Y;exports.PAUSE_WAITING_FOR_CUSTOMER=z;exports.PHONE_REGIONS=te;exports.PRESENCE_ONLINE_WINDOW_MS=ve;exports.PRESENCE_SURVIVES_OFFLINE=Gn;exports.PROFILE_TOOL_DISPOSITIONS=qi;exports.PROVIDER_FEATURE_MESSAGE_TEMPLATES=Da;exports.PROVIDER_FEATURE_MESSAGE_WINDOW=va;exports.PUBLIC_EMAIL_DOMAINS=ar;exports.READ_STEP_TYPES=he;exports.RELATED_SUBJECT_KINDS=Jt;exports.RESERVED_STATUS_KEYS=Ne;exports.RESOURCE_ATTACHED_SERVICE=us;exports.RESOURCE_DESCRIBE_SERVICE=ss;exports.RESOURCE_RESOLVE_SERVICE=ls;exports.RESOURCE_SEARCH_SERVICE=cs;exports.SCOPE_READ_ROUTE=fs;exports.SCOPE_RELATED_ROUTE=ps;exports.SETTINGS_CATEGORIES=Rs;exports.SIGNATURE_INTENTS=fi;exports.SLA_HOURS_BY_PRIORITY=Ut;exports.SLA_METRICS=Mo;exports.SLA_PAUSE_REASONS=Oo;exports.STEP_MAX_TOKENS_MAX=cn;exports.STEP_MAX_TOKENS_MIN=sn;exports.SUMMARY_MIN_LAST_CHARS=vt;exports.SUMMARY_MIN_MESSAGES=kt;exports.SYNC_RUN_MAX_ERRORS=Ts;exports.SYNC_TARGET_PROVIDER_GROUP=ys;exports.TERMINAL_ASSIGNMENT_STATUSES=bt;exports.TERMINAL_RUN_STATUSES=pn;exports.TRIGGER_VARS=oo;exports.UNSUPPORTED=Ka;exports.USAGE_DIMENSIONS=ht;exports.USAGE_DIMENSION_IDS=Et;exports.WORK_ACTIVITY_SCOPE_KIND=Cn;exports.WORK_AREAS=Xi;exports.WORK_COMMENT_ADDED=zo;exports.WORK_ITEM_ASSIGNED=Xo;exports.WORK_ITEM_SCOPE_KIND=wn;exports.WORK_ITEM_STATUS_CHANGED=qo;exports.WORK_PROJECT_SCOPE_KIND=Rn;exports.W_PRIORITY=C;exports.acceptExampleCandidate=Vo;exports.actingIdentityKey=Qt;exports.activeWorkTypes=Ho;exports.activityIconOf=mr;exports.activityJoinUrl=Ir;exports.activitySnippet=lt;exports.activityTextParams=ut;exports.activityTimelineText=br;exports.activityTimestamp=pt;exports.activityTypeInfo=A;exports.actorKey=Qi;exports.addExampleCandidate=Wo;exports.addWorkingMs=Z;exports.agePresenceEntry=is;exports.aiAttachmentKind=Ln;exports.aiAttachmentRejection=ma;exports.aiBudgetLimit=le;exports.aiBudgetPeriodKey=$r;exports.aiBudgetPeriodStart=ft;exports.aiBudgetState=Ur;exports.aiVendorAcceptsAttachment=Pr;exports.aiVendorDefaultModel=Dr;exports.aiVendorLabel=vr;exports.aiVendorNeedsBaseUrl=Lr;exports.aiVendorsWith=xr;exports.appNameFromPath=xe;exports.applyRounding=$o;exports.applySignature=mi;exports.approvalRate=ln;exports.artifactBodyBytes=Qr;exports.artifactOutline=ei;exports.artifactToMarkdown=ni;exports.assignmentMismatch=ro;exports.assignmentScopeKey=ci;exports.assignmentSubject=di;exports.buildActivityPreview=Or;exports.buildChannelIntents=Oa;exports.buildShareKeys=ri;exports.buildWindow=nr;exports.calendarOf=Q;exports.canNestUnder=Li;exports.carriesText=Sr;exports.categoryLabel=Ui;exports.categoryOf=vn;exports.channelKindForScheme=ka;exports.channelKindOf=gr;exports.clampStepMaxTokens=so;exports.classifyMail=bi;exports.cleanMessageMarkdown=cc;exports.cleanMessageText=sc;exports.compareAssistRank=_a;exports.compareWorkTypes=yn;exports.decideAssignmentState=pi;exports.decideCadence=ws;exports.decideIncomingCall=ba;exports.defaultLocaleOf=qt;exports.defaultStatusKey=aa;exports.defineIntent=La;exports.depthOf=Yt;exports.derivePresence=rs;exports.disabledIntentsFromCapabilities=Ia;exports.documentKindOf=Ja;exports.dueAtOf=Do;exports.elapsedSeconds=Uo;exports.emailDomain=Ps;exports.endpointKey=Bs;exports.extractParams=Vn;exports.extractTerms=er;exports.filterByEndpoint=Ra;exports.filterByIntent=wa;exports.filterByTargetScheme=Bn;exports.findAiVendor=k;exports.flattenLocales=Qa;exports.floorToPeriod=gt;exports.formatActingIdentity=Zt;exports.formatClock=Bo;exports.formatHm=Ko;exports.formatItemKey=ea;exports.formatPeriod=mt;exports.formatSlaDuration=Po;exports.freshSources=ha;exports.getActivitySeenUserIds=Cr;exports.getContactEndpoints=gi;exports.getShortTitle=Ni;exports.getUrgencyScore=Ci;exports.hasReacted=So;exports.heightOf=we;exports.helpCenterText=vi;exports.humanizeAction=io;exports.interactionIdOf=an;exports.isAgentUser=Yo;exports.isAssigned=wi;exports.isAssignmentTerminal=si;exports.isAssignmentTrigger=nn;exports.isAutoReady=po;exports.isAwaitingThem=Vt;exports.isChatMessageActivity=kr;exports.isClosed=Ri;exports.isConnectedType=yr;exports.isDeepLink=ms;exports.isDescendant=zt;exports.isEligible=hi;exports.isEmailActivity=Nr;exports.isHtmlBody=ac;exports.isInFlight=mo;exports.isInteractionUnseen=xt;exports.isLandingPath=gs;exports.isLikelyBulk=Nt;exports.isMessageShape=_e;exports.isMessageType=hr;exports.isMoreSpecificPattern=Yn;exports.isNoteShape=ye;exports.isOpenClock=Sn;exports.isOutwardTool=ga;exports.isParked=Bt;exports.isPaused=fn;exports.isPlaybookAuthoredType=_r;exports.isPublicEmailDomain=$s;exports.isPublicPath=As;exports.isReminderActive=Ft;exports.isReplyableType=Ar;exports.isSlaAtRisk=Mi;exports.isTerminal=fo;exports.isThreadLongEnough=Si;exports.isTranscriptType=Tr;exports.isWorkClosed=sa;exports.isWorkTypeVisible=Go;exports.itemDossierKeys=ra;exports.ladderFor=kn;exports.linkLabel=ki;exports.listeningAllowed=Kr;exports.localeInstruction=xi;exports.localeName=Di;exports.localesOf=Pi;exports.looksLikeEmail=xs;exports.matchContactToIntents=Ca;exports.matchPublicRoute=zn;exports.mcpCredentialScope=Bi;exports.mcpToolPrefix=Fi;exports.mergeShownKeys=Os;exports.messageCountsAs=ct;exports.needsPhoneRegion=Ks;exports.nestsUnderParent=Er;exports.nextSlaClock=xo;exports.normalizeArtifactBlocks=Zr;exports.normalizeBlocks=dr;exports.normalizeEmail=Le;exports.normalizeExample=I;exports.notificationPrefKey=ts;exports.novelty=tr;exports.operationDescriptor=Ya;exports.operationsForKind=ja;exports.parkMarksById=Ei;exports.parseActingIdentity=Ji;exports.parseClockMinutes=bo;exports.parseItemKey=ta;exports.pathToRegex=Wn;exports.pauseBitFor=Io;exports.periodsInRange=Hr;exports.phoneSuffix=Ls;exports.pickMailHeaders=_i;exports.plainTextFromMarkdown=at;exports.planSlaEvent=vo;exports.playbookActor=tn;exports.procedureOf=uo;exports.projectDossierKeys=ia;exports.publicBasePathFor=jn;exports.publicRoutePatterns=Es;exports.reactionWakesAssignment=ui;exports.readPath=W;exports.readStepError=Ee;exports.recencyOf=Kt;exports.refKey=rn;exports.registrableDomain=or;exports.rejectExampleCandidate=Mn;exports.relatedByDefault=Yi;exports.remainingMsOf=X;exports.resolveAccountCapabilities=Kn;exports.resolveActivityText=V;exports.resolveChannelIntents=$n;exports.resolveSignature=Ot;exports.resolveWorkMode=os;exports.resourceKindOf=ds;exports.runActor=Zi;exports.runInteractionId=ho;exports.sanitizeInline=Tt;exports.sanitizeTranscript=Xn;exports.scoreInteraction=Oi;exports.scoreWorkItem=Zo;exports.selectLenses=Ki;exports.sessionsHoldCannotReach=Ta;exports.sessionsToHold=ya;exports.shareKeyForTeam=Me;exports.shareKeyForUser=Ie;exports.shareKeysForViewer=ii;exports.shouldRunAudioPipeline=as;exports.slaBadgeTone=Lo;exports.slaHoursByInbox=Ii;exports.slaHoursFor=Wt;exports.sortStatuses=Dn;exports.sourceKey=Un;exports.statusIn=oa;exports.stepsOf=lo;exports.stripHtml=st;exports.subjectKeyOf=go;exports.subjectOf=Re;exports.subjectRef=Sa;exports.suggestProjectKey=na;exports.summarizeReactions=Eo;exports.targetById=no;exports.targetForActivityType=to;exports.toActingIdentity=en;exports.toE164=Se;exports.toolSourceKinds=oi;exports.topicOfferedForTeam=On;exports.topicsForTeam=jo;exports.truncateExample=In;exports.uniqueWorkStatusKey=ca;exports.uniqueWorkTypeKey=Fo;exports.usageMetricId=At;exports.usageMetrics=Wr;exports.validateStatuses=la;exports.valueAtPath=eo;exports.waitHoursOf=J;exports.wakesAssignment=li;exports.workActivityScopeKey=Qo;exports.workItemScopeKey=Nn;exports.workProjectScopeKey=Ce;exports.workStatusKey=xn;exports.workTypeKey=_n;exports.workingMsBetween=j;
32
+ `).trim()}const sr=/<\s*(html|body|div|p|table|br|span)\b/i;function sc(e){return sr.test(e)}function cc(e){return cr(e,!1)}function lc(e){return cr(e,!0)}function cr(e,t){if(typeof e!="string"||!e)return"";let n=e.length;for(const a of Gs){const s=e.search(a);s>=0&&s<n&&(n=s)}const r=e.slice(0,n);let i=ot(it(nt(r,t)));return i||(i=ot(it(nt(e,t)))),Ws(i)||i}exports.ACTIVE_ASSIGNMENT_STATUSES=ai;exports.ACTIVITY_CATALOG=y;exports.AI_ATTACHMENT_LIMITS=Pn;exports.AI_ATTACHMENT_MAX_PER_TURN=ma;exports.AI_ATTACHMENT_TURN_BUDGET=fa;exports.AI_VENDORS=Te;exports.ALLOWED_LINK_SCHEMES=_t;exports.APP_PERMISSIONS=rs;exports.ARTIFACT_MAX_BLOCKS=ue;exports.ARTIFACT_MAX_BODY_BYTES=Vr;exports.ARTIFACT_MAX_CELL_LEN=B;exports.ARTIFACT_MAX_KPI_ITEMS=me;exports.ARTIFACT_MAX_LIST_ITEMS=de;exports.ARTIFACT_MAX_TABLE_COLUMNS=fe;exports.ARTIFACT_MAX_TABLE_ROWS=pe;exports.ARTIFACT_MAX_TEXT_LEN=be;exports.ASSIGNMENT_SCOPE_KIND=It;exports.ASSIST_BANDS=Sa;exports.ASSIST_SOURCE_PROVIDER_GROUP=Aa;exports.ATTENTION_STATUSES=Lt;exports.AUTH_APP_NAME=De;exports.AUTO_READY_MIN_PROPOSALS=un;exports.AUTO_READY_RATE=dn;exports.ActivityTypeRegistry=dt;exports.BUILT_IN_ONLY=Rr;exports.BULK_PENALTY=Pt;exports.CADENCE_FLOOR_MS=Jn;exports.CADENCE_MIN_NEW_SEGMENTS=Zn;exports.CADENCE_MIN_NOVELTY=Qn;exports.CADENCE_WINDOW_MS=qn;exports.CLASSIFY_VARS=ao;exports.CONNECTOR_PROVIDER_GROUP=Fa;exports.CONTEXT_COLLECT_SERVICE=Ga;exports.CORE_DIMENSIONS=Br;exports.CommunicationScheme=Fn;exports.DAY_MS=Rt;exports.DEFAULT_MEMORY_BUDGET=ji;exports.DEFAULT_PHONE_REGION=ir;exports.DOCUMENT_APPLY_SERVICE=Ja;exports.DOCUMENT_DESCRIBE_SERVICE=Xa;exports.DOCUMENT_INSPECT_SERVICE=qa;exports.DOCUMENT_OPERATIONS=ke;exports.EMPTY_WORKFLOW=co;exports.FEATURE_FOLDER_MANAGEMENT=Ua;exports.FEATURE_MESSAGE_REACTIONS=Ka;exports.FEATURE_REMOTE_SEARCH=$a;exports.FOLLOW_UP_HOURS=$t;exports.HOUR_MS=wt;exports.HTML_BODY_RE=sr;exports.INELIGIBLE=b;exports.INSTALLATION_HEADER=Qa;exports.INTERACTION_KIND=on;exports.InteractionParticipantRole=La;exports.KB_FALLBACK_LOCALE=Xt;exports.KB_LOCALES=ge;exports.LOOSE_STATUSES=ee;exports.MAIL_HINT_HEADERS=Dt;exports.MAX_ACTIONS=K;exports.MAX_ASSIGNMENT_TURNS=Mt;exports.MAX_BLOCKS=ce;exports.MAX_COLLECTION_DEPTH=Oe;exports.MAX_EDITABLE_FILE_BYTES=_s;exports.MAX_FIELDS=U;exports.MAX_LIST_ITEMS=$;exports.MAX_MEMORY_BROWSE=Gi;exports.MAX_MEMORY_BUDGET=Vi;exports.MAX_MEMORY_CHARS=Hi;exports.MAX_SHOWN_KEYS=rr;exports.MAX_TOPIC_CANDIDATES=bn;exports.MAX_TOPIC_EXAMPLES=Tn;exports.MAX_TOPIC_EXAMPLE_CHARS=F;exports.MAX_VIEWABLE_FILE_BYTES=ys;exports.MIN_MEMORY_BUDGET=Wi;exports.NAV_NOTICE_SLOT=Ns;exports.NOTIFICATION_SOURCE_PROVIDER_GROUP=ts;exports.ONBOARDING_SOURCE_PROVIDER_GROUP=zi;exports.PAUSE_SNOOZED=Y;exports.PAUSE_WAITING_FOR_CUSTOMER=z;exports.PHONE_REGIONS=te;exports.PRESENCE_ONLINE_WINDOW_MS=ve;exports.PRESENCE_SURVIVES_OFFLINE=Gn;exports.PROFILE_TOOL_DISPOSITIONS=qi;exports.PROVIDER_FEATURE_MESSAGE_TEMPLATES=xa;exports.PROVIDER_FEATURE_MESSAGE_WINDOW=Da;exports.PUBLIC_EMAIL_DOMAINS=ar;exports.READ_STEP_TYPES=he;exports.RELATED_SUBJECT_KINDS=Jt;exports.RESERVED_STATUS_KEYS=Ne;exports.RESOURCE_ATTACHED_SERVICE=ds;exports.RESOURCE_DESCRIBE_SERVICE=cs;exports.RESOURCE_RESOLVE_SERVICE=us;exports.RESOURCE_SEARCH_SERVICE=ls;exports.SCOPE_READ_ROUTE=ms;exports.SCOPE_RELATED_ROUTE=fs;exports.SETTINGS_CATEGORIES=Cs;exports.SIGNATURE_INTENTS=fi;exports.SLA_HOURS_BY_PRIORITY=Ut;exports.SLA_METRICS=Mo;exports.SLA_PAUSE_REASONS=Oo;exports.STEP_MAX_TOKENS_MAX=cn;exports.STEP_MAX_TOKENS_MIN=sn;exports.SUMMARY_MIN_LAST_CHARS=vt;exports.SUMMARY_MIN_MESSAGES=kt;exports.SYNC_RUN_MAX_ERRORS=bs;exports.SYNC_TARGET_PROVIDER_GROUP=Ts;exports.TERMINAL_ASSIGNMENT_STATUSES=bt;exports.TERMINAL_RUN_STATUSES=pn;exports.TRIGGER_VARS=oo;exports.UNSUPPORTED=Ba;exports.USAGE_DIMENSIONS=ht;exports.USAGE_DIMENSION_IDS=Et;exports.WORK_ACTIVITY_SCOPE_KIND=Cn;exports.WORK_AREAS=Xi;exports.WORK_COMMENT_ADDED=zo;exports.WORK_ITEM_ASSIGNED=Xo;exports.WORK_ITEM_SCOPE_KIND=wn;exports.WORK_ITEM_STATUS_CHANGED=qo;exports.WORK_PROJECT_SCOPE_KIND=Rn;exports.W_PRIORITY=C;exports.acceptExampleCandidate=Vo;exports.actingIdentityKey=Qt;exports.activeWorkTypes=Ho;exports.activityIconOf=mr;exports.activityJoinUrl=Ir;exports.activitySnippet=lt;exports.activityTextParams=ut;exports.activityTimelineText=br;exports.activityTimestamp=pt;exports.activityTypeInfo=A;exports.actorKey=Qi;exports.addExampleCandidate=Wo;exports.addWorkingMs=Z;exports.agePresenceEntry=os;exports.aiAttachmentKind=Ln;exports.aiAttachmentRejection=ga;exports.aiBudgetLimit=le;exports.aiBudgetPeriodKey=$r;exports.aiBudgetPeriodStart=ft;exports.aiBudgetState=Ur;exports.aiVendorAcceptsAttachment=Pr;exports.aiVendorDefaultModel=Dr;exports.aiVendorLabel=vr;exports.aiVendorNeedsBaseUrl=Lr;exports.aiVendorsWith=xr;exports.appNameFromPath=xe;exports.applyRounding=$o;exports.applySignature=mi;exports.approvalRate=ln;exports.artifactBodyBytes=Qr;exports.artifactOutline=ei;exports.artifactToMarkdown=ni;exports.assignmentMismatch=ro;exports.assignmentScopeKey=ci;exports.assignmentSubject=di;exports.buildActivityPreview=Or;exports.buildChannelIntents=wa;exports.buildShareKeys=ri;exports.buildWindow=nr;exports.calendarOf=Q;exports.canNestUnder=Li;exports.carriesText=Sr;exports.categoryLabel=Ui;exports.categoryOf=vn;exports.channelKindForScheme=va;exports.channelKindOf=gr;exports.clampStepMaxTokens=so;exports.classifyMail=bi;exports.cleanMessageMarkdown=lc;exports.cleanMessageText=cc;exports.compareAssistRank=ya;exports.compareWorkTypes=yn;exports.cycleState=ua;exports.decideAssignmentState=pi;exports.decideCadence=Rs;exports.decideIncomingCall=Ia;exports.defaultLocaleOf=qt;exports.defaultStatusKey=aa;exports.defineIntent=Pa;exports.depthOf=Yt;exports.derivePresence=is;exports.disabledIntentsFromCapabilities=Ma;exports.documentKindOf=Za;exports.dueAtOf=Do;exports.elapsedSeconds=Uo;exports.emailDomain=Us;exports.endpointKey=Fs;exports.extractParams=Vn;exports.extractTerms=er;exports.filterByEndpoint=Ca;exports.filterByIntent=Ra;exports.filterByTargetScheme=Bn;exports.findAiVendor=k;exports.flattenLocales=es;exports.floorToPeriod=gt;exports.formatActingIdentity=Zt;exports.formatClock=Bo;exports.formatHm=Ko;exports.formatItemKey=ea;exports.formatPeriod=mt;exports.formatSlaDuration=Po;exports.freshSources=Ea;exports.getActivitySeenUserIds=Cr;exports.getContactEndpoints=gi;exports.getShortTitle=Ni;exports.getUrgencyScore=Ci;exports.hasReacted=So;exports.heightOf=we;exports.helpCenterText=vi;exports.humanizeAction=io;exports.interactionIdOf=an;exports.isAgentUser=Yo;exports.isAssigned=wi;exports.isAssignmentTerminal=si;exports.isAssignmentTrigger=nn;exports.isAutoReady=po;exports.isAwaitingThem=Vt;exports.isChatMessageActivity=kr;exports.isClosed=Ri;exports.isConnectedType=yr;exports.isDeepLink=gs;exports.isDescendant=zt;exports.isEligible=hi;exports.isEmailActivity=Nr;exports.isHtmlBody=sc;exports.isInFlight=mo;exports.isInteractionUnseen=xt;exports.isLandingPath=hs;exports.isLikelyBulk=Nt;exports.isMessageShape=_e;exports.isMessageType=hr;exports.isMoreSpecificPattern=Yn;exports.isNoteShape=ye;exports.isOpenClock=Sn;exports.isOutwardTool=ha;exports.isParked=Bt;exports.isPaused=fn;exports.isPlaybookAuthoredType=_r;exports.isPublicEmailDomain=Ks;exports.isPublicPath=Ss;exports.isReminderActive=Ft;exports.isReplyableType=Ar;exports.isSlaAtRisk=Mi;exports.isTerminal=fo;exports.isThreadLongEnough=Si;exports.isTranscriptType=Tr;exports.isWorkClosed=sa;exports.isWorkTypeVisible=Go;exports.itemDossierKeys=ra;exports.ladderFor=kn;exports.linkLabel=ki;exports.listeningAllowed=Kr;exports.localeInstruction=xi;exports.localeName=Di;exports.localesOf=Pi;exports.looksLikeEmail=Ls;exports.matchContactToIntents=Na;exports.matchPublicRoute=zn;exports.mcpCredentialScope=Bi;exports.mcpToolPrefix=Fi;exports.mergeShownKeys=ws;exports.messageCountsAs=ct;exports.needsPhoneRegion=Bs;exports.nestsUnderParent=Er;exports.nextSlaClock=xo;exports.normalizeArtifactBlocks=Zr;exports.normalizeBlocks=dr;exports.normalizeEmail=Le;exports.normalizeExample=I;exports.notificationPrefKey=ns;exports.novelty=tr;exports.operationDescriptor=za;exports.operationsForKind=Ya;exports.parkMarksById=Ei;exports.parseActingIdentity=Ji;exports.parseClockMinutes=bo;exports.parseItemKey=ta;exports.pathToRegex=Wn;exports.pauseBitFor=Io;exports.periodsInRange=Hr;exports.phoneSuffix=Ps;exports.pickMailHeaders=_i;exports.plainTextFromMarkdown=at;exports.planSlaEvent=vo;exports.playbookActor=tn;exports.procedureOf=uo;exports.projectDossierKeys=ia;exports.publicBasePathFor=jn;exports.publicRoutePatterns=As;exports.reactionWakesAssignment=ui;exports.readPath=W;exports.readStepError=Ee;exports.recencyOf=Kt;exports.refKey=rn;exports.registrableDomain=or;exports.rejectExampleCandidate=Mn;exports.relatedByDefault=Yi;exports.remainingMsOf=X;exports.resolveAccountCapabilities=Kn;exports.resolveActivityText=V;exports.resolveChannelIntents=$n;exports.resolveSignature=Ot;exports.resolveWorkMode=as;exports.resourceKindOf=ps;exports.runActor=Zi;exports.runInteractionId=ho;exports.sanitizeInline=Tt;exports.sanitizeTranscript=Xn;exports.scoreInteraction=Oi;exports.scoreWorkItem=Zo;exports.selectLenses=Ki;exports.sessionsHoldCannotReach=ba;exports.sessionsToHold=Ta;exports.shareKeyForTeam=Me;exports.shareKeyForUser=Ie;exports.shareKeysForViewer=ii;exports.shouldRunAudioPipeline=ss;exports.slaBadgeTone=Lo;exports.slaHoursByInbox=Ii;exports.slaHoursFor=Wt;exports.sortStatuses=Dn;exports.sourceKey=Un;exports.statusIn=oa;exports.stepsOf=lo;exports.stripHtml=st;exports.subjectKeyOf=go;exports.subjectOf=Re;exports.subjectRef=_a;exports.suggestProjectKey=na;exports.summarizeReactions=Eo;exports.targetById=no;exports.targetForActivityType=to;exports.toActingIdentity=en;exports.toE164=Se;exports.toolSourceKinds=oi;exports.topicOfferedForTeam=On;exports.topicsForTeam=jo;exports.truncateExample=In;exports.uniqueWorkStatusKey=ca;exports.uniqueWorkTypeKey=Fo;exports.usageMetricId=At;exports.usageMetrics=Wr;exports.validateStatuses=la;exports.valueAtPath=eo;exports.waitHoursOf=J;exports.wakesAssignment=li;exports.workActivityScopeKey=Qo;exports.workItemScopeKey=Nn;exports.workProjectScopeKey=Ce;exports.workStatusKey=xn;exports.workTypeKey=_n;exports.workingMsBetween=j;
package/dist/index.js CHANGED
@@ -2041,6 +2041,9 @@ function Wa(e) {
2041
2041
  st.includes(r.key) && t.push({ index: i, reason: "reserved_key", key: r.key }), n.has(r.key) && t.push({ index: i, reason: "duplicate_key", key: r.key }), n.add(r.key);
2042
2042
  }), e.some((r) => r.category === "todo" || r.category === "in_progress") || t.push({ index: -1, reason: "no_open" }), e.some((r) => r.category === "done") || t.push({ index: -1, reason: "no_done" }), t;
2043
2043
  }
2044
+ function Va(e) {
2045
+ return e.completedAt ? "completed" : e.startedAt ? "active" : "planned";
2046
+ }
2044
2047
  const cr = /* @__PURE__ */ new Set(["image/png", "image/jpeg", "image/jpg", "image/gif", "image/webp"]), lr = /* @__PURE__ */ new Set([
2045
2048
  "text/plain",
2046
2049
  "text/markdown",
@@ -2059,18 +2062,18 @@ const O = 1024 * 1024, dr = {
2059
2062
  pdf: 20 * O,
2060
2063
  text: 1 * O,
2061
2064
  audio: 20 * O
2062
- }, Va = 25 * O, za = 5;
2063
- function Xa(e, t) {
2065
+ }, za = 25 * O, Xa = 5;
2066
+ function Ya(e, t) {
2064
2067
  const n = ur(e);
2065
2068
  return n === "unsupported" ? "unsupported" : t > dr[n] ? "too-large" : null;
2066
2069
  }
2067
- function Ya(e) {
2070
+ function qa(e) {
2068
2071
  return e.access !== "read" && e.effect !== "internal";
2069
2072
  }
2070
2073
  function pr(e) {
2071
2074
  return `${e.kind}:${e.id || e.url || e.title}`;
2072
2075
  }
2073
- function qa(e, t = []) {
2076
+ function Ja(e, t = []) {
2074
2077
  const n = new Set(t), r = [], i = [];
2075
2078
  for (const o of e) {
2076
2079
  const a = pr(o);
@@ -2078,26 +2081,26 @@ function qa(e, t = []) {
2078
2081
  }
2079
2082
  return { sources: r, keys: i };
2080
2083
  }
2081
- const Ja = "assist-source", Za = ["blocking", "due", "open"];
2082
- function Qa(e, t) {
2084
+ const Za = "assist-source", Qa = ["blocking", "due", "open"];
2085
+ function es(e, t) {
2083
2086
  const [n, r] = (e.subjectKey ?? "").split(":");
2084
2087
  return n === t && r ? r : void 0;
2085
2088
  }
2086
2089
  const Ce = { blocking: 0, due: 1, open: 2 };
2087
- function es(e, t) {
2090
+ function ts(e, t) {
2088
2091
  return Ce[e.band ?? "open"] - Ce[t.band ?? "open"] || (t.priority ?? 0) - (e.priority ?? 0) || e.id.localeCompare(t.id);
2089
2092
  }
2090
- function ts(e) {
2093
+ function ns(e) {
2091
2094
  return e.sessions.filter(
2092
2095
  (t) => t.id !== e.exceptSessionId && t.state === "connected" && e.canHold(t.providerId)
2093
2096
  );
2094
2097
  }
2095
- function ns(e) {
2098
+ function rs(e) {
2096
2099
  return e.sessions.filter(
2097
2100
  (t) => t.id !== e.exceptSessionId && t.state === "connected" && !e.canHold(t.providerId)
2098
2101
  );
2099
2102
  }
2100
- function rs(e) {
2103
+ function is(e) {
2101
2104
  return e.sessions.some(
2102
2105
  (n) => n.id !== e.exceptSessionId && (n.state === "connected" || n.state === "on_hold")
2103
2106
  ) ? { admit: !1, reason: "busy" } : { admit: !0 };
@@ -2119,7 +2122,7 @@ function mr(e, t) {
2119
2122
  }
2120
2123
  return n;
2121
2124
  }
2122
- function is(e, t) {
2125
+ function os(e, t) {
2123
2126
  const n = mr(e, t);
2124
2127
  return Object.entries(n).filter(([, r]) => !r).map(([r]) => r);
2125
2128
  }
@@ -2130,7 +2133,7 @@ function gr(e, t) {
2130
2133
  transport: t.transport ?? e.transport
2131
2134
  } : e;
2132
2135
  }
2133
- function os(e, t) {
2136
+ function as(e, t) {
2134
2137
  const n = [];
2135
2138
  for (const r of e) {
2136
2139
  if (!r.enabled) continue;
@@ -2141,16 +2144,16 @@ function os(e, t) {
2141
2144
  }
2142
2145
  return n;
2143
2146
  }
2144
- function as(e, t) {
2147
+ function ss(e, t) {
2145
2148
  return t.filter((n) => n.capability.intent === e);
2146
2149
  }
2147
2150
  function hr(e, t) {
2148
2151
  return t.filter((n) => n.capability.targetSchemes.includes(e));
2149
2152
  }
2150
- function ss(e, t) {
2153
+ function cs(e, t) {
2151
2154
  return hr(e.scheme, t);
2152
2155
  }
2153
- function cs(e, t, n) {
2156
+ function ls(e, t, n) {
2154
2157
  const r = [];
2155
2158
  for (const i of e)
2156
2159
  for (const o of n)
@@ -2179,10 +2182,10 @@ const br = {
2179
2182
  id: "note",
2180
2183
  custom: "note"
2181
2184
  };
2182
- function ls(e) {
2185
+ function us(e) {
2183
2186
  return e ? br[e] ?? "note" : "note";
2184
2187
  }
2185
- const us = "message_window", ds = "message_templates", ps = {
2188
+ const ds = "message_window", ps = "message_templates", fs = {
2186
2189
  // E-mail
2187
2190
  FROM: "from",
2188
2191
  TO: "to",
@@ -2199,11 +2202,11 @@ const us = "message_window", ds = "message_templates", ps = {
2199
2202
  // Voice/conference
2200
2203
  HOST: "host",
2201
2204
  PARTICIPANT: "participant"
2202
- }, fs = (e, t) => ({ intent: e, ...t }), ms = "folder_management", gs = "remote_search", hs = "message_reactions", ys = {
2205
+ }, ms = (e, t) => ({ intent: e, ...t }), gs = "folder_management", hs = "remote_search", ys = "message_reactions", bs = {
2203
2206
  ok: !1,
2204
2207
  code: "UNSUPPORTED",
2205
2208
  message: "Provider does not support this op"
2206
- }, bs = "connector", As = "context.collect", d = (e) => ({ type: "string", description: e }), u = (e) => ({ type: "number", description: e }), $ = (e) => ({ type: "boolean", description: e }), E = d("Sheet name. Omit for the sheet the user is looking at."), ke = d("Slide id, as `inspect` reports it.");
2209
+ }, As = "connector", Es = "context.collect", d = (e) => ({ type: "string", description: e }), u = (e) => ({ type: "number", description: e }), $ = (e) => ({ type: "boolean", description: e }), E = d("Sheet name. Omit for the sheet the user is looking at."), ke = d("Slide id, as `inspect` reports it.");
2207
2210
  function l(e, t, n, r, i, o) {
2208
2211
  return {
2209
2212
  op: e,
@@ -2557,28 +2560,28 @@ const C = { undoable: !1, visible: !0 }, g = { undoable: !0, visible: !0 }, ve =
2557
2560
  ...Sr,
2558
2561
  ..._r
2559
2562
  ];
2560
- function Es(e) {
2563
+ function Ss(e) {
2561
2564
  return ct.filter((t) => t.kinds.includes(e));
2562
2565
  }
2563
- function Ss(e) {
2566
+ function _s(e) {
2564
2567
  return ct.find((t) => t.op === e);
2565
2568
  }
2566
- const _s = "documents.describe", Ts = "documents.inspect", ws = "documents.apply";
2567
- function Is(e) {
2569
+ const Ts = "documents.describe", ws = "documents.inspect", Is = "documents.apply";
2570
+ function Ms(e) {
2568
2571
  const t = e.indexOf(":");
2569
2572
  if (t !== -1) return e.slice(0, t);
2570
2573
  const n = e.indexOf(".");
2571
2574
  return n === -1 ? e : e.slice(0, n);
2572
2575
  }
2573
- const Ms = "installation-id";
2574
- function Os(e) {
2576
+ const Os = "installation-id";
2577
+ function Cs(e) {
2575
2578
  const t = [];
2576
2579
  for (const n of Object.keys(e))
2577
2580
  for (const r of Object.keys(e[n]))
2578
2581
  t.push({ lang: n, key: r, value: e[n][r] });
2579
2582
  return t;
2580
2583
  }
2581
- const Cs = "notification-source", ks = (e, t) => `${e}.pref.${t}`, vs = {
2584
+ const ks = "notification-source", vs = (e, t) => `${e}.pref.${t}`, xs = {
2582
2585
  ai: [
2583
2586
  "account.read",
2584
2587
  "account.write",
@@ -2714,37 +2717,37 @@ const Cs = "notification-source", ks = (e, t) => `${e}.pref.${t}`, vs = {
2714
2717
  user: ["user.read", "user.write"],
2715
2718
  work: ["item.read", "item.write", "project.read", "project.write"]
2716
2719
  }, lt = 9e4, Tr = ["out_of_office"], ut = (e) => Tr.includes(e);
2717
- function xs(e, t, n) {
2720
+ function Ns(e, t, n) {
2718
2721
  const r = n - e < lt, i = t?.status && (!t.expiresAt || t.expiresAt > n) ? t : void 0;
2719
2722
  if (!i?.status) return { online: r, status: r ? "available" : "offline" };
2720
2723
  const o = i.status;
2721
2724
  return !r && !ut(o) ? { online: !1, status: "offline" } : { online: r, status: o, message: i.message };
2722
2725
  }
2723
- function Ns(e, t) {
2726
+ function Rs(e, t) {
2724
2727
  const n = t - e.lastSeenAt < lt, r = n || ut(e.status) ? e.status : "offline";
2725
2728
  return n === e.online && r === e.status ? e : { ...e, online: n, status: r };
2726
2729
  }
2727
- function Rs(e, t) {
2730
+ function Ds(e, t) {
2728
2731
  return e?.teamId && t.includes(e.teamId) ? { teamId: e.teamId, mustChoose: !1 } : t.length === 1 ? { teamId: t[0], mustChoose: !1 } : { teamId: void 0, mustChoose: t.length > 1 };
2729
2732
  }
2730
- function Ds(e) {
2733
+ function $s(e) {
2731
2734
  return e.providerAvailable && e.allowed;
2732
2735
  }
2733
- const $s = "resources.describe", Ls = "resources.search", Ps = "resources.resolve", Us = "resources.attached";
2734
- function Ks(e) {
2736
+ const Ls = "resources.describe", Ps = "resources.search", Us = "resources.resolve", Ks = "resources.attached";
2737
+ function Bs(e) {
2735
2738
  const t = e.indexOf(":");
2736
2739
  return t === -1 ? e : e.slice(0, t);
2737
2740
  }
2738
- const Bs = "/provider/scope/related", js = "/provider/scope/read", dt = "auth";
2741
+ const js = "/provider/scope/related", Hs = "/provider/scope/read", dt = "auth";
2739
2742
  function pt(e) {
2740
2743
  const t = typeof e == "string" ? e.match(/apps\/([^/?#]+)/) : null;
2741
2744
  return t ? t[1] : null;
2742
2745
  }
2743
- function Hs(e) {
2746
+ function Fs(e) {
2744
2747
  const t = pt(e);
2745
2748
  return t ? t !== dt : typeof e == "string" && e.startsWith("/wake");
2746
2749
  }
2747
- function Fs(e) {
2750
+ function Gs(e) {
2748
2751
  return typeof e != "string" || e === "" || e === "/" ? !0 : pt(e) === dt;
2749
2752
  }
2750
2753
  function wr(e) {
@@ -2766,7 +2769,7 @@ function Mr(e, t) {
2766
2769
  function Or(e) {
2767
2770
  return e.publicBasePath ?? `/apps/${e.name}`;
2768
2771
  }
2769
- function Gs(e) {
2772
+ function Ws(e) {
2770
2773
  const t = [];
2771
2774
  for (const n of e) {
2772
2775
  if (!n?.name) continue;
@@ -2799,10 +2802,10 @@ function kr(e, t) {
2799
2802
  Ir(r.pattern).test(e) && (!n || Cr(r.pattern, n.pattern)) && (n = r);
2800
2803
  return n ? { ...n, params: { ...n.props, ...Mr(n.pattern, e) } } : null;
2801
2804
  }
2802
- function Ws(e, t) {
2805
+ function Vs(e, t) {
2803
2806
  return kr(e, t) !== null;
2804
2807
  }
2805
- const Vs = 10 * 1024 * 1024, zs = 25 * 1024 * 1024, Xs = "sync-target", Ys = 20, vr = {
2808
+ const zs = 10 * 1024 * 1024, Xs = 25 * 1024 * 1024, Ys = "sync-target", qs = 20, vr = {
2806
2809
  afrikaans: [
2807
2810
  "[Muziek]",
2808
2811
  "(C) TV GELDERLAND 2021",
@@ -3093,13 +3096,13 @@ function Br(e, t = Nr) {
3093
3096
  return { text: n.filter((a) => (a.endedAt ?? 0) >= i).map((a) => xr(a.text).trim()).filter(Boolean).join(" ").replace(/\s+/g, " ").trim(), segmentCount: n.length };
3094
3097
  }
3095
3098
  const jr = 60;
3096
- function qs(e, t, n = jr) {
3099
+ function Js(e, t, n = jr) {
3097
3100
  const r = new Set(e), i = [...e];
3098
3101
  for (const o of t)
3099
3102
  !o || r.has(o) || (r.add(o), i.push(o));
3100
3103
  return i.slice(-n);
3101
3104
  }
3102
- function Js(e) {
3105
+ function Zs(e) {
3103
3106
  const { segments: t, now: n, state: r } = e;
3104
3107
  if (r.lastTriggerAt && n - r.lastTriggerAt < Rr)
3105
3108
  return { trigger: !1, reason: "too_soon" };
@@ -3111,13 +3114,13 @@ function Js(e) {
3111
3114
  const a = Ur(i.text);
3112
3115
  return a.length ? r.lastQueryTerms?.length && Kr(a, r.lastQueryTerms) < $r ? { trigger: !1, reason: "same_topic" } : { trigger: !0, text: i.text, terms: a, segmentCount: i.segmentCount } : { trigger: !1, reason: "no_speech" };
3113
3116
  }
3114
- const Zs = [
3117
+ const Qs = [
3115
3118
  "personal",
3116
3119
  "workspace",
3117
3120
  "connections",
3118
3121
  "work",
3119
3122
  "ai"
3120
- ], Qs = "navNotice", oe = {
3123
+ ], ec = "navNotice", oe = {
3121
3124
  // The lower bounds are deliberately generous: service ranges (0800/0900) are
3122
3125
  // shorter than geographic numbers, and a too-strict minimum silently drops them.
3123
3126
  // An over-permissive key is harmless — it simply matches nothing.
@@ -3171,7 +3174,7 @@ function Vr(e) {
3171
3174
  const r = t.indexOf("@");
3172
3175
  return r >= 0 && (t = t.slice(0, r)), t.trim();
3173
3176
  }
3174
- function ec(e) {
3177
+ function tc(e) {
3175
3178
  if (!e) return !1;
3176
3179
  const t = e.indexOf("@");
3177
3180
  if (t <= 0) return !1;
@@ -3199,7 +3202,7 @@ function Re(e, t) {
3199
3202
  }
3200
3203
  return !a && L(i, o) ? `+${o.callingCode}${i}` : null;
3201
3204
  }
3202
- function tc(e, t = 9) {
3205
+ function nc(e, t = 9) {
3203
3206
  const n = (e ?? "").replace(/\D/g, "");
3204
3207
  return n.length < t ? null : n.slice(-t);
3205
3208
  }
@@ -3210,7 +3213,7 @@ function ft(e) {
3210
3213
  const r = t.slice(0, n).split("+")[0], i = t.slice(n + 1);
3211
3214
  return !r || !i.includes(".") ? null : `${r}@${i}`;
3212
3215
  }
3213
- function nc(e) {
3216
+ function rc(e) {
3214
3217
  const t = ft(e);
3215
3218
  return t ? t.slice(t.lastIndexOf("@") + 1) : null;
3216
3219
  }
@@ -3276,16 +3279,16 @@ const Yr = /* @__PURE__ */ new Set([
3276
3279
  "proximus.be",
3277
3280
  "scarlet.be"
3278
3281
  ]);
3279
- function rc(e) {
3282
+ function ic(e) {
3280
3283
  const t = Xr(e);
3281
3284
  return t ? Yr.has(t) : !1;
3282
3285
  }
3283
- function ic(e) {
3286
+ function oc(e) {
3284
3287
  if (!e) return !1;
3285
3288
  const t = e.trim().toLowerCase();
3286
3289
  return t === "tel" || t === "sms" || t === "whatsapp" || t === "fax";
3287
3290
  }
3288
- function oc(e, t, n) {
3291
+ function ac(e, t, n) {
3289
3292
  if (!e || !t) return null;
3290
3293
  const r = e.trim().toLowerCase();
3291
3294
  if (r === "tel" || r === "sms" || r === "whatsapp") {
@@ -3452,13 +3455,13 @@ function Ke(e) {
3452
3455
  `).trim();
3453
3456
  }
3454
3457
  const gi = /<\s*(html|body|div|p|table|br|span)\b/i;
3455
- function ac(e) {
3458
+ function sc(e) {
3456
3459
  return gi.test(e);
3457
3460
  }
3458
- function sc(e) {
3461
+ function cc(e) {
3459
3462
  return mt(e, !1);
3460
3463
  }
3461
- function cc(e) {
3464
+ function lc(e) {
3462
3465
  return mt(e, !0);
3463
3466
  }
3464
3467
  function mt(e, t) {
@@ -3476,11 +3479,11 @@ export {
3476
3479
  no as ACTIVE_ASSIGNMENT_STATUSES,
3477
3480
  _ as ACTIVITY_CATALOG,
3478
3481
  dr as AI_ATTACHMENT_LIMITS,
3479
- za as AI_ATTACHMENT_MAX_PER_TURN,
3480
- Va as AI_ATTACHMENT_TURN_BUDGET,
3482
+ Xa as AI_ATTACHMENT_MAX_PER_TURN,
3483
+ za as AI_ATTACHMENT_TURN_BUDGET,
3481
3484
  He as AI_VENDORS,
3482
3485
  Pt as ALLOWED_LINK_SCHEMES,
3483
- vs as APP_PERMISSIONS,
3486
+ xs as APP_PERMISSIONS,
3484
3487
  me as ARTIFACT_MAX_BLOCKS,
3485
3488
  Xi as ARTIFACT_MAX_BODY_BYTES,
3486
3489
  G as ARTIFACT_MAX_CELL_LEN,
@@ -3490,8 +3493,8 @@ export {
3490
3493
  he as ARTIFACT_MAX_TABLE_ROWS,
3491
3494
  Ge as ARTIFACT_MAX_TEXT_LEN,
3492
3495
  Vt as ASSIGNMENT_SCOPE_KIND,
3493
- Za as ASSIST_BANDS,
3494
- Ja as ASSIST_SOURCE_PROVIDER_GROUP,
3496
+ Qa as ASSIST_BANDS,
3497
+ Za as ASSIST_SOURCE_PROVIDER_GROUP,
3495
3498
  an as ATTENTION_STATUSES,
3496
3499
  dt as AUTH_APP_NAME,
3497
3500
  Nn as AUTO_READY_MIN_PROPOSALS,
@@ -3504,28 +3507,28 @@ export {
3504
3507
  $r as CADENCE_MIN_NOVELTY,
3505
3508
  Nr as CADENCE_WINDOW_MS,
3506
3509
  Qo as CLASSIFY_VARS,
3507
- bs as CONNECTOR_PROVIDER_GROUP,
3508
- As as CONTEXT_COLLECT_SERVICE,
3510
+ As as CONNECTOR_PROVIDER_GROUP,
3511
+ Es as CONTEXT_COLLECT_SERVICE,
3509
3512
  Wi as CORE_DIMENSIONS,
3510
3513
  yr as CommunicationScheme,
3511
3514
  qt as DAY_MS,
3512
3515
  Ko as DEFAULT_MEMORY_BUDGET,
3513
3516
  Hr as DEFAULT_PHONE_REGION,
3514
- ws as DOCUMENT_APPLY_SERVICE,
3515
- _s as DOCUMENT_DESCRIBE_SERVICE,
3516
- Ts as DOCUMENT_INSPECT_SERVICE,
3517
+ Is as DOCUMENT_APPLY_SERVICE,
3518
+ Ts as DOCUMENT_DESCRIBE_SERVICE,
3519
+ ws as DOCUMENT_INSPECT_SERVICE,
3517
3520
  ct as DOCUMENT_OPERATIONS,
3518
3521
  ta as EMPTY_WORKFLOW,
3519
- ms as FEATURE_FOLDER_MANAGEMENT,
3520
- hs as FEATURE_MESSAGE_REACTIONS,
3521
- gs as FEATURE_REMOTE_SEARCH,
3522
+ gs as FEATURE_FOLDER_MANAGEMENT,
3523
+ ys as FEATURE_MESSAGE_REACTIONS,
3524
+ hs as FEATURE_REMOTE_SEARCH,
3522
3525
  ln as FOLLOW_UP_HOURS,
3523
3526
  Yt as HOUR_MS,
3524
3527
  gi as HTML_BODY_RE,
3525
3528
  w as INELIGIBLE,
3526
- Ms as INSTALLATION_HEADER,
3529
+ Os as INSTALLATION_HEADER,
3527
3530
  On as INTERACTION_KIND,
3528
- ps as InteractionParticipantRole,
3531
+ fs as InteractionParticipantRole,
3529
3532
  yn as KB_FALLBACK_LOCALE,
3530
3533
  _e as KB_LOCALES,
3531
3534
  ie as LOOSE_STATUSES,
@@ -3534,7 +3537,7 @@ export {
3534
3537
  zt as MAX_ASSIGNMENT_TURNS,
3535
3538
  hi as MAX_BLOCKS,
3536
3539
  Ze as MAX_COLLECTION_DEPTH,
3537
- Vs as MAX_EDITABLE_FILE_BYTES,
3540
+ zs as MAX_EDITABLE_FILE_BYTES,
3538
3541
  yi as MAX_FIELDS,
3539
3542
  bi as MAX_LIST_ITEMS,
3540
3543
  $o as MAX_MEMORY_BROWSE,
@@ -3544,10 +3547,10 @@ export {
3544
3547
  Yn as MAX_TOPIC_CANDIDATES,
3545
3548
  Xn as MAX_TOPIC_EXAMPLES,
3546
3549
  W as MAX_TOPIC_EXAMPLE_CHARS,
3547
- zs as MAX_VIEWABLE_FILE_BYTES,
3550
+ Xs as MAX_VIEWABLE_FILE_BYTES,
3548
3551
  Po as MIN_MEMORY_BUDGET,
3549
- Qs as NAV_NOTICE_SLOT,
3550
- Cs as NOTIFICATION_SOURCE_PROVIDER_GROUP,
3552
+ ec as NAV_NOTICE_SLOT,
3553
+ ks as NOTIFICATION_SOURCE_PROVIDER_GROUP,
3551
3554
  jo as ONBOARDING_SOURCE_PROVIDER_GROUP,
3552
3555
  Z as PAUSE_SNOOZED,
3553
3556
  Q as PAUSE_WAITING_FOR_CUSTOMER,
@@ -3555,19 +3558,19 @@ export {
3555
3558
  lt as PRESENCE_ONLINE_WINDOW_MS,
3556
3559
  Tr as PRESENCE_SURVIVES_OFFLINE,
3557
3560
  Fo as PROFILE_TOOL_DISPOSITIONS,
3558
- ds as PROVIDER_FEATURE_MESSAGE_TEMPLATES,
3559
- us as PROVIDER_FEATURE_MESSAGE_WINDOW,
3561
+ ps as PROVIDER_FEATURE_MESSAGE_TEMPLATES,
3562
+ ds as PROVIDER_FEATURE_MESSAGE_WINDOW,
3560
3563
  Yr as PUBLIC_EMAIL_DOMAINS,
3561
3564
  Te as READ_STEP_TYPES,
3562
3565
  En as RELATED_SUBJECT_KINDS,
3563
3566
  st as RESERVED_STATUS_KEYS,
3564
- Us as RESOURCE_ATTACHED_SERVICE,
3565
- $s as RESOURCE_DESCRIBE_SERVICE,
3566
- Ps as RESOURCE_RESOLVE_SERVICE,
3567
- Ls as RESOURCE_SEARCH_SERVICE,
3568
- js as SCOPE_READ_ROUTE,
3569
- Bs as SCOPE_RELATED_ROUTE,
3570
- Zs as SETTINGS_CATEGORIES,
3567
+ Ks as RESOURCE_ATTACHED_SERVICE,
3568
+ Ls as RESOURCE_DESCRIBE_SERVICE,
3569
+ Us as RESOURCE_RESOLVE_SERVICE,
3570
+ Ps as RESOURCE_SEARCH_SERVICE,
3571
+ Hs as SCOPE_READ_ROUTE,
3572
+ js as SCOPE_RELATED_ROUTE,
3573
+ Qs as SETTINGS_CATEGORIES,
3571
3574
  lo as SIGNATURE_INTENTS,
3572
3575
  cn as SLA_HOURS_BY_PRIORITY,
3573
3576
  fa as SLA_METRICS,
@@ -3576,12 +3579,12 @@ export {
3576
3579
  kn as STEP_MAX_TOKENS_MIN,
3577
3580
  en as SUMMARY_MIN_LAST_CHARS,
3578
3581
  Qt as SUMMARY_MIN_MESSAGES,
3579
- Ys as SYNC_RUN_MAX_ERRORS,
3580
- Xs as SYNC_TARGET_PROVIDER_GROUP,
3582
+ qs as SYNC_RUN_MAX_ERRORS,
3583
+ Ys as SYNC_TARGET_PROVIDER_GROUP,
3581
3584
  Wt as TERMINAL_ASSIGNMENT_STATUSES,
3582
3585
  Dn as TERMINAL_RUN_STATUSES,
3583
3586
  Zo as TRIGGER_VARS,
3584
- ys as UNSUPPORTED,
3587
+ bs as UNSUPPORTED,
3585
3588
  Rt as USAGE_DIMENSIONS,
3586
3589
  Dt as USAGE_DIMENSION_IDS,
3587
3590
  nr as WORK_ACTIVITY_SCOPE_KIND,
@@ -3605,9 +3608,9 @@ export {
3605
3608
  Vo as actorKey,
3606
3609
  Oa as addExampleCandidate,
3607
3610
  ne as addWorkingMs,
3608
- Ns as agePresenceEntry,
3611
+ Rs as agePresenceEntry,
3609
3612
  ur as aiAttachmentKind,
3610
- Xa as aiAttachmentRejection,
3613
+ Ya as aiAttachmentRejection,
3611
3614
  fe as aiBudgetLimit,
3612
3615
  Fi as aiBudgetPeriodKey,
3613
3616
  Ct as aiBudgetPeriodStart,
@@ -3628,7 +3631,7 @@ export {
3628
3631
  io as assignmentScopeKey,
3629
3632
  so as assignmentSubject,
3630
3633
  Ni as buildActivityPreview,
3631
- os as buildChannelIntents,
3634
+ as as buildChannelIntents,
3632
3635
  Qi as buildShareKeys,
3633
3636
  Br as buildWindow,
3634
3637
  re as calendarOf,
@@ -3636,35 +3639,36 @@ export {
3636
3639
  Mi as carriesText,
3637
3640
  xo as categoryLabel,
3638
3641
  or as categoryOf,
3639
- ls as channelKindForScheme,
3642
+ us as channelKindForScheme,
3640
3643
  _i as channelKindOf,
3641
3644
  ea as clampStepMaxTokens,
3642
3645
  yo as classifyMail,
3643
- cc as cleanMessageMarkdown,
3644
- sc as cleanMessageText,
3645
- es as compareAssistRank,
3646
+ lc as cleanMessageMarkdown,
3647
+ cc as cleanMessageText,
3648
+ ts as compareAssistRank,
3646
3649
  zn as compareWorkTypes,
3650
+ Va as cycleState,
3647
3651
  co as decideAssignmentState,
3648
- Js as decideCadence,
3649
- rs as decideIncomingCall,
3652
+ Zs as decideCadence,
3653
+ is as decideIncomingCall,
3650
3654
  bn as defaultLocaleOf,
3651
3655
  Ha as defaultStatusKey,
3652
- fs as defineIntent,
3656
+ ms as defineIntent,
3653
3657
  gn as depthOf,
3654
- xs as derivePresence,
3655
- is as disabledIntentsFromCapabilities,
3656
- Is as documentKindOf,
3658
+ Ns as derivePresence,
3659
+ os as disabledIntentsFromCapabilities,
3660
+ Ms as documentKindOf,
3657
3661
  ha as dueAtOf,
3658
3662
  Ea as elapsedSeconds,
3659
- nc as emailDomain,
3660
- oc as endpointKey,
3663
+ rc as emailDomain,
3664
+ ac as endpointKey,
3661
3665
  Mr as extractParams,
3662
3666
  Ur as extractTerms,
3663
- ss as filterByEndpoint,
3664
- as as filterByIntent,
3667
+ cs as filterByEndpoint,
3668
+ ss as filterByIntent,
3665
3669
  hr as filterByTargetScheme,
3666
3670
  K as findAiVendor,
3667
- Os as flattenLocales,
3671
+ Cs as flattenLocales,
3668
3672
  vt as floorToPeriod,
3669
3673
  Sn as formatActingIdentity,
3670
3674
  Ta as formatClock,
@@ -3672,7 +3676,7 @@ export {
3672
3676
  La as formatItemKey,
3673
3677
  kt as formatPeriod,
3674
3678
  Aa as formatSlaDuration,
3675
- qa as freshSources,
3679
+ Ja as freshSources,
3676
3680
  Di as getActivitySeenUserIds,
3677
3681
  po as getContactEndpoints,
3678
3682
  wo as getShortTitle,
@@ -3691,26 +3695,26 @@ export {
3691
3695
  Li as isChatMessageActivity,
3692
3696
  _o as isClosed,
3693
3697
  Ci as isConnectedType,
3694
- Hs as isDeepLink,
3698
+ Fs as isDeepLink,
3695
3699
  hn as isDescendant,
3696
3700
  fo as isEligible,
3697
3701
  $i as isEmailActivity,
3698
- ac as isHtmlBody,
3702
+ sc as isHtmlBody,
3699
3703
  aa as isInFlight,
3700
3704
  on as isInteractionUnseen,
3701
- Fs as isLandingPath,
3705
+ Gs as isLandingPath,
3702
3706
  Zt as isLikelyBulk,
3703
3707
  Be as isMessageShape,
3704
3708
  Ti as isMessageType,
3705
3709
  Cr as isMoreSpecificPattern,
3706
3710
  je as isNoteShape,
3707
3711
  Wn as isOpenClock,
3708
- Ya as isOutwardTool,
3712
+ qa as isOutwardTool,
3709
3713
  dn as isParked,
3710
3714
  $n as isPaused,
3711
3715
  Oi as isPlaybookAuthoredType,
3712
- rc as isPublicEmailDomain,
3713
- Ws as isPublicPath,
3716
+ ic as isPublicEmailDomain,
3717
+ Vs as isPublicPath,
3714
3718
  pn as isReminderActive,
3715
3719
  Ii as isReplyableType,
3716
3720
  Ao as isSlaAtRisk,
@@ -3726,24 +3730,24 @@ export {
3726
3730
  Co as localeInstruction,
3727
3731
  Oo as localeName,
3728
3732
  vo as localesOf,
3729
- ec as looksLikeEmail,
3730
- cs as matchContactToIntents,
3733
+ tc as looksLikeEmail,
3734
+ ls as matchContactToIntents,
3731
3735
  kr as matchPublicRoute,
3732
3736
  Ro as mcpCredentialScope,
3733
3737
  Do as mcpToolPrefix,
3734
- qs as mergeShownKeys,
3738
+ Js as mergeShownKeys,
3735
3739
  St as messageCountsAs,
3736
- ic as needsPhoneRegion,
3740
+ oc as needsPhoneRegion,
3737
3741
  wi as nestsUnderParent,
3738
3742
  ya as nextSlaClock,
3739
3743
  Yi as normalizeArtifactBlocks,
3740
3744
  Ei as normalizeBlocks,
3741
3745
  ft as normalizeEmail,
3742
3746
  I as normalizeExample,
3743
- ks as notificationPrefKey,
3747
+ vs as notificationPrefKey,
3744
3748
  Kr as novelty,
3745
- Ss as operationDescriptor,
3746
- Es as operationsForKind,
3749
+ _s as operationDescriptor,
3750
+ Ss as operationsForKind,
3747
3751
  mo as parkMarksById,
3748
3752
  Go as parseActingIdentity,
3749
3753
  da as parseClockMinutes,
@@ -3751,7 +3755,7 @@ export {
3751
3755
  Ir as pathToRegex,
3752
3756
  pa as pauseBitFor,
3753
3757
  Vi as periodsInRange,
3754
- tc as phoneSuffix,
3758
+ nc as phoneSuffix,
3755
3759
  ho as pickMailHeaders,
3756
3760
  At as plainTextFromMarkdown,
3757
3761
  ga as planSlaEvent,
@@ -3759,7 +3763,7 @@ export {
3759
3763
  ra as procedureOf,
3760
3764
  Ba as projectDossierKeys,
3761
3765
  Or as publicBasePathFor,
3762
- Gs as publicRoutePatterns,
3766
+ Ws as publicRoutePatterns,
3763
3767
  ao as reactionWakesAssignment,
3764
3768
  X as readPath,
3765
3769
  we as readStepError,
@@ -3773,8 +3777,8 @@ export {
3773
3777
  Y as resolveActivityText,
3774
3778
  fr as resolveChannelIntents,
3775
3779
  Xt as resolveSignature,
3776
- Rs as resolveWorkMode,
3777
- Ks as resourceKindOf,
3780
+ Ds as resolveWorkMode,
3781
+ Bs as resourceKindOf,
3778
3782
  Wo as runActor,
3779
3783
  ca as runInteractionId,
3780
3784
  jt as sanitizeInline,
@@ -3782,12 +3786,12 @@ export {
3782
3786
  Eo as scoreInteraction,
3783
3787
  Da as scoreWorkItem,
3784
3788
  No as selectLenses,
3785
- ns as sessionsHoldCannotReach,
3786
- ts as sessionsToHold,
3789
+ rs as sessionsHoldCannotReach,
3790
+ ns as sessionsToHold,
3787
3791
  ze as shareKeyForTeam,
3788
3792
  Ve as shareKeyForUser,
3789
3793
  eo as shareKeysForViewer,
3790
- Ds as shouldRunAudioPipeline,
3794
+ $s as shouldRunAudioPipeline,
3791
3795
  ba as slaBadgeTone,
3792
3796
  bo as slaHoursByInbox,
3793
3797
  fn as slaHoursFor,
@@ -3798,7 +3802,7 @@ export {
3798
3802
  Et as stripHtml,
3799
3803
  sa as subjectKeyOf,
3800
3804
  et as subjectOf,
3801
- Qa as subjectRef,
3805
+ es as subjectRef,
3802
3806
  Ua as suggestProjectKey,
3803
3807
  la as summarizeReactions,
3804
3808
  Yo as targetById,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opencxh/domain",
3
- "version": "1.228.0",
3
+ "version": "1.229.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",