@opencxh/domain 1.189.0 → 1.193.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/activity/descriptor.d.ts +1 -1
- package/dist/entities/ai-message/types.d.ts +9 -0
- package/dist/entities/analytics/dashboard.d.ts +0 -15
- package/dist/entities/analytics/source.d.ts +2 -1
- package/dist/entities/interaction/attention.d.ts +60 -0
- package/dist/entities/interaction/index.d.ts +1 -0
- package/dist/entities/interaction/types.d.ts +2 -1
- package/dist/entities/memory/kind.d.ts +1 -1
- package/dist/entities/onboarding/source.d.ts +1 -1
- package/dist/entities/onboarding/types.d.ts +1 -1
- package/dist/entities/playbook/assignment.d.ts +1 -1
- package/dist/entities/work/attention.d.ts +13 -0
- package/dist/entities/work/index.d.ts +1 -0
- package/dist/index.cjs +8 -8
- package/dist/index.d.ts +2 -0
- package/dist/index.js +872 -761
- package/dist/platform/ai-tools.d.ts +9 -0
- package/dist/platform/assist-source.d.ts +104 -0
- package/dist/platform/attention.d.ts +39 -0
- package/dist/platform/attention.test.d.ts +1 -0
- package/dist/platform/localization.d.ts +20 -0
- package/dist/platform/notification.d.ts +3 -15
- package/dist/platform/permission.d.ts +1 -0
- package/dist/platform/routing.d.ts +9 -0
- package/package.json +1 -1
|
@@ -48,6 +48,15 @@ export interface AIMessageAskPayload {
|
|
|
48
48
|
profileId: string;
|
|
49
49
|
previousExternalId?: string;
|
|
50
50
|
context?: Record<string, any>;
|
|
51
|
+
/**
|
|
52
|
+
* May this turn reach outside the platform? Default `true` — today's behaviour.
|
|
53
|
+
*
|
|
54
|
+
* `false` narrows the toolset to reads and internal writes, so the model can prepare a draft
|
|
55
|
+
* but cannot send one. Narrowing only: it can never widen what the profile allows. The Assist
|
|
56
|
+
* queue's instruction bar sends `false`, because a card that answers a customer while you were
|
|
57
|
+
* still reading it is the one thing that must not happen there.
|
|
58
|
+
*/
|
|
59
|
+
outward?: boolean;
|
|
51
60
|
}
|
|
52
61
|
export interface AIMessageAskResponse {
|
|
53
62
|
output: AIMessageOutput;
|
|
@@ -41,21 +41,6 @@ export interface DashboardDef {
|
|
|
41
41
|
/** Owning app (filled by discovery); handy for grouping in the list. */
|
|
42
42
|
source?: string;
|
|
43
43
|
}
|
|
44
|
-
/**
|
|
45
|
-
* A single localized string. Kept as a flat LIST (not a lang->key->value map).
|
|
46
|
-
*
|
|
47
|
-
* The original reason (the http client mangled object KEYS, so "comms.dash.resolution_over_time" as a
|
|
48
|
-
* key got corrupted) no longer applies — that transform was removed on 2026-08-17. The flat list is
|
|
49
|
-
* kept because every consumer already iterates it and a nested map would be a migration for looks.
|
|
50
|
-
*/
|
|
51
|
-
export interface LocaleString {
|
|
52
|
-
lang: string;
|
|
53
|
-
key: string;
|
|
54
|
-
value: string;
|
|
55
|
-
}
|
|
56
|
-
export type LocaleBundle = LocaleString[];
|
|
57
|
-
/** Authoring convenience: turn a nested { lang: { key: value } } map into a transport-safe LocaleBundle. */
|
|
58
|
-
export declare function flattenLocales(nested: Record<string, Record<string, string>>): LocaleBundle;
|
|
59
44
|
/**
|
|
60
45
|
* Persisted, user-saved dashboard (future: the custom builder). Distinct from DashboardDef: it stores
|
|
61
46
|
* fully-resolved widget configs rather than a preset template.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LocaleBundle } from '../../platform/localization';
|
|
2
|
+
import { DashboardDef } from './dashboard';
|
|
2
3
|
import { DimensionDefinition } from './dimensions';
|
|
3
4
|
import { Grain, MetricFact } from './fact';
|
|
4
5
|
import { MetricDefinition } from './metric';
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { AttentionCtx, ParkMark, Priority, Scored } from '../../platform/attention';
|
|
2
|
+
import { Interaction } from './types';
|
|
3
|
+
/** The only statuses that can ask for attention; `closed` and `snoozed` never compete. */
|
|
4
|
+
export declare const ATTENTION_STATUSES: readonly ["open", "pending"];
|
|
5
|
+
/**
|
|
6
|
+
* Deterministic attention scoring for one conversation. No AI: every point is a transparent,
|
|
7
|
+
* testable rule, and each contributor lands in `reasons` so a reader can be told *why* something
|
|
8
|
+
* ranks where it does.
|
|
9
|
+
*
|
|
10
|
+
* Lives in domain because two sides now score: the comms UI (Focus, Mijn dag) and the comms
|
|
11
|
+
* server, which answers the assist board with its own scored nudges.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Penalty that sinks newsletters/automated bulk to the very bottom without removing them —
|
|
15
|
+
* larger than any positive contribution, so bulk always ranks below every real conversation.
|
|
16
|
+
*/
|
|
17
|
+
export declare const BULK_PENALTY = 1000;
|
|
18
|
+
/**
|
|
19
|
+
* Hours a first response is "allowed" per priority before an open interaction counts as
|
|
20
|
+
* SLA-at-risk. Also consumed by the Mijn dag KPI and the wait heuristic.
|
|
21
|
+
*/
|
|
22
|
+
export declare const SLA_HOURS_BY_PRIORITY: Record<Priority, number>;
|
|
23
|
+
/**
|
|
24
|
+
* How long you wait for a reply before the conversation asks for attention again. Without this
|
|
25
|
+
* bound a thread the customer never replied to would stay out of sight forever.
|
|
26
|
+
*/
|
|
27
|
+
export declare const FOLLOW_UP_HOURS = 72;
|
|
28
|
+
/** Effective recency timestamp: lastActivityAt, else createdAt, else 0. */
|
|
29
|
+
export declare function recencyOf(i: Interaction): number;
|
|
30
|
+
/**
|
|
31
|
+
* Is this conversation personally parked ("later")?
|
|
32
|
+
*
|
|
33
|
+
* Expires in two ways: time is up, or something arrived from the counterparty after parking —
|
|
34
|
+
* then the reason to put it aside is gone. Both derived at read time, so no wake job can lag
|
|
35
|
+
* behind. Unlike snooze this only affects your pile: a colleague still sees it.
|
|
36
|
+
*/
|
|
37
|
+
export declare function isParked(i: Interaction, ctx: AttentionCtx): boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Same question for one mark you already hold.
|
|
40
|
+
*
|
|
41
|
+
* Exists because the UI needs it: the Focus bar and the interaction header read one
|
|
42
|
+
* conversation's reminders and have no `remindersById`. Both only checked `remindAt > now` —
|
|
43
|
+
* half the rule. A conversation rightly back in Focus after a reply still showed
|
|
44
|
+
* "Geparkeerd tot …", and because that button is a toggle you could not park it again, only
|
|
45
|
+
* cancel. One rule, three readers: add a condition here, add it everywhere.
|
|
46
|
+
*/
|
|
47
|
+
export declare function isReminderActive(reminder: ParkMark | undefined, i: Interaction, now: number): boolean;
|
|
48
|
+
/** Whole hours an open interaction has been waiting (never negative). */
|
|
49
|
+
export declare function waitHoursOf(i: Interaction, now: number): number;
|
|
50
|
+
/** True when an open interaction has waited past its priority SLA budget. */
|
|
51
|
+
export declare function isSlaAtRisk(i: Interaction, now: number): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Is the ball with the counterparty? Then this conversation need not take your attention now.
|
|
54
|
+
*
|
|
55
|
+
* "Reply out the door" is an outbound *message*, not a note or a status change. And it is not
|
|
56
|
+
* forever: past {@link FOLLOW_UP_HOURS} the thread asks for attention again.
|
|
57
|
+
*/
|
|
58
|
+
export declare function isAwaitingThem(i: Interaction, now: number): boolean;
|
|
59
|
+
/** Score a single interaction. Returns {@link INELIGIBLE} when it shouldn't surface. */
|
|
60
|
+
export declare function scoreInteraction(i: Interaction, ctx: AttentionCtx): Scored;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Priority } from '../../platform/attention';
|
|
1
2
|
import { InteractionParticipant } from '../../platform/communication';
|
|
2
3
|
import { ActivityType, InteractionStatus } from '../activity/types';
|
|
3
4
|
export interface ActivityPreview {
|
|
@@ -86,7 +87,7 @@ export interface Interaction {
|
|
|
86
87
|
* `remoteParty.scheme`.
|
|
87
88
|
*/
|
|
88
89
|
shape?: "thread" | "conversation";
|
|
89
|
-
priority:
|
|
90
|
+
priority: Priority;
|
|
90
91
|
/**
|
|
91
92
|
* "Headline" counterparty — for 1-1 (mail/sms/direct chat) the only counterparty; for group
|
|
92
93
|
* chats and meetings the group or meeting Uri.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AttentionCtx, Scored } from '../../platform/attention';
|
|
2
|
+
import { WorkItem } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Score a single work item. Returns {@link INELIGIBLE} when it shouldn't surface.
|
|
5
|
+
*
|
|
6
|
+
* "Is this finished?" reads `closedAt` and not a status name: `apps/work` sets it on entering
|
|
7
|
+
* category `done` and clears it on the way back, so this holds for a project's own ladder
|
|
8
|
+
* ("Gewonnen", "Afgewezen") without knowing that ladder.
|
|
9
|
+
*
|
|
10
|
+
* A personal park hides the item until `remindAt` and nothing more: unlike a conversation, an
|
|
11
|
+
* item has no counterparty whose reply should wake it early.
|
|
12
|
+
*/
|
|
13
|
+
export declare function scoreWorkItem(t: WorkItem, ctx: AttentionCtx): Scored;
|
package/dist/index.cjs
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const x=10,_=10,T=10,b=5,Yt=new Set(["header","section","context","divider","image","list","actions","attachments"]);function v(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 qt(e,t=()=>{}){if(!Array.isArray(e))return[];const n=[];for(const r of e){if(n.length>=x){t(`more than ${x} blocks; the rest was dropped`);break}if(!r||typeof r!="object")continue;const i=r;if(!Yt.has(i.type)){t(`unknown block type ${String(i.type)}`);continue}switch(i.type){case"header":if(!v(i.text)){t("a header without text");continue}break;case"context":if(!v(i.text)){t("a context block without text");continue}break;case"image":if(!i.url||!i.alt){t("an image without url or alt");continue}break;case"section":Array.isArray(i.fields)&&i.fields.length>_&&(t(`more than ${_} fields in a section`),i.fields=i.fields.slice(0,_));break;case"list":if(!Array.isArray(i.items)||i.items.length===0){t("a list without items");continue}i.items.length>T&&(t(`more than ${T} list items`),i.items=i.items.slice(0,T));break;case"actions":{const a=Array.isArray(i.elements)?i.elements:[],o=a.filter(s=>s?.action_id&&s.invoke&&v(s.text));if(o.length!==a.length&&t("an action without action_id, invoke or text"),o.length===0)continue;o.length>b&&t(`more than ${b} actions`),i.elements=o.slice(0,b);break}}n.push(i)}return n}function be(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 y(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 oe(e){return e?` — ${Math.floor(e/60)}m ${e%60}s`:""}function D(e){return e?.split("@")?.[0]||e||""}function S(e){return e.map(t=>t.name).join(", ")}function se(e){return e==="meeting"?"Meeting":e==="video"?"Video call":"Audio call"}const m={VOICE_CALL_STARTED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gesprek gestart",timeline:e=>e.direction==="inbound"?`Inbound call started — ${D(e.payload.from)}`:`Outbound call started — ${D(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?` (${y(e.payload.duration)})`:""}`,timeline:e=>`Call ended${oe(e.payload.duration)}`},VOICE_CALL_MISSED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gemiste oproep",timeline:e=>`Missed call — ${D(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?` (${y(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:ce},EMAIL_SENT:{shape:"message",component:"communication:EmailActivity",channelKind:"mail",icon:"mail",replyable:!0,carriesText:!0,countsAs:"outbound_message",snippet:ce},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=>`${S(e.payload.members)} toegevoegd`,timeline:e=>{const t=S(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=>`${S(e.payload.members)} verlaten`,timeline:e=>{const t=S(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=>`${se(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?` (${y(e.payload.duration)})`:""}`,timeline:e=>`${se(e.payload.callType)} ended${oe(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?` (${y(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}`},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 ce(e){const t=e.payload,n=t.bodyText?.trim()||t.bodySnippet?.trim()||be(t.body??"");return t.subject?`${t.subject} — ${n}`:n}function c(e){return m[e]}function Jt(e){return c(e)?.icon??"circle"}function Zt(e){return c(e)?.channelKind}function H(e){return e==="message"||e==="note"}function Qt(e){return H(c(e)?.shape)}function en(e){return c(e)?.replyable===!0}function tn(e){return c(e)?.carriesText===!0}function nn(e){return c(e)?.countsAs}function rn(e){return c(e)?.playbookAuthored===!0}function an(e){return c(e)?.connected===!0}function on(e){const t=c(e);return t?.shape==="artifact"&&t?.carriesText===!0}function Ie(e){const t=c(e.type)?.snippet;return t?t(e):""}function sn(e,t){const n=c(e.type)?.timeline;return n?n(e,t):e.type.replace(/_/g," ").toLowerCase()}function cn(e){const t=c(e.type)?.joinUrl;return t?t(e):void 0}function O(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 N(e,t,n){if(e===void 0)return null;if(typeof e=="string")return e||null;if("value"in e)return O(t,e.value)||null;const r={};for(const[a,o]of Object.entries(e.params??{}))r[a]=O(t,o);const i=n(e.key,r);return i===e.key?null:i}function Me(e,t){if(!e||typeof e=="string"||"value"in e)return null;const n={};for(const[r,i]of Object.entries(e.params??{}))n[r]=O(t,i);return{key:e.key,params:n}}const le=140;function ln(e){const t=e.trim();return t.length<=le?t:`${t.slice(0,le-1).trimEnd()}…`}function un(e,t){const n=Me(t?.text,e),r=t?N(t.text,e,i=>i):null;return{activityId:e.id,type:e.type,snippet:ln(r??Ie(e)),authorName:e.author?.name??"",direction:e.direction,createdAt:e.createdAt??Date.now(),...n?{snippetKey:n.key,snippetParams:n.params}:{}}}const dn=e=>e;function ue(e){const t=m[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 de(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 Ce{constructor(t=[],n=dn){this.translate=n;for(const r of t)r?.type&&(r.type in m||this.declared.has(r.type)||this.declared.set(r.type,r))}declared=new Map;get(t){if(t in m)return ue(t);const n=this.declared.get(t);return n?de(n):void 0}triggerable(){const t=Object.keys(m).filter(r=>m[r].triggerable).map(ue),n=[...this.declared.values()].map(de).filter(r=>r.triggerable);return[...t,...n]}timelineText(t,n){const r=m[t.type];if(r?.timeline)return r.timeline(t,n);const i=this.declared.get(t.type);return N(i?.text,t,this.translate)??t.type.replace(/_/g," ").toLowerCase()}snippet(t){const n=m[t.type];if(n?.snippet)return n.snippet(t);const r=this.declared.get(t.type);return N(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 H(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 pn=new Ce;function fn(e,t,n=[]){const r=e.createdAt;if(!r)return[];const i=new Set(n);return e.author.type==="user"&&e.author.id&&i.add(e.author.id),Object.entries(t).filter(([a,o])=>o>=r&&!i.has(a)).map(([a])=>a)}function mn(e){return e.createdAt??0}function gn(e){return e.type==="EMAIL_RECEIVED"||e.type==="EMAIL_SENT"}function hn(e){return e.type==="CHAT_MESSAGE_SENT"||e.type==="CHAT_MESSAGE_RECEIVED"}const X=[{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 E(e){return X.find(t=>t.id===e)}function En(e){return E(e)?.label??e}function An(e,t="gpt-5-mini"){return E(e)?.defaultModel??t}function yn(e){return X.filter(t=>t.capabilities.includes(e))}function Sn(e){const t=E(e);return!!t&&!t.baseUrl}function _n(e,t){return t==="text"?!0:E(e)?.attachmentKinds?.includes(t)===!0}function Tn(e,t){if(!e.enabled)return"ok";const n=P(e.hardLimitNanos),r=P(e.softLimitNanos);return n!==void 0&&t>=n?"hard":r!==void 0&&t>=r?"soft":"ok"}function P(e){return typeof e=="number"?e:void 0}function Oe(e,t="month"){const n=new Date(e);return Date.UTC(n.getUTCFullYear(),n.getUTCMonth(),1)}function bn(e,t="month"){const n=new Date(Oe(e,t));return`${n.getUTCFullYear()}-${String(n.getUTCMonth()+1).padStart(2,"0")}`}function In(e){return e?.listeningEnabled!==!1}function Mn(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 Cn=[{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 L(e){return e<10?`0${e}`:`${e}`}function Ne(e,t){const n=new Date(e),r=`${n.getUTCFullYear()}-${L(n.getUTCMonth()+1)}-${L(n.getUTCDate())}`;return t==="day"?r:`${r}T${L(n.getUTCHours())}`}function Re(e,t){const n=new Date(e);return n.setUTCMinutes(0,0,0),t==="day"&&n.setUTCHours(0),n.getTime()}const On=36e5,Nn=864e5;function Rn(e,t,n){const r=n==="hour"?On:Nn,i=[];for(let a=Re(e,n);a<=t;a+=r)i.push(Ne(a,n));return i}const we=[{id:"resource",label:"Resource",labelSource:"raw"},{id:"origin",label:"Herkomst",labelSource:"raw"}],ke=we.map(e=>e.id);function ve(e,t){return`${e}.usage.${t}`}function wn(e,t){return t.map(n=>({id:ve(e,n.unit),label:n.label,category:"Verbruik",valueType:n.valueType??"count",aggregation:"sum",supportedDimensions:["provider",...ke,...n.extraDimensions??[],"time"]}))}const De=new Set(["info","success","warning","destructive"]),$=200,K=100,U=200,G=12,B=4,z=4e3,I=500,kn=256*1024,vn=new Set(["heading","paragraph","list","quote","code","divider","table","kpi","callout"]),Le=["http:","https:","mailto:","tel:"],Dn=/^[a-z][a-z0-9+.-]*:/i;function xe(e){const t=e.trim().replace(/^<|>$/g,"");if(!t)return!1;const n=Dn.exec(t)?.[0];return n?Le.includes(n.toLowerCase()):!t.startsWith("//")}const Ln=/^[ \t]{0,3}\[([^\]]+)\]:[ \t]*(\S+).*$/gm;function xn(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 i=n+(r?2:1),a=pe(e,i,"[","]");if(a<0||e[a+1]!=="("){t+=e[n],n+=1;continue}const o=pe(e,a+2,"(",")");if(o<0){t+=e[n],n+=1;continue}const s=e.slice(i,a),l=e.slice(a+2,o).trim().split(/\s+/)[0]??"";t+=r||!xe(l)?s:e.slice(n,o+1),n=o+1}return t}function pe(e,t,n,r){let i=1;for(let a=t;a<e.length;a+=1){if(e[a]==="\\"){a+=1;continue}if(e[a]===n)i+=1;else if(e[a]===r&&(i-=1,i===0))return a}return-1}function Pe(e){return xn(e).replace(Ln,(t,n,r)=>xe(r)?t:"")}function d(e,t=z){return typeof e=="string"?Pe(e).slice(0,t):""}function Pn(e,t=z){return typeof e=="string"?e.slice(0,t):""}function $n(e,t="info"){return typeof e=="string"&&De.has(e)?e:t}function Kn(e,t=()=>{}){if(!Array.isArray(e))return[];const n=[];for(const r of e){if(n.length>=$){t(`more than ${$} blocks; the rest was dropped`);break}if(!r||typeof r!="object")continue;const i=r;if(!vn.has(i.type)){t(`unknown block type ${String(i.type)}`);continue}const a=typeof i.block_id=="string"?{block_id:i.block_id}:{};switch(i.type){case"heading":{const o=d(i.text);if(!o){t("a heading without text");continue}const s=i.level===2||i.level===3?i.level:1;n.push({...a,type:"heading",level:s,text:o});break}case"paragraph":{const o=d(i.text);if(!o){t("a paragraph without text");continue}n.push({...a,type:"paragraph",text:o});break}case"quote":{const o=d(i.text);if(!o){t("a quote without text");continue}n.push({...a,type:"quote",text:o});break}case"code":{const o=Pn(i.text);if(!o){t("a code block without text");continue}const s=typeof i.lang=="string"?{lang:i.lang.slice(0,32)}:{};n.push({...a,type:"code",...s,text:o});break}case"divider":n.push({...a,type:"divider"});break;case"list":{const o=Array.isArray(i.items)?i.items:[],s=[];for(const p of o){if(s.length>=K){t(`more than ${K} list items`);break}const f=d(p?.text);if(!f)continue;const u=d(p?.lead,200);s.push(u?{lead:u,text:f}:{text:f})}if(s.length===0){t("a list without usable items");continue}const l=i.style==="numbered"?"numbered":"bulleted";n.push({...a,type:"list",style:l,items:s});break}case"table":{const o=Array.isArray(i.columns)?i.columns:[],s=[];for(const u of o){if(s.length>=G){t(`more than ${G} table columns`);break}const A=d(u?.label,I),k=u?.align==="right"?"right":void 0;s.push(k?{label:A,align:k}:{label:A})}if(s.length===0){t("a table without columns");continue}const l=Array.isArray(i.rows)?i.rows:[],p=[];for(const u of l){if(p.length>=U){t(`more than ${U} table rows`);break}const A=Array.isArray(u)?u:[];p.push(s.map((k,zt)=>d(A[zt],I)))}const f=d(i.caption,I);n.push({...a,type:"table",columns:s,rows:p,...f?{caption:f}:{}});break}case"kpi":{const o=Array.isArray(i.items)?i.items:[],s=[];for(const l of o){if(s.length>=B){t(`more than ${B} kpi items`);break}const p=d(l?.value,40),f=d(l?.label,80);if(!p||!f)continue;const u=l?.tone;s.push(typeof u=="string"&&De.has(u)?{value:p,label:f,tone:u}:{value:p,label:f})}if(s.length===0){t("a kpi block without usable items");continue}n.push({...a,type:"kpi",items:s});break}case"callout":{const o=d(i.text);if(!o){t("a callout without text");continue}const s=d(i.title,200);n.push({...a,type:"callout",tone:$n(i.tone),...s?{title:s}:{},text:o});break}}}return n}function Un(e){return JSON.stringify(e).length}function Gn(e){return{blocks:e.length,types:e.map(t=>t.type),headings:e.flatMap(t=>t.type==="heading"?[t.text]:[])}}function fe(e){return e.replace(/\|/g,"\\|").replace(/\r?\n/g," ").trim()}function me(e,t,n){const r=e.map((i,a)=>n?.[a]==="right"?"---:":"---");return[`| ${e.map(fe).join(" | ")} |`,`| ${r.join(" | ")} |`,...t.map(i=>`| ${i.map(fe).join(" | ")} |`)]}function Bn(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=me(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 me(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}`)}}function Fn(e,t){const n=[],r=e.some(i=>i.type==="heading"&&i.level===1);t&&!r&&n.push(`# ${t}`);for(const i of e){const a=Bn(i);a.length>0&&n.push(a.join(`
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const U=10,I=10,b=10,M=5,hn=new Set(["header","section","context","divider","image","list","actions","attachments"]);function P(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 An(e,t=()=>{}){if(!Array.isArray(e))return[];const n=[];for(const r of e){if(n.length>=U){t(`more than ${U} blocks; the rest was dropped`);break}if(!r||typeof r!="object")continue;const i=r;if(!hn.has(i.type)){t(`unknown block type ${String(i.type)}`);continue}switch(i.type){case"header":if(!P(i.text)){t("a header without text");continue}break;case"context":if(!P(i.text)){t("a context block without text");continue}break;case"image":if(!i.url||!i.alt){t("an image without url or alt");continue}break;case"section":Array.isArray(i.fields)&&i.fields.length>I&&(t(`more than ${I} fields in a section`),i.fields=i.fields.slice(0,I));break;case"list":if(!Array.isArray(i.items)||i.items.length===0){t("a list without items");continue}i.items.length>b&&(t(`more than ${b} list items`),i.items=i.items.slice(0,b));break;case"actions":{const a=Array.isArray(i.elements)?i.elements:[],o=a.filter(s=>s?.action_id&&s.invoke&&P(s.text));if(o.length!==a.length&&t("an action without action_id, invoke or text"),o.length===0)continue;o.length>M&&t(`more than ${M} actions`),i.elements=o.slice(0,M);break}}n.push(i)}return n}function Re(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 _(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 le(e){return e?` — ${Math.floor(e/60)}m ${e%60}s`:""}function x(e){return e?.split("@")?.[0]||e||""}function T(e){return e.map(t=>t.name).join(", ")}function ue(e){return e==="meeting"?"Meeting":e==="video"?"Video call":"Audio call"}const m={VOICE_CALL_STARTED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gesprek gestart",timeline:e=>e.direction==="inbound"?`Inbound call started — ${x(e.payload.from)}`:`Outbound call started — ${x(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?` (${_(e.payload.duration)})`:""}`,timeline:e=>`Call ended${le(e.payload.duration)}`},VOICE_CALL_MISSED:{shape:"event",channelKind:"voice",icon:"phone",snippet:()=>"Gemiste oproep",timeline:e=>`Missed call — ${x(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?` (${_(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:de},EMAIL_SENT:{shape:"message",component:"communication:EmailActivity",channelKind:"mail",icon:"mail",replyable:!0,carriesText:!0,countsAs:"outbound_message",snippet:de},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=>`${T(e.payload.members)} toegevoegd`,timeline:e=>{const t=T(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=>`${T(e.payload.members)} verlaten`,timeline:e=>{const t=T(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=>`${ue(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?` (${_(e.payload.duration)})`:""}`,timeline:e=>`${ue(e.payload.callType)} ended${le(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?` (${_(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}`},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 de(e){const t=e.payload,n=t.bodyText?.trim()||t.bodySnippet?.trim()||Re(t.body??"");return t.subject?`${t.subject} — ${n}`:n}function c(e){return m[e]}function En(e){return c(e)?.icon??"circle"}function yn(e){return c(e)?.channelKind}function z(e){return e==="message"||e==="note"}function Sn(e){return z(c(e)?.shape)}function _n(e){return c(e)?.replyable===!0}function Tn(e){return c(e)?.carriesText===!0}function Ce(e){return c(e)?.countsAs}function In(e){return c(e)?.playbookAuthored===!0}function bn(e){return c(e)?.connected===!0}function Mn(e){const t=c(e);return t?.shape==="artifact"&&t?.carriesText===!0}function we(e){const t=c(e.type)?.snippet;return t?t(e):""}function On(e,t){const n=c(e.type)?.timeline;return n?n(e,t):e.type.replace(/_/g," ").toLowerCase()}function Rn(e){const t=c(e.type)?.joinUrl;return t?t(e):void 0}function w(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 N(e,t,n){if(e===void 0)return null;if(typeof e=="string")return e||null;if("value"in e)return w(t,e.value)||null;const r={};for(const[a,o]of Object.entries(e.params??{}))r[a]=w(t,o);const i=n(e.key,r);return i===e.key?null:i}function Ne(e,t){if(!e||typeof e=="string"||"value"in e)return null;const n={};for(const[r,i]of Object.entries(e.params??{}))n[r]=w(t,i);return{key:e.key,params:n}}const pe=140;function Cn(e){const t=e.trim();return t.length<=pe?t:`${t.slice(0,pe-1).trimEnd()}…`}function wn(e,t){const n=Ne(t?.text,e),r=t?N(t.text,e,i=>i):null;return{activityId:e.id,type:e.type,snippet:Cn(r??we(e)),authorName:e.author?.name??"",direction:e.direction,createdAt:e.createdAt??Date.now(),...n?{snippetKey:n.key,snippetParams:n.params}:{}}}const Nn=e=>e;function fe(e){const t=m[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 me(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 ke{constructor(t=[],n=Nn){this.translate=n;for(const r of t)r?.type&&(r.type in m||this.declared.has(r.type)||this.declared.set(r.type,r))}declared=new Map;get(t){if(t in m)return fe(t);const n=this.declared.get(t);return n?me(n):void 0}triggerable(){const t=Object.keys(m).filter(r=>m[r].triggerable).map(fe),n=[...this.declared.values()].map(me).filter(r=>r.triggerable);return[...t,...n]}timelineText(t,n){const r=m[t.type];if(r?.timeline)return r.timeline(t,n);const i=this.declared.get(t.type);return N(i?.text,t,this.translate)??t.type.replace(/_/g," ").toLowerCase()}snippet(t){const n=m[t.type];if(n?.snippet)return n.snippet(t);const r=this.declared.get(t.type);return N(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 z(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 kn=new ke;function vn(e,t,n=[]){const r=e.createdAt;if(!r)return[];const i=new Set(n);return e.author.type==="user"&&e.author.id&&i.add(e.author.id),Object.entries(t).filter(([a,o])=>o>=r&&!i.has(a)).map(([a])=>a)}function ve(e){return e.createdAt??0}function Dn(e){return e.type==="EMAIL_RECEIVED"||e.type==="EMAIL_SENT"}function Ln(e){return e.type==="CHAT_MESSAGE_SENT"||e.type==="CHAT_MESSAGE_RECEIVED"}const q=[{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 y(e){return q.find(t=>t.id===e)}function Pn(e){return y(e)?.label??e}function xn(e,t="gpt-5-mini"){return y(e)?.defaultModel??t}function $n(e){return q.filter(t=>t.capabilities.includes(e))}function Un(e){const t=y(e);return!!t&&!t.baseUrl}function Kn(e,t){return t==="text"?!0:y(e)?.attachmentKinds?.includes(t)===!0}function Bn(e,t){if(!e.enabled)return"ok";const n=K(e.hardLimitNanos),r=K(e.softLimitNanos);return n!==void 0&&t>=n?"hard":r!==void 0&&t>=r?"soft":"ok"}function K(e){return typeof e=="number"?e:void 0}function De(e,t="month"){const n=new Date(e);return Date.UTC(n.getUTCFullYear(),n.getUTCMonth(),1)}function Gn(e,t="month"){const n=new Date(De(e,t));return`${n.getUTCFullYear()}-${String(n.getUTCMonth()+1).padStart(2,"0")}`}function Fn(e){return e?.listeningEnabled!==!1}const Wn=[{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){return e<10?`0${e}`:`${e}`}function Le(e,t){const n=new Date(e),r=`${n.getUTCFullYear()}-${$(n.getUTCMonth()+1)}-${$(n.getUTCDate())}`;return t==="day"?r:`${r}T${$(n.getUTCHours())}`}function Pe(e,t){const n=new Date(e);return n.setUTCMinutes(0,0,0),t==="day"&&n.setUTCHours(0),n.getTime()}const Hn=36e5,Vn=864e5;function jn(e,t,n){const r=n==="hour"?Hn:Vn,i=[];for(let a=Pe(e,n);a<=t;a+=r)i.push(Le(a,n));return i}const xe=[{id:"resource",label:"Resource",labelSource:"raw"},{id:"origin",label:"Herkomst",labelSource:"raw"}],$e=xe.map(e=>e.id);function Ue(e,t){return`${e}.usage.${t}`}function Xn(e,t){return t.map(n=>({id:Ue(e,n.unit),label:n.label,category:"Verbruik",valueType:n.valueType??"count",aggregation:"sum",supportedDimensions:["provider",...$e,...n.extraDimensions??[],"time"]}))}const Ke=new Set(["info","success","warning","destructive"]),B=200,G=100,F=200,W=12,H=4,J=4e3,O=500,Yn=256*1024,zn=new Set(["heading","paragraph","list","quote","code","divider","table","kpi","callout"]),Be=["http:","https:","mailto:","tel:"],qn=/^[a-z][a-z0-9+.-]*:/i;function Ge(e){const t=e.trim().replace(/^<|>$/g,"");if(!t)return!1;const n=qn.exec(t)?.[0];return n?Be.includes(n.toLowerCase()):!t.startsWith("//")}const Jn=/^[ \t]{0,3}\[([^\]]+)\]:[ \t]*(\S+).*$/gm;function Zn(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 i=n+(r?2:1),a=ge(e,i,"[","]");if(a<0||e[a+1]!=="("){t+=e[n],n+=1;continue}const o=ge(e,a+2,"(",")");if(o<0){t+=e[n],n+=1;continue}const s=e.slice(i,a),l=e.slice(a+2,o).trim().split(/\s+/)[0]??"";t+=r||!Ge(l)?s:e.slice(n,o+1),n=o+1}return t}function ge(e,t,n,r){let i=1;for(let a=t;a<e.length;a+=1){if(e[a]==="\\"){a+=1;continue}if(e[a]===n)i+=1;else if(e[a]===r&&(i-=1,i===0))return a}return-1}function Fe(e){return Zn(e).replace(Jn,(t,n,r)=>Ge(r)?t:"")}function d(e,t=J){return typeof e=="string"?Fe(e).slice(0,t):""}function Qn(e,t=J){return typeof e=="string"?e.slice(0,t):""}function er(e,t="info"){return typeof e=="string"&&Ke.has(e)?e:t}function tr(e,t=()=>{}){if(!Array.isArray(e))return[];const n=[];for(const r of e){if(n.length>=B){t(`more than ${B} blocks; the rest was dropped`);break}if(!r||typeof r!="object")continue;const i=r;if(!zn.has(i.type)){t(`unknown block type ${String(i.type)}`);continue}const a=typeof i.block_id=="string"?{block_id:i.block_id}:{};switch(i.type){case"heading":{const o=d(i.text);if(!o){t("a heading without text");continue}const s=i.level===2||i.level===3?i.level:1;n.push({...a,type:"heading",level:s,text:o});break}case"paragraph":{const o=d(i.text);if(!o){t("a paragraph without text");continue}n.push({...a,type:"paragraph",text:o});break}case"quote":{const o=d(i.text);if(!o){t("a quote without text");continue}n.push({...a,type:"quote",text:o});break}case"code":{const o=Qn(i.text);if(!o){t("a code block without text");continue}const s=typeof i.lang=="string"?{lang:i.lang.slice(0,32)}:{};n.push({...a,type:"code",...s,text:o});break}case"divider":n.push({...a,type:"divider"});break;case"list":{const o=Array.isArray(i.items)?i.items:[],s=[];for(const p of o){if(s.length>=G){t(`more than ${G} list items`);break}const f=d(p?.text);if(!f)continue;const u=d(p?.lead,200);s.push(u?{lead:u,text:f}:{text:f})}if(s.length===0){t("a list without usable items");continue}const l=i.style==="numbered"?"numbered":"bulleted";n.push({...a,type:"list",style:l,items:s});break}case"table":{const o=Array.isArray(i.columns)?i.columns:[],s=[];for(const u of o){if(s.length>=W){t(`more than ${W} table columns`);break}const S=d(u?.label,O),L=u?.align==="right"?"right":void 0;s.push(L?{label:S,align:L}:{label:S})}if(s.length===0){t("a table without columns");continue}const l=Array.isArray(i.rows)?i.rows:[],p=[];for(const u of l){if(p.length>=F){t(`more than ${F} table rows`);break}const S=Array.isArray(u)?u:[];p.push(s.map((L,gn)=>d(S[gn],O)))}const f=d(i.caption,O);n.push({...a,type:"table",columns:s,rows:p,...f?{caption:f}:{}});break}case"kpi":{const o=Array.isArray(i.items)?i.items:[],s=[];for(const l of o){if(s.length>=H){t(`more than ${H} kpi items`);break}const p=d(l?.value,40),f=d(l?.label,80);if(!p||!f)continue;const u=l?.tone;s.push(typeof u=="string"&&Ke.has(u)?{value:p,label:f,tone:u}:{value:p,label:f})}if(s.length===0){t("a kpi block without usable items");continue}n.push({...a,type:"kpi",items:s});break}case"callout":{const o=d(i.text);if(!o){t("a callout without text");continue}const s=d(i.title,200);n.push({...a,type:"callout",tone:er(i.tone),...s?{title:s}:{},text:o});break}}}return n}function nr(e){return JSON.stringify(e).length}function rr(e){return{blocks:e.length,types:e.map(t=>t.type),headings:e.flatMap(t=>t.type==="heading"?[t.text]:[])}}function he(e){return e.replace(/\|/g,"\\|").replace(/\r?\n/g," ").trim()}function Ae(e,t,n){const r=e.map((i,a)=>n?.[a]==="right"?"---:":"---");return[`| ${e.map(he).join(" | ")} |`,`| ${r.join(" | ")} |`,...t.map(i=>`| ${i.map(he).join(" | ")} |`)]}function ir(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=Ae(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 Ae(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}`)}}function ar(e,t){const n=[],r=e.some(i=>i.type==="heading"&&i.level===1);t&&!r&&n.push(`# ${t}`);for(const i of e){const a=ir(i);a.length>0&&n.push(a.join(`
|
|
2
2
|
`))}return`${n.join(`
|
|
3
3
|
|
|
4
4
|
`)}
|
|
5
|
-
`}const
|
|
5
|
+
`}const Z=e=>`user:${e}`,Q=e=>`team:${e}`;function or(e){const t=new Set;for(const n of e??[])n?.id&&(n.kind==="user"&&t.add(Z(n.id)),n.kind==="team"&&t.add(Q(n.id)));return[...t].sort()}function sr(e,t){return[Z(e),...t.map(Q)]}function cr(e){const t=new Set;for(const n of e??[])n?.kind&&t.add(n.kind);return[...t]}const We=["done","escalated"];function lr(e){return We.includes(e)}const He="assignment";function ur(e){return`${He}:${e}`}function dr(e,t,n){if(e.direction==="inbound")return!0;if(e.author?.type==="user"&&e.author.id===t)return!1;const r=e.payload?.mentions;return Array.isArray(r)&&r.includes(t)?!0:n==="reply"}function pr(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}const Ve=12;function fr(e,t,n=Ve){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 mr=new Set(["mail","message"]);function je(e,t){const n=e.settings?.signatures?.[t];return!n?.enabled||!n.body||n.body.trim()===""?null:n}function gr(e,t,n,r="html"){if(!e)return n;const i=je(e,t);return i?`${n}${r==="text"?`
|
|
6
6
|
|
|
7
|
-
`:t==="mail"?"<br><br>-- <br>":"<br><br>"}${i.body}`:n}function Qn(e){return e.endpoints??[]}const er=e=>!!e.assignedUserId||!!e.assignedInboxId,tr=e=>e.status==="closed",nr=e=>({urgent:10,high:5,normal:2,low:1})[e.priority]||0,rr=(e,t=30)=>e.title?.length<=t?e.title:`${e.title.substring(0,t)}...`;function ir(e,t){return e.lastActivityAt?!(e.seenBy??[]).includes(t):!1}function ar(e,t){const n=e.labels??[];return n.find(r=>r.locale===t)?.label??n[0]?.label??e.url}function or(e,t,n){const r=e.translations??[];return r.find(i=>i.locale===t)??(n?r.find(i=>i.locale===n):void 0)??{locale:t}}const F=[{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 Be(e){const t=(e??"").toLowerCase();return F.find(n=>n.code===t)??F.find(n=>n.code===t.split("-")[0])}function sr(e){return Be(e)?.label??e}function cr(e){const t=Be(e);return t?t.english===t.label?`${t.english} (${t.code})`:`${t.english} — ${t.label} (${t.code})`:e}const J=3;function Fe(e,t){const n=new Set;let r=1,i=t.get(e)?.parentId;for(;i;){if(n.has(i)||(n.add(i),r++,r>J+1))return 1/0;i=t.get(i)?.parentId}return r}function lr(e,t,n){if(!e)return!0;if(e===t)return!1;const r=new Map(n.map(o=>[o.id,o]));if(!r.has(e)||t&&We(e,t,r))return!1;const i=Fe(e,r),a=t?Z(t,n):1;return i+a<=J}function We(e,t,n){const r=new Set;let i=n.get(e)?.parentId;for(;i;){if(i===t)return!0;if(r.has(i))return!1;r.add(i),i=n.get(i)?.parentId}return!1}function Z(e,t,n=new Set){if(n.has(e))return 1;n.add(e);const r=t.filter(i=>i.parentId===e);return r.length?1+Math.max(...r.map(i=>Z(i.id,t,n))):1}const Ve="en";function je(e){return e.defaultLocale||e.locale||Ve}function ur(e){const t=new Set,n=[];for(const r of[je(e),...e.locales??[]])!r||t.has(r)||(t.add(r),n.push(r));return n}function dr(e,t,n){const r=e.translations??[];return r.find(i=>i.locale===t)?.name??(n?r.find(i=>i.locale===n)?.name:void 0)??e.name}const W=["lookup","condition","parallel","for-each"];function V(e){for(const t of e){if(!W.includes(t.type))return`staptype "${t.type}" mag niet meelezen (alleen ${W.join(", ")})`;if(t.type==="parallel")for(const n of t.branches??[]){const r=V(n);if(r)return r}if(t.type==="for-each"){const n=V(t.body??[]);if(n)return n}}return null}function pr(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 fr(e,t){return e.filter(n=>n.enabled&&pr(n.ownerScope,t))}function mr(e){return e.credentialScope?e.credentialScope:(e.authMode??"header")==="header"||e.oauth?.scope==="org"?"shared":"per-user"}function gr(e){return`mcp__${e}__`}const hr=1e3,Er=2e3,Ar=500,yr=12e3,Sr=4e3,He=["contact","company","work_item"];function _r(e){if(!e)return!1;const t=e.slice(0,e.indexOf(":"));return He.includes(t)}const Tr="onboarding-source",br=["support","billing","availability","sales","onboarding"],Ir=["keep","replace"];function Xe(e){switch(e.kind){case"user":return`user:${e.userId}`;case"team":return`team:${e.teamId}`;case"org":return"org"}}function Mr(e){if(typeof e!="string")return;const t=e.trim();if(t==="org")return{kind:"org"};const n=t.indexOf(":");if(n<=0)return;const r=t.slice(0,n),i=t.slice(n+1).trim();if(i){if(r==="user")return{kind:"user",userId:i};if(r==="team")return{kind:"team",teamId:i}}}function ze(e){return Xe(e)}function Ye(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 qe=Ye;function Cr(e){return e.agentId?{kind:"user",userId:e.agentId}:qe(e.ownerScope)}function Or(e){return ze(e)}function Nr(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 Rr(e,t){return e.targets.find(n=>n.activityTypes.includes(t))}function wr(e,t){if(t)return e.targets.find(n=>n.id===t)}function Je(e){return e?.kind==="assignment"}function kr(e){const{trigger:t,agentId:n,target:r,activityType:i,assigneeUserId:a,authorUserId:o}=e;return Je(t)?n?r?r.activityTypes.includes(i)?a?a!==n?"assigned to someone else":o&&o===n?"the agent assigned this to itself, which would restart its own run":null:`no assignee found at ${r.assigneePath}`:`activity type ${i} does not announce an assignment for ${r.id}`:`assignment target kind "${t.targetKind}" is not declared by any installed app`:"this playbook has no agent, so an assignment can never be for it":"trigger is not an assignment trigger"}function vr(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/__/g," · ").replace(/\./g," · ").replace(/_/g," ")}const Dr=[{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:"assigneeUserId",type:"string"}],Lr={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 Ze(e){return`${e.type}:${e.id}`}const Qe="interaction";function et(e){return e?.type===Qe?e.id:void 0}const tt=64,nt=8e3;function xr(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),tt),nt)}const Pr={kind:"workflow",steps:[]};function $r(e){return e?.kind==="workflow"?e.steps:[]}function Kr(e){return e?.kind==="procedure"?e.procedure:void 0}const rt=["done","escalated","failed","stopped"];function Ur(e){return rt.includes(e)}function it(e){return e==="waiting"}function Gr(e){return e==="running"||it(e)}function Q(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}function Br(e){const t=Q(e);return t?Ze(t):void 0}function Fr(e){return et(Q(e))}function Wr(e,t){const n=e.accumulatedSeconds||0;return e.runningSince?n+Math.max(0,Math.floor((t-e.runningSince)/1e3)):n}function Vr(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 jr(e){const t=Math.max(0,Math.round(e/60));return`${Math.floor(t/60)}:${String(t%60).padStart(2,"0")}`}function Hr(e){const t=Math.max(0,Math.floor(e)),n=a=>String(a).padStart(2,"0"),r=Math.floor(t/60)%60,i=Math.floor(t/3600);return i>0?`${i}:${n(r)}:${n(t%60)}`:`${n(r)}:${n(t%60)}`}function at(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function Xr(e,t){const n=at(e)||"werksoort",r=new Set(t);if(!r.has(n))return n;for(let i=2;i<500;i++){const a=`${n}-${i}`;if(!r.has(a))return a}return`${n}-${r.size+1}`}function zr(e,t){const n=e.ownerScope;return!n||n.kind==="org"?!0:t.includes(n.teamId)}function Yr(e){return e.filter(t=>!t.archived).sort(ot)}function ot(e,t){const n=(e.order??0)-(t.order??0);return n!==0?n:(e.label||"").localeCompare(t.label||"")}const st=20,ct=20,M=300;function g(e){return e.toLowerCase().replace(/[^\p{L}\p{N}\s]/gu," ").replace(/\s+/g," ").trim()}function lt(e){const t=e.replace(/\s+/g," ").trim();if(t.length<=M)return t;const n=t.slice(0,M),r=Math.max(n.lastIndexOf(". "),n.lastIndexOf("! "),n.lastIndexOf("? "));return r>M*.6?n.slice(0,r+1):`${n.trimEnd()}…`}function qr(e,t){const n=lt(t.text),r=g(n);if(!r||(e.examples??[]).some(o=>g(o)===r))return null;const i=e.exampleCandidates??[],a=i.findIndex(o=>g(o.text)===r);if(a>=0){if(i[a].corrected||!t.corrected)return null;const o=[...i];return o[a]={...o[a],corrected:!0,addedAt:t.addedAt},ge(o)}return ge([{...t,text:n},...i]).slice(0,ct)}function ge(e){return[...e].sort((t,n)=>Number(n.corrected)-Number(t.corrected)||n.addedAt-t.addedAt)}function Jr(e,t){const n=g(t),r=(e.examples??[]).filter(a=>a.trim());return{examples:r.some(a=>g(a)===n)?r:[...r,t].slice(-st),exampleCandidates:ut(e,t)}}function ut(e,t){const n=g(t);return(e.exampleCandidates??[]).filter(r=>g(r.text)!==n)}function dt(e,t){const n=e.ownerScope;return n?n.kind==="org"?!0:n.kind==="team"?!!t&&n.teamId===t:!1:!1}function Zr(e,t){return e.filter(n=>dt(n,t))}function Qr(e){return e.type==="agent"}const ei="WORK_COMMENT_ADDED",ti="WORK_ITEM_ASSIGNED",ni="WORK_ITEM_STATUS_CHANGED",pt="work_item",ft="work_project";function mt(e){return`${pt}:${e}`}function ee(e){return`${ft}:${e}`}function ri(e,t,n){const r=`${e}-${t}`;return n?`${r}-${n}`:r}function ii(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 ai(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toUpperCase().replace(/[^A-Z0-9]/g,"").slice(0,3)||"PRJ"}function oi(e,t=25){const n=new Set([mt(e.id)]);e.projectId&&n.add(ee(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 si(e){return[ee(e.id)]}const R=[{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}],te=R.map(e=>e.key);function gt(e){return e?.statuses?.length?e.statuses:R}function ht(e,t){return t.find(n=>n.key===e)?.category??"todo"}function ci(e,t){return t.find(n=>n.key===e)}function li(e){const t=gt(e),n=e?.defaultStatusKey;return n&&t.some(r=>r.key===n)?n:Et(t)[0]?.key??R[0].key}function Et(e){return[...e].sort((t,n)=>{const r=(t.order??0)-(n.order??0);return r!==0?r:(t.label||"").localeCompare(n.label||"")})}function ui(e,t){return ht(e,t)==="done"}function At(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function di(e,t){const n=At(e)||"status",r=new Set([...t,...te]);if(!r.has(n))return n;for(let i=2;i<500;i++){const a=`${n}-${i}`;if(!r.has(a))return a}return`${n}-${r.size+1}`}function pi(e){const t=[];if(!e.length)return[{index:-1,reason:"empty"}];const n=new Set;return e.forEach((r,i)=>{if(!r.key){t.push({index:i,reason:"missing_key"});return}te.includes(r.key)&&t.push({index:i,reason:"reserved_key",key:r.key}),n.has(r.key)&&t.push({index:i,reason:"duplicate_key",key:r.key}),n.add(r.key)}),e.some(r=>r.category==="todo"||r.category==="in_progress")||t.push({index:-1,reason:"no_open"}),e.some(r=>r.category==="done")||t.push({index:-1,reason:"no_done"}),t}const fi=new Set(["image/png","image/jpeg","image/jpg","image/gif","image/webp"]),mi=new Set(["text/plain","text/markdown","text/csv","application/json","text/html","application/xml","text/xml"]);function yt(e){const t=(e??"").trim().toLowerCase().split(";")[0];return t?fi.has(t)?"image":t==="application/pdf"?"pdf":mi.has(t)?"text":t.startsWith("audio/")?"audio":"unsupported":"unsupported"}const h=1024*1024,St={image:5*h,pdf:20*h,text:1*h,audio:20*h},gi=25*h,hi=5;function Ei(e,t){const n=yt(e);return n==="unsupported"?"unsupported":t>St[n]?"too-large":null}function _t(e){return`${e.kind}:${e.id||e.url||e.title}`}function Ai(e,t=[]){const n=new Set(t),r=[],i=[];for(const a of e){const o=_t(a);n.has(o)||(n.add(o),r.push(a),i.push(o))}return{sources:r,keys:i}}function yi(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&e.canHold(t.providerId))}function Si(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&!e.canHold(t.providerId))}function _i(e){return e.sessions.some(n=>n.id!==e.exceptSessionId&&(n.state==="connected"||n.state==="on_hold"))?{admit:!1,reason:"busy"}:{admit:!0}}function Tt(e,t){const n=new Set(e.disabledIntents??[]),r=e.intentOverrides??{},i=t.intents.filter(o=>!n.has(o.intent)).map(o=>bi(o,r[o.intent]));if(!e.extraIntents||e.extraIntents.length===0)return i;const a=new Set(i.map(o=>o.intent));for(const o of e.extraIntents)a.has(o.intent)||(i.push(o),a.add(o.intent));return i}function bt(e,t){const n={};for(const r of e.intents){if(!r.togglable)continue;const i=t?.[r.intent];n[r.intent]=i??r.defaultEnabled??!0}return n}function Ti(e,t){const n=bt(e,t);return Object.entries(n).filter(([,r])=>!r).map(([r])=>r)}function bi(e,t){return t?{intent:t.intent??e.intent,targetSchemes:t.targetSchemes??e.targetSchemes,transport:t.transport??e.transport}:e}function Ii(e,t){const n=[];for(const r of e){if(!r.enabled)continue;const i=t[r.providerId];if(i)for(const a of Tt(r,i))n.push({channel:r,description:i,capability:a})}return n}function Mi(e,t){return t.filter(n=>n.capability.intent===e)}function It(e,t){return t.filter(n=>n.capability.targetSchemes.includes(e))}function Ci(e,t){return It(e.scheme,t)}function Oi(e,t,n){const r=[];for(const i of e)for(const a of n)a.capability.intent===t&&a.capability.targetSchemes.includes(i.scheme)&&r.push({channelIntent:a,endpoint:i});return r}var Mt=(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))(Mt||{});const Ni={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 Ri(e){return e?Ni[e]??"note":"note"}const wi="message_window",ki="message_templates",vi={FROM:"from",TO:"to",CC:"cc",BCC:"bcc",ORGANIZER:"organizer",PRESENTER:"presenter",ATTENDEE:"attendee",OWNER:"owner",MEMBER:"member",GUEST:"guest",HOST:"host",PARTICIPANT:"participant"},Di=(e,t)=>({intent:e,...t}),Li="folder_management",xi="remote_search",Pi={ok:!1,code:"UNSUPPORTED",message:"Provider does not support this op"},$i="installation-id",Ki="notification-source",Ui=(e,t)=>`${e}.pref.${t}`,Gi={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"],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","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"]},ne=9e4,Ct=["out_of_office"],Ot=e=>Ct.includes(e);function Bi(e,t,n){const r=n-e<ne,i=t?.status&&(!t.expiresAt||t.expiresAt>n)?t:void 0;if(!i?.status)return{online:r,status:r?"available":"offline"};const a=i.status;return!r&&!Ot(a)?{online:!1,status:"offline"}:{online:r,status:a,message:i.message}}function Fi(e,t){const n=t-e.lastSeenAt<ne,r=n||Ot(e.status)?e.status:"offline";return n===e.online&&r===e.status?e:{...e,online:n,status:r}}function Wi(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 Vi(e){return e.providerAvailable&&e.allowed}const ji="resources.describe",Hi="resources.search",Xi="resources.resolve";function zi(e){const t=e.indexOf(":");return t===-1?e:e.slice(0,t)}const re="auth";function ie(e){const t=typeof e=="string"?e.match(/apps\/([^/?#]+)/):null;return t?t[1]:null}function Yi(e){const t=ie(e);return t?t!==re:typeof e=="string"&&e.startsWith("/wake")}function qi(e){return typeof e!="string"||e===""||e==="/"?!0:ie(e)===re}function Ji(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Nt(e){const n=e.split("/").filter(Boolean).map(r=>r.startsWith(":")?r.endsWith("?")?"(?:/[^/]+)?":"/[^/]+":`/${Ji(r)}`).join("");return new RegExp(`^${n}\\/?$`)}function Rt(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean),i={};return n.forEach((a,o)=>{if(a.startsWith(":")){const s=a.endsWith("?")?a.slice(1,-1):a.slice(1),l=r[o];l&&(i[s]=l)}}),i}function wt(e){return e.publicBasePath??`/apps/${e.name}`}function Zi(e){const t=[];for(const n of e){if(!n?.name)continue;const r=wt(n);for(const i of n.routes??[]){if(!i.public)continue;const a=i.path==="/"?"":i.path;t.push({appName:n.name,resource:i.resource,pattern:`${r}${a}`,props:i.props})}}return t}function kt(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean);for(let i=0;i<Math.min(n.length,r.length);i++){const a=n[i].startsWith(":"),o=r[i].startsWith(":");if(a!==o)return o}return n.length>r.length}function vt(e,t){if(typeof e!="string")return null;let n=null;for(const r of t)Nt(r.pattern).test(e)&&(!n||kt(r.pattern,n.pattern))&&(n=r);return n?{...n,params:{...n.props,...Rt(n.pattern,e)}}:null}function Qi(e,t){return vt(e,t)!==null}const ea="sync-source",ta="sync-target",na=20,ra={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]"]},Dt=e=>{let t=e;return Object.values(ra).forEach(n=>{n.forEach(r=>{t=t.replaceAll(r,"")})}),t=t.replace(/\(.*?\)/g,""),t=t.replace(/\[.*?\]/g,""),t},Lt=6e4,xt=8e3,Pt=2,$t=.4,ia=3,aa=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 Kt(e){const t=new Set;for(const n of e.toLowerCase().split(/[^a-z0-9À-ɏ]+/))n.length<ia||aa.has(n)||t.add(n);return[...t]}function Ut(e,t){if(!e.length)return 0;if(!t.length)return 1;const n=new Set(t),r=new Set(e);let i=0;for(const a of r)n.has(a)||(i+=1);return i/r.size}function Gt(e,t=Lt){const n=e.filter(o=>!o.partial&&typeof o.text=="string");if(!n.length)return{text:"",segmentCount:0};const i=n.reduce((o,s)=>Math.max(o,s.endedAt??0),0)-t;return{text:n.filter(o=>(o.endedAt??0)>=i).map(o=>Dt(o.text).trim()).filter(Boolean).join(" ").replace(/\s+/g," ").trim(),segmentCount:n.length}}const Bt=60;function oa(e,t,n=Bt){const r=new Set(e),i=[...e];for(const a of t)!a||r.has(a)||(r.add(a),i.push(a));return i.slice(-n)}function sa(e){const{segments:t,now:n,state:r}=e;if(r.lastTriggerAt&&n-r.lastTriggerAt<xt)return{trigger:!1,reason:"too_soon"};const i=Gt(t,e.windowMs);if(!i.text)return{trigger:!1,reason:"no_speech"};const a=i.segmentCount-(r.lastSegmentCount??0);if(r.lastQueryTerms&&a<Pt)return{trigger:!1,reason:"too_few_new"};const o=Kt(i.text);return o.length?r.lastQueryTerms?.length&&Ut(o,r.lastQueryTerms)<$t?{trigger:!1,reason:"same_topic"}:{trigger:!0,text:i.text,terms:o,segmentCount:i.segmentCount}:{trigger:!1,reason:"no_speech"}}const ca="navNotice",w={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}},Ft="NL",la=15,ua=8,da=Array.from(new Set(Object.values(w).map(e=>e.callingCode))).sort((e,t)=>t.length-e.length);function he(e){if(e)return w[e.trim().toUpperCase()]}function C(e,t){return e.length>=t.nsnMin&&e.length<=t.nsnMax}function Ee(e){if(e.length>la)return null;for(const t of da){if(!e.startsWith(t))continue;const n=e.slice(t.length);for(const r of Object.values(w)){if(r.callingCode!==t)continue;const i=r.trunkPrefix,a=i&&n.startsWith(i)?n.slice(i.length):n;if(C(a,r))return`+${t}${a}`}return null}return e.length<ua?null:`+${e}`}function pa(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 fa(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 j(e,t){if(!e)return null;const n=pa(e);if(!n)return null;const r=n.startsWith("+"),i=n.replace(/\D/g,"");if(!i)return null;if(r)return Ee(i);if(i.startsWith("00"))return Ee(i.slice(2));const a=he(t)??he(Ft);if(!a)return null;const o=a.trunkPrefix;if(o&&i.startsWith(o)){const s=i.slice(o.length);return C(s,a)?`+${a.callingCode}${s}`:null}if(i.startsWith(a.callingCode)){const s=i.slice(a.callingCode.length);if(C(s,a))return`+${a.callingCode}${s}`}return!o&&C(i,a)?`+${a.callingCode}${i}`:null}function ma(e,t=9){const n=(e??"").replace(/\D/g,"");return n.length<t?null:n.slice(-t)}function ae(e){if(!e)return null;const t=e.trim().toLowerCase(),n=t.lastIndexOf("@");if(n<=0||n===t.length-1)return null;const r=t.slice(0,n).split("+")[0],i=t.slice(n+1);return!r||!i.includes(".")?null:`${r}@${i}`}function ga(e){const t=ae(e);return t?t.slice(t.lastIndexOf("@")+1):null}const ha=new Set(["co.uk","org.uk","gov.uk","ac.uk","com.au","co.nz","com.br","co.za"]);function Wt(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 ha.has(n)&&t.length>=3?t.slice(-3).join("."):n}const Vt=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 Ea(e){const t=Wt(e);return t?Vt.has(t):!1}function Aa(e){if(!e)return!1;const t=e.trim().toLowerCase();return t==="tel"||t==="sms"||t==="whatsapp"||t==="fax"}function ya(e,t,n){if(!e||!t)return null;const r=e.trim().toLowerCase();if(r==="tel"||r==="sms"||r==="whatsapp"){const a=j(t,n);return a?`tel:${a}`:null}if(r==="fax"){const a=j(t,n);return a?`fax:${a}`:null}if(r==="mailto"||r==="email"){const a=ae(t);return a?`mailto:${a}`:null}const i=t.trim().toLowerCase();return i?`${r}:${i}`:null}const Sa=/(\*\*|__)(?=\S)([\s\S]*?\S)\1/g,_a=/(\*|_)(?=\S)([^*_\n]*?\S)\1/g;function Ta(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(`
|
|
7
|
+
`:t==="mail"?"<br><br>-- <br>":"<br><br>"}${i.body}`:n}function hr(e){return e.endpoints??[]}const Xe=36e5,Ye=864e5,g=-1/0,Ar=e=>e.score>g,E={urgent:40,high:25,normal:10,low:0};function Er(e){return Object.fromEntries(e.map(t=>[t.resourceId,t]))}const yr=/(^|[._+-])(no-?reply|noreply|donotreply|do-not-reply|newsletter|nieuwsbrief|mailer|mailing|notifications?|bounce|postmaster|marketing)@/i,Sr=/\b(unsubscribe|afmelden|uitschrijven|opt[\s-]?out|manage (your )?preferences|geen (e-?mails?|nieuwsbrief|berichten) meer)\b/i;function ze(e,t){return!!(e&&yr.test(e)||t&&Sr.test(t))}const qe=3,Je=600;function _r(e,t){return e>=qe||t>=Je}function Ze(e,t){return e.lastActivityAt?!(e.seenBy??[]).includes(t):!1}const Qe=["open","pending"],et=1e3,tt={urgent:1,high:4,normal:8,low:24},nt=72;function rt(e){return e.lastActivityAt??(e.createdAt?new Date(ve(e)).getTime():0)}function it(e,t){return at(t.remindersById?.[e.id],e,t.now)}function at(e,t,n){return!e||e.remindAt<=n?!1:!((t.lastActivityAt??0)>e.parkedAt&&t.lastActivityPreview?.direction==="inbound")}const ot=e=>Ce(e)==="outbound_message",st=e=>Qe.includes(e);function k(e,t){return Math.max(0,(t-rt(e))/Xe)}function Tr(e,t){return!st(e.status)||e.firstResponseAt?!1:k(e,t)>tt[e.priority??"normal"]}function ct(e,t){const n=e.lastActivityPreview;return n?.direction!=="outbound"||!ot(n.type)?!1:k(e,t)<nt}function Ir(e,t){if(!st(e.status))return{score:g,reasons:[]};if(e.snoozedTill&&e.snoozedTill>t.now)return{score:g,reasons:[]};if(ct(e,t.now))return{score:g,reasons:[]};if(it(e,t))return{score:g,reasons:[]};let n=0;const r=[],i=e.priority??"normal";E[i]>0&&(n+=E[i],r.push(`priority:${i}`)),Ze(e,t.userId)&&(n+=20,r.push("unseen")),e.assignedUserId&&e.assignedUserId===t.userId&&(n+=15,r.push("assigned-to-you"));const a=k(e,t.now);if(a>0){const s=Math.min(a*2,30);n+=s,a>=1&&r.push(`waiting:${Math.round(a)}h`)}const o=e.lastActivityPreview;return o?.type==="AI_ACTION_PROPOSED"&&(n+=30,r.push("awaiting-approval")),o?.direction==="outbound"&&ot(o.type)&&(n+=10,r.push("no-reply")),!e.firstResponseAt&&e.lastActivityPreview?.direction==="inbound"&&(n+=10,r.push("awaiting-reply")),ze(e.remoteParty?.resource,e.lastActivityPreview?.snippet)&&(n-=et,r.push("bulk")),{score:n,reasons:r}}const br=e=>!!e.assignedUserId||!!e.assignedInboxId,Mr=e=>e.status==="closed",Or=e=>({urgent:10,high:5,normal:2,low:1})[e.priority]||0,Rr=(e,t=30)=>e.title?.length<=t?e.title:`${e.title.substring(0,t)}...`;function Cr(e,t){const n=e.labels??[];return n.find(r=>r.locale===t)?.label??n[0]?.label??e.url}function wr(e,t,n){const r=e.translations??[];return r.find(i=>i.locale===t)??(n?r.find(i=>i.locale===n):void 0)??{locale:t}}const V=[{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 lt(e){const t=(e??"").toLowerCase();return V.find(n=>n.code===t)??V.find(n=>n.code===t.split("-")[0])}function Nr(e){return lt(e)?.label??e}function kr(e){const t=lt(e);return t?t.english===t.label?`${t.english} (${t.code})`:`${t.english} — ${t.label} (${t.code})`:e}const ee=3;function ut(e,t){const n=new Set;let r=1,i=t.get(e)?.parentId;for(;i;){if(n.has(i)||(n.add(i),r++,r>ee+1))return 1/0;i=t.get(i)?.parentId}return r}function vr(e,t,n){if(!e)return!0;if(e===t)return!1;const r=new Map(n.map(o=>[o.id,o]));if(!r.has(e)||t&&dt(e,t,r))return!1;const i=ut(e,r),a=t?te(t,n):1;return i+a<=ee}function dt(e,t,n){const r=new Set;let i=n.get(e)?.parentId;for(;i;){if(i===t)return!0;if(r.has(i))return!1;r.add(i),i=n.get(i)?.parentId}return!1}function te(e,t,n=new Set){if(n.has(e))return 1;n.add(e);const r=t.filter(i=>i.parentId===e);return r.length?1+Math.max(...r.map(i=>te(i.id,t,n))):1}const pt="en";function ft(e){return e.defaultLocale||e.locale||pt}function Dr(e){const t=new Set,n=[];for(const r of[ft(e),...e.locales??[]])!r||t.has(r)||(t.add(r),n.push(r));return n}function Lr(e,t,n){const r=e.translations??[];return r.find(i=>i.locale===t)?.name??(n?r.find(i=>i.locale===n)?.name:void 0)??e.name}const j=["lookup","condition","parallel","for-each"];function X(e){for(const t of e){if(!j.includes(t.type))return`staptype "${t.type}" mag niet meelezen (alleen ${j.join(", ")})`;if(t.type==="parallel")for(const n of t.branches??[]){const r=X(n);if(r)return r}if(t.type==="for-each"){const n=X(t.body??[]);if(n)return n}}return null}function Pr(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 xr(e,t){return e.filter(n=>n.enabled&&Pr(n.ownerScope,t))}function $r(e){return e.credentialScope?e.credentialScope:(e.authMode??"header")==="header"||e.oauth?.scope==="org"?"shared":"per-user"}function Ur(e){return`mcp__${e}__`}const Kr=1e3,Br=2e3,Gr=500,Fr=12e3,Wr=4e3,mt=["contact","company","work_item"];function Hr(e){if(!e)return!1;const t=e.slice(0,e.indexOf(":"));return mt.includes(t)}const Vr="onboarding-source",jr=["support","billing","availability","sales","onboarding"],Xr=["keep","replace"];function gt(e){switch(e.kind){case"user":return`user:${e.userId}`;case"team":return`team:${e.teamId}`;case"org":return"org"}}function Yr(e){if(typeof e!="string")return;const t=e.trim();if(t==="org")return{kind:"org"};const n=t.indexOf(":");if(n<=0)return;const r=t.slice(0,n),i=t.slice(n+1).trim();if(i){if(r==="user")return{kind:"user",userId:i};if(r==="team")return{kind:"team",teamId:i}}}function ht(e){return gt(e)}function At(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 Et=At;function zr(e){return e.agentId?{kind:"user",userId:e.agentId}:Et(e.ownerScope)}function qr(e){return ht(e)}function Jr(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 Zr(e,t){return e.targets.find(n=>n.activityTypes.includes(t))}function Qr(e,t){if(t)return e.targets.find(n=>n.id===t)}function yt(e){return e?.kind==="assignment"}function ei(e){const{trigger:t,agentId:n,target:r,activityType:i,assigneeUserId:a,authorUserId:o}=e;return yt(t)?n?r?r.activityTypes.includes(i)?a?a!==n?"assigned to someone else":o&&o===n?"the agent assigned this to itself, which would restart its own run":null:`no assignee found at ${r.assigneePath}`:`activity type ${i} does not announce an assignment for ${r.id}`:`assignment target kind "${t.targetKind}" is not declared by any installed app`:"this playbook has no agent, so an assignment can never be for it":"trigger is not an assignment trigger"}function ti(e){return(e.startsWith("tool:")?e.slice(5):e).replace(/__/g," · ").replace(/\./g," · ").replace(/_/g," ")}const ni=[{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:"assigneeUserId",type:"string"}],ri={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 St(e){return`${e.type}:${e.id}`}const _t="interaction";function Tt(e){return e?.type===_t?e.id:void 0}const It=64,bt=8e3;function ii(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),It),bt)}const ai={kind:"workflow",steps:[]};function oi(e){return e?.kind==="workflow"?e.steps:[]}function si(e){return e?.kind==="procedure"?e.procedure:void 0}const Mt=["done","escalated","failed","stopped"];function ci(e){return Mt.includes(e)}function Ot(e){return e==="waiting"}function li(e){return e==="running"||Ot(e)}function ne(e){return e.subjectKind&&e.subjectId?{type:e.subjectKind,id:e.subjectId}:void 0}function ui(e){const t=ne(e);return t?St(t):void 0}function di(e){return Tt(ne(e))}function pi(e,t){const n=e.accumulatedSeconds||0;return e.runningSince?n+Math.max(0,Math.floor((t-e.runningSince)/1e3)):n}function fi(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 mi(e){const t=Math.max(0,Math.round(e/60));return`${Math.floor(t/60)}:${String(t%60).padStart(2,"0")}`}function gi(e){const t=Math.max(0,Math.floor(e)),n=a=>String(a).padStart(2,"0"),r=Math.floor(t/60)%60,i=Math.floor(t/3600);return i>0?`${i}:${n(r)}:${n(t%60)}`:`${n(r)}:${n(t%60)}`}function Rt(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function hi(e,t){const n=Rt(e)||"werksoort",r=new Set(t);if(!r.has(n))return n;for(let i=2;i<500;i++){const a=`${n}-${i}`;if(!r.has(a))return a}return`${n}-${r.size+1}`}function Ai(e,t){const n=e.ownerScope;return!n||n.kind==="org"?!0:t.includes(n.teamId)}function Ei(e){return e.filter(t=>!t.archived).sort(Ct)}function Ct(e,t){const n=(e.order??0)-(t.order??0);return n!==0?n:(e.label||"").localeCompare(t.label||"")}const wt=20,Nt=20,R=300;function h(e){return e.toLowerCase().replace(/[^\p{L}\p{N}\s]/gu," ").replace(/\s+/g," ").trim()}function kt(e){const t=e.replace(/\s+/g," ").trim();if(t.length<=R)return t;const n=t.slice(0,R),r=Math.max(n.lastIndexOf(". "),n.lastIndexOf("! "),n.lastIndexOf("? "));return r>R*.6?n.slice(0,r+1):`${n.trimEnd()}…`}function yi(e,t){const n=kt(t.text),r=h(n);if(!r||(e.examples??[]).some(o=>h(o)===r))return null;const i=e.exampleCandidates??[],a=i.findIndex(o=>h(o.text)===r);if(a>=0){if(i[a].corrected||!t.corrected)return null;const o=[...i];return o[a]={...o[a],corrected:!0,addedAt:t.addedAt},Ee(o)}return Ee([{...t,text:n},...i]).slice(0,Nt)}function Ee(e){return[...e].sort((t,n)=>Number(n.corrected)-Number(t.corrected)||n.addedAt-t.addedAt)}function Si(e,t){const n=h(t),r=(e.examples??[]).filter(a=>a.trim());return{examples:r.some(a=>h(a)===n)?r:[...r,t].slice(-wt),exampleCandidates:vt(e,t)}}function vt(e,t){const n=h(t);return(e.exampleCandidates??[]).filter(r=>h(r.text)!==n)}function Dt(e,t){const n=e.ownerScope;return n?n.kind==="org"?!0:n.kind==="team"?!!t&&n.teamId===t:!1:!1}function _i(e,t){return e.filter(n=>Dt(n,t))}function Ti(e){return e.type==="agent"}const Ii="WORK_COMMENT_ADDED",bi="WORK_ITEM_ASSIGNED",Mi="WORK_ITEM_STATUS_CHANGED";function Oi(e,t){const n=r=>{const i=new Date(r);return i.setHours(0,0,0,0),i.getTime()};return Math.round((n(e)-n(t))/Ye)}function Ri(e,t){if(e.closedAt!=null)return{score:g,reasons:[]};const n=t.remindersById?.[e.id];if(n&&n.remindAt>t.now)return{score:g,reasons:[]};let r=0;const i=[],a=e.priority??"normal";if(E[a]>0&&(r+=E[a],i.push(`priority:${a}`)),typeof e.dueDate=="number"){const o=Oi(e.dueDate,t.now);o<0?(r+=35,i.push("overdue")):o===0&&(r+=20,i.push("due-today"))}return e.source?.initiator==="system"&&e.source.systemReason&&(r+=15,i.push(`auto:${e.source.systemReason}`)),{score:r,reasons:i}}const Lt="work_item",Pt="work_project";function xt(e){return`${Lt}:${e}`}function re(e){return`${Pt}:${e}`}function Ci(e,t,n){const r=`${e}-${t}`;return n?`${r}-${n}`:r}function wi(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 Ni(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toUpperCase().replace(/[^A-Z0-9]/g,"").slice(0,3)||"PRJ"}function ki(e,t=25){const n=new Set([xt(e.id)]);e.projectId&&n.add(re(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 vi(e){return[re(e.id)]}const v=[{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}],ie=v.map(e=>e.key);function $t(e){return e?.statuses?.length?e.statuses:v}function Ut(e,t){return t.find(n=>n.key===e)?.category??"todo"}function Di(e,t){return t.find(n=>n.key===e)}function Li(e){const t=$t(e),n=e?.defaultStatusKey;return n&&t.some(r=>r.key===n)?n:Kt(t)[0]?.key??v[0].key}function Kt(e){return[...e].sort((t,n)=>{const r=(t.order??0)-(n.order??0);return r!==0?r:(t.label||"").localeCompare(n.label||"")})}function Pi(e,t){return Ut(e,t)==="done"}function Bt(e){return(e||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,48).replace(/^-+|-+$/g,"")}function xi(e,t){const n=Bt(e)||"status",r=new Set([...t,...ie]);if(!r.has(n))return n;for(let i=2;i<500;i++){const a=`${n}-${i}`;if(!r.has(a))return a}return`${n}-${r.size+1}`}function $i(e){const t=[];if(!e.length)return[{index:-1,reason:"empty"}];const n=new Set;return e.forEach((r,i)=>{if(!r.key){t.push({index:i,reason:"missing_key"});return}ie.includes(r.key)&&t.push({index:i,reason:"reserved_key",key:r.key}),n.has(r.key)&&t.push({index:i,reason:"duplicate_key",key:r.key}),n.add(r.key)}),e.some(r=>r.category==="todo"||r.category==="in_progress")||t.push({index:-1,reason:"no_open"}),e.some(r=>r.category==="done")||t.push({index:-1,reason:"no_done"}),t}const Ui=new Set(["image/png","image/jpeg","image/jpg","image/gif","image/webp"]),Ki=new Set(["text/plain","text/markdown","text/csv","application/json","text/html","application/xml","text/xml"]);function Gt(e){const t=(e??"").trim().toLowerCase().split(";")[0];return t?Ui.has(t)?"image":t==="application/pdf"?"pdf":Ki.has(t)?"text":t.startsWith("audio/")?"audio":"unsupported":"unsupported"}const A=1024*1024,Ft={image:5*A,pdf:20*A,text:1*A,audio:20*A},Bi=25*A,Gi=5;function Fi(e,t){const n=Gt(e);return n==="unsupported"?"unsupported":t>Ft[n]?"too-large":null}function Wi(e){return e.access!=="read"&&e.effect!=="internal"}function Wt(e){return`${e.kind}:${e.id||e.url||e.title}`}function Hi(e,t=[]){const n=new Set(t),r=[],i=[];for(const a of e){const o=Wt(a);n.has(o)||(n.add(o),r.push(a),i.push(o))}return{sources:r,keys:i}}const Vi="assist-source",ji=["blocking","due","open"];function Xi(e,t){const[n,r]=(e.subjectKey??"").split(":");return n===t&&r?r:void 0}const ye={blocking:0,due:1,open:2};function Yi(e,t){return ye[e.band??"open"]-ye[t.band??"open"]||(t.priority??0)-(e.priority??0)||e.id.localeCompare(t.id)}function zi(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&e.canHold(t.providerId))}function qi(e){return e.sessions.filter(t=>t.id!==e.exceptSessionId&&t.state==="connected"&&!e.canHold(t.providerId))}function Ji(e){return e.sessions.some(n=>n.id!==e.exceptSessionId&&(n.state==="connected"||n.state==="on_hold"))?{admit:!1,reason:"busy"}:{admit:!0}}function Ht(e,t){const n=new Set(e.disabledIntents??[]),r=e.intentOverrides??{},i=t.intents.filter(o=>!n.has(o.intent)).map(o=>Qi(o,r[o.intent]));if(!e.extraIntents||e.extraIntents.length===0)return i;const a=new Set(i.map(o=>o.intent));for(const o of e.extraIntents)a.has(o.intent)||(i.push(o),a.add(o.intent));return i}function Vt(e,t){const n={};for(const r of e.intents){if(!r.togglable)continue;const i=t?.[r.intent];n[r.intent]=i??r.defaultEnabled??!0}return n}function Zi(e,t){const n=Vt(e,t);return Object.entries(n).filter(([,r])=>!r).map(([r])=>r)}function Qi(e,t){return t?{intent:t.intent??e.intent,targetSchemes:t.targetSchemes??e.targetSchemes,transport:t.transport??e.transport}:e}function ea(e,t){const n=[];for(const r of e){if(!r.enabled)continue;const i=t[r.providerId];if(i)for(const a of Ht(r,i))n.push({channel:r,description:i,capability:a})}return n}function ta(e,t){return t.filter(n=>n.capability.intent===e)}function jt(e,t){return t.filter(n=>n.capability.targetSchemes.includes(e))}function na(e,t){return jt(e.scheme,t)}function ra(e,t,n){const r=[];for(const i of e)for(const a of n)a.capability.intent===t&&a.capability.targetSchemes.includes(i.scheme)&&r.push({channelIntent:a,endpoint:i});return r}var Xt=(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))(Xt||{});const ia={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 aa(e){return e?ia[e]??"note":"note"}const oa="message_window",sa="message_templates",ca={FROM:"from",TO:"to",CC:"cc",BCC:"bcc",ORGANIZER:"organizer",PRESENTER:"presenter",ATTENDEE:"attendee",OWNER:"owner",MEMBER:"member",GUEST:"guest",HOST:"host",PARTICIPANT:"participant"},la=(e,t)=>({intent:e,...t}),ua="folder_management",da="remote_search",pa={ok:!1,code:"UNSUPPORTED",message:"Provider does not support this op"},fa="installation-id";function ma(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 ga="notification-source",ha=(e,t)=>`${e}.pref.${t}`,Aa={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","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"]},ae=9e4,Yt=["out_of_office"],zt=e=>Yt.includes(e);function Ea(e,t,n){const r=n-e<ae,i=t?.status&&(!t.expiresAt||t.expiresAt>n)?t:void 0;if(!i?.status)return{online:r,status:r?"available":"offline"};const a=i.status;return!r&&!zt(a)?{online:!1,status:"offline"}:{online:r,status:a,message:i.message}}function ya(e,t){const n=t-e.lastSeenAt<ae,r=n||zt(e.status)?e.status:"offline";return n===e.online&&r===e.status?e:{...e,online:n,status:r}}function Sa(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 _a(e){return e.providerAvailable&&e.allowed}const Ta="resources.describe",Ia="resources.search",ba="resources.resolve";function Ma(e){const t=e.indexOf(":");return t===-1?e:e.slice(0,t)}const oe="auth";function se(e){const t=typeof e=="string"?e.match(/apps\/([^/?#]+)/):null;return t?t[1]:null}function Oa(e){const t=se(e);return t?t!==oe:typeof e=="string"&&e.startsWith("/wake")}function Ra(e){return typeof e!="string"||e===""||e==="/"?!0:se(e)===oe}function Ca(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function qt(e){const n=e.split("/").filter(Boolean).map(r=>r.startsWith(":")?r.endsWith("?")?"(?:/[^/]+)?":"/[^/]+":`/${Ca(r)}`).join("");return new RegExp(`^${n}\\/?$`)}function Jt(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean),i={};return n.forEach((a,o)=>{if(a.startsWith(":")){const s=a.endsWith("?")?a.slice(1,-1):a.slice(1),l=r[o];l&&(i[s]=l)}}),i}function Zt(e){return e.publicBasePath??`/apps/${e.name}`}function wa(e){const t=[];for(const n of e){if(!n?.name)continue;const r=Zt(n);for(const i of n.routes??[]){if(!i.public)continue;const a=i.path==="/"?"":i.path;t.push({appName:n.name,resource:i.resource,pattern:`${r}${a}`,props:i.props})}}return t}function Qt(e,t){const n=e.split("/").filter(Boolean),r=t.split("/").filter(Boolean);for(let i=0;i<Math.min(n.length,r.length);i++){const a=n[i].startsWith(":"),o=r[i].startsWith(":");if(a!==o)return o}return n.length>r.length}function en(e,t){if(typeof e!="string")return null;let n=null;for(const r of t)qt(r.pattern).test(e)&&(!n||Qt(r.pattern,n.pattern))&&(n=r);return n?{...n,params:{...n.props,...Jt(n.pattern,e)}}:null}function Na(e,t){return en(e,t)!==null}const ka="sync-source",va="sync-target",Da=20,La={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]"]},tn=e=>{let t=e;return Object.values(La).forEach(n=>{n.forEach(r=>{t=t.replaceAll(r,"")})}),t=t.replace(/\(.*?\)/g,""),t=t.replace(/\[.*?\]/g,""),t},nn=6e4,rn=8e3,an=2,on=.4,Pa=3,xa=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 sn(e){const t=new Set;for(const n of e.toLowerCase().split(/[^a-z0-9À-ɏ]+/))n.length<Pa||xa.has(n)||t.add(n);return[...t]}function cn(e,t){if(!e.length)return 0;if(!t.length)return 1;const n=new Set(t),r=new Set(e);let i=0;for(const a of r)n.has(a)||(i+=1);return i/r.size}function ln(e,t=nn){const n=e.filter(o=>!o.partial&&typeof o.text=="string");if(!n.length)return{text:"",segmentCount:0};const i=n.reduce((o,s)=>Math.max(o,s.endedAt??0),0)-t;return{text:n.filter(o=>(o.endedAt??0)>=i).map(o=>tn(o.text).trim()).filter(Boolean).join(" ").replace(/\s+/g," ").trim(),segmentCount:n.length}}const un=60;function $a(e,t,n=un){const r=new Set(e),i=[...e];for(const a of t)!a||r.has(a)||(r.add(a),i.push(a));return i.slice(-n)}function Ua(e){const{segments:t,now:n,state:r}=e;if(r.lastTriggerAt&&n-r.lastTriggerAt<rn)return{trigger:!1,reason:"too_soon"};const i=ln(t,e.windowMs);if(!i.text)return{trigger:!1,reason:"no_speech"};const a=i.segmentCount-(r.lastSegmentCount??0);if(r.lastQueryTerms&&a<an)return{trigger:!1,reason:"too_few_new"};const o=sn(i.text);return o.length?r.lastQueryTerms?.length&&cn(o,r.lastQueryTerms)<on?{trigger:!1,reason:"same_topic"}:{trigger:!0,text:i.text,terms:o,segmentCount:i.segmentCount}:{trigger:!1,reason:"no_speech"}}const Ka="navNotice",D={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}},dn="NL",Ba=15,Ga=8,Fa=Array.from(new Set(Object.values(D).map(e=>e.callingCode))).sort((e,t)=>t.length-e.length);function Se(e){if(e)return D[e.trim().toUpperCase()]}function C(e,t){return e.length>=t.nsnMin&&e.length<=t.nsnMax}function _e(e){if(e.length>Ba)return null;for(const t of Fa){if(!e.startsWith(t))continue;const n=e.slice(t.length);for(const r of Object.values(D)){if(r.callingCode!==t)continue;const i=r.trunkPrefix,a=i&&n.startsWith(i)?n.slice(i.length):n;if(C(a,r))return`+${t}${a}`}return null}return e.length<Ga?null:`+${e}`}function Wa(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 Ha(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 Y(e,t){if(!e)return null;const n=Wa(e);if(!n)return null;const r=n.startsWith("+"),i=n.replace(/\D/g,"");if(!i)return null;if(r)return _e(i);if(i.startsWith("00"))return _e(i.slice(2));const a=Se(t)??Se(dn);if(!a)return null;const o=a.trunkPrefix;if(o&&i.startsWith(o)){const s=i.slice(o.length);return C(s,a)?`+${a.callingCode}${s}`:null}if(i.startsWith(a.callingCode)){const s=i.slice(a.callingCode.length);if(C(s,a))return`+${a.callingCode}${s}`}return!o&&C(i,a)?`+${a.callingCode}${i}`:null}function Va(e,t=9){const n=(e??"").replace(/\D/g,"");return n.length<t?null:n.slice(-t)}function ce(e){if(!e)return null;const t=e.trim().toLowerCase(),n=t.lastIndexOf("@");if(n<=0||n===t.length-1)return null;const r=t.slice(0,n).split("+")[0],i=t.slice(n+1);return!r||!i.includes(".")?null:`${r}@${i}`}function ja(e){const t=ce(e);return t?t.slice(t.lastIndexOf("@")+1):null}const Xa=new Set(["co.uk","org.uk","gov.uk","ac.uk","com.au","co.nz","com.br","co.za"]);function pn(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 Xa.has(n)&&t.length>=3?t.slice(-3).join("."):n}const fn=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 Ya(e){const t=pn(e);return t?fn.has(t):!1}function za(e){if(!e)return!1;const t=e.trim().toLowerCase();return t==="tel"||t==="sms"||t==="whatsapp"||t==="fax"}function qa(e,t,n){if(!e||!t)return null;const r=e.trim().toLowerCase();if(r==="tel"||r==="sms"||r==="whatsapp"){const a=Y(t,n);return a?`tel:${a}`:null}if(r==="fax"){const a=Y(t,n);return a?`fax:${a}`:null}if(r==="mailto"||r==="email"){const a=ce(t);return a?`mailto:${a}`:null}const i=t.trim().toLowerCase();return i?`${r}:${i}`:null}const Ja=/(\*\*|__)(?=\S)([\s\S]*?\S)\1/g,Za=/(\*|_)(?=\S)([^*_\n]*?\S)\1/g;function Qa(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(`
|
|
8
8
|
`).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(`
|
|
9
|
-
`),t=t.replace(
|
|
10
|
-
`);for(let n=0;n<t.length;n++)if(
|
|
11
|
-
`).trim();return e}function
|
|
9
|
+
`),t=t.replace(Ja,"$2"),t=t.replace(Za,"$2"),t=t.replace(/~~(?=\S)([\s\S]*?\S)~~/g,"$1"),t=t.replace(/`([^`\n]+)`/g,"$1"),t.replace(/\s+/g," ").trim()}const eo=[/<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],Te=/^\s*(?:>+\s*)?(?:from|van|sent|verzonden|to|aan|cc|subject|onderwerp|date|datum)\s*:/i,to=/^\s*(?:on|op)\b.{0,200}?\b(?:wrote|schreef|geschreven)\s*:?\s*$/i;function no(e){const t=e.split(`
|
|
10
|
+
`);for(let n=0;n<t.length;n++)if(to.test(t[n])||Te.test(t[n])&&t.slice(n+1,n+4).some(r=>Te.test(r)))return t.slice(0,n).join(`
|
|
11
|
+
`).trim();return e}function Ie(e){let t=e;return t=t.replace(/<(script|style)[\s\S]*?<\/\1>/gi,""),t=t.replace(/<br\s*\/?>/gi,`
|
|
12
12
|
`),t=t.replace(/<\/(p|h[1-6]|ul|ol|table|blockquote)>/gi,`
|
|
13
13
|
|
|
14
14
|
`),t=t.replace(/<\/(div|li|tr)>/gi,`
|
|
15
|
-
`),t=t.replace(/<\/(td|th)>/gi," "),t=t.replace(/<[^>]+>/g,""),t=t.replace(/<[^>]*$/,""),t}function
|
|
15
|
+
`),t=t.replace(/<\/(td|th)>/gi," "),t=t.replace(/<[^>]+>/g,""),t=t.replace(/<[^>]*$/,""),t}function be(e){return!Number.isInteger(e)||e<0||e>1114111?null:String.fromCodePoint(e)}function Me(e){return e.replace(/ /gi," ").replace(/</gi,"<").replace(/>/gi,">").replace(/"/gi,'"').replace(/&#(\d+);/g,(t,n)=>be(Number(n))??t).replace(/&#x([0-9a-f]+);/gi,(t,n)=>be(parseInt(n,16))??t).replace(/&/gi,"&")}function Oe(e){return e.replace(/\r/g,"").replace(/[ \t]+/g," ").replace(/ *\n */g,`
|
|
16
16
|
`).replace(/\n{3,}/g,`
|
|
17
17
|
|
|
18
|
-
`).trim()}const
|
|
18
|
+
`).trim()}const mn=/<\s*(html|body|div|p|table|br|span)\b/i;function ro(e){return mn.test(e)}function io(e){if(typeof e!="string"||!e)return"";let t=e.length;for(const a of eo){const o=e.search(a);o>=0&&o<t&&(t=o)}const n=e.slice(0,t);let r=Oe(Me(Ie(n)));return r||(r=Oe(Me(Ie(e)))),no(r)||r}exports.ACTIVITY_CATALOG=m;exports.AI_ATTACHMENT_LIMITS=Ft;exports.AI_ATTACHMENT_MAX_PER_TURN=Gi;exports.AI_ATTACHMENT_TURN_BUDGET=Bi;exports.AI_VENDORS=q;exports.ALLOWED_LINK_SCHEMES=Be;exports.APP_PERMISSIONS=Aa;exports.ARTIFACT_MAX_BLOCKS=B;exports.ARTIFACT_MAX_BODY_BYTES=Yn;exports.ARTIFACT_MAX_CELL_LEN=O;exports.ARTIFACT_MAX_KPI_ITEMS=H;exports.ARTIFACT_MAX_LIST_ITEMS=G;exports.ARTIFACT_MAX_TABLE_COLUMNS=W;exports.ARTIFACT_MAX_TABLE_ROWS=F;exports.ARTIFACT_MAX_TEXT_LEN=J;exports.ASSIGNMENT_SCOPE_KIND=He;exports.ASSIST_BANDS=ji;exports.ASSIST_SOURCE_PROVIDER_GROUP=Vi;exports.ATTENTION_STATUSES=Qe;exports.AUTH_APP_NAME=oe;exports.ActivityTypeRegistry=ke;exports.BUILT_IN_ONLY=kn;exports.BULK_PENALTY=et;exports.CADENCE_FLOOR_MS=rn;exports.CADENCE_MIN_NEW_SEGMENTS=an;exports.CADENCE_MIN_NOVELTY=on;exports.CADENCE_WINDOW_MS=nn;exports.CLASSIFY_VARS=ri;exports.CORE_DIMENSIONS=Wn;exports.CommunicationScheme=Xt;exports.DAY_MS=Ye;exports.DEFAULT_MEMORY_BUDGET=Wr;exports.DEFAULT_PHONE_REGION=dn;exports.EMPTY_WORKFLOW=ai;exports.FEATURE_FOLDER_MANAGEMENT=ua;exports.FEATURE_REMOTE_SEARCH=da;exports.FOLLOW_UP_HOURS=nt;exports.HOUR_MS=Xe;exports.HTML_BODY_RE=mn;exports.INELIGIBLE=g;exports.INSTALLATION_HEADER=fa;exports.INTERACTION_KIND=_t;exports.InteractionParticipantRole=ca;exports.KB_FALLBACK_LOCALE=pt;exports.KB_LOCALES=V;exports.LOOSE_STATUSES=v;exports.MAX_ACTIONS=M;exports.MAX_ASSIGNMENT_TURNS=Ve;exports.MAX_BLOCKS=U;exports.MAX_COLLECTION_DEPTH=ee;exports.MAX_FIELDS=I;exports.MAX_LIST_ITEMS=b;exports.MAX_MEMORY_BROWSE=Kr;exports.MAX_MEMORY_BUDGET=Fr;exports.MAX_MEMORY_CHARS=Br;exports.MAX_SHOWN_KEYS=un;exports.MAX_TOPIC_CANDIDATES=Nt;exports.MAX_TOPIC_EXAMPLES=wt;exports.MAX_TOPIC_EXAMPLE_CHARS=R;exports.MIN_MEMORY_BUDGET=Gr;exports.NAV_NOTICE_SLOT=Ka;exports.NOTIFICATION_SOURCE_PROVIDER_GROUP=ga;exports.ONBOARDING_SOURCE_PROVIDER_GROUP=Vr;exports.PHONE_REGIONS=D;exports.PRESENCE_ONLINE_WINDOW_MS=ae;exports.PRESENCE_SURVIVES_OFFLINE=Yt;exports.PROFILE_TOOL_DISPOSITIONS=Xr;exports.PROVIDER_FEATURE_MESSAGE_TEMPLATES=sa;exports.PROVIDER_FEATURE_MESSAGE_WINDOW=oa;exports.PUBLIC_EMAIL_DOMAINS=fn;exports.READ_STEP_TYPES=j;exports.RELATED_SUBJECT_KINDS=mt;exports.RESERVED_STATUS_KEYS=ie;exports.RESOURCE_DESCRIBE_SERVICE=Ta;exports.RESOURCE_RESOLVE_SERVICE=ba;exports.RESOURCE_SEARCH_SERVICE=Ia;exports.SIGNATURE_INTENTS=mr;exports.SLA_HOURS_BY_PRIORITY=tt;exports.STEP_MAX_TOKENS_MAX=bt;exports.STEP_MAX_TOKENS_MIN=It;exports.SUMMARY_MIN_LAST_CHARS=Je;exports.SUMMARY_MIN_MESSAGES=qe;exports.SYNC_RUN_MAX_ERRORS=Da;exports.SYNC_SOURCE_PROVIDER_GROUP=ka;exports.SYNC_TARGET_PROVIDER_GROUP=va;exports.TERMINAL_ASSIGNMENT_STATUSES=We;exports.TERMINAL_RUN_STATUSES=Mt;exports.TRIGGER_VARS=ni;exports.UNSUPPORTED=pa;exports.USAGE_DIMENSIONS=xe;exports.USAGE_DIMENSION_IDS=$e;exports.WORK_AREAS=jr;exports.WORK_COMMENT_ADDED=Ii;exports.WORK_ITEM_ASSIGNED=bi;exports.WORK_ITEM_SCOPE_KIND=Lt;exports.WORK_ITEM_STATUS_CHANGED=Mi;exports.WORK_PROJECT_SCOPE_KIND=Pt;exports.W_PRIORITY=E;exports.acceptExampleCandidate=Si;exports.actingIdentityKey=ht;exports.activeWorkTypes=Ei;exports.activityIconOf=En;exports.activityJoinUrl=Rn;exports.activitySnippet=we;exports.activityTextParams=Ne;exports.activityTimelineText=On;exports.activityTimestamp=ve;exports.activityTypeInfo=c;exports.actorKey=qr;exports.addExampleCandidate=yi;exports.agePresenceEntry=ya;exports.aiAttachmentKind=Gt;exports.aiAttachmentRejection=Fi;exports.aiBudgetLimit=K;exports.aiBudgetPeriodKey=Gn;exports.aiBudgetPeriodStart=De;exports.aiBudgetState=Bn;exports.aiVendorAcceptsAttachment=Kn;exports.aiVendorDefaultModel=xn;exports.aiVendorLabel=Pn;exports.aiVendorNeedsBaseUrl=Un;exports.aiVendorsWith=$n;exports.appNameFromPath=se;exports.applyRounding=fi;exports.applySignature=gr;exports.artifactBodyBytes=nr;exports.artifactOutline=rr;exports.artifactToMarkdown=ar;exports.assignmentMismatch=ei;exports.assignmentScopeKey=ur;exports.assignmentSubject=pr;exports.buildActivityPreview=wn;exports.buildChannelIntents=ea;exports.buildShareKeys=or;exports.buildWindow=ln;exports.canNestUnder=vr;exports.carriesText=Tn;exports.categoryLabel=Lr;exports.categoryOf=Ut;exports.channelKindForScheme=aa;exports.channelKindOf=yn;exports.clampStepMaxTokens=ii;exports.cleanMessageText=io;exports.compareAssistRank=Yi;exports.compareWorkTypes=Ct;exports.decideAssignmentState=fr;exports.decideCadence=Ua;exports.decideIncomingCall=Ji;exports.defaultLocaleOf=ft;exports.defaultStatusKey=Li;exports.defineIntent=la;exports.depthOf=ut;exports.derivePresence=Ea;exports.disabledIntentsFromCapabilities=Zi;exports.elapsedSeconds=pi;exports.emailDomain=ja;exports.endpointKey=qa;exports.extractParams=Jt;exports.extractTerms=sn;exports.filterByEndpoint=na;exports.filterByIntent=ta;exports.filterByTargetScheme=jt;exports.findAiVendor=y;exports.flattenLocales=ma;exports.floorToPeriod=Pe;exports.formatActingIdentity=gt;exports.formatClock=gi;exports.formatHm=mi;exports.formatItemKey=Ci;exports.formatPeriod=Le;exports.freshSources=Hi;exports.getActivitySeenUserIds=vn;exports.getContactEndpoints=hr;exports.getShortTitle=Rr;exports.getUrgencyScore=Or;exports.heightOf=te;exports.helpCenterText=wr;exports.humanizeAction=ti;exports.interactionIdOf=Tt;exports.isAgentUser=Ti;exports.isAssigned=br;exports.isAssignmentTerminal=lr;exports.isAssignmentTrigger=yt;exports.isAwaitingThem=ct;exports.isChatMessageActivity=Ln;exports.isClosed=Mr;exports.isConnectedType=bn;exports.isDeepLink=Oa;exports.isDescendant=dt;exports.isEligible=Ar;exports.isEmailActivity=Dn;exports.isHtmlBody=ro;exports.isInFlight=li;exports.isInteractionUnseen=Ze;exports.isLandingPath=Ra;exports.isLikelyBulk=ze;exports.isMessageShape=z;exports.isMessageType=Sn;exports.isMoreSpecificPattern=Qt;exports.isOutwardTool=Wi;exports.isParked=it;exports.isPaused=Ot;exports.isPlaybookAuthoredType=In;exports.isPublicEmailDomain=Ya;exports.isPublicPath=Na;exports.isReminderActive=at;exports.isReplyableType=_n;exports.isSlaAtRisk=Tr;exports.isTerminal=ci;exports.isThreadLongEnough=_r;exports.isTranscriptType=Mn;exports.isWorkClosed=Pi;exports.isWorkTypeVisible=Ai;exports.itemDossierKeys=ki;exports.ladderFor=$t;exports.linkLabel=Cr;exports.listeningAllowed=Fn;exports.localeInstruction=kr;exports.localeName=Nr;exports.localesOf=Dr;exports.looksLikeEmail=Ha;exports.matchContactToIntents=ra;exports.matchPublicRoute=en;exports.mcpCredentialScope=$r;exports.mcpToolPrefix=Ur;exports.mergeShownKeys=$a;exports.messageCountsAs=Ce;exports.needsPhoneRegion=za;exports.normalizeArtifactBlocks=tr;exports.normalizeBlocks=An;exports.normalizeEmail=ce;exports.normalizeExample=h;exports.notificationPrefKey=ha;exports.novelty=cn;exports.parkMarksById=Er;exports.parseActingIdentity=Yr;exports.parseItemKey=wi;exports.pathToRegex=qt;exports.periodsInRange=jn;exports.phoneSuffix=Va;exports.plainTextFromMarkdown=Qa;exports.playbookActor=Et;exports.procedureOf=si;exports.projectDossierKeys=vi;exports.publicBasePathFor=Zt;exports.publicRoutePatterns=wa;exports.readPath=w;exports.readStepError=X;exports.recencyOf=rt;exports.refKey=St;exports.registrableDomain=pn;exports.rejectExampleCandidate=vt;exports.relatedByDefault=Hr;exports.resolveAccountCapabilities=Vt;exports.resolveActivityText=N;exports.resolveChannelIntents=Ht;exports.resolveSignature=je;exports.resolveWorkMode=Sa;exports.resourceKindOf=Ma;exports.runActor=zr;exports.runInteractionId=di;exports.sanitizeInline=Fe;exports.sanitizeTranscript=tn;exports.scoreInteraction=Ir;exports.scoreWorkItem=Ri;exports.selectLenses=xr;exports.sessionsHoldCannotReach=qi;exports.sessionsToHold=zi;exports.shareKeyForTeam=Q;exports.shareKeyForUser=Z;exports.shareKeysForViewer=sr;exports.shouldRunAudioPipeline=_a;exports.sortStatuses=Kt;exports.sourceKey=Wt;exports.statusIn=Di;exports.stepsOf=oi;exports.stripHtml=Re;exports.subjectKeyOf=ui;exports.subjectOf=ne;exports.subjectRef=Xi;exports.suggestProjectKey=Ni;exports.targetById=Qr;exports.targetForActivityType=Zr;exports.toActingIdentity=At;exports.toE164=Y;exports.toolSourceKinds=cr;exports.topicOfferedForTeam=Dt;exports.topicsForTeam=_i;exports.truncateExample=kt;exports.uniqueWorkStatusKey=xi;exports.uniqueWorkTypeKey=hi;exports.usageMetricId=Ue;exports.usageMetrics=Xn;exports.validateStatuses=$i;exports.valueAtPath=Jr;exports.waitHoursOf=k;exports.wakesAssignment=dr;exports.workItemScopeKey=xt;exports.workProjectScopeKey=re;exports.workStatusKey=Bt;exports.workTypeKey=Rt;
|