@opencxh/domain 1.253.0 → 1.255.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.
- package/dist/entities/playbook/labels.d.ts +18 -0
- package/dist/entities/playbook/labels.test.d.ts +1 -0
- package/dist/entities/playbook/trigger-vars.d.ts +11 -0
- package/dist/entities/playbook/trigger-vars.test.d.ts +1 -0
- package/dist/index.cjs +19 -19
- package/dist/index.js +1388 -1369
- package/dist/platform/ai-tools.d.ts +8 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ge=10,re=10,oe=10,ie=5,Bo=new Set(["header","section","context","divider","image","list","actions","attachments"]);function Pe(e){if(typeof e=="string")return e.length>0;if(!e||typeof e!="object")return!1;const t=e;return typeof t.key=="string"||typeof t.value=="string"}function Ho(e,t=()=>{}){if(!Array.isArray(e))return[];const n=[];for(const r of e){if(n.length>=Ge){t(`more than ${Ge} blocks; the rest was dropped`);break}if(!r||typeof r!="object")continue;const o=r;if(!Bo.has(o.type)){t(`unknown block type ${String(o.type)}`);continue}switch(o.type){case"header":if(!Pe(o.text)){t("a header without text");continue}break;case"context":if(!Pe(o.text)){t("a context block without text");continue}break;case"image":if(!o.url||!o.alt){t("an image without url or alt");continue}break;case"section":Array.isArray(o.fields)&&o.fields.length>re&&(t(`more than ${re} fields in a section`),o.fields=o.fields.slice(0,re));break;case"list":if(!Array.isArray(o.items)||o.items.length===0){t("a list without items");continue}o.items.length>oe&&(t(`more than ${oe} list items`),o.items=o.items.slice(0,oe));break;case"actions":{const i=Array.isArray(o.elements)?o.elements:[],s=i.filter(a=>a?.action_id&&a.invoke&&Pe(a.text));if(s.length!==i.length&&t("an action without action_id, invoke or text"),s.length===0)continue;s.length>ie&&t(`more than ${ie} actions`),o.elements=s.slice(0,ie);break}}n.push(o)}return n}const Go=/(\*\*|__)(?=\S)([\s\S]*?\S)\1/g,Wo=/(\*|_)(?=\S)([^*_\n]*?\S)\1/g;function tn(e){if(typeof e!="string"||!e)return"";let t=e;return t=t.replace(/```[a-z]*\n?/gi,"").replace(/~~~[a-z]*\n?/gi,""),t=t.replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1"),t=t.replace(/\[([^\]]*)\]\([^)]*\)/g,"$1"),t=t.replace(/\[([^\]]*)\]\[[^\]]*\]/g,"$1"),t=t.replace(/<((?:https?|mailto):[^>\s]+)>/gi,"$1"),t=t.split(`
|
|
2
2
|
`).map(n=>n.replace(/^\s{0,3}#{1,6}\s+/,"").replace(/^\s{0,3}>\s?/,"").replace(/^\s*[-*+]\s+/,"").replace(/^\s*\d+[.)]\s+/,"").replace(/^\s*(?:[-*_]\s*){3,}$/,"")).join(`
|
|
3
|
-
`),t=t.replace(Bo,"$2"),t=t.replace(Ho,"$2"),t=t.replace(/~~(?=\S)([\s\S]*?\S)~~/g,"$1"),t=t.replace(/`([^`\n]+)`/g,"$1"),t.replace(/\s+/g," ").trim()}function tn(e){return e.replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function ee(e){if(!e||e<0)return"";const t=Math.floor(e/60),n=Math.floor(e%60);return`${t}:${n.toString().padStart(2,"0")}`}function Mt(e){return e?` — ${Math.floor(e/60)}m ${e%60}s`:""}function Pe(e){return e?.split("@")?.[0]||e||""}function te(e){return e.map(t=>t.name).join(", ")}function Ot(e){return e==="meeting"?"Meeting":e==="video"?"Video call":"Audio call"}const D={VOICE_CALL_STARTED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gesprek gestart",timeline:e=>e.direction==="inbound"?`Inbound call started — ${Pe(e.payload.from)}`:`Outbound call started — ${Pe(e.payload.to)}`},VOICE_CALL_ANSWERED:{shape:"event",channelKind:"voice",icon:"phone",connected:!0,snippet:()=>"Gesprek aangenomen",timeline:(e,t)=>`Call answered — ${t}`},VOICE_CALL_HOLD:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"In de wacht",timeline:(e,t)=>`Call on hold — ${t}`},VOICE_CALL_UNHOLD:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Hervat"},VOICE_CALL_ENDED:{shape:"event",channelKind:"voice",icon:"phone",snippet:e=>`Gesprek beëindigd${e.payload.duration?` (${ee(e.payload.duration)})`:""}`,timeline:e=>`Call ended${Mt(e.payload.duration)}`},VOICE_CALL_MISSED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gemiste oproep",timeline:e=>`Missed call — ${Pe(e.payload.from)}`},VOICE_CALL_FAILED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gesprek mislukt",timeline:()=>"Call failed"},VOICE_CALL_VOICEMAIL:{shape:"artifact",channelKind:"voice",icon:"phone",snippet:e=>e.payload.transcription?.trim()?e.payload.transcription:"Voicemail ontvangen"},VIDEO_CALL_STARTED:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"Gesprek gestart",timeline:()=>"Video call started"},VIDEO_CALL_ANSWERED:{shape:"event",channelKind:"video",icon:"video",connected:!0,snippet:()=>"Gesprek aangenomen",timeline:()=>"Video call answered"},VIDEO_CALL_HOLD:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"In de wacht"},VIDEO_CALL_UNHOLD:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"Hervat"},VIDEO_CALL_ENDED:{shape:"event",channelKind:"video",icon:"video",snippet:e=>`Gesprek beëindigd${e.payload.duration?` (${ee(e.payload.duration)})`:""}`,timeline:()=>"Video call ended"},VIDEO_CALL_MISSED:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"Gemiste oproep",timeline:()=>"Missed video call"},VIDEO_CALL_FAILED:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"Gesprek mislukt",timeline:()=>"Video call failed"},EMAIL_RECEIVED:{shape:"message",triggerable:!0,displayNameKey:"communication:activity.EMAIL_RECEIVED",component:"communication:EmailActivity",channelKind:"mail",icon:"mail",replyable:!0,carriesText:!0,countsAs:"inbound_message",snippet:kt},EMAIL_SENT:{shape:"message",component:"communication:EmailActivity",channelKind:"mail",icon:"mail",replyable:!0,carriesText:!0,countsAs:"outbound_message",snippet:kt},CHAT_MESSAGE_SENT:{shape:"message",component:"communication:ChatMessage",channelKind:"chat",icon:"message-circle",replyable:!0,carriesText:!0,countsAs:"outbound_message",snippet:e=>e.payload.text??""},CHAT_MESSAGE_RECEIVED:{shape:"message",triggerable:!0,displayNameKey:"communication:activity.CHAT_MESSAGE_RECEIVED",component:"communication:ChatMessage",channelKind:"chat",icon:"message-circle",replyable:!0,carriesText:!0,countsAs:"inbound_message",snippet:e=>e.payload.text??""},CHAT_MEMBER_JOINED:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>`${te(e.payload.members)} toegevoegd`,timeline:e=>{const t=te(e.payload.members)||"Someone",n=e.payload.initiator?.name?` · added by ${e.payload.initiator.name}`:"";return`${t} joined the chat${n}`}},CHAT_MEMBER_LEFT:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>`${te(e.payload.members)} verlaten`,timeline:e=>{const t=te(e.payload.members)||"Someone",n=e.payload.initiator?.name?` · removed by ${e.payload.initiator.name}`:"";return`${t} left the chat${n}`}},CHAT_RENAMED:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>`Hernoemd naar "${e.payload.newName}"`,timeline:e=>`Chat renamed to "${e.payload.newName}"${e.payload.initiator?` by ${e.payload.initiator.name}`:""}`},CHAT_CALL_STARTED:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:()=>"Gesprek gestart",timeline:e=>`${Ot(e.payload.callType)} started${e.payload.initiator?` by ${e.payload.initiator.name}`:""}`,joinUrl:e=>e.payload.joinUrl},CHAT_CALL_ENDED:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>`Gesprek beëindigd${e.payload.duration?` (${ee(e.payload.duration)})`:""}`,timeline:e=>`${Ot(e.payload.callType)} ended${Mt(e.payload.duration)}`,joinUrl:e=>e.payload.joinUrl},CHAT_EVENT:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>e.payload.text??e.payload.eventType,timeline:e=>e.payload.text||e.payload.eventType},TRANSCRIPT_ADDED:{shape:"artifact",triggerable:!0,displayNameKey:"communication:activity.TRANSCRIPT_ADDED",component:"communication:TranscriptionActivity",icon:"captions",carriesText:!0,snippet:e=>(e.payload.segments??[]).map(t=>t.text).join(" ")},COMMENT_ADDED:{shape:"note",component:"communication:CommentActivity",icon:"sticky-note",carriesText:!0,snippet:e=>e.payload.text??""},FILE_UPLOADED:{shape:"artifact",component:"communication:FileActivity",icon:"paperclip",snippet:e=>`Bestand: ${e.payload.fileName}`},AI_MESSAGE_ADDED:{shape:"event",triggerable:!0,displayNameKey:"communication:activity.AI_MESSAGE_ADDED",icon:"circle",snippet:e=>e.payload.output?.text??e.payload.input?.text??"",timeline:()=>"AI message added"},AI_ACTION_PROPOSED:{shape:"event",component:"communication:ProposedActionCard",icon:"circle",playbookAuthored:!0,snippet:e=>`Voorstel wacht op goedkeuring (${e.payload.actions?.length??0} actie(s))`},PLAYBOOK_STARTED:{shape:"event",icon:"circle",playbookAuthored:!0,snippet:e=>`Playbook gestart${e.payload.playbookName?`: ${e.payload.playbookName}`:""}`,timeline:e=>`Playbook gestart${e.payload.playbookName?` — ${e.payload.playbookName}`:""}`},PLAYBOOK_COMPLETED:{shape:"event",icon:"circle",playbookAuthored:!0,snippet:()=>"Playbook afgerond",timeline:()=>"Playbook afgerond"},PLAYBOOK_ESCALATED:{shape:"event",icon:"circle",playbookAuthored:!0,snippet:()=>"Playbook geëscaleerd naar een mens",timeline:()=>"Playbook geëscaleerd naar een mens"},MEETING_SCHEDULED:{shape:"event",icon:"calendar",snippet:e=>`Vergadering gepland: ${e.payload.title}`,timeline:()=>"Meeting scheduled",joinUrl:e=>e.payload.joinUrl},MEETING_STARTED:{shape:"event",icon:"calendar",connected:!0,snippet:e=>`Vergadering gestart: ${e.payload.title}`,timeline:()=>"Meeting started",joinUrl:e=>e.payload.joinUrl},MEETING_ENDED:{shape:"event",icon:"calendar",snippet:e=>`Vergadering beëindigd${e.payload.duration?` (${ee(e.payload.duration)})`:""}`,timeline:()=>"Meeting ended"},MEETING_PARTICIPANT_JOINED:{shape:"event",icon:"calendar",snippet:e=>`${e.payload.name} deelgenomen`,timeline:(e,t)=>`${t} joined the meeting`},MEETING_PARTICIPANT_LEFT:{shape:"event",icon:"calendar",snippet:e=>`${e.payload.name} verlaten`,timeline:(e,t)=>`${t} left the meeting`},INTERACTION_CREATED:{shape:"event",icon:"circle",snippet:()=>"Interactie aangemaakt",timeline:(e,t)=>`Interaction started by ${t}`},INTERACTION_STATUS_CHANGED:{shape:"event",triggerable:!0,displayNameKey:"communication:activity.INTERACTION_STATUS_CHANGED",icon:"circle-dot",snippet:e=>`Status: ${e.payload.fromStatus} → ${e.payload.toStatus}`,timeline:(e,t)=>`Status changed to ${e.payload.toStatus} by ${t}`},INTERACTION_ASSIGNED:{shape:"event",icon:"user",snippet:()=>"Interactie toegewezen",timeline:(e,t)=>`Assigned by ${t}`},SLA_BREACHED:{shape:"event",triggerable:!0,displayNameKey:"communication:activity.SLA_BREACHED",icon:"alarm-clock",snippet:e=>`SLA verlopen: ${e.payload.metric}`,timeline:e=>`SLA target ${e.payload.metric} passed its deadline`},WORK_COMMENT_ADDED:{shape:"note",icon:"sticky-note",carriesText:!0,snippet:()=>"Reactie"},WORK_ITEM_ASSIGNED:{shape:"event",icon:"user",snippet:()=>"Taak toegewezen",timeline:(e,t)=>`Assigned by ${t}`},WORK_ITEM_STATUS_CHANGED:{shape:"event",triggerable:!0,icon:"circle-dot",snippet:()=>"Status gewijzigd",timeline:(e,t)=>`Status changed by ${t}`}};function kt(e){const t=e.payload,n=en(t.bodyText).trim()||t.bodySnippet?.trim()||tn(t.body??"");return t.subject?`${t.subject} — ${n}`:n}function M(e){return D[e]}function Wo(e){return M(e)?.icon??"circle"}function Go(e){return M(e)?.channelKind}function et(e){return e==="message"||e==="note"}function jo(e){return et(M(e)?.shape)}function tt(e){return e==="note"}function Vo(e){return tt(M(e)?.shape)}function Yo(e){return M(e)?.replyable===!0}function Xo(e){return M(e)?.carriesText===!0}function nn(e){return M(e)?.countsAs}function zo(e){return M(e)?.playbookAuthored===!0}function qo(e){return M(e)?.connected===!0}function Qo(e){const t=M(e);return t?.shape==="artifact"&&t?.carriesText===!0}function rn(e){const t=M(e.type)?.snippet;return t?t(e):""}function Jo(e,t){const n=M(e.type)?.timeline;return n?n(e,t):e.type.replace(/_/g," ").toLowerCase()}function Zo(e){const t=M(e.type)?.joinUrl;return t?t(e):void 0}function ue(e,t){let n=e;for(const r of t.split(".")){if(n==null||typeof n!="object")return"";n=n[r]}return n==null?"":typeof n=="string"?n:typeof n=="number"||typeof n=="boolean"?String(n):""}function de(e,t,n){if(e===void 0)return null;if(typeof e=="string")return e||null;if("value"in e)return ue(t,e.value)||null;const r={};for(const[i,s]of Object.entries(e.params??{}))r[i]=ue(t,s);const o=n(e.key,r);return o===e.key?null:o}function on(e,t){if(!e||typeof e=="string"||"value"in e)return null;const n={};for(const[r,o]of Object.entries(e.params??{}))n[r]=ue(t,o);return{key:e.key,params:n}}const Ct=140;function ei(e){const t=e.trim();return t.length<=Ct?t:`${t.slice(0,Ct-1).trimEnd()}…`}function ti(e,t){const n=on(t?.text,e),r=t?de(t.text,e,o=>o):null;return{activityId:e.id,type:e.type,snippet:ei(r??rn(e)),authorName:e.author?.name??"",direction:e.direction,createdAt:e.createdAt??Date.now(),...n?{snippetKey:n.key,snippetParams:n.params}:{}}}const ni=e=>e;function Nt(e){const t=D[e];return{type:e,shape:t.shape,channelKind:t.channelKind,icon:t.icon,replyable:t.replyable===!0,countsAs:t.countsAs,carriesText:t.carriesText===!0,triggerable:t.triggerable===!0,component:t.component,builtIn:!0,displayNameKey:t.displayNameKey}}function wt(e){return{type:e.type,shape:e.shape,channelKind:e.channelKind,icon:e.icon||"circle",replyable:e.replyable===!0,countsAs:e.countsAs,carriesText:e.carriesText===!0,triggerable:e.triggerable===!0,component:e.component,builtIn:!1,displayNameKey:e.displayNameKey}}class sn{constructor(t=[],n=ni){this.translate=n;for(const r of t)r?.type&&(r.type in D||this.declared.has(r.type)||this.declared.set(r.type,r))}declared=new Map;get(t){if(t in D)return Nt(t);const n=this.declared.get(t);return n?wt(n):void 0}triggerable(){const t=Object.keys(D).filter(r=>D[r].triggerable).map(Nt),n=[...this.declared.values()].map(wt).filter(r=>r.triggerable);return[...t,...n]}timelineText(t,n){const r=D[t.type];if(r?.timeline)return r.timeline(t,n);const o=this.declared.get(t.type);return de(o?.text,t,this.translate)??t.type.replace(/_/g," ").toLowerCase()}snippet(t){const n=D[t.type];if(n?.snippet)return n.snippet(t);const r=this.declared.get(t.type);return de(r?.text,t,this.translate)??""}descriptor(t){return this.declared.get(t)}blocks(t){const n=this.declared.get(t)?.render;return n?.length?n:void 0}isMessage(t){return et(this.get(t)?.shape)}nestsUnderParent(t){return tt(this.get(t)?.shape)}isReplyable(t){return this.get(t)?.replyable===!0}carriesText(t){return this.get(t)?.carriesText===!0}countsAs(t){return this.get(t)?.countsAs}channelKind(t){return this.get(t)?.channelKind}isTranscript(t){const n=this.get(t);return n?.shape==="artifact"&&n.carriesText}get translator(){return this.translate}}const ri=new sn;function oi(e,t,n=[]){const r=e.createdAt;if(!r)return[];const o=new Set(n);return e.author.type==="user"&&e.author.id&&o.add(e.author.id),Object.entries(t).filter(([i,s])=>s>=r&&!o.has(i)).map(([i])=>i)}function an(e){return e.createdAt??0}function ii(e){return e.type==="EMAIL_RECEIVED"||e.type==="EMAIL_SENT"}function si(e){return e.type==="CHAT_MESSAGE_SENT"||e.type==="CHAT_MESSAGE_RECEIVED"}const nt=[{id:"openai",attachmentKinds:["image","pdf"],label:"OpenAI",capabilities:["chat","transcription","embedding"],defaultModel:"gpt-5-mini",baseUrl:"https://api.openai.com/v1"},{id:"gemini",attachmentKinds:["image","pdf"],label:"Google Gemini",capabilities:["chat","transcription","embedding"],defaultModel:"gemini-3.5-flash",baseUrl:"https://generativelanguage.googleapis.com/v1beta"},{id:"anthropic",attachmentKinds:["image","pdf"],label:"Anthropic",capabilities:["chat"],defaultModel:"claude-haiku-4-5",baseUrl:"https://api.anthropic.com/v1"},{id:"elevenlabs",label:"ElevenLabs",capabilities:["transcription"],baseUrl:"https://api.elevenlabs.io/v1"},{id:"moonshot",label:"Moonshot (Kimi)",capabilities:["chat"],defaultModel:"kimi-k3",baseUrl:"https://api.moonshot.ai/v1"},{id:"deepseek",label:"DeepSeek",capabilities:["chat"],defaultModel:"deepseek-v4-flash",baseUrl:"https://api.deepseek.com/v1"},{id:"groq",label:"Groq",capabilities:["chat"],defaultModel:"openai/gpt-oss-120b",baseUrl:"https://api.groq.com/openai/v1"},{id:"mistral",label:"Mistral",capabilities:["chat"],defaultModel:"mistral-large-latest",baseUrl:"https://api.mistral.ai/v1"},{id:"openrouter",label:"OpenRouter",capabilities:["chat"],defaultModel:"openrouter/auto",baseUrl:"https://openrouter.ai/api/v1"},{id:"ollama",label:"Ollama (self-hosted)",capabilities:["chat"],defaultModel:"llama3.3"},{id:"openai-compatible",label:"OpenAI-compatible (eigen endpoint)",capabilities:["chat"],defaultModel:"default"}];function Q(e){return nt.find(t=>t.id===e)}function ai(e){return Q(e)?.label??e}function ci(e,t="gpt-5-mini"){return Q(e)?.defaultModel??t}function li(e){return nt.filter(t=>t.capabilities.includes(e))}function ui(e){const t=Q(e);return!!t&&!t.baseUrl}function di(e,t){return t==="text"?!0:Q(e)?.attachmentKinds?.includes(t)===!0}function pi(e,t){if(!e.enabled)return"ok";const n=We(e.hardLimitNanos),r=We(e.softLimitNanos);return n!==void 0&&t>=n?"hard":r!==void 0&&t>=r?"soft":"ok"}function We(e){return typeof e=="number"?e:void 0}function cn(e,t="month"){const n=new Date(e);return Date.UTC(n.getUTCFullYear(),n.getUTCMonth(),1)}function fi(e,t="month"){const n=new Date(cn(e,t));return`${n.getUTCFullYear()}-${String(n.getUTCMonth()+1).padStart(2,"0")}`}function mi(e){return e?.listeningEnabled!==!1}const gi=[{id:"agent",label:"Agent",labelSource:"user"},{id:"team",label:"Team",labelSource:"team"},{id:"inbox",label:"Inbox",labelSource:"inbox"},{id:"channel",label:"Kanaal",labelSource:"channel"},{id:"provider",label:"Provider",labelSource:"raw"},{id:"status",label:"Status",labelSource:"raw"},{id:"handledBy",label:"Afhandelaar",labelSource:"raw"},{id:"time",label:"Tijd",labelSource:"raw"}];function $e(e){return e<10?`0${e}`:`${e}`}function H(e,t){const n=new Date(e),r=`${n.getUTCFullYear()}-${$e(n.getUTCMonth()+1)}-${$e(n.getUTCDate())}`;return t==="day"?r:`${r}T${$e(n.getUTCHours())}`}function W(e,t){const n=new Date(e);return n.setUTCMinutes(0,0,0),t==="day"&&n.setUTCHours(0),n.getTime()}const hi=36e5,yi=864e5;function Ei(e,t,n){const r=n==="hour"?hi:yi,o=[];for(let i=W(e,n);i<=t;i+=r)o.push(H(i,n));return o}const _i=new Set(["time"]);function Si(e,t,n){if(!e)return[];const r=new Set(e.supportedDimensions??[]);return t.filter(o=>r.has(o.id)&&!_i.has(o.id)).map(o=>({id:o.id,label:o.label,options:o.options?.length?o.options:n[o.id]??[]})).filter(o=>o.options.length>0)}function Ai(e,t){const n=t.find(o=>o.id===e.dimensionId),r=n?.options.find(o=>o.value===e.value);return`${n?.label??e.dimensionId} · ${r?.label??e.value}`}function bi(e){return{value:e.id,label:`${e.category} · ${e.label}`}}const ln=[{id:"resource",label:"Resource",labelSource:"raw"},{id:"origin",label:"Herkomst",labelSource:"raw"}],un=ln.map(e=>e.id);function dn(e,t){return`${e}.usage.${t}`}function Ti(e,t){return t.map(n=>({id:dn(e,n.unit),label:n.label,category:"Verbruik",valueType:n.valueType??"count",aggregation:"sum",supportedDimensions:["provider",...un,...n.extraDimensions??[],"time"]}))}const pn=new Set(["info","success","warning","destructive"]),pe=200,fe=100,me=200,ge=12,he=4,Ge=10,fn=8,je=12,Me=4e3,F=500,mn=1024*1024,Ii=new Set(["heading","paragraph","list","quote","code","divider","table","kpi","callout","image","letterhead","totals","pagebreak"]),gn=["http:","https:","mailto:","tel:"],Mi=/^[a-z][a-z0-9+.-]*:/i;function rt(e){const t=e.trim().replace(/^<|>$/g,"");if(!t)return!1;const n=Mi.exec(t)?.[0];return n?gn.includes(n.toLowerCase()):!t.startsWith("//")}const Oi=/^[ \t]{0,3}\[([^\]]+)\]:[ \t]*(\S+).*$/gm;function ki(e){let t="",n=0;for(;n<e.length;){const r=e[n]==="!"&&e[n+1]==="[";if(e[n]!=="["&&!r){t+=e[n],n+=1;continue}const o=n+(r?2:1),i=Rt(e,o,"[","]");if(i<0||e[i+1]!=="("){t+=e[n],n+=1;continue}const s=Rt(e,i+2,"(",")");if(s<0){t+=e[n],n+=1;continue}const a=e.slice(o,i),u=e.slice(i+2,s).trim().split(/\s+/)[0]??"";t+=r||!rt(u)?a:e.slice(n,s+1),n=s+1}return t}function Rt(e,t,n,r){let o=1;for(let i=t;i<e.length;i+=1){if(e[i]==="\\"){i+=1;continue}if(e[i]===n)o+=1;else if(e[i]===r&&(o-=1,o===0))return i}return-1}function hn(e){return ki(e).replace(Oi,(t,n,r)=>rt(r)?t:"")}function I(e,t=Me){return typeof e=="string"?hn(e).slice(0,t):""}function Ci(e,t=Me){return typeof e=="string"?e.slice(0,t):""}function V(e,t=200){return I(e,t)}function Ni(e,t="info"){return typeof e=="string"&&pn.has(e)?e:t}function yn(e,t=()=>{}){if(!Array.isArray(e))return[];const n=[];for(const r of e){if(n.length>=pe){t(`more than ${pe} blocks; the rest was dropped`);break}if(!r||typeof r!="object")continue;const o=r;if(!Ii.has(o.type)){t(`unknown block type ${String(o.type)}`);continue}const i=typeof o.block_id=="string"?{block_id:o.block_id}:{};switch(o.type){case"heading":{const s=I(o.text);if(!s){t("a heading without text");continue}const a=o.level===2||o.level===3?o.level:1;n.push({...i,type:"heading",level:a,text:s});break}case"paragraph":{const s=I(o.text);if(!s){t("a paragraph without text");continue}n.push({...i,type:"paragraph",text:s});break}case"quote":{const s=I(o.text);if(!s){t("a quote without text");continue}n.push({...i,type:"quote",text:s});break}case"code":{const s=Ci(o.text);if(!s){t("a code block without text");continue}const a=typeof o.lang=="string"?{lang:o.lang.slice(0,32)}:{};n.push({...i,type:"code",...a,text:s});break}case"divider":n.push({...i,type:"divider"});break;case"list":{const s=Array.isArray(o.items)?o.items:[],a=[];for(const l of s){if(a.length>=fe){t(`more than ${fe} list items`);break}const d=I(l?.text);if(!d)continue;const c=I(l?.lead,200);a.push(c?{lead:c,text:d}:{text:d})}if(a.length===0){t("a list without usable items");continue}const u=o.style==="numbered"?"numbered":"bulleted";n.push({...i,type:"list",style:u,items:a});break}case"table":{const s=Array.isArray(o.columns)?o.columns:[],a=[];for(const c of s){if(a.length>=ge){t(`more than ${ge} table columns`);break}const p=I(c?.label,F),f=c?.align==="right"?"right":void 0;a.push(f?{label:p,align:f}:{label:p})}if(a.length===0){t("a table without columns");continue}const u=Array.isArray(o.rows)?o.rows:[],l=[];for(const c of u){if(l.length>=me){t(`more than ${me} table rows`);break}const p=Array.isArray(c)?c:[];l.push(a.map((f,y)=>I(p[y],F)))}const d=I(o.caption,F);n.push({...i,type:"table",columns:a,rows:l,...d?{caption:d}:{}});break}case"kpi":{const s=Array.isArray(o.items)?o.items:[],a=[];for(const u of s){if(a.length>=he){t(`more than ${he} kpi items`);break}const l=I(u?.value,40),d=I(u?.label,80);if(!l||!d)continue;const c=u?.tone;a.push(typeof c=="string"&&pn.has(c)?{value:l,label:d,tone:c}:{value:l,label:d})}if(a.length===0){t("a kpi block without usable items");continue}n.push({...i,type:"kpi",items:a});break}case"image":{const s=typeof o.url=="string"?o.url.trim():"";if(!s||!rt(s)){t("an image without a usable url");continue}const a=I(o.alt,200),u=I(o.caption,F);n.push({...i,type:"image",url:s,...a?{alt:a}:{},...u?{caption:u}:{}});break}case"letterhead":{const s=Array.isArray(o.fields)?o.fields:[],a=[];for(const d of s){if(a.length>=Ge){t(`more than ${Ge} letterhead fields`);break}const c=d,p=typeof c?.key=="string"?c.key.slice(0,48):"",f=V(c?.value);if(!p||!f)continue;const y=V(c?.label,80);a.push(y?{key:p,label:y,value:f}:{key:p,value:f})}const l=(Array.isArray(o.recipient)?o.recipient:[]).slice(0,fn).map(d=>V(d)).filter(Boolean);if(a.length===0&&l.length===0){t("a letterhead without fields or recipient");continue}n.push({...i,type:"letterhead",fields:a,...l.length>0?{recipient:l}:{}});break}case"totals":{const s=l=>{const d=Array.isArray(l)?l:[],c=[];for(const p of d){if(c.length>=je){t(`more than ${je} totals rows`);break}const f=p,y=V(f?.label),m=V(f?.amount,40);!y||!m||c.push(f?.emphasis===!0?{label:y,amount:m,emphasis:!0}:{label:y,amount:m})}return c},a=s(o.rows);if(a.length===0&&!o.block_id){t("a totals block without usable rows");continue}const u=s(o.taxRows);n.push({...i,type:"totals",rows:a,...u.length>0?{taxRows:u}:{}});break}case"pagebreak":n.push({...i,type:"pagebreak"});break;case"callout":{const s=I(o.text);if(!s){t("a callout without text");continue}const a=I(o.title,200);n.push({...i,type:"callout",tone:Ni(o.tone),...a?{title:a}:{},text:s});break}}}return n}function En(e){return JSON.stringify(e).length}function _n(e){return{blocks:e.length,types:e.map(t=>t.type),headings:e.flatMap(t=>t.type==="heading"?[t.text]:[])}}function vt(e){return e.replace(/\|/g,"\\|").replace(/\r?\n/g," ").trim()}function Ue(e,t,n){const r=e.map((o,i)=>n?.[i]==="right"?"---:":"---");return[`| ${e.map(vt).join(" | ")} |`,`| ${r.join(" | ")} |`,...t.map(o=>`| ${o.map(vt).join(" | ")} |`)]}function wi(e){switch(e.type){case"heading":return[`${"#".repeat(e.level)} ${e.text}`];case"paragraph":return[e.text];case"quote":return e.text.split(/\r?\n/).map(t=>`> ${t}`);case"code":return[`\`\`\`${e.lang??""}`,e.text,"```"];case"divider":return["---"];case"list":return e.items.map((t,n)=>{const r=e.style==="numbered"?`${n+1}.`:"-";return t.lead?`${r} **${t.lead}** ${t.text}`:`${r} ${t.text}`});case"table":{const t=Ue(e.columns.map(n=>n.label),e.rows,e.columns.map(n=>n.align??"left"));return e.caption?[...t,"",`*${e.caption}*`]:t}case"kpi":return Ue(e.items.map(t=>t.value),[e.items.map(t=>t.label)]);case"callout":return(e.title?`**${e.title}** ${e.text}`:e.text).split(/\r?\n/).map(n=>`> ${n}`);case"image":{const t=``;return e.caption?[t,"",`*${e.caption}*`]:[t]}case"letterhead":{const t=[...e.recipient??[]];t.length>0&&e.fields.length>0&&t.push("");for(const n of e.fields)t.push(n.label?`**${n.label}:** ${n.value}`:n.value);return t.map((n,r)=>r<t.length-1?`${n} `:n)}case"totals":return Ue(["",""],[...e.rows,...e.taxRows??[]].map(t=>[t.emphasis?`**${t.label}**`:t.label,t.emphasis?`**${t.amount}**`:t.amount]),["left","right"]);case"pagebreak":return["---"]}}function ot(e,t){const n=[],r=e.some(o=>o.type==="heading"&&o.level===1);t&&!r&&n.push(`# ${t}`);for(const o of e){const i=wi(o);i.length>0&&n.push(i.join(`
|
|
3
|
+
`),t=t.replace(Go,"$2"),t=t.replace(Wo,"$2"),t=t.replace(/~~(?=\S)([\s\S]*?\S)~~/g,"$1"),t=t.replace(/`([^`\n]+)`/g,"$1"),t.replace(/\s+/g," ").trim()}function nn(e){return e.replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function te(e){if(!e||e<0)return"";const t=Math.floor(e/60),n=Math.floor(e%60);return`${t}:${n.toString().padStart(2,"0")}`}function Ot(e){return e?` — ${Math.floor(e/60)}m ${e%60}s`:""}function $e(e){return e?.split("@")?.[0]||e||""}function ne(e){return e.map(t=>t.name).join(", ")}function kt(e){return e==="meeting"?"Meeting":e==="video"?"Video call":"Audio call"}const D={VOICE_CALL_STARTED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gesprek gestart",timeline:e=>e.direction==="inbound"?`Inbound call started — ${$e(e.payload.from)}`:`Outbound call started — ${$e(e.payload.to)}`},VOICE_CALL_ANSWERED:{shape:"event",channelKind:"voice",icon:"phone",connected:!0,snippet:()=>"Gesprek aangenomen",timeline:(e,t)=>`Call answered — ${t}`},VOICE_CALL_HOLD:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"In de wacht",timeline:(e,t)=>`Call on hold — ${t}`},VOICE_CALL_UNHOLD:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Hervat"},VOICE_CALL_ENDED:{shape:"event",channelKind:"voice",icon:"phone",snippet:e=>`Gesprek beëindigd${e.payload.duration?` (${te(e.payload.duration)})`:""}`,timeline:e=>`Call ended${Ot(e.payload.duration)}`},VOICE_CALL_MISSED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gemiste oproep",timeline:e=>`Missed call — ${$e(e.payload.from)}`},VOICE_CALL_FAILED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gesprek mislukt",timeline:()=>"Call failed"},VOICE_CALL_VOICEMAIL:{shape:"artifact",channelKind:"voice",icon:"phone",snippet:e=>e.payload.transcription?.trim()?e.payload.transcription:"Voicemail ontvangen"},VIDEO_CALL_STARTED:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"Gesprek gestart",timeline:()=>"Video call started"},VIDEO_CALL_ANSWERED:{shape:"event",channelKind:"video",icon:"video",connected:!0,snippet:()=>"Gesprek aangenomen",timeline:()=>"Video call answered"},VIDEO_CALL_HOLD:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"In de wacht"},VIDEO_CALL_UNHOLD:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"Hervat"},VIDEO_CALL_ENDED:{shape:"event",channelKind:"video",icon:"video",snippet:e=>`Gesprek beëindigd${e.payload.duration?` (${te(e.payload.duration)})`:""}`,timeline:()=>"Video call ended"},VIDEO_CALL_MISSED:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"Gemiste oproep",timeline:()=>"Missed video call"},VIDEO_CALL_FAILED:{shape:"event",channelKind:"video",icon:"video",snippet:()=>"Gesprek mislukt",timeline:()=>"Video call failed"},EMAIL_RECEIVED:{shape:"message",triggerable:!0,displayNameKey:"communication:activity.EMAIL_RECEIVED",component:"communication:EmailActivity",channelKind:"mail",icon:"mail",replyable:!0,carriesText:!0,countsAs:"inbound_message",snippet:Ct},EMAIL_SENT:{shape:"message",component:"communication:EmailActivity",channelKind:"mail",icon:"mail",replyable:!0,carriesText:!0,countsAs:"outbound_message",snippet:Ct},CHAT_MESSAGE_SENT:{shape:"message",component:"communication:ChatMessage",channelKind:"chat",icon:"message-circle",replyable:!0,carriesText:!0,countsAs:"outbound_message",snippet:e=>e.payload.text??""},CHAT_MESSAGE_RECEIVED:{shape:"message",triggerable:!0,displayNameKey:"communication:activity.CHAT_MESSAGE_RECEIVED",component:"communication:ChatMessage",channelKind:"chat",icon:"message-circle",replyable:!0,carriesText:!0,countsAs:"inbound_message",snippet:e=>e.payload.text??""},CHAT_MEMBER_JOINED:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>`${ne(e.payload.members)} toegevoegd`,timeline:e=>{const t=ne(e.payload.members)||"Someone",n=e.payload.initiator?.name?` · added by ${e.payload.initiator.name}`:"";return`${t} joined the chat${n}`}},CHAT_MEMBER_LEFT:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>`${ne(e.payload.members)} verlaten`,timeline:e=>{const t=ne(e.payload.members)||"Someone",n=e.payload.initiator?.name?` · removed by ${e.payload.initiator.name}`:"";return`${t} left the chat${n}`}},CHAT_RENAMED:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>`Hernoemd naar "${e.payload.newName}"`,timeline:e=>`Chat renamed to "${e.payload.newName}"${e.payload.initiator?` by ${e.payload.initiator.name}`:""}`},CHAT_CALL_STARTED:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:()=>"Gesprek gestart",timeline:e=>`${kt(e.payload.callType)} started${e.payload.initiator?` by ${e.payload.initiator.name}`:""}`,joinUrl:e=>e.payload.joinUrl},CHAT_CALL_ENDED:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>`Gesprek beëindigd${e.payload.duration?` (${te(e.payload.duration)})`:""}`,timeline:e=>`${kt(e.payload.callType)} ended${Ot(e.payload.duration)}`,joinUrl:e=>e.payload.joinUrl},CHAT_EVENT:{shape:"event",channelKind:"chat",icon:"message-circle",snippet:e=>e.payload.text??e.payload.eventType,timeline:e=>e.payload.text||e.payload.eventType},TRANSCRIPT_ADDED:{shape:"artifact",triggerable:!0,displayNameKey:"communication:activity.TRANSCRIPT_ADDED",component:"communication:TranscriptionActivity",icon:"captions",carriesText:!0,snippet:e=>(e.payload.segments??[]).map(t=>t.text).join(" ")},COMMENT_ADDED:{shape:"note",component:"communication:CommentActivity",icon:"sticky-note",carriesText:!0,snippet:e=>e.payload.text??""},FILE_UPLOADED:{shape:"artifact",component:"communication:FileActivity",icon:"paperclip",snippet:e=>`Bestand: ${e.payload.fileName}`},AI_MESSAGE_ADDED:{shape:"event",triggerable:!0,displayNameKey:"communication:activity.AI_MESSAGE_ADDED",icon:"circle",snippet:e=>e.payload.output?.text??e.payload.input?.text??"",timeline:()=>"AI message added"},AI_ACTION_PROPOSED:{shape:"event",component:"communication:ProposedActionCard",icon:"circle",playbookAuthored:!0,snippet:e=>`Voorstel wacht op goedkeuring (${e.payload.actions?.length??0} actie(s))`},PLAYBOOK_STARTED:{shape:"event",icon:"circle",playbookAuthored:!0,snippet:e=>`Playbook gestart${e.payload.playbookName?`: ${e.payload.playbookName}`:""}`,timeline:e=>`Playbook gestart${e.payload.playbookName?` — ${e.payload.playbookName}`:""}`},PLAYBOOK_COMPLETED:{shape:"event",icon:"circle",playbookAuthored:!0,snippet:()=>"Playbook afgerond",timeline:()=>"Playbook afgerond"},PLAYBOOK_ESCALATED:{shape:"event",icon:"circle",playbookAuthored:!0,snippet:()=>"Playbook geëscaleerd naar een mens",timeline:()=>"Playbook geëscaleerd naar een mens"},MEETING_SCHEDULED:{shape:"event",icon:"calendar",snippet:e=>`Vergadering gepland: ${e.payload.title}`,timeline:()=>"Meeting scheduled",joinUrl:e=>e.payload.joinUrl},MEETING_STARTED:{shape:"event",icon:"calendar",connected:!0,snippet:e=>`Vergadering gestart: ${e.payload.title}`,timeline:()=>"Meeting started",joinUrl:e=>e.payload.joinUrl},MEETING_ENDED:{shape:"event",icon:"calendar",snippet:e=>`Vergadering beëindigd${e.payload.duration?` (${te(e.payload.duration)})`:""}`,timeline:()=>"Meeting ended"},MEETING_PARTICIPANT_JOINED:{shape:"event",icon:"calendar",snippet:e=>`${e.payload.name} deelgenomen`,timeline:(e,t)=>`${t} joined the meeting`},MEETING_PARTICIPANT_LEFT:{shape:"event",icon:"calendar",snippet:e=>`${e.payload.name} verlaten`,timeline:(e,t)=>`${t} left the meeting`},INTERACTION_CREATED:{shape:"event",icon:"circle",snippet:()=>"Interactie aangemaakt",timeline:(e,t)=>`Interaction started by ${t}`},INTERACTION_STATUS_CHANGED:{shape:"event",triggerable:!0,displayNameKey:"communication:activity.INTERACTION_STATUS_CHANGED",icon:"circle-dot",snippet:e=>`Status: ${e.payload.fromStatus} → ${e.payload.toStatus}`,timeline:(e,t)=>`Status changed to ${e.payload.toStatus} by ${t}`},INTERACTION_ASSIGNED:{shape:"event",icon:"user",snippet:()=>"Interactie toegewezen",timeline:(e,t)=>`Assigned by ${t}`},SLA_BREACHED:{shape:"event",triggerable:!0,displayNameKey:"communication:activity.SLA_BREACHED",icon:"alarm-clock",snippet:e=>`SLA verlopen: ${e.payload.metric}`,timeline:e=>`SLA target ${e.payload.metric} passed its deadline`},WORK_COMMENT_ADDED:{shape:"note",icon:"sticky-note",carriesText:!0,snippet:()=>"Reactie"},WORK_ITEM_ASSIGNED:{shape:"event",icon:"user",snippet:()=>"Taak toegewezen",timeline:(e,t)=>`Assigned by ${t}`},WORK_ITEM_STATUS_CHANGED:{shape:"event",triggerable:!0,icon:"circle-dot",snippet:()=>"Status gewijzigd",timeline:(e,t)=>`Status changed by ${t}`}};function Ct(e){const t=e.payload,n=tn(t.bodyText).trim()||t.bodySnippet?.trim()||nn(t.body??"");return t.subject?`${t.subject} — ${n}`:n}function M(e){return D[e]}function jo(e){return M(e)?.icon??"circle"}function Vo(e){return M(e)?.channelKind}function tt(e){return e==="message"||e==="note"}function Yo(e){return tt(M(e)?.shape)}function nt(e){return e==="note"}function Xo(e){return nt(M(e)?.shape)}function zo(e){return M(e)?.replyable===!0}function qo(e){return M(e)?.carriesText===!0}function rn(e){return M(e)?.countsAs}function Qo(e){return M(e)?.playbookAuthored===!0}function Jo(e){return M(e)?.connected===!0}function Zo(e){const t=M(e);return t?.shape==="artifact"&&t?.carriesText===!0}function on(e){const t=M(e.type)?.snippet;return t?t(e):""}function ei(e,t){const n=M(e.type)?.timeline;return n?n(e,t):e.type.replace(/_/g," ").toLowerCase()}function ti(e){const t=M(e.type)?.joinUrl;return t?t(e):void 0}function de(e,t){let n=e;for(const r of t.split(".")){if(n==null||typeof n!="object")return"";n=n[r]}return n==null?"":typeof n=="string"?n:typeof n=="number"||typeof n=="boolean"?String(n):""}function pe(e,t,n){if(e===void 0)return null;if(typeof e=="string")return e||null;if("value"in e)return de(t,e.value)||null;const r={};for(const[i,s]of Object.entries(e.params??{}))r[i]=de(t,s);const o=n(e.key,r);return o===e.key?null:o}function sn(e,t){if(!e||typeof e=="string"||"value"in e)return null;const n={};for(const[r,o]of Object.entries(e.params??{}))n[r]=de(t,o);return{key:e.key,params:n}}const Nt=140;function ni(e){const t=e.trim();return t.length<=Nt?t:`${t.slice(0,Nt-1).trimEnd()}…`}function ri(e,t){const n=sn(t?.text,e),r=t?pe(t.text,e,o=>o):null;return{activityId:e.id,type:e.type,snippet:ni(r??on(e)),authorName:e.author?.name??"",direction:e.direction,createdAt:e.createdAt??Date.now(),...n?{snippetKey:n.key,snippetParams:n.params}:{}}}const oi=e=>e;function wt(e){const t=D[e];return{type:e,shape:t.shape,channelKind:t.channelKind,icon:t.icon,replyable:t.replyable===!0,countsAs:t.countsAs,carriesText:t.carriesText===!0,triggerable:t.triggerable===!0,component:t.component,builtIn:!0,displayNameKey:t.displayNameKey}}function Rt(e){return{type:e.type,shape:e.shape,channelKind:e.channelKind,icon:e.icon||"circle",replyable:e.replyable===!0,countsAs:e.countsAs,carriesText:e.carriesText===!0,triggerable:e.triggerable===!0,component:e.component,builtIn:!1,displayNameKey:e.displayNameKey}}class an{constructor(t=[],n=oi){this.translate=n;for(const r of t)r?.type&&(r.type in D||this.declared.has(r.type)||this.declared.set(r.type,r))}declared=new Map;get(t){if(t in D)return wt(t);const n=this.declared.get(t);return n?Rt(n):void 0}triggerable(){const t=Object.keys(D).filter(r=>D[r].triggerable).map(wt),n=[...this.declared.values()].map(Rt).filter(r=>r.triggerable);return[...t,...n]}timelineText(t,n){const r=D[t.type];if(r?.timeline)return r.timeline(t,n);const o=this.declared.get(t.type);return pe(o?.text,t,this.translate)??t.type.replace(/_/g," ").toLowerCase()}snippet(t){const n=D[t.type];if(n?.snippet)return n.snippet(t);const r=this.declared.get(t.type);return pe(r?.text,t,this.translate)??""}descriptor(t){return this.declared.get(t)}blocks(t){const n=this.declared.get(t)?.render;return n?.length?n:void 0}isMessage(t){return tt(this.get(t)?.shape)}nestsUnderParent(t){return nt(this.get(t)?.shape)}isReplyable(t){return this.get(t)?.replyable===!0}carriesText(t){return this.get(t)?.carriesText===!0}countsAs(t){return this.get(t)?.countsAs}channelKind(t){return this.get(t)?.channelKind}isTranscript(t){const n=this.get(t);return n?.shape==="artifact"&&n.carriesText}get translator(){return this.translate}}const ii=new an;function si(e,t,n=[]){const r=e.createdAt;if(!r)return[];const o=new Set(n);return e.author.type==="user"&&e.author.id&&o.add(e.author.id),Object.entries(t).filter(([i,s])=>s>=r&&!o.has(i)).map(([i])=>i)}function cn(e){return e.createdAt??0}function ai(e){return e.type==="EMAIL_RECEIVED"||e.type==="EMAIL_SENT"}function ci(e){return e.type==="CHAT_MESSAGE_SENT"||e.type==="CHAT_MESSAGE_RECEIVED"}const rt=[{id:"openai",attachmentKinds:["image","pdf"],label:"OpenAI",capabilities:["chat","transcription","embedding"],defaultModel:"gpt-5-mini",baseUrl:"https://api.openai.com/v1"},{id:"gemini",attachmentKinds:["image","pdf"],label:"Google Gemini",capabilities:["chat","transcription","embedding"],defaultModel:"gemini-3.5-flash",baseUrl:"https://generativelanguage.googleapis.com/v1beta"},{id:"anthropic",attachmentKinds:["image","pdf"],label:"Anthropic",capabilities:["chat"],defaultModel:"claude-haiku-4-5",baseUrl:"https://api.anthropic.com/v1"},{id:"elevenlabs",label:"ElevenLabs",capabilities:["transcription"],baseUrl:"https://api.elevenlabs.io/v1"},{id:"moonshot",label:"Moonshot (Kimi)",capabilities:["chat"],defaultModel:"kimi-k3",baseUrl:"https://api.moonshot.ai/v1"},{id:"deepseek",label:"DeepSeek",capabilities:["chat"],defaultModel:"deepseek-v4-flash",baseUrl:"https://api.deepseek.com/v1"},{id:"groq",label:"Groq",capabilities:["chat"],defaultModel:"openai/gpt-oss-120b",baseUrl:"https://api.groq.com/openai/v1"},{id:"mistral",label:"Mistral",capabilities:["chat"],defaultModel:"mistral-large-latest",baseUrl:"https://api.mistral.ai/v1"},{id:"openrouter",label:"OpenRouter",capabilities:["chat"],defaultModel:"openrouter/auto",baseUrl:"https://openrouter.ai/api/v1"},{id:"ollama",label:"Ollama (self-hosted)",capabilities:["chat"],defaultModel:"llama3.3"},{id:"openai-compatible",label:"OpenAI-compatible (eigen endpoint)",capabilities:["chat"],defaultModel:"default"}];function J(e){return rt.find(t=>t.id===e)}function li(e){return J(e)?.label??e}function ui(e,t="gpt-5-mini"){return J(e)?.defaultModel??t}function di(e){return rt.filter(t=>t.capabilities.includes(e))}function pi(e){const t=J(e);return!!t&&!t.baseUrl}function fi(e,t){return t==="text"?!0:J(e)?.attachmentKinds?.includes(t)===!0}function mi(e,t){if(!e.enabled)return"ok";const n=We(e.hardLimitNanos),r=We(e.softLimitNanos);return n!==void 0&&t>=n?"hard":r!==void 0&&t>=r?"soft":"ok"}function We(e){return typeof e=="number"?e:void 0}function ln(e,t="month"){const n=new Date(e);return Date.UTC(n.getUTCFullYear(),n.getUTCMonth(),1)}function gi(e,t="month"){const n=new Date(ln(e,t));return`${n.getUTCFullYear()}-${String(n.getUTCMonth()+1).padStart(2,"0")}`}function hi(e){return e?.listeningEnabled!==!1}const yi=[{id:"agent",label:"Agent",labelSource:"user"},{id:"team",label:"Team",labelSource:"team"},{id:"inbox",label:"Inbox",labelSource:"inbox"},{id:"channel",label:"Kanaal",labelSource:"channel"},{id:"provider",label:"Provider",labelSource:"raw"},{id:"status",label:"Status",labelSource:"raw"},{id:"handledBy",label:"Afhandelaar",labelSource:"raw"},{id:"time",label:"Tijd",labelSource:"raw"}];function Ue(e){return e<10?`0${e}`:`${e}`}function H(e,t){const n=new Date(e),r=`${n.getUTCFullYear()}-${Ue(n.getUTCMonth()+1)}-${Ue(n.getUTCDate())}`;return t==="day"?r:`${r}T${Ue(n.getUTCHours())}`}function G(e,t){const n=new Date(e);return n.setUTCMinutes(0,0,0),t==="day"&&n.setUTCHours(0),n.getTime()}const Ei=36e5,_i=864e5;function Si(e,t,n){const r=n==="hour"?Ei:_i,o=[];for(let i=G(e,n);i<=t;i+=r)o.push(H(i,n));return o}const Ai=new Set(["time"]);function bi(e,t,n){if(!e)return[];const r=new Set(e.supportedDimensions??[]);return t.filter(o=>r.has(o.id)&&!Ai.has(o.id)).map(o=>({id:o.id,label:o.label,options:o.options?.length?o.options:n[o.id]??[]})).filter(o=>o.options.length>0)}function Ti(e,t){const n=t.find(o=>o.id===e.dimensionId),r=n?.options.find(o=>o.value===e.value);return`${n?.label??e.dimensionId} · ${r?.label??e.value}`}function Ii(e){return{value:e.id,label:`${e.category} · ${e.label}`}}const un=[{id:"resource",label:"Resource",labelSource:"raw"},{id:"origin",label:"Herkomst",labelSource:"raw"}],dn=un.map(e=>e.id);function pn(e,t){return`${e}.usage.${t}`}function Mi(e,t){return t.map(n=>({id:pn(e,n.unit),label:n.label,category:"Verbruik",valueType:n.valueType??"count",aggregation:"sum",supportedDimensions:["provider",...dn,...n.extraDimensions??[],"time"]}))}const fn=new Set(["info","success","warning","destructive"]),fe=200,me=100,ge=200,he=12,ye=4,je=10,mn=8,Ve=12,Oe=4e3,F=500,gn=1024*1024,Oi=new Set(["heading","paragraph","list","quote","code","divider","table","kpi","callout","image","letterhead","totals","pagebreak"]),hn=["http:","https:","mailto:","tel:"],ki=/^[a-z][a-z0-9+.-]*:/i;function ot(e){const t=e.trim().replace(/^<|>$/g,"");if(!t)return!1;const n=ki.exec(t)?.[0];return n?hn.includes(n.toLowerCase()):!t.startsWith("//")}const Ci=/^[ \t]{0,3}\[([^\]]+)\]:[ \t]*(\S+).*$/gm;function Ni(e){let t="",n=0;for(;n<e.length;){const r=e[n]==="!"&&e[n+1]==="[";if(e[n]!=="["&&!r){t+=e[n],n+=1;continue}const o=n+(r?2:1),i=vt(e,o,"[","]");if(i<0||e[i+1]!=="("){t+=e[n],n+=1;continue}const s=vt(e,i+2,"(",")");if(s<0){t+=e[n],n+=1;continue}const a=e.slice(o,i),u=e.slice(i+2,s).trim().split(/\s+/)[0]??"";t+=r||!ot(u)?a:e.slice(n,s+1),n=s+1}return t}function vt(e,t,n,r){let o=1;for(let i=t;i<e.length;i+=1){if(e[i]==="\\"){i+=1;continue}if(e[i]===n)o+=1;else if(e[i]===r&&(o-=1,o===0))return i}return-1}function yn(e){return Ni(e).replace(Ci,(t,n,r)=>ot(r)?t:"")}function I(e,t=Oe){return typeof e=="string"?yn(e).slice(0,t):""}function wi(e,t=Oe){return typeof e=="string"?e.slice(0,t):""}function V(e,t=200){return I(e,t)}function Ri(e,t="info"){return typeof e=="string"&&fn.has(e)?e:t}function En(e,t=()=>{}){if(!Array.isArray(e))return[];const n=[];for(const r of e){if(n.length>=fe){t(`more than ${fe} blocks; the rest was dropped`);break}if(!r||typeof r!="object")continue;const o=r;if(!Oi.has(o.type)){t(`unknown block type ${String(o.type)}`);continue}const i=typeof o.block_id=="string"?{block_id:o.block_id}:{};switch(o.type){case"heading":{const s=I(o.text);if(!s){t("a heading without text");continue}const a=o.level===2||o.level===3?o.level:1;n.push({...i,type:"heading",level:a,text:s});break}case"paragraph":{const s=I(o.text);if(!s){t("a paragraph without text");continue}n.push({...i,type:"paragraph",text:s});break}case"quote":{const s=I(o.text);if(!s){t("a quote without text");continue}n.push({...i,type:"quote",text:s});break}case"code":{const s=wi(o.text);if(!s){t("a code block without text");continue}const a=typeof o.lang=="string"?{lang:o.lang.slice(0,32)}:{};n.push({...i,type:"code",...a,text:s});break}case"divider":n.push({...i,type:"divider"});break;case"list":{const s=Array.isArray(o.items)?o.items:[],a=[];for(const l of s){if(a.length>=me){t(`more than ${me} list items`);break}const d=I(l?.text);if(!d)continue;const c=I(l?.lead,200);a.push(c?{lead:c,text:d}:{text:d})}if(a.length===0){t("a list without usable items");continue}const u=o.style==="numbered"?"numbered":"bulleted";n.push({...i,type:"list",style:u,items:a});break}case"table":{const s=Array.isArray(o.columns)?o.columns:[],a=[];for(const c of s){if(a.length>=he){t(`more than ${he} table columns`);break}const p=I(c?.label,F),f=c?.align==="right"?"right":void 0;a.push(f?{label:p,align:f}:{label:p})}if(a.length===0){t("a table without columns");continue}const u=Array.isArray(o.rows)?o.rows:[],l=[];for(const c of u){if(l.length>=ge){t(`more than ${ge} table rows`);break}const p=Array.isArray(c)?c:[];l.push(a.map((f,y)=>I(p[y],F)))}const d=I(o.caption,F);n.push({...i,type:"table",columns:a,rows:l,...d?{caption:d}:{}});break}case"kpi":{const s=Array.isArray(o.items)?o.items:[],a=[];for(const u of s){if(a.length>=ye){t(`more than ${ye} kpi items`);break}const l=I(u?.value,40),d=I(u?.label,80);if(!l||!d)continue;const c=u?.tone;a.push(typeof c=="string"&&fn.has(c)?{value:l,label:d,tone:c}:{value:l,label:d})}if(a.length===0){t("a kpi block without usable items");continue}n.push({...i,type:"kpi",items:a});break}case"image":{const s=typeof o.url=="string"?o.url.trim():"";if(!s||!ot(s)){t("an image without a usable url");continue}const a=I(o.alt,200),u=I(o.caption,F);n.push({...i,type:"image",url:s,...a?{alt:a}:{},...u?{caption:u}:{}});break}case"letterhead":{const s=Array.isArray(o.fields)?o.fields:[],a=[];for(const d of s){if(a.length>=je){t(`more than ${je} letterhead fields`);break}const c=d,p=typeof c?.key=="string"?c.key.slice(0,48):"",f=V(c?.value);if(!p||!f)continue;const y=V(c?.label,80);a.push(y?{key:p,label:y,value:f}:{key:p,value:f})}const l=(Array.isArray(o.recipient)?o.recipient:[]).slice(0,mn).map(d=>V(d)).filter(Boolean);if(a.length===0&&l.length===0){t("a letterhead without fields or recipient");continue}n.push({...i,type:"letterhead",fields:a,...l.length>0?{recipient:l}:{}});break}case"totals":{const s=l=>{const d=Array.isArray(l)?l:[],c=[];for(const p of d){if(c.length>=Ve){t(`more than ${Ve} totals rows`);break}const f=p,y=V(f?.label),m=V(f?.amount,40);!y||!m||c.push(f?.emphasis===!0?{label:y,amount:m,emphasis:!0}:{label:y,amount:m})}return c},a=s(o.rows);if(a.length===0&&!o.block_id){t("a totals block without usable rows");continue}const u=s(o.taxRows);n.push({...i,type:"totals",rows:a,...u.length>0?{taxRows:u}:{}});break}case"pagebreak":n.push({...i,type:"pagebreak"});break;case"callout":{const s=I(o.text);if(!s){t("a callout without text");continue}const a=I(o.title,200);n.push({...i,type:"callout",tone:Ri(o.tone),...a?{title:a}:{},text:s});break}}}return n}function _n(e){return JSON.stringify(e).length}function Sn(e){return{blocks:e.length,types:e.map(t=>t.type),headings:e.flatMap(t=>t.type==="heading"?[t.text]:[])}}function Dt(e){return e.replace(/\|/g,"\\|").replace(/\r?\n/g," ").trim()}function Ke(e,t,n){const r=e.map((o,i)=>n?.[i]==="right"?"---:":"---");return[`| ${e.map(Dt).join(" | ")} |`,`| ${r.join(" | ")} |`,...t.map(o=>`| ${o.map(Dt).join(" | ")} |`)]}function vi(e){switch(e.type){case"heading":return[`${"#".repeat(e.level)} ${e.text}`];case"paragraph":return[e.text];case"quote":return e.text.split(/\r?\n/).map(t=>`> ${t}`);case"code":return[`\`\`\`${e.lang??""}`,e.text,"```"];case"divider":return["---"];case"list":return e.items.map((t,n)=>{const r=e.style==="numbered"?`${n+1}.`:"-";return t.lead?`${r} **${t.lead}** ${t.text}`:`${r} ${t.text}`});case"table":{const t=Ke(e.columns.map(n=>n.label),e.rows,e.columns.map(n=>n.align??"left"));return e.caption?[...t,"",`*${e.caption}*`]:t}case"kpi":return Ke(e.items.map(t=>t.value),[e.items.map(t=>t.label)]);case"callout":return(e.title?`**${e.title}** ${e.text}`:e.text).split(/\r?\n/).map(n=>`> ${n}`);case"image":{const t=``;return e.caption?[t,"",`*${e.caption}*`]:[t]}case"letterhead":{const t=[...e.recipient??[]];t.length>0&&e.fields.length>0&&t.push("");for(const n of e.fields)t.push(n.label?`**${n.label}:** ${n.value}`:n.value);return t.map((n,r)=>r<t.length-1?`${n} `:n)}case"totals":return Ke(["",""],[...e.rows,...e.taxRows??[]].map(t=>[t.emphasis?`**${t.label}**`:t.label,t.emphasis?`**${t.amount}**`:t.amount]),["left","right"]);case"pagebreak":return["---"]}}function it(e,t){const n=[],r=e.some(o=>o.type==="heading"&&o.level===1);t&&!r&&n.push(`# ${t}`);for(const o of e){const i=vi(o);i.length>0&&n.push(i.join(`
|
|
4
4
|
`))}return`${n.join(`
|
|
5
5
|
|
|
6
6
|
`)}
|
|
7
|
-
`}const
|
|
7
|
+
`}const st=e=>`user:${e}`,at=e=>`team:${e}`;function Di(e){const t=new Set;for(const n of e??[])n?.id&&(n.kind==="user"&&t.add(st(n.id)),n.kind==="team"&&t.add(at(n.id)));return[...t].sort()}function xi(e,t){return[st(e),...t.map(at)]}function Li(e){const t=new Set;for(const n of e??[])n?.kind&&t.add(n.kind);return[...t]}const An=["done","escalated"],Pi=["open","waiting"];function $i(e){return An.includes(e)}const bn="assignment";function Ui(e){return`${bn}:${e}`}function Ki(e,t,n,r){if(e.direction==="inbound")return!0;if(e.author?.type==="user"&&e.author.id===t)return!1;const o=e.payload?.mentions;return Array.isArray(o)&&o.includes(t)||r&&r===t?!0:n==="reply"}function Fi(e){const{targetAuthorId:t,reactorId:n,agentId:r,on:o}=e;return!o||!t||t!==r?!1:n!==r}function Bi(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}const Tn=12;function Hi(e,t,n=Tn){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 Gi="organization.business-entities.list";function Wi(e,t,n){return e?e===t:n}function In(e){const t=e.trim().replace(/[\s-]/g,"");if(!/^\d+$/.test(t)||![8,12,13,14].includes(t.length))return;const n=t.padStart(14,"0");return ji(n.slice(0,13))===Number(n[13])?n:void 0}function ji(e){let t=0;for(let n=0;n<e.length;n++)t+=Number(e[n])*(n%2===0?3:1);return(10-t%10)%10}function Vi(e,t){const n=t.trim(),r=In(n),o=[{sku:n},{barcodes:{$in:[n]}}];return r&&o.push({gtin:r}),{organizationId:e,$or:o}}function W(e){return e<0?-Math.round(-e):Math.round(e)}function Mn(e,t){if(t.length===0)return[];const n=t.reduce((u,l)=>u+l,0);if(n===0)return t.map((u,l)=>l===0?e:0);const r=t.map(u=>e*u/n),o=r.map(u=>Math.trunc(u));let i=e-o.reduce((u,l)=>u+l,0);const s=r.map((u,l)=>({index:l,fraction:Math.abs(u-o[l])})).sort((u,l)=>l.fraction-u.fraction),a=i<0?-1:1;for(let u=0;i!==0&&u<s.length;u++)o[s[u].index]+=a,i-=a;return o}function x(e,t={}){const n=t.decimal??",",r=t.group??".",o=e<0,i=Math.abs(Math.trunc(e)).toString().padStart(3,"0"),s=i.slice(0,-2),a=i.slice(-2);let u="";for(let l=0;l<s.length;l++)l>0&&(s.length-l)%3===0&&(u+=r),u+=s[l];return`${o?"-":""}${u}${n}${a}`}function Yi(e){const t=e.trim().replace(/[\s ]/g,"");if(!t)return;const n=t.replace(/^[-+]?[^\d.,-]*/,"").replace(/[^\d.,-]+$/,""),r=/^-/.test(t)||/-$/.test(t),o=n.replace(/-/g,"");if(!o||!/^[\d.,]+$/.test(o))return;const i=o.lastIndexOf(","),s=o.lastIndexOf("."),a=Math.max(i,s),u=a===-1?"":o.slice(a+1),l=a!==-1&&u.length>=1&&u.length<=2,d=l?o.slice(0,a):o;if(!Xi(d))return;const c=d.replace(/[.,]/g,""),p=l?u.padEnd(2,"0"):"00";if(c==="")return;const f=Number(c)*100+Number(p);return r?-f:f}function Xi(e){return/^\d+$/.test(e)?!0:e.includes(".")&&e.includes(",")?!1:/^\d{1,3}([.,]\d{3})*$/.test(e)}function zi(e){return e.costPriceCents==null?e.netCents:e.netCents-W(e.costPriceCents*e.quantity)}const qi=[{key:"contract",matches:(e,t)=>!!e.contractId&&e.contractId===t.contractId&&!!e.productId},{key:"customer",matches:(e,t)=>!e.contractId&&!!e.companyId&&e.companyId===t.companyId&&!!e.productId},{key:"customer_category",matches:(e,t)=>!e.contractId&&!!e.companyId&&e.companyId===t.companyId&&!!e.categoryKey},{key:"segment",matches:(e,t)=>!e.contractId&&!e.companyId&&!!e.segmentKey&&e.segmentKey===t.segmentKey&&!!e.productId},{key:"segment_category",matches:(e,t)=>!e.contractId&&!e.companyId&&!!e.segmentKey&&e.segmentKey===t.segmentKey&&!!e.categoryKey}];function Qi(e,t,n){const r=n.filter(o=>o.currency===e.currency&&(o.validFrom==null||o.validFrom<=t.at)&&(o.validTo==null||o.validTo>=t.at)&&(o.minQuantity==null||t.quantity>=o.minQuantity)&&(o.productId==null||o.productId===e.id)&&(o.categoryKey==null||o.categoryKey===e.categoryKey)&&(o.productId!=null||o.categoryKey!=null));for(const o of qi){const i=r.filter(a=>o.matches(a,t));if(i.length===0)continue;const s=i.reduce((a,u)=>(u.minQuantity??0)>=(a.minQuantity??0)?u:a);return{unitPriceCents:Ji(s,e.listPriceCents),sourceKey:(s.minQuantity??0)>1?"tier":o.key,ruleId:s.id}}return{unitPriceCents:e.listPriceCents,sourceKey:"list"}}function Ji(e,t){return e.unitPriceCents!=null?e.unitPriceCents:e.discountPercent!=null?W(t*(1-e.discountPercent/100)):t}const Zi=["piece","hour","day","month","km","license"],es=new Set(["mail","message"]);function On(e,t){const n=e.settings?.signatures?.[t];return!n?.enabled||!n.body||n.body.trim()===""?null:n}function ts(e,t,n,r="html"){if(!e)return n;const o=On(e,t);return o?`${n}${r==="text"?`
|
|
8
8
|
|
|
9
|
-
`:t==="mail"?"<br><br>-- <br>":"<br><br>"}${o.body}`:n}function es(e){return e.endpoints??[]}function $(e){const t=(e??"").trim().toLowerCase();if(t)return t.split(/[-_]/)[0]||void 0}function ts(e){return $(e.contactLocale)??$(e.companyLocale)??$(e.organizationLocale)}function ns(e,t,n,r){const o=e.filter(a=>a.key===t&&!a.archived);if(o.length===0)return;const i=$(n),s=$(r);return o.find(a=>$(a.locale)===i)??o.find(a=>$(a.locale)===s)??o.find(a=>!a.locale)??o[0]}const rs=/\{([a-zA-Z0-9_.]+)\}/g;function at(e,t){let n=e;for(const r of t.split(".")){if(n==null||typeof n!="object")return;n=n[r]}return n}function os(e){return typeof e=="string"?e:typeof e=="number"||typeof e=="boolean"?String(e):""}function On(e,t,n){const r=[];return{text:e.replace(rs,(i,s)=>{const a=at(t,s);return a==null||a===""?(r.includes(s)||r.push(s),n??`{${s}}`):os(a)}),unresolved:r}}function kn(e,t){if(!e)return!0;const n=at(t,e.key);if(e.exists!==void 0){const r=n!=null&&n!==""&&n!==!1;return e.exists?r:!r}return e.equals!==void 0?n===e.equals:!0}function is(e,t,n,r,o){const i=[],s=[],a=new Set,u=l=>{const d=On(l,t,o);for(const c of d.unresolved)i.includes(c)||i.push(c);return d.text};for(const l of e){if(l.block_id&&!kn(n?.[l.block_id],t))continue;const d=l.block_id?r?.[l.block_id]:void 0;if(d&&l.block_id){a.add(l.block_id),s.push(...d);continue}switch(l.type){case"heading":case"paragraph":case"quote":s.push({...l,text:u(l.text)});break;case"callout":s.push({...l,...l.title?{title:u(l.title)}:{},text:u(l.text)});break;case"code":s.push(l);break;case"list":s.push({...l,items:l.items.map(c=>({...c.lead?{lead:u(c.lead)}:{},text:u(c.text)}))});break;case"table":s.push({...l,columns:l.columns.map(c=>({...c,label:u(c.label)})),rows:l.rows.map(c=>c.map(u)),...l.caption?{caption:u(l.caption)}:{}});break;case"kpi":s.push({...l,items:l.items.map(c=>({...c,value:u(c.value),label:u(c.label)}))});break;case"letterhead":s.push({...l,fields:l.fields.map(c=>({...c,value:u(c.value)})),...l.recipient?{recipient:l.recipient.map(u)}:{}});break;case"totals":s.push({...l,rows:l.rows.map(c=>({...c,label:u(c.label),amount:u(c.amount)})),...l.taxRows?{taxRows:l.taxRows.map(c=>({...c,label:u(c.label),amount:u(c.amount)}))}:{}});break;case"image":s.push({...l,url:u(l.url),...l.alt?{alt:u(l.alt)}:{}});break;default:s.push(l)}}return{blocks:s,unresolved:i,unusedSlots:Object.keys(r??{}).filter(l=>!a.has(l))}}function Cn(e){const t=e?.address,n=[t?.street,t?.houseNumber].filter(Boolean).join(" "),r=[t?.postalCode,t?.city].filter(Boolean).join(" ");return{name:e?.name??"",addressLines:[n,r,t?.country??""].filter(Boolean),footerLines:[e?.footerText??"",e?.kvkNumber?`KvK ${e.kvkNumber}`:"",e?.vatNumber?`Btw ${e.vatNumber}`:"",e?.iban?`IBAN ${e.iban}`:""].filter(Boolean),...e?.logo?{logo:e.logo}:{}}}function ss(e){return Cn({name:e?.billing?.companyName||e?.name||e?.displayName||"",address:e?.address,kvkNumber:e?.billing?.kvkNumber,vatNumber:e?.billing?.vatNumber,iban:e?.houseStyle?.iban,footerText:e?.houseStyle?.footerText,logo:e?.logo})}const Nn=36e5,wn=864e5,L=-1/0,as=e=>e.score>L,z={urgent:40,high:25,normal:10,low:0};function cs(e){return Object.fromEntries(e.map(t=>[t.resourceId,t]))}const ls=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i,Rn=/\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;function vn(e,t){return!!(e&&ls.test(e)||t&&Rn.test(t))}const Dn=3,xn=600;function us(e,t){return e>=Dn||t>=xn}const Ln=["list-unsubscribe","list-unsubscribe-post","list-id","precedence","auto-submitted","x-auto-response-suppress","feedback-id","x-mailer"];function ds(e){const t={};for(const n of e){const r=n.name?.toLowerCase();r&&n.value!==void 0&&Ln.includes(r)&&(t[r]=n.value)}return t}const ps=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|notifications?|bounce|postmaster|mailer)@/i,fs=/(^|[._+-])(newsletter|nieuwsbrief|marketing|mailing)@/i;function ms(e){const t=e.headers??{},n=e.from?.email,r=t["auto-submitted"]?.toLowerCase();if(r&&r!=="no"||t["x-auto-response-suppress"]||n&&ps.test(n))return"automated";const o=t.precedence?.toLowerCase();if(t["list-unsubscribe"]||t["list-unsubscribe-post"]||t["list-id"]||o==="bulk"||o==="list"||e.body&&Rn.test(e.body)||n&&fs.test(n))return"marketing"}function Pn(e,t){return e.lastActivityAt?!(e.seenBy??[]).includes(t):!1}const $n=["open"],Un=1e3,Kn={urgent:1,high:4,normal:8,low:24},Fn=72;function Bn(e){return e.lastActivityAt??(e.createdAt?new Date(an(e)).getTime():0)}function Hn(e,t){return Wn(t.remindersById?.[e.id],e,t.now)}function Wn(e,t,n){return!e||e.remindAt<=n?!1:!((t.lastActivityAt??0)>e.parkedAt&&t.lastActivityPreview?.direction==="inbound")}const Gn=e=>nn(e)==="outbound_message",jn=e=>$n.includes(e);function Oe(e,t){return Math.max(0,(t-Bn(e))/Nn)}function Vn(e,t){const n=e.assignedInboxId?t?.[e.assignedInboxId]:void 0;return typeof n=="number"&&n>0?n:Kn[e.priority??"normal"]}function gs(e){const t={};for(const n of e)typeof n.slaHours=="number"&&n.slaHours>0&&(t[n.id]=n.slaHours);return t}function hs(e,t,n){return!jn(e.status)||e.firstResponseAt?!1:Oe(e,t)>Vn(e,n)}function Yn(e,t){const n=e.lastActivityPreview;return n?.direction!=="outbound"||!Gn(n.type)?!1:Oe(e,t)<Fn}function ys(e,t){if(!jn(e.status))return{score:L,reasons:[]};if(e.snoozedTill&&e.snoozedTill>t.now)return{score:L,reasons:[]};if(Yn(e,t.now))return{score:L,reasons:[]};if(Hn(e,t))return{score:L,reasons:[]};let n=0;const r=[],o=e.priority??"normal";z[o]>0&&(n+=z[o],r.push(`priority:${o}`)),Pn(e,t.userId)&&(n+=20,r.push("unseen")),e.assignedUserId&&e.assignedUserId===t.userId&&(n+=15,r.push("assigned-to-you"));const i=Oe(e,t.now);if(i>0){const u=Math.min(i*2,30);n+=u,i>=1&&r.push(`waiting:${Math.round(i)}h`)}const s=e.lastActivityPreview;return s?.type==="AI_ACTION_PROPOSED"&&(n+=30,r.push("awaiting-approval")),s?.direction==="outbound"&&Gn(s.type)&&(n+=10,r.push("no-reply")),!e.firstResponseAt&&e.lastActivityPreview?.direction==="inbound"&&(n+=10,r.push("awaiting-reply")),(e.tags?.some(u=>u==="marketing"||u==="automated")||vn(e.remoteParty?.resource,e.lastActivityPreview?.snippet))&&(n-=Un,r.push("bulk")),{score:n,reasons:r}}const Es=e=>!!e.assignedUserId||!!e.assignedInboxId,_s=e=>e.status==="closed",Ss=e=>({urgent:10,high:5,normal:2,low:1})[e.priority]||0,As=(e,t=30)=>e.title?.length<=t?e.title:`${e.title.substring(0,t)}...`;function bs(e,t){const n=e.labels??[];return n.find(r=>r.locale===t)?.label??n[0]?.label??e.url}function Ts(e,t,n){const r=e.translations??[];return r.find(o=>o.locale===t)??(n?r.find(o=>o.locale===n):void 0)??{locale:t}}const ye=[{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 Xn(e){const t=(e??"").toLowerCase();return ye.find(n=>n.code===t)??ye.find(n=>n.code===t.split("-")[0])}function Is(e){return Xn(e)?.label??e}function Ms(e){const t=Xn(e);return t?t.english===t.label?`${t.english} (${t.code})`:`${t.english} — ${t.label} (${t.code})`:e}const ct=3;function zn(e,t){const n=new Set;let r=1,o=t.get(e)?.parentId;for(;o;){if(n.has(o)||(n.add(o),r++,r>ct+1))return 1/0;o=t.get(o)?.parentId}return r}function Os(e,t,n){if(!e)return!0;if(e===t)return!1;const r=new Map(n.map(s=>[s.id,s]));if(!r.has(e)||t&&qn(e,t,r))return!1;const o=zn(e,r),i=t?lt(t,n):1;return o+i<=ct}function qn(e,t,n){const r=new Set;let o=n.get(e)?.parentId;for(;o;){if(o===t)return!0;if(r.has(o))return!1;r.add(o),o=n.get(o)?.parentId}return!1}function lt(e,t,n=new Set){if(n.has(e))return 1;n.add(e);const r=t.filter(o=>o.parentId===e);return r.length?1+Math.max(...r.map(o=>lt(o.id,t,n))):1}const Qn="en";function Jn(e){return e.defaultLocale||e.locale||Qn}function ks(e){const t=new Set,n=[];for(const r of[Jn(e),...e.locales??[]])!r||t.has(r)||(t.add(r),n.push(r));return n}function Cs(e,t,n){const r=e.translations??[];return r.find(o=>o.locale===t)?.name??(n?r.find(o=>o.locale===n)?.name:void 0)??e.name}const Ve=["lookup","condition","parallel","for-each"];function ie(e){for(const t of e){if(!Ve.includes(t.type))return`staptype "${t.type}" mag niet meelezen (alleen ${Ve.join(", ")})`;if(t.type==="parallel")for(const n of t.branches??[]){const r=ie(n);if(r)return r}if(t.type==="for-each"){const n=ie(t.body??[]);if(n)return n}if(t.type==="condition"){const n=ie(t.else??[]);if(n)return n}}return null}function Ns(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 ws(e,t){return e.filter(n=>n.enabled&&Ns(n.ownerScope,t))}function Rs(e){return e.credentialScope?e.credentialScope:(e.authMode??"header")==="header"||e.oauth?.scope==="org"?"shared":"per-user"}function vs(e){return`mcp__${e}__`}const Ds=1e3,xs=2e3,Ls=500,Ps=12e3,$s=4e3,Zn=["contact","company","work_item"];function Us(e){if(!e)return!1;const t=e.slice(0,e.indexOf(":"));return Zn.includes(t)}const Ks=[{key:"high",label:"tax_high",percent:21,kind:"standard"},{key:"low",label:"tax_low",percent:9,kind:"reduced"},{key:"zero",label:"tax_zero",percent:0,kind:"zero"},{key:"reverse_charge",label:"tax_reverse_charge",percent:0,kind:"reverse_charge"},{key:"exempt",label:"tax_exempt",percent:0,kind:"exempt"}];function er(e,t){return t.find(n=>n.key===e)??{key:e,label:e,percent:0,kind:"zero"}}function tr(e){if(e.kind!=="product")return 0;const t=1-(e.discountPercent??0)/100;return G(e.quantity*e.unitPriceCents*t)}function Fs(e,t,n){const r=e.map(l=>({...l,netCents:tr(l),taxCents:0})),o=new Map;for(let l=0;l<r.length;l++){if(r[l].kind!=="product"||r[l].optional)continue;const d=n??r[l].taxRateKey,c=o.get(d);c?c.push(l):o.set(d,[l])}const i=[];let s=0,a=0;for(const[l,d]of o){const c=er(l,t),p=d.reduce((m,b)=>m+r[b].netCents,0),f=G(p*c.percent/100),y=In(f,d.map(m=>r[m].netCents));for(let m=0;m<d.length;m++)r[d[m]].taxCents=y[m];i.push({taxRateKey:l,netCents:p,taxCents:f}),s+=p,a+=f}const u=r.reduce((l,d)=>d.costPriceCents==null||d.optional?l:l+G(d.costPriceCents*d.quantity),0);return{lines:r,totals:{netCents:s,taxCents:a,grossCents:s+a,costCents:u,byRate:i}}}const Bs="onboarding-source",Hs=["support","billing","availability","sales","onboarding"],Ws=["keep","replace"],ke=[{key:"shift",label:"kind_shift",capacity:!0,productive:!1,absent:!1,icon:"calendar-clock"},{key:"allocation",label:"kind_allocation",capacity:!1,productive:!0,absent:!1,icon:"briefcase"},{key:"meeting",label:"kind_meeting",capacity:!1,productive:!1,absent:!1,icon:"users"},{key:"travel",label:"kind_travel",capacity:!1,productive:!1,absent:!1,icon:"car"},{key:"training",label:"kind_training",capacity:!1,productive:!1,absent:!1,icon:"graduation-cap"},{key:"break",label:"kind_break",capacity:!1,productive:!1,absent:!1,icon:"coffee"},{key:"absence",label:"kind_absence",capacity:!1,productive:!1,absent:!0,approvable:!0,icon:"palmtree"},{key:"sick",label:"kind_sick",capacity:!1,productive:!1,absent:!0,icon:"thermometer"},{key:"holiday",label:"kind_holiday",capacity:!1,productive:!1,absent:!0,icon:"party-popper"}],nr={key:"unknown",label:"kind_unknown",capacity:!1,productive:!1,absent:!1};function R(e,t=ke){return t.find(n=>n.key===e)??{...nr,key:e}}function j(e){return e==="published"||e==="approved"}function ut(e,t,n=ke){if(e.workstreamId!==t)return!1;const r=R(e.kindKey,n);return r.absent?!1:r.productive||r.capacity}function Gs(e,t=ke){if(!e.userId||!j(e.status))return!1;const n=R(e.kindKey,t);return n.capacity||n.productive||n.absent}const js=864e5;function rr(e,t){return Math.round((t-e)/js)}function dt(e,t){const n=e.cycleMinutes.length;return n===0?0:(rr(e.anchor,t)%n+n)%n}function pt(e,t){return e.effectiveFrom!==void 0&&t<e.effectiveFrom?0:e.cycleMinutes[dt(e,t)]??0}function ft(e,t){return e.startTimes?.[dt(e,t)]}function mt(e,t,n,r){const o=e.filter(a=>a.effectiveFrom===void 0||a.effectiveFrom<=r),i=a=>a.sort((u,l)=>(l.effectiveFrom??0)-(u.effectiveFrom??0))[0],s=i(o.filter(a=>a.userId===t));return s||i(o.filter(a=>!a.userId&&a.teamId&&n.includes(a.teamId)))}function or(e,t,n){return e.filter(r=>r.userId===t&&(r.effectiveFrom===void 0||r.effectiveFrom<=n)).sort((r,o)=>(o.effectiveFrom??0)-(r.effectiveFrom??0))[0]}const Ye=864e5;function Vs(e){const t=Math.max(1,Math.round((e.to-e.from)/Ye));return Array.from({length:t},(n,r)=>e.from+r*Ye)}function Xe(e,t,n,r){const o=Math.min(t,r)-Math.max(e,n);return o>0?o/1e3:0}const Dt={interval:0,day:1,week:2};function Ys(e,t){const{entries:n,patterns:r=[],terms:o=[]}=t,i=n.filter(c=>c.userId&&j(c.status)&&R(c.kindKey).capacity),s=n.filter(c=>c.userId&&j(c.status)&&R(c.kindKey).absent),a=t.userIds??[...new Set([...i.map(c=>c.userId),...r.map(c=>c.userId),...o.map(c=>c.userId)])].filter(c=>!!c),u={};let l="interval";const d=c=>{Dt[c]>Dt[l]&&(l=c)};for(const c of a){const p=t.teamIdsOf?.(c)??[];let f=0,y=0,m=0;for(const g of Vs(e)){const A=Math.max(g,e.from),v=Math.min(g+Ye,e.to);m++;const N=i.filter(O=>O.userId===c).reduce((O,It)=>O+Xe(It.start,It.end,A,v),0);if(N>0){f+=N;continue}const k=mt(r,c,p,g),w=k?pt(k,g):0;if(k&&w>0){f+=w*60,d(ft(k,g)?"interval":"day");continue}k||y++}if(y>0){const g=or(o,c,e.from);g&&(f+=g.weeklyMinutes*60*(y/7),d("week"))}const b=s.filter(g=>g.userId===c).reduce((g,A)=>g+Xe(A.start,A.end,e.from,e.to),0),h=Math.max(0,f-b);(h>0||m>0)&&(u[c]=h)}return{seconds:Object.values(u).reduce((c,p)=>c+p,0),precision:l,byUser:u}}function Xs(e,t){if(!e.some(a=>a.userId))return[];const n="",r=new Map;for(const a of e){const u=a.userId??n;r.set(u,(r.get(u)??0)+a.seconds)}const i=[...new Set([...Object.keys(t.byUser),...[...r.keys()].filter(a=>a!==n)])].map(a=>{const u=r.get(a)??0,l=t.byUser[a]??0;return{userId:a,requiredSeconds:u,capacitySeconds:l,netSeconds:l-u}});i.sort((a,u)=>a.netSeconds-u.netSeconds);const s=r.get(n)??0;return s>0&&i.push({requiredSeconds:s,capacitySeconds:0,netSeconds:-s}),i}function zs(e,t,n,r){const o=e.filter(s=>s.userId&&j(s.status)&&!R(s.kindKey).absent),i=Object.entries(r.byUser).map(([s,a])=>{let u=0,l=0;for(const d of o){if(d.userId!==s||R(d.kindKey).capacity&&!d.workstreamId)continue;const c=Xe(d.start,d.end,n.from,n.to);c<=0||(ut(d,t)?u+=c:l+=c)}return{userId:s,capacitySeconds:a,onThisSeconds:u,elsewhereSeconds:l,freeSeconds:Math.max(0,a-u-l)}});return i.sort((s,a)=>a.freeSeconds-s.freeSeconds),i}const qs="demand-source",xt=1e3;function Qs(e,t){let n=1;for(let r=1;r<=e;r++)n=t*n/(r+t*n);return n}function ir(e,t){if(e<=0)return 1;if(t<=0)return 0;if(e<=t)return 1;const n=Qs(e,t),r=t/e;return n/(1-r*(1-n))}function sr(e,t,n,r){return r<=0?1:e<=t?0:1-ir(e,t)*Math.exp(-(e-t)*n/r)}function ar(e,t,n){return n<=0?0:e*t/n}function cr(e,t,n,r){if(e<=0||t<=0)return 0;const o=ar(e,t,n);if(o<=0)return 0;const i=r.serviceLevelPercent/100,s=r.maxOccupancyPercent?r.maxOccupancyPercent/100:void 0;for(let a=Math.max(1,Math.ceil(o));a<=xt;a++)if(!(a<=o)&&!(sr(a,o,r.targetSeconds,t)<i)&&!(s&&o/a>s))return a;return xt}const Js=36e5,Zs=864e5;function ea(e){return e==="day"?Zs:Js}function ta(e,t){return e.start<t.end&&t.start<e.end}function se(e,t,n){const r=Math.min(e.end,n)-Math.max(e.start,t);return r>0?r/1e3:0}function lr(e,t,n){const r=e.handleSeconds??0,o=e.seconds??(e.volume!==void 0?e.volume*r:0);if(o<=0&&!e.volume)return{seconds:0,headcount:0};const i=(t.unplannedLossPercent??0)/100,s=i>0&&i<1?1/(1-i):1;if(t.model==="queue"&&e.volume!==void 0&&r>0){const a=cr(e.volume,r,n,t);return{seconds:o,headcount:a*s}}return{seconds:o,headcount:o/n*s}}function na(e){const{entries:t,workstreamId:n,staffing:r,demand:o,range:i}=e,s=e.grain??"hour",a=ea(s),u=a/1e3,l=e.kinds,d=t.filter(m=>j(m.status)),c=d.filter(m=>ut(m,n,l)),p=d.filter(m=>R(m.kindKey,l).capacity),f=d.filter(m=>R(m.kindKey,l).absent),y=[];for(let m=W(i.from,s);m<i.to;m+=a){const b=m+a,h=H(m,s);let g=0;for(const O of c)g+=se(O,m,b);let A=0;for(const O of p)A+=se(O,m,b);let v=0;for(const O of f)v+=se(O,m,b);const N=o?.[h]??{},k=lr(N,r,u),w=g/u;y.push({period:h,forecastVolume:N.volume,requiredSeconds:k.seconds,requiredHeadcount:k.headcount,scheduledSeconds:g,scheduledHeadcount:w,netHeadcount:w-k.headcount,capacitySeconds:A,absentSeconds:v})}return y}function ur(e,t){return e.workTypeKey??t?.defaultWorkTypeKey}function ra(e,t,n){const r=ur(e,t);return r?n.find(o=>o.key===r)?.defaultBillable??!1:!1}function oa(e){return e.filter(t=>t.netHeadcount<0&&t.requiredHeadcount>0)}const ia=36e5,ze=6048e5,dr=8,sa=.5,aa=2;function ca(e){const t=Number(e.slice(0,4)),n=Number(e.slice(5,7)),r=Number(e.slice(8,10)),o=e.length>10?Number(e.slice(11,13)):0;return Date.UTC(t,n-1,r,o)}function la(e,t,n){const r=[];for(let i=0;i<n;i++){const s=t-i*ze,a=s-ze;let u=0,l=!1;for(const[d,c]of e)d>=a&&d<s&&(u+=c,l=!0);l&&r.push(u)}if(r.length<2)return 1;const o=r.reduce((i,s)=>i+s,0)/r.length;return o<=0?1:Math.min(aa,Math.max(sa,r[0]/o))}function ua(e,t){if(!e?.length)return;let n;for(const r of e)t>=r.from&&t<r.to&&(n=r);return n}function da(e,t,n){const r=Math.max(1,n?.weeks??dr),o=new Map,i=new Set;for(const u of e)o.set(ca(u.period),u.value),i.add(u.period.slice(0,10));const s=la(o,W(t.from,"hour"),r),a=[];for(let u=W(t.from,"hour");u<t.to;u+=ia){let l=0,d=0;for(let f=1;f<=r;f++){const y=u-f*ze,b=o.get(y)??(i.has(H(y,"day"))?0:void 0);if(b===void 0)continue;const h=r-f+1;l+=b*h,d+=h}let c=d>0?l/d*s:0;const p=ua(n?.adjustments,u);p?.absoluteVolume!==void 0?c=p.absoluteVolume:p?.factor!==void 0&&(c*=p.factor),a.push({period:H(u,"hour"),volume:c})}return a}const pr="schedule_entry",fr="workstream";function pa(e){return`${pr}:${e}`}function fa(e){return`${fr}:${e}`}const qe=36e5,B=864e5;function ma(e,t){const n=t==="day"?B:qe,r=[];for(let o=W(e.from,t);o<e.to;o+=n)r.push(o);return r}function Lt(e){const t=Math.max(1,Math.round((e.to-e.from)/B));return Array.from({length:t},(n,r)=>e.from+r*B)}function Ke(e,t,n,r){const o=Math.min(t,r)-Math.max(e,n);return o>0?o/1e3:0}function ga(e,t,n={}){const r=n.grain??"hour",o=ma(t,r),i=r==="day"?B:qe,s=new Map(o.map(c=>[c,0])),a=e.filter(c=>c.userId&&R(c.kindKey).capacity),u=n.userIds?.length?new Set(n.userIds):null,l=new Set;for(const c of a)if(!(u&&c.userId&&!u.has(c.userId))){for(const p of o){const f=Ke(c.start,c.end,p,p+i);f>0&&s.set(p,(s.get(p)??0)+f)}for(const p of Lt(t))Ke(c.start,c.end,p,p+B)>0&&l.add(`${c.userId}:${p}`)}const d=n.userIds??[...new Set([...a.map(c=>c.userId),...(n.patterns??[]).map(c=>c.userId)])].filter(c=>!!c);if(n.patterns?.length)for(const c of d){const p=n.teamIdsOf?.(c)??[];for(const f of Lt(t)){if(l.has(`${c}:${f}`))continue;const y=mt(n.patterns,c,p,f);if(!y)continue;const m=pt(y,f);if(m<=0)continue;const b=ft(y,f);if(b){const[A,v]=b.split(":").map(Number),N=f+A*qe+(v??0)*6e4,k=N+m*6e4;for(const w of o){const O=Ke(N,k,w,w+i);O>0&&s.set(w,(s.get(w)??0)+O)}continue}const h=o.filter(A=>A>=f&&A<f+B);if(!h.length)continue;const g=m*60/h.length;for(const A of h)s.set(A,(s.get(A)??0)+g)}}return o.map(c=>({period:H(c,r),weight:s.get(c)??0}))}function mr(e,t){if(e<=0||!t.length)return[];const n=t.reduce((r,o)=>r+Math.max(0,o.weight),0);if(n<=0){const r=e/t.length;return t.map(o=>({period:o.period,seconds:r}))}return t.filter(r=>r.weight>0).map(r=>({period:r.period,seconds:e*r.weight/n}))}function ha(e,t,n){const r=new Map;for(const o of e){const i=o.by?t.filter(a=>n(a.period)<o.by):t,s=i.length?i:t;for(const a of mr(o.seconds,s)){const u=`${a.period}|${o.userId??""}`,l=r.get(u);l?l.seconds+=a.seconds:r.set(u,{...a,userId:o.userId})}}return[...r.values()].sort((o,i)=>o.period.localeCompare(i.period)||(o.userId??"").localeCompare(i.userId??""))}function gr(e){switch(e.kind){case"user":return`user:${e.userId}`;case"team":return`team:${e.teamId}`;case"org":return"org"}}function ya(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),o=t.slice(n+1).trim();if(o){if(r==="user")return{kind:"user",userId:o};if(r==="team")return{kind:"team",teamId:o}}}function hr(e){return gr(e)}function yr(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 Er=yr;function Ea(e){return e.agentId?{kind:"user",userId:e.agentId}:Er(e.ownerScope)}function _a(e){return hr(e)}function Sa(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 Aa(e,t){return e.targets.find(n=>n.activityTypes.includes(t))}function ba(e,t){if(t)return e.targets.find(n=>n.id===t)}function _r(e){return e?.kind==="assignment"}function Ta(e){const{trigger:t,agentId:n,target:r,activityType:o,assigneeUserId:i,authorUserId:s}=e;return _r(t)?n?r?r.activityTypes.includes(o)?i?i!==n?"assigned to someone else":s&&s===n?"the agent assigned this to itself, which would restart its own run":null:`no assignee found at ${r.assigneePath}`:`activity type ${o} 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 Ia(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/__/g," · ").replace(/\./g," · ").replace(/_/g," ")}const Ma=[{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"}],Oa={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 Sr(e){return`${e.type}:${e.id}`}const Ar="interaction";function br(e){return e?.type===Ar?e.id:void 0}const Tr=64,Ir=8e3;function ka(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),Tr),Ir)}const Ca={kind:"workflow",steps:[]};function Na(e){return e?.kind==="workflow"?e.steps:[]}function wa(e){return e?.kind==="procedure"?e.procedure:void 0}function Mr(e){const t=e?.approved??0,n=t+(e?.rejected??0);return{total:n,rate:n?t/n:0}}const Or=10,kr=.9;function Ra(e){const{total:t,rate:n}=Mr(e);return t>=Or&&n>=kr}const Cr=["done","escalated","failed","stopped"];function va(e){return Cr.includes(e)}function Nr(e){return e==="waiting"}function Da(e){return e==="running"||Nr(e)}function gt(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}function xa(e){const t=gt(e);return t?Sr(t):void 0}function La(e){return br(gt(e))}function Pa(e){const t=[],n=new Map;for(const r of[...e].sort($a)){const o=n.get(r.emoji);if(o){o.push(r.actor);continue}t.push(r.emoji),n.set(r.emoji,[r.actor])}return t.map(r=>{const o=n.get(r);return{emoji:r,count:o.length,actors:o}}).sort((r,o)=>o.count-r.count||t.indexOf(r.emoji)-t.indexOf(o.emoji))}const $a=(e,t)=>(e.createdAt??0)-(t.createdAt??0);function Ua(e,t){return t?e.actors.some(n=>n.type==="user"&&n.id===t):!1}const Qe=6e4,Ka=36e5,q=864e5,wr=800;function Pt(e,t){const n=Date.UTC(e,t+1,0);return n-new Date(n).getUTCDay()*q+Ka}function Fa(e){const t=new Date(e).getUTCFullYear();return e>=Pt(t,2)&&e<Pt(t,9)}function Rr(e,t){const n=t.dst==="eu"&&Fa(e)?60:0;return(t.utcOffsetMinutes+n)*Qe}function Ba(e){return(e+3)%7+1}function vr(e,t){const n=Rr(e,t),r=e+n,o=Math.floor(r/q);if(!t.days.includes(Ba(o)))return null;const i=o*q;return{open:i+t.fromMinutes*Qe-n,close:i+t.toMinutes*Qe-n}}function Dr(e,t){const n=Rr(e,t),r=e+n;return(Math.floor(r/q)+1)*q-n}function Ee(e,t,n){if(t<=e)return 0;if(!n)return t-e;let r=0,o=e;for(let i=0;i<wr&&o<t;i++){const s=vr(o,n);if(s){const a=Math.max(o,s.open),u=Math.min(t,s.close);u>a&&(r+=u-a)}o=Dr(o,n)}return r}function Ce(e,t,n){if(!n)return e+t;let r=t,o=e;for(let i=0;i<wr;i++){const s=vr(o,n);if(s){const a=Math.max(o,s.open);if(s.close>a){const u=s.close-a;if(r<=u)return a+r;r-=u}}o=Dr(o,n)}return e+t}function Ha(e){const t=/^([01]\d|2[0-3]):([0-5]\d)$/.exec(e);return t?Number(t[1])*60+Number(t[2]):null}const _e=1,Se=2,Ae=4;function Wa(e){return e==="snoozed"?_e:Se}function Ne(e){const t=e.calendar;return t&&Array.isArray(t.days)?t:null}const Ga=["speed_of_answer","first_response","next_response","resolution","close"],ja=["snoozed","waiting_for_customer"],Va=6e4,xr=["speed_of_answer","first_response","next_response"],Ya=[...xr,"resolution","close"];function J(e){return e.state==="running"||e.state==="paused"}function Xa(e,t){return J(e)?{state:(e.state==="paused"?e.remainingMs>0:t<=e.dueAt)?"hit":"missed",settledAt:Math.max(t,e.startedAt)}:null}function $t(e){return J(e)?{state:"void"}:null}function za(e,t,n,r){if(!J(e)||(e.pauseBits&t)!==0)return null;const o=e.pauseBits|t;return e.state==="paused"?{pauseBits:o}:{pauseBits:o,state:"paused",remainingMs:Ee(n,e.dueAt,r)}}function qa(e,t,n,r){if(!J(e)||(e.pauseBits&t)===0)return null;const o=e.pauseBits&~t;return o!==0?{pauseBits:o}:{pauseBits:o,state:"running",dueAt:Ce(n,e.remainingMs,r)}}function Qa({event:e,at:t,now:n,clocks:r,profile:o}){const i=Ne(o),s=Math.min(t,n),a=r.map(h=>({...h})),u=[],l=(h,g)=>{g&&(u.push({op:"patch",clockId:h.id,patch:g}),Object.assign(h,g))},d=h=>{for(const g of a)g.metric===h&&l(g,Xa(g,s))},c=h=>{for(const g of a)h.includes(g.metric)&&l(g,$t(g))},p=h=>{for(const g of a)l(g,za(g,h,s,i))},f=h=>{for(const g of a)l(g,qa(g,h,s,i))},y=h=>a.reduce((g,A)=>A.metric===h?Math.max(g,A.attempt):g,0)+1,m=h=>a.some(g=>g.metric===h&&J(g)),b=(h,g)=>{const A=o.targets.find(N=>N.metric===h);if(!A)return;const v=A.minutes*Va;u.push({op:"start",metric:h,attempt:y(h),startedAt:g,targetMs:v,dueAt:Ce(g,v,i)})};switch(e){case"apply":{for(const h of a)h.profileId!==o.id&&l(h,$t(h));for(const h of o.targets){if(h.metric==="next_response")continue;a.some(A=>A.metric===h.metric&&A.profileId===o.id)||b(h.metric,s)}break}case"answered":d("speed_of_answer");break;case"outbound":{d("first_response"),d("next_response"),o.pauseOn.includes("waiting_for_customer")&&p(Se);break}case"inbound":{f(Se),!m("first_response")&&!m("next_response")&&b("next_response",s);break}case"resolved":d("resolution");break;case"closed":d("close"),d("resolution"),c(xr);break;case"reopened":m("resolution")||b("resolution",s),m("close")||b("close",s);break;case"snoozed":o.pauseOn.includes("snoozed")&&p(_e);break;case"unsnoozed":f(_e);break;case"hold":p(Ae);break;case"unhold":f(Ae);break;case"discarded":c(Ya);break}return u}function Lr(e){return e.state==="running"||e.state==="paused"}function Ja(e){return(e.pauseBits&Ae)!==0}function be(e,t){const n=Ne(e);return e.state==="paused"?e.remainingMs:t>=e.dueAt?-Ee(e.dueAt,t,n):Ee(t,e.dueAt,n)}function Za(e,t){return e.state==="paused"?Ce(t,e.remainingMs,Ne(e)):e.dueAt}function ec(e,t){const n=e.filter(Lr);if(!n.length)return;const r=n.filter(i=>i.state==="running");return(r.length?r:n).reduce((i,s)=>be(s,t)<be(i,t)?s:i)}function tc(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=be(e,t);return n<=0?"breached":n<=e.targetMs/5?"urgent":"running"}function nc(e){const t=Math.floor(Math.abs(e)/1e3),n=Math.floor(t/86400),r=Math.floor(t%86400/3600),o=Math.floor(t%3600/60);return n?r?`${n}d ${r}u`:`${n}d`:r?o?`${r}u ${o}m`:`${r}u`:o?`${o}m`:`${t%60}s`}const Pr="strategy_item";function ht(e){return`${Pr}:${e}`}function rc(e,t=25){const n=new Set([ht(e.id)]);for(const r of e.ancestorKeys??[])n.add(r);return Array.from(n).slice(0,t)}function oc(e){return e?[...e.ancestorKeys??[],ht(e.id)]:[]}const Z=[{key:"area",label:"level_area",order:10,measurable:!1,icon:"compass"},{key:"objective",label:"level_objective",order:20,measurable:!0,icon:"target"},{key:"key_result",label:"level_key_result",order:30,measurable:!0,icon:"gauge"}],$r=999,Ur=7;function Kr(e,t=Z){return t.find(n=>n.key===e)}function Te(e,t=Z){return Kr(e,t)?.order??$r}function ic(e,t,n=Z){return Te(t,n)<=Te(e,n)}function sc(e,t=Z){const n=Te(e,t);return t.filter(o=>o.order>n).sort((o,i)=>o.order-i.order)[0]?.key??e}function ac(e){const t=e.trim().toLowerCase();return t?t.includes("key result")||t.includes("keyresult")||t==="kr"?"key_result":t.includes("objective")||t.includes("goal")||t.includes("doel")?"objective":t.includes("focus")||t.includes("area")||t.includes("theme")?"area":null:null}const Je={pending:"open",on_track:"open",at_risk:"open",off_track:"open",paused:"paused",achieved:"closed",missed:"closed"};function cc(e){return Je[e]??"open"}function lc(e){return Object.keys(Je).filter(t=>e.includes(Je[t]))}const uc=864e5,we=e=>e<=0?0:e>1?1:e;function dc(e,t){const{direction:n}=e,r=e.startValue??0,o=e.targetValue??0;if(!Number.isFinite(t))return 0;const i=n==="down"?t<=o:t>=o,s=o-r;return(n==="down"?s<0:s>0)?we((t-r)/s):i?1:0}function pc(e,t){const{startDate:n,targetDate:r}=e;if(!(typeof n!="number"||typeof r!="number")&&!(r<=n))return we((t-n)/(r-n))}const Fr=.1,Br=.25;function fc(e,t){if(typeof e!="number"||typeof t!="number")return;if(e>=1)return"achieved";const n=t-e;return n>=Br?"off_track":n>=Fr?"at_risk":"on_track"}function mc(e,t){if(t)return we(e/t)}function gc(e){const t=e.map(n=>n.progress?.ratio).filter(n=>typeof n=="number"&&Number.isFinite(n));if(t.length)return we(t.reduce((n,r)=>n+r,0)/t.length)}function hc(e,t){const n=e.lastCheckInAt??e.createdAt;if(typeof n!="number")return 0;const r=(e.checkInEveryDays??Ur)*uc,o=t-n-r;return o>0?o:0}function yc(e){return e.targetDate??Number.MAX_SAFE_INTEGER}function Ec(e,t){const n=e.accumulatedSeconds||0;return e.runningSince?n+Math.max(0,Math.floor((t-e.runningSince)/1e3)):n}function _c(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 Sc(e){const t=Math.max(0,Math.round(e/60));return`${Math.floor(t/60)}:${String(t%60).padStart(2,"0")}`}function Ac(e){const t=Math.max(0,Math.floor(e)),n=i=>String(i).padStart(2,"0"),r=Math.floor(t/60)%60,o=Math.floor(t/3600);return o>0?`${o}:${n(r)}:${n(t%60)}`:`${n(r)}:${n(t%60)}`}function Hr(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function bc(e,t){const n=Hr(e)||"werksoort",r=new Set(t);if(!r.has(n))return n;for(let o=2;o<500;o++){const i=`${n}-${o}`;if(!r.has(i))return i}return`${n}-${r.size+1}`}function Tc(e,t){const n=e.ownerScope;return!n||n.kind==="org"?!0:t.includes(n.teamId)}function Ic(e){return e.filter(t=>!t.archived).sort(Wr)}function Wr(e,t){const n=(e.order??0)-(t.order??0);return n!==0?n:(e.label||"").localeCompare(t.label||"")}const Gr=20,jr=20,ae=300;function P(e){return e.toLowerCase().replace(/[^\p{L}\p{N}\s]/gu," ").replace(/\s+/g," ").trim()}function Vr(e){const t=e.replace(/\s+/g," ").trim();if(t.length<=ae)return t;const n=t.slice(0,ae),r=Math.max(n.lastIndexOf(". "),n.lastIndexOf("! "),n.lastIndexOf("? "));return r>ae*.6?n.slice(0,r+1):`${n.trimEnd()}…`}function Mc(e,t){const n=Vr(t.text),r=P(n);if(!r||(e.examples??[]).some(s=>P(s)===r))return null;const o=e.exampleCandidates??[],i=o.findIndex(s=>P(s.text)===r);if(i>=0){if(o[i].corrected||!t.corrected)return null;const s=[...o];return s[i]={...s[i],corrected:!0,addedAt:t.addedAt},Ut(s)}return Ut([{...t,text:n},...o]).slice(0,jr)}function Ut(e){return[...e].sort((t,n)=>Number(n.corrected)-Number(t.corrected)||n.addedAt-t.addedAt)}function Oc(e,t){const n=P(t),r=(e.examples??[]).filter(i=>i.trim());return{examples:r.some(i=>P(i)===n)?r:[...r,t].slice(-Gr),exampleCandidates:Yr(e,t)}}function Yr(e,t){const n=P(t);return(e.exampleCandidates??[]).filter(r=>P(r.text)!==n)}function Xr(e,t){const n=e.ownerScope;return n?n.kind==="org"?!0:n.kind==="team"?!!t&&n.teamId===t:!1:!1}function kc(e,t){return e.filter(n=>Xr(n,t))}const Re=[{key:"quote",label:"kind_quote",numbered:!1,signFlip:!1,statuses:["draft","sent","accepted","rejected","expired","cancelled"],path:"quotes",issuedStatus:"sent"},{key:"order",label:"kind_order",numbered:!1,signFlip:!1,statuses:["draft","confirmed","delivered","cancelled"],path:"orders",issuedStatus:"confirmed"},{key:"invoice",label:"kind_invoice",numbered:!0,signFlip:!1,statuses:["draft","open","paid","overdue","cancelled"],path:"invoices",issuedStatus:"open"},{key:"credit_note",label:"kind_credit_note",numbered:!0,signFlip:!0,statuses:["draft","open","settled","cancelled"],path:"invoices",issuedStatus:"open"}],zr=["quote","order","invoice"];function Cc(){const e=new Map;for(const t of Re)zr.includes(t.key)&&(e.has(t.path)||e.set(t.path,t));return[...e.values()]}function U(e){return Re.find(t=>t.key===e)??{key:e,label:e,numbered:!1,signFlip:!1,statuses:["draft"],path:"quotes",issuedStatus:"draft"}}function Nc(e){return e.issuedAt!=null}const wc=["status","fileRef","number","externalIds","postedAt","dunning","updatedAt"];function qr(e,t){const n=U(t).signFlip!==U(e.kindKey).signFlip,r=e.lines.map(o=>({...o,quantity:n?-o.quantity:o.quantity,netCents:0,taxCents:0}));return{kindKey:t,sourceTransactionId:e.id,agreementId:e.agreementId,version:1,businessEntityId:e.businessEntityId,companyId:e.companyId,contactId:e.contactId,dealItemId:e.dealItemId,ownerScope:e.ownerScope,ownerUserId:e.ownerUserId,title:e.title,reference:e.reference,currency:e.currency,status:"draft",lines:r,totals:{netCents:0,taxCents:0,grossCents:0,byRate:[]},taxOverrideKey:e.taxOverrideKey,introText:e.introText,termsText:e.termsText,paymentTerm:e.paymentTerm,deliveredAt:e.deliveredAt,periodFrom:e.periodFrom,periodTo:e.periodTo,source:e.source}}function Rc(e){return{...qr(e,e.kindKey),sourceTransactionId:e.sourceTransactionId,previousVersionId:e.id,version:e.version+1,lines:e.lines.map(n=>({...n})),totals:e.totals}}function vc(e,t={}){const n=U(e.kindKey),r=e.totals??{netCents:0,taxCents:0,grossCents:0};return{customer:{name:t.companyName??"",contact:t.contactName??"",address:Lc(t.companyAddress),street:t.companyAddress?.street??"",house_number:t.companyAddress?.houseNumber??"",postal_code:t.companyAddress?.postalCode??"",city:t.companyAddress?.city??"",country:t.companyAddress?.country??""},organization:{name:t.organizationName??""},[n.key]:{number:e.number??"",title:e.title??"",reference:e.reference??"",version:String(e.version??1),date:K(e.issuedAt),valid_until:K(e.expiresAt),due_date:K(e.dueAt),delivery_date:K(e.deliveredAt),period_from:K(e.periodFrom),period_to:K(e.periodTo),payment_term:e.paymentTerm?.label??"",note:e.introText??"",terms:e.termsText??""},totals:{net:x(r.netCents),tax:x(r.taxCents),gross:x(r.grossCents)}}}function Dc(e,t=[],n=Qr){const r=e.totals??{netCents:0,grossCents:0,byRate:[]},o=a=>t.find(u=>u.key===a)?.percent??0,i={block_id:"lines",type:"table",columns:[{label:n.description},{label:n.quantity,align:"right"},{label:n.unitPrice,align:"right"},{label:n.net,align:"right"}],rows:(e.lines??[]).map(a=>a.kind==="text"?[a.name,"","",""]:[xc(a.name,a.description,a.optional,n.optional),Pc(a.quantity),x(a.unitPriceCents),x(a.netCents)])},s={block_id:"totals",type:"totals",rows:[{label:n.net,amount:x(r.netCents)},{label:n.gross,amount:x(r.grossCents),emphasis:!0}],taxRows:r.byRate.map(a=>({label:`${n.tax} ${o(a.taxRateKey)}%`,amount:x(a.taxCents)}))};return{lines:[i],totals:[s]}}const Qr={description:"Omschrijving",optional:"optioneel",quantity:"Aantal",unitPrice:"Stuksprijs",net:"Netto",tax:"Btw",gross:"Totaal"};function xc(e,t,n,r){const o=t?`${e} — ${t}`:e;return n?`${o} (${r})`:o}function Lc(e){return e?.street?[e.street,e.houseNumber].filter(Boolean).join(" "):""}function Pc(e){return Number.isInteger(e)?String(e):String(e).replace(".",",")}function K(e){if(!e)return"";const t=new Date(e),n=r=>String(r).padStart(2,"0");return`${n(t.getDate())}-${n(t.getMonth()+1)}-${t.getFullYear()}`}function Jr(e){const t=U(e),n=t.key,r=t.numbered;return[{block_id:"head",type:"letterhead",fields:[...r?[{key:"number",label:Uc[n]?.number??"Nummer",value:`{${n}.number}`}]:[],{key:"date",label:"Datum",value:`{${n}.date}`},...r?[{key:"due_date",label:"Vervaldatum",value:`{${n}.due_date}`}]:[{key:"valid_until",label:"Geldig tot",value:`{${n}.valid_until}`}],{key:"reference",label:"Referentie",value:`{${n}.reference}`}],recipient:["{customer.name}","{customer.contact}","{customer.address}","{customer.postal_code} {customer.city}"]},{block_id:"title",type:"heading",level:1,text:`{${n}.title}`},{block_id:"intro",type:"paragraph",text:Kt[n]??Kt.quote},{block_id:"period",type:"paragraph",text:`Periode: {${n}.period_from} t/m {${n}.period_to}`},{block_id:"note",type:"paragraph",text:`{${n}.note}`},{block_id:"lines",type:"table",columns:[{label:""}],rows:[]},{block_id:"totals",type:"totals",rows:[]},...r?[{block_id:"payment",type:"paragraph",text:`Betaling: {${n}.payment_term}. Wij verzoeken u het bedrag vóór {${n}.due_date} over te maken onder vermelding van {${n}.number}.`}]:[],{block_id:"terms",type:"paragraph",text:Ft[n]??Ft.quote}]}const $c=e=>({note:{key:`${U(e).key}.note`,exists:!0},period:{key:`${U(e).key}.period_from`,exists:!0}}),Uc={invoice:{number:"Factuurnummer"},credit_note:{number:"Creditnotanummer"}},Kt={quote:`Beste {customer.contact},
|
|
9
|
+
`:t==="mail"?"<br><br>-- <br>":"<br><br>"}${o.body}`:n}function ns(e){return e.endpoints??[]}function $(e){const t=(e??"").trim().toLowerCase();if(t)return t.split(/[-_]/)[0]||void 0}function rs(e){return $(e.contactLocale)??$(e.companyLocale)??$(e.organizationLocale)}function os(e,t,n,r){const o=e.filter(a=>a.key===t&&!a.archived);if(o.length===0)return;const i=$(n),s=$(r);return o.find(a=>$(a.locale)===i)??o.find(a=>$(a.locale)===s)??o.find(a=>!a.locale)??o[0]}const is=/\{([a-zA-Z0-9_.]+)\}/g;function ct(e,t){let n=e;for(const r of t.split(".")){if(n==null||typeof n!="object")return;n=n[r]}return n}function ss(e){return typeof e=="string"?e:typeof e=="number"||typeof e=="boolean"?String(e):""}function kn(e,t,n){const r=[];return{text:e.replace(is,(i,s)=>{const a=ct(t,s);return a==null||a===""?(r.includes(s)||r.push(s),n??`{${s}}`):ss(a)}),unresolved:r}}function Cn(e,t){if(!e)return!0;const n=ct(t,e.key);if(e.exists!==void 0){const r=n!=null&&n!==""&&n!==!1;return e.exists?r:!r}return e.equals!==void 0?n===e.equals:!0}function as(e,t,n,r,o){const i=[],s=[],a=new Set,u=l=>{const d=kn(l,t,o);for(const c of d.unresolved)i.includes(c)||i.push(c);return d.text};for(const l of e){if(l.block_id&&!Cn(n?.[l.block_id],t))continue;const d=l.block_id?r?.[l.block_id]:void 0;if(d&&l.block_id){a.add(l.block_id),s.push(...d);continue}switch(l.type){case"heading":case"paragraph":case"quote":s.push({...l,text:u(l.text)});break;case"callout":s.push({...l,...l.title?{title:u(l.title)}:{},text:u(l.text)});break;case"code":s.push(l);break;case"list":s.push({...l,items:l.items.map(c=>({...c.lead?{lead:u(c.lead)}:{},text:u(c.text)}))});break;case"table":s.push({...l,columns:l.columns.map(c=>({...c,label:u(c.label)})),rows:l.rows.map(c=>c.map(u)),...l.caption?{caption:u(l.caption)}:{}});break;case"kpi":s.push({...l,items:l.items.map(c=>({...c,value:u(c.value),label:u(c.label)}))});break;case"letterhead":s.push({...l,fields:l.fields.map(c=>({...c,value:u(c.value)})),...l.recipient?{recipient:l.recipient.map(u)}:{}});break;case"totals":s.push({...l,rows:l.rows.map(c=>({...c,label:u(c.label),amount:u(c.amount)})),...l.taxRows?{taxRows:l.taxRows.map(c=>({...c,label:u(c.label),amount:u(c.amount)}))}:{}});break;case"image":s.push({...l,url:u(l.url),...l.alt?{alt:u(l.alt)}:{}});break;default:s.push(l)}}return{blocks:s,unresolved:i,unusedSlots:Object.keys(r??{}).filter(l=>!a.has(l))}}function Nn(e){const t=e?.address,n=[t?.street,t?.houseNumber].filter(Boolean).join(" "),r=[t?.postalCode,t?.city].filter(Boolean).join(" ");return{name:e?.name??"",addressLines:[n,r,t?.country??""].filter(Boolean),footerLines:[e?.footerText??"",e?.kvkNumber?`KvK ${e.kvkNumber}`:"",e?.vatNumber?`Btw ${e.vatNumber}`:"",e?.iban?`IBAN ${e.iban}`:""].filter(Boolean),...e?.logo?{logo:e.logo}:{}}}function cs(e){return Nn({name:e?.billing?.companyName||e?.name||e?.displayName||"",address:e?.address,kvkNumber:e?.billing?.kvkNumber,vatNumber:e?.billing?.vatNumber,iban:e?.houseStyle?.iban,footerText:e?.houseStyle?.footerText,logo:e?.logo})}const wn=36e5,Rn=864e5,L=-1/0,ls=e=>e.score>L,z={urgent:40,high:25,normal:10,low:0};function us(e){return Object.fromEntries(e.map(t=>[t.resourceId,t]))}const ds=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i,vn=/\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;function Dn(e,t){return!!(e&&ds.test(e)||t&&vn.test(t))}const xn=3,Ln=600;function ps(e,t){return e>=xn||t>=Ln}const Pn=["list-unsubscribe","list-unsubscribe-post","list-id","precedence","auto-submitted","x-auto-response-suppress","feedback-id","x-mailer"];function fs(e){const t={};for(const n of e){const r=n.name?.toLowerCase();r&&n.value!==void 0&&Pn.includes(r)&&(t[r]=n.value)}return t}const ms=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|notifications?|bounce|postmaster|mailer)@/i,gs=/(^|[._+-])(newsletter|nieuwsbrief|marketing|mailing)@/i;function hs(e){const t=e.headers??{},n=e.from?.email,r=t["auto-submitted"]?.toLowerCase();if(r&&r!=="no"||t["x-auto-response-suppress"]||n&&ms.test(n))return"automated";const o=t.precedence?.toLowerCase();if(t["list-unsubscribe"]||t["list-unsubscribe-post"]||t["list-id"]||o==="bulk"||o==="list"||e.body&&vn.test(e.body)||n&&gs.test(n))return"marketing"}function $n(e,t){return e.lastActivityAt?!(e.seenBy??[]).includes(t):!1}const Un=["open"],Kn=1e3,Fn={urgent:1,high:4,normal:8,low:24},Bn=72;function Hn(e){return e.lastActivityAt??(e.createdAt?new Date(cn(e)).getTime():0)}function Gn(e,t){return Wn(t.remindersById?.[e.id],e,t.now)}function Wn(e,t,n){return!e||e.remindAt<=n?!1:!((t.lastActivityAt??0)>e.parkedAt&&t.lastActivityPreview?.direction==="inbound")}const jn=e=>rn(e)==="outbound_message",Vn=e=>Un.includes(e);function ke(e,t){return Math.max(0,(t-Hn(e))/wn)}function Yn(e,t){const n=e.assignedInboxId?t?.[e.assignedInboxId]:void 0;return typeof n=="number"&&n>0?n:Fn[e.priority??"normal"]}function ys(e){const t={};for(const n of e)typeof n.slaHours=="number"&&n.slaHours>0&&(t[n.id]=n.slaHours);return t}function Es(e,t,n){return!Vn(e.status)||e.firstResponseAt?!1:ke(e,t)>Yn(e,n)}function Xn(e,t){const n=e.lastActivityPreview;return n?.direction!=="outbound"||!jn(n.type)?!1:ke(e,t)<Bn}function _s(e,t){if(!Vn(e.status))return{score:L,reasons:[]};if(e.snoozedTill&&e.snoozedTill>t.now)return{score:L,reasons:[]};if(Xn(e,t.now))return{score:L,reasons:[]};if(Gn(e,t))return{score:L,reasons:[]};let n=0;const r=[],o=e.priority??"normal";z[o]>0&&(n+=z[o],r.push(`priority:${o}`)),$n(e,t.userId)&&(n+=20,r.push("unseen")),e.assignedUserId&&e.assignedUserId===t.userId&&(n+=15,r.push("assigned-to-you"));const i=ke(e,t.now);if(i>0){const u=Math.min(i*2,30);n+=u,i>=1&&r.push(`waiting:${Math.round(i)}h`)}const s=e.lastActivityPreview;return s?.type==="AI_ACTION_PROPOSED"&&(n+=30,r.push("awaiting-approval")),s?.direction==="outbound"&&jn(s.type)&&(n+=10,r.push("no-reply")),!e.firstResponseAt&&e.lastActivityPreview?.direction==="inbound"&&(n+=10,r.push("awaiting-reply")),(e.tags?.some(u=>u==="marketing"||u==="automated")||Dn(e.remoteParty?.resource,e.lastActivityPreview?.snippet))&&(n-=Kn,r.push("bulk")),{score:n,reasons:r}}const Ss=e=>!!e.assignedUserId||!!e.assignedInboxId,As=e=>e.status==="closed",bs=e=>({urgent:10,high:5,normal:2,low:1})[e.priority]||0,Ts=(e,t=30)=>e.title?.length<=t?e.title:`${e.title.substring(0,t)}...`;function Is(e,t){const n=e.labels??[];return n.find(r=>r.locale===t)?.label??n[0]?.label??e.url}function Ms(e,t,n){const r=e.translations??[];return r.find(o=>o.locale===t)??(n?r.find(o=>o.locale===n):void 0)??{locale:t}}const Ee=[{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 zn(e){const t=(e??"").toLowerCase();return Ee.find(n=>n.code===t)??Ee.find(n=>n.code===t.split("-")[0])}function Os(e){return zn(e)?.label??e}function ks(e){const t=zn(e);return t?t.english===t.label?`${t.english} (${t.code})`:`${t.english} — ${t.label} (${t.code})`:e}const lt=3;function qn(e,t){const n=new Set;let r=1,o=t.get(e)?.parentId;for(;o;){if(n.has(o)||(n.add(o),r++,r>lt+1))return 1/0;o=t.get(o)?.parentId}return r}function Cs(e,t,n){if(!e)return!0;if(e===t)return!1;const r=new Map(n.map(s=>[s.id,s]));if(!r.has(e)||t&&Qn(e,t,r))return!1;const o=qn(e,r),i=t?ut(t,n):1;return o+i<=lt}function Qn(e,t,n){const r=new Set;let o=n.get(e)?.parentId;for(;o;){if(o===t)return!0;if(r.has(o))return!1;r.add(o),o=n.get(o)?.parentId}return!1}function ut(e,t,n=new Set){if(n.has(e))return 1;n.add(e);const r=t.filter(o=>o.parentId===e);return r.length?1+Math.max(...r.map(o=>ut(o.id,t,n))):1}const Jn="en";function Zn(e){return e.defaultLocale||e.locale||Jn}function Ns(e){const t=new Set,n=[];for(const r of[Zn(e),...e.locales??[]])!r||t.has(r)||(t.add(r),n.push(r));return n}function ws(e,t,n){const r=e.translations??[];return r.find(o=>o.locale===t)?.name??(n?r.find(o=>o.locale===n)?.name:void 0)??e.name}const Ye=["lookup","condition","parallel","for-each"];function se(e){for(const t of e){if(!Ye.includes(t.type))return`staptype "${t.type}" mag niet meelezen (alleen ${Ye.join(", ")})`;if(t.type==="parallel")for(const n of t.branches??[]){const r=se(n);if(r)return r}if(t.type==="for-each"){const n=se(t.body??[]);if(n)return n}if(t.type==="condition"){const n=se(t.else??[]);if(n)return n}}return null}function Rs(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 vs(e,t){return e.filter(n=>n.enabled&&Rs(n.ownerScope,t))}function Ds(e){return e.credentialScope?e.credentialScope:(e.authMode??"header")==="header"||e.oauth?.scope==="org"?"shared":"per-user"}function xs(e){return`mcp__${e}__`}const Ls=1e3,Ps=2e3,$s=500,Us=12e3,Ks=4e3,er=["contact","company","work_item"];function Fs(e){if(!e)return!1;const t=e.slice(0,e.indexOf(":"));return er.includes(t)}const Bs=[{key:"high",label:"tax_high",percent:21,kind:"standard"},{key:"low",label:"tax_low",percent:9,kind:"reduced"},{key:"zero",label:"tax_zero",percent:0,kind:"zero"},{key:"reverse_charge",label:"tax_reverse_charge",percent:0,kind:"reverse_charge"},{key:"exempt",label:"tax_exempt",percent:0,kind:"exempt"}];function tr(e,t){return t.find(n=>n.key===e)??{key:e,label:e,percent:0,kind:"zero"}}function nr(e){if(e.kind!=="product")return 0;const t=1-(e.discountPercent??0)/100;return W(e.quantity*e.unitPriceCents*t)}function Hs(e,t,n){const r=e.map(l=>({...l,netCents:nr(l),taxCents:0})),o=new Map;for(let l=0;l<r.length;l++){if(r[l].kind!=="product"||r[l].optional)continue;const d=n??r[l].taxRateKey,c=o.get(d);c?c.push(l):o.set(d,[l])}const i=[];let s=0,a=0;for(const[l,d]of o){const c=tr(l,t),p=d.reduce((m,b)=>m+r[b].netCents,0),f=W(p*c.percent/100),y=Mn(f,d.map(m=>r[m].netCents));for(let m=0;m<d.length;m++)r[d[m]].taxCents=y[m];i.push({taxRateKey:l,netCents:p,taxCents:f}),s+=p,a+=f}const u=r.reduce((l,d)=>d.costPriceCents==null||d.optional?l:l+W(d.costPriceCents*d.quantity),0);return{lines:r,totals:{netCents:s,taxCents:a,grossCents:s+a,costCents:u,byRate:i}}}const Gs="onboarding-source",Ws=["support","billing","availability","sales","onboarding"],js=["keep","replace"],Ce=[{key:"shift",label:"kind_shift",capacity:!0,productive:!1,absent:!1,icon:"calendar-clock"},{key:"allocation",label:"kind_allocation",capacity:!1,productive:!0,absent:!1,icon:"briefcase"},{key:"meeting",label:"kind_meeting",capacity:!1,productive:!1,absent:!1,icon:"users"},{key:"travel",label:"kind_travel",capacity:!1,productive:!1,absent:!1,icon:"car"},{key:"training",label:"kind_training",capacity:!1,productive:!1,absent:!1,icon:"graduation-cap"},{key:"break",label:"kind_break",capacity:!1,productive:!1,absent:!1,icon:"coffee"},{key:"absence",label:"kind_absence",capacity:!1,productive:!1,absent:!0,approvable:!0,icon:"palmtree"},{key:"sick",label:"kind_sick",capacity:!1,productive:!1,absent:!0,icon:"thermometer"},{key:"holiday",label:"kind_holiday",capacity:!1,productive:!1,absent:!0,icon:"party-popper"}],rr={key:"unknown",label:"kind_unknown",capacity:!1,productive:!1,absent:!1};function R(e,t=Ce){return t.find(n=>n.key===e)??{...rr,key:e}}function j(e){return e==="published"||e==="approved"}function dt(e,t,n=Ce){if(e.workstreamId!==t)return!1;const r=R(e.kindKey,n);return r.absent?!1:r.productive||r.capacity}function Vs(e,t=Ce){if(!e.userId||!j(e.status))return!1;const n=R(e.kindKey,t);return n.capacity||n.productive||n.absent}const Ys=864e5;function or(e,t){return Math.round((t-e)/Ys)}function pt(e,t){const n=e.cycleMinutes.length;return n===0?0:(or(e.anchor,t)%n+n)%n}function ft(e,t){return e.effectiveFrom!==void 0&&t<e.effectiveFrom?0:e.cycleMinutes[pt(e,t)]??0}function mt(e,t){return e.startTimes?.[pt(e,t)]}function gt(e,t,n,r){const o=e.filter(a=>a.effectiveFrom===void 0||a.effectiveFrom<=r),i=a=>a.sort((u,l)=>(l.effectiveFrom??0)-(u.effectiveFrom??0))[0],s=i(o.filter(a=>a.userId===t));return s||i(o.filter(a=>!a.userId&&a.teamId&&n.includes(a.teamId)))}function ir(e,t,n){return e.filter(r=>r.userId===t&&(r.effectiveFrom===void 0||r.effectiveFrom<=n)).sort((r,o)=>(o.effectiveFrom??0)-(r.effectiveFrom??0))[0]}const Xe=864e5;function Xs(e){const t=Math.max(1,Math.round((e.to-e.from)/Xe));return Array.from({length:t},(n,r)=>e.from+r*Xe)}function ze(e,t,n,r){const o=Math.min(t,r)-Math.max(e,n);return o>0?o/1e3:0}const xt={interval:0,day:1,week:2};function zs(e,t){const{entries:n,patterns:r=[],terms:o=[]}=t,i=n.filter(c=>c.userId&&j(c.status)&&R(c.kindKey).capacity),s=n.filter(c=>c.userId&&j(c.status)&&R(c.kindKey).absent),a=t.userIds??[...new Set([...i.map(c=>c.userId),...r.map(c=>c.userId),...o.map(c=>c.userId)])].filter(c=>!!c),u={};let l="interval";const d=c=>{xt[c]>xt[l]&&(l=c)};for(const c of a){const p=t.teamIdsOf?.(c)??[];let f=0,y=0,m=0;for(const g of Xs(e)){const A=Math.max(g,e.from),v=Math.min(g+Xe,e.to);m++;const N=i.filter(O=>O.userId===c).reduce((O,Mt)=>O+ze(Mt.start,Mt.end,A,v),0);if(N>0){f+=N;continue}const k=gt(r,c,p,g),w=k?ft(k,g):0;if(k&&w>0){f+=w*60,d(mt(k,g)?"interval":"day");continue}k||y++}if(y>0){const g=ir(o,c,e.from);g&&(f+=g.weeklyMinutes*60*(y/7),d("week"))}const b=s.filter(g=>g.userId===c).reduce((g,A)=>g+ze(A.start,A.end,e.from,e.to),0),h=Math.max(0,f-b);(h>0||m>0)&&(u[c]=h)}return{seconds:Object.values(u).reduce((c,p)=>c+p,0),precision:l,byUser:u}}function qs(e,t){if(!e.some(a=>a.userId))return[];const n="",r=new Map;for(const a of e){const u=a.userId??n;r.set(u,(r.get(u)??0)+a.seconds)}const i=[...new Set([...Object.keys(t.byUser),...[...r.keys()].filter(a=>a!==n)])].map(a=>{const u=r.get(a)??0,l=t.byUser[a]??0;return{userId:a,requiredSeconds:u,capacitySeconds:l,netSeconds:l-u}});i.sort((a,u)=>a.netSeconds-u.netSeconds);const s=r.get(n)??0;return s>0&&i.push({requiredSeconds:s,capacitySeconds:0,netSeconds:-s}),i}function Qs(e,t,n,r){const o=e.filter(s=>s.userId&&j(s.status)&&!R(s.kindKey).absent),i=Object.entries(r.byUser).map(([s,a])=>{let u=0,l=0;for(const d of o){if(d.userId!==s||R(d.kindKey).capacity&&!d.workstreamId)continue;const c=ze(d.start,d.end,n.from,n.to);c<=0||(dt(d,t)?u+=c:l+=c)}return{userId:s,capacitySeconds:a,onThisSeconds:u,elsewhereSeconds:l,freeSeconds:Math.max(0,a-u-l)}});return i.sort((s,a)=>a.freeSeconds-s.freeSeconds),i}const Js="demand-source",Lt=1e3;function Zs(e,t){let n=1;for(let r=1;r<=e;r++)n=t*n/(r+t*n);return n}function sr(e,t){if(e<=0)return 1;if(t<=0)return 0;if(e<=t)return 1;const n=Zs(e,t),r=t/e;return n/(1-r*(1-n))}function ar(e,t,n,r){return r<=0?1:e<=t?0:1-sr(e,t)*Math.exp(-(e-t)*n/r)}function cr(e,t,n){return n<=0?0:e*t/n}function lr(e,t,n,r){if(e<=0||t<=0)return 0;const o=cr(e,t,n);if(o<=0)return 0;const i=r.serviceLevelPercent/100,s=r.maxOccupancyPercent?r.maxOccupancyPercent/100:void 0;for(let a=Math.max(1,Math.ceil(o));a<=Lt;a++)if(!(a<=o)&&!(ar(a,o,r.targetSeconds,t)<i)&&!(s&&o/a>s))return a;return Lt}const ea=36e5,ta=864e5;function na(e){return e==="day"?ta:ea}function ra(e,t){return e.start<t.end&&t.start<e.end}function ae(e,t,n){const r=Math.min(e.end,n)-Math.max(e.start,t);return r>0?r/1e3:0}function ur(e,t,n){const r=e.handleSeconds??0,o=e.seconds??(e.volume!==void 0?e.volume*r:0);if(o<=0&&!e.volume)return{seconds:0,headcount:0};const i=(t.unplannedLossPercent??0)/100,s=i>0&&i<1?1/(1-i):1;if(t.model==="queue"&&e.volume!==void 0&&r>0){const a=lr(e.volume,r,n,t);return{seconds:o,headcount:a*s}}return{seconds:o,headcount:o/n*s}}function oa(e){const{entries:t,workstreamId:n,staffing:r,demand:o,range:i}=e,s=e.grain??"hour",a=na(s),u=a/1e3,l=e.kinds,d=t.filter(m=>j(m.status)),c=d.filter(m=>dt(m,n,l)),p=d.filter(m=>R(m.kindKey,l).capacity),f=d.filter(m=>R(m.kindKey,l).absent),y=[];for(let m=G(i.from,s);m<i.to;m+=a){const b=m+a,h=H(m,s);let g=0;for(const O of c)g+=ae(O,m,b);let A=0;for(const O of p)A+=ae(O,m,b);let v=0;for(const O of f)v+=ae(O,m,b);const N=o?.[h]??{},k=ur(N,r,u),w=g/u;y.push({period:h,forecastVolume:N.volume,requiredSeconds:k.seconds,requiredHeadcount:k.headcount,scheduledSeconds:g,scheduledHeadcount:w,netHeadcount:w-k.headcount,capacitySeconds:A,absentSeconds:v})}return y}function dr(e,t){return e.workTypeKey??t?.defaultWorkTypeKey}function ia(e,t,n){const r=dr(e,t);return r?n.find(o=>o.key===r)?.defaultBillable??!1:!1}function sa(e){return e.filter(t=>t.netHeadcount<0&&t.requiredHeadcount>0)}const aa=36e5,qe=6048e5,pr=8,ca=.5,la=2;function ua(e){const t=Number(e.slice(0,4)),n=Number(e.slice(5,7)),r=Number(e.slice(8,10)),o=e.length>10?Number(e.slice(11,13)):0;return Date.UTC(t,n-1,r,o)}function da(e,t,n){const r=[];for(let i=0;i<n;i++){const s=t-i*qe,a=s-qe;let u=0,l=!1;for(const[d,c]of e)d>=a&&d<s&&(u+=c,l=!0);l&&r.push(u)}if(r.length<2)return 1;const o=r.reduce((i,s)=>i+s,0)/r.length;return o<=0?1:Math.min(la,Math.max(ca,r[0]/o))}function pa(e,t){if(!e?.length)return;let n;for(const r of e)t>=r.from&&t<r.to&&(n=r);return n}function fa(e,t,n){const r=Math.max(1,n?.weeks??pr),o=new Map,i=new Set;for(const u of e)o.set(ua(u.period),u.value),i.add(u.period.slice(0,10));const s=da(o,G(t.from,"hour"),r),a=[];for(let u=G(t.from,"hour");u<t.to;u+=aa){let l=0,d=0;for(let f=1;f<=r;f++){const y=u-f*qe,b=o.get(y)??(i.has(H(y,"day"))?0:void 0);if(b===void 0)continue;const h=r-f+1;l+=b*h,d+=h}let c=d>0?l/d*s:0;const p=pa(n?.adjustments,u);p?.absoluteVolume!==void 0?c=p.absoluteVolume:p?.factor!==void 0&&(c*=p.factor),a.push({period:H(u,"hour"),volume:c})}return a}const fr="schedule_entry",mr="workstream";function ma(e){return`${fr}:${e}`}function ga(e){return`${mr}:${e}`}const Qe=36e5,B=864e5;function ha(e,t){const n=t==="day"?B:Qe,r=[];for(let o=G(e.from,t);o<e.to;o+=n)r.push(o);return r}function Pt(e){const t=Math.max(1,Math.round((e.to-e.from)/B));return Array.from({length:t},(n,r)=>e.from+r*B)}function Fe(e,t,n,r){const o=Math.min(t,r)-Math.max(e,n);return o>0?o/1e3:0}function ya(e,t,n={}){const r=n.grain??"hour",o=ha(t,r),i=r==="day"?B:Qe,s=new Map(o.map(c=>[c,0])),a=e.filter(c=>c.userId&&R(c.kindKey).capacity),u=n.userIds?.length?new Set(n.userIds):null,l=new Set;for(const c of a)if(!(u&&c.userId&&!u.has(c.userId))){for(const p of o){const f=Fe(c.start,c.end,p,p+i);f>0&&s.set(p,(s.get(p)??0)+f)}for(const p of Pt(t))Fe(c.start,c.end,p,p+B)>0&&l.add(`${c.userId}:${p}`)}const d=n.userIds??[...new Set([...a.map(c=>c.userId),...(n.patterns??[]).map(c=>c.userId)])].filter(c=>!!c);if(n.patterns?.length)for(const c of d){const p=n.teamIdsOf?.(c)??[];for(const f of Pt(t)){if(l.has(`${c}:${f}`))continue;const y=gt(n.patterns,c,p,f);if(!y)continue;const m=ft(y,f);if(m<=0)continue;const b=mt(y,f);if(b){const[A,v]=b.split(":").map(Number),N=f+A*Qe+(v??0)*6e4,k=N+m*6e4;for(const w of o){const O=Fe(N,k,w,w+i);O>0&&s.set(w,(s.get(w)??0)+O)}continue}const h=o.filter(A=>A>=f&&A<f+B);if(!h.length)continue;const g=m*60/h.length;for(const A of h)s.set(A,(s.get(A)??0)+g)}}return o.map(c=>({period:H(c,r),weight:s.get(c)??0}))}function gr(e,t){if(e<=0||!t.length)return[];const n=t.reduce((r,o)=>r+Math.max(0,o.weight),0);if(n<=0){const r=e/t.length;return t.map(o=>({period:o.period,seconds:r}))}return t.filter(r=>r.weight>0).map(r=>({period:r.period,seconds:e*r.weight/n}))}function Ea(e,t,n){const r=new Map;for(const o of e){const i=o.by?t.filter(a=>n(a.period)<o.by):t,s=i.length?i:t;for(const a of gr(o.seconds,s)){const u=`${a.period}|${o.userId??""}`,l=r.get(u);l?l.seconds+=a.seconds:r.set(u,{...a,userId:o.userId})}}return[...r.values()].sort((o,i)=>o.period.localeCompare(i.period)||(o.userId??"").localeCompare(i.userId??""))}function hr(e){switch(e.kind){case"user":return`user:${e.userId}`;case"team":return`team:${e.teamId}`;case"org":return"org"}}function _a(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),o=t.slice(n+1).trim();if(o){if(r==="user")return{kind:"user",userId:o};if(r==="team")return{kind:"team",teamId:o}}}function yr(e){return hr(e)}function Er(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 _r=Er;function Sa(e){return e.agentId?{kind:"user",userId:e.agentId}:_r(e.ownerScope)}function Aa(e){return yr(e)}function ba(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 Ta(e,t){return e.targets.find(n=>n.activityTypes.includes(t))}function Ia(e,t){if(t)return e.targets.find(n=>n.id===t)}function Sr(e){return e?.kind==="assignment"}function Ma(e){const{trigger:t,agentId:n,target:r,activityType:o,assigneeUserId:i,authorUserId:s}=e;return Sr(t)?n?r?r.activityTypes.includes(o)?i?i!==n?"assigned to someone else":s&&s===n?"the agent assigned this to itself, which would restart its own run":null:`no assignee found at ${r.assigneePath}`:`activity type ${o} 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 Oa(e){return q(e).replace(/__/g," · ").replace(/\./g," · ").replace(/_/g," ")}function q(e){return e.startsWith("tool:")?e.slice(5):e}function Ar(e){const t=q(e).split("__");return t[t.length-1]||q(e)}function ka(e){const t=Ar(e).replace(/[_.]+/g," ").trim();return t?t.charAt(0).toUpperCase()+t.slice(1):q(e)}const Ca=[{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",onlyFor:["INTERACTION_STATUS_CHANGED"]},{name:"toStatus",type:"string",onlyFor:["INTERACTION_STATUS_CHANGED"]},{name:"toCategory",type:"string",onlyFor:["WORK_ITEM_STATUS_CHANGED"]},{name:"contactId",type:"string"},{name:"companyId",type:"string"},{name:"priority",type:"string"},{name:"inboxId",type:"string"},{name:"topicId",type:"string"},{name:"assigneeUserId",type:"string"}];function Na(e,t){return!e.onlyFor||!t?.length?!0:t.some(n=>e.onlyFor?.includes(n))}const wa={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 br(e){return`${e.type}:${e.id}`}const Tr="interaction";function Ir(e){return e?.type===Tr?e.id:void 0}const Mr=64,Or=8e3;function Ra(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),Mr),Or)}const va={kind:"workflow",steps:[]};function Da(e){return e?.kind==="workflow"?e.steps:[]}function xa(e){return e?.kind==="procedure"?e.procedure:void 0}function kr(e){const t=e?.approved??0,n=t+(e?.rejected??0);return{total:n,rate:n?t/n:0}}const Cr=10,Nr=.9;function La(e){const{total:t,rate:n}=kr(e);return t>=Cr&&n>=Nr}const wr=["done","escalated","failed","stopped"];function Pa(e){return wr.includes(e)}function Rr(e){return e==="waiting"}function $a(e){return e==="running"||Rr(e)}function ht(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}function Ua(e){const t=ht(e);return t?br(t):void 0}function Ka(e){return Ir(ht(e))}function Fa(e){const t=[],n=new Map;for(const r of[...e].sort(Ba)){const o=n.get(r.emoji);if(o){o.push(r.actor);continue}t.push(r.emoji),n.set(r.emoji,[r.actor])}return t.map(r=>{const o=n.get(r);return{emoji:r,count:o.length,actors:o}}).sort((r,o)=>o.count-r.count||t.indexOf(r.emoji)-t.indexOf(o.emoji))}const Ba=(e,t)=>(e.createdAt??0)-(t.createdAt??0);function Ha(e,t){return t?e.actors.some(n=>n.type==="user"&&n.id===t):!1}const Je=6e4,Ga=36e5,Q=864e5,vr=800;function $t(e,t){const n=Date.UTC(e,t+1,0);return n-new Date(n).getUTCDay()*Q+Ga}function Wa(e){const t=new Date(e).getUTCFullYear();return e>=$t(t,2)&&e<$t(t,9)}function Dr(e,t){const n=t.dst==="eu"&&Wa(e)?60:0;return(t.utcOffsetMinutes+n)*Je}function ja(e){return(e+3)%7+1}function xr(e,t){const n=Dr(e,t),r=e+n,o=Math.floor(r/Q);if(!t.days.includes(ja(o)))return null;const i=o*Q;return{open:i+t.fromMinutes*Je-n,close:i+t.toMinutes*Je-n}}function Lr(e,t){const n=Dr(e,t),r=e+n;return(Math.floor(r/Q)+1)*Q-n}function _e(e,t,n){if(t<=e)return 0;if(!n)return t-e;let r=0,o=e;for(let i=0;i<vr&&o<t;i++){const s=xr(o,n);if(s){const a=Math.max(o,s.open),u=Math.min(t,s.close);u>a&&(r+=u-a)}o=Lr(o,n)}return r}function Ne(e,t,n){if(!n)return e+t;let r=t,o=e;for(let i=0;i<vr;i++){const s=xr(o,n);if(s){const a=Math.max(o,s.open);if(s.close>a){const u=s.close-a;if(r<=u)return a+r;r-=u}}o=Lr(o,n)}return e+t}function Va(e){const t=/^([01]\d|2[0-3]):([0-5]\d)$/.exec(e);return t?Number(t[1])*60+Number(t[2]):null}const Se=1,Ae=2,be=4;function Ya(e){return e==="snoozed"?Se:Ae}function we(e){const t=e.calendar;return t&&Array.isArray(t.days)?t:null}const Xa=["speed_of_answer","first_response","next_response","resolution","close"],za=["snoozed","waiting_for_customer"],qa=6e4,Pr=["speed_of_answer","first_response","next_response"],Qa=[...Pr,"resolution","close"];function Z(e){return e.state==="running"||e.state==="paused"}function Ja(e,t){return Z(e)?{state:(e.state==="paused"?e.remainingMs>0:t<=e.dueAt)?"hit":"missed",settledAt:Math.max(t,e.startedAt)}:null}function Ut(e){return Z(e)?{state:"void"}:null}function Za(e,t,n,r){if(!Z(e)||(e.pauseBits&t)!==0)return null;const o=e.pauseBits|t;return e.state==="paused"?{pauseBits:o}:{pauseBits:o,state:"paused",remainingMs:_e(n,e.dueAt,r)}}function ec(e,t,n,r){if(!Z(e)||(e.pauseBits&t)===0)return null;const o=e.pauseBits&~t;return o!==0?{pauseBits:o}:{pauseBits:o,state:"running",dueAt:Ne(n,e.remainingMs,r)}}function tc({event:e,at:t,now:n,clocks:r,profile:o}){const i=we(o),s=Math.min(t,n),a=r.map(h=>({...h})),u=[],l=(h,g)=>{g&&(u.push({op:"patch",clockId:h.id,patch:g}),Object.assign(h,g))},d=h=>{for(const g of a)g.metric===h&&l(g,Ja(g,s))},c=h=>{for(const g of a)h.includes(g.metric)&&l(g,Ut(g))},p=h=>{for(const g of a)l(g,Za(g,h,s,i))},f=h=>{for(const g of a)l(g,ec(g,h,s,i))},y=h=>a.reduce((g,A)=>A.metric===h?Math.max(g,A.attempt):g,0)+1,m=h=>a.some(g=>g.metric===h&&Z(g)),b=(h,g)=>{const A=o.targets.find(N=>N.metric===h);if(!A)return;const v=A.minutes*qa;u.push({op:"start",metric:h,attempt:y(h),startedAt:g,targetMs:v,dueAt:Ne(g,v,i)})};switch(e){case"apply":{for(const h of a)h.profileId!==o.id&&l(h,Ut(h));for(const h of o.targets){if(h.metric==="next_response")continue;a.some(A=>A.metric===h.metric&&A.profileId===o.id)||b(h.metric,s)}break}case"answered":d("speed_of_answer");break;case"outbound":{d("first_response"),d("next_response"),o.pauseOn.includes("waiting_for_customer")&&p(Ae);break}case"inbound":{f(Ae),!m("first_response")&&!m("next_response")&&b("next_response",s);break}case"resolved":d("resolution");break;case"closed":d("close"),d("resolution"),c(Pr);break;case"reopened":m("resolution")||b("resolution",s),m("close")||b("close",s);break;case"snoozed":o.pauseOn.includes("snoozed")&&p(Se);break;case"unsnoozed":f(Se);break;case"hold":p(be);break;case"unhold":f(be);break;case"discarded":c(Qa);break}return u}function $r(e){return e.state==="running"||e.state==="paused"}function nc(e){return(e.pauseBits&be)!==0}function Te(e,t){const n=we(e);return e.state==="paused"?e.remainingMs:t>=e.dueAt?-_e(e.dueAt,t,n):_e(t,e.dueAt,n)}function rc(e,t){return e.state==="paused"?Ne(t,e.remainingMs,we(e)):e.dueAt}function oc(e,t){const n=e.filter($r);if(!n.length)return;const r=n.filter(i=>i.state==="running");return(r.length?r:n).reduce((i,s)=>Te(s,t)<Te(i,t)?s:i)}function ic(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=Te(e,t);return n<=0?"breached":n<=e.targetMs/5?"urgent":"running"}function sc(e){const t=Math.floor(Math.abs(e)/1e3),n=Math.floor(t/86400),r=Math.floor(t%86400/3600),o=Math.floor(t%3600/60);return n?r?`${n}d ${r}u`:`${n}d`:r?o?`${r}u ${o}m`:`${r}u`:o?`${o}m`:`${t%60}s`}const Ur="strategy_item";function yt(e){return`${Ur}:${e}`}function ac(e,t=25){const n=new Set([yt(e.id)]);for(const r of e.ancestorKeys??[])n.add(r);return Array.from(n).slice(0,t)}function cc(e){return e?[...e.ancestorKeys??[],yt(e.id)]:[]}const ee=[{key:"area",label:"level_area",order:10,measurable:!1,icon:"compass"},{key:"objective",label:"level_objective",order:20,measurable:!0,icon:"target"},{key:"key_result",label:"level_key_result",order:30,measurable:!0,icon:"gauge"}],Kr=999,Fr=7;function Br(e,t=ee){return t.find(n=>n.key===e)}function Ie(e,t=ee){return Br(e,t)?.order??Kr}function lc(e,t,n=ee){return Ie(t,n)<=Ie(e,n)}function uc(e,t=ee){const n=Ie(e,t);return t.filter(o=>o.order>n).sort((o,i)=>o.order-i.order)[0]?.key??e}function dc(e){const t=e.trim().toLowerCase();return t?t.includes("key result")||t.includes("keyresult")||t==="kr"?"key_result":t.includes("objective")||t.includes("goal")||t.includes("doel")?"objective":t.includes("focus")||t.includes("area")||t.includes("theme")?"area":null:null}const Ze={pending:"open",on_track:"open",at_risk:"open",off_track:"open",paused:"paused",achieved:"closed",missed:"closed"};function pc(e){return Ze[e]??"open"}function fc(e){return Object.keys(Ze).filter(t=>e.includes(Ze[t]))}const mc=864e5,Re=e=>e<=0?0:e>1?1:e;function gc(e,t){const{direction:n}=e,r=e.startValue??0,o=e.targetValue??0;if(!Number.isFinite(t))return 0;const i=n==="down"?t<=o:t>=o,s=o-r;return(n==="down"?s<0:s>0)?Re((t-r)/s):i?1:0}function hc(e,t){const{startDate:n,targetDate:r}=e;if(!(typeof n!="number"||typeof r!="number")&&!(r<=n))return Re((t-n)/(r-n))}const Hr=.1,Gr=.25;function yc(e,t){if(typeof e!="number"||typeof t!="number")return;if(e>=1)return"achieved";const n=t-e;return n>=Gr?"off_track":n>=Hr?"at_risk":"on_track"}function Ec(e,t){if(t)return Re(e/t)}function _c(e){const t=e.map(n=>n.progress?.ratio).filter(n=>typeof n=="number"&&Number.isFinite(n));if(t.length)return Re(t.reduce((n,r)=>n+r,0)/t.length)}function Sc(e,t){const n=e.lastCheckInAt??e.createdAt;if(typeof n!="number")return 0;const r=(e.checkInEveryDays??Fr)*mc,o=t-n-r;return o>0?o:0}function Ac(e){return e.targetDate??Number.MAX_SAFE_INTEGER}function bc(e,t){const n=e.accumulatedSeconds||0;return e.runningSince?n+Math.max(0,Math.floor((t-e.runningSince)/1e3)):n}function Tc(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 Ic(e){const t=Math.max(0,Math.round(e/60));return`${Math.floor(t/60)}:${String(t%60).padStart(2,"0")}`}function Mc(e){const t=Math.max(0,Math.floor(e)),n=i=>String(i).padStart(2,"0"),r=Math.floor(t/60)%60,o=Math.floor(t/3600);return o>0?`${o}:${n(r)}:${n(t%60)}`:`${n(r)}:${n(t%60)}`}function Wr(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function Oc(e,t){const n=Wr(e)||"werksoort",r=new Set(t);if(!r.has(n))return n;for(let o=2;o<500;o++){const i=`${n}-${o}`;if(!r.has(i))return i}return`${n}-${r.size+1}`}function kc(e,t){const n=e.ownerScope;return!n||n.kind==="org"?!0:t.includes(n.teamId)}function Cc(e){return e.filter(t=>!t.archived).sort(jr)}function jr(e,t){const n=(e.order??0)-(t.order??0);return n!==0?n:(e.label||"").localeCompare(t.label||"")}const Vr=20,Yr=20,ce=300;function P(e){return e.toLowerCase().replace(/[^\p{L}\p{N}\s]/gu," ").replace(/\s+/g," ").trim()}function Xr(e){const t=e.replace(/\s+/g," ").trim();if(t.length<=ce)return t;const n=t.slice(0,ce),r=Math.max(n.lastIndexOf(". "),n.lastIndexOf("! "),n.lastIndexOf("? "));return r>ce*.6?n.slice(0,r+1):`${n.trimEnd()}…`}function Nc(e,t){const n=Xr(t.text),r=P(n);if(!r||(e.examples??[]).some(s=>P(s)===r))return null;const o=e.exampleCandidates??[],i=o.findIndex(s=>P(s.text)===r);if(i>=0){if(o[i].corrected||!t.corrected)return null;const s=[...o];return s[i]={...s[i],corrected:!0,addedAt:t.addedAt},Kt(s)}return Kt([{...t,text:n},...o]).slice(0,Yr)}function Kt(e){return[...e].sort((t,n)=>Number(n.corrected)-Number(t.corrected)||n.addedAt-t.addedAt)}function wc(e,t){const n=P(t),r=(e.examples??[]).filter(i=>i.trim());return{examples:r.some(i=>P(i)===n)?r:[...r,t].slice(-Vr),exampleCandidates:zr(e,t)}}function zr(e,t){const n=P(t);return(e.exampleCandidates??[]).filter(r=>P(r.text)!==n)}function qr(e,t){const n=e.ownerScope;return n?n.kind==="org"?!0:n.kind==="team"?!!t&&n.teamId===t:!1:!1}function Rc(e,t){return e.filter(n=>qr(n,t))}const ve=[{key:"quote",label:"kind_quote",numbered:!1,signFlip:!1,statuses:["draft","sent","accepted","rejected","expired","cancelled"],path:"quotes",issuedStatus:"sent"},{key:"order",label:"kind_order",numbered:!1,signFlip:!1,statuses:["draft","confirmed","delivered","cancelled"],path:"orders",issuedStatus:"confirmed"},{key:"invoice",label:"kind_invoice",numbered:!0,signFlip:!1,statuses:["draft","open","paid","overdue","cancelled"],path:"invoices",issuedStatus:"open"},{key:"credit_note",label:"kind_credit_note",numbered:!0,signFlip:!0,statuses:["draft","open","settled","cancelled"],path:"invoices",issuedStatus:"open"}],Qr=["quote","order","invoice"];function vc(){const e=new Map;for(const t of ve)Qr.includes(t.key)&&(e.has(t.path)||e.set(t.path,t));return[...e.values()]}function U(e){return ve.find(t=>t.key===e)??{key:e,label:e,numbered:!1,signFlip:!1,statuses:["draft"],path:"quotes",issuedStatus:"draft"}}function Dc(e){return e.issuedAt!=null}const xc=["status","fileRef","number","externalIds","postedAt","dunning","updatedAt"];function Jr(e,t){const n=U(t).signFlip!==U(e.kindKey).signFlip,r=e.lines.map(o=>({...o,quantity:n?-o.quantity:o.quantity,netCents:0,taxCents:0}));return{kindKey:t,sourceTransactionId:e.id,agreementId:e.agreementId,version:1,businessEntityId:e.businessEntityId,companyId:e.companyId,contactId:e.contactId,dealItemId:e.dealItemId,ownerScope:e.ownerScope,ownerUserId:e.ownerUserId,title:e.title,reference:e.reference,currency:e.currency,status:"draft",lines:r,totals:{netCents:0,taxCents:0,grossCents:0,byRate:[]},taxOverrideKey:e.taxOverrideKey,introText:e.introText,termsText:e.termsText,paymentTerm:e.paymentTerm,deliveredAt:e.deliveredAt,periodFrom:e.periodFrom,periodTo:e.periodTo,source:e.source}}function Lc(e){return{...Jr(e,e.kindKey),sourceTransactionId:e.sourceTransactionId,previousVersionId:e.id,version:e.version+1,lines:e.lines.map(n=>({...n})),totals:e.totals}}function Pc(e,t={}){const n=U(e.kindKey),r=e.totals??{netCents:0,taxCents:0,grossCents:0};return{customer:{name:t.companyName??"",contact:t.contactName??"",address:Kc(t.companyAddress),street:t.companyAddress?.street??"",house_number:t.companyAddress?.houseNumber??"",postal_code:t.companyAddress?.postalCode??"",city:t.companyAddress?.city??"",country:t.companyAddress?.country??""},organization:{name:t.organizationName??""},[n.key]:{number:e.number??"",title:e.title??"",reference:e.reference??"",version:String(e.version??1),date:K(e.issuedAt),valid_until:K(e.expiresAt),due_date:K(e.dueAt),delivery_date:K(e.deliveredAt),period_from:K(e.periodFrom),period_to:K(e.periodTo),payment_term:e.paymentTerm?.label??"",note:e.introText??"",terms:e.termsText??""},totals:{net:x(r.netCents),tax:x(r.taxCents),gross:x(r.grossCents)}}}function $c(e,t=[],n=Zr){const r=e.totals??{netCents:0,grossCents:0,byRate:[]},o=a=>t.find(u=>u.key===a)?.percent??0,i={block_id:"lines",type:"table",columns:[{label:n.description},{label:n.quantity,align:"right"},{label:n.unitPrice,align:"right"},{label:n.net,align:"right"}],rows:(e.lines??[]).map(a=>a.kind==="text"?[a.name,"","",""]:[Uc(a.name,a.description,a.optional,n.optional),Fc(a.quantity),x(a.unitPriceCents),x(a.netCents)])},s={block_id:"totals",type:"totals",rows:[{label:n.net,amount:x(r.netCents)},{label:n.gross,amount:x(r.grossCents),emphasis:!0}],taxRows:r.byRate.map(a=>({label:`${n.tax} ${o(a.taxRateKey)}%`,amount:x(a.taxCents)}))};return{lines:[i],totals:[s]}}const Zr={description:"Omschrijving",optional:"optioneel",quantity:"Aantal",unitPrice:"Stuksprijs",net:"Netto",tax:"Btw",gross:"Totaal"};function Uc(e,t,n,r){const o=t?`${e} — ${t}`:e;return n?`${o} (${r})`:o}function Kc(e){return e?.street?[e.street,e.houseNumber].filter(Boolean).join(" "):""}function Fc(e){return Number.isInteger(e)?String(e):String(e).replace(".",",")}function K(e){if(!e)return"";const t=new Date(e),n=r=>String(r).padStart(2,"0");return`${n(t.getDate())}-${n(t.getMonth()+1)}-${t.getFullYear()}`}function eo(e){const t=U(e),n=t.key,r=t.numbered;return[{block_id:"head",type:"letterhead",fields:[...r?[{key:"number",label:Hc[n]?.number??"Nummer",value:`{${n}.number}`}]:[],{key:"date",label:"Datum",value:`{${n}.date}`},...r?[{key:"due_date",label:"Vervaldatum",value:`{${n}.due_date}`}]:[{key:"valid_until",label:"Geldig tot",value:`{${n}.valid_until}`}],{key:"reference",label:"Referentie",value:`{${n}.reference}`}],recipient:["{customer.name}","{customer.contact}","{customer.address}","{customer.postal_code} {customer.city}"]},{block_id:"title",type:"heading",level:1,text:`{${n}.title}`},{block_id:"intro",type:"paragraph",text:Ft[n]??Ft.quote},{block_id:"period",type:"paragraph",text:`Periode: {${n}.period_from} t/m {${n}.period_to}`},{block_id:"note",type:"paragraph",text:`{${n}.note}`},{block_id:"lines",type:"table",columns:[{label:""}],rows:[]},{block_id:"totals",type:"totals",rows:[]},...r?[{block_id:"payment",type:"paragraph",text:`Betaling: {${n}.payment_term}. Wij verzoeken u het bedrag vóór {${n}.due_date} over te maken onder vermelding van {${n}.number}.`}]:[],{block_id:"terms",type:"paragraph",text:Bt[n]??Bt.quote}]}const Bc=e=>({note:{key:`${U(e).key}.note`,exists:!0},period:{key:`${U(e).key}.period_from`,exists:!0}}),Hc={invoice:{number:"Factuurnummer"},credit_note:{number:"Creditnotanummer"}},Ft={quote:`Beste {customer.contact},
|
|
10
10
|
|
|
11
11
|
Hierbij onze offerte. Hieronder vindt u de specificatie.`,order:`Beste {customer.contact},
|
|
12
12
|
|
|
@@ -14,34 +14,34 @@ Hierbij de bevestiging van uw opdracht.`,invoice:`Beste {customer.contact},
|
|
|
14
14
|
|
|
15
15
|
Hierbij onze factuur. Hieronder vindt u de specificatie.`,credit_note:`Beste {customer.contact},
|
|
16
16
|
|
|
17
|
-
Hierbij onze creditnota. De onderstaande bedragen worden met u verrekend.`},Ft={quote:"Genoemde bedragen zijn exclusief btw tenzij anders vermeld. Deze offerte is geldig tot {quote.valid_until}.",order:"Genoemde bedragen zijn exclusief btw tenzij anders vermeld.",invoice:"Genoemde bedragen zijn exclusief btw tenzij anders vermeld.",credit_note:"Genoemde bedragen zijn exclusief btw tenzij anders vermeld."},Kc=Jr("quote"),Zr=Re.map(e=>e.key),eo="product";function to(e,t){return`${e}:${t}`}function Fc(e){return`${eo}:${e}`}function Bc(e){const t=e.indexOf(":");if(t<0)return;const n=e.slice(0,t);return Zr.includes(n)?e.slice(t+1):void 0}function Hc(e){const t=new Set([to(e.kindKey,e.id)]);return e.companyId&&t.add(`company:${e.companyId}`),e.contactId&&t.add(`contact:${e.contactId}`),e.dealItemId&&t.add(`work_item:${e.dealItemId}`),Array.from(t)}const Wc=4;function Gc(e,t){const n=String(t).padStart(Math.max(1,e.padding),"0");return`${e.prefix}${e.period?`${e.period}-`:""}${n}`}function jc(e,t=Date.now()){return e==="year"?String(new Date(t).getFullYear()):""}const Vc=["cash","credit","direct_debit","card","other"];function Yc(e,t){return e+Math.max(0,Math.round(t))*24*60*60*1e3}function Xc(e,t){const n=new Map;for(const r of e)r.businessEntityId||n.set(r.code,r);if(t)for(const r of e)r.businessEntityId===t&&n.set(r.code,r);return[...n.values()]}function zc(e){return{code:e.code,label:e.label,method:e.method,dueDays:e.dueDays}}const qc=[{code:"14D",label:"Binnen 14 dagen",method:"credit",dueDays:14,isDefault:!0,order:0},{code:"30D",label:"Binnen 30 dagen",method:"credit",dueDays:30,order:1},{code:"CONTANT",label:"Contant",method:"cash",dueDays:0,order:2}];function Qc(e){return e.type==="agent"}const Jc="WORK_COMMENT_ADDED",Zc="WORK_ITEM_ASSIGNED",el="WORK_ITEM_STATUS_CHANGED";function tl(e,t){const n=r=>{const o=new Date(r);return o.setHours(0,0,0,0),o.getTime()};return Math.round((n(e)-n(t))/wn)}function nl(e,t){if(e.closedAt!=null)return{score:L,reasons:[]};const n=t.remindersById?.[e.id];if(n&&n.remindAt>t.now)return{score:L,reasons:[]};let r=0;const o=[],i=e.priority??"normal";if(z[i]>0&&(r+=z[i],o.push(`priority:${i}`)),typeof e.dueDate=="number"){const s=tl(e.dueDate,t.now);s<0?(r+=35,o.push("overdue")):s===0&&(r+=20,o.push("due-today"))}return e.source?.initiator==="system"&&e.source.systemReason&&(r+=15,o.push(`auto:${e.source.systemReason}`)),{score:r,reasons:o}}const ve=[{key:"task",label:"type_task"},{key:"bug",label:"type_bug"},{key:"story",label:"type_story"},{key:"epic",label:"type_epic"},{key:"subtask",label:"type_subtask"},{key:"case",label:"type_case"},{key:"deal",label:"type_deal"}],rl=ve.map(e=>e.key);function ol(e){return e?.types?.length?e.types:ve}function il(e,t){return t.find(n=>n.key===e)}function sl(e){const t=e.trim().toLowerCase();return t?t.includes("sub-task")||t.includes("subtask")||t.includes("sub task")?"subtask":t.includes("bug")||t.includes("defect")?"bug":t.includes("epic")?"epic":t.includes("story")?"story":t.includes("incident")||t.includes("problem")||t.includes("service request")||t.includes("change")?"case":t.includes("task")?"task":null:null}function al(...e){return e.map(t=>ve.find(n=>n.key===t)).filter(t=>!!t)}const no="work_item",ro="work_project",oo="work_activity",cl="work_cycle";function io(e){return`${no}:${e}`}function yt(e){return`${ro}:${e}`}function ll(e){return`${oo}:${e}`}function ul(e,t,n){const r=`${e}-${t}`;return n?`${r}-${n}`:r}function dl(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 pl(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toUpperCase().replace(/[^A-Z0-9]/g,"").slice(0,3)||"PRJ"}function fl(e,t=25){const n=new Set([io(e.id)]);e.projectId&&n.add(yt(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 ml(e){return[yt(e.id)]}const De=[{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}],Et=De.map(e=>e.key);function so(e){return e?.statuses?.length?e.statuses:De}function ao(e,t){return t.find(n=>n.key===e)?.category??"todo"}function gl(e,t){return t.find(n=>n.key===e)}function hl(e){const t=so(e),n=e?.defaultStatusKey;return n&&t.some(r=>r.key===n)?n:co(t)[0]?.key??De[0].key}function co(e){return[...e].sort((t,n)=>{const r=(t.order??0)-(n.order??0);return r!==0?r:(t.label||"").localeCompare(n.label||"")})}function yl(e,t){return ao(e,t)==="done"}function lo(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function El(e,t){const n=lo(e)||"status",r=new Set([...t,...Et]);if(!r.has(n))return n;for(let o=2;o<500;o++){const i=`${n}-${o}`;if(!r.has(i))return i}return`${n}-${r.size+1}`}function _l(e){const t=[];if(!e.length)return[{index:-1,reason:"empty"}];const n=new Set;return e.forEach((r,o)=>{if(!r.key){t.push({index:o,reason:"missing_key"});return}Et.includes(r.key)&&t.push({index:o,reason:"reserved_key",key:r.key}),n.has(r.key)&&t.push({index:o,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 Sl(e){return e.startDate??Number.MAX_SAFE_INTEGER}function Al(e){return e.completedAt?"completed":e.startedAt?"active":"planned"}const bl=new Set(["image/png","image/jpeg","image/jpg","image/gif","image/webp"]),Tl=new Set(["text/plain","text/markdown","text/csv","application/json","text/html","application/xml","text/xml"]);function uo(e){const t=(e??"").trim().toLowerCase().split(";")[0];return t?bl.has(t)?"image":t==="application/pdf"?"pdf":Tl.has(t)?"text":t.startsWith("audio/")?"audio":"unsupported":"unsupported"}const Y=1024*1024,po={image:5*Y,pdf:20*Y,text:1*Y,audio:20*Y},Il=25*Y,Ml=5;function Ol(e,t){const n=uo(e);return n==="unsupported"?"unsupported":t>po[n]?"too-large":null}function kl(e){return e.access!=="read"&&e.effect!=="internal"}function fo(e){return`${e.kind}:${e.id||e.url||e.title}`}function Cl(e,t=[]){const n=new Set(t),r=[],o=[];for(const i of e){const s=fo(i);n.has(s)||(n.add(s),r.push(i),o.push(s))}return{sources:r,keys:o}}const Nl="assist-source",wl=["blocking","due","open"];function Rl(e,t){const[n,r]=(e.subjectKey??"").split(":");return n===t&&r?r:void 0}const Bt={blocking:0,due:1,open:2};function vl(e,t){return Bt[e.band??"open"]-Bt[t.band??"open"]||(t.priority??0)-(e.priority??0)||e.id.localeCompare(t.id)}function Dl(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&e.canHold(t.providerId))}function xl(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&!e.canHold(t.providerId))}function Ll(e){return e.sessions.some(n=>n.id!==e.exceptSessionId&&(n.state==="connected"||n.state==="on_hold"))?{admit:!1,reason:"busy"}:{admit:!0}}function mo(e,t){const n=new Set(e.disabledIntents??[]),r=e.intentOverrides??{},o=t.intents.filter(s=>!n.has(s.intent)).map(s=>$l(s,r[s.intent]));if(!e.extraIntents||e.extraIntents.length===0)return o;const i=new Set(o.map(s=>s.intent));for(const s of e.extraIntents)i.has(s.intent)||(o.push(s),i.add(s.intent));return o}function go(e,t){const n={};for(const r of e.intents){if(!r.togglable)continue;const o=t?.[r.intent];n[r.intent]=o??r.defaultEnabled??!0}return n}function Pl(e,t){const n=go(e,t);return Object.entries(n).filter(([,r])=>!r).map(([r])=>r)}function $l(e,t){return t?{intent:t.intent??e.intent,targetSchemes:t.targetSchemes??e.targetSchemes,transport:t.transport??e.transport}:e}function Ul(e,t){const n=[];for(const r of e){if(!r.enabled)continue;const o=t[r.providerId];if(o)for(const i of mo(r,o))n.push({channel:r,description:o,capability:i})}return n}function Kl(e,t){return t.filter(n=>n.capability.intent===e)}function ho(e,t){return t.filter(n=>n.capability.targetSchemes.includes(e))}function Fl(e,t){return ho(e.scheme,t)}function Bl(e,t,n){const r=[];for(const o of e)for(const i of n)i.capability.intent===t&&i.capability.targetSchemes.includes(o.scheme)&&r.push({channelIntent:i,endpoint:o});return r}var yo=(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))(yo||{});const Hl={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 Wl(e){return e?Hl[e]??"note":"note"}const Gl="message_window",jl="message_templates",Vl={FROM:"from",TO:"to",CC:"cc",BCC:"bcc",ORGANIZER:"organizer",PRESENTER:"presenter",ATTENDEE:"attendee",OWNER:"owner",MEMBER:"member",GUEST:"guest",HOST:"host",PARTICIPANT:"participant"},Yl=(e,t)=>({intent:e,...t}),Xl="folder_management",zl="remote_search",ql="message_reactions",Ql={ok:!1,code:"UNSUPPORTED",message:"Provider does not support this op"},Jl="connector",Zl="context.collect",S=e=>({type:"string",description:e}),_=e=>({type:"number",description:e}),ce=e=>({type:"boolean",description:e}),C=S("Sheet name. Omit for the sheet the user is looking at."),Ht=S("Slide id, as `inspect` reports it.");function E(e,t,n,r,o,i){return{op:e,kinds:t,summary:n,parameters:{type:"object",properties:r,required:o},undoable:i.undoable,visible:i.visible}}const X={undoable:!1,visible:!0},T={undoable:!0,visible:!0},Wt={undoable:!1,visible:!0},Ie={undoable:!1,visible:!1},eu=[E("pdf.goToPage",["pdf"],"Scroll the viewer to a page.",{page:_("1-based page number.")},["page"],X),E("pdf.search",["pdf"],"Search the document and highlight the matches, as the find bar does.",{query:S("Text to find."),next:ce("Jump to the next match instead of the first.")},["query"],X),E("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"],X),E("pdf.fillField",["pdf"],"Fill one form field of a fillable PDF.",{field:S("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"],T),E("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"],Wt),E("pdf.deletePages",["pdf"],"Remove pages, keeping the rest in order.",{pages:{type:"array",items:{type:"number"},description:"1-based page numbers."}},["pages"],Wt),E("pdf.addNote",["pdf"],"Place a text note on a page. Written on save; not visible before that.",{page:_("1-based page number."),text:S("The note's text."),left:_("Distance from the left edge, in PDF points (72 per inch)."),top:_("Distance from the top edge, in PDF points."),width:_("Box width in points. Omit for a sensible default."),height:_("Box height in points. Omit for a sensible default."),fontSize:_("Font size in points. Omit for 12.")},["page","text","left","top"],Ie),E("pdf.highlightText",["pdf"],"Highlight a phrase on a page. Written on save; not visible before that.",{page:_("1-based page number."),text:S("The exact phrase to highlight, as it appears in the page's text."),occurrence:_("Which occurrence on that page, 1-based. Omit for the first.")},["page","text"],Ie)],tu=[E("sheet.setValues",["sheet"],"Write a block of values. The block's shape must match the range.",{sheet:C,range:S("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"],T),E("sheet.setFormula",["sheet"],"Put a formula in every cell of a range.",{sheet:C,range:S("A1 notation."),formula:S("Including the leading `=`.")},["range","formula"],T),E("sheet.setStyle",["sheet"],"Change the look of a range. Only the properties you pass are touched.",{sheet:C,range:S("A1 notation."),bold:ce("Bold on or off."),italic:ce("Italic on or off."),fontSize:_("Point size."),fontColor:S("CSS colour, e.g. `#b91c1c`."),background:S("CSS colour for the cell fill."),horizontalAlignment:{type:"string",enum:["left","center","right"],description:"Horizontal alignment."},numberFormat:S("Number format pattern, e.g. `#,##0.00` or `0%`.")},["range"],T),E("sheet.insertRows",["sheet"],"Insert empty rows, pushing the rest down.",{sheet:C,at:_("1-based row number to insert before."),count:_("How many. Omit for 1.")},["at"],T),E("sheet.deleteRows",["sheet"],"Delete rows, pulling the rest up.",{sheet:C,at:_("1-based first row to delete."),count:_("How many. Omit for 1.")},["at"],T),E("sheet.insertColumns",["sheet"],"Insert empty columns, pushing the rest right.",{sheet:C,at:_("1-based column number to insert before."),count:_("How many. Omit for 1.")},["at"],T),E("sheet.deleteColumns",["sheet"],"Delete columns, pulling the rest left.",{sheet:C,at:_("1-based first column to delete."),count:_("How many. Omit for 1.")},["at"],T),E("sheet.merge",["sheet"],"Merge a range into one cell.",{sheet:C,range:S("A1 notation.")},["range"],T),E("sheet.unmerge",["sheet"],"Break merged cells in a range apart.",{sheet:C,range:S("A1 notation.")},["range"],T),E("sheet.sort",["sheet"],"Sort a range on one of its columns.",{sheet:C,range:S("A1 notation covering the rows to sort, header excluded."),column:_("1-based column *within the range*, not within the sheet."),ascending:ce("Ascending. Omit for ascending.")},["range","column"],T),E("sheet.insertSheet",["sheet"],"Add a new sheet.",{name:S("Name for the new sheet.")},["name"],T),E("sheet.renameSheet",["sheet"],"Rename a sheet.",{sheet:S("Current name."),name:S("New name.")},["sheet","name"],T),E("sheet.deleteSheet",["sheet"],"Remove a sheet and everything on it.",{sheet:S("Name of the sheet to delete.")},["sheet"],T),E("sheet.activate",["sheet"],"Show the user a sheet and select a range on it.",{sheet:C,range:S("A1 notation to select. Omit to only switch sheets.")},[],X)],nu=[E("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:_("The offset the paragraph starts at, exactly as `inspect` prints it."),text:S("The new text for that paragraph. A newline starts a further paragraph.")},["at","text"],T),E("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:_("Character offset where the replaced text starts, as `inspect` reports offsets."),end:_("Character offset just past the last character to replace."),text:S("The replacement text. A newline starts a new paragraph.")},["start","end","text"],T),E("word.insertText",["word"],"Insert text at a character offset, without removing anything.",{index:_("Character offset, as `inspect` reports offsets."),text:S("The text to insert.")},["index","text"],T),E("word.appendText",["word"],"Add text at the end of the document.",{text:S("The text to append.")},["text"],T),E("word.insertParagraph",["word"],"Start a new paragraph, optionally with text in it.",{text:S("Paragraph text. Newlines start further paragraphs."),index:_("Character offset to insert at. Omit for the end of the document.")},[],T),E("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:_("Start character offset."),end:_("End character offset. Omit for a caret.")},["start"],X)],ru=[E("slides.setText",["slides"],"Replace the text of one shape. Written on save; not visible before that, and not undoable.",{slide:Ht,element:S("Element id, as `inspect` reports it."),text:S("The new text.")},["slide","element","text"],Ie),E("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:Ht,element:S("Element id."),left:_("Distance from the left edge, in pixels."),top:_("Distance from the top edge, in pixels."),width:_("Width in pixels."),height:_("Height in pixels.")},["slide","element"],Ie)],_t=[...eu,...tu,...nu,...ru];function ou(e){return _t.filter(t=>t.kinds.includes(e))}function iu(e){return _t.find(t=>t.op===e)}const Gt=/(?: {2,}|\\)$/,su=/^\*\*([^*]+)\*\*\s+(.*)$/;function jt(e){const t=su.exec(e);return t?{lead:t[1],text:t[2]}:{text:e}}function au(e){const t=(e??"").replace(/\r\n/g,`
|
|
17
|
+
Hierbij onze creditnota. De onderstaande bedragen worden met u verrekend.`},Bt={quote:"Genoemde bedragen zijn exclusief btw tenzij anders vermeld. Deze offerte is geldig tot {quote.valid_until}.",order:"Genoemde bedragen zijn exclusief btw tenzij anders vermeld.",invoice:"Genoemde bedragen zijn exclusief btw tenzij anders vermeld.",credit_note:"Genoemde bedragen zijn exclusief btw tenzij anders vermeld."},Gc=eo("quote"),to=ve.map(e=>e.key),no="product";function ro(e,t){return`${e}:${t}`}function Wc(e){return`${no}:${e}`}function jc(e){const t=e.indexOf(":");if(t<0)return;const n=e.slice(0,t);return to.includes(n)?e.slice(t+1):void 0}function Vc(e){const t=new Set([ro(e.kindKey,e.id)]);return e.companyId&&t.add(`company:${e.companyId}`),e.contactId&&t.add(`contact:${e.contactId}`),e.dealItemId&&t.add(`work_item:${e.dealItemId}`),Array.from(t)}const Yc=4;function Xc(e,t){const n=String(t).padStart(Math.max(1,e.padding),"0");return`${e.prefix}${e.period?`${e.period}-`:""}${n}`}function zc(e,t=Date.now()){return e==="year"?String(new Date(t).getFullYear()):""}const qc=["cash","credit","direct_debit","card","other"];function Qc(e,t){return e+Math.max(0,Math.round(t))*24*60*60*1e3}function Jc(e,t){const n=new Map;for(const r of e)r.businessEntityId||n.set(r.code,r);if(t)for(const r of e)r.businessEntityId===t&&n.set(r.code,r);return[...n.values()]}function Zc(e){return{code:e.code,label:e.label,method:e.method,dueDays:e.dueDays}}const el=[{code:"14D",label:"Binnen 14 dagen",method:"credit",dueDays:14,isDefault:!0,order:0},{code:"30D",label:"Binnen 30 dagen",method:"credit",dueDays:30,order:1},{code:"CONTANT",label:"Contant",method:"cash",dueDays:0,order:2}];function tl(e){return e.type==="agent"}const nl="WORK_COMMENT_ADDED",rl="WORK_ITEM_ASSIGNED",ol="WORK_ITEM_STATUS_CHANGED";function il(e,t){const n=r=>{const o=new Date(r);return o.setHours(0,0,0,0),o.getTime()};return Math.round((n(e)-n(t))/Rn)}function sl(e,t){if(e.closedAt!=null)return{score:L,reasons:[]};const n=t.remindersById?.[e.id];if(n&&n.remindAt>t.now)return{score:L,reasons:[]};let r=0;const o=[],i=e.priority??"normal";if(z[i]>0&&(r+=z[i],o.push(`priority:${i}`)),typeof e.dueDate=="number"){const s=il(e.dueDate,t.now);s<0?(r+=35,o.push("overdue")):s===0&&(r+=20,o.push("due-today"))}return e.source?.initiator==="system"&&e.source.systemReason&&(r+=15,o.push(`auto:${e.source.systemReason}`)),{score:r,reasons:o}}const De=[{key:"task",label:"type_task"},{key:"bug",label:"type_bug"},{key:"story",label:"type_story"},{key:"epic",label:"type_epic"},{key:"subtask",label:"type_subtask"},{key:"case",label:"type_case"},{key:"deal",label:"type_deal"}],al=De.map(e=>e.key);function cl(e){return e?.types?.length?e.types:De}function ll(e,t){return t.find(n=>n.key===e)}function ul(e){const t=e.trim().toLowerCase();return t?t.includes("sub-task")||t.includes("subtask")||t.includes("sub task")?"subtask":t.includes("bug")||t.includes("defect")?"bug":t.includes("epic")?"epic":t.includes("story")?"story":t.includes("incident")||t.includes("problem")||t.includes("service request")||t.includes("change")?"case":t.includes("task")?"task":null:null}function dl(...e){return e.map(t=>De.find(n=>n.key===t)).filter(t=>!!t)}const oo="work_item",io="work_project",so="work_activity",pl="work_cycle";function ao(e){return`${oo}:${e}`}function Et(e){return`${io}:${e}`}function fl(e){return`${so}:${e}`}function ml(e,t,n){const r=`${e}-${t}`;return n?`${r}-${n}`:r}function gl(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 hl(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toUpperCase().replace(/[^A-Z0-9]/g,"").slice(0,3)||"PRJ"}function yl(e,t=25){const n=new Set([ao(e.id)]);e.projectId&&n.add(Et(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 El(e){return[Et(e.id)]}const xe=[{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}],_t=xe.map(e=>e.key);function co(e){return e?.statuses?.length?e.statuses:xe}function lo(e,t){return t.find(n=>n.key===e)?.category??"todo"}function _l(e,t){return t.find(n=>n.key===e)}function Sl(e){const t=co(e),n=e?.defaultStatusKey;return n&&t.some(r=>r.key===n)?n:uo(t)[0]?.key??xe[0].key}function uo(e){return[...e].sort((t,n)=>{const r=(t.order??0)-(n.order??0);return r!==0?r:(t.label||"").localeCompare(n.label||"")})}function Al(e,t){return lo(e,t)==="done"}function po(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function bl(e,t){const n=po(e)||"status",r=new Set([...t,..._t]);if(!r.has(n))return n;for(let o=2;o<500;o++){const i=`${n}-${o}`;if(!r.has(i))return i}return`${n}-${r.size+1}`}function Tl(e){const t=[];if(!e.length)return[{index:-1,reason:"empty"}];const n=new Set;return e.forEach((r,o)=>{if(!r.key){t.push({index:o,reason:"missing_key"});return}_t.includes(r.key)&&t.push({index:o,reason:"reserved_key",key:r.key}),n.has(r.key)&&t.push({index:o,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 Il(e){return e.startDate??Number.MAX_SAFE_INTEGER}function Ml(e){return e.completedAt?"completed":e.startedAt?"active":"planned"}const Ol=new Set(["image/png","image/jpeg","image/jpg","image/gif","image/webp"]),kl=new Set(["text/plain","text/markdown","text/csv","application/json","text/html","application/xml","text/xml"]);function fo(e){const t=(e??"").trim().toLowerCase().split(";")[0];return t?Ol.has(t)?"image":t==="application/pdf"?"pdf":kl.has(t)?"text":t.startsWith("audio/")?"audio":"unsupported":"unsupported"}const Y=1024*1024,mo={image:5*Y,pdf:20*Y,text:1*Y,audio:20*Y},Cl=25*Y,Nl=5;function wl(e,t){const n=fo(e);return n==="unsupported"?"unsupported":t>mo[n]?"too-large":null}function Rl(e){return e.access!=="read"&&e.effect!=="internal"}function go(e){return`${e.kind}:${e.id||e.url||e.title}`}function vl(e,t=[]){const n=new Set(t),r=[],o=[];for(const i of e){const s=go(i);n.has(s)||(n.add(s),r.push(i),o.push(s))}return{sources:r,keys:o}}const Dl="assist-source",xl=["blocking","due","open"];function Ll(e,t){const[n,r]=(e.subjectKey??"").split(":");return n===t&&r?r:void 0}const Ht={blocking:0,due:1,open:2};function Pl(e,t){return Ht[e.band??"open"]-Ht[t.band??"open"]||(t.priority??0)-(e.priority??0)||e.id.localeCompare(t.id)}function $l(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&e.canHold(t.providerId))}function Ul(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&!e.canHold(t.providerId))}function Kl(e){return e.sessions.some(n=>n.id!==e.exceptSessionId&&(n.state==="connected"||n.state==="on_hold"))?{admit:!1,reason:"busy"}:{admit:!0}}function ho(e,t){const n=new Set(e.disabledIntents??[]),r=e.intentOverrides??{},o=t.intents.filter(s=>!n.has(s.intent)).map(s=>Bl(s,r[s.intent]));if(!e.extraIntents||e.extraIntents.length===0)return o;const i=new Set(o.map(s=>s.intent));for(const s of e.extraIntents)i.has(s.intent)||(o.push(s),i.add(s.intent));return o}function yo(e,t){const n={};for(const r of e.intents){if(!r.togglable)continue;const o=t?.[r.intent];n[r.intent]=o??r.defaultEnabled??!0}return n}function Fl(e,t){const n=yo(e,t);return Object.entries(n).filter(([,r])=>!r).map(([r])=>r)}function Bl(e,t){return t?{intent:t.intent??e.intent,targetSchemes:t.targetSchemes??e.targetSchemes,transport:t.transport??e.transport}:e}function Hl(e,t){const n=[];for(const r of e){if(!r.enabled)continue;const o=t[r.providerId];if(o)for(const i of ho(r,o))n.push({channel:r,description:o,capability:i})}return n}function Gl(e,t){return t.filter(n=>n.capability.intent===e)}function Eo(e,t){return t.filter(n=>n.capability.targetSchemes.includes(e))}function Wl(e,t){return Eo(e.scheme,t)}function jl(e,t,n){const r=[];for(const o of e)for(const i of n)i.capability.intent===t&&i.capability.targetSchemes.includes(o.scheme)&&r.push({channelIntent:i,endpoint:o});return r}var _o=(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))(_o||{});const Vl={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 Yl(e){return e?Vl[e]??"note":"note"}const Xl="message_window",zl="message_templates",ql={FROM:"from",TO:"to",CC:"cc",BCC:"bcc",ORGANIZER:"organizer",PRESENTER:"presenter",ATTENDEE:"attendee",OWNER:"owner",MEMBER:"member",GUEST:"guest",HOST:"host",PARTICIPANT:"participant"},Ql=(e,t)=>({intent:e,...t}),Jl="folder_management",Zl="remote_search",eu="message_reactions",tu={ok:!1,code:"UNSUPPORTED",message:"Provider does not support this op"},nu="connector",ru="context.collect",S=e=>({type:"string",description:e}),_=e=>({type:"number",description:e}),le=e=>({type:"boolean",description:e}),C=S("Sheet name. Omit for the sheet the user is looking at."),Gt=S("Slide id, as `inspect` reports it.");function E(e,t,n,r,o,i){return{op:e,kinds:t,summary:n,parameters:{type:"object",properties:r,required:o},undoable:i.undoable,visible:i.visible}}const X={undoable:!1,visible:!0},T={undoable:!0,visible:!0},Wt={undoable:!1,visible:!0},Me={undoable:!1,visible:!1},ou=[E("pdf.goToPage",["pdf"],"Scroll the viewer to a page.",{page:_("1-based page number.")},["page"],X),E("pdf.search",["pdf"],"Search the document and highlight the matches, as the find bar does.",{query:S("Text to find."),next:le("Jump to the next match instead of the first.")},["query"],X),E("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"],X),E("pdf.fillField",["pdf"],"Fill one form field of a fillable PDF.",{field:S("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"],T),E("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"],Wt),E("pdf.deletePages",["pdf"],"Remove pages, keeping the rest in order.",{pages:{type:"array",items:{type:"number"},description:"1-based page numbers."}},["pages"],Wt),E("pdf.addNote",["pdf"],"Place a text note on a page. Written on save; not visible before that.",{page:_("1-based page number."),text:S("The note's text."),left:_("Distance from the left edge, in PDF points (72 per inch)."),top:_("Distance from the top edge, in PDF points."),width:_("Box width in points. Omit for a sensible default."),height:_("Box height in points. Omit for a sensible default."),fontSize:_("Font size in points. Omit for 12.")},["page","text","left","top"],Me),E("pdf.highlightText",["pdf"],"Highlight a phrase on a page. Written on save; not visible before that.",{page:_("1-based page number."),text:S("The exact phrase to highlight, as it appears in the page's text."),occurrence:_("Which occurrence on that page, 1-based. Omit for the first.")},["page","text"],Me)],iu=[E("sheet.setValues",["sheet"],"Write a block of values. The block's shape must match the range.",{sheet:C,range:S("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"],T),E("sheet.setFormula",["sheet"],"Put a formula in every cell of a range.",{sheet:C,range:S("A1 notation."),formula:S("Including the leading `=`.")},["range","formula"],T),E("sheet.setStyle",["sheet"],"Change the look of a range. Only the properties you pass are touched.",{sheet:C,range:S("A1 notation."),bold:le("Bold on or off."),italic:le("Italic on or off."),fontSize:_("Point size."),fontColor:S("CSS colour, e.g. `#b91c1c`."),background:S("CSS colour for the cell fill."),horizontalAlignment:{type:"string",enum:["left","center","right"],description:"Horizontal alignment."},numberFormat:S("Number format pattern, e.g. `#,##0.00` or `0%`.")},["range"],T),E("sheet.insertRows",["sheet"],"Insert empty rows, pushing the rest down.",{sheet:C,at:_("1-based row number to insert before."),count:_("How many. Omit for 1.")},["at"],T),E("sheet.deleteRows",["sheet"],"Delete rows, pulling the rest up.",{sheet:C,at:_("1-based first row to delete."),count:_("How many. Omit for 1.")},["at"],T),E("sheet.insertColumns",["sheet"],"Insert empty columns, pushing the rest right.",{sheet:C,at:_("1-based column number to insert before."),count:_("How many. Omit for 1.")},["at"],T),E("sheet.deleteColumns",["sheet"],"Delete columns, pulling the rest left.",{sheet:C,at:_("1-based first column to delete."),count:_("How many. Omit for 1.")},["at"],T),E("sheet.merge",["sheet"],"Merge a range into one cell.",{sheet:C,range:S("A1 notation.")},["range"],T),E("sheet.unmerge",["sheet"],"Break merged cells in a range apart.",{sheet:C,range:S("A1 notation.")},["range"],T),E("sheet.sort",["sheet"],"Sort a range on one of its columns.",{sheet:C,range:S("A1 notation covering the rows to sort, header excluded."),column:_("1-based column *within the range*, not within the sheet."),ascending:le("Ascending. Omit for ascending.")},["range","column"],T),E("sheet.insertSheet",["sheet"],"Add a new sheet.",{name:S("Name for the new sheet.")},["name"],T),E("sheet.renameSheet",["sheet"],"Rename a sheet.",{sheet:S("Current name."),name:S("New name.")},["sheet","name"],T),E("sheet.deleteSheet",["sheet"],"Remove a sheet and everything on it.",{sheet:S("Name of the sheet to delete.")},["sheet"],T),E("sheet.activate",["sheet"],"Show the user a sheet and select a range on it.",{sheet:C,range:S("A1 notation to select. Omit to only switch sheets.")},[],X)],su=[E("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:_("The offset the paragraph starts at, exactly as `inspect` prints it."),text:S("The new text for that paragraph. A newline starts a further paragraph.")},["at","text"],T),E("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:_("Character offset where the replaced text starts, as `inspect` reports offsets."),end:_("Character offset just past the last character to replace."),text:S("The replacement text. A newline starts a new paragraph.")},["start","end","text"],T),E("word.insertText",["word"],"Insert text at a character offset, without removing anything.",{index:_("Character offset, as `inspect` reports offsets."),text:S("The text to insert.")},["index","text"],T),E("word.appendText",["word"],"Add text at the end of the document.",{text:S("The text to append.")},["text"],T),E("word.insertParagraph",["word"],"Start a new paragraph, optionally with text in it.",{text:S("Paragraph text. Newlines start further paragraphs."),index:_("Character offset to insert at. Omit for the end of the document.")},[],T),E("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:_("Start character offset."),end:_("End character offset. Omit for a caret.")},["start"],X)],au=[E("slides.setText",["slides"],"Replace the text of one shape. Written on save; not visible before that, and not undoable.",{slide:Gt,element:S("Element id, as `inspect` reports it."),text:S("The new text.")},["slide","element","text"],Me),E("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:Gt,element:S("Element id."),left:_("Distance from the left edge, in pixels."),top:_("Distance from the top edge, in pixels."),width:_("Width in pixels."),height:_("Height in pixels.")},["slide","element"],Me)],St=[...ou,...iu,...su,...au];function cu(e){return St.filter(t=>t.kinds.includes(e))}function lu(e){return St.find(t=>t.op===e)}const jt=/(?: {2,}|\\)$/,uu=/^\*\*([^*]+)\*\*\s+(.*)$/;function Vt(e){const t=uu.exec(e);return t?{lead:t[1],text:t[2]}:{text:e}}function du(e){const t=(e??"").replace(/\r\n/g,`
|
|
18
18
|
`).split(`
|
|
19
|
-
`),n=[];let r=null;const o=()=>{r&&n.push({type:"list",style:r.style,items:r.items}),r=null},i=(p,f)=>{r&&r.style!==p&&o(),r?r.items.push(
|
|
19
|
+
`),n=[];let r=null;const o=()=>{r&&n.push({type:"list",style:r.style,items:r.items}),r=null},i=(p,f)=>{r&&r.style!==p&&o(),r?r.items.push(Vt(f)):r={style:p,items:[Vt(f)]}};let s=[],a=[];const u=()=>{if(s.length){const p=s.join("").trim();p&&n.push({type:"paragraph",text:p}),s=[]}},l=()=>{a.length&&(n.push({type:"quote",text:a.join(`
|
|
20
20
|
`)}),a=[])},d=()=>{u(),l(),o()};let c=0;for(;c<t.length;){const p=t[c]??"",f=p.match(/^```(\w*)\s*$/);if(f){d();const h=[];for(c++;c<t.length&&!/^```\s*$/.test(t[c]??"");)h.push(t[c]??""),c++;c++,n.push({type:"code",...f[1]?{lang:f[1]}:{},text:h.join(`
|
|
21
|
-
`)});continue}const y=p.match(/^(#{1,3})\s+(.*)$/);if(y){d(),n.push({type:"heading",level:y[1].length,text:y[2].trim()}),c++;continue}const m=p.match(/^!\[([^\]]*)\]\(([^)\s]+)\)\s*$/);if(m){d(),n.push({type:"image",url:m[2],...m[1]?{alt:m[1]}:{}}),c++;continue}if(/^\s*[-*]\s+/.test(p)){u(),l(),i("bulleted",p.replace(/^\s*[-*]\s+/,"")),c++;continue}if(/^\s*\d+\.\s+/.test(p)){u(),l(),i("numbered",p.replace(/^\s*\d+\.\s+/,"")),c++;continue}if(/^\s*(-{3,}|\*{3,}|_{3,})\s*$/.test(p)){d(),n.push({type:"divider"}),c++;continue}if(/^>\s?/.test(p)){u(),o(),a.push(p.replace(/^>\s?/,"")),c++;continue}if(p.trim()===""){d(),c++;continue}l(),o();const b=
|
|
22
|
-
`:" ")),c++}return d(),n}function
|
|
21
|
+
`)});continue}const y=p.match(/^(#{1,3})\s+(.*)$/);if(y){d(),n.push({type:"heading",level:y[1].length,text:y[2].trim()}),c++;continue}const m=p.match(/^!\[([^\]]*)\]\(([^)\s]+)\)\s*$/);if(m){d(),n.push({type:"image",url:m[2],...m[1]?{alt:m[1]}:{}}),c++;continue}if(/^\s*[-*]\s+/.test(p)){u(),l(),i("bulleted",p.replace(/^\s*[-*]\s+/,"")),c++;continue}if(/^\s*\d+\.\s+/.test(p)){u(),l(),i("numbered",p.replace(/^\s*\d+\.\s+/,"")),c++;continue}if(/^\s*(-{3,}|\*{3,}|_{3,})\s*$/.test(p)){d(),n.push({type:"divider"}),c++;continue}if(/^>\s?/.test(p)){u(),o(),a.push(p.replace(/^>\s?/,"")),c++;continue}if(p.trim()===""){d(),c++;continue}l(),o();const b=jt.test(p);s.push(p.replace(jt,"").trim()+(b?`
|
|
22
|
+
`:" ")),c++}return d(),n}function pu(e,t){return it(e,t).replace(/^```.*$/gm,"").replace(/^\|[\s:|-]*\|$/gm,"").replace(/[ \t]*\|[ \t]*/g," ").replace(/^[ \t]*(#{1,6}|>|[-*+]|\d+\.)[ \t]+/gm,"").replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[([^\]]+)\]\([^)]*\)/g,"$1").replace(/(\*\*|__|\*|_|`|~~)/g,"").replace(/[ \t]+$/gm,"").replace(/\n{3,}/g,`
|
|
23
23
|
|
|
24
|
-
`).trim()}const lu="documents.describe",uu="documents.inspect",du="documents.apply";function pu(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 fu="installation-id";function mu(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 gu="notification-source",hu=(e,t)=>`${e}.pref.${t}`,yu={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"]},St=9e4,Eo=["out_of_office"],_o=e=>Eo.includes(e);function Eu(e,t,n){const r=n-e<St,o=t?.status&&(!t.expiresAt||t.expiresAt>n)?t:void 0;if(!o?.status)return{online:r,status:r?"available":"offline"};const i=o.status;return!r&&!_o(i)?{online:!1,status:"offline"}:{online:r,status:i,message:o.message}}function _u(e,t){const n=t-e.lastSeenAt<St,r=n||_o(e.status)?e.status:"offline";return n===e.online&&r===e.status?e:{...e,online:n,status:r}}function Su(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 Au(e){return e.providerAvailable&&e.allowed}const bu="resources.describe",Tu="resources.search",Iu="resources.resolve",Mu="resources.attached";function Ou(e){const t=e.indexOf(":");return t===-1?e:e.slice(0,t)}const ku="/provider/scope/related",Cu="/provider/scope/read",At="auth";function bt(e){const t=typeof e=="string"?e.match(/apps\/([^/?#]+)/):null;return t?t[1]:null}function Nu(e){const t=bt(e);return t?t!==At:typeof e=="string"&&e.startsWith("/wake")}function wu(e){return typeof e!="string"||e===""||e==="/"?!0:bt(e)===At}function Ru(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function So(e){const n=e.split("/").filter(Boolean).map(r=>r.startsWith(":")?r.endsWith("?")?"(?:/[^/]+)?":"/[^/]+":`/${Ru(r)}`).join("");return new RegExp(`^${n}\\/?$`)}function Ao(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean),o={};return n.forEach((i,s)=>{if(i.startsWith(":")){const a=i.endsWith("?")?i.slice(1,-1):i.slice(1),u=r[s];u&&(o[a]=u)}}),o}function bo(e){return e.publicBasePath??`/apps/${e.name}`}function vu(e){const t=[];for(const n of e){if(!n?.name)continue;const r=bo(n);for(const o of n.routes??[]){if(!o.public)continue;const i=o.path==="/"?"":o.path;t.push({appName:n.name,resource:o.resource,pattern:`${r}${i}`,props:o.props})}}return t}function To(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean);for(let o=0;o<Math.min(n.length,r.length);o++){const i=n[o].startsWith(":"),s=r[o].startsWith(":");if(i!==s)return s}return n.length>r.length}function Io(e,t){if(typeof e!="string")return null;let n=null;for(const r of t)So(r.pattern).test(e)&&(!n||To(r.pattern,n.pattern))&&(n=r);return n?{...n,params:{...n.props,...Ao(n.pattern,e)}}:null}function Du(e,t){return Io(e,t)!==null}const xu=10*1024*1024,Lu=25*1024*1024,Pu="sync-target",$u=20,Uu={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]"]},Mo=e=>{let t=e;return Object.values(Uu).forEach(n=>{n.forEach(r=>{t=t.replaceAll(r,"")})}),t=t.replace(/\(.*?\)/g,""),t=t.replace(/\[.*?\]/g,""),t},Oo=6e4,ko=8e3,Co=2,No=.4,Ku=3,Fu=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 wo(e){const t=new Set;for(const n of e.toLowerCase().split(/[^a-z0-9À-ɏ]+/))n.length<Ku||Fu.has(n)||t.add(n);return[...t]}function Ro(e,t){if(!e.length)return 0;if(!t.length)return 1;const n=new Set(t),r=new Set(e);let o=0;for(const i of r)n.has(i)||(o+=1);return o/r.size}function vo(e,t=Oo){const n=e.filter(s=>!s.partial&&typeof s.text=="string");if(!n.length)return{text:"",segmentCount:0};const o=n.reduce((s,a)=>Math.max(s,a.endedAt??0),0)-t;return{text:n.filter(s=>(s.endedAt??0)>=o).map(s=>Mo(s.text).trim()).filter(Boolean).join(" ").replace(/\s+/g," ").trim(),segmentCount:n.length}}const Do=60;function Bu(e,t,n=Do){const r=new Set(e),o=[...e];for(const i of t)!i||r.has(i)||(r.add(i),o.push(i));return o.slice(-n)}function Hu(e){const{segments:t,now:n,state:r}=e;if(r.lastTriggerAt&&n-r.lastTriggerAt<ko)return{trigger:!1,reason:"too_soon"};const o=vo(t,e.windowMs);if(!o.text)return{trigger:!1,reason:"no_speech"};const i=o.segmentCount-(r.lastSegmentCount??0);if(r.lastQueryTerms&&i<Co)return{trigger:!1,reason:"too_few_new"};const s=wo(o.text);return s.length?r.lastQueryTerms?.length&&Ro(s,r.lastQueryTerms)<No?{trigger:!1,reason:"same_topic"}:{trigger:!0,text:o.text,terms:s,segmentCount:o.segmentCount}:{trigger:!1,reason:"no_speech"}}const Wu=["personal","organization","connections","flows","work","administration","ai"],Gu="navNotice",xe={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}},xo="NL",ju=15,Vu=8,Yu=Array.from(new Set(Object.values(xe).map(e=>e.callingCode))).sort((e,t)=>t.length-e.length);function Vt(e){if(e)return xe[e.trim().toUpperCase()]}function le(e,t){return e.length>=t.nsnMin&&e.length<=t.nsnMax}function Yt(e){if(e.length>ju)return null;for(const t of Yu){if(!e.startsWith(t))continue;const n=e.slice(t.length);for(const r of Object.values(xe)){if(r.callingCode!==t)continue;const o=r.trunkPrefix,i=o&&n.startsWith(o)?n.slice(o.length):n;if(le(i,r))return`+${t}${i}`}return null}return e.length<Vu?null:`+${e}`}function Xu(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 zu(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 Ze(e,t){if(!e)return null;const n=Xu(e);if(!n)return null;const r=n.startsWith("+"),o=n.replace(/\D/g,"");if(!o)return null;if(r)return Yt(o);if(o.startsWith("00"))return Yt(o.slice(2));const i=Vt(t)??Vt(xo);if(!i)return null;const s=i.trunkPrefix;if(s&&o.startsWith(s)){const a=o.slice(s.length);return le(a,i)?`+${i.callingCode}${a}`:null}if(o.startsWith(i.callingCode)){const a=o.slice(i.callingCode.length);if(le(a,i))return`+${i.callingCode}${a}`}return!s&&le(o,i)?`+${i.callingCode}${o}`:null}function qu(e,t=9){const n=(e??"").replace(/\D/g,"");return n.length<t?null:n.slice(-t)}function Tt(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],o=t.slice(n+1);return!r||!o.includes(".")?null:`${r}@${o}`}function Qu(e){const t=Tt(e);return t?t.slice(t.lastIndexOf("@")+1):null}const Ju=new Set(["co.uk","org.uk","gov.uk","ac.uk","com.au","co.nz","com.br","co.za"]);function Lo(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 Ju.has(n)&&t.length>=3?t.slice(-3).join("."):n}const Po=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 Zu(e){const t=Lo(e);return t?Po.has(t):!1}function ed(e){if(!e)return!1;const t=e.trim().toLowerCase();return t==="tel"||t==="sms"||t==="whatsapp"||t==="fax"}function td(e,t,n){if(!e||!t)return null;const r=e.trim().toLowerCase();if(r==="tel"||r==="sms"||r==="whatsapp"){const i=Ze(t,n);return i?`tel:${i}`:null}if(r==="fax"){const i=Ze(t,n);return i?`fax:${i}`:null}if(r==="mailto"||r==="email"){const i=Tt(t);return i?`mailto:${i}`:null}const o=t.trim().toLowerCase();return o?`${r}:${o}`:null}const nd=[/<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],Xt=/^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i,rd=/^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;function od(e){const t=e.split(`
|
|
25
|
-
`);for(let n=0;n<t.length;n++)if(
|
|
26
|
-
`).trim();return e}const
|
|
24
|
+
`).trim()}const fu="documents.describe",mu="documents.inspect",gu="documents.apply";function hu(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 yu="installation-id";function Eu(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 _u="notification-source",Su=(e,t)=>`${e}.pref.${t}`,Au={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"]},At=9e4,So=["out_of_office"],Ao=e=>So.includes(e);function bu(e,t,n){const r=n-e<At,o=t?.status&&(!t.expiresAt||t.expiresAt>n)?t:void 0;if(!o?.status)return{online:r,status:r?"available":"offline"};const i=o.status;return!r&&!Ao(i)?{online:!1,status:"offline"}:{online:r,status:i,message:o.message}}function Tu(e,t){const n=t-e.lastSeenAt<At,r=n||Ao(e.status)?e.status:"offline";return n===e.online&&r===e.status?e:{...e,online:n,status:r}}function Iu(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 Mu(e){return e.providerAvailable&&e.allowed}const Ou="resources.describe",ku="resources.search",Cu="resources.resolve",Nu="resources.attached";function wu(e){const t=e.indexOf(":");return t===-1?e:e.slice(0,t)}const Ru="/provider/scope/related",vu="/provider/scope/read",bt="auth";function Tt(e){const t=typeof e=="string"?e.match(/apps\/([^/?#]+)/):null;return t?t[1]:null}function Du(e){const t=Tt(e);return t?t!==bt:typeof e=="string"&&e.startsWith("/wake")}function xu(e){return typeof e!="string"||e===""||e==="/"?!0:Tt(e)===bt}function Lu(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function bo(e){const n=e.split("/").filter(Boolean).map(r=>r.startsWith(":")?r.endsWith("?")?"(?:/[^/]+)?":"/[^/]+":`/${Lu(r)}`).join("");return new RegExp(`^${n}\\/?$`)}function To(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean),o={};return n.forEach((i,s)=>{if(i.startsWith(":")){const a=i.endsWith("?")?i.slice(1,-1):i.slice(1),u=r[s];u&&(o[a]=u)}}),o}function Io(e){return e.publicBasePath??`/apps/${e.name}`}function Pu(e){const t=[];for(const n of e){if(!n?.name)continue;const r=Io(n);for(const o of n.routes??[]){if(!o.public)continue;const i=o.path==="/"?"":o.path;t.push({appName:n.name,resource:o.resource,pattern:`${r}${i}`,props:o.props})}}return t}function Mo(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean);for(let o=0;o<Math.min(n.length,r.length);o++){const i=n[o].startsWith(":"),s=r[o].startsWith(":");if(i!==s)return s}return n.length>r.length}function Oo(e,t){if(typeof e!="string")return null;let n=null;for(const r of t)bo(r.pattern).test(e)&&(!n||Mo(r.pattern,n.pattern))&&(n=r);return n?{...n,params:{...n.props,...To(n.pattern,e)}}:null}function $u(e,t){return Oo(e,t)!==null}const Uu=10*1024*1024,Ku=25*1024*1024,Fu="sync-target",Bu=20,Hu={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]"]},ko=e=>{let t=e;return Object.values(Hu).forEach(n=>{n.forEach(r=>{t=t.replaceAll(r,"")})}),t=t.replace(/\(.*?\)/g,""),t=t.replace(/\[.*?\]/g,""),t},Co=6e4,No=8e3,wo=2,Ro=.4,Gu=3,Wu=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 vo(e){const t=new Set;for(const n of e.toLowerCase().split(/[^a-z0-9À-ɏ]+/))n.length<Gu||Wu.has(n)||t.add(n);return[...t]}function Do(e,t){if(!e.length)return 0;if(!t.length)return 1;const n=new Set(t),r=new Set(e);let o=0;for(const i of r)n.has(i)||(o+=1);return o/r.size}function xo(e,t=Co){const n=e.filter(s=>!s.partial&&typeof s.text=="string");if(!n.length)return{text:"",segmentCount:0};const o=n.reduce((s,a)=>Math.max(s,a.endedAt??0),0)-t;return{text:n.filter(s=>(s.endedAt??0)>=o).map(s=>ko(s.text).trim()).filter(Boolean).join(" ").replace(/\s+/g," ").trim(),segmentCount:n.length}}const Lo=60;function ju(e,t,n=Lo){const r=new Set(e),o=[...e];for(const i of t)!i||r.has(i)||(r.add(i),o.push(i));return o.slice(-n)}function Vu(e){const{segments:t,now:n,state:r}=e;if(r.lastTriggerAt&&n-r.lastTriggerAt<No)return{trigger:!1,reason:"too_soon"};const o=xo(t,e.windowMs);if(!o.text)return{trigger:!1,reason:"no_speech"};const i=o.segmentCount-(r.lastSegmentCount??0);if(r.lastQueryTerms&&i<wo)return{trigger:!1,reason:"too_few_new"};const s=vo(o.text);return s.length?r.lastQueryTerms?.length&&Do(s,r.lastQueryTerms)<Ro?{trigger:!1,reason:"same_topic"}:{trigger:!0,text:o.text,terms:s,segmentCount:o.segmentCount}:{trigger:!1,reason:"no_speech"}}const Yu=["personal","organization","connections","flows","work","administration","ai"],Xu="navNotice",Le={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}},Po="NL",zu=15,qu=8,Qu=Array.from(new Set(Object.values(Le).map(e=>e.callingCode))).sort((e,t)=>t.length-e.length);function Yt(e){if(e)return Le[e.trim().toUpperCase()]}function ue(e,t){return e.length>=t.nsnMin&&e.length<=t.nsnMax}function Xt(e){if(e.length>zu)return null;for(const t of Qu){if(!e.startsWith(t))continue;const n=e.slice(t.length);for(const r of Object.values(Le)){if(r.callingCode!==t)continue;const o=r.trunkPrefix,i=o&&n.startsWith(o)?n.slice(o.length):n;if(ue(i,r))return`+${t}${i}`}return null}return e.length<qu?null:`+${e}`}function Ju(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 Zu(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 et(e,t){if(!e)return null;const n=Ju(e);if(!n)return null;const r=n.startsWith("+"),o=n.replace(/\D/g,"");if(!o)return null;if(r)return Xt(o);if(o.startsWith("00"))return Xt(o.slice(2));const i=Yt(t)??Yt(Po);if(!i)return null;const s=i.trunkPrefix;if(s&&o.startsWith(s)){const a=o.slice(s.length);return ue(a,i)?`+${i.callingCode}${a}`:null}if(o.startsWith(i.callingCode)){const a=o.slice(i.callingCode.length);if(ue(a,i))return`+${i.callingCode}${a}`}return!s&&ue(o,i)?`+${i.callingCode}${o}`:null}function ed(e,t=9){const n=(e??"").replace(/\D/g,"");return n.length<t?null:n.slice(-t)}function It(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],o=t.slice(n+1);return!r||!o.includes(".")?null:`${r}@${o}`}function td(e){const t=It(e);return t?t.slice(t.lastIndexOf("@")+1):null}const nd=new Set(["co.uk","org.uk","gov.uk","ac.uk","com.au","co.nz","com.br","co.za"]);function $o(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 nd.has(n)&&t.length>=3?t.slice(-3).join("."):n}const Uo=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 rd(e){const t=$o(e);return t?Uo.has(t):!1}function od(e){if(!e)return!1;const t=e.trim().toLowerCase();return t==="tel"||t==="sms"||t==="whatsapp"||t==="fax"}function id(e,t,n){if(!e||!t)return null;const r=e.trim().toLowerCase();if(r==="tel"||r==="sms"||r==="whatsapp"){const i=et(t,n);return i?`tel:${i}`:null}if(r==="fax"){const i=et(t,n);return i?`fax:${i}`:null}if(r==="mailto"||r==="email"){const i=It(t);return i?`mailto:${i}`:null}const o=t.trim().toLowerCase();return o?`${r}:${o}`:null}const sd=[/<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],zt=/^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i,ad=/^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;function cd(e){const t=e.split(`
|
|
25
|
+
`);for(let n=0;n<t.length;n++)if(ad.test(t[n])||zt.test(t[n])&&t.slice(n+1,n+4).some(r=>zt.test(r)))return t.slice(0,n).join(`
|
|
26
|
+
`).trim();return e}const ld=/^(?:https?:|mailto:|tel:)/i,ud=/^(?:https?:|cid:|data:image\/)/i;function Be(e,t){const n=e.match(new RegExp(`\\b${t}\\s*=\\s*(?:"([^"]*)"|'([^']*)'|([^\\s">]+))`,"i"));return(n?.[1]??n?.[2]??n?.[3]??"").trim()}const dd=/(!\[[^\]]*\]\([^)]*\))/;function qt(e){return e.replace(/\s+/g," ").trim().split(dd).map((t,n)=>n%2===1?t:t.replace(/[[\]]/g,"\\$&")).join("")}function He(e){return e.replace(/[()\s<>"]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase().padStart(2,"0")}`)}function pd(e){return e.replace(/<img\b([^>]*?)\/?>/gi,(n,r)=>{const o=Be(r,"src");return ud.test(o)?`})`:""}).replace(/<a\b([^>]*)>([\s\S]*?)<\/a\s*>/gi,(n,r,o)=>{const i=qt(o.replace(/<[^>]*>/g,"")),s=Be(r,"href");return ld.test(s)?`[${i||He(s)}](${He(s)})`:i})}const fd=/<table\b[^>]*>((?:(?!<table\b)[\s\S])*?)<\/table\s*>/i,md=/<tr\b[^>]*>([\s\S]*?)<\/tr\s*>/gi,gd=/<(t[dh])\b([^>]*)>([\s\S]*?)<\/\1\s*>/gi;function hd(e,t){return/<table\b/i.test(e)||e.includes(`
|
|
27
27
|
|
|
28
|
-
|`)||t.includes("![")||t.length>200}const
|
|
28
|
+
|`)||t.includes("![")||t.length>200}const yd=40,Ed={left:"---",center:":---:",right:"---:"};function _d(e){const t=e.match(/align\s*[=:]\s*["']?\s*(right|center)/i);return t?t[1].toLowerCase():"left"}function Sd(e){return e.replace(/<[^>]*>/g,"").replace(/\s+/g," ").trim().replace(/\|/g,"\\|")}function Ad(e){const t=[];for(const s of e.matchAll(md)){const a=[];for(const u of s[1].matchAll(gd)){const l=Sd(u[3]);if(hd(u[3],l))return null;a.push({text:l,align:_d(u[2])})}if(a.length===0)return null;a.some(u=>u.text!=="")&&t.push(a)}const n=t[0]?.length??0;if(t.length<2||n<2||t.some(s=>s.length!==n))return null;const r=s=>`| ${s.map(a=>a.text).join(" | ")} |`,o=t[1].map(s=>Ed[s.align]).join(" | "),i=t.slice(1).map(r).join(`
|
|
29
29
|
`);return`
|
|
30
30
|
|
|
31
31
|
${r(t[0])}
|
|
32
32
|
| ${o} |
|
|
33
33
|
${i}
|
|
34
34
|
|
|
35
|
-
`}function
|
|
36
|
-
`).replace(/<(?:tbody|thead|tfoot|caption|colgroup|col|tr|t[dh])\b[^>]*>/gi,"").replace(/<\/(?:tbody|thead|tfoot|caption|colgroup)\s*>/gi,"")}function
|
|
35
|
+
`}function bd(e){return e.replace(/<\/(t[dh])\s*>/gi," ").replace(/<\/tr\s*>/gi,`
|
|
36
|
+
`).replace(/<(?:tbody|thead|tfoot|caption|colgroup|col|tr|t[dh])\b[^>]*>/gi,"").replace(/<\/(?:tbody|thead|tfoot|caption|colgroup)\s*>/gi,"")}function Td(e){let t=e;for(let n=0;n<yd;n++){const r=fd.exec(t);if(!r||r.index===void 0)break;const i=Ad(r[1])??`
|
|
37
37
|
|
|
38
|
-
${
|
|
38
|
+
${bd(r[1])}
|
|
39
39
|
|
|
40
|
-
`;t=t.slice(0,r.index)+i+t.slice(r.index+r[0].length)}return t}function
|
|
41
|
-
`),t&&(n=
|
|
40
|
+
`;t=t.slice(0,r.index)+i+t.slice(r.index+r[0].length)}return t}function Qt(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,`
|
|
41
|
+
`),t&&(n=Td(pd(n))),n=n.replace(/<\/(p|h[1-6]|ul|ol|table|blockquote)>/gi,`
|
|
42
42
|
|
|
43
43
|
`),n=n.replace(/<\/(div|li|tr)>/gi,`
|
|
44
|
-
`),n=n.replace(/<\/(td|th)>/gi," "),n=n.replace(/<[^>]+>/g,""),n=n.replace(/<[^>]*$/,""),n}function
|
|
44
|
+
`),n=n.replace(/<\/(td|th)>/gi," "),n=n.replace(/<[^>]+>/g,""),n=n.replace(/<[^>]*$/,""),n}function Jt(e){return!Number.isInteger(e)||e<0||e>1114111?null:String.fromCodePoint(e)}const Id={euro:"€",pound:"£",yen:"¥",cent:"¢",copy:"©",reg:"®",trade:"™",deg:"°",plusmn:"±",times:"×",middot:"·",bull:"•",hellip:"…",mdash:"—",ndash:"–",lsquo:"‘",rsquo:"’",ldquo:"“",rdquo:"”",apos:"'"};function Zt(e){return e.replace(/ /gi," ").replace(/&([a-z]+);/gi,(t,n)=>Id[n.toLowerCase()]??t).replace(/</gi,"<").replace(/>/gi,">").replace(/"/gi,'"').replace(/&#(\d+);/g,(t,n)=>Jt(Number(n))??t).replace(/&#x([0-9a-f]+);/gi,(t,n)=>Jt(parseInt(n,16))??t).replace(/&/gi,"&")}function en(e){return e.replace(/\r/g,"").replace(/[ \t]+/g," ").replace(/ *\n */g,`
|
|
45
45
|
`).replace(/\n{3,}/g,`
|
|
46
46
|
|
|
47
|
-
`).trim()}const $o=/<\s*(html|body|div|p|table|br|span)\b/i;function Ad(e){return $o.test(e)}function bd(e){return Uo(e,!1)}function Td(e){return Uo(e,!0)}function Uo(e,t){if(typeof e!="string"||!e)return"";let n=e.length;for(const s of nd){const a=e.search(s);a>=0&&a<n&&(n=a)}const r=e.slice(0,n);let o=Zt(Jt(qt(r,t)));return o||(o=Zt(Jt(qt(e,t)))),od(o)||o}exports.ACTIVE_ASSIGNMENT_STATUSES=xi;exports.ACTIVITY_CATALOG=D;exports.AI_ATTACHMENT_LIMITS=po;exports.AI_ATTACHMENT_MAX_PER_TURN=Ml;exports.AI_ATTACHMENT_TURN_BUDGET=Il;exports.AI_VENDORS=nt;exports.ALLOWED_LINK_SCHEMES=gn;exports.APP_PERMISSIONS=yu;exports.ARTIFACT_MAX_BLOCKS=pe;exports.ARTIFACT_MAX_BODY_BYTES=mn;exports.ARTIFACT_MAX_CELL_LEN=F;exports.ARTIFACT_MAX_KPI_ITEMS=he;exports.ARTIFACT_MAX_LIST_ITEMS=fe;exports.ARTIFACT_MAX_TABLE_COLUMNS=ge;exports.ARTIFACT_MAX_TABLE_ROWS=me;exports.ARTIFACT_MAX_TEXT_LEN=Me;exports.ASSIGNMENT_SCOPE_KIND=An;exports.ASSIST_BANDS=wl;exports.ASSIST_SOURCE_PROVIDER_GROUP=Nl;exports.ATTENTION_STATUSES=$n;exports.AT_RISK_GAP=Fr;exports.AUTH_APP_NAME=At;exports.AUTO_READY_MIN_PROPOSALS=Or;exports.AUTO_READY_RATE=kr;exports.ActivityTypeRegistry=sn;exports.BUILT_IN_ONLY=ri;exports.BULK_PENALTY=Un;exports.BUSINESS_ENTITY_LIST_SERVICE=Bi;exports.CADENCE_FLOOR_MS=ko;exports.CADENCE_MIN_NEW_SEGMENTS=Co;exports.CADENCE_MIN_NOVELTY=No;exports.CADENCE_WINDOW_MS=Oo;exports.CLASSIFY_VARS=Oa;exports.CONNECTOR_PROVIDER_GROUP=Jl;exports.CONTEXT_COLLECT_SERVICE=Zl;exports.CORE_DIMENSIONS=gi;exports.CommunicationScheme=yo;exports.DAY_MS=wn;exports.DEFAULT_CHECK_IN_DAYS=Ur;exports.DEFAULT_FORECAST_WEEKS=dr;exports.DEFAULT_MEMORY_BUDGET=$s;exports.DEFAULT_NUMBER_PADDING=Wc;exports.DEFAULT_PHONE_REGION=xo;exports.DEFAULT_QUOTE_TEMPLATE_BLOCKS=Kc;exports.DEFAULT_TEMPLATE_CONDITIONS=$c;exports.DEMAND_SOURCE_PROVIDER_GROUP=qs;exports.DOCUMENT_APPLY_SERVICE=du;exports.DOCUMENT_DESCRIBE_SERVICE=lu;exports.DOCUMENT_INSPECT_SERVICE=uu;exports.DOCUMENT_MAX_BLOCKS=pe;exports.DOCUMENT_MAX_BODY_BYTES=mn;exports.DOCUMENT_MAX_CELL_LEN=F;exports.DOCUMENT_MAX_KPI_ITEMS=he;exports.DOCUMENT_MAX_LETTERHEAD_FIELDS=Ge;exports.DOCUMENT_MAX_LIST_ITEMS=fe;exports.DOCUMENT_MAX_RECIPIENT_LINES=fn;exports.DOCUMENT_MAX_TABLE_COLUMNS=ge;exports.DOCUMENT_MAX_TABLE_ROWS=me;exports.DOCUMENT_MAX_TEXT_LEN=Me;exports.DOCUMENT_MAX_TOTALS_ROWS=je;exports.DOCUMENT_OPERATIONS=_t;exports.DUTCH_SLOT_LABELS=Qr;exports.EMPTY_WORKFLOW=Ca;exports.ENABLED_TRANSACTION_KINDS=zr;exports.FEATURE_FOLDER_MANAGEMENT=Xl;exports.FEATURE_MESSAGE_REACTIONS=ql;exports.FEATURE_REMOTE_SEARCH=zl;exports.FIXED_KINDS=ke;exports.FIXED_LEVELS=Z;exports.FIXED_TYPES=ve;exports.FIXED_UNITS=Qi;exports.FOLLOW_UP_HOURS=Fn;exports.FROZEN_WRITABLE_FIELDS=wc;exports.HOUR_MS=Nn;exports.HTML_BODY_RE=$o;exports.INELIGIBLE=L;exports.INSTALLATION_HEADER=fu;exports.INTERACTION_KIND=Ar;exports.InteractionParticipantRole=Vl;exports.KB_FALLBACK_LOCALE=Qn;exports.KB_LOCALES=ye;exports.LOCALES=ye;exports.LOOSE_STATUSES=De;exports.MAIL_HINT_HEADERS=Ln;exports.MAX_ACTIONS=oe;exports.MAX_ASSIGNMENT_TURNS=bn;exports.MAX_BLOCKS=He;exports.MAX_COLLECTION_DEPTH=ct;exports.MAX_EDITABLE_FILE_BYTES=xu;exports.MAX_FIELDS=ne;exports.MAX_LIST_ITEMS=re;exports.MAX_MEMORY_BROWSE=Ds;exports.MAX_MEMORY_BUDGET=Ps;exports.MAX_MEMORY_CHARS=xs;exports.MAX_SHOWN_KEYS=Do;exports.MAX_TOPIC_CANDIDATES=jr;exports.MAX_TOPIC_EXAMPLES=Gr;exports.MAX_TOPIC_EXAMPLE_CHARS=ae;exports.MAX_VIEWABLE_FILE_BYTES=Lu;exports.MIN_MEMORY_BUDGET=Ls;exports.NAV_NOTICE_SLOT=Gu;exports.NL_PAYMENT_TERMS=qc;exports.NL_TAX_RATES=Ks;exports.NOTIFICATION_SOURCE_PROVIDER_GROUP=gu;exports.OFF_TRACK_GAP=Br;exports.ONBOARDING_SOURCE_PROVIDER_GROUP=Bs;exports.PAUSE_HOLD=Ae;exports.PAUSE_SNOOZED=_e;exports.PAUSE_WAITING_FOR_CUSTOMER=Se;exports.PAYMENT_TERM_METHODS=Vc;exports.PHONE_REGIONS=xe;exports.PRESENCE_ONLINE_WINDOW_MS=St;exports.PRESENCE_SURVIVES_OFFLINE=Eo;exports.PRODUCT_SCOPE_KIND=eo;exports.PROFILE_TOOL_DISPOSITIONS=Ws;exports.PROVIDER_FEATURE_MESSAGE_TEMPLATES=jl;exports.PROVIDER_FEATURE_MESSAGE_WINDOW=Gl;exports.PUBLIC_EMAIL_DOMAINS=Po;exports.READ_STEP_TYPES=Ve;exports.RELATED_SUBJECT_KINDS=Zn;exports.RESERVED_STATUS_KEYS=Et;exports.RESERVED_TYPE_KEYS=rl;exports.RESOURCE_ATTACHED_SERVICE=Mu;exports.RESOURCE_DESCRIBE_SERVICE=bu;exports.RESOURCE_RESOLVE_SERVICE=Iu;exports.RESOURCE_SEARCH_SERVICE=Tu;exports.SCHEDULE_ENTRY_SCOPE_KIND=pr;exports.SCOPE_READ_ROUTE=Cu;exports.SCOPE_RELATED_ROUTE=ku;exports.SETTINGS_CATEGORIES=Wu;exports.SIGNATURE_INTENTS=Ji;exports.SLA_HOURS_BY_PRIORITY=Kn;exports.SLA_METRICS=Ga;exports.SLA_PAUSE_REASONS=ja;exports.STEP_MAX_TOKENS_MAX=Ir;exports.STEP_MAX_TOKENS_MIN=Tr;exports.STRATEGY_ITEM_SCOPE_KIND=Pr;exports.SUMMARY_MIN_LAST_CHARS=xn;exports.SUMMARY_MIN_MESSAGES=Dn;exports.SYNC_RUN_MAX_ERRORS=$u;exports.SYNC_TARGET_PROVIDER_GROUP=Pu;exports.TERMINAL_ASSIGNMENT_STATUSES=Sn;exports.TERMINAL_RUN_STATUSES=Cr;exports.TRANSACTION_KINDS=Re;exports.TRANSACTION_SCOPE_KINDS=Zr;exports.TRIGGER_VARS=Ma;exports.UNKNOWN_KIND=nr;exports.UNKNOWN_LEVEL_ORDER=$r;exports.UNSUPPORTED=Ql;exports.USAGE_DIMENSIONS=ln;exports.USAGE_DIMENSION_IDS=un;exports.WORKSTREAM_SCOPE_KIND=fr;exports.WORK_ACTIVITY_SCOPE_KIND=oo;exports.WORK_AREAS=Hs;exports.WORK_COMMENT_ADDED=Jc;exports.WORK_CYCLE_SYNC_KIND=cl;exports.WORK_ITEM_ASSIGNED=Zc;exports.WORK_ITEM_SCOPE_KIND=no;exports.WORK_ITEM_STATUS_CHANGED=el;exports.WORK_PROJECT_SCOPE_KIND=ro;exports.W_PRIORITY=z;exports.acceptExampleCandidate=Oc;exports.actingIdentityKey=hr;exports.activeWorkTypes=Ic;exports.activityIconOf=Wo;exports.activityJoinUrl=Zo;exports.activitySnippet=rn;exports.activityTextParams=on;exports.activityTimelineText=Jo;exports.activityTimestamp=an;exports.activityTypeInfo=M;exports.actorKey=_a;exports.addExampleCandidate=Mc;exports.addWorkingMs=Ce;exports.agePresenceEntry=_u;exports.aiAttachmentKind=uo;exports.aiAttachmentRejection=Ol;exports.aiBudgetLimit=We;exports.aiBudgetPeriodKey=fi;exports.aiBudgetPeriodStart=cn;exports.aiBudgetState=pi;exports.aiVendorAcceptsAttachment=di;exports.aiVendorDefaultModel=ci;exports.aiVendorLabel=ai;exports.aiVendorNeedsBaseUrl=ui;exports.aiVendorsWith=li;exports.allocate=In;exports.appNameFromPath=bt;exports.applyRounding=_c;exports.applySignature=Zi;exports.approvalRate=Mr;exports.artifactBodyBytes=En;exports.artifactOutline=_n;exports.artifactToMarkdown=ot;exports.assignmentMismatch=Ta;exports.assignmentScopeKey=Pi;exports.assignmentSubject=Ki;exports.availabilityByPerson=zs;exports.belongsOnCalendar=Gs;exports.belongsToEntity=Hi;exports.buildActivityPreview=ti;exports.buildChannelIntents=Ul;exports.buildShareKeys=Ri;exports.buildWindow=vo;exports.businessEntitySender=Cn;exports.calendarDaysBetween=rr;exports.calendarOf=Ne;exports.canNestUnder=Os;exports.canParent=ic;exports.capacityTotal=Ys;exports.capacityWeights=ga;exports.carriesText=Xo;exports.categoryLabel=Cs;exports.categoryOf=ao;exports.channelKindForScheme=Wl;exports.channelKindOf=Go;exports.checkInOverdueMs=hc;exports.clampStepMaxTokens=ka;exports.classifyMail=ms;exports.cleanMessageMarkdown=Td;exports.cleanMessageText=bd;exports.codeQuery=Gi;exports.compareAssistRank=vl;exports.compareWorkTypes=Wr;exports.conditionHolds=kn;exports.copyFrom=qr;exports.countsAsPlanned=j;exports.coverageByPerson=Xs;exports.coverageFor=na;exports.coversWorkstream=ut;exports.currentPeriod=jc;exports.cycleDayIndex=dt;exports.cycleOrder=Sl;exports.cycleState=Al;exports.decideAssignmentState=Fi;exports.decideCadence=Hu;exports.decideIncomingCall=Ll;exports.defaultLocaleOf=Jn;exports.defaultStatusKey=hl;exports.defaultTemplateBlocks=Jr;exports.defineIntent=Yl;exports.depthOf=zn;exports.derivePresence=Eu;exports.describeClause=Ai;exports.disabledIntentsFromCapabilities=Pl;exports.documentBodyBytes=En;exports.documentKindOf=pu;exports.documentOutline=_n;exports.documentToMarkdown=ot;exports.documentToText=cu;exports.dueAtOf=Za;exports.dueDateFrom=Yc;exports.elapsedSeconds=Ec;exports.emailDomain=Qu;exports.endpointKey=td;exports.erlangC=ir;exports.extractParams=Ao;exports.extractTerms=wo;exports.fillDocument=is;exports.fillText=On;exports.filterByEndpoint=Fl;exports.filterByIntent=Kl;exports.filterByTargetScheme=ho;exports.filterableDimensions=Si;exports.findAiVendor=Q;exports.fixedLevelForName=ac;exports.fixedTypeForName=sl;exports.fixedTypes=al;exports.flattenLocales=mu;exports.floorToPeriod=W;exports.forecastIntervals=da;exports.formatActingIdentity=gr;exports.formatCents=x;exports.formatClock=Ac;exports.formatHm=Sc;exports.formatItemKey=ul;exports.formatPeriod=H;exports.formatSeriesNumber=Gc;exports.formatSlaDuration=nc;exports.freshSources=Cl;exports.getActivitySeenUserIds=oi;exports.getContactEndpoints=es;exports.getShortTitle=As;exports.getUrgencyScore=Ss;exports.hasReacted=Ua;exports.healthCategory=cc;exports.healthsInCategory=lc;exports.heightOf=lt;exports.helpCenterText=Ts;exports.humanizeAction=Ia;exports.interactionIdOf=br;exports.isAgentUser=Qc;exports.isAssigned=Es;exports.isAssignmentTerminal=Li;exports.isAssignmentTrigger=_r;exports.isAutoReady=Ra;exports.isAwaitingThem=Yn;exports.isChatMessageActivity=si;exports.isClosed=_s;exports.isConnectedType=qo;exports.isDeepLink=Nu;exports.isDescendant=qn;exports.isEligible=as;exports.isEmailActivity=ii;exports.isFrozen=Nc;exports.isHeldClock=Ja;exports.isHtmlBody=Ad;exports.isInFlight=Da;exports.isInteractionUnseen=Pn;exports.isLandingPath=wu;exports.isLikelyBulk=vn;exports.isMessageShape=et;exports.isMessageType=jo;exports.isMoreSpecificPattern=To;exports.isNoteShape=tt;exports.isOpenClock=Lr;exports.isOutwardTool=kl;exports.isParked=Hn;exports.isPaused=Nr;exports.isPlaybookAuthoredType=zo;exports.isPublicEmailDomain=Zu;exports.isPublicPath=Du;exports.isReminderActive=Wn;exports.isReplyableType=Yo;exports.isSlaAtRisk=hs;exports.isTerminal=va;exports.isThreadLongEnough=us;exports.isTranscriptType=Qo;exports.isWorkClosed=yl;exports.isWorkTypeVisible=Tc;exports.itemDossierKeys=fl;exports.kindFor=R;exports.ladderFor=so;exports.levelIn=Kr;exports.levelOrder=Te;exports.lineNet=tr;exports.linkLabel=bs;exports.listedTransactionKinds=Cc;exports.listeningAllowed=mi;exports.localeInstruction=Ms;exports.localeName=Is;exports.localesOf=ks;exports.looksLikeEmail=zu;exports.lookup=at;exports.marginCents=Yi;exports.markdownToDocument=au;exports.matchContactToIntents=Bl;exports.matchPublicRoute=Io;exports.mcpCredentialScope=Rs;exports.mcpToolPrefix=vs;exports.measureRatio=dc;exports.mergeShownKeys=Bu;exports.messageCountsAs=nn;exports.metricOption=bi;exports.minutesOn=pt;exports.needsPhoneRegion=ed;exports.nestsUnderParent=Vo;exports.nextLevelBelow=sc;exports.nextSlaClock=ec;exports.nextVersion=Rc;exports.normalizeArtifactBlocks=yn;exports.normalizeBlocks=Fo;exports.normalizeDocumentBlocks=yn;exports.normalizeEmail=Tt;exports.normalizeExample=P;exports.normalizeGtin=Tn;exports.notificationPrefKey=hu;exports.novelty=Ro;exports.operationDescriptor=iu;exports.operationsForKind=ou;exports.organizationSender=ss;exports.overlapSeconds=se;exports.overlaps=ta;exports.paceRatio=pc;exports.parkMarksById=cs;exports.parseActingIdentity=ya;exports.parseAmount=ji;exports.parseClockMinutes=Ha;exports.parseItemKey=dl;exports.pathToRegex=So;exports.patternFor=mt;exports.patternStartTime=ft;exports.pauseBitFor=Wa;exports.periodsInRange=Ei;exports.phoneSuffix=qu;exports.pickMailHeaders=ds;exports.pickTemplate=ns;exports.placeLumps=ha;exports.plainTextFromMarkdown=en;exports.planSlaEvent=Qa;exports.plannedBillable=ra;exports.plannedWorkTypeKey=ur;exports.playbookActor=Er;exports.procedureOf=wa;exports.productScopeKey=Fc;exports.projectDossierKeys=ml;exports.publicBasePathFor=bo;exports.publicRoutePatterns=vu;exports.reactionWakesAssignment=Ui;exports.readPath=ue;exports.readStepError=ie;exports.recencyOf=Bn;exports.recipientLocale=ts;exports.refKey=Sr;exports.registrableDomain=Lo;exports.rejectExampleCandidate=Yr;exports.relatedByDefault=Us;exports.remainingMsOf=be;exports.requiredAgents=cr;exports.requirementFor=lr;exports.resolveAccountCapabilities=go;exports.resolveActivityText=de;exports.resolveChannelIntents=mo;exports.resolvePrice=zi;exports.resolveSignature=Mn;exports.resolveWorkMode=Su;exports.resourceKindOf=Ou;exports.rollupChildren=gc;exports.roundHalfUp=G;exports.runActor=Ea;exports.runInteractionId=La;exports.sanitizeInline=hn;exports.sanitizeTranscript=Mo;exports.scheduleEntryScopeKey=pa;exports.scoreInteraction=ys;exports.scoreWorkItem=nl;exports.selectLenses=ws;exports.serviceLevel=sr;exports.sessionsHoldCannotReach=xl;exports.sessionsToHold=Dl;exports.shadowTermsByCode=Xc;exports.shareKeyForTeam=st;exports.shareKeyForUser=it;exports.shareKeysForViewer=vi;exports.shortfalls=oa;exports.shouldRunAudioPipeline=Au;exports.slaBadgeTone=tc;exports.slaHoursByInbox=gs;exports.slaHoursFor=Vn;exports.sortStatuses=co;exports.sourceKey=fo;exports.spreadOverWeights=mr;exports.statusIn=gl;exports.stepsOf=Na;exports.strategyAncestorKeysFor=oc;exports.strategyDossierKeys=rc;exports.strategyItemScopeKey=ht;exports.stripHtml=tn;exports.subjectKeyOf=xa;exports.subjectOf=gt;exports.subjectRef=Rl;exports.suggestProjectKey=pl;exports.suggestedHealth=fc;exports.summarizeReactions=Pa;exports.targetById=ba;exports.targetForActivityType=Aa;exports.targetOrder=yc;exports.taxRateFor=er;exports.termsFor=or;exports.toActingIdentity=yr;exports.toE164=Ze;exports.toTransactionTerm=zc;exports.toolSourceKinds=Di;exports.topicOfferedForTeam=Xr;exports.topicsForTeam=kc;exports.trafficIntensity=ar;exports.transactionContext=vc;exports.transactionDossierKeys=Hc;exports.transactionIdFromScope=Bc;exports.transactionKind=U;exports.transactionScopeKey=to;exports.transactionSlots=Dc;exports.transactionTotals=Fs;exports.truncateExample=Vr;exports.typeIn=il;exports.typesFor=ol;exports.uniqueWorkStatusKey=El;exports.uniqueWorkTypeKey=bc;exports.usageMetricId=dn;exports.usageMetrics=Ti;exports.validateStatuses=_l;exports.valueAtPath=Sa;exports.waitHoursOf=Oe;exports.wakesAssignment=$i;exports.workActivityScopeKey=ll;exports.workItemScopeKey=io;exports.workProjectScopeKey=yt;exports.workRatio=mc;exports.workStatusKey=lo;exports.workTypeKey=Hr;exports.workingMsBetween=Ee;exports.workstreamScopeKey=fa;
|
|
47
|
+
`).trim()}const Ko=/<\s*(html|body|div|p|table|br|span)\b/i;function Md(e){return Ko.test(e)}function Od(e){return Fo(e,!1)}function kd(e){return Fo(e,!0)}function Fo(e,t){if(typeof e!="string"||!e)return"";let n=e.length;for(const s of sd){const a=e.search(s);a>=0&&a<n&&(n=a)}const r=e.slice(0,n);let o=en(Zt(Qt(r,t)));return o||(o=en(Zt(Qt(e,t)))),cd(o)||o}exports.ACTIVE_ASSIGNMENT_STATUSES=Pi;exports.ACTIVITY_CATALOG=D;exports.AI_ATTACHMENT_LIMITS=mo;exports.AI_ATTACHMENT_MAX_PER_TURN=Nl;exports.AI_ATTACHMENT_TURN_BUDGET=Cl;exports.AI_VENDORS=rt;exports.ALLOWED_LINK_SCHEMES=hn;exports.APP_PERMISSIONS=Au;exports.ARTIFACT_MAX_BLOCKS=fe;exports.ARTIFACT_MAX_BODY_BYTES=gn;exports.ARTIFACT_MAX_CELL_LEN=F;exports.ARTIFACT_MAX_KPI_ITEMS=ye;exports.ARTIFACT_MAX_LIST_ITEMS=me;exports.ARTIFACT_MAX_TABLE_COLUMNS=he;exports.ARTIFACT_MAX_TABLE_ROWS=ge;exports.ARTIFACT_MAX_TEXT_LEN=Oe;exports.ASSIGNMENT_SCOPE_KIND=bn;exports.ASSIST_BANDS=xl;exports.ASSIST_SOURCE_PROVIDER_GROUP=Dl;exports.ATTENTION_STATUSES=Un;exports.AT_RISK_GAP=Hr;exports.AUTH_APP_NAME=bt;exports.AUTO_READY_MIN_PROPOSALS=Cr;exports.AUTO_READY_RATE=Nr;exports.ActivityTypeRegistry=an;exports.BUILT_IN_ONLY=ii;exports.BULK_PENALTY=Kn;exports.BUSINESS_ENTITY_LIST_SERVICE=Gi;exports.CADENCE_FLOOR_MS=No;exports.CADENCE_MIN_NEW_SEGMENTS=wo;exports.CADENCE_MIN_NOVELTY=Ro;exports.CADENCE_WINDOW_MS=Co;exports.CLASSIFY_VARS=wa;exports.CONNECTOR_PROVIDER_GROUP=nu;exports.CONTEXT_COLLECT_SERVICE=ru;exports.CORE_DIMENSIONS=yi;exports.CommunicationScheme=_o;exports.DAY_MS=Rn;exports.DEFAULT_CHECK_IN_DAYS=Fr;exports.DEFAULT_FORECAST_WEEKS=pr;exports.DEFAULT_MEMORY_BUDGET=Ks;exports.DEFAULT_NUMBER_PADDING=Yc;exports.DEFAULT_PHONE_REGION=Po;exports.DEFAULT_QUOTE_TEMPLATE_BLOCKS=Gc;exports.DEFAULT_TEMPLATE_CONDITIONS=Bc;exports.DEMAND_SOURCE_PROVIDER_GROUP=Js;exports.DOCUMENT_APPLY_SERVICE=gu;exports.DOCUMENT_DESCRIBE_SERVICE=fu;exports.DOCUMENT_INSPECT_SERVICE=mu;exports.DOCUMENT_MAX_BLOCKS=fe;exports.DOCUMENT_MAX_BODY_BYTES=gn;exports.DOCUMENT_MAX_CELL_LEN=F;exports.DOCUMENT_MAX_KPI_ITEMS=ye;exports.DOCUMENT_MAX_LETTERHEAD_FIELDS=je;exports.DOCUMENT_MAX_LIST_ITEMS=me;exports.DOCUMENT_MAX_RECIPIENT_LINES=mn;exports.DOCUMENT_MAX_TABLE_COLUMNS=he;exports.DOCUMENT_MAX_TABLE_ROWS=ge;exports.DOCUMENT_MAX_TEXT_LEN=Oe;exports.DOCUMENT_MAX_TOTALS_ROWS=Ve;exports.DOCUMENT_OPERATIONS=St;exports.DUTCH_SLOT_LABELS=Zr;exports.EMPTY_WORKFLOW=va;exports.ENABLED_TRANSACTION_KINDS=Qr;exports.FEATURE_FOLDER_MANAGEMENT=Jl;exports.FEATURE_MESSAGE_REACTIONS=eu;exports.FEATURE_REMOTE_SEARCH=Zl;exports.FIXED_KINDS=Ce;exports.FIXED_LEVELS=ee;exports.FIXED_TYPES=De;exports.FIXED_UNITS=Zi;exports.FOLLOW_UP_HOURS=Bn;exports.FROZEN_WRITABLE_FIELDS=xc;exports.HOUR_MS=wn;exports.HTML_BODY_RE=Ko;exports.INELIGIBLE=L;exports.INSTALLATION_HEADER=yu;exports.INTERACTION_KIND=Tr;exports.InteractionParticipantRole=ql;exports.KB_FALLBACK_LOCALE=Jn;exports.KB_LOCALES=Ee;exports.LOCALES=Ee;exports.LOOSE_STATUSES=xe;exports.MAIL_HINT_HEADERS=Pn;exports.MAX_ACTIONS=ie;exports.MAX_ASSIGNMENT_TURNS=Tn;exports.MAX_BLOCKS=Ge;exports.MAX_COLLECTION_DEPTH=lt;exports.MAX_EDITABLE_FILE_BYTES=Uu;exports.MAX_FIELDS=re;exports.MAX_LIST_ITEMS=oe;exports.MAX_MEMORY_BROWSE=Ls;exports.MAX_MEMORY_BUDGET=Us;exports.MAX_MEMORY_CHARS=Ps;exports.MAX_SHOWN_KEYS=Lo;exports.MAX_TOPIC_CANDIDATES=Yr;exports.MAX_TOPIC_EXAMPLES=Vr;exports.MAX_TOPIC_EXAMPLE_CHARS=ce;exports.MAX_VIEWABLE_FILE_BYTES=Ku;exports.MIN_MEMORY_BUDGET=$s;exports.NAV_NOTICE_SLOT=Xu;exports.NL_PAYMENT_TERMS=el;exports.NL_TAX_RATES=Bs;exports.NOTIFICATION_SOURCE_PROVIDER_GROUP=_u;exports.OFF_TRACK_GAP=Gr;exports.ONBOARDING_SOURCE_PROVIDER_GROUP=Gs;exports.PAUSE_HOLD=be;exports.PAUSE_SNOOZED=Se;exports.PAUSE_WAITING_FOR_CUSTOMER=Ae;exports.PAYMENT_TERM_METHODS=qc;exports.PHONE_REGIONS=Le;exports.PRESENCE_ONLINE_WINDOW_MS=At;exports.PRESENCE_SURVIVES_OFFLINE=So;exports.PRODUCT_SCOPE_KIND=no;exports.PROFILE_TOOL_DISPOSITIONS=js;exports.PROVIDER_FEATURE_MESSAGE_TEMPLATES=zl;exports.PROVIDER_FEATURE_MESSAGE_WINDOW=Xl;exports.PUBLIC_EMAIL_DOMAINS=Uo;exports.READ_STEP_TYPES=Ye;exports.RELATED_SUBJECT_KINDS=er;exports.RESERVED_STATUS_KEYS=_t;exports.RESERVED_TYPE_KEYS=al;exports.RESOURCE_ATTACHED_SERVICE=Nu;exports.RESOURCE_DESCRIBE_SERVICE=Ou;exports.RESOURCE_RESOLVE_SERVICE=Cu;exports.RESOURCE_SEARCH_SERVICE=ku;exports.SCHEDULE_ENTRY_SCOPE_KIND=fr;exports.SCOPE_READ_ROUTE=vu;exports.SCOPE_RELATED_ROUTE=Ru;exports.SETTINGS_CATEGORIES=Yu;exports.SIGNATURE_INTENTS=es;exports.SLA_HOURS_BY_PRIORITY=Fn;exports.SLA_METRICS=Xa;exports.SLA_PAUSE_REASONS=za;exports.STEP_MAX_TOKENS_MAX=Or;exports.STEP_MAX_TOKENS_MIN=Mr;exports.STRATEGY_ITEM_SCOPE_KIND=Ur;exports.SUMMARY_MIN_LAST_CHARS=Ln;exports.SUMMARY_MIN_MESSAGES=xn;exports.SYNC_RUN_MAX_ERRORS=Bu;exports.SYNC_TARGET_PROVIDER_GROUP=Fu;exports.TERMINAL_ASSIGNMENT_STATUSES=An;exports.TERMINAL_RUN_STATUSES=wr;exports.TRANSACTION_KINDS=ve;exports.TRANSACTION_SCOPE_KINDS=to;exports.TRIGGER_VARS=Ca;exports.UNKNOWN_KIND=rr;exports.UNKNOWN_LEVEL_ORDER=Kr;exports.UNSUPPORTED=tu;exports.USAGE_DIMENSIONS=un;exports.USAGE_DIMENSION_IDS=dn;exports.WORKSTREAM_SCOPE_KIND=mr;exports.WORK_ACTIVITY_SCOPE_KIND=so;exports.WORK_AREAS=Ws;exports.WORK_COMMENT_ADDED=nl;exports.WORK_CYCLE_SYNC_KIND=pl;exports.WORK_ITEM_ASSIGNED=rl;exports.WORK_ITEM_SCOPE_KIND=oo;exports.WORK_ITEM_STATUS_CHANGED=ol;exports.WORK_PROJECT_SCOPE_KIND=io;exports.W_PRIORITY=z;exports.acceptExampleCandidate=wc;exports.actingIdentityKey=yr;exports.activeWorkTypes=Cc;exports.activityIconOf=jo;exports.activityJoinUrl=ti;exports.activitySnippet=on;exports.activityTextParams=sn;exports.activityTimelineText=ei;exports.activityTimestamp=cn;exports.activityTypeInfo=M;exports.actorKey=Aa;exports.addExampleCandidate=Nc;exports.addWorkingMs=Ne;exports.agePresenceEntry=Tu;exports.aiAttachmentKind=fo;exports.aiAttachmentRejection=wl;exports.aiBudgetLimit=We;exports.aiBudgetPeriodKey=gi;exports.aiBudgetPeriodStart=ln;exports.aiBudgetState=mi;exports.aiVendorAcceptsAttachment=fi;exports.aiVendorDefaultModel=ui;exports.aiVendorLabel=li;exports.aiVendorNeedsBaseUrl=pi;exports.aiVendorsWith=di;exports.allocate=Mn;exports.appNameFromPath=Tt;exports.applyRounding=Tc;exports.applySignature=ts;exports.approvalRate=kr;exports.artifactBodyBytes=_n;exports.artifactOutline=Sn;exports.artifactToMarkdown=it;exports.assignmentMismatch=Ma;exports.assignmentScopeKey=Ui;exports.assignmentSubject=Bi;exports.availabilityByPerson=Qs;exports.belongsOnCalendar=Vs;exports.belongsToEntity=Wi;exports.buildActivityPreview=ri;exports.buildChannelIntents=Hl;exports.buildShareKeys=Di;exports.buildWindow=xo;exports.businessEntitySender=Nn;exports.calendarDaysBetween=or;exports.calendarOf=we;exports.canNestUnder=Cs;exports.canParent=lc;exports.capacityTotal=zs;exports.capacityWeights=ya;exports.carriesText=qo;exports.categoryLabel=ws;exports.categoryOf=lo;exports.channelKindForScheme=Yl;exports.channelKindOf=Vo;exports.checkInOverdueMs=Sc;exports.clampStepMaxTokens=Ra;exports.classifyMail=hs;exports.cleanMessageMarkdown=kd;exports.cleanMessageText=Od;exports.codeQuery=Vi;exports.compareAssistRank=Pl;exports.compareWorkTypes=jr;exports.conditionHolds=Cn;exports.copyFrom=Jr;exports.countsAsPlanned=j;exports.coverageByPerson=qs;exports.coverageFor=oa;exports.coversWorkstream=dt;exports.currentPeriod=zc;exports.cycleDayIndex=pt;exports.cycleOrder=Il;exports.cycleState=Ml;exports.decideAssignmentState=Hi;exports.decideCadence=Vu;exports.decideIncomingCall=Kl;exports.defaultLocaleOf=Zn;exports.defaultStatusKey=Sl;exports.defaultTemplateBlocks=eo;exports.defineIntent=Ql;exports.depthOf=qn;exports.derivePresence=bu;exports.describeClause=Ti;exports.disabledIntentsFromCapabilities=Fl;exports.documentBodyBytes=_n;exports.documentKindOf=hu;exports.documentOutline=Sn;exports.documentToMarkdown=it;exports.documentToText=pu;exports.dueAtOf=rc;exports.dueDateFrom=Qc;exports.elapsedSeconds=bc;exports.emailDomain=td;exports.endpointKey=id;exports.erlangC=sr;exports.extractParams=To;exports.extractTerms=vo;exports.fillDocument=as;exports.fillText=kn;exports.filterByEndpoint=Wl;exports.filterByIntent=Gl;exports.filterByTargetScheme=Eo;exports.filterableDimensions=bi;exports.findAiVendor=J;exports.fixedLevelForName=dc;exports.fixedTypeForName=ul;exports.fixedTypes=dl;exports.flattenLocales=Eu;exports.floorToPeriod=G;exports.forecastIntervals=fa;exports.formatActingIdentity=hr;exports.formatCents=x;exports.formatClock=Mc;exports.formatHm=Ic;exports.formatItemKey=ml;exports.formatPeriod=H;exports.formatSeriesNumber=Xc;exports.formatSlaDuration=sc;exports.freshSources=vl;exports.getActivitySeenUserIds=si;exports.getContactEndpoints=ns;exports.getShortTitle=Ts;exports.getUrgencyScore=bs;exports.hasReacted=Ha;exports.healthCategory=pc;exports.healthsInCategory=fc;exports.heightOf=ut;exports.helpCenterText=Ms;exports.humanizeAction=Oa;exports.interactionIdOf=Ir;exports.isAgentUser=tl;exports.isAssigned=Ss;exports.isAssignmentTerminal=$i;exports.isAssignmentTrigger=Sr;exports.isAutoReady=La;exports.isAwaitingThem=Xn;exports.isChatMessageActivity=ci;exports.isClosed=As;exports.isConnectedType=Jo;exports.isDeepLink=Du;exports.isDescendant=Qn;exports.isEligible=ls;exports.isEmailActivity=ai;exports.isFrozen=Dc;exports.isHeldClock=nc;exports.isHtmlBody=Md;exports.isInFlight=$a;exports.isInteractionUnseen=$n;exports.isLandingPath=xu;exports.isLikelyBulk=Dn;exports.isMessageShape=tt;exports.isMessageType=Yo;exports.isMoreSpecificPattern=Mo;exports.isNoteShape=nt;exports.isOpenClock=$r;exports.isOutwardTool=Rl;exports.isParked=Gn;exports.isPaused=Rr;exports.isPlaybookAuthoredType=Qo;exports.isPublicEmailDomain=rd;exports.isPublicPath=$u;exports.isReminderActive=Wn;exports.isReplyableType=zo;exports.isSlaAtRisk=Es;exports.isTerminal=Pa;exports.isThreadLongEnough=ps;exports.isTranscriptType=Zo;exports.isWorkClosed=Al;exports.isWorkTypeVisible=kc;exports.itemDossierKeys=yl;exports.kindFor=R;exports.ladderFor=co;exports.levelIn=Br;exports.levelOrder=Ie;exports.lineNet=nr;exports.linkLabel=Is;exports.listedTransactionKinds=vc;exports.listeningAllowed=hi;exports.localeInstruction=ks;exports.localeName=Os;exports.localesOf=Ns;exports.looksLikeEmail=Zu;exports.lookup=ct;exports.marginCents=zi;exports.markdownToDocument=du;exports.matchContactToIntents=jl;exports.matchPublicRoute=Oo;exports.mcpCredentialScope=Ds;exports.mcpToolPrefix=xs;exports.measureRatio=gc;exports.mergeShownKeys=ju;exports.messageCountsAs=rn;exports.metricOption=Ii;exports.minutesOn=ft;exports.needsPhoneRegion=od;exports.nestsUnderParent=Xo;exports.nextLevelBelow=uc;exports.nextSlaClock=oc;exports.nextVersion=Lc;exports.normalizeArtifactBlocks=En;exports.normalizeBlocks=Ho;exports.normalizeDocumentBlocks=En;exports.normalizeEmail=It;exports.normalizeExample=P;exports.normalizeGtin=In;exports.notificationPrefKey=Su;exports.novelty=Do;exports.operationDescriptor=lu;exports.operationsForKind=cu;exports.organizationSender=cs;exports.overlapSeconds=ae;exports.overlaps=ra;exports.paceRatio=hc;exports.parkMarksById=us;exports.parseActingIdentity=_a;exports.parseAmount=Yi;exports.parseClockMinutes=Va;exports.parseItemKey=gl;exports.pathToRegex=bo;exports.patternFor=gt;exports.patternStartTime=mt;exports.pauseBitFor=Ya;exports.periodsInRange=Si;exports.phoneSuffix=ed;exports.pickMailHeaders=fs;exports.pickTemplate=os;exports.placeLumps=Ea;exports.plainTextFromMarkdown=tn;exports.planSlaEvent=tc;exports.plannedBillable=ia;exports.plannedWorkTypeKey=dr;exports.playbookActor=_r;exports.procedureOf=xa;exports.productScopeKey=Wc;exports.projectDossierKeys=El;exports.publicBasePathFor=Io;exports.publicRoutePatterns=Pu;exports.reactionWakesAssignment=Fi;exports.readPath=de;exports.readStepError=se;exports.recencyOf=Hn;exports.recipientLocale=rs;exports.refKey=br;exports.registrableDomain=$o;exports.rejectExampleCandidate=zr;exports.relatedByDefault=Fs;exports.remainingMsOf=Te;exports.requiredAgents=lr;exports.requirementFor=ur;exports.resolveAccountCapabilities=yo;exports.resolveActivityText=pe;exports.resolveChannelIntents=ho;exports.resolvePrice=Qi;exports.resolveSignature=On;exports.resolveWorkMode=Iu;exports.resourceKindOf=wu;exports.rollupChildren=_c;exports.roundHalfUp=W;exports.runActor=Sa;exports.runInteractionId=Ka;exports.sanitizeInline=yn;exports.sanitizeTranscript=ko;exports.scheduleEntryScopeKey=ma;exports.scoreInteraction=_s;exports.scoreWorkItem=sl;exports.selectLenses=vs;exports.serviceLevel=ar;exports.sessionsHoldCannotReach=Ul;exports.sessionsToHold=$l;exports.shadowTermsByCode=Jc;exports.shareKeyForTeam=at;exports.shareKeyForUser=st;exports.shareKeysForViewer=xi;exports.shortfalls=sa;exports.shouldRunAudioPipeline=Mu;exports.slaBadgeTone=ic;exports.slaHoursByInbox=ys;exports.slaHoursFor=Yn;exports.sortStatuses=uo;exports.sourceKey=go;exports.spreadOverWeights=gr;exports.statusIn=_l;exports.stepsOf=Da;exports.strategyAncestorKeysFor=cc;exports.strategyDossierKeys=ac;exports.strategyItemScopeKey=yt;exports.stripHtml=nn;exports.subjectKeyOf=Ua;exports.subjectOf=ht;exports.subjectRef=Ll;exports.suggestProjectKey=hl;exports.suggestedHealth=yc;exports.summarizeReactions=Fa;exports.targetById=Ia;exports.targetForActivityType=Ta;exports.targetOrder=Ac;exports.taxRateFor=tr;exports.termsFor=ir;exports.toActingIdentity=Er;exports.toE164=et;exports.toTransactionTerm=Zc;exports.toolBareName=Ar;exports.toolDisplayName=ka;exports.toolName=q;exports.toolSourceKinds=Li;exports.topicOfferedForTeam=qr;exports.topicsForTeam=Rc;exports.trafficIntensity=cr;exports.transactionContext=Pc;exports.transactionDossierKeys=Vc;exports.transactionIdFromScope=jc;exports.transactionKind=U;exports.transactionScopeKey=ro;exports.transactionSlots=$c;exports.transactionTotals=Hs;exports.triggerFillsVar=Na;exports.truncateExample=Xr;exports.typeIn=ll;exports.typesFor=cl;exports.uniqueWorkStatusKey=bl;exports.uniqueWorkTypeKey=Oc;exports.usageMetricId=pn;exports.usageMetrics=Mi;exports.validateStatuses=Tl;exports.valueAtPath=ba;exports.waitHoursOf=ke;exports.wakesAssignment=Ki;exports.workActivityScopeKey=fl;exports.workItemScopeKey=ao;exports.workProjectScopeKey=Et;exports.workRatio=Ec;exports.workStatusKey=po;exports.workTypeKey=Wr;exports.workingMsBetween=_e;exports.workstreamScopeKey=ga;
|