@mrrocket/sdk 0.15.0 → 0.17.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/CHANGELOG.md +29 -0
- package/README.md +47 -3
- package/dist/api-client.d.ts +12 -5
- package/dist/api-client.js +12 -8
- package/dist/api-client.js.map +1 -1
- package/dist/api.d.ts +4 -1
- package/dist/api.js +2 -1
- package/dist/api.js.map +1 -1
- package/dist/batch.d.ts +6 -4
- package/dist/batch.js +3 -3
- package/dist/batch.js.map +1 -1
- package/dist/browser/mrrocket-flows.js +9 -2
- package/dist/browser/mrrocket-forms.js +1 -1
- package/dist/browser/mrrocket-messenger.js +42 -43
- package/dist/browser/mrrocket-push.js +1 -1
- package/dist/browser/mrrocket-replay.js +3 -3
- package/dist/browser/mrrocket.js +1 -1
- package/dist/client.d.ts +10 -2
- package/dist/client.js +36 -15
- package/dist/client.js.map +1 -1
- package/dist/context.d.ts +5 -1
- package/dist/context.js.map +1 -1
- package/dist/core.d.ts +1 -1
- package/dist/core.js +1 -1
- package/dist/core.js.map +1 -1
- package/dist/errors.d.ts +5 -1
- package/dist/errors.js +8 -2
- package/dist/errors.js.map +1 -1
- package/dist/flows-ui.d.ts +1 -1
- package/dist/flows-ui.js +64 -14
- package/dist/flows-ui.js.map +1 -1
- package/dist/flows-web.d.ts +2 -0
- package/dist/flows-web.js +4 -1
- package/dist/flows-web.js.map +1 -1
- package/dist/flows.d.ts +59 -3
- package/dist/flows.js +88 -7
- package/dist/flows.js.map +1 -1
- package/dist/forms.d.ts +4 -0
- package/dist/forms.js +4 -1
- package/dist/forms.js.map +1 -1
- package/dist/identity.d.ts +42 -0
- package/dist/identity.js +24 -0
- package/dist/identity.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/messenger-ui.d.ts +12 -2
- package/dist/messenger-ui.js +58 -47
- package/dist/messenger-ui.js.map +1 -1
- package/dist/messenger.js +3 -2
- package/dist/messenger.js.map +1 -1
- package/dist/push-web.d.ts +2 -13
- package/dist/push-web.js +4 -2
- package/dist/push-web.js.map +1 -1
- package/dist/react-native/index.d.cts +105 -14
- package/dist/react-native/index.d.ts +105 -14
- package/dist/react-native/index.js +238 -55
- package/dist/react-native/index.js.map +1 -1
- package/dist/replay.d.ts +4 -1
- package/dist/replay.js +8 -2
- package/dist/replay.js.map +1 -1
- package/dist/server.d.ts +2 -0
- package/dist/server.js +2 -0
- package/dist/server.js.map +1 -1
- package/dist/styles-css.d.ts +1 -1
- package/dist/styles-css.js +40 -41
- package/dist/styles-css.js.map +1 -1
- package/dist/user-hash.d.ts +27 -0
- package/dist/user-hash.js +24 -0
- package/dist/user-hash.js.map +1 -0
- package/package.json +5 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(){'use strict';var
|
|
1
|
+
(function(){'use strict';var xr=Object.defineProperty;var vr=(r,o,s)=>o in r?xr(r,o,{enumerable:true,configurable:true,writable:true,value:s}):r[o]=s;var Vt=(r,o,s)=>vr(r,o+"",s);var yr="401: sign the user id on your server with userHash(id) from @mrrocket/sdk/next/server and pass identify(id, props, { hash }).",Yt=(r,o=s=>console.warn(s))=>{let s=globalThis;r!==401||s.__mrrocketUnsigned||(s.__mrrocketUnsigned=true,o(`[MRRocket] ${yr}`));};var ct=["image/png","image/jpeg","image/webp","image/gif","application/pdf"],Wt=10*1024*1024,lt=4;var Gt="https://mrrocket.dev/?utm_source=messenger&utm_medium=powered-by",Jt=r=>r==="minutes"?"We usually reply in a few minutes":r==="day"?"We usually reply within a day":"We usually reply in a few hours",Qt=r=>{let o=/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i.exec(r);if(!o)return "#ffffff";let[s,p,k]=[o[1],o[2],o[3]].map(c=>{let g=parseInt(c,16)/255;return g<=.03928?g/12.92:((g+.055)/1.055)**2.4});return .2126*s+.7152*p+.0722*k>.45?"#111214":"#ffffff"},He=class extends Error{constructor(s,p){super(s);Vt(this,"status");this.status=p;}},O=r=>Object.entries(r).filter(o=>!!o[1]).map(([o,s])=>`${encodeURIComponent(o)}=${encodeURIComponent(s)}`).join("&"),F=async(r,o,s)=>{var k;let p;try{p=await fetch(r,{...o,signal:s,headers:typeof(o==null?void 0:o.body)=="string"?{"content-type":"application/json"}:void 0});}catch(c){throw c.name==="AbortError"?c:new He("Could not reach the server. Check your connection and try again.",0)}if(!p.ok){Yt(p.status);let c="";try{c=(k=(await p.json()).error)!=null?k:"";}catch(g){}throw new He(c||(p.status===429?"Too many requests. Try again in a minute.":"Something went wrong. Please try again."),p.status)}return await p.json()},dt=r=>{let o=`${r.host}/api/sdk`,s={key:r.apiKey,distinctId:r.distinctId,user:r.user,userHash:r.userHash},p={key:r.apiKey,distinctId:r.distinctId,userHash:r.userHash},k=(c,g,y)=>F(`${o}${c}`,{method:"POST",body:JSON.stringify({...s,...g})},y);return {list:(c,g)=>F(`${o}/feedback?${O({...p,board:c.board,sort:c.sort,q:c.q})}`,void 0,g),post:(c,g)=>F(`${o}/feedback/${encodeURIComponent(c)}?${O(p)}`,void 0,g),roadmap:c=>F(`${o}/feedback/roadmap?${O(p)}`,void 0,c),changelog:c=>F(`${o}/feedback/changelog?${O({key:r.apiKey})}`,void 0,c),submit:c=>k("/feedback",c),vote:c=>k(`/feedback/${encodeURIComponent(c)}/vote`,{}),comments:(c,g)=>F(`${o}/feedback/${encodeURIComponent(c)}/comments?${O({key:r.apiKey})}`,void 0,g),comment:(c,g)=>k(`/feedback/${encodeURIComponent(c)}/comments`,{body:g}),survey:(c,g)=>F(`${o}/surveys?${O({...p,url:c})}`,void 0,g),seen:c=>k(`/surveys/${encodeURIComponent(c)}/seen`,{user:void 0}),respond:(c,g)=>k(`/surveys/${encodeURIComponent(c)}/respond`,g),chat:c=>F(`${o}/messages?${O(p)}`,void 0,c),sendChat:c=>k("/messages",c),uploadChatFile:(c,g)=>{let y=new FormData;return y.append("key",r.apiKey),y.append("distinctId",r.distinctId),r.userHash&&y.append("userHash",r.userHash),"uri"in c?y.append("file",c):y.append("file",c,c.name||"file"),F(`${o}/messages/attachments`,{method:"POST",body:y},g)},attachmentUrl:c=>`${o}/messages/attachments/${encodeURIComponent(c)}?${O(p)}`,articles:(c,g)=>F(`${o}/articles?${O({key:r.apiKey,q:c})}`,void 0,g),article:(c,g)=>F(`${o}/articles/${encodeURIComponent(c)}?${O(p)}`,void 0,g),messengerLook:c=>F(`${o}/messenger?${O({key:r.apiKey})}`,void 0,c),rateArticle:(c,g)=>k(`/articles/${encodeURIComponent(c)}/rate`,{helpful:g})}};var Xt="ckw-styles",zr=`
|
|
2
2
|
.ckw-root{--ckw-accent:#3f76ff;--ckw-accent-ink:#fff;--ckw-bg:#fff;--ckw-bg2:#f7f7f8;--ckw-bg3:#eeeff1;--ckw-fg:#1c1d20;--ckw-fg2:#5d6068;--ckw-fg3:#8b8e96;--ckw-line:#e4e5e8;--ckw-danger:#d92d20;--ckw-shadow:0 8px 30px rgba(16,18,24,.16);--ckw-card:#fff;--ckw-col:#f5f6f7;--ckw-lift:0 1px 2px rgba(16,18,24,.06),0 0 0 1px rgba(16,18,24,.07);--ckw-raise:0 0 0 1px rgba(16,18,24,.05),0 1px 2px rgba(16,18,24,.05),0 6px 18px rgba(16,18,24,.06);--ckw-float:0 0 0 1px rgba(16,18,24,.06),0 18px 50px rgba(16,18,24,.2);--ckw-soft:0 2px 8px rgba(16,18,24,.05),0 18px 48px rgba(16,18,24,.15);
|
|
3
3
|
font-size:14px;line-height:1.45;font-family:inherit;color:var(--ckw-fg);box-sizing:border-box;-webkit-font-smoothing:antialiased}
|
|
4
4
|
.ckw-root[data-theme=dark]{--ckw-bg:#111214;--ckw-bg2:#1a1b1f;--ckw-bg3:#26272c;--ckw-fg:#f1f2f4;--ckw-fg2:#a9acb3;--ckw-fg3:#7a7d86;--ckw-line:#2a2b31;--ckw-shadow:0 8px 30px rgba(0,0,0,.5);--ckw-card:#1b1c20;--ckw-col:#16171a;--ckw-lift:0 0 0 1px rgba(255,255,255,.07);--ckw-raise:0 0 0 1px rgba(255,255,255,.07);--ckw-float:0 0 0 1px rgba(255,255,255,.09),0 18px 50px rgba(0,0,0,.55);--ckw-soft:0 0 0 1px rgba(255,255,255,.07),0 18px 50px rgba(0,0,0,.55)}
|
|
@@ -228,11 +228,11 @@ font-size:14px;line-height:1.45;font-family:inherit;color:var(--ckw-fg);box-sizi
|
|
|
228
228
|
.ckw-msgr-av-sm{width:26px;height:26px;font-size:12px}
|
|
229
229
|
.ckw-msgr-online{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ckw-fg2)}
|
|
230
230
|
.ckw-msgr-online::before{content:"";width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px color-mix(in srgb,#22c55e 22%,transparent);flex:none}
|
|
231
|
-
/* Floating
|
|
232
|
-
.ckw-msgr-preview
|
|
233
|
-
.ckw-msgr-preview[data-pos=bottom-right]
|
|
234
|
-
.ckw-msgr-preview[data-pos=bottom-left]
|
|
235
|
-
.ckw-msgr-preview[data-out]
|
|
231
|
+
/* Floating card over the closed launcher: a new answer */
|
|
232
|
+
.ckw-msgr-preview{position:fixed;z-index:2147483000;bottom:92px;width:320px;max-width:calc(100vw - 32px);transform-origin:bottom right;animation:ckw-rise .34s cubic-bezier(.32,.72,0,1)}
|
|
233
|
+
.ckw-msgr-preview[data-pos=bottom-right]{right:20px}
|
|
234
|
+
.ckw-msgr-preview[data-pos=bottom-left]{left:20px;transform-origin:bottom left}
|
|
235
|
+
.ckw-msgr-preview[data-out]{animation:ckw-sink .16s cubic-bezier(.4,0,1,1) forwards;pointer-events:none}
|
|
236
236
|
@keyframes ckw-rise{from{opacity:0;transform:translateY(10px) scale(.94)}}
|
|
237
237
|
@keyframes ckw-sink{to{opacity:0;transform:translateY(6px) scale(.97)}}
|
|
238
238
|
.ckw-msgr-preview-card{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;padding:14px 40px 14px 16px;border:0;border-radius:calc(var(--ckw-r-card) + 2px);background:var(--ckw-bg);box-shadow:var(--ckw-soft);transition:transform .2s cubic-bezier(.32,.72,0,1)}
|
|
@@ -242,15 +242,6 @@ font-size:14px;line-height:1.45;font-family:inherit;color:var(--ckw-fg);box-sizi
|
|
|
242
242
|
.ckw-msgr-preview-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere}
|
|
243
243
|
.ckw-msgr-preview-x{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;border:0;background:transparent;color:var(--ckw-fg3);display:flex;align-items:center;justify-content:center;padding:0;transition:background-color .12s linear,color .12s linear}
|
|
244
244
|
.ckw-msgr-preview-x:hover{background:var(--ckw-bg2);color:var(--ckw-fg)}
|
|
245
|
-
.ckw-msgr-teaser{width:340px;padding:16px;border-radius:calc(var(--ckw-r-card) + 4px);background:var(--ckw-bg);box-shadow:var(--ckw-soft);display:flex;flex-direction:column;gap:14px}
|
|
246
|
-
.ckw-msgr-teaser-top{display:flex;align-items:center;gap:12px}
|
|
247
|
-
.ckw-msgr-teaser-t{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
|
|
248
|
-
.ckw-msgr-teaser-t b{font-size:15px;font-weight:700;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
|
|
249
|
-
.ckw-msgr-teaser-row{display:flex;gap:8px}
|
|
250
|
-
.ckw-msgr-teaser-b{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;padding:0 14px;border:0;border-radius:var(--ckw-r-pill);background:var(--ckw-bg3);color:var(--ckw-fg);font-size:14px;font-weight:600;white-space:nowrap;transition:transform .2s cubic-bezier(.32,.72,0,1),filter .1s linear}
|
|
251
|
-
.ckw-msgr-teaser-b[data-main]{flex:1.4;background:var(--ckw-accent);color:var(--ckw-accent-ink)}
|
|
252
|
-
.ckw-msgr-teaser-b:hover{filter:brightness(1.06)}
|
|
253
|
-
.ckw-msgr-teaser-b:active{transform:scale(.96)}
|
|
254
245
|
/* The panel */
|
|
255
246
|
.ckw-msgr{bottom:92px;width:400px;height:min(680px,calc(100vh - 112px));max-height:none;border:0;border-radius:var(--ckw-r-panel);box-shadow:var(--ckw-soft);transform-origin:bottom right;animation:ckw-msgr-in .42s cubic-bezier(.32,.72,0,1);transition:width .36s cubic-bezier(.32,.72,0,1),height .36s cubic-bezier(.32,.72,0,1)}
|
|
256
247
|
.ckw-msgr[data-pos=bottom-left]{transform-origin:bottom left}
|
|
@@ -391,7 +382,7 @@ button.ckw-msgr-card:hover .ckw-msgr-go{transform:translateX(2px)}
|
|
|
391
382
|
.ckw-msgr-clip:hover,.ckw-msgr-clip[aria-expanded=true]{color:var(--ckw-fg);background:color-mix(in srgb,var(--ckw-fg) 7%,transparent)}
|
|
392
383
|
.ckw-msgr-clip:active{transform:scale(.9)}
|
|
393
384
|
|
|
394
|
-
.ckw-msgr-amenu{top:auto;bottom:calc(100% -
|
|
385
|
+
.ckw-msgr-amenu{top:auto;bottom:calc(100% - 6px);left:14px;right:auto;min-width:0;transform-origin:bottom left}
|
|
395
386
|
.ckw-msgr-files{display:flex;flex-wrap:wrap;gap:10px;padding:6px 2px 0}
|
|
396
387
|
.ckw-msgr-file{position:relative;width:56px;height:56px;border-radius:calc(var(--ckw-r-card) - 4px);background:var(--ckw-bg2);box-shadow:0 0 0 1px var(--ckw-line)}
|
|
397
388
|
.ckw-msgr-file img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
|
|
@@ -415,6 +406,14 @@ button.ckw-msgr-card:hover .ckw-msgr-go{transform:translateX(2px)}
|
|
|
415
406
|
.ckw-msgr-compose:has(+.ckw-msgr-powered){padding-bottom:8px}
|
|
416
407
|
.ckw-msgr-error{margin:0;font-size:12px;color:var(--ckw-danger)}
|
|
417
408
|
.ckw-msgr .ckw-input[aria-invalid=true]{box-shadow:0 0 0 1px var(--ckw-danger)}
|
|
409
|
+
/* The email asked of anonymous visitors: the box's first line, under a hairline the message follows */
|
|
410
|
+
.ckw-root .ckw-msgr-box .ckw-input.ckw-msgr-email{min-height:0;height:26px;margin:-2px 8px 6px 0;padding:0 0 6px;border:0;border-radius:0;background:none;box-shadow:0 1px 0 var(--hu-border,var(--ckw-line));font-size:13px;color:var(--ckw-fg2)}
|
|
411
|
+
.ckw-root .ckw-msgr-box .ckw-input.ckw-msgr-email:focus-visible{background:none;box-shadow:0 1px 0 var(--ckw-accent);color:var(--ckw-fg)}
|
|
412
|
+
.ckw-root .ckw-msgr-box .ckw-input.ckw-msgr-email[aria-invalid=true]{box-shadow:0 1px 0 var(--ckw-danger)}
|
|
413
|
+
/* The team's mark as a picture, the AI agent's face on its answers */
|
|
414
|
+
.ckw-root .ckw-msgr-av-img{background:none;overflow:hidden}
|
|
415
|
+
.ckw-msgr-av-img img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
|
|
416
|
+
.ckw-msg-face{width:16px;height:16px;margin:0 5px -3px 0;border-radius:50%;object-fit:cover}
|
|
418
417
|
/* Bar middle, tab bar, Home's glow and "Ask a question" (Featurebase-like) */
|
|
419
418
|
.ckw-msgr-mid{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;max-width:62%;flex:none}
|
|
420
419
|
.ckw-msgr-mid b{font-size:15px;font-weight:650;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|
|
@@ -455,39 +454,39 @@ button.ckw-msgr-card:hover .ckw-msgr-go{transform:translateX(2px)}
|
|
|
455
454
|
.ckw-root[data-header=color] .ckw-msgr-card-col .ckw-msgr-search{background:var(--ckw-bg2)}
|
|
456
455
|
.ckw-root[data-header=color] .ckw-msgr-card .ckw-msgr-art:hover{background:var(--ckw-bg2)}
|
|
457
456
|
/* Where it sits: a corner, the middle of the top or bottom edge, or the middle of a side; panel and cards open from the launcher */
|
|
458
|
-
.ckw-msgr-fab[data-pos$=left],.ckw-msgr[data-pos$=left],.ckw-msgr-preview[data-pos$=left]
|
|
459
|
-
.ckw-msgr-fab[data-pos$=right],.ckw-msgr[data-pos$=right],.ckw-msgr-preview[data-pos$=right]
|
|
460
|
-
.ckw-msgr-fab[data-pos$=center],.ckw-msgr[data-pos$=center],.ckw-msgr-preview[data-pos$=center]
|
|
457
|
+
.ckw-msgr-fab[data-pos$=left],.ckw-msgr[data-pos$=left],.ckw-msgr-preview[data-pos$=left]{left:20px;right:auto}
|
|
458
|
+
.ckw-msgr-fab[data-pos$=right],.ckw-msgr[data-pos$=right],.ckw-msgr-preview[data-pos$=right]{right:20px;left:auto}
|
|
459
|
+
.ckw-msgr-fab[data-pos$=center],.ckw-msgr[data-pos$=center],.ckw-msgr-preview[data-pos$=center]{left:50%;right:auto;translate:-50% 0}
|
|
461
460
|
.ckw-msgr-fab[data-pos^=top]{top:20px;bottom:auto}
|
|
462
|
-
.ckw-msgr[data-pos^=top],.ckw-msgr-preview[data-pos^=top]
|
|
463
|
-
.ckw-msgr-fab[data-pos^=middle],.ckw-msgr[data-pos^=middle],.ckw-msgr-preview[data-pos^=middle]
|
|
464
|
-
.ckw-msgr[data-pos=middle-left],.ckw-msgr-preview[data-pos=middle-left]
|
|
465
|
-
.ckw-msgr[data-pos=middle-right],.ckw-msgr-preview[data-pos=middle-right]
|
|
461
|
+
.ckw-msgr[data-pos^=top],.ckw-msgr-preview[data-pos^=top]{top:92px;bottom:auto}
|
|
462
|
+
.ckw-msgr-fab[data-pos^=middle],.ckw-msgr[data-pos^=middle],.ckw-msgr-preview[data-pos^=middle]{top:50%;bottom:auto;translate:0 -50%}
|
|
463
|
+
.ckw-msgr[data-pos=middle-left],.ckw-msgr-preview[data-pos=middle-left]{left:92px}
|
|
464
|
+
.ckw-msgr[data-pos=middle-right],.ckw-msgr-preview[data-pos=middle-right]{right:92px}
|
|
466
465
|
.ckw-msgr[data-pos^=middle]{height:min(680px,calc(100vh - 40px))}
|
|
467
|
-
.ckw-msgr[data-pos=top-right],.ckw-msgr-preview[data-pos=top-right]
|
|
468
|
-
.ckw-msgr[data-pos=top-left],.ckw-msgr-preview[data-pos=top-left]
|
|
469
|
-
.ckw-msgr[data-pos=top-center],.ckw-msgr-preview[data-pos=top-center]
|
|
470
|
-
.ckw-msgr[data-pos=bottom-center],.ckw-msgr-preview[data-pos=bottom-center]
|
|
471
|
-
.ckw-msgr[data-pos=middle-left],.ckw-msgr-preview[data-pos=middle-left]
|
|
472
|
-
.ckw-msgr[data-pos=middle-right],.ckw-msgr-preview[data-pos=middle-right]
|
|
473
|
-
@media (max-width:520px){.ckw-root:not([data-contained]) .ckw-msgr{top:0;translate:none}.ckw-msgr-fab[data-pos$=left]{left:14px}.ckw-msgr-fab[data-pos$=right]{right:14px}.ckw-msgr-fab[data-pos^=top]{top:14px}.ckw-msgr-preview[data-pos^=top]
|
|
466
|
+
.ckw-msgr[data-pos=top-right],.ckw-msgr-preview[data-pos=top-right]{transform-origin:top right}
|
|
467
|
+
.ckw-msgr[data-pos=top-left],.ckw-msgr-preview[data-pos=top-left]{transform-origin:top left}
|
|
468
|
+
.ckw-msgr[data-pos=top-center],.ckw-msgr-preview[data-pos=top-center]{transform-origin:top center}
|
|
469
|
+
.ckw-msgr[data-pos=bottom-center],.ckw-msgr-preview[data-pos=bottom-center]{transform-origin:bottom center}
|
|
470
|
+
.ckw-msgr[data-pos=middle-left],.ckw-msgr-preview[data-pos=middle-left]{transform-origin:center left}
|
|
471
|
+
.ckw-msgr[data-pos=middle-right],.ckw-msgr-preview[data-pos=middle-right]{transform-origin:center right}
|
|
472
|
+
@media (max-width:520px){.ckw-root:not([data-contained]) .ckw-msgr{top:0;translate:none}.ckw-msgr-fab[data-pos$=left]{left:14px}.ckw-msgr-fab[data-pos$=right]{right:14px}.ckw-msgr-fab[data-pos^=top]{top:14px}.ckw-msgr-preview[data-pos^=top]{top:84px}.ckw-msgr-preview[data-pos^=middle]{top:auto;bottom:20px;left:16px;right:16px;width:auto;translate:none}}
|
|
474
473
|
/* Inside MRRocket's preview: placed in its frame, not the page */
|
|
475
474
|
.ckw-root[data-contained]{position:absolute;inset:0;pointer-events:none;overflow:hidden}
|
|
476
475
|
.ckw-root[data-contained]>*{position:absolute;pointer-events:auto}
|
|
477
476
|
.ckw-root[data-contained] .ckw-msgr{height:min(680px,calc(100% - 112px));max-width:calc(100% - 40px)}
|
|
478
477
|
.ckw-root[data-contained] .ckw-msgr[data-wide]{height:calc(100% - 112px)}
|
|
479
478
|
.ckw-root[data-contained] .ckw-msgr[data-pos^=middle]{height:min(680px,calc(100% - 40px));max-width:calc(100% - 112px)}
|
|
480
|
-
.ckw-root[data-contained] .ckw-msgr-preview[data-pos^=middle]
|
|
481
|
-
@media (max-width:520px){.ckw-root:not([data-contained]) .ckw-msgr{width:100%;height:100dvh;bottom:0;border-radius:0;transform-origin:bottom center}.ckw-root:not([data-contained]) .ckw-msgr-x{display:flex}.ckw-msgr-preview
|
|
482
|
-
@media (prefers-reduced-motion:reduce){.ckw-msgr,.ckw-msgr[data-out],.ckw-msgr-preview,.ckw-msgr-
|
|
479
|
+
.ckw-root[data-contained] .ckw-msgr-preview[data-pos^=middle]{max-width:calc(100% - 112px)}
|
|
480
|
+
@media (max-width:520px){.ckw-root:not([data-contained]) .ckw-msgr{width:100%;height:100dvh;bottom:0;border-radius:0;transform-origin:bottom center}.ckw-root:not([data-contained]) .ckw-msgr-x{display:flex}.ckw-msgr-preview{bottom:84px}}
|
|
481
|
+
@media (prefers-reduced-motion:reduce){.ckw-msgr,.ckw-msgr[data-out],.ckw-msgr-preview,.ckw-msgr-menu,.ckw-msgr-count,.ckw-msg[data-new],.ckw-msgr-enter>*,.ckw-msgr-enter .ckw-msgr-sugg-b{animation:none}.ckw-msgr-fab,.ckw-msgr-fab-i,.ckw-msgr-tab-ic,.ckw-msgr-tab-ic>.ckw-icon,.ckw-msgr{transition:none}}
|
|
483
482
|
/* The messenger in HeroUI v3's look (heroui.com, its free components): a soft gray ground, white surfaces with a hairline
|
|
484
483
|
shadow, white fields, pill buttons and a pill tab switch, a 2px ring in the accent on focus. Its tokens (--hu-*) map onto
|
|
485
484
|
the widget's own, inside the messenger only, so the other widgets keep theirs. */
|
|
486
485
|
.ckw-root{--hu-bg:#fff;--hu-surface:#f4f4f5;--hu-default:#ececee;--hu-default-hover:#e4e4e7;--hu-segment:#fff;--hu-muted:#71717a;--hu-fg:#18181b;--hu-border:#e4e4e7;--hu-shadow:0 0 0 0 transparent;--hu-lift:0 1px 2px rgba(0,0,0,.08),0 0 1px rgba(0,0,0,.1);--hu-overlay:0 0 0 1px rgba(0,0,0,.05),0 2px 8px rgba(0,0,0,.05),0 18px 40px rgba(0,0,0,.1)}
|
|
487
486
|
.ckw-root[data-theme=dark]{--hu-bg:#111113;--hu-surface:#1c1c1f;--hu-default:#26262a;--hu-default-hover:#2e2e33;--hu-segment:#3a3a40;--hu-muted:#a1a1aa;--hu-fg:#fafafa;--hu-border:#27272a;--hu-shadow:0 0 0 0 transparent;--hu-lift:0 0 0 1px rgba(255,255,255,.06);--hu-overlay:0 0 0 1px rgba(255,255,255,.08),0 18px 40px rgba(0,0,0,.55)}
|
|
488
487
|
@media (prefers-color-scheme:dark){.ckw-root[data-theme=auto]{--hu-bg:#111113;--hu-surface:#1c1c1f;--hu-default:#26262a;--hu-default-hover:#2e2e33;--hu-segment:#3a3a40;--hu-muted:#a1a1aa;--hu-fg:#fafafa;--hu-border:#27272a;--hu-shadow:0 0 0 0 transparent;--hu-lift:0 0 0 1px rgba(255,255,255,.06);--hu-overlay:0 0 0 1px rgba(255,255,255,.08),0 18px 40px rgba(0,0,0,.55)}}
|
|
489
|
-
.ckw-msgr,.ckw-msgr-preview
|
|
490
|
-
.ckw-root .ckw-msgr-preview-card
|
|
488
|
+
.ckw-msgr,.ckw-msgr-preview{--ckw-bg:var(--hu-bg);--ckw-bg2:var(--hu-surface);--ckw-bg3:var(--hu-default);--ckw-card:var(--hu-surface);--ckw-fg:var(--hu-fg);--ckw-fg2:var(--hu-muted);--ckw-fg3:var(--hu-muted);--ckw-line:var(--hu-border);--ckw-soft:var(--hu-overlay);--ckw-raise:var(--hu-shadow)}
|
|
489
|
+
.ckw-root .ckw-msgr-preview-card{background:var(--hu-surface)}
|
|
491
490
|
.ckw-root .ckw-msgr-card,.ckw-root .ckw-msgr-sugg-b,.ckw-root .ckw-msgr-rate,.ckw-root .ckw-msgr-cite{background:var(--hu-surface);box-shadow:var(--hu-shadow);border:0}
|
|
492
491
|
.ckw-root button.ckw-msgr-card:hover{background:var(--hu-default)}
|
|
493
492
|
.ckw-root .ckw-msgr-card-col{padding:6px}
|
|
@@ -508,17 +507,17 @@ button.ckw-msgr-card:hover .ckw-msgr-go{transform:translateX(2px)}
|
|
|
508
507
|
.ckw-root .ckw-msgr-menu{background:var(--hu-surface);box-shadow:var(--hu-overlay);border-radius:16px}
|
|
509
508
|
.ckw-root .ckw-msgr-menu-i{border-radius:10px}
|
|
510
509
|
.ckw-root .ckw-msgr-menu-i:hover,.ckw-root .ckw-msgr-menu-i:focus-visible{background:var(--hu-default)}
|
|
511
|
-
.ckw-root .ckw-msgr .ckw-btn
|
|
512
|
-
.ckw-root .ckw-msgr .ckw-btn:hover
|
|
513
|
-
.ckw-root .ckw-msgr .ckw-btn:active
|
|
514
|
-
.ckw-root .ckw-msgr .ckw-btn-primary
|
|
515
|
-
.ckw-root .ckw-msgr .ckw-btn-primary:hover
|
|
510
|
+
.ckw-root .ckw-msgr .ckw-btn{height:36px;padding:0 16px;border:0;border-radius:999px;background:var(--hu-default);color:var(--hu-fg);font-size:14px;font-weight:500;box-shadow:none;transition:transform .25s cubic-bezier(.32,.72,0,1),background-color .1s linear}
|
|
511
|
+
.ckw-root .ckw-msgr .ckw-btn:hover{background:var(--hu-default-hover);filter:none}
|
|
512
|
+
.ckw-root .ckw-msgr .ckw-btn:active{transform:scale(.97)}
|
|
513
|
+
.ckw-root .ckw-msgr .ckw-btn-primary{background:var(--ckw-accent);color:var(--ckw-accent-ink)}
|
|
514
|
+
.ckw-root .ckw-msgr .ckw-btn-primary:hover{background:var(--ckw-accent);filter:brightness(1.08)}
|
|
516
515
|
.ckw-root .ckw-msgr-sugg-b{border-radius:999px}
|
|
517
516
|
.ckw-root .ckw-msgr-ask{height:40px;border-radius:999px}
|
|
518
517
|
/* Home like Featurebase: the product's icon top left, "Hi, Lukas \u{1F44B}" over the greeting in gray, a silk of the accent
|
|
519
518
|
with drifting dots behind the top right (.ckw-msgr-sky, also drawn by MRRocket's phone preview) */
|
|
520
|
-
.ckw-msgr-logo{display:flex;align-items:center;
|
|
521
|
-
.ckw-msgr-logo img{
|
|
519
|
+
.ckw-msgr-logo{display:flex;align-items:center;min-width:32px;height:32px;flex:none;margin-left:6px}
|
|
520
|
+
.ckw-msgr-logo img{height:28px;width:auto;min-width:28px;max-width:132px;border-radius:8px;object-fit:contain}
|
|
522
521
|
.ckw-root .ckw-msgr[data-view=home] .ckw-msgr-bar{padding-top:16px}
|
|
523
522
|
.ckw-root .ckw-msgr[data-view=home] .ckw-msgr-body{position:relative;z-index:1;gap:10px;padding-top:0}
|
|
524
523
|
.ckw-root .ckw-msgr-hero.ckw-msgr-hello{display:flex;flex-direction:column;gap:1px;margin:22px 0 10px;padding:0 4px;font-size:25px;font-weight:600;letter-spacing:-.028em;line-height:1.2;color:var(--hu-fg)}
|
|
@@ -578,5 +577,5 @@ button.ckw-msgr-card:hover .ckw-msgr-go{transform:translateX(2px)}
|
|
|
578
577
|
.ckw-sv-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px}
|
|
579
578
|
.ckw-thanks{text-align:center;padding:14px 0;display:flex;flex-direction:column;align-items:center;gap:8px}
|
|
580
579
|
.ckw-tick{width:32px;height:32px;border-radius:50%;background:var(--ckw-accent);color:var(--ckw-accent-ink);display:flex;align-items:center;justify-content:center}
|
|
581
|
-
`,er=()=>{if(typeof document=="undefined"||document.getElementById(Zt))return;let a=document.createElement("style");a.id=Zt,a.textContent=vr,document.head.appendChild(a);};var yr=4e3,zr=8e3,Mr=3e4,Cr=10*6e4,Er=/^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/,or="ckw_msgr_seen",pt={visitor:"You",team:"Team",ai:"AI agent",auto:"Team"},Ar=()=>{var a;try{return (a=window.localStorage.getItem(or))!=null?a:""}catch(n){return ""}},Sr=a=>{try{window.localStorage.setItem(or,a);}catch(n){}},gt=a=>{let n=new Date(a).getTime();if(Number.isNaN(n))return "";let c=Math.max(0,Date.now()-n)/1e3;return c<60?"just now":c<3600?`${Math.floor(c/60)}m ago`:c<86400?`${Math.floor(c/3600)}h ago`:c<86400*30?`${Math.floor(c/86400)}d ago`:new Date(a).toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"})},t=(a,n={},...c)=>{let g=document.createElement(a);for(let[s,d]of Object.entries(n))g.setAttribute(s,d);for(let s of c)s!==null&&s!==false&&s!==void 0&&g.append(s);return g},he="http://www.w3.org/2000/svg",z=(a,n=16)=>{let c=document.createElementNS(he,"svg");for(let[s,d]of Object.entries({class:"ckw-icon",width:String(n),height:String(n),viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.75","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"}))c.setAttribute(s,d);let g=document.createElementNS(he,"path");return g.setAttribute("d",a),c.appendChild(g),c},u={cross:"M18 6 6 18M6 6l12 12",chat:"M7.9 20A9 9 0 1 0 4 16.1L2 22z",up:"M12 19V5M5 12l7-7 7 7",home:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",back:"m15 18-6-6 6-6",next:"m9 18 6-6-6-6",search:"M19 11a8 8 0 1 1-16 0 8 8 0 0 1 16 0zM21 21l-4.3-4.3",doc:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7zM14 2v4a2 2 0 0 0 2 2h4M10 9H8M16 13H8M16 17H8",dots:"M13 12a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM13 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM13 19a1 1 0 1 1-2 0 1 1 0 0 1 2 0z",expand:"M15 3h6v6M21 3l-7 7M3 21l7-7M9 21H3v-6",collapse:"m14 10 7-7M20 10h-6V4M3 21l7-7M4 14h6v6",minus:"M5 12h14",down:"m6 9 6 6 6-6",help:"M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20zM9.1 9a3 3 0 0 1 5.8 1c0 2-3 3-3 3M12 17h.01",clip:"m21.44 11.05-9.19 9.19a6 6 0 0 1-8.49-8.49l8.57-8.57A4 4 0 1 1 18 8.84l-8.59 8.57a2 2 0 0 1-2.83-2.83l8.49-8.48",image:"M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zM9 11a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM21 15l-3.09-3.09a2 2 0 0 0-2.82 0L6 21",screen:"M20 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zM8 21h8M12 17v4"},wt=a=>{var n,c;return a.body||(((n=a.attachments)==null?void 0:n.length)===1?`Sent ${a.attachments[0].name}`:(c=a.attachments)!=null&&c.length?`Sent ${a.attachments.length} files`:"")},Tr=()=>{var a;return typeof navigator!="undefined"&&typeof((a=navigator.mediaDevices)==null?void 0:a.getDisplayMedia)=="function"},tr="M7.9 20A9 9 0 1 0 4 16.1L2 22z",Lr=(a,n)=>{let c=document.createElementNS(he,"svg");for(let[s,d]of Object.entries({class:"ckw-icon",width:String(n),height:String(n),viewBox:"0 0 24 24",fill:"currentColor",stroke:"currentColor","stroke-width":"1.5","stroke-linejoin":"round","aria-hidden":"true"}))c.setAttribute(s,d);let g=document.createElementNS(he,"path");return g.setAttribute("d",a),c.appendChild(g),c},rr=(a,n,c,g=2)=>{let s=Lr(a,c),d=document.createElementNS(he,"path");for(let[b,H]of Object.entries({d:n,class:"ckw-cut",fill:"none","stroke-width":String(g),"stroke-linecap":"round","stroke-linejoin":"round"}))d.setAttribute(b,H);return s.appendChild(d),s},ar="M8 12h.01M12 12h.01M16 12h.01",$r="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",Ir="M9.5 15.5c1.4 1 3.6 1 5 0",jr="M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z",Hr="M9.4 9.2a2.7 2.7 0 0 1 5.2 1c0 1.8-2.6 2.5-2.6 2.5M12 16.8h.01",ue=(()=>{let a=null,n=()=>{var g;let c=(g=window.AudioContext)!=null?g:window.webkitAudioContext;return c?(a!=null||(a=new c),a):null};return {unlock:()=>{try{let c=n();(c==null?void 0:c.state)==="suspended"&&c.resume();}catch(c){}},play:()=>{try{let c=n();if(!c||c.state!=="running")return;let g=c.currentTime;[880,1318.5].forEach((s,d)=>{let b=c.createOscillator(),H=c.createGain(),$=g+d*.11;b.type="sine",b.frequency.value=s,H.gain.setValueAtTime(1e-4,$),H.gain.exponentialRampToValueAtTime(.12,$+.012),H.gain.exponentialRampToValueAtTime(1e-4,$+.32),b.connect(H),H.connect(c.destination),b.start($),b.stop($+.34);});}catch(c){}}}})(),He=a=>a.map(n=>{let c=n.href?t("a",{href:n.href,target:"_blank",rel:"noopener noreferrer"},n.text):t("span",{},n.text);return n.code&&(c=t("code",{},c)),n.italic&&(c=t("em",{},c)),n.bold&&(c=t("strong",{},c)),c}),Pr=a=>{switch(a.type){case "h2":case "h3":return t(a.type,{},...He(a.spans));case "quote":return t("blockquote",{},...He(a.spans));case "ul":case "ol":return t(a.type,{},...a.items.map(n=>t("li",{},...He(n))));case "code":return t("pre",{},t("code",{},a.text));case "hr":return t("hr");default:return t("p",{},...He(a.spans))}},Rr=2500,nr=a=>{var $;let n=null,c=false,g=[],s=f=>n?f(n):g.push(f),d=new AbortController,b=f=>{var xe,_,I;if(n||c)return;let ie=Object.fromEntries(Object.entries(a).filter(([,v])=>v!==void 0));n=Or({...f!=null?f:{},...ie,accent:(xe=a.accent)!=null?xe:f==null?void 0:f.accent,theme:(_=a.theme)!=null?_:f==null?void 0:f.theme,branding:(I=f==null?void 0:f.branding)!=null?I:true});for(let v of g.splice(0))v(n);},H=setTimeout(()=>b(null),Rr);return (($=a.client)!=null?$:dt({host:a.host,apiKey:a.apiKey,distinctId:a.distinctId(),user:a.user()})).messengerLook(d.signal).then(f=>b(f)).catch(()=>b(null)).finally(()=>clearTimeout(H)),{open:f=>s(ie=>ie.open(f)),close:()=>n==null?void 0:n.close(),toggle:()=>s(f=>f.toggle()),destroy:()=>{c=true,d.abort(),clearTimeout(H),n==null||n.destroy();}}},Fr=["top-left","top-center","top-right","middle-left","middle-right","bottom-left","bottom-center","bottom-right"],Or=a=>{var Ft,Ot,qt,_t,Ut,Bt,Dt,Nt,Kt,Vt,Yt;er();let n=(Ft=Fr.find(e=>e===a.position))!=null?Ft:"bottom-right",c=a.title||"Support",g=a.greeting||"Hi! How can we help?",s=(Ot=a.askEmail)!=null?Ot:true,d=(qt=a.label)!=null?qt:"",b=Xt(a.replyTime),H=((_t=c.trim()[0])!=null?_t:"?").toUpperCase(),$=(Ut=a.launcher)!=null?Ut:true,f=(Bt=a.help)!=null?Bt:true,ie=(Dt=a.sound)!=null?Dt:true,xe=(Nt=a.preview)!=null?Nt:true,_=()=>{var e;return (e=a.client)!=null?e:dt({host:a.host,apiKey:a.apiKey,distinctId:a.distinctId(),user:a.user()})},I=t("div",{class:"ckw-root","data-theme":(Kt=a.theme)!=null?Kt:"auto","data-corners":a.corners==="soft"||a.corners==="square"?a.corners:"round","data-font":a.font==="system"?"system":"site","data-header":a.header==="color"?"color":"plain"});a.container&&I.setAttribute("data-contained",""),a.accent&&(I.style.setProperty("--ckw-accent",a.accent),I.style.setProperty("--ckw-accent-ink",Jt(a.accent))),(Vt=a.glow)==null||Vt.slice(0,2).forEach((e,r)=>/^#[0-9a-f]{6}$/i.test(e)&&I.style.setProperty(`--ckw-glow${r+2}`,e)),((Yt=a.container)!=null?Yt:document.body).appendChild(I);let v=false,m="home",x=null,kt=false,T="",P=null,Pe=null,E=[],ve=false,ye,V=null,S=null,D="",Re=new Set,ze=null,N=null,se=false,mt=e=>{var r;return ((r=e==null?void 0:e.messages)!=null?r:[]).filter(o=>o.from!=="visitor")},ft=e=>{var r,o;return (o=(r=mt(e).at(-1))==null?void 0:r.id)!=null?o:""},Fe=()=>v&&m==="messages"&&document.visibilityState!=="hidden",bt=e=>{let r=mt(e);if(Pe===null){let o=Ar(),l=r.findIndex(i=>i.id===o);E=e.messages.some(i=>i.from==="visitor")?r.slice(l+1).filter(i=>i.from!=="auto"):[];}else {let o=r.findIndex(i=>i.id===Pe),l=r.slice(o+1).filter(i=>i.from!=="auto");l.length&&(ie&&ue.play(),Fe()||(E=[...E,...l],ve=false));}Pe=ft(e),x=e,Fe()&&Oe();},Oe=()=>{E=[];let e=ft(x);e&&Sr(e);},ce=e=>t("span",{class:`ckw-msgr-av${e?" ckw-msgr-av-sm":""}`,"aria-hidden":"true"},H),Me=t("span",{class:"ckw-msgr-logo","aria-hidden":"true"});if(a.logo){let e=t("img",{src:a.logo,alt:""});e.addEventListener("error",()=>Me.replaceChildren(ce("sm"))),Me.append(e);}else Me.append(ce("sm"));let ir=t("div",{class:"ckw-msgr-sky","aria-hidden":"true"}),G=new Map,le=(e,r=I)=>{clearTimeout(G.get(e)),G.delete(e),e.removeAttribute("data-out"),e.isConnected||r.appendChild(e);},Q=(e,r=180)=>{!e.isConnected||G.has(e)||(e.setAttribute("data-out",""),G.set(e,setTimeout(()=>{G.delete(e),e.removeAttribute("data-out"),e.remove();},r)));},qe=(e,r)=>{e.classList.remove(r),e.offsetWidth,e.classList.add(r);},O=t("button",{type:"button",class:`ckw-fab ckw-msgr-fab${d?"":" ckw-msgr-round"}`,"data-pos":n,"aria-haspopup":"dialog"}),sr=t("span",{class:"ckw-msgr-fab-ic","aria-hidden":"true"},t("span",{class:"ckw-msgr-fab-i","data-i":"chat"},rr(tr,ar,d?20:27,2.6)),t("span",{class:"ckw-msgr-fab-i","data-i":"x"},z(u.down,d?18:24))),de=t("span",{class:"ckw-msgr-count","aria-hidden":"true"});O.append(sr),d&&O.append(t("span",{},d));let _e=t("div",{class:"ckw-msgr-preview","data-pos":n,role:"status"}),pe=()=>{if(O.toggleAttribute("data-open",v),E.length&&!v){let e=String(Math.min(E.length,9));de.textContent!==e&&(de.textContent=e),de.isConnected||O.append(de);}else de.remove();O.setAttribute("aria-expanded",String(v)),O.setAttribute("aria-label",v?"Close chat":E.length?`Open chat, ${E.length} new ${E.length===1?"reply":"replies"}`:"Open chat"),ht();},ut=()=>xe&&!v&&!ve&&!!E.length&&$,ht=()=>{let e=E.at(-1);if(!ut()||!e)return Q(_e);Ce(true);let r=t("button",{type:"button",class:"ckw-msgr-preview-x","aria-label":"Dismiss"},z(u.cross,14));r.addEventListener("click",l=>{l.stopPropagation(),ve=true,ht();});let o=t("button",{type:"button",class:"ckw-msgr-preview-card"},t("span",{class:"ckw-msgr-preview-main"},t("span",{class:"ckw-msgr-preview-who"},`${pt[e.from]}${E.length>1?` \xB7 ${E.length} new`:""}`),t("span",{class:"ckw-msgr-preview-text"},wt(e))));o.addEventListener("click",()=>W("messages")),_e.replaceChildren(o,r),le(_e);},ge=t("div",{class:"ckw-msgr-teaser","data-pos":n}),we,cr=()=>{if(clearTimeout(we),v||ut()||!$)return;let e=t("button",{type:"button",class:"ckw-msgr-teaser-b","data-main":""},z(u.chat),t("span",{},"Chat"));e.addEventListener("click",()=>W("messages"));let r=[e];if(f&&ze){let o=t("button",{type:"button",class:"ckw-msgr-teaser-b"},z(u.search),t("span",{},"Search"));o.addEventListener("click",()=>W("help")),r.push(o);}ge.replaceChildren(t("div",{class:"ckw-msgr-teaser-top"},t("span",{class:"ckw-msgr-teaser-t"},t("b",{},g),t("span",{class:"ckw-msgr-online"},b)),ce()),t("div",{class:"ckw-msgr-teaser-row"},...r)),le(ge);};function Ce(e=false){if(clearTimeout(we),e)return Q(ge,140);we=setTimeout(()=>Q(ge,140),260);}let xt=e=>e.pointerType==="mouse";for(let e of [O,ge])e.addEventListener("pointerenter",r=>xt(r)&&(e===O?cr():clearTimeout(we))),e.addEventListener("pointerleave",r=>xt(r)&&Ce());O.addEventListener("click",()=>{ue.unlock(),Ce(true),v?ne():W(E.length?"messages":"home");}),$&&I.appendChild(O);let M=t("div",{class:"ckw-pop ckw-msgr","data-pos":n,role:"dialog","aria-label":c}),Ue=t("div",{class:"ckw-msgr-bar"}),h=t("div",{class:"ckw-pop-body ckw-msgr-body"});M.addEventListener("click",()=>ue.unlock());let X=t("span",{class:"ckw-msgr-lead"}),Ee=t("span",{class:"ckw-msgr-mid"}),Be=t("nav",{class:"ckw-msgr-tabs","aria-label":"Messenger"}),De=(e,r,o,l,i)=>{let w=t("button",{type:"button",class:"ckw-msgr-tab"},t("span",{class:"ckw-msgr-tab-ic"},z(o,22),rr(l,i,22)),t("span",{},r));return w.addEventListener("click",()=>{N=null,A(e);}),w},Ne=De("home","Home",u.home,$r,Ir),Ae=De("messages","Messages",u.chat,tr,ar),vt=De("help","Help",u.help,jr,Hr),Se=t("span",{class:"ckw-msgr-count ckw-msgr-count-tab","aria-hidden":"true"}),ke=t("button",{type:"button",class:"ckw-msgr-ib","aria-label":"More","aria-haspopup":"menu","aria-expanded":"false"},z(u.dots,18)),yt=t("button",{type:"button",class:"ckw-msgr-ib ckw-msgr-x","aria-label":"Close messenger"},z(u.cross));yt.addEventListener("click",()=>ne()),Ue.append(X,Ee,t("span",{class:"ckw-msgr-trail"},ke,yt));let K=t("div",{class:"ckw-msgr-menu",role:"menu"}),Ke=()=>K.isConnected&&!K.hasAttribute("data-out"),me=()=>{ke.setAttribute("aria-expanded","false"),Q(K,120);},zt=(e,r,o)=>{let l=t("button",{type:"button",class:"ckw-msgr-menu-i",role:"menuitem"},z(e,15),t("span",{},r));return l.addEventListener("click",i=>{i.stopPropagation(),me(),o();}),l};ke.addEventListener("click",e=>{var r;if(e.stopPropagation(),Ke())return me();K.replaceChildren(t("span",{class:"ckw-msgr-menu-h"},"Quick actions"),zt(u.minus,"Minimize chat",()=>ne()),zt(se?u.collapse:u.expand,se?"Collapse view":"Expand view",()=>{se=!se,M.toggleAttribute("data-wide",se);})),ke.setAttribute("aria-expanded","true"),le(K,M),(r=K.querySelector("button"))==null||r.focus();}),M.addEventListener("click",()=>Ke()&&me());let lr=()=>{let e=(o,l)=>{let i=t("button",{type:"button",class:"ckw-msgr-ib","aria-label":l},z(u.back,18));return i.addEventListener("click",o),i};typeof m!="string"?X.replaceChildren(e(()=>A("help"),"Back to help")):m==="help"&&N&&!D.trim()?X.replaceChildren(e(()=>{N=null,A("help");},"All collections")):m==="messages"?X.replaceChildren(e(()=>A("home"),"Back to home")):m==="home"?X.replaceChildren(Me):X.replaceChildren(),m==="messages"?Ee.replaceChildren(ce("sm"),t("span",{class:"ckw-msgr-mid-t"},t("b",{},c),t("span",{class:"ckw-msgr-online"},b))):m==="help"?Ee.replaceChildren(t("b",{},"Help")):Ee.replaceChildren();let r=f&&ze!==false?[Ne,Ae,vt]:[Ne,Ae];Be.childNodes.length!==r.length&&Be.replaceChildren(...r),Ne.setAttribute("aria-current",m==="home"?"page":"false"),Ae.setAttribute("aria-current",m==="messages"?"page":"false"),vt.setAttribute("aria-current",m!=="home"&&m!=="messages"?"page":"false"),E.length&&m!=="messages"?(Se.textContent=String(Math.min(E.length,9)),Se.isConnected||Ae.firstChild.appendChild(Se)):Se.remove();},Y=t("form",{class:"ckw-msgr-compose"}),Te=t("p",{class:"ckw-msgr-error",role:"alert"}),U=t("input",{class:"ckw-input",type:"email",inputmode:"email",autocomplete:"email",placeholder:"Your email (optional), so we can follow up","aria-label":"Your email (optional)",maxlength:"200"}),J=t("div",{class:"ckw-msgr-box"}),L=t("textarea",{class:"ckw-textarea ckw-msgr-input",rows:"1",placeholder:"Write your message\u2026","aria-label":"Message",maxlength:"4000"}),Ve=t("button",{type:"submit",class:"ckw-msgr-send","aria-label":"Send"},z(u.up)),Ye=Tr(),fe=t("button",{type:"button",class:"ckw-msgr-clip","aria-label":Ye?"Attach a file or a screenshot":"Attach a file",...Ye?{"aria-haspopup":"menu","aria-expanded":"false"}:{}},z(u.clip,18));J.append(L,t("div",{class:"ckw-msgr-tools"},fe,t("span",{class:"ckw-msgr-sp"}),Ve)),J.addEventListener("click",e=>e.target===J&&L.focus()),Y.append(J);let Z=t("input",{type:"file",accept:ct.join(","),multiple:"",hidden:"",tabindex:"-1","aria-hidden":"true"});Y.append(Z);let ee=t("div",{class:"ckw-msgr-files",role:"list","aria-label":"Files to send"}),R=[],be=new Map,We=e=>{var r;return (r=be.get(e))!=null?r:_().attachmentUrl(e)},Mt=e=>{e.ctrl.abort(),[...be.values()].includes(e.local)||URL.revokeObjectURL(e.local);},Ct=e=>{R=R.filter(r=>r!==e),Mt(e);},Le=e=>{T="";for(let r of e){let o=r.name||"screenshot.png";if(R.length>=lt){T=`Up to ${lt} files per message.`;break}if(!ct.includes(r.type)){T="Only pictures (PNG, JPEG, WebP, GIF) and PDFs can be sent.";continue}if(r.size>Gt){T=`${o} is larger than 10 MB.`;continue}let l={key:`local-${Date.now().toString(36)}${Math.random().toString(36).slice(2,7)}`,name:o,type:r.type,size:r.size,local:URL.createObjectURL(r),up:Promise.resolve(),ctrl:new AbortController};l.up=_().uploadChatFile(r,l.ctrl.signal).then(i=>{l.id=i.id,j();},i=>{i.name!=="AbortError"&&(Ct(l),T=`${l.name}: ${i.message}`,j());}),R.push(l);}v&&m!=="messages"?A("messages"):j(),L.focus();},Et="",dr=()=>{let e=R.map(r=>`${r.key}:${r.id?1:0}`).join(",");e!==Et&&(Et=e,ee.replaceChildren(...R.map(r=>{let o=t("button",{type:"button",class:"ckw-msgr-file-x","aria-label":`Remove ${r.name}`},z(u.cross,12));o.addEventListener("click",()=>{Ct(r),j(),L.focus();});let l=r.type.startsWith("image/")?t("img",{src:r.local,alt:""}):t("span",{class:"ckw-msgr-file-doc"},z(u.doc,18),t("span",{},r.name));return t("div",{class:"ckw-msgr-file",role:"listitem",title:r.name,"aria-label":r.id?r.name:`${r.name}, uploading`,...r.id?{}:{"aria-busy":"true"}},l,o)}))),R.length?ee.isConnected||Y.insertBefore(ee,J):ee.remove();},pr=async()=>{var l;let e;try{e=await navigator.mediaDevices.getDisplayMedia({video:{displaySurface:"browser"},audio:!1,preferCurrentTab:!0,selfBrowserSurface:"include"});}catch(i){i.name!=="NotAllowedError"&&i.name!=="AbortError"&&(T="The screenshot did not work here. Attach a picture instead.",j());return}I.style.visibility="hidden";let r=null;try{let i=document.createElement("video");i.muted=!0,i.playsInline=!0,i.srcObject=e,await i.play(),await new Promise(p=>setTimeout(p,300));let w=i;await new Promise(p=>w.requestVideoFrameCallback?w.requestVideoFrameCallback(()=>p()):requestAnimationFrame(()=>p()));let k=document.createElement("canvas");k.width=i.videoWidth,k.height=i.videoHeight,(l=k.getContext("2d"))==null||l.drawImage(i,0,0);let y=(p,C)=>new Promise(B=>k.toBlob(B,p,C));r=await y("image/png"),r&&r.size>4.5*1024*1024&&(r=await y("image/jpeg",.9));}catch(i){r=null;}finally{for(let i of e.getTracks())i.stop();I.style.visibility="";}if(!r||!r.size)return T="The screenshot did not work here. Attach a picture instead.",j();let o=new Date().toISOString().slice(0,16).replace(/[:T]/g,"-");Le([Object.assign(r,{name:`screenshot-${o}.${r.type==="image/png"?"png":"jpg"}`})]);},te=t("div",{class:"ckw-msgr-menu ckw-msgr-amenu",role:"menu"}),Ge=()=>te.isConnected&&!te.hasAttribute("data-out"),$e=()=>{fe.setAttribute("aria-expanded","false"),Q(te,120);},At=(e,r,o)=>{let l=t("button",{type:"button",class:"ckw-msgr-menu-i",role:"menuitem"},z(e,15),t("span",{},r));return l.addEventListener("click",i=>{i.stopPropagation(),$e(),o();}),l};fe.addEventListener("click",e=>{var r;if(e.stopPropagation(),ue.unlock(),!Ye)return Z.click();if(Ge())return $e();te.replaceChildren(At(u.image,"Photo or file",()=>Z.click()),At(u.screen,"Screenshot of this page",()=>{pr();})),fe.setAttribute("aria-expanded","true"),le(te,Y),(r=te.querySelector("button"))==null||r.focus();}),Z.addEventListener("change",()=>{var e;Le([...(e=Z.files)!=null?e:[]]),Z.value="";});let gr=t("a",{class:"ckw-msgr-powered",href:Qt,target:"_blank",rel:"noopener"},"Powered by ",t("b",{},"MRRocket")),St=t("ol",{class:"ckw-msgs","aria-live":"polite","aria-label":"Messages"}),Tt=()=>{var e;return s&&!((e=a.user())!=null&&e.email)&&!(x!=null&&x.hasEmail)},Qe=()=>!U.value.trim()||Er.test(U.value.trim()),Xe=()=>(!!L.value.trim()||R.length>0)&&!P&&Qe(),A=e=>{let r=JSON.stringify(e)!==JSON.stringify(m);m=e,Ie=-1,j(),r&&qe(h,"ckw-msgr-enter"),e==="messages"?(Oe(),pe(),L.focus()):e==="help"&&Ze.focus(),oe(0);},wr=(e,r)=>{let o=t("img",{src:e,alt:r,loading:"lazy"});return o.addEventListener("load",()=>{h.scrollHeight-h.scrollTop-h.clientHeight<o.clientHeight+120&&(h.scrollTop=h.scrollHeight);}),o},Lt=(e,r=false)=>{var l,i,w;let o=t("li",{class:"ckw-msg","data-from":e.from==="visitor"?"me":"them"},e.body||!((l=e.attachments)!=null&&l.length)?t("div",{class:"ckw-bubble"},e.body):null);r&&o.setAttribute("aria-busy","true"),(i=e.attachments)!=null&&i.length&&o.append(t("div",{class:"ckw-msg-files"},...e.attachments.map(k=>k.type.startsWith("image/")?t("a",{class:"ckw-msg-img",href:We(k.id),target:"_blank",rel:"noopener",title:k.name},wr(We(k.id),k.name)):t("a",{class:"ckw-msgr-cite",href:We(k.id),target:"_blank",rel:"noopener"},z(u.doc,14),t("span",{},k.name)))));for(let k of (w=e.articles)!=null?w:[]){let y=t("button",{type:"button",class:"ckw-msgr-cite"},z(u.doc,14),t("span",{},k.title));y.addEventListener("click",()=>A({article:k.id})),o.append(y);}return o.append(t("span",{class:"ckw-msg-meta"},`${e.from!=="visitor"?`${pt[e.from]} \xB7 `:""}${r?"Sending\u2026":gt(e.at)}`)),o},kr=e=>{let r=t("button",{type:"button",class:"ckw-msgr-art"},t("span",{class:"ckw-msgr-art-t"},e.title),z(u.next,14));return r.addEventListener("click",()=>A({article:e.id})),r},$t=(e,r,o,l)=>{let i=t("button",{type:"button",class:"ckw-msgr-hrow"},t("span",{class:"ckw-msgr-hrow-main"},t("b",{},e),r?t("span",{class:"ckw-msgr-hrow-sub"},r):null,o?t("span",{class:"ckw-msgr-hrow-meta"},o):null),z(u.next,16));return i.addEventListener("click",l),i},Je=((e="Search for help")=>{let r=t("label",{class:"ckw-msgr-search"}),o=t("input",{class:"ckw-msgr-search-in",type:"search",placeholder:e,"aria-label":"Search for help",maxlength:"200"});o.value=D;let l;return o.addEventListener("input",()=>{D=o.value,clearTimeout(l),l=setTimeout(()=>{if(m!=="help")return A("help");tt(true);},250);}),o.addEventListener("keydown",i=>{i.key==="Enter"&&(i.preventDefault(),m!=="help"&&A("help"));}),r.append(z(u.search,16),o),r})("Search our help center\u2026"),Ze=Je.querySelector("input"),et=false,tt=async(e=false)=>{if(!f||et&&!e)return;et=true;let r=D.trim();try{let o=await _().articles(r||void 0);if(r!==D.trim())return;S=o.articles,r||(ze=o.articles.length>0);}catch(o){S=S!=null?S:[];}finally{et=false;}j();},rt=t("form",{class:"ckw-msgr-askq"}),re=t("input",{class:"ckw-msgr-askq-in",placeholder:"Ask a question","aria-label":"Ask a question",maxlength:"4000",autocomplete:"off"}),at=t("button",{type:"submit",class:"ckw-msgr-send","aria-label":"Send",disabled:""},z(u.up));rt.append(re,at),re.addEventListener("input",()=>at.disabled=!re.value.trim()),rt.addEventListener("submit",e=>{if(e.preventDefault(),!re.value.trim())return A("messages");L.value=re.value,re.value="",at.disabled=true,A("messages"),Xe()&&it();});let mr=()=>{var w,k,y;let e=(k=(w=a.user())==null?void 0:w.name)==null?void 0:k.trim().split(/\s+/)[0],r=g.replace(/^(hi|hello|hey|hallo)( there)?\s*[!,.]*\s*/i,"").trim()||"How can we help you today?",o=t("h2",{class:"ckw-msgr-hero ckw-msgr-hello"},t("span",{},e?`Hi, ${e} `:"Hi there ",t("span",{class:"ckw-msgr-wave","aria-hidden":"true"},"\u{1F44B}")),t("span",{class:"ckw-msgr-hello-sub"},r)),l=((y=x==null?void 0:x.messages)!=null?y:[]).at(-1),i=[o,rt];if(l){let p=t("button",{type:"button",class:"ckw-msgr-card ckw-msgr-recent","aria-label":`Recent message: ${wt(l)}`},t("span",{class:"ckw-msgr-recent-row"},ce("sm"),t("span",{class:"ckw-msgr-card-main"},t("span",{class:"ckw-msgr-card-sub ckw-msgr-recent-text"},wt(l)),t("span",{class:"ckw-msgr-card-meta"},`${l.from==="visitor"?"You":pt[l.from]} \xB7 ${gt(l.at)}`)),E.length?t("span",{class:"ckw-msgr-badge"},String(E.length)):z(u.next,14)));p.addEventListener("click",()=>A("messages")),i.push(p);}if(f&&ze!==false){let p=t("div",{class:"ckw-msgr-card ckw-msgr-card-col"}),C=(S!=null?S:[]).slice(0,3);C.length?p.append(...C.map(kr)):S===null&&p.append(t("div",{class:"ckw-skel ckw-msgr-skel"})),i.push(p);}h.replaceChildren(...i);},fr=()=>{var k,y;Ze.value!==D&&(Ze.value=D);let e=D.trim(),r=S!=null?S:[],o=new Map;for(let p of r)o.set(p.collection,[...(k=o.get(p.collection))!=null?k:[],p]);let l=!e&&N!==null?(y=o.get(N))!=null?y:[]:null,i=e?"Search results":l?N!=null?N:"":"Most read articles",w=[t("h2",{class:"ckw-msgr-help-h"},i),Je];if(S===null)w.push(t("div",{class:"ckw-skel"}));else if(r.length)e||l?w.push(t("div",{class:"ckw-msgr-hlist"},...(l!=null?l:r).map(p=>$t(p.title,p.excerpt.startsWith(p.title)?p.excerpt.slice(p.title.length).trim():p.excerpt,e?p.collection:"",()=>A({article:p.id}))))):w.push(t("div",{class:"ckw-msgr-hlist"},...[...o].map(([p,C])=>$t(p,C.map(B=>B.title).join(", "),`${C.length} ${C.length===1?"article":"articles"}`,()=>{N=p,A("help"),qe(h,"ckw-msgr-enter");}))));else {let p=t("button",{type:"button",class:"ckw-btn ckw-btn-primary"},"Send us a message");p.addEventListener("click",()=>A("messages")),w.push(t("div",{class:"ckw-msgr-empty"},t("p",{},e?`Nothing found for \u201C${e}\u201D.`:"No help articles yet."),p));}if(h.childNodes[1]!==Je)h.replaceChildren(...w);else {for(h.firstChild.replaceWith(w[0]);h.childNodes.length>2;)h.lastChild.remove();h.append(...w.slice(2));}},ae=null,br=e=>{if((ae==null?void 0:ae.id)===e)return h.replaceChildren(ae.node);let r=t("article",{class:"ckw-msgr-doc"},t("div",{class:"ckw-skel"}));ae={id:e,node:r},h.replaceChildren(r),_().article(e).then(o=>{let l=t("div",{class:"ckw-msgr-rate"}),i=()=>{if(Re.has(e))return l.replaceChildren(t("span",{},"Thanks for letting us know."));let k=t("button",{type:"button",class:"ckw-btn"},"Yes"),y=t("button",{type:"button",class:"ckw-btn"},"No"),p=C=>{Re=new Set(Re).add(e),i(),_().rateArticle(e,C).catch(()=>{}),C||A("messages");};k.addEventListener("click",()=>p(true)),y.addEventListener("click",()=>p(false)),l.replaceChildren(t("span",{},"Did this answer your question?"),t("span",{class:"ckw-msgr-rate-b"},k,y));};i();let w=t("button",{type:"button",class:"ckw-btn ckw-msgr-ask"},z(u.chat),"Still need help? Send us a message");w.addEventListener("click",()=>A("messages")),r.replaceChildren(t("p",{class:"ckw-msgr-doc-c"},o.collection),t("h2",{class:"ckw-msgr-doc-t"},o.title),t("p",{class:"ckw-msgr-doc-c"},`Updated ${gt(o.updatedAt)}`),t("div",{class:"ckw-msgr-doc-b"},...o.blocks.map(Pr)),l,w);}).catch(o=>{ae=null,r.replaceChildren(t("p",{class:"ckw-msgr-error"},o.message));});},Ie=-1,It="",ot=-1,nt=t("div",{class:"ckw-msgr-sugg"}),ur=()=>{var l,i,w,k;let e=(l=x==null?void 0:x.messages)!=null?l:[],r=[];if(!kt)r.push(t("div",{class:"ckw-skel"}));else {let y=`${e.map(C=>C.id).join(",")}|${P?`${P.body}+${(w=(i=P.attachments)==null?void 0:i.length)!=null?w:0}`:""}|${Math.floor(Date.now()/6e4)}`;if(y!==It){It=y;let B=[t("li",{class:"ckw-msg","data-from":"them"},t("div",{class:"ckw-bubble"},g)),...e.map(st=>Lt(st)),...P?[Lt(P,true)]:[]];ot>=0&&B.slice(ot).forEach(st=>st.setAttribute("data-new","")),ot=B.length,St.replaceChildren(...B);}r.push(St);let p=!e.some(C=>C.from==="visitor")&&!P?(S!=null?S:[]).slice(0,3):[];p.length&&(nt.childNodes.length!==p.length&&nt.replaceChildren(...p.map(C=>{let B=t("button",{type:"button",class:"ckw-msgr-sugg-b"},C.title);return B.addEventListener("click",()=>A({article:C.id})),B})),r.push(nt));}((k=x==null?void 0:x.conversation)==null?void 0:k.status)==="solved"&&!P&&r.push(t("p",{class:"ckw-fine ckw-msgr-note"},"This conversation is closed. Write to start a new one.")),(h.childNodes.length!==r.length||r.some((y,p)=>h.childNodes[p]!==y))&&h.replaceChildren(...r);let o=e.length+(P?1:0);o!==Ie&&(Ie=o,h.scrollTop=h.scrollHeight),Te.textContent=T,T&&!Te.isConnected?Y.prepend(Te):T||Te.remove(),Tt()?(Qe()?U.removeAttribute("aria-invalid"):U.setAttribute("aria-invalid","true"),U.isConnected||Y.insertBefore(U,ee.isConnected?ee:J)):U.remove(),dr(),Ve.disabled=!Xe();},j=()=>{if(!v)return;M.dataset.view=typeof m=="string"?m:"article",lr(),m==="home"?mr():m==="messages"?ur():m==="help"?fr():br(m.article);let e=m==="home"?[ir,Ue,h]:[Ue,h];e.push(m==="messages"?Y:Be),a.branding!==false&&e.push(gr),K.isConnected&&e.push(K),(M.childNodes.length!==e.length||e.some((r,o)=>M.childNodes[o]!==r))&&M.replaceChildren(...e);},jt=async()=>{V==null||V.abort(),V=new AbortController;try{bt(await _().chat(V.signal)),T="";}catch(e){if(e.name==="AbortError")return;v&&m==="messages"&&(T=e.message);}kt=true,j(),pe(),oe();};function oe(e){var w,k,y;clearTimeout(ye);let r=!!(x!=null&&x.messages.some(p=>p.from==="visitor"))&&((w=x==null?void 0:x.conversation)==null?void 0:w.status)!=="solved",o=(y=((k=x==null?void 0:x.messages)!=null?k:[]).filter(p=>p.from==="visitor").at(-1))==null?void 0:y.at,l=!!o&&Date.now()-new Date(o).getTime()<Cr,i=e!=null?e:Fe()?yr:r&&l?zr:v||r?Mr:0;(i||e===0)&&(ye=setTimeout(()=>{jt();},i));}let Ht=()=>{document.visibilityState==="visible"?oe(0):clearTimeout(ye);};document.addEventListener("visibilitychange",Ht);let it=async()=>{let e=L.value.trim(),r=R;if(!e&&!r.length||P||!Qe())return;ue.unlock();for(let i of r)be.set(i.key,i.local);P={id:"pending",from:"visitor",body:e,at:new Date().toISOString(),...r.length?{attachments:r.map(i=>({id:i.key,name:i.name,type:i.type,size:i.size}))}:{}},L.value="",R=[],T="",j(),await Promise.all(r.map(i=>i.up));let o=r.filter(i=>i.id).map(i=>i.id),l=false;try{if(!e&&!o.length)throw new Error(T||"The file could not be sent.");bt(await _().sendChat({body:e,email:Tt()&&U.value.trim()?U.value.trim():void 0,url:window.location.href.slice(0,500),...o.length?{attachments:o}:{},context:{viewport:`${window.innerWidth}\xD7${window.innerHeight}`}})),l=!0;}catch(i){L.value=e,R=r.filter(w=>w.id),T=i.message;}P=null;for(let i of r)be.delete(i.key);if(j(),l)for(let i of r)URL.revokeObjectURL(i.local);oe();};Y.addEventListener("submit",e=>{e.preventDefault(),it();}),L.addEventListener("keydown",e=>{e.key==="Enter"&&!e.shiftKey&&!e.isComposing&&(e.preventDefault(),it());}),L.addEventListener("input",()=>Ve.disabled=!Xe()),L.addEventListener("paste",e=>{var o,l;let r=[...(l=(o=e.clipboardData)==null?void 0:o.files)!=null?l:[]];r.length&&(e.preventDefault(),Le(r));});let Pt=e=>!!e.dataTransfer&&[...e.dataTransfer.types].includes("Files");M.addEventListener("dragover",e=>{Pt(e)&&(e.preventDefault(),M.setAttribute("data-drop",""));}),M.addEventListener("dragleave",e=>{(!e.relatedTarget||!M.contains(e.relatedTarget))&&M.removeAttribute("data-drop");}),M.addEventListener("drop",e=>{var r,o;Pt(e)&&(e.preventDefault(),M.removeAttribute("data-drop"),Le([...(o=(r=e.dataTransfer)==null?void 0:r.files)!=null?o:[]]));}),U.addEventListener("input",()=>j());function W(e="home",r=false){let o=v;v=true,m=e==="help"&&!f?"home":e,Ie=-1,ve=true,Ce(true),M.toggleAttribute("data-still",r),le(M),o&&qe(h,"ckw-msgr-enter"),(S===null||m==="help"&&D)&&tt(),j(),pe(),m==="messages"&&(Oe(),L.focus()),oe(0);}function ne(){v&&(v=false,K.isConnected&&me(),Q(M,200),pe(),oe(),$&&O.focus());}M.addEventListener("click",()=>Ge()&&$e());let Rt=e=>{e.key!=="Escape"||!v||(Ge()?($e(),fe.focus()):Ke()?(me(),ke.focus()):ne());};return document.addEventListener("keydown",Rt),jt(),f&&tt(),pe(),a.opened&&W(a.opened,true),{open:e=>W(e!=null?e:"home"),close:ne,toggle:()=>v?ne():W(),destroy:()=>{clearTimeout(ye),clearTimeout(we);for(let e of G.values())clearTimeout(e);V==null||V.abort();for(let e of R)Mt(e);for(let e of be.values())URL.revokeObjectURL(e);document.removeEventListener("keydown",Rt),document.removeEventListener("visibilitychange",Ht),I.remove();}}};window.__mrrocketMessenger={mountMessenger:nr};
|
|
580
|
+
`,Zt=()=>{if(typeof document=="undefined"||document.getElementById(Xt))return;let r=document.createElement("style");r.id=Xt,r.textContent=zr,document.head.appendChild(r);};var Mr=4e3,Cr=8e3,Sr=3e4,Ar=10*6e4,Er=/^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/,ar="ckw_msgr_seen",Lr=()=>{var r;try{return (r=window.localStorage.getItem(ar))!=null?r:""}catch(o){return ""}},Tr=r=>{try{window.localStorage.setItem(ar,r);}catch(o){}},pt=r=>{let o=new Date(r).getTime();if(Number.isNaN(o))return "";let s=Math.max(0,Date.now()-o)/1e3;return s<60?"just now":s<3600?`${Math.floor(s/60)}m ago`:s<86400?`${Math.floor(s/3600)}h ago`:s<86400*30?`${Math.floor(s/86400)}d ago`:new Date(r).toLocaleDateString(void 0,{month:"short",day:"numeric",year:"numeric"})},a=(r,o={},...s)=>{let p=document.createElement(r);for(let[k,c]of Object.entries(o))p.setAttribute(k,c);for(let k of s)k!==null&&k!==false&&k!==void 0&&p.append(k);return p},me="http://www.w3.org/2000/svg",M=(r,o=16)=>{let s=document.createElementNS(me,"svg");for(let[k,c]of Object.entries({class:"ckw-icon",width:String(o),height:String(o),viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.75","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"}))s.setAttribute(k,c);let p=document.createElementNS(me,"path");return p.setAttribute("d",r),s.appendChild(p),s},h={cross:"M18 6 6 18M6 6l12 12",chat:"M7.9 20A9 9 0 1 0 4 16.1L2 22z",up:"M12 19V5M5 12l7-7 7 7",home:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",back:"m15 18-6-6 6-6",next:"m9 18 6-6-6-6",search:"M19 11a8 8 0 1 1-16 0 8 8 0 0 1 16 0zM21 21l-4.3-4.3",doc:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7zM14 2v4a2 2 0 0 0 2 2h4M10 9H8M16 13H8M16 17H8",dots:"M13 12a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM13 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM13 19a1 1 0 1 1-2 0 1 1 0 0 1 2 0z",expand:"M15 3h6v6M21 3l-7 7M3 21l7-7M9 21H3v-6",collapse:"m14 10 7-7M20 10h-6V4M3 21l7-7M4 14h6v6",minus:"M5 12h14",down:"m6 9 6 6 6-6",help:"M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20zM9.1 9a3 3 0 0 1 5.8 1c0 2-3 3-3 3M12 17h.01",clip:"m21.44 11.05-9.19 9.19a6 6 0 0 1-8.49-8.49l8.57-8.57A4 4 0 1 1 18 8.84l-8.59 8.57a2 2 0 0 1-2.83-2.83l8.49-8.48",image:"M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zM9 11a2 2 0 1 0 0-4 2 2 0 0 0 0 4zM21 15l-3.09-3.09a2 2 0 0 0-2.82 0L6 21",screen:"M20 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zM8 21h8M12 17v4"},gt=r=>{var o,s;return r.body||(((o=r.attachments)==null?void 0:o.length)===1?`Sent ${r.attachments[0].name}`:(s=r.attachments)!=null&&s.length?`Sent ${r.attachments.length} files`:"")},$r=()=>{var r;return typeof navigator!="undefined"&&typeof((r=navigator.mediaDevices)==null?void 0:r.getDisplayMedia)=="function"},er="M7.9 20A9 9 0 1 0 4 16.1L2 22z",Hr=(r,o)=>{let s=document.createElementNS(me,"svg");for(let[k,c]of Object.entries({class:"ckw-icon",width:String(o),height:String(o),viewBox:"0 0 24 24",fill:"currentColor",stroke:"currentColor","stroke-width":"1.5","stroke-linejoin":"round","aria-hidden":"true"}))s.setAttribute(k,c);let p=document.createElementNS(me,"path");return p.setAttribute("d",r),s.appendChild(p),s},tr=(r,o,s,p=2)=>{let k=Hr(r,s),c=document.createElementNS(me,"path");for(let[g,y]of Object.entries({d:o,class:"ckw-cut",fill:"none","stroke-width":String(p),"stroke-linecap":"round","stroke-linejoin":"round"}))c.setAttribute(g,y);return k.appendChild(c),k},rr="M8 12h.01M12 12h.01M16 12h.01",jr="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",Ir="M9.5 15.5c1.4 1 3.6 1 5 0",Pr="M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z",Rr="M9.4 9.2a2.7 2.7 0 0 1 5.2 1c0 1.8-2.6 2.5-2.6 2.5M12 16.8h.01",ke=(()=>{let r=null,o=()=>{var p;let s=(p=window.AudioContext)!=null?p:window.webkitAudioContext;return s?(r!=null||(r=new s),r):null};return {unlock:()=>{try{let s=o();(s==null?void 0:s.state)==="suspended"&&s.resume();}catch(s){}},play:()=>{try{let s=o();if(!s||s.state!=="running")return;let p=s.currentTime;[880,1318.5].forEach((k,c)=>{let g=s.createOscillator(),y=s.createGain(),T=p+c*.11;g.type="sine",g.frequency.value=k,y.gain.setValueAtTime(1e-4,T),y.gain.exponentialRampToValueAtTime(.12,T+.012),y.gain.exponentialRampToValueAtTime(1e-4,T+.32),g.connect(y),y.connect(s.destination),g.start(T),g.stop(T+.34);});}catch(s){}}}})(),je=r=>r.map(o=>{let s=o.href?a("a",{href:o.href,target:"_blank",rel:"noopener noreferrer"},o.text):a("span",{},o.text);return o.code&&(s=a("code",{},s)),o.italic&&(s=a("em",{},s)),o.bold&&(s=a("strong",{},s)),s}),Fr=r=>{switch(r.type){case "h2":case "h3":return a(r.type,{},...je(r.spans));case "quote":return a("blockquote",{},...je(r.spans));case "ul":case "ol":return a(r.type,{},...r.items.map(o=>a("li",{},...je(o))));case "code":return a("pre",{},a("code",{},r.text));case "hr":return a("hr");default:return a("p",{},...je(r.spans))}},Or=2500,or="ckw_msgr_look:",_r=r=>{try{let o=window.localStorage.getItem(or+r);return o?JSON.parse(o):null}catch(o){return null}},qr=(r,o)=>{try{window.localStorage.setItem(or+r,JSON.stringify(o));}catch(s){}},nr=r=>{var fe,ue;let o=null,s="",p=false,k=[],c=w=>o?w(o):k.push(w),g=new AbortController,y=!r.client&&!!r.apiKey,T=w=>{var G,m,b;if(p)return;let $=JSON.stringify(w!=null?w:{});if(o&&$===s)return;if(o!=null&&o.isOpen()){o.onClose(()=>T(w));return}o==null||o.destroy(),s=$;let z=Object.fromEntries(Object.entries(r).filter(([,J])=>J!==void 0));o=Nr({...w!=null?w:{},...z,accent:(G=r.accent)!=null?G:w==null?void 0:w.accent,theme:(m=r.theme)!=null?m:w==null?void 0:w.theme,branding:(b=w==null?void 0:w.branding)!=null?b:true});for(let J of k.splice(0))J(o);},Y=y?_r(r.apiKey):null;Y&&T(Y);let K=Y?void 0:setTimeout(()=>T(null),Or);return ((ue=r.client)!=null?ue:dt({host:r.host,apiKey:r.apiKey,distinctId:r.distinctId(),user:r.user(),userHash:(fe=r.userHash)==null?void 0:fe.call(r)})).messengerLook(g.signal).then(w=>{y&&w&&qr(r.apiKey,w),T(w);}).catch(()=>{o||T(null);}).finally(()=>clearTimeout(K)),{open:w=>c($=>$.open(w)),close:()=>o==null?void 0:o.close(),toggle:()=>c(w=>w.toggle()),destroy:()=>{p=true,g.abort(),clearTimeout(K),o==null||o.destroy();}}},Ur=["top-left","top-center","top-right","middle-left","middle-right","bottom-left","bottom-center","bottom-right"],Nr=r=>{var It,Pt,Rt,Ft,Ot,_t,qt,Ut,Nt,Bt,Dt,Kt;Zt();let o=(It=Ur.find(e=>e===r.position))!=null?It:"bottom-right",s=r.title||"Support",p=r.greeting||"Hi! How can we help?",k=(Pt=r.askEmail)!=null?Pt:true,c=(Rt=r.label)!=null?Rt:"",g=Jt(r.replyTime),y=((Ft=s.trim()[0])!=null?Ft:"?").toUpperCase(),T={visitor:"You",team:"Team",ai:((Ot=r.agentName)==null?void 0:Ot.trim())||"AI agent",auto:"Team"},Y=(_t=r.launcher)!=null?_t:true,K=(qt=r.help)!=null?qt:true,fe=(Ut=r.sound)!=null?Ut:true,ue=(Nt=r.preview)!=null?Nt:true,w=()=>{var e,t;return (t=r.client)!=null?t:dt({host:r.host,apiKey:r.apiKey,distinctId:r.distinctId(),user:r.user(),userHash:(e=r.userHash)==null?void 0:e.call(r)})},$=a("div",{class:"ckw-root","data-theme":(Bt=r.theme)!=null?Bt:"auto","data-corners":r.corners==="soft"||r.corners==="square"?r.corners:"round","data-font":r.font==="system"?"system":"site","data-header":r.header==="color"?"color":"plain"});r.container&&$.setAttribute("data-contained",""),r.accent&&($.style.setProperty("--ckw-accent",r.accent),$.style.setProperty("--ckw-accent-ink",Qt(r.accent))),(Dt=r.glow)==null||Dt.slice(0,2).forEach((e,t)=>/^#[0-9a-f]{6}$/i.test(e)&&$.style.setProperty(`--ckw-glow${t+2}`,e)),((Kt=r.container)!=null?Kt:document.body).appendChild($);let z=false,G=null,m="home",b=null,J=false,H="",P=null,Ie=null,A=[],be=false,he,V=null,L=null,U="",Pe=new Set,Re=null,N=null,ie=false,wt=e=>{var t;return ((t=e==null?void 0:e.messages)!=null?t:[]).filter(n=>n.from!=="visitor")},kt=e=>{var t,n;return (n=(t=wt(e).at(-1))==null?void 0:t.id)!=null?n:""},Fe=()=>z&&m==="messages"&&document.visibilityState!=="hidden",mt=e=>{let t=wt(e);if(Ie===null){let n=Lr(),l=t.findIndex(i=>i.id===n);A=e.messages.some(i=>i.from==="visitor")?t.slice(l+1).filter(i=>i.from!=="auto"):[];}else {let n=t.findIndex(i=>i.id===Ie),l=t.slice(n+1).filter(i=>i.from!=="auto");l.length&&(fe&&ke.play(),Fe()||(A=[...A,...l],be=false));}Ie=kt(e),b=e,Fe()&&Oe();},Oe=()=>{A=[];let e=kt(b);e&&Tr(e);},ft=e=>a("span",{class:`ckw-msgr-av${" ckw-msgr-av-sm"}`,"aria-hidden":"true"},y),xe=e=>{if(!r.icon)return ft();let t=a("span",{class:`ckw-msgr-av ckw-msgr-av-img${" ckw-msgr-av-sm"}`,"aria-hidden":"true"}),n=a("img",{src:r.icon,alt:""});return n.addEventListener("error",()=>t.replaceWith(ft())),t.append(n),t},ve=a("span",{class:"ckw-msgr-logo","aria-hidden":"true"});if(r.logo){let e=a("img",{src:r.logo,alt:""});e.addEventListener("error",()=>ve.replaceChildren(xe())),ve.append(e);}else ve.append(xe());let ir=()=>r.agentPhoto?a("img",{class:"ckw-msg-face",src:r.agentPhoto,alt:""}):null,sr=a("div",{class:"ckw-msgr-sky","aria-hidden":"true"}),Q=new Map,ye=(e,t=$)=>{clearTimeout(Q.get(e)),Q.delete(e),e.removeAttribute("data-out"),e.isConnected||t.appendChild(e);},ze=(e,t=180)=>{!e.isConnected||Q.has(e)||(e.setAttribute("data-out",""),Q.set(e,setTimeout(()=>{Q.delete(e),e.removeAttribute("data-out"),e.remove();},t)));},_e=(e,t)=>{e.classList.remove(t),e.offsetWidth,e.classList.add(t);},B=a("button",{type:"button",class:`ckw-fab ckw-msgr-fab${c?"":" ckw-msgr-round"}`,"data-pos":o,"aria-haspopup":"dialog"}),cr=a("span",{class:"ckw-msgr-fab-ic","aria-hidden":"true"},a("span",{class:"ckw-msgr-fab-i","data-i":"chat"},tr(er,rr,c?20:27,2.6)),a("span",{class:"ckw-msgr-fab-i","data-i":"x"},M(h.down,c?18:24))),se=a("span",{class:"ckw-msgr-count","aria-hidden":"true"});B.append(cr),c&&B.append(a("span",{},c));let qe=a("div",{class:"ckw-msgr-preview","data-pos":o,role:"status"}),ce=()=>{if(B.toggleAttribute("data-open",z),A.length&&!z){let e=String(Math.min(A.length,9));se.textContent!==e&&(se.textContent=e),se.isConnected||B.append(se);}else se.remove();B.setAttribute("aria-expanded",String(z)),B.setAttribute("aria-label",z?"Close chat":A.length?`Open chat, ${A.length} new ${A.length===1?"reply":"replies"}`:"Open chat"),ut();},lr=()=>ue&&!z&&!be&&!!A.length&&Y,ut=()=>{let e=A.at(-1);if(!lr()||!e)return ze(qe);let t=a("button",{type:"button",class:"ckw-msgr-preview-x","aria-label":"Dismiss"},M(h.cross,14));t.addEventListener("click",l=>{l.stopPropagation(),be=true,ut();});let n=a("button",{type:"button",class:"ckw-msgr-preview-card"},a("span",{class:"ckw-msgr-preview-main"},a("span",{class:"ckw-msgr-preview-who"},`${T[e.from]}${A.length>1?` \xB7 ${A.length} new`:""}`),a("span",{class:"ckw-msgr-preview-text"},gt(e))));n.addEventListener("click",()=>we("messages")),qe.replaceChildren(n,t),ye(qe);};B.addEventListener("click",()=>{ke.unlock(),z?ne():we(A.length?"messages":"home");}),Y&&$.appendChild(B);let C=a("div",{class:"ckw-pop ckw-msgr","data-pos":o,role:"dialog","aria-label":s}),Ue=a("div",{class:"ckw-msgr-bar"}),x=a("div",{class:"ckw-pop-body ckw-msgr-body"});C.addEventListener("click",()=>ke.unlock());let X=a("span",{class:"ckw-msgr-lead"}),Me=a("span",{class:"ckw-msgr-mid"}),Ne=a("nav",{class:"ckw-msgr-tabs","aria-label":"Messenger"}),Be=(e,t,n,l,i)=>{let f=a("button",{type:"button",class:"ckw-msgr-tab"},a("span",{class:"ckw-msgr-tab-ic"},M(n,22),tr(l,i,22)),a("span",{},t));return f.addEventListener("click",()=>{N=null,E(e);}),f},De=Be("home","Home",h.home,jr,Ir),Ce=Be("messages","Messages",h.chat,er,rr),bt=Be("help","Help",h.help,Pr,Rr),Se=a("span",{class:"ckw-msgr-count ckw-msgr-count-tab","aria-hidden":"true"}),le=a("button",{type:"button",class:"ckw-msgr-ib","aria-label":"More","aria-haspopup":"menu","aria-expanded":"false"},M(h.dots,18)),ht=a("button",{type:"button",class:"ckw-msgr-ib ckw-msgr-x","aria-label":"Close messenger"},M(h.cross));ht.addEventListener("click",()=>ne()),Ue.append(X,Me,a("span",{class:"ckw-msgr-trail"},le,ht));let D=a("div",{class:"ckw-msgr-menu",role:"menu"}),Ke=()=>D.isConnected&&!D.hasAttribute("data-out"),de=()=>{le.setAttribute("aria-expanded","false"),ze(D,120);},xt=(e,t,n)=>{let l=a("button",{type:"button",class:"ckw-msgr-menu-i",role:"menuitem"},M(e,15),a("span",{},t));return l.addEventListener("click",i=>{i.stopPropagation(),de(),n();}),l};le.addEventListener("click",e=>{var t;if(e.stopPropagation(),Ke())return de();D.replaceChildren(a("span",{class:"ckw-msgr-menu-h"},"Quick actions"),xt(h.minus,"Minimize chat",()=>ne()),xt(ie?h.collapse:h.expand,ie?"Collapse view":"Expand view",()=>{ie=!ie,C.toggleAttribute("data-wide",ie);})),le.setAttribute("aria-expanded","true"),ye(D,C),(t=D.querySelector("button"))==null||t.focus();}),C.addEventListener("click",()=>Ke()&&de());let dr=()=>{let e=(n,l)=>{let i=a("button",{type:"button",class:"ckw-msgr-ib","aria-label":l},M(h.back,18));return i.addEventListener("click",n),i};typeof m!="string"?X.replaceChildren(e(()=>E("help"),"Back to help")):m==="help"&&N&&!U.trim()?X.replaceChildren(e(()=>{N=null,E("help");},"All collections")):m==="messages"?X.replaceChildren(e(()=>E("home"),"Back to home")):m==="home"?X.replaceChildren(ve):X.replaceChildren(),m==="messages"?Me.replaceChildren(xe(),a("span",{class:"ckw-msgr-mid-t"},a("b",{},s),a("span",{class:"ckw-msgr-online"},g))):m==="help"?Me.replaceChildren(a("b",{},"Help")):Me.replaceChildren();let t=K&&Re!==false?[De,Ce,bt]:[De,Ce];Ne.childNodes.length!==t.length&&Ne.replaceChildren(...t),De.setAttribute("aria-current",m==="home"?"page":"false"),Ce.setAttribute("aria-current",m==="messages"?"page":"false"),bt.setAttribute("aria-current",m!=="home"&&m!=="messages"?"page":"false"),A.length&&m!=="messages"?(Se.textContent=String(Math.min(A.length,9)),Se.isConnected||Ce.firstChild.appendChild(Se)):Se.remove();},W=a("form",{class:"ckw-msgr-compose"}),Ae=a("p",{class:"ckw-msgr-error",role:"alert"}),_=a("input",{class:"ckw-input ckw-msgr-email",type:"email",inputmode:"email",autocomplete:"email",placeholder:"Email for our reply (optional)","aria-label":"Your email (optional)",maxlength:"200","data-1p-ignore":"","data-lpignore":"true","data-bwignore":"","data-form-type":"other"}),Z=a("div",{class:"ckw-msgr-box"}),j=a("textarea",{class:"ckw-textarea ckw-msgr-input",rows:"1",placeholder:"Write your message\u2026","aria-label":"Message",maxlength:"4000"}),Ve=a("button",{type:"submit",class:"ckw-msgr-send","aria-label":"Send"},M(h.up)),Ye=$r(),pe=a("button",{type:"button",class:"ckw-msgr-clip","aria-label":Ye?"Attach a file or a screenshot":"Attach a file",...Ye?{"aria-haspopup":"menu","aria-expanded":"false"}:{}},M(h.clip,18));Z.append(j,a("div",{class:"ckw-msgr-tools"},pe,a("span",{class:"ckw-msgr-sp"}),Ve)),Z.addEventListener("click",e=>e.target===Z&&j.focus()),W.append(Z);let ee=a("input",{type:"file",accept:ct.join(","),multiple:"",hidden:"",tabindex:"-1","aria-hidden":"true"});W.append(ee);let Ee=a("div",{class:"ckw-msgr-files",role:"list","aria-label":"Files to send"}),R=[],ge=new Map,We=e=>{var t;return (t=ge.get(e))!=null?t:w().attachmentUrl(e)},vt=e=>{e.ctrl.abort(),[...ge.values()].includes(e.local)||URL.revokeObjectURL(e.local);},yt=e=>{R=R.filter(t=>t!==e),vt(e);},Le=e=>{H="";for(let t of e){let n=t.name||"screenshot.png";if(R.length>=lt){H=`Up to ${lt} files per message.`;break}if(!ct.includes(t.type)){H="Only pictures (PNG, JPEG, WebP, GIF) and PDFs can be sent.";continue}if(t.size>Wt){H=`${n} is larger than 10 MB.`;continue}let l={key:`local-${Date.now().toString(36)}${Math.random().toString(36).slice(2,7)}`,name:n,type:t.type,size:t.size,local:URL.createObjectURL(t),up:Promise.resolve(),ctrl:new AbortController};l.up=w().uploadChatFile(t,l.ctrl.signal).then(i=>{l.id=i.id,I();},i=>{i.name!=="AbortError"&&(yt(l),H=`${l.name}: ${i.message}`,I());}),R.push(l);}z&&m!=="messages"?E("messages"):I(),j.focus();},zt="",pr=()=>{let e=R.map(t=>`${t.key}:${t.id?1:0}`).join(",");e!==zt&&(zt=e,Ee.replaceChildren(...R.map(t=>{let n=a("button",{type:"button",class:"ckw-msgr-file-x","aria-label":`Remove ${t.name}`},M(h.cross,12));n.addEventListener("click",()=>{yt(t),I(),j.focus();});let l=t.type.startsWith("image/")?a("img",{src:t.local,alt:""}):a("span",{class:"ckw-msgr-file-doc"},M(h.doc,18),a("span",{},t.name));return a("div",{class:"ckw-msgr-file",role:"listitem",title:t.name,"aria-label":t.id?t.name:`${t.name}, uploading`,...t.id?{}:{"aria-busy":"true"}},l,n)}))),R.length?Ee.isConnected||W.insertBefore(Ee,Z):Ee.remove();},gr=async()=>{var l;let e;try{e=await navigator.mediaDevices.getDisplayMedia({video:{displaySurface:"browser"},audio:!1,preferCurrentTab:!0,selfBrowserSurface:"include"});}catch(i){i.name!=="NotAllowedError"&&i.name!=="AbortError"&&(H="The screenshot did not work here. Attach a picture instead.",I());return}$.style.visibility="hidden";let t=null;try{let i=document.createElement("video");i.muted=!0,i.playsInline=!0,i.srcObject=e,await i.play(),await new Promise(d=>setTimeout(d,300));let f=i;await new Promise(d=>f.requestVideoFrameCallback?f.requestVideoFrameCallback(()=>d()):requestAnimationFrame(()=>d()));let u=document.createElement("canvas");u.width=i.videoWidth,u.height=i.videoHeight,(l=u.getContext("2d"))==null||l.drawImage(i,0,0);let v=(d,S)=>new Promise(q=>u.toBlob(q,d,S));t=await v("image/png"),t&&t.size>4.5*1024*1024&&(t=await v("image/jpeg",.9));}catch(i){t=null;}finally{for(let i of e.getTracks())i.stop();$.style.visibility="";}if(!t||!t.size)return H="The screenshot did not work here. Attach a picture instead.",I();let n=new Date().toISOString().slice(0,16).replace(/[:T]/g,"-");Le([Object.assign(t,{name:`screenshot-${n}.${t.type==="image/png"?"png":"jpg"}`})]);},te=a("div",{class:"ckw-msgr-menu ckw-msgr-amenu",role:"menu"}),Ge=()=>te.isConnected&&!te.hasAttribute("data-out"),Te=()=>{pe.setAttribute("aria-expanded","false"),ze(te,120);},Mt=(e,t,n)=>{let l=a("button",{type:"button",class:"ckw-msgr-menu-i",role:"menuitem"},M(e,15),a("span",{},t));return l.addEventListener("click",i=>{i.stopPropagation(),Te(),n();}),l};pe.addEventListener("click",e=>{var t;if(e.stopPropagation(),ke.unlock(),!Ye)return ee.click();if(Ge())return Te();te.replaceChildren(Mt(h.image,"Photo or file",()=>ee.click()),Mt(h.screen,"Screenshot of this page",()=>{gr();})),pe.setAttribute("aria-expanded","true"),ye(te,W),(t=te.querySelector("button"))==null||t.focus();}),ee.addEventListener("change",()=>{var e;Le([...(e=ee.files)!=null?e:[]]),ee.value="";});let wr=a("a",{class:"ckw-msgr-powered",href:Gt,target:"_blank",rel:"noopener"},"Powered by ",a("b",{},"MRRocket")),Ct=a("ol",{class:"ckw-msgs","aria-live":"polite","aria-label":"Messages"}),St=()=>{var e;return k&&!((e=r.user())!=null&&e.email)&&!(b!=null&&b.hasEmail)},Je=()=>!_.value.trim()||Er.test(_.value.trim()),Qe=()=>(!!j.value.trim()||R.length>0)&&!P&&Je(),E=e=>{let t=JSON.stringify(e)!==JSON.stringify(m);m=e,$e=-1,I(),t&&_e(x,"ckw-msgr-enter"),e==="messages"?(Oe(),ce(),j.focus()):e==="help"&&Ze.focus(),oe(0);},kr=(e,t)=>{let n=a("img",{src:e,alt:t,loading:"lazy"});return n.addEventListener("load",()=>{x.scrollHeight-x.scrollTop-x.clientHeight<n.clientHeight+120&&(x.scrollTop=x.scrollHeight);}),n},At=(e,t=false)=>{var l,i,f;let n=a("li",{class:"ckw-msg","data-from":e.from==="visitor"?"me":"them"},e.body||!((l=e.attachments)!=null&&l.length)?a("div",{class:"ckw-bubble"},e.body):null);t&&n.setAttribute("aria-busy","true"),(i=e.attachments)!=null&&i.length&&n.append(a("div",{class:"ckw-msg-files"},...e.attachments.map(u=>u.type.startsWith("image/")?a("a",{class:"ckw-msg-img",href:We(u.id),target:"_blank",rel:"noopener",title:u.name},kr(We(u.id),u.name)):a("a",{class:"ckw-msgr-cite",href:We(u.id),target:"_blank",rel:"noopener"},M(h.doc,14),a("span",{},u.name)))));for(let u of (f=e.articles)!=null?f:[]){let v=a("button",{type:"button",class:"ckw-msgr-cite"},M(h.doc,14),a("span",{},u.title));v.addEventListener("click",()=>E({article:u.id})),n.append(v);}return n.append(a("span",{class:"ckw-msg-meta"},e.from==="ai"?ir():null,`${e.from!=="visitor"?`${T[e.from]} \xB7 `:""}${t?"Sending\u2026":pt(e.at)}`)),n},mr=e=>{let t=a("button",{type:"button",class:"ckw-msgr-art"},a("span",{class:"ckw-msgr-art-t"},e.title),M(h.next,14));return t.addEventListener("click",()=>E({article:e.id})),t},Et=(e,t,n,l)=>{let i=a("button",{type:"button",class:"ckw-msgr-hrow"},a("span",{class:"ckw-msgr-hrow-main"},a("b",{},e),t?a("span",{class:"ckw-msgr-hrow-sub"},t):null,n?a("span",{class:"ckw-msgr-hrow-meta"},n):null),M(h.next,16));return i.addEventListener("click",l),i},Xe=((e="Search for help")=>{let t=a("label",{class:"ckw-msgr-search"}),n=a("input",{class:"ckw-msgr-search-in",type:"search",placeholder:e,"aria-label":"Search for help",maxlength:"200"});n.value=U;let l;return n.addEventListener("input",()=>{U=n.value,clearTimeout(l),l=setTimeout(()=>{if(m!=="help")return E("help");tt(true);},250);}),n.addEventListener("keydown",i=>{i.key==="Enter"&&(i.preventDefault(),m!=="help"&&E("help"));}),t.append(M(h.search,16),n),t})("Search our help center\u2026"),Ze=Xe.querySelector("input"),et=false,tt=async(e=false)=>{if(!K||et&&!e)return;et=true;let t=U.trim();try{let n=await w().articles(t||void 0);if(t!==U.trim())return;L=n.articles,t||(Re=n.articles.length>0);}catch(n){L=L!=null?L:[];}finally{et=false;}I();},rt=a("form",{class:"ckw-msgr-askq"}),re=a("input",{class:"ckw-msgr-askq-in",placeholder:"Ask a question","aria-label":"Ask a question",maxlength:"4000",autocomplete:"off"}),at=a("button",{type:"submit",class:"ckw-msgr-send","aria-label":"Send",disabled:""},M(h.up));rt.append(re,at),re.addEventListener("input",()=>at.disabled=!re.value.trim()),rt.addEventListener("submit",e=>{if(e.preventDefault(),!re.value.trim())return E("messages");j.value=re.value,re.value="",at.disabled=true,E("messages"),Qe()&&it();});let fr=()=>{var f,u,v;let e=(u=(f=r.user())==null?void 0:f.name)==null?void 0:u.trim().split(/\s+/)[0],t=p.replace(/^(hi|hello|hey|hallo)( there)?\s*[!,.]*\s*/i,"").trim()||"How can we help you today?",n=a("h2",{class:"ckw-msgr-hero ckw-msgr-hello"},a("span",{},e?`Hi, ${e} `:"Hi there ",a("span",{class:"ckw-msgr-wave","aria-hidden":"true"},"\u{1F44B}")),a("span",{class:"ckw-msgr-hello-sub"},t)),l=((v=b==null?void 0:b.messages)!=null?v:[]).at(-1),i=[n,rt];if(l){let d=a("button",{type:"button",class:"ckw-msgr-card ckw-msgr-recent","aria-label":`Recent message: ${gt(l)}`},a("span",{class:"ckw-msgr-recent-row"},xe(),a("span",{class:"ckw-msgr-card-main"},a("span",{class:"ckw-msgr-card-sub ckw-msgr-recent-text"},gt(l)),a("span",{class:"ckw-msgr-card-meta"},`${l.from==="visitor"?"You":T[l.from]} \xB7 ${pt(l.at)}`)),A.length?a("span",{class:"ckw-msgr-badge"},String(A.length)):M(h.next,14)));d.addEventListener("click",()=>E("messages")),i.push(d);}if(K&&Re!==false){let d=a("div",{class:"ckw-msgr-card ckw-msgr-card-col"}),S=(L!=null?L:[]).slice(0,3);S.length?d.append(...S.map(mr)):L===null&&d.append(a("div",{class:"ckw-skel ckw-msgr-skel"})),i.push(d);}x.replaceChildren(...i);},ur=()=>{var u,v;Ze.value!==U&&(Ze.value=U);let e=U.trim(),t=L!=null?L:[],n=new Map;for(let d of t)n.set(d.collection,[...(u=n.get(d.collection))!=null?u:[],d]);let l=!e&&N!==null?(v=n.get(N))!=null?v:[]:null,i=e?"Search results":l?N!=null?N:"":"Most read articles",f=[a("h2",{class:"ckw-msgr-help-h"},i),Xe];if(L===null)f.push(a("div",{class:"ckw-skel"}));else if(t.length)e||l?f.push(a("div",{class:"ckw-msgr-hlist"},...(l!=null?l:t).map(d=>Et(d.title,d.excerpt.startsWith(d.title)?d.excerpt.slice(d.title.length).trim():d.excerpt,e?d.collection:"",()=>E({article:d.id}))))):f.push(a("div",{class:"ckw-msgr-hlist"},...[...n].map(([d,S])=>Et(d,S.map(q=>q.title).join(", "),`${S.length} ${S.length===1?"article":"articles"}`,()=>{N=d,E("help"),_e(x,"ckw-msgr-enter");}))));else {let d=a("button",{type:"button",class:"ckw-btn ckw-btn-primary"},"Send us a message");d.addEventListener("click",()=>E("messages")),f.push(a("div",{class:"ckw-msgr-empty"},a("p",{},e?`Nothing found for \u201C${e}\u201D.`:"No help articles yet."),d));}if(x.childNodes[1]!==Xe)x.replaceChildren(...f);else {for(x.firstChild.replaceWith(f[0]);x.childNodes.length>2;)x.lastChild.remove();x.append(...f.slice(2));}},ae=null,br=e=>{if((ae==null?void 0:ae.id)===e)return x.replaceChildren(ae.node);let t=a("article",{class:"ckw-msgr-doc"},a("div",{class:"ckw-skel"}));ae={id:e,node:t},x.replaceChildren(t),w().article(e).then(n=>{let l=a("div",{class:"ckw-msgr-rate"}),i=()=>{if(Pe.has(e))return l.replaceChildren(a("span",{},"Thanks for letting us know."));let u=a("button",{type:"button",class:"ckw-btn"},"Yes"),v=a("button",{type:"button",class:"ckw-btn"},"No"),d=S=>{Pe=new Set(Pe).add(e),i(),w().rateArticle(e,S).catch(()=>{}),S||E("messages");};u.addEventListener("click",()=>d(true)),v.addEventListener("click",()=>d(false)),l.replaceChildren(a("span",{},"Did this answer your question?"),a("span",{class:"ckw-msgr-rate-b"},u,v));};i();let f=a("button",{type:"button",class:"ckw-btn ckw-msgr-ask"},M(h.chat),"Still need help? Send us a message");f.addEventListener("click",()=>E("messages")),t.replaceChildren(a("p",{class:"ckw-msgr-doc-c"},n.collection),a("h2",{class:"ckw-msgr-doc-t"},n.title),a("p",{class:"ckw-msgr-doc-c"},`Updated ${pt(n.updatedAt)}`),a("div",{class:"ckw-msgr-doc-b"},...n.blocks.map(Fr)),l,f);}).catch(n=>{ae=null,t.replaceChildren(a("p",{class:"ckw-msgr-error"},n.message));});},$e=-1,Lt="",ot=-1,nt=a("div",{class:"ckw-msgr-sugg"}),hr=()=>{var l,i,f,u;let e=(l=b==null?void 0:b.messages)!=null?l:[],t=[];if(!J)t.push(a("div",{class:"ckw-skel"}));else {let v=`${e.map(S=>S.id).join(",")}|${P?`${P.body}+${(f=(i=P.attachments)==null?void 0:i.length)!=null?f:0}`:""}|${Math.floor(Date.now()/6e4)}`;if(v!==Lt){Lt=v;let q=[a("li",{class:"ckw-msg","data-from":"them"},a("div",{class:"ckw-bubble"},p)),...e.map(st=>At(st)),...P?[At(P,true)]:[]];ot>=0&&q.slice(ot).forEach(st=>st.setAttribute("data-new","")),ot=q.length,Ct.replaceChildren(...q);}t.push(Ct);let d=!e.some(S=>S.from==="visitor")&&!P?(L!=null?L:[]).slice(0,3):[];d.length&&(nt.childNodes.length!==d.length&&nt.replaceChildren(...d.map(S=>{let q=a("button",{type:"button",class:"ckw-msgr-sugg-b"},S.title);return q.addEventListener("click",()=>E({article:S.id})),q})),t.push(nt));}((u=b==null?void 0:b.conversation)==null?void 0:u.status)==="solved"&&!P&&t.push(a("p",{class:"ckw-fine ckw-msgr-note"},"This conversation is closed. Write to start a new one.")),(x.childNodes.length!==t.length||t.some((v,d)=>x.childNodes[d]!==v))&&x.replaceChildren(...t);let n=e.length+(P?1:0);n!==$e&&($e=n,x.scrollTop=x.scrollHeight),Ae.textContent=H,H&&!Ae.isConnected?W.prepend(Ae):H||Ae.remove(),St()?(Je()?_.removeAttribute("aria-invalid"):_.setAttribute("aria-invalid","true"),_.isConnected||Z.insertBefore(_,j)):_.remove(),pr(),Ve.disabled=!Qe();},I=()=>{if(!z)return;C.dataset.view=typeof m=="string"?m:"article",dr(),m==="home"?fr():m==="messages"?hr():m==="help"?ur():br(m.article);let e=m==="home"?[sr,Ue,x]:[Ue,x];e.push(m==="messages"?W:Ne),r.branding!==false&&e.push(wr),D.isConnected&&e.push(D),(C.childNodes.length!==e.length||e.some((t,n)=>C.childNodes[n]!==t))&&C.replaceChildren(...e);},Tt=async()=>{V==null||V.abort(),V=new AbortController;try{mt(await w().chat(V.signal)),H="";}catch(e){if(e.name==="AbortError")return;z&&m==="messages"&&(H=e.message);}J=true,I(),ce(),oe();};function oe(e){var f,u,v;clearTimeout(he);let t=!!(b!=null&&b.messages.some(d=>d.from==="visitor"))&&((f=b==null?void 0:b.conversation)==null?void 0:f.status)!=="solved",n=(v=((u=b==null?void 0:b.messages)!=null?u:[]).filter(d=>d.from==="visitor").at(-1))==null?void 0:v.at,l=!!n&&Date.now()-new Date(n).getTime()<Ar,i=e!=null?e:Fe()?Mr:t&&l?Cr:z||t?Sr:0;(i||e===0)&&(he=setTimeout(()=>{Tt();},i));}let $t=()=>{document.visibilityState==="visible"?oe(0):clearTimeout(he);};document.addEventListener("visibilitychange",$t);let it=async()=>{let e=j.value.trim(),t=R;if(!e&&!t.length||P||!Je())return;ke.unlock();for(let i of t)ge.set(i.key,i.local);P={id:"pending",from:"visitor",body:e,at:new Date().toISOString(),...t.length?{attachments:t.map(i=>({id:i.key,name:i.name,type:i.type,size:i.size}))}:{}},j.value="",R=[],H="",I(),await Promise.all(t.map(i=>i.up));let n=t.filter(i=>i.id).map(i=>i.id),l=false;try{if(!e&&!n.length)throw new Error(H||"The file could not be sent.");mt(await w().sendChat({body:e,email:St()&&_.value.trim()?_.value.trim():void 0,url:window.location.href.slice(0,500),...n.length?{attachments:n}:{},context:{viewport:`${window.innerWidth}\xD7${window.innerHeight}`}})),l=!0;}catch(i){j.value=e,R=t.filter(f=>f.id),H=i.message;}P=null;for(let i of t)ge.delete(i.key);if(I(),l)for(let i of t)URL.revokeObjectURL(i.local);oe();};W.addEventListener("submit",e=>{e.preventDefault(),it();}),j.addEventListener("keydown",e=>{e.key==="Enter"&&!e.shiftKey&&!e.isComposing&&(e.preventDefault(),it());}),j.addEventListener("input",()=>Ve.disabled=!Qe()),j.addEventListener("paste",e=>{var n,l;let t=[...(l=(n=e.clipboardData)==null?void 0:n.files)!=null?l:[]];t.length&&(e.preventDefault(),Le(t));});let Ht=e=>!!e.dataTransfer&&[...e.dataTransfer.types].includes("Files");C.addEventListener("dragover",e=>{Ht(e)&&(e.preventDefault(),C.setAttribute("data-drop",""));}),C.addEventListener("dragleave",e=>{(!e.relatedTarget||!C.contains(e.relatedTarget))&&C.removeAttribute("data-drop");}),C.addEventListener("drop",e=>{var t,n;Ht(e)&&(e.preventDefault(),C.removeAttribute("data-drop"),Le([...(n=(t=e.dataTransfer)==null?void 0:t.files)!=null?n:[]]));}),_.addEventListener("input",()=>I());function we(e="home",t=false){let n=z;z=true,m=e==="help"&&!K?"home":e,$e=-1,be=true,C.toggleAttribute("data-still",t),ye(C),n&&_e(x,"ckw-msgr-enter"),(L===null||m==="help"&&U)&&tt(),I(),ce(),m==="messages"&&(Oe(),j.focus()),oe(0);}function ne(){if(!z)return;z=false,D.isConnected&&de(),ze(C,200),ce(),oe(),Y&&B.focus();let e=G;G=null,e&&setTimeout(e,220);}C.addEventListener("click",()=>Ge()&&Te());let jt=e=>{e.key!=="Escape"||!z||(Ge()?(Te(),pe.focus()):Ke()?(de(),le.focus()):ne());};return document.addEventListener("keydown",jt),Tt(),K&&tt(),ce(),r.opened&&we(r.opened,true),{open:e=>we(e!=null?e:"home"),close:ne,toggle:()=>z?ne():we(),isOpen:()=>z,onClose:e=>{G=e;},destroy:()=>{clearTimeout(he);for(let e of Q.values())clearTimeout(e);V==null||V.abort();for(let e of R)vt(e);for(let e of ge.values())URL.revokeObjectURL(e);document.removeEventListener("keydown",jt),document.removeEventListener("visibilitychange",$t),$.remove();}}};window.__mrrocketMessenger={mountMessenger:nr};
|
|
582
581
|
})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(){'use strict';var
|
|
1
|
+
(function(){'use strict';var m="401: sign the user id on your server with userHash(id) from @mrrocket/sdk/next/server and pass identify(id, props, { hash }).",b=(e,t=s=>console.warn(s))=>{let s=globalThis;e!==401||s.__mrrocketUnsigned||(s.__mrrocketUnsigned=true,t(`[MRRocket] ${m}`));};var w=e=>{let t=atob(e.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(e.length/4)*4,"=")),s=new Uint8Array(t.length);for(let r=0;r<t.length;r++)s[r]=t.charCodeAt(r);return s},k=(e,t)=>{if(!e)return false;let s=new Uint8Array(e);return s.length===t.length&&s.every((r,o)=>r===t[o])},u=()=>typeof window!="undefined"&&"serviceWorker"in navigator&&"PushManager"in window&&"Notification"in window,P=(e=true)=>{if(!u())return Promise.resolve("denied");if(Notification.permission!=="default"||!e)return Promise.resolve(Notification.permission);try{return Promise.resolve(Notification.requestPermission())}catch(t){return Promise.resolve("denied")}},v=async(e,t,s)=>{if(s!==false){let r=`${s}?key=${encodeURIComponent(t)}&host=${encodeURIComponent(e)}`;await navigator.serviceWorker.register(r);}return navigator.serviceWorker.ready},g=async(e,t={})=>{var o,d,c,h;if(!u())return {status:"unsupported",reason:"This browser has no web push."};if(!e.distinctId)return {status:"not-signed-in"};let s=t.ask!==false,r=await((o=e.permission)!=null?o:P(s));if(r==="denied")return {status:"denied"};if(r!=="granted")return {status:s?"denied":"not-asked"};try{let i=await fetch(`${e.host}/api/sdk/push?key=${encodeURIComponent(e.apiKey)}`),p=i.ok?(d=(await i.json()).web)==null?void 0:d.vapidKey:void 0;if(!p)return {status:"error",reason:`MRRocket answered ${i.status} for the push key.`};let f=w(p),l=await v(e.host,e.apiKey,(c=t.serviceWorker)!=null?c:"/mrrocket-sw.js"),n=await l.pushManager.getSubscription();n&&!k((h=n.options)==null?void 0:h.applicationServerKey,f)&&(await n.unsubscribe().catch(()=>!1),n=null),n!=null||(n=await l.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:f}));let a=await fetch(`${e.host}/api/sdk/push`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({key:e.apiKey,distinctId:e.distinctId,userHash:e.userHash,platform:"web",subscription:n.toJSON(),host:e.host})});return b(a.status),a.ok?{status:"subscribed"}:{status:"error",reason:`MRRocket answered ${a.status}.`}}catch(i){return {status:"error",reason:i instanceof Error?i.message:String(i)}}},y=async e=>{if(!u())return false;try{let t=await navigator.serviceWorker.getRegistration(),s=await(t==null?void 0:t.pushManager.getSubscription());return s?(await fetch(`${e.host}/api/sdk/push`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({key:e.apiKey,distinctId:e.distinctId,userHash:e.userHash,platform:"web",remove:!0,endpoint:s.endpoint})}).catch(()=>null),await s.unsubscribe()):!1}catch(t){return false}};window.__mrrocketPush={subscribeWebPush:g,unsubscribeWebPush:y};})();
|